Протоколы взаимодействия модулей
Для связи вычислительных узлов между собой, а так же с рядом сложных сенсоров и исполнительных устройств используются различные транспортные протоколы, обеспечивающий нужный уровень затрат, энергопотребления, скорости, помехозащищенности и общей длины кабеля (расстояния и наличия прямой видимости) между блоками. Ниже дан обзор основных протоколов применяющихся в роботах:
Беспроводное соединение
Тип | Внешний вид | Топология | Скорость | Частота | Макс. расстояние | Цена решения | Информация |
---|---|---|---|---|---|---|---|
Bluetooth | - | точка - много точек | до 1Mbps | 2.4ГГц | 10-100м | от 10$ usb-dongle
от 25$ - ttl-uart модуль |
Bluetooth модули |
433MHz радиомодем | - | точка - точка | до 115Кbps | 433МГц | ? | от 35$ за 1 радиомодем | Радиомодемы |
Проводное соединение
Тип | Топология | Скорость | Макс. длина | Защита от помех | Уровень напряж. | Применение | Цена МК с интерфейсом | Цена конвертора уровней | Информация о протоколе |
---|---|---|---|---|---|---|---|---|---|
spi | точка-точка | до 1Mbps | до 1м | низкая | 0-5В (TTL) | Взаимодействие МК с периферией (например, флеш-память) | spi почти во всех МК | не требуется | [kilm.by.ru] |
i2c(twi) | шина | до 1Mbps | 1м | низкая | 0-5В (TTL) | Взаимодействие МК с периферией (например, флеш-память, датчики, АЦП), в том числе с другими МК | i2с почти во всех МК | не требуется | [википедия] |
ttl-uart | точка-точка | до 1Mbps | 1м | низкая | 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$ | не требуется | [www.gaw.ru] |
1-wire | шина | 15.4Kbps
(в ряде случаев (на коротких линиях) до 125Kbps) |
до 300м | низкая | как правило, не требуется | Используется как простой и дешевый способ объединения в сеть датчиков и устройств, не требующих обмена большим количеством данных. Питание и сигналы передаются всего по паре проводов. Имеется большое количество устройств типа термометр, метка, датчик замыкания и т.п. | ? | ? | [cxem.net] |