Construire l'Internet des objets, avec Tessel: le conseil de développement de Node.js

Tessel est un nouveau groupe de développement qui fonctionne entièrement sur Node.js, et après un succès Kickstarter, ils ont maintenant atteint le point d'être disponible pour tout le monde.

Tessel est un nouveau groupe de développement qui fonctionne entièrement sur Node.js, et après un succès Kickstarter, ils ont maintenant atteint le point d'être disponible pour tout le monde.
Publicité

Tessel est un nouveau groupe de développement qui fonctionne entièrement sur Node.js Qu'est-ce que Node.JS et Why Should I Care? [Développement Web] Qu'est-ce que Node.JS et pourquoi devrais-je m'en soucier? [Développement Web] JavaScript est juste un langage de programmation côté client qui s'exécute dans le navigateur, non? Plus maintenant. Node.js est un moyen d'exécuter JavaScript sur le serveur; mais c'est beaucoup plus. Si ... Lire la suite, et après un succès Kickstarter, ils ont maintenant atteint le point d'être disponible pour tout le monde. Qu'est-ce que c'est exactement, en quoi diffère-t-il des autres planches de passe-temps, et quelles utilisations potentielles cela a-t-il?

Qu'est-ce que Tessel?

Tessel est un tableau de développement Node.js pur, donc tout est écrit en JavaScript et fonctionne avec un moteur de nœud super rapide développé par Google. C'est 99 $, y compris votre choix d'un module de base, ou 125 $ avec un module avancé comme RFID.

En termes de matériel, Tessel a:

  • Processeur ARM 180 MHz
  • SDRAM 32 Mo
  • 32 Mo de stockage flash
  • 20 broches GPIO
  • WiFi intégré (bien que le signal soit faible, il est donc recommandé d'ajouter votre propre antenne)

Le WiFi intégré est une fonctionnalité admirable: en une seule commande, mon Tessel est connecté à mon réseau domestique, les détails sont ensuite sauvegardés séparément dans tous les programmes que vous ajoutez, de sorte qu'il se reconnecte automatiquement à chaque fois.

Actuellement, aucun IDE spécial n'est requis (ou fourni) pour programmer le Tessel. Comme il s'agit de JavaScript standard, vous pouvez utiliser n'importe quel éditeur de texte, ou un éditeur orienté programmation comme Sublime Text (consultez ma critique Try Out Sublime Text 2 Pour votre édition de code multiplate-forme, essayez Text Sublime 2 pour votre code multiplate-forme Sublime Text 2 est un éditeur de code multiplateforme dont je n'ai entendu parler que récemment, et je dois dire que je suis vraiment impressionné malgré l'appellation bêta (vous pouvez télécharger l'application complète sans payer un centime ... Lire la suite) pour coloration syntaxique Le téléchargement du code sur le Tessel se fait via la ligne de commande en une seule commande simple. Comme avec n'importe quelle application Node, il existe des milliers de bibliothèques de programmation disponibles, comme un simple serveur Web, disponibles pour être déplacées dans votre application à l'aide de NPM (Node Package Manager).

tessel-exemple

Il existe 14 modules matériels différents pour ajouter des fonctionnalités supplémentaires telles que l'infra-rouge ou RFID, bien que certains ne soient pas encore disponibles. Ils fonctionnent de la même manière que les blindages Arduino, en les insérant dans l'une des quatre fiches de module du Tessel. Si elle prend son envol de la même manière qu'Arduino, nous devrions nous attendre à voir bientôt des compléments de tiers.

Sur la photo ci-dessous: les modules RFID et IR branchés au Tessel via 3 des 4 ports d'extension.

tessel-expansion-boards Comparaison avec Raspberry Pi

Une grande partie de ce que le Tessel peut faire peut déjà être réalisé avec un Raspberry Pi juste acheté un Raspberry Pi? 11 choses que vous devez savoir juste acheté un Raspberry Pi? 11 choses que vous devez savoir Dans cette vidéo, nous expliquons tout ce que vous devez savoir si vous venez d'acheter un Raspberry Pi, ou si vous envisagez d'en acheter un. Lire la suite: un Pi peut exécuter Node.js, par exemple, mais très lentement (nous avons essayé dans le projet domotique Heimcontrol Guide de domotique avec Raspberry Pi et Arduino Guide de domotique avec Raspberry Pi et Arduino Le marché de la domotique est inondé de coûteux systèmes de consommation, incompatibles entre eux et coûteux à installer.Si vous avez un Raspberry Pi et un Arduino, vous pouvez essentiellement réaliser la même chose à ... Lire la suite); et il a un ensemble de broches GPIO pour interagir avec les capteurs. Tout comme le Pi, les broches GPIO de Tessel fonctionnent à un maximum de 3, 3 volts, bien que la carte fournisse de l'énergie pour 5 volts.

La facilité d'utilisation est le principal facteur différent. L'installation de Node.js sur un Raspberry Pi n'est pas une tâche facile, et même avec des fonctions de bureau graphiques désactivées, Node fonctionne à la vitesse d'un escargot. Vous aurez besoin de SSH dans le Pi à distance pour éditer les fichiers, et puis il y a le problème de la configuration du réseau sans fil. Configuration du réseau sans fil sur votre Raspberry Pi Configuration du réseau sans fil sur votre Raspberry Pi virtuellement. et une grande flexibilité peut être obtenue en ignorant le port Ethernet en faveur d'une clé USB sans fil. Lire la suite .

Le téléchargement de votre code Node.js sur le Tessel est une commande unique, tout comme la connexion au WiFi. Et en exécutant Node nativement, c'est beaucoup plus rapide.

Bien sûr, vous ne pouvez pas utiliser le Tessel comme un ordinateur bon marché à usage général comme le Pi. Le Pi est un homme à tout faire et un maître de rien; le Tessel est un maître à l'exécution de Node. Le Pi a également beaucoup plus de RAM, et plus d'espace disque pour vos applications grâce à son stockage sur carte SD.

Comparaison avec Arduino

Arduino Qu'est-ce que Arduino: Tout ce que vous devez savoir (en vidéo) Qu'est-ce que Arduino: Tout ce que vous devez savoir (en vidéo) Qu'est-ce qu'un Arduino et pourquoi devriez-vous vous en soucier? Dans cette vidéo, j'essaie de répondre à cette question, et plus encore. Read More est un micro-contrôleur extrêmement bon marché (vous pouvez même en fabriquer un vous-même), disponible dans une variété de facteurs de forme. Avec un nombre impressionnant de tutoriels et de fonctionnalités supplémentaires disponibles via des composants standard ainsi que des cartes de dérivation, il constitue un démarreur idéal à faible coût dans le monde de l'électronique. Il utilise un langage de programmation spécial dérivé de C et d'une application d'environnement de développement personnalisée (IDE), mais il n'est pas moins difficile à détecter que Node / JavaScript, en particulier si vous avez déjà un peu d'expérience.

arduino-feat

La programmation dans Node est plus facile pour des choses comme réagir aux capteurs, grâce au paradigme basé sur les événements. Avec Arduino, réagir aux capteurs signifie ajouter une fonction pour lire la valeur de chaque cycle de boucle. Avec Node, vous attachez simplement à un événement, qui est ensuite déclenché lorsqu'un signal est détecté.

La puissance de traitement et la mémoire de l'Arduino sont plutôt limitées par rapport à Tessel - il ne gérera pas les logiciels lourds. Même la plus grande des cartes Arduino vrai offre seulement 128KB de mémoire flash avec 8KB de RAM.

Cela dit, si votre projet est fortement basé sur l'électronique ou si vous avez besoin d'un accès plus fondamental à des choses comme les interruptions et les minutages, vous voudrez peut-être vous en tenir à un Arduino. Le coût est également une grande différence, bien sûr.

Le mauvais

En théorie, Tessel devrait travailler avec la plupart des paquets NPM. En pratique, c'est bogué, et au moment de l'écriture, ni Express ni Sockets.io n'étaient entièrement fonctionnels en raison d'incompatibilités dans les modules HTTP de base. Je n'ai aucun doute que ceux-ci seront corrigés dans le temps, mais pour le moment c'est un peu limitatif.

Bien que le matériel du module d'extension soit un bon paquet, la fonctionnalité Infra-Red n'est pas aussi simple à utiliser que celle de l'Arduino. Présentation du Devil TV, Une télécommande facile Arduino Prank Présentation du Devil TV, Une télécommande facile Arduino Prank Lire la suite - il nécessite l'utilisation de tampons décodés, plutôt que le type de signal standard + code hexadécimal auquel nous sommes habitués. Encore une fois, les améliorations sont promises ici plus tard sur la ligne.

L'antenne WiFi a aussi une portée terrible - nous parlons de la même pièce, idéalement - et l'améliorer implique une méchante petite soudure (bien que les instructions sur la façon de faire le hack soient très claires). La documentation suggère également que la puce WiFi pourrait avoir des problèmes avec les vitesses 802.11n et les réseaux 5GHz, bien que j'aie au moins pu la connecter à mon réseau 802.11n 2.4GHz. Y compris un interrupteur pour le hack de l'antenne avec la prise externe pré-soudée aurait été très apprécié, et tout le monde n'est pas confiant avec un fer à souder.

Qu'est-ce que Tessel est bon pour l'avenir?

L'Internet des objets Tessel a beaucoup à aimer à ce sujet, mais il est encore tôt. Le WiFi embarqué signifie qu'il est parfait pour une nouvelle génération d'appareils interconnectés; La prise en charge de Node à partir de zéro devrait garantir une implémentation rapide et facile des API JSON ou de simples piles de serveurs.

Tessel est un à surveiller - un candidat potentiel pour prendre la couronne d'Arduino, même - mais je tiens pour l'instant jusqu'à ce que les rides ont été aplanies. Et si vous décidez d'en acheter un, vous trouverez chez nous quelques bons tutoriels de Tessel DIY à découvrir.

In this article