Протоколы взаимодействия модулей

Материал из roboforum.ru Wiki
Перейти к: навигация, поиск


Для связи вычислительных узлов между собой, а так же с рядом сложных сенсоров и исполнительных устройств используются различные транспортные протоколы, обеспечивающий нужный уровень затрат, энергопотребления, скорости, помехозащищенности и общей длины кабеля (расстояния и наличия прямой видимости) между блоками. Ниже дан обзор основных протоколов применяющихся в роботах:

Беспроводное соединение

Тип Внешний вид Топология Скорость Частота Макс. расстояние Цена решения Информация
ZigBee точка — много точек до 2Mbps 2.4ГГц 10-100м
Bluetooth точка — много точек до 1Mbps 2.4ГГц 10-100м
  • от $10 — usb-dongle
  • от $25 — ttl-uart модуль
Bluetooth модули
433MHz радиомодем точка — точка до 115Кbps 433МГц ? от $35 за 1 радиомодем Радиомодемы

Проводное соединение

Тип Топология Скорость Макс. длина Защита от помех Уровень напряж. Применение Цена МК с интерфейсом Цена конвертора уровней Информация о протоколе
spi точка—точка до 70Mbps до 1м низкая 0-5В (TTL) Взаимодействие МК с периферией (например, флеш-память) spi почти во всех МК не требуется kilm.by.ru
i2c(twi) шина до 3.4Mbps низкая 0-5В (TTL) Взаимодействие МК с периферией (например, флеш-память, датчики, АЦП), в том числе с другими МК i2с почти во всех МК не требуется
ttl-uart точка—точка до 1Mbps низкая 0-5В (TTL) в основном используется как логический уровень для RS-232, RS-485, редко для UpLink'a с радиоканалом, взаимодействием с высокоуровневой периферией, например, GPS-модулями или GSM-модемами. ttl-uart почти во всех МК не требуется см. RS-232, отличие только в физических уровнях
rs-232 точка—точка 2.4Kbps-115Kbps[1] до 900м[1] средняя +/- 15В В основном используется для взаимодействия МК—ПК ttl-uart почти во всех МК $3 www.gaw.ru
rs-485 шина до 10Mbps[1] до 1200м[1] высокая 0-5В В основном используется для взаимодействия многочисленных модулей на базе МК с одним управляющим ПК ttl-uart почти во всех МК $3
can шина 10Kbps-1Mbps[1] до 5000м[1] высокая 0-5В Используется для взаимодействия многочисленных модулей на базе МК с одним управляющим МК или ПК. Сложный, гибкий, применяется в ответственных приложениях (автомобильная техника, производство). $15 не требуется
1-wire шина 15.4Kbps

(в ряде случаев (на коротких линиях) до 125Kbps)

до 300м низкая как правило, не требуется Используется как простой и дешевый способ объединения в сеть датчиков и устройств, не требующих обмена большим количеством данных. Питание и сигналы передаются всего по паре проводов. Имеется большое количество устройств типа термометр, метка, датчик замыкания и т.п. ? ? w:en:1-Wire

Примечания

  1. 1 2 3 4 5 6 Чем больше расстояние, тем меньше скорость. Ошибка цитирования Неверный тег <ref>: название «len-baud» определено несколько раз для различного содержимого Ошибка цитирования Неверный тег <ref>: название «len-baud» определено несколько раз для различного содержимого Ошибка цитирования Неверный тег <ref>: название «len-baud» определено несколько раз для различного содержимого Ошибка цитирования Неверный тег <ref>: название «len-baud» определено несколько раз для различного содержимого Ошибка цитирования Неверный тег <ref>: название «len-baud» определено несколько раз для различного содержимого