Интернет вещей - Contiki

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

Contiki

Он обязан своей популярностью тем, что он очень легкий (по современным стандартам), зрелый и гибкий. Многие ученые, исследователи организаций и профессионалы считают, что это идеальная операционная система. Для работы Contiki требуется всего несколько килобайт, а в пределах 30 КБ он подходит для всей операционной системы - веб-браузера, веб-сервера, калькулятора, оболочки, клиента и демона telnet, почтового клиента, средства просмотра vnc и ftp. Он заимствован из операционных систем и стратегий развития десятилетий назад, которые легко эксплуатировали столь же мало места.

Contiki Communication

Contiki поддерживает стандартные протоколы и последние разрешающие протоколы для IoT -

  • uIP (для IPv4) - эта реализация TCP / IP поддерживает 8-битные и 16-битные микроконтроллеры.

  • uIPv6 (для IPv6) - это полностью совместимое расширение IPv6 для uIP.

  • Rime - этот альтернативный стек обеспечивает решение, когда IPv4 или IPv6 оказываются непосильными. Он предлагает набор примитивов для систем с низким энергопотреблением.

  • 6LoWPAN - Это означает IPv6 в беспроводных персональных сетях с низким энергопотреблением. Он обеспечивает технологию сжатия для поддержки беспроводной связи с низкой скоростью передачи данных, необходимой для устройств с ограниченными ресурсами.

  • RPL - этот протокол IPv6 с вектором расстояния для сетей LLN (сетей с низким энергопотреблением и с потерями) позволяет найти наилучший возможный путь в сложной сети устройств с различными возможностями.

  • CoAP - этот протокол поддерживает связь для простых устройств, обычно устройств, требующих тщательного удаленного наблюдения.

Динамическая загрузка модуля

Динамическая загрузка и связывание модулей во время выполнения поддерживает среды, в которых поведение приложения изменяется после развертывания. Загрузчик модулей Contiki загружает, перемещает и связывает файлы ELF.

The Cooja Network Simulator

Cooja, сетевой симулятор Contiki, создает реальную скомпилированную и работающую систему Contiki, управляемую Cooja.

Использование Cooja оказывается простым. Просто создайте новый тип сучка, выбрав меню Motes и добавив Motes → Create New Mote Type . В появившемся диалоговом окне вы выбираете имя для мотылька, выбираете его прошивку и тестируете его компиляцию.

Мотес Меню

После создания добавьте сучки, нажав кнопку « Создать» . Появится новый тип соринки, к которому вы можете прикрепить узлы. Последний шаг требует сохранения файла симуляции для дальнейшего использования.