SheevaPlug + Python Daemon + MySQL = RS232 loggning Made Easy (2 / 5 steg)
Steg 2: Installera: Serial Pythonmodul / MySQL
Med dessa tillförda två paket du nu har nästan alla hemliga sås behövs. Allt som återstår är lite Python kod att knyta de seriella porten meddelandena till MySQL-databasen.
Följande python kod öppnar en seriell port och en databasanslutning:
ser = följetong. Serial ('/ dev/ttyUSB0", 115200, timeout = 1)
Conn = MySQLdb.connect (host = "localhost", db = 'vam', user = "james", passwd = "passwd")
curs = conn.cursor()
Använd sedan efter linje för att läsa rader text från den seriella porten. Om längden på "s" är större än noll då vet du att det finns ny information i strängen.
s = ser.readline().strip("\r\n") # antingen returnera en sträng eller timeout.
Nu, tolka söksträngen i fält du vill pumpa in i databasen.
Ett par kommandon göra grovjobbet för att få uppgifter i databasen.
t = datetime.datetime.now()
curs.Execute ("in RouterDat (MAC, udt, PMAC RSSI, Temp, spänning, batteri) \
värden (%s %s, %s, %s, %s, %s, %s) ", (mac, t, pmac, rssi, temp, volt, batt))
Conn.commit()
Observera att Sheevaplug har en NTP (network time protocol) daemon körs i bakgrunden. Så alla data är tidsstämplad med verkligen exakt tidsvärden. Bara mer svalka.