Kör en webbsida i realtid med hjälp av Arduino, SensorMonkey och Processing.js (5 / 6 steg)
Steg 5: Publicera sensordata
Minns från steg 3 att jag använder Bloom mappa Arduinos serieport till TCP/IP port 20000 på min lokal maskin. Så, jag ange ett portnummer för 20000 och IP-adressen 127.0.0.1 (lokala loopback-adressen).
Jag måste också ange en formatfil Beskrivning som berättar SensorMonkey att analysera och tolka de data som skickas av Arduino. I steg 2presenterade jag den skiss som används för att prova den accelerometer som sammanställdes och laddas upp till den Arduino microcontroller med utvecklingsmiljön. För att matcha data som skickas av skissen, använder jag följande format beskrivningsfil:
< bytestream >
< format endian = "stora" >
< konstant > A5 < / konstant >
< konstant > 5A < / konstant >
< variabeltyp = "u16" > Accelerometer X < / variabel >
< variabeltyp = "u16" > Accelerometer Y < / variabel >
< variabeltyp = "u16" > Accelerometer Z < / variabel >
< / format >
< / bytestream >
Observera att jag har angett bigendian-format (< format endian = "stora" >) och har till variabler som representerar de tre axlarna urvalet av accelerometern: x, y och z. Dessa variabler är "u16", som är kort-hand för "Osignerat 16-bitars heltal". Många olika typer av variabler stöds; du hittar mer information på sidan SensorMonkey support sida.
Den viktigaste punkten att inse här är att du bara behöver ange en fil format beskrivning som matchar de data som skickas av din Arduino över den seriella porten. Beroende på givare som du använder, kan du behöva lägga till mer eller mindre variabler format beskrivningsfilen. Se till att ge dem beskrivande namn så att du vet vad varje variabel är att mäta.
Genom att klicka på "Connect", jag gå till fliken "Stream", Välj de tre variablerna accelerometer, Välj en stream "Allmänheten" och klicka på "Publicera". Sensordata är nu tom live över Internet som en offentlig ström i min personliga namnområde.
I nästa steg, jag kommer att skriva en enkel HTML-webbsida att ansluta till min namnområde, prenumerera på min ström och visualisera data i realtid med hjälp av Processing.js.