Intel Edison Sensor Dashboard med fribord/Python/kolv (minimal programmering krävs) (1 / 8 steg)
Steg 1: Hardware and Software List (med rätta)
Intellekten Edison -tävlingen använder denna hårdvara och så det är vad jag använder. I verkligheten kan du göra detta med andra plattformar, men de saknar något. Raspberry PI i synnerhet har inte inbyggda ADC och vissa skulle hävda HDMI och videohantering bitar av det inte behövs för ett projekt som detta.
Intellekten Edison Arduino eller andra breakout styrelsen – The Edison är inte användbart om du inte kan lätt driva det eller komma till dess stift.
En USB-kabel -för första uppsättning upp och power A strömförsörjning – valfritt, du kan driva Edison med en USB-kabel om det behövs
A sensor – igen valfritt, kan du använda oavsett numeriska producerande bit kod du vill ha. Jag kommer att innehålla exempel på båda. En kommer att vara en alkohol-sensor och den andra kommer att vara en minne tjänst som rapporterar ledigt minne.
Python -specifikt 2.x-jag kommer ta kritik för detta, jag vet. Jag har några Python kunskap och jag känner inte javascript. Kör vad du vet, rätt. Jag hade först tänkt använda node.js, men kunde inte lätt räkna ut hur till få den att hantera vilsam jsonp begäranden. Jag också försökt att använda node.js + express, men kravet på monogodb dödade den idén. Mongo, enligt något forskande inte kompilera (eller kompilera enkelt) för Edison-plattformen.
Kolven – en webbramverk för Python. Detta gör det easy-ish att konfigurera web svar till datafrågor i ett vilsamt/jsonp slag av väg (du inte behöver riktigt förstår vad resten eller JSONP är på denna punkt. Så, inte pausa titta det fram till senare om min förklaring är inte tillräckligt detaljerade. Vet bara att denna typ av datapresentation är vad instrumentpanelen behöver. I själva verket kan du hoppa över den dashboard delen av denna tutorial och skicka data till andra saker som gillar data i detta format, av vilka många är IoT möjliggörare, dataregistreringsutrustning, etc.). Som en sida noterar: Jag hade vid ett tillfälle försökte bara dumpa data till en fil, som var på fel sätt att göra saker.
Fribordet – en öppen källkod instrumentpanelen (javascript-baserade) sida som är enkel att konfigurera för slutanvändaren (den kräver ingen programmering). Fribordet vann eftersom det är enkelt att använda, kräver ingen databas backend, och har mycket enkelt webbhotell krav. Allt du behöver göra är att rikta den mot en jsonp datakälla och välj sedan alternativ för att skapa en instrumentpanel.
Psutils – en python-bibliotek som låter dig få värddatorinformation som minne tillgängligt, cpu behandling, processer, nätverksstatus, nätverksanslutningar, etc.
mraa/upm – mraa är ett c ++ bibliotek som tillhandahålls av Intel att hjälpa abstrakt processen för att hämta data från sensorer ansluten till GPIO stiften av Edison (och det fungerar med några andra styrelser, som Raspberry PI). Mraa låter dig få analoga data, pwm, spi, uart, i2c, etc. Dessutom har koden skrivits för ett extra lager av abstraktion ovanpå det en lång lista av populära sensorer, vilket gör det ännu enklare att få data. (För de som undrar jag läste någonstans att mraa faktiskt inte står för något.) UPM - står för användbart paket och moduler - några färdiga kod för gemensamma sensorer, motorer, ställdon, etc. som fungerar med mraa. Detta, till exempel kan du få en temperatur i Celsius vs spänning flera omvandlas till en digital steg som du har att räkna ut.