Edison motoriserade plattform (Intel IoT) (1 / 2 steg)

Steg 1: Kod för plattform

Node.js på Edison

Jag använde en enkel node.js ansökan för programmet. Inte mycket sofistikerad; Jag skrev det allt i linje, men det gjorde allt som vi ville ha det till. Koden från början vände på en blå LED att Visa systemet fungerade, då sätta upp en webbserver som tjänade upp grundläggande HTML-sidan. Här öppnas en web socketanslutning till servern och kunde skicka några kommandon i systemet.

Webbsidan var bara för att testa, så var inte mycket sofistikerad. Den hade tre knappar för varje kommando och skulle logga svar som var precis samma kommandon studsade tillbaka. Edison måste vara ansluten till wifi tillgängliga. Detta gjordes med hjälp av den ssh-anslutning med XDK. Detta är ganska lätt och behöver bara göras en gång. Det kommer ihåg anslutningen. Om systemet är stängs av och startas om, startar programmet automatiskt igen. En gång började, kunde flera personer kontakt med deras smartphone webbläsare och skicka ett meddelande till rotera den roterande skivan. Enkel men tilltalande demo.

Det är lätt att öppna en webbserver med hjälp av "http" modul; det behövde inte någon routing anläggning, som vi tjänade bara en enda sida. Den sidan var förladdade till en sträng, "huvudsidan", och när webbläsaren är riktad till url "localhost:1337". Om andra bibliotek behövs, läggs de till i konfigurationsfilen och XDK kommer att ladda ner dem till Edison innan du kör programmet, gör en "npm installera".

Starta web-tjänst

var http = require('http');

var app = http.createServer (funktion (req, res) {

'Använd strikt';

res.writeHead (200, {"Content-Type": "text/html"});

Res.End(mainPage);

{}) .listen(1337);

Console.log ("Web lyssnar på port 1337");

Uttaget web används koden för att plocka upp tre olika meddelanden. Kommandona "a" och "b" användes för att vända motorer, "c" användes för att sätta systemet i "centrera justering" läge. Jag använde "socket.io" biblioteket för att öppna en socket webblyssnare.

Skapa socket.io server

var io = require('socket.io')(app);

Console.log ("enkel socket.io meddelanden...").

Bifoga en "anslutning" händelsehanterare till servern

IO.on ("anslutning", funktion (socket) {

'Använd strikt';

Console.log ("en användare anslutna');

Avger en händelse samt ett meddelande som

socket.Emit ansluten ("", "Välkommen");

Bifoga en 'meddelande' händelsehanterare till uttaget / / a och b kommandon kommer in med en nummerparameter rotation

socket.on ('meddelande', funktion (msg) {

Console.log ('meddelande ->' + msg);

var args = msg.split("");

var delta = parseInt(args[1]);

Console.log ("värde:" + delta);

om (delta! = 0) {

Switch(args[0]) {

fallet "a":

rotate(motorA, delta);

bryta;

fallet "b":

rotate(motorB, delta);

bryta;

fallet "c":

Centre();

bryta;

standard:

standard koden kloss, gör ingenting

}

}

socket.Emit ('meddelande', msg);

});

Motorerna sätts upp med denna kod att upprätta anslutningen och hastighet; Detta anger stiften som motorn är ansluten till och hastigheten. Siffrorna är stiften visas på expansionskort.

var Uln200xa_lib = require('jsupm_uln200xa');

Instansiera en stegmotor på en ULN200XA Darlington Motor Driver

Detta testades med den Grove inriktad steg Motor med förare

Instansiera en ULN2003XA stepper objekt

var motorA = ny Uln200xa_lib. ULN200XA (4096, 8, 9, 10, 11);

var motorB = nya Uln200xa_lib. ULN200XA (4096, 4, 3, 5, 6);

motorA.angle = 0;

motorB.angle = 0;

var setSpeed = funktion (motor, hastighet) {

motor.setSpeed(speed); 5 varv

}

När kommandona "a" och "b" anländer de använder parametern för att ange hur mycket av en vinkel att vända; negativa delta vinkel används för att vända riktning. Denna funktion kallas från web socket koden när ett meddelande anländer. Stepper motor tar värdet 4096 att vända ett fullt varv. Det skulle förmodligen vara mer logiskt tur detta i en vinkel i grader.

var rotera = funktion (motor, delta) {

om (delta > 0) {

motor.setDirection (Uln200xa_lib. ULN200XA. DIR_CW);

} annat {

motor.setDirection (Uln200xa_lib. ULN200XA. DIR_CCW);

}

motor.stepperSteps(Math.abs(delta));

motor.Angle += delta;

}

När kommandot "c" kom, sätta jag systemet i ett center-läge, där jag kunde använda joysticken flytta två motorerna till en uppsättning startposition. X och Y rörelser motsvarar varje motor. Ett enkelt tryck på knappen användes för att återgå till normalläget.

Hack day koden är på min GitHub sidor. Det kan inte vara särskilt snyggt, men kan vara bra att visa hela. https://github.com/happyt/Edison-Platform

Se Steg
Relaterade Ämnen

Intellekten Edison buller larm (Intel IoT)

IntroduktionJag har ett inbrottslarm och brandlarm, men inget sätt att veta om antingen slår om jag är i huset. I stället för att ersätta dem med "smarta" alternativ, planerar jag att bygga en apparat för att lyssna på höga ljud, då avgöra om de...

Programmet Intel Edison med Wyliodrin (Intel IoT)

Detta är en Instructable det kommer programmet Intel Edison med hjälp av Wyliodrin system. Det Wyliodrin systemet tillåter nybörjare till in i IoT med liten eller ingen kodning eller teknisk kunskapsutveckling.Steg 1: material Vad vi använde för våra...

Vård av äldre Monitor (Intel IoT)

ÖversiktDetta är en Instructable för en övervakning och varningar enhet för någon som en äldre person som kan vara på egen hand vid tidpunkter under dygnet och som kan löpa risk för att falla eller kan behöva lite hjälp under den tiden. Konceptet för...

Chromebook Arduino och Intel Edison guide för Intel IoT EDI utveckling på budget

Först kommer jag att förklara varför detta Instructable behövs så många erfarna utvecklare kommer att håna när de ser titeln och aldrig kommer att läsa den eftersom de inte har ett öppet sinne om saker som Chromebook. Det beror på att många av dem ha...

Gest baserat Home Automation med Intel Edison (Intel IoT))

Gest baserade hemautomation är det nya sättet att interagera med elektriska apparater tillgängliga på vårt hus. I detta projekt kommer vi att använda sensorer i stället för kamera för gestigenkänning, eftersom det ger bättre konsistens, miljö oberoen...

BeatBox: chock spårning för paket med Intel Edison - Intel IOT

Hej allaVi kom precis tillbaka hem efter deltagande till Intel IoT Roadshow (och hackathon) i London.Det var fantastisk och full av idéer och kreativa drar. En mycket bra erfarenhet. Du borde prova.Vi kom som en redan bildade lag och med en mycket br...

DIY amazon Dash använder Intel Edison (Intel IOT)

Hej grabben,Så idag i detta Instructable som vi ska göra en Amazon dash både knapp som när tryckte beställer en produkt online som den är programmerad att göra. Amazon dash används i allmänhet att beställa vardagsföremål som salt, frysta ärtor, tvätt...

Kalenderpåminnelse Intel IoT Edison Google

Du någonsin undgå att märka att Google kalender ytterst viktig händelse? Inte längre med Intel IoT Edison Google kalender påminnelse!Detta instructable vi ska konfigurera i steg för steg en Intel® Edison Arduino ombord, så att den meddelar dig om kom...

Sensorer med Intel IoT Analytics Dashboard (Intel Edison / C + +/ Eclipse)

Lära sig få sensorer arbetar live i Intel IoT Analytics instrumentpanelen.Steg 1: Steg 1: Intel Edison ställa inMåste installera Intel® XDK IoT Edition och ansluta den till din Intel® Edison styrelse.Se komma igång med Intel® XDK IoT Edition.Brädan m...

Jag ser dig (INTEL IOT använder INTEL EDISON)

Projektet ICU (INTEL IOT) med hjälp av INTEL EDISONhttps://github.com/makerspaze/intel_iot_leoCjProjektet ICU är en smart iot anordning som kan se och identifiera den fysiska världen med hjälp av Intel Edison styrelsen och moln-anslutning. Detta proj...

Virtuell verklighet Telepresence med Intel Edison (Intel IoT)

detta är ett projekt vi arbetat med på Intel IoT Roadshow 2016.Den Intel Edison compute chip är en ganska kraftfull styrelse med inbyggd WiFi och bluetooth-funktioner. Detta gör det perfekt för vissa något mer intensiv IoT program.Jag använde en goog...

Designa en Expansion PCB (Intel® IoT)

Detta Instructable har skrivits som utgångspunkt för dem som är angelägen om att använda Intel® Edison till dess fulla potential, genom att införliva det i en fullt utvecklad inbäddade projekt. För att göra detta, behöver du förmodligen att göra – so...

Interaktiva smarta spegeln (Intel IoT)

Detta projekt handlar om hur man gör din spegel smart. Vi kommer att lägga till sensorer och använda api göra spegeln smart. Den grundläggande idén är att göra ljuset nära spegeln kontrolleras automatiskt beroende på förekomsten av användaren (med PI...

Hydo (Intel IoT)

H20. Du vet att du vill ha den. Men har du verkligen det?Hydo är din kamrat. Hydo är din alldeles egna waterboy! Hans enda syfte i livet kommer att vara att se till att du är väl hydrerad och hålla sig frisk. Vid första titt ser Hydo ut en vattenflas...

Cloud hälsoövervakning (Intel IoT)

Detta projekt var utställningsmonter på Intel IoT Hackthon 2015, Pune Indien.Så vad är tanken och orsaken bakom projektet:Projektet syftar till att ge medicinsk hjälp till befolkningen på landsbygden med hjälp av elektronisk maskinvara och moln platt...

Hem Sentry Robot projekt för Intel-IoT turnén i Austin, TX av RoboDorks

Eftersom jag skulle vara i Austin, TX-området för min dotters födelsedag, var jag inbjuden att gå med mina vänner för Intel-IoT Roadshow och hacka-en-het, med Intel Edison utveckling Kit. Kriterierna som tävlingen var att använda en Intel Edison och...

E-kylning Cap (Intel IoT)

Vad gör denna lösning?E-kylning Cap är en bärbar tak som kyler ner huvudet under varma soliga dagar. Det hjälper också, de anslutna användarna att övervaka din huvud temperatur. Det underhåller ditt huvud på en viss optimal temperatur genomföra en en...

Komma igång med Intel IoT för de riktiga Mac dummies :)

Detta Instructable beskriver hur jag arbetade mig igenom de första stegen med Intel IoT kit på en Mac.Jag Charlotte, en av medlemmarna av FabLab Breda (Nederländerna). Jag är mycket mer kapabel med hårdvara (3D-skrivare, lasercutters, CNC etc) än med...

Mobila vaccin Monitor (Intel IoT)

Projektöversikt:Ofta är detta gäller att enligt utvecklade (N.Africa) och utvecklingsländer nationer (som Indien) där vacciner lagring miljön (temperatur) spårning är ett stort problem. När miljön inte är optimal (temperatur är inte inom det förvänta...