Costruire l'Internet delle cose, con Tessel La scheda di sviluppo Node.js
Tessel è una nuova generazione di schede di sviluppo interamente basate su Node.js Che cos'è Node.JS e Perché dovrei preoccuparmi? [Sviluppo Web] Che cos'è Node.JS e Perché dovrei preoccuparmi? [Sviluppo Web] JavaScript è solo un linguaggio di programmazione lato client che viene eseguito nel browser, giusto? Non più. Node.js è un modo per eseguire JavaScript sul server; ma è molto di più. Se ... Leggi di più, e dopo un Kickstarter di successo, ora hanno raggiunto il punto di essere disponibili per tutti. Di cosa si tratta esattamente, come si differenzia dalle altre schede hobby e quali usi potenziali ha?
Cos'è Tessel?
Tessel è una pura scheda di sviluppo Node.js, quindi tutto è scritto in JavaScript ed eseguito utilizzando un motore di nodo super veloce sviluppato da Google. È $ 99 incluso la scelta di un modulo base, o $ 125 con un modulo avanzato come RFID.
In termini di hardware, Tessel ha:
- Processore ARM 180 MHz
- SDRAM da 32 MB
- 32 MB di memoria flash
- 20 pin GPIO
- WiFi integrato (anche se il segnale è debole, quindi si consiglia di aggiungere la propria antenna)
Il Wi-Fi integrato è una caratteristica ammirevole: con un semplice comando, avevo il mio Tessel connesso alla mia rete domestica, i cui dettagli sono poi salvati separatamente in tutti i programmi che aggiungi, quindi si riconnetterà automaticamente ogni volta.
Attualmente non è richiesto (o fornito) IDE speciale per programmare il Tessel. Dal momento che è un JavaScript standard, puoi utilizzare qualsiasi editor di testo o un editor orientato alla programmazione come Sublime Text (controlla la mia recensione Prova Outlime Text 2 per il tuo codice multipiattaforma Modifica dei bisogni Prova Sublime Text 2 per il tuo codice multipiattaforma Editing Needs Sublime Text 2 è un editor di codice multipiattaforma di cui ho sentito parlare solo di recente, e devo dire che sono davvero impressionato nonostante l'etichetta beta. Puoi scaricare l'app completa senza pagare un centesimo ... Read More) per l'evidenziazione della sintassi . Il caricamento del codice sul Tessel avviene tramite la riga di comando in un unico comando. Come con qualsiasi applicazione Node, sono disponibili migliaia di librerie di programmazione, ad esempio un semplice server Web, disponibili per l'accesso all'applicazione tramite NPM (Node Package Manager).
Ci sono 14 diversi moduli hardware per aggiungere funzionalità extra come infrarossi o RFID, anche se alcuni non sono ancora in vendita. Funzionano in modo simile agli scudi Arduino, inserendosi in uno dei quattro tappi del modulo sul Tessel. Se decolla allo stesso modo di Arduino, dovremmo aspettarci di vedere i componenti aggiuntivi di terze parti abbastanza presto.
Nella foto seguente: i moduli RFID e IR inseriti nel Tessel tramite 3 delle 4 porte di espansione.
Confronto con Raspberry Pi
Molto di ciò che può fare il Tessel può già essere raggiunto con un Raspberry Pi appena comprato un Raspberry Pi? 11 cose che devi sapere ho appena comprato un Raspberry Pi? 11 cose che devi sapere In questo video, spieghiamo tutto ciò che potresti aver bisogno di sapere se hai appena comprato un Raspberry Pi o stai pensando di acquistarne uno. Per saperne di più: un Pi può eseguire Node.js, ad esempio, anche se molto lentamente (abbiamo provato nel progetto di automazione domestica di Heimcontrol Home Automation Guide With Raspberry Pi e Arduino Home Automation Guide Con Raspberry Pi e Arduino Il mercato domotico è invaso da cari sistemi di consumo, incompatibili tra loro e costosi da installare.Se si dispone di un Raspberry Pi e un Arduino, è possibile ottenere sostanzialmente la stessa cosa a ... Read More); e ha un set di pin GPIO per interagire con i sensori. Analogamente al Pi, i pin GPIO di Tessel funzionano a un massimo di 3,3 volt, sebbene la scheda fornisca corrente per 5 volt.
La facilità d'uso è il principale fattore di differenziazione. Installare Node.js su un Raspberry Pi non è un compito facile, e anche con le funzioni grafiche del desktop disabilitate, il Node gira a passo di lumaca. Avrai bisogno di SSH nel Pi in remoto per modificare i file, e poi c'è il problema della configurazione della rete wireless Impostazione della rete wireless sul tuo Raspberry Pi Configurazione della rete wireless sul tuo Raspberry Pi Praticamente ogni progetto Raspberry Pi richiederà una connessione di rete e una notevole flessibilità può essere acquisita ignorando la porta Ethernet a favore di un dongle USB wireless. Leggi di più .
Il caricamento del codice Node.js su Tessel è un singolo comando, così come la connessione a WiFi. E eseguendo Nodo in modo nativo, è molto più veloce.
Naturalmente, non si può usare il Tessel come un computer economico per scopi generali come il Pi. Il Pi è un tuttofare e un maestro di nessuno; il Tessel è un maestro su Node in esecuzione. Il Pi ha anche molta più RAM e più spazio per le tue app grazie all'archiviazione della scheda SD.
Confronto con Arduino
Arduino Cos'è Arduino: Tutto quello che c'è da sapere (in video) Cos'è Arduino: Tutto quello che c'è da sapere (in video) Cos'è un Arduino e perché dovrebbe interessarti? In questo video, cerco di rispondere a questa domanda e altro ancora. Read More è un microcontroller estremamente economico (puoi persino crearne uno tu stesso), disponibile in una varietà di fattori di forma. Con un numero strabiliante di esercitazioni e funzionalità aggiuntive disponibili tramite componenti standard e schede breakout, costituisce un ideale antipasto a basso costo nel mondo dell'elettronica. Utilizza un linguaggio di programmazione speciale derivato da C e un ambiente di sviluppo personalizzato (IDE), ma non è meno difficile da rilevare rispetto a Node / JavaScript, in particolare se hai già una piccola esperienza.
Programmare in nodo è più facile per cose come reagire ai sensori, grazie al paradigma basato sugli eventi. Con Arduino, reagire ai sensori significa aggiungere una funzione per leggere il valore di ogni ciclo di loop. Con Node, si collega semplicemente a un evento, che viene quindi attivato quando viene rilevato un segnale.
La potenza di elaborazione e la memoria dell'Arduino sono piuttosto limitate rispetto a Tessel: non gestirà nulla di pesante per il software. Anche la più grande delle vere schede Arduino offre solo 128 KB di memoria flash con 8 KB di RAM.
Detto questo, se il tuo progetto è pesantemente basato sull'elettronica o hai bisogno di un accesso più fondamentale a cose come interrupt e tempi, potresti voler attaccare ad un Arduino. Il costo è anche una grande differenza, ovviamente.
Il cattivo
In teoria, Tessel dovrebbe funzionare con la maggior parte dei pacchetti NPM. In pratica, è buggato e al momento della scrittura né Express né Sockets.io erano completamente funzionali a causa di incompatibilità nei moduli HTTP principali. Non ho dubbi che questi saranno risolti in tempo, ma al momento è un po 'limitante.
Anche se l'hardware del modulo di espansione è un buon pacchetto, la funzionalità Infra-Red non è così semplice da usare come quella di Arduino. Presentiamo il diavolo della TV, Un facile telecomando Arduino Prank Presentazione del diavolo della TV, Un facile controllo remoto Arduino Prank Per saperne di più - richiede l'uso di buffer decodificati, piuttosto che il tipo di segnale standard + codice esadecimale a cui siamo abituati. Ancora una volta, i miglioramenti sono promessi qui più avanti sulla linea.
L'antenna WiFi ha anche un range terribile - stiamo parlando nella stessa stanza, idealmente - e il miglioramento comporta un brutto pezzo di saldatura su piccola scala (anche se le istruzioni su come eseguire l'hack sono molto chiare). La documentazione suggerisce anche che il chip WiFi potrebbe avere problemi con le velocità 802.11n e 5GHz, anche se ero almeno in grado di collegarlo alla mia rete 802.11n 2.4GHz. Includere un interruttore per l'attacco dell'antenna con la presa esterna pre-saldata sarebbe stato molto apprezzato, e non tutti sono fiduciosi con un saldatore.
Per Tessel, allora?
L'Internet delle cose. Tessel ha molto piacere, ma è ancora presto. WiFi a bordo significa che è perfetto per una nuova generazione di dispositivi interconnessi; mentre il supporto Node da zero dovrebbe garantire un'implementazione rapida e semplice delle API JSON o dei semplici stack di server.
Tessel è uno da guardare - un potenziale contendente per prendere la corona da Arduino, anche - ma resisterei per ora fino a quando alcune rughe non sono state appianate. E se decidi di acquistarne uno, troverai alcuni fantastici tutorial Tessel DIY da guardare all'orizzonte.
Scopri di più su: JavaScript, programmazione.