USB
Über den USB-Anschluss kann die Kamera mit integriertem Mikrofon angeschlossen werden. Kamera und Mikrofon werden hier getrennt betrachtet. Um die Funktionen der Kamera zu nutzen, muss man sie erst im Kamera Konfigurator konfigurieren. Wie man zum Kamerakonfigurator gelangt, wird hier erklärt.
Kamera
Die Kamera kann insbesondere als Bewegungsdetektor, als Farbdetektor, als Balldetektor und als Liniendetektor genutzt werden.
Bewegungsdetektor
Um die Kamera als Bewegungsdetektor zu nutzen, muss man im Kamerakonfigurator das Männchen-Symbol in die gerasterte Fläche ziehen, dann öffnet sich rechts ein Fenster in dem man unter Inspektor
- den Pixelbereich, in dem auf Bewegung überprüft wird,
- die Position dieses Bereichs (auf dem angegebenen Punkt liegt die obere linke Ecke des Bereichs),
- den Namen des Bewegungsdetektors und
- die Toleranz
festlegen kann.
Bewegungsdetektor Programm
Das Bewegungsdetektor-Programm läuft ab, wenn eine Bewegung erkannt wurde. Es wird separat vom Hauptprogramm geschrieben. Variablen funktionieren global über beide Programme hinweg. Das Eingabe-Programm läuft im Block "wenn Bewegung erkannt" ab.
Farbdetektor
Um die Kamera als Farbdetektor zu nutzen, muss man im Kamerakonfigurator das Pipetten-Symbol in die gerasterte Fläche ziehen, dann öffnet sich rechts ein Fenster in dem man unter Inspektor
- den Pixelbereich, in dem auf Farbe überprüft wird,
- die Position dieses Bereichs (auf dem angegebenen Punkt liegt die obere linke Ecke des Bereichs),
- den Namen des Farbdetektors und
- den Kontrast
festlegen kann.
Abrufen
Mit "hole Farbe als []" erhält man die erkannte Farbe im Hexadezimal oder im RGB Format. Das Format kann über das Dropdown-Menü (kleines Dreieck) eingestellt werden.
Abfragen
Um abzufragen, ob der Detektor eine Farbe wahrgenommen hat, wird der Block "ist Farbe detektiert" genutzt. Dieser Block kann als Bedingung genutzt werden.
Um abzufragen, ob der Detektor eine bestimmte Farbe wahrnimmt, wird dieser Block
genutzt. Mit dem Block kann man die aufgenommene Farbe mit einer eingegeben vergleichen. Über das Dropdown-Menü (kleines Dreieck) kann gewählt werden, ob die eingestellte Farbe gleich oder ungleich der gefilmten Farbe seien soll. Dieser Block kann als Bedingung genutzt werden. Im Beispiel wird der Motor gestoppt, wenn die aufgenommene Farbe Grün ist.
Farbdetektor Programm
Das Farbdetektor-Programm läuft ab, wenn eine Farbe erkannt wurde. Es wird separat vom Hauptprogramm geschrieben. Variablen funktionieren global über beide Programme hinweg. Das Eingabe-Programm läuft im Block "wenn Farbe erkannt" ab.
Balldetektor
Um die Kamera als Balldetektor zu nutzen, muss man im Kamerakonfigurator das Bälle-Symbol in die gerasterte Fläche ziehen, dann öffnet sich rechts ein Fenster in dem man unter Inspektor
- den Pixelbereich, in dem auf Bälle überprüft wird,
- die Position dieses Bereichs (auf dem angegebenen Punkt liegt die obere linke Ecke des Bereichs),
- den Namen des Balldetektors,
- den Bereich, in dem der Durchmesser des Balles liegt,
- den Bereich der x-Achse,
- die Farbe des Balles und
- die Farbtoleranz
festlegen kann.
Abrufen
Mit "hole [] des Balls" erhält man x-Position, y-Position, Radius oder Durchmesser, des Balles.
Abfragen
Um abzufragen, ob der Detektor einen Ball wahrgenommen hat, wird der Block "ist Ball detektiert" genutzt. Dieser Block kann als Bedingung genutzt werden.
Um abzufragen, ob der Detektor einen Ball mit einer bestimmten x-Position, y-Position, Radius oder Durchmesser wahrnimmt, wird dieser Block
genutzt. Mit dem Block kann man Spezifikationen, des aufgenommenen Balles, mit einem eingegebenen Wert vergleichen. Über die Dropdown-Menüs (kleines Dreieck) kann gewählt werden, was und mit welchem Vergleichsoperator verglichen werden soll. Dieser Block kann als Bedingung genutzt werden. Im Beispiel wird der Motor gestoppt, wenn der Durchmesser, des aufgenommenen Balles, 5 ist.
Balldetektor Programm
Das Balldetektor-Programm läuft ab, wenn eine Farbe erkannt wurde. Es wird separat vom Hauptprogramm geschrieben. Variablen funktionieren global über beide Programme hinweg. Das Eingabe-Programm läuft im Block "wenn Ball erkannt" ab.
Liniendetektor
Um die Kamera als Liniendetektor zu nutzen, muss man im Kamerakonfigurator das Symbol mit den Punkten auf einer Linie in die gerasterte Fläche ziehen, dann öffnet sich rechts ein Fenster in dem man unter Inspektor
- den Pixelbereich, in dem auf Linien überprüft wird,
- die Position dieses Bereichs (auf dem angegebenen Punkt liegt die obere linke Ecke des Bereichs),
- den Namen des Liniendetektors,
- die Anzahl an Linien, die erkannt werden sollen, und
- den Bereich, in dem die Breite der Linie(n) liegt
festlegen kann.
Abrufen
Mit "hole [] der Linie []" erhält man Position oder Breite einer der maximal fünf Linien ab.
Mit "hole Farbe der Linie [] als []" erhält die Farbe einer Linie im Hexadezimal oder im RGB Format ausgeben lassen. Das Format kann über das Dropdown-Menü (kleines Dreieck) eingestellt werden.
Abfragen
Um abzufragen, ob der Detektor eine Linie wahrgenommen hat, wird der Block "ist Linie detektiert" genutzt. Dieser Block kann als Bedingung genutzt werden.
Um abzufragen, ob der Detektor eine Linie mit einer bestimmten Position oder Breite wahrnimmt, wird dieser Block
genutzt. Mit dem Block kann man Spezifikationen, der aufgenommenen Linie(n), mit einem eingegebenen Wert vergleichen. Über die Dropdown-Menüs (kleines Dreieck) kann gewählt werden, was und mit welchem Vergleichsoperator verglichen werden soll. Dieser Block kann als Bedingung genutzt werden. Im Beispiel wird der Motor gestoppt, wenn die Breite, der aufgenommenen Linie, kleiner als 2 ist.
Um abzufragen, ob der Detektor eine Linie mit einer bestimmten Farbe wahrnimmt, wird dieser Block
genutzt. Mit dem Block kann man die aufgenommene Linienfarbe mit einer eingegeben vergleichen. Über das Dropdown-Menü (kleines Dreieck) kann gewählt werden, ob die eingestellte Farbe gleich oder ungleich der gefilmten Farbe seien soll. Dieser Block kann als Bedingung genutzt werden.
Liniendetektor Programm
Das Liniendetektor-Programm läuft ab, wenn eine oder mehrere Linien erkannt wurden. Es wird separat vom Hauptprogramm geschrieben. Variablen funktionieren global über beide Programme hinweg. Das Eingabe-Programm läuft im Block "wenn Linien erkannt" ab.
Bild
Bild holen
Mit dem "Bild von [] holen"-Block kann das neueste Bild in Binärformat von der angeschlossenen Kamera abgerufen werden.
Bild nach Base64 konvertieren
Der Block "Bild [] nach base64 konvertieren" wandelt ein Bild vom Binärformat in das Base64-Format um. Base64 ist eine Kodierung, die Binärdaten in eine ASCII-String-Repräsentation umwandelt,
Bild geändert Ereignis
Der Block "wenn Bild ... geändert: Ereignis" reagiert auf ein Ereignis, dass ausgelöst wird, wenn sich das Bild der Kamera ändert.
Im Beispiel wird bei jedem neuen Bild von der Kamera das Bild neu geholt, in Base64 konvertiert und schließlich auf der Anzeige aktualisiert.
Mikrofon
Das in der Kamera integrierte Mikrofon kann als Lautstärkedetektor genutzt werden.
Der "Starte jedes Mal"-Block
Der "Starte jedes Mal"-Block bietet die Möglichkeit ein Programm ablaufen zulassen, wenn eine Bedingung erfüllt ist. Er funktioniert also ähnlich wie eine Fallunterscheidung, wird aber nicht nur einmal durchlaufen, sondern jedes Mal, wenn die Bedingung erfüllt ist, während des gesamten Ablauf des Programms. Der "Starte jedes Mal"-Block:
Ist eine Abkürzung für folgendes Konstrukt:
Man kann in den "Starte jedes Mal"-Block der Kategorie Mikrofron alle Bedingungen aus ebendieser Kategorie einsetzen.
Hinweis: Der Programmabschnitt innerhalb des "Starte jedes Mal"-Blocks sollte kurz gehalten werden und keine blockierenden Aufrufe oder Endlosschleifen enthalten, sodass dieser Teil des Programms schnell abgearbeitet werden kann.
Lautstärkedetektor
Abrufen
Mit "Mikrofon [] Lautstärke [] ..." erhält man die Lautstärke in Dezibel.
Abfragen
Um abzufragen, ob der Lautstärkedetektor eine bestimmte Lautstärke wahrnimmt, wird dieser Block
genutzt. Mit dem Block kann man die aufgenommene Lautstärke mit einer eingegebenen vergleichen. Über das Dropdown-Menü (kleines Dreieck) kann gewählt werden, mit welchem Vergleichsoperator verglichen werden soll. Dieser Block kann als Bedingung genutzt werden.