Порты микроконтроллеров их назначение и типы. Протоколы обмена информацией между микроконтроллерами.
Протоколом связи микропроцессорных систем через последовательные порты называется правила и соглашение между этими системами по способу передачи информации через их последовательные порты. В протоколах связи различают два уровня: физический и системный.
Физический уровень этого протокола определяет количество проводов в шине соединения, способы стыковки шины с последовательным портом, номинальный уровень импульсных сигналов в шине, типы разъемов и кабелей. Физический уровень реализован в формате: RS- 232, RS-422, RS-485, а также в формате «токовая петля» Сетевой уровень протокола определяет формат способа передачи данных и алгоритм управления последовательным интерфейсом. К числу таких протоколов относятся: CAN, Profibus, Modbus, Ethernet.
Протокол CAN
CAN (Сопtroller Area Network) - это последовательный протокол связи с эффективной поддержкой распределения контроля в реальном времени и очень высоким уровнем безопасности.
Основное назначение: организация передачи информации в сложных условиях, таких как среды с высоким уровнем различного рода помех. Этот протокол передачи применяется в автомобильной электронике, машинных устройствах управления, датчиках при передаче информации со скоростями до 1 Мбит/с. Протокол САN имеет следующие основные характеристики:
1. Каждое сообщение имеет определенный приоритет (идентификатор - бит, определяющий статический приоритет сообщения в течение доступа к шине).
2. Существуют гарантированные времена ожидания (сообщения с низким приоритетом будут переданы через определенный промежуток времени, невзирая на наличие сообщений с более высоким приоритетом).
3. Гибкость конфигурации (узел может быть добавлен в CAN -сеть без каких-либо изменений в программном или аппаратном обеспечении какого-либо узла в сети). К сети CAN может одновременно быть подключено не более 64 узлов.
4. Групповой прием с временной синхронизацией (любое число узлов может одновременно получать и реагировать на одно и то же сообщение).
5. Система непротиворечивости данных (внутри сети CAN гарантировано, что сообщение принято всеми узлами или ни одним узлом).
6. Обнаружение ошибок и сигнализация (сеть CAN имеет несколько способов обнаружения ошибок, если ошибка обнаружена, то сообщение помечается и оно будет передано вновь).
7. Автоматическая ретрансляция разрушенных сообщений (разрушенные сообщения помечаются узлом, обнаружившим ошибку, сообщения прерываются и будут переданы снова).
8. Различие между временными ошибками и постоянными отказами узлов и автономное отключение дефектных узлов.
Протокол MODBUS
Стандартные MODBUS -порты используют RS-232 с совместимым последовательным интерфейсом. Контроллеры соединяются, используя технологию «главный - подчиненный», при которой только одно устройство (главный) может инициировать передачу (сделать запрос).
Другие устройства (подчиненные) передают запрашиваемые главным устройством данные или производят запрашиваемые действия.
Главный может адресоваться к индивидуальному подчиненному или инициировать широкую передачу сообщения на все подчиненные устройства. Подчиненное устройство возвращает сообщение в ответ на запрос, адресуемый именно ему. Ответы не возвращаются при широковещательном запросе от главного.
Каждому подчиненному устройству присваивается адрес в пределах от 1 до 247. Адрес 0 используется для широковещательной передачи, его распознает каждое устройство. Когда протокол MODBUS используется на более высоком уровне сети, широковещательная передача может не поддерживаться или может быть реализована другими методами. В сетях MODBUS может быть использован один из двух способов передачи: ASCII или RTU Пользователь выбирает необходимый режим вместе с другими параметрами (скорость передачи, режим паритета и т.д.) во время конфигурации каждого контроллера. При использовании ASCII -режима каждый байт сообщения передается как два ASCII символа
(0-9, А-F). Главное преимущество этого способа - время между передачей символов может быть до 1 с без возникновения ошибок при передаче. В режиме RTU используются двоичная 8-битовая кодировка.
Стандартная MODBUS -сеть использует два метода контроля ошибок: проверку на четность (еуепodd) и контрольную сумму. Обе эти проверки генерируются в головном устройстве.
Подчиненное устройство проверяет каждый байт и все сообщение в процессе приема. Пользователь может устанавливать продолжительность интервала тайм-аута, в течение которого головное устройство будет ожидать ответа от подчиненного. Если подчиненный обнаружил ошибку передачи, то он не формирует ответ главному.
Протокол EtherNet/IP
EtherNet/IP означает промышленный протокол Ethernet Это открытый промышленный сетевой стандарт, который использует стандартные микросхемы и физическую среду передачи информации сети Ethernet. Стандарты Ethernet определяют проводные соединения и электрические сигналы на физическом уровне, формат кадров и протоколы управления доступом к среде. Ethernet в основном описывается стандартами IEEE группы 802.3.
В стандарте первых версий (Ethernet 1.0 и Ethernet 2.0) указано, что в качестве передающей среды используется коаксиальный кабель, в дальнейшем появилась возможность использовать витую пару и оптический кабель.
Метод управления доступом - множественный доступ с контролем несущей и обнаружением коллизий (CSMA/CD, Carrier Sense Multiple Access with Collision Detection), скорость передачи данных 10 Мбит/с, размер пакета от 72 до 1526 байт, описаны методы кодирования данных.
Количество узлов в одном разделяемом сегменте сети ограничено предельным значением в 1024 рабочие станции (спецификации физического уровня могут устанавливать более жесткие ограничения, например, к сегменту тонкого коаксиала может подключаться не более 30 рабочих станций, а к сегменту толстого коаксиала - не более 100). Однако сеть, построенная на одном разделяемом сегменте, становится неэффективной задолго до достижения предельного значения количества узлов.
В 1995 году принят стандарт IEEE 802.3u Fast Ethernet со скоростью 100 Мбит/с и появилась возможность работы в режиме полный дуплекс. В 1997 году был принят стандарт IEEE 802.3z Gigabit Ethernet со скоростью 1000 Мбит/с для передачи по оптоволокну и еще через два года для передачи по витой паре.
EtherNet/IP используется для обмена сообщениями ввода-вывода в реальном времени или неявного обмена сообщениями:
• Информационный обмен. Пересылка некритичных ко времени данных - пакет обычно имеет большой размер. Информационный обмен данными является краткосрочными явными связями между инициатором и одним устройством назначения.
• Данные ввода-вывода. Пересылка критичных ко времени данных - обычно меньший размер пакета. Обмен данными ввода-вывода является долгосрочными неявными связями между одним инициатором и любым количеством устройств назначения.
• Взаимоблокировка реального времени. Циклическая синхронизация данных между одним процессором-производителем и любым количеством процессоров-потребителей