Diy

Создание Интернета вещей с Tessel: Совет по развитию Node.js

Создание Интернета вещей с Tessel: Совет по развитию Node.js

Tessel — это новое поколение плат разработки, полностью работающих на Node.js. , и после успешного Kickstarter, они теперь достигли уровня доступности для всех. Что это такое, чем оно отличается от других досок для хобби, и какое у него потенциальное использование?

Что такое Тессель?

Tessel — это чистая доска для разработки Node.js, поэтому все написано на JavaScript и работает с использованием сверхбыстрого движка Node, разработанного Google. Это 99 долларов, включая ваш выбор базового модуля, или 125 долларов с продвинутым модулем, таким как RFID.

С точки зрения аппаратного обеспечения, Tessel имеет:

  • Процессор ARM 180 МГц
  • 32 МБ SDRAM
  • 32 МБ флэш-памяти
  • 20 контактов GPIO
  • Встроенный WiFi (хотя сигнал слабый, поэтому рекомендуется добавить собственную антенну)

Встроенный WiFi — замечательная особенность: в одной простой команде мой Tessel был подключен к моей домашней сети, детали которого затем сохраняются отдельно для всех программ, которые вы добавляете, так что он будет автоматически переподключаться каждый раз.

В настоящее время нет специальной IDE, необходимой (или предоставляемой) для программирования для Tessel. Поскольку это стандартный JavaScript, вы можете использовать любой текстовый редактор или редактор, ориентированный на программирование, например Sublime Text ( ознакомьтесь с моим обзором. ) подсветка синтаксиса. Загрузка кода в Tessel осуществляется через командную строку одной простой командой. Как и в любом приложении Node, существуют тысячи доступных программных библиотек, таких как простой веб-сервер, которые можно вставить в ваше приложение с помощью NPM (диспетчер пакетов Node).

tessel-пример

Существует 14 различных аппаратных модулей для добавления дополнительных функций, таких как инфракрасный или RFID, хотя некоторые еще не поставляются. Они работают аналогично щитам Arduino, вставляя один из четырех разъемов модуля на Tessel. Если это произойдет так же, как и в Arduino, мы должны ожидать появления надстроек сторонних производителей довольно скоро.

На рисунке ниже: модули RFID и IR подключены к Tessel через 3 из 4 портов расширения.

tessel-расширительные платы Сравнение с Raspberry Pi

Многое из того, что может сделать Тессель, уже может быть достигнуто с помощью Raspberry Pi, : например, Pi может запускать Node.js, хотя и очень медленно (мы попробовали в проекте домашней автоматизации Heimcontrol Руководство по домашней автоматизации ); и он имеет набор выводов GPIO для взаимодействия с датчиками. Как и Pi, выводы GPIO Tessel работают при максимальном напряжении 3,3 В, хотя плата обеспечивает питание на 5 Вольт.

Простота использования является основным отличительным фактором. Установка Node.js на Raspberry Pi — непростая задача, и даже если графические функции рабочего стола отключены, Node работает со скоростью улитки. Вам нужно будет удаленно подключиться к Pi для редактирования файлов, а затем возникнет проблема настройки беспроводной сети.

Загрузка кода Node.js в Tessel — это одна команда, как и подключение к WiFi. А благодаря нодальному запуску Node это происходит намного быстрее.

Конечно, вы не можете использовать Tessel как дешевый компьютер общего назначения, такой как Pi. Пи — мастер на все руки и мастер на все руки; Тессел — мастер только что запущенного Узла. Pi также имеет значительно больше оперативной памяти и больше места на диске для ваших приложений благодаря хранилищу на SD-карте.

Сравнение с Arduino

Arduino — это чрезвычайно дешевый микроконтроллер (вы даже можете создать его самостоятельно), доступный в различных форм-факторах. С умопомрачительным количеством учебников и дополнительной функциональностью, доступной через стандартные компоненты, а также с коммутационными панелями, это делает идеальный недорогой стартер в мире электроники. Он использует специальный язык программирования, основанный на C и приложении среды разработки (IDE), но подобрать его не менее сложно, чем Node / JavaScript, особенно если у вас уже есть небольшой опыт.

Arduino-подвиг

Программирование в Node облегчает такие вещи, как реакция на датчики, благодаря основанной на событиях парадигме. В Arduino реагирование на датчики означает добавление функции для считывания значения в каждом цикле цикла. С помощью Node вы просто присоединяетесь к событию, которое затем запускается при обнаружении сигнала.

Процессорная мощность и память Arduino довольно ограничены по сравнению с Tessel — он не справится ни с чем программно-тяжелым. Даже самая большая из настоящих плат Arduino предлагает только 128 КБ флэш-памяти с 8 КБ ОЗУ.

Тем не менее, если ваш проект в значительной степени основан на электронике или вам требуется более фундаментальный доступ к таким вещам, как прерывания и тайминги, вы можете придерживаться Arduino. Стоимость также большая разница, конечно.

Плохо

Теоретически, Tessel должен работать с большинством пакетов NPM. На практике это глючит, и на момент написания статьи ни Express, ни Sockets.io не были полностью функциональны из-за несовместимости в основных модулях HTTP. Я не сомневаюсь, что они будут исправлены вовремя, но сейчас это немного ограничивает.

Несмотря на то, что аппаратное обеспечение модуля расширения является хорошим пакетом, с функциональностью Infra-Red не так просто работать, как с Arduino. — это требует использования декодированных буферов, а не стандартного типа сигнала + шестнадцатеричный код, к которому мы привыкли. Опять же, улучшения обещаны здесь позже.

Антенна WiFi также имеет ужасную дальность действия — в идеале, мы говорим в одной комнате — и для ее улучшения требуется неприятная мелкая пайка (хотя инструкции о том, как взломать, очень понятны). Документация также предполагает, что у чипа WiFi могут быть проблемы со скоростями 802.11n и сетями 5 ГГц, хотя я, по крайней мере, смог подключить его к моей сети 802.11n 2,4 ГГц. Включение переключателя для взлома антенны с предварительно спаянным внешним разъемом было бы очень полезно, и не все уверены в паяльнике.

Чем хорош тессель?

Интернет вещей . У Тесселя есть что-то, что может понравиться, но еще рано. Встроенный WiFi означает, что он идеально подходит для нового поколения взаимосвязанных устройств; поддержка Node с нуля должна обеспечивать быструю и простую реализацию API-интерфейсов JSON или простых стеков серверов.

Тессель стоит посмотреть — даже потенциальный претендент на корону у Ардуино — но я бы подождал, пока некоторые морщины не будут сглажены. И если вы решите купить его, вы найдете у нас отличные учебные пособия по Tessel DIY, на которые стоит обратить внимание.

Похожие посты
Diy

Вещи, которые вы должны иметь в виду, прежде чем брать ноутбук или смартфон в службу технической поддержки

Diy

Как использовать Arduino для съемки красивой скоростной фотографии

DiyLinux

Пять великолепных расширений Raspberry Pi, которые делают его еще более полезным

Diy

Первые шаги с Arduino: пристальный взгляд на печатную плату и структуру программы