Skip to main content

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

image.png

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 

image-1623701156100.png

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.

image-1623701210798.png

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 

image-1623701230404.png

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.

image-1623701241638.png

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 

image-1623701284810.png

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.

image-1623701313549.png

Um abzufragen, ob der Detektor eine Linie mit einer bestimmten Farbe wahrnimmt, wird dieser Block 

image-1623701416074.png

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.

image.png

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,

image.png

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.

image.png

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:

image-1623775420535.43.06.png

Ist eine Abkürzung für folgendes Konstrukt:

image-1623612945065.png

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

image-1623701429707.png

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.