Stap 2: Het maken van de infrarode sensor en IR-controller werkt met Raspberry PI.
In een van mijn eerdere project ik in geslaagd om een eenvoudige Python code schrijven om te detecteren IR signalen zonder gebruik te maken van LIRC. Ik gebruikte de HX 1838 IR-sensor die ik online gekocht.
De sensor hebben slechts 3 pinnen.
a. 3.3V macht pin
b. GND Pin
c. IR sensor pin.
De sensor die heb ik gekocht wordt geleverd met eenvoudige afstandsbediening. Maar ik gebruikte een standaard Samsung Remote controller in plaats daarvan. Als u een Samsung-TV hebt kunt u het met dezelfde codes van de python die ik schreef. Als u een andere externe controller hebt om applicatie om te decoderen dat bepaalde afstandsbedieningen te wijzigen. Gelieve gebruik de volgende link om te begrijpen meer over het maken van de IR-afstandsbediening werken in de Raspberry PI. Hebt u hetzelfde ras dat ik ben met behulp van Samsung zou moeten dan het werken met de python code die ik gebruikt.
Dit is de python-code gebruikt voor het beheer van de externe IR
controle. Het is eenvoudig. U hoeft niet alle sleutels voor de controle van deze auto. Ik een paar zeer belangrijke alleen gebruikt als 'up', 'down', 'links', 'rechts'. Ik gebruikte ook 'power' knop een afsluiten bericht verzenden naar Raspberry PI zodat u de raspberry PI uitschakelen kunt door te klikken op de 'power'-knop.
def getKey_IR():
keyval = [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
ser seriële =. Seriële ("/ dev/ttyAMA0") # GPIO 14 [TX] GPIO 15 [RX]
ser.baudrate = 2400
voor ik in range(0,24): # voor deze externe 2 x 12 bytes dat is ontvangen voor 2400 baud
gegevens = ser.read (1) # 12 bytes herhaald
keyval [i] = ord (gegevens) # gegevens worden gelezen als tekens zo omgezet in ASCII en opgeslagen in een array
keyidentity = keyval [6] + 2 * keyval [7] + 3 * keyval [8] + 4 * keyval [9] + 5 * keyval [10] + 6 * keyval [11] # terugkeer keyidentity
Als keyidentity == 3363:
Als keyval [6] == 75: resulteren in "één"
Als keyidentity == 3099: retourneren "two"
Als keyidentity == 3675: "drie" retourneren
Als keyidentity == 3527: retourneren "vier"
Als keyidentity == 3279: retourneren "vijf"
Als keyidentity == 3443: "zes" retourneren
Als keyidentity == 3435: "zeven" retourneren
Als keyidentity == 3111: "acht" retourneren
Als keyidentity == 3015: retourneren "nine"
Als keyidentity == 3219: retourneren "nul"
Als keyidentity == 3731: retourneren "power"
Als keyidentity == 3799: terugkeer "omhoog"
Als keyidentity == 3591: terugkeer "down"
Als keyidentity == 3547: terugkeer "links"
Als keyidentity == 2719: keren "recht"
Als keyidentity == 2651: retourneren "enter"
Als keyidentity == 3595: terugkeer "vol omhoog"
Als keyidentity == 3363:
Als keyval [6] == 123: terugkeer "vol down"
Als keyidentity == 3183: terugkeer "ch up"
Als keyidentity == 3395: terugkeer "ch omlaag"
ser.Close()