Moduł potrafi wykryć czarną oraz białą linię. W zależności od koloru na wyjściu "TTL signal" pojawi się stan wysoki albo niski. To chyba pierwsza funkcja dla początkujących budowniczych robotów jaką znalazłem w sieci. Produkt można kupić w SKLEPie. Myślę że można zbudować z tym czujnikiem dwie opcje... jedna to śledzenie linii a druga to poruszanie się w zamkniętym kojcu.
Właściwości :
- napięcie zasilające 5V
- pobór prądu <10mA
- złącze 3pin (1-sygnał, 2- napięcie +5V, 3 - masa)
- wyjście (czarna linia - stan niski, biała linia - stan wysoki)
Przykładowy kod dla dwóch czujników
w końcu mamy śledzić linię :), która będzie między nimi
w serial monitor możemy obserwować jak włączają się czujniki:
int stanczujnika1 = LOW;
int stanczujnika2 = LOW;
int val1 = 0;
int val2 = 0;
void setup()
{
pinMode(12, INPUT);
pinMode(13, INPUT);
Serial.begin( 9600 );
}
void loop()
{
val1 = digitalRead(12);
val2 = digitalRead(13);
if (val1 == HIGH) {
if (stanczujnika1 == LOW) {
Serial.println("czujnik 1");
stanczujnika1 = HIGH;}
}else {
if (stanczujnika1 == HIGH){
stanczujnika1 = LOW;}}
if (val2 == HIGH) {
if (stanczujnika2 == LOW) {
Serial.println("czujnik 2");
stanczujnika2 = HIGH;}
}else {
if (stanczujnika2 == HIGH){
stanczujnika2 = LOW;}}
}
int stanczujnika2 = LOW;
int val1 = 0;
int val2 = 0;
void setup()
{
pinMode(12, INPUT);
pinMode(13, INPUT);
Serial.begin( 9600 );
}
void loop()
{
val1 = digitalRead(12);
val2 = digitalRead(13);
if (val1 == HIGH) {
if (stanczujnika1 == LOW) {
Serial.println("czujnik 1");
stanczujnika1 = HIGH;}
}else {
if (stanczujnika1 == HIGH){
stanczujnika1 = LOW;}}
if (val2 == HIGH) {
if (stanczujnika2 == LOW) {
Serial.println("czujnik 2");
stanczujnika2 = HIGH;}
}else {
if (stanczujnika2 == HIGH){
stanczujnika2 = LOW;}}
}
...