Discutăm cu roboții folosind doar JavaScript!

Recent, am susținut o discuție fulgerătoare la dotJS 2018 – care este o conferință excelentă despre cele mai recente evoluții din lumea JavaScript – o altă persoană care a participat a fost interesantul Devon Lindsey care vorbea despre roboți. Roboți ?! Da, roboți – care rulează pe JavaScript! Acest lucru m-a motivat să fac niște cercetări online care m-au condus la proiectul Johnny-Five, o platformă JavaScript Robotics și IoT întreținută de o comunitate de dezvoltatori de software pasionați și ingineri hardware.

Peste 75 de dezvoltatori au adus contribuții la construirea unui ecosistem robust, extensibil și compozibil – Johnny-Five

Așa cum s-a întâmplat, există multe informații care pot fi găsite numai despre acest cadru, de asemenea sub formă de tutoriale și (e) cărți. Unul dintre aceștia care mi-a atras atenția în mod special a fost Hands-On Robotics with JavaScript de Kassandra Perch. Această carte vă oferă toate elementele de bază pentru a începe să utilizați Johnny-Five și a crea software pentru roboți cu un JavaScript simplu!

Platforma Johnny-Five

Așa cum am spus mai devreme, cadrul Johnny-Five poate fi folosit pentru a scrie JavaScript pentru robotică și hardware IoT. Cadrul este susținut de o comunitate puternică de peste 75 de dezvoltatori care contribuie la software-ul open-source al Johnny-Five. A fost creat special pentru plăcile bazate pe Arduino, dar poate rula literalmente pe orice tip de hardware – cum ar fi Raspberry Pi – folosind ceva numit plugin-uri IO care sunt întreținute de comunitate.

Dacă vă uitați la exemplul de mai sus, puteți vedea că trebuie doar să rulați Node.js pe hardware-ul dvs. pentru a putea instala cadrul Johnny-Five folosind npm . După care este nevoie de doar câteva linii de cod pentru ca acesta să spună „Hello World” cu un LED intermitent pe o placă bazată pe Arduino.

Exemplu Raspberry Pi-3

În cartea lui Kassandra Perch, toate exemplele folosesc un Raspberry Pi-3 ca hardware, așa că să încercăm să recreăm acest exemplu prin configurarea aplicației „Hello World”, o aplicație Raspberry Pi-3. În primul rând, veți avea nevoie, desigur, de această piesă hardware și de o lumină LED – care sunt incluse în majoritatea kiturilor de pornire disponibile online. Pe acest dispozitiv trebuie să aveți instalat un sistem de distribuție, pentru care aș sfătui să utilizați Raspbian Lite sau Raspbian Full bazat pe Debian.

Întrucât nu utilizăm o placă bazată pe Arduino pentru acest tutorial, trebuie să instalați și pluginul Johnny-Five IO pentru Raspberry Pi. Pentru acest exemplu, voi ignora pașii de instalare a Raspbian și presupun că aveți deja un sistem de distribuție și Node.js instalat – dar toate acestea sunt explicate foarte clar în carte sau în numeroasele tutoriale care pot fi găsite online. Acestea fiind spuse, va trebui să accesați Raspberry Pi și să rulați următoarele comenzi de la terminalul dvs. pentru a instala Johnny-Five și pluginul IO:

A fost ușor, nu? Pentru a continua, veți crea un nou director numit led-blink în care vor fi adăugate fișierele proiectului. Puteți face acest lucru pur și simplu utilizând:

Odată ajuns în acest nou director, putem iniția un nou proiect npm pentru a crea un fișier package.json pentru aplicația noastră executând:

Acum avem configurarea mediului nostru de dezvoltare, este timpul să adăugăm codul necesar pentru a rula exemplul nostru. Vă amintiți exemplul publicat înainte? Trebuie doar să faceți câteva ajustări minore pentru ca acest exemplu să funcționeze pe Raspberry Pi-3. Să creăm un fișier nou și să-l numim blink.js și plasăm următorul cod în acest fișier:

După cum puteți vedea în fragmentul de cod de mai sus, începeți importând atât johnny-five , cât și raspi-io după ce creați o nouă instanță Johnny-Five și spuneți LED-ul – pe care presupun că l-ați plasat pe pinul 7 numărat din partea superioară a plăcii dvs. cu zmeură – ar trebui să strobeze / să clipească la fiecare 100 ms.

Deoarece este un script JavaScript care rulează pe Node.js, puteți pur și simplu să rulați un nod blink.js pentru a începe să clipească LED-ul sau să îl adăugați la npm start comandă în fișierul package.json . De asemenea, verificați codul sursă pe Github dacă ceva nu este clar.

Deci, unde sunt roboții?

Scrierea unui blog despre vorbirea de fapt cu roboții folosind JavaScript ar fi cu adevărat greu, deoarece acest subiect are nevoie de multe explicații. De asemenea, acoperirea tuturor setărilor hardware ar putea fi un pic mai avansată pentru dezvoltatorii care tocmai încep cu Raspberry Pi sau Johnny-Five. Dar aceste subiecte sunt acoperite pe scară largă în cărți – precum cea menționată anterior – și în alte tutoriale online.

Îți place această postare sau ai sugestii? Te rog anunta-ma! Sub această postare, pe Twitter sau prin e-mail.

Asigurați-vă că mă urmăriți pe Twitter pentru a fi informat despre toate lucrurile legate de #javacript și #javascriptEverywhere

Puteți găsi mai multe informații despre cartea Hands-On Robotics with JavaScript de Kassandra Perch aici și găsiți toate exemplele de cod pe this Github repository. Dacă doriți să aflați mai multe despre platforma Johnny-Five, vă rugăm să aruncați o privire pe site-ul lor http://johnny-five.io . Vă mulțumim că ați citit această postare!