Czujnik zbliżeniowy dla robotów

Żeby swobodnie poruszający się robot nie wpadł na ścianę, albo inną przeszkodę potrzebuje czujnika odległości, czy też czujnika zbliżania się. Opisywałem już ultradźwiękowy czujnik odległości, który potrafił określić odległość od przeszkody. Są jednak prostsze czujniki wykorzystujący diody podczerwone i fotodiody czułe na podczerwień. Można wykorzystywać je w robotach, albo jako czujniki stanu urządzeń - np. czy drzwi są otwarte czy zamknięte. Nie są w stanie zmierzyć odległości, ale potrafią określić czy przeszkoda jest blisko czy daleko.

Czujnik zbliżeniowy

Takie czujniki produkowane są masowo w Chinach i tam je można kupić. Lokalnie też są dostępne pośród importerów elektroniki tego typu. Cena 15-25 PLN za sztukę(dx.com, czy botland.com.pl). Czujnik posiada trzy przewody - czerwony (VCC +), zielony (GND -) i sygnałowy przewód żółty. Po podłączeniu żółtego przewodu do pinu cyfrowego naszego mikrokontrolera możemy sprawdzać jego stan. Stan wysoki to brak przeszkody w bliskiej odległości, a stan niski to obecność takiej przeszkody:

from time import sleep

import pymcu

mb = pymcu.mcuModule()
mb.digitalState(1, 'input')

while True:
    print mb.digitalRead(1)
    sleep(0.1)

Odległość, przy której nastąpi zmiana stanu z wysokiego na niski mocno zależy od jej typu. Zauważyłem że dla ciemnych matowych powierzchni odległość jest mniejsza niż dla jaśniejszych, bardziej odblaskowych. Dodatkowo z tyłu czujnika mała śrubka pozwala ustawić wbudowany potencjometr tak by zmniejszyć/zwiększyć próg reakcji czujnika. Na pewno nie należy zakładać sztywnej odległości co do centymetra (co najmniej plus minus kilka cm).

Obudowa czujnika jest nagwintowana a na jej przedzie mamy dwie "nakrętki". Można wykorzystać je do zamocowania obejmy pozwalającej zamocować sensor na płytce montażowej robota.

Czujnik z obejmą montażową
Czujnik z obejmą montażową
RkBlog

Elektronika i Python, 21 September 2013

Comment article
Comment article RkBlog main page Search RSS Contact