Interface Arduino att MySQL med hjälp av Python (4 / 4 steg)
Steg 4: Python TIEM
#! / usr/bin/python
importera följetong
importera MySQLdb
#establish anslutning till MySQL. Du måste ändra detta för databasen.
dbConn = MySQLdb.connect("localhost","database_username","password","database_name") eller die ("kan inte ansluta till databasen")
#open en markör till databasen
markören = dbConn.cursor()
Device = ' / dev/tty.usbmodem1411' #this kommer att behöva ändras till den seriella port som du använder
försök:
Print "försöker...", enhet
Arduino = följetong. Följetong (enhet, 9600)
utom:
Skriv ut "Kunde inte ansluta på", enhet
försök:
data = arduino.readline() #read data från arduino
bitar = data.split("\t") #split data av fliken
#Here vi kommer att infoga data i databasen
försök:
cursor.Execute ("INSERT INTO väderdata (fuktighet, tempC) värden (%s, %s)", (pieces[0],pieces[1]))
dbConn.commit() #commit skäret
cursor.Close() #close markören
Förutom MySQLdb.IntegrityError:
skriva ut "Det gick inte att infoga data"
Slutligen:
cursor.Close() #close bara incase det misslyckades
utom:
skriva ut "Det gick inte att hämta data från Arduino!"
Okej, så förhoppningsvis är detta relativt begripligt från kommentarer. De verkligt viktiga delarna att notera är att se till att du konfigurerar anslutningen för att vara specifik i dina data för databasen (dvs användarnamn/lösenord/databas namn). För det andra, du kommer att vilja ändra enheten ='' linje till peka till den USB-seriell port du använder.
När du konfigurerar detta skript som du behövs, bör du se de uppgifter som fyllts i i din MySQL tabell när du kör skriptet. Här är ett exempel nedan på vad min fylla gillar (se bilden).
Jo det handlar om det! Förhoppningsvis har du alla satt upp en bra att gå nu. Du bör kunna göra en del häftiga saker nu med denna grund, och jag hoppas du har kul med den. Gå lägga informationen på webbplatsen eller gör vad ditt hjärta önskar!
Tack för läsning, och snälla du gärna snälla låta mig veta om du har några förslag för att förbättra denna tutorial, eller har förslag för några tutorials du skulle vilja se i framtiden.
Bästa,
Tom