Raspberry pi & Arduino IOT Automation (3 / 3 steg)
Steg 3: Programmering tid:
nu är det tid att programmet The Raspberry pi och arduino nano, så de kan prata med varandra.
Jag antar att du vet arduino programmering, så jag, m bara nämna viktiga saker här som arduino program kan vara mycket ändras för att uppfylla dina behov.
Ange baudvärde till 115200
Läs seriella och leta efter de specifika kommandona, det blir bra att ha enstaka tecken kommandon som startar.
Svara arduino enligt kommandot.
KOD:-
///////////////////////////////////////////////////////////////////////
koden börjar här
LED = 13, //using ombord ledde
char d; variabel att lagra kommandot
Ställa in arduino
void setup()
{Serial.begin(115200); / / Konfigurera seriell port
pinMode(led,OUTPUT); inställning ledde pin som utgång
}
loop börjar här
void loop()
{
IF(Serial.available()) / / köra om något tillgängligt på följetong
{
d=Serial.Read(); lagra kommandot till våra variabel
}
digitalWrite(led,d); Tur ledde på/av
}
kod slutar här
/////////////////////////////////////////////////////////////////////////////////////////////////////////
Raspberry pi programmering:
Jag har använt python-skript för att kontrollera min Pi och kommunicera med arduino. Öppna python 3 IDE och klicka på filen och öppna nytt fönster. nu kopiera nedan koden och klistra in det där.
Obs:-koppla arduino nano i en av USB-port i Pi. gör detta innan du börjar Pi. Inte att glömma din Pi bör ha internet-anslutning som wi-fi eller LAN.
### KODEN BÖRJAR HÄR:-
#! /usr/bin/python
# Den här koden är skriven av Abhianv verma.
# Denna kod läser API och skriver viktiga data till den seriella porten
importera urllib
från att importera sömn
importera webbadressÖppna från urllib.request
importera följetong
Arduino = följetong. Serial('/dev/ttyUSB0',115200,8,'n',1,'NONE')
arduino.isOpen()
on = "H"
off = "L"
URL = "http://your_api_read_address_here"
HTML=urlopen(URL)
samtidigt sant:
d=HTML.Read()
Temp = d [354]
IF(temp==on):
Arduino.write('H'.encode())
Skriv ut ("LED på")
IF(temp==off):
Arduino.write('L'.encode())
skriva ut ("ledde bort")
skriva ut ("Data Recevied:")
Print(d)
Sleep(10)
### KOD SLUTAR HÄR
nu spara skriptet med önskat namn t. ex. IoT_automation. och köra skriptet, kan du se resultatet i python skal.
HAPPY AUTOMATION