Использование протокола CAN для построения промышленных вычислительных сетей
Использование протокола CAN для построения промышленных вычислительных сетей САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ кафедра Электрических станций и автоматизации энергосистем Д О К Л А Д по теме: "Использование протокола CAN для построения вычислительных сетей" Выполнил: студент гр. 4022 Петров В.Г. Руководитель: Терёшкин А.В. САНКТ-ПЕТЕРБУРГ 1999 ОГЛАВЛЕНИЕ 1. Введение 3 2. Основные понятия 3 3. Типы фреймов 6 3.1. Фрейм данных 6 4. Фильтрация сообщения 8 5. Кодирование 8 6. Обработка ошибок 9 6.1. Виды ошибок 9 6.2. Сообщение об ошибках 9 7. Ограничение повреждений 9 8. Погрешность частоты синхрогенератора 10 9. Синхронизация 10 10. Сравнительная характеристика стандартного и расширенного форматов 10 11. Структура CAN-сети 12 12. Литература 14 1. ВВЕДЕНИЕ Современная микроэлектронная элементная база позволяет разрабатывать высо- коинтеллектуальные системы противоаварийного управления электроэнергетическим оборудованием (генераторами, электродвигателями, шинами и т.д.), в которых кроме традиционных функций релейной защиты и противоаварийной автоматики, предусмат- риваются возможности сбора информации о состоянии оборудования и регистрации предаварийных и аварийных процессов, а также для повышения уровня автоматизации процесса производства, передачи и распределения электрической энергии, включение в состав автоматизированной системы управления технологическим процессом (АСУ ТП). При обмене информацией между отдельными устройствами автоматики, а также при связи терминальной (управляющей) микропроцессорной системы с верхнем уров- нем АСУ ТП наиболее остро стоит проблема выполнения физического уровня вычис- лительной сети и реализации протоколов обмена, обладающих следующими свойства- ми: 1. высокая помехозащищённость (для обеспечения устойчивой работы в неблагопри- ятных условиях наличия различного вида помех); 2. высокая скорость передачи (для обеспечения обмена большими объёмами инфор- мации об объекте, синхронизации часов реального времени во всех подсистемах и устройствах АСУ ТП, получения команд с верхнего уровня – диспетчерского пуль- та, согласования работы различных устройств защиты и т.д.); 3. высокая надёжность передачи информации; 4. гибкость конфигурирования (для возможности быстрого и технически просто реа- лизуемого изменения как состава сети, так и связей между отдельными узлами); 5. возможность подключения большого количества узлов; 6. высокая протяжённость линий связи. Controller Area Network (CAN) - протокол последовательной связи, который эф- фективно поддерживает распределение данных и управление ими в реальном времени со сверхвысоким уровнем надежности. Область применения - от высокоскоростных сетей до мультиплексной связи в электронике, машинных блоках управления, датчиках, и т.д., со скоростями передачи данных до 1 Мбод. 2. ОСНОВНЫЕ ПОНЯТИЯ CAN имеет следующие свойства: • система приоритетов сообщений • гибкость конфигурации • групповой прием с временной синхронизацией • обнаружение многократных ошибок • автоматическая ретрансляция ошибочных сообщений • способность различать нерегулярные ошибки от устойчивых сбоев узлов и автоматическое выключение дефектных узлов. Многоуровневая архитектура CAN: Надежность и гибкость CAN была достигнута за счет подразделения на различ- ные уровни: • уровень передачи данных: - подуровень управления логической связью (LLC) - подуровень управления доступом (MAC) • физический уровень. Область действия подуровня управления логической связью: • обеспечивает функции для передачи данных и для удаленного запроса данных, • решает, какие сообщения, из полученных подуровнем управления логической связью, должны быть приняты, • обеспечивает функции для управления, восстановления и сообщения о перегрузке. Область действия подуровня управления доступом - протокол передачи, то есть кадрирование, выполнение арбитража, обнаружение ошибок и сообщение об ошибках. Управление доступом – это решение, является ли шина свободной для начала новой передачи или прием только начинается. В подуровне управления доступом также реа- лизован механизм для различения единичных ошибок от постоянных сбоев. Область действия физического уровня - фактическая передача данных и, следова- тельно, операции, связанные с выбором времени считыванием бита, кодированием би- та, и синхронизацией. Сообщения Информация на шине представлена в виде сообщений различного формата, но ог- раниченной длины. Когда шина свободна, любой узел может начинать передавать со- общение. Узел с наибольшим приоритетом сообщения получает доступ к шине. Адресация сообщений В системах CAN узел не использует информацию относительно конфигурации системы (например, адреса узлов). Это имеет несколько важных следствий. ? Гибкость системы: узлы могут быть добавлены к сети CAN без изменения чего-либо в программном обес- печении или в оборудовании сети. ? Выбор маршрута сообщения: содержание сообщения именовано идентификатором. Идентификатор не указывает на- значение сообщения, но описывает значение данных, так, чтобы все узлы в сети были способны фильтровать сообщения. Скорость передачи информации Скорость CAN может быть различна в различных системах. Однако в отдельно взятой системе скорость передачи данных одинакова и определяется возможностями данной системы. Удаленный запрос данных Посылая фрейм запроса узел, требующий данные, может запрашивать у другого узла соответствующий фрейм данных. Фрейм данных и соответствующий ему фрейм запроса имеют один и тот же идентификатор. Арбитраж Всякий раз, когда шина свободна, любой узел может начинать передавать сооб- щение. Если два или больше узлов начали передавать сообщения одновременно, то конфликт доступа к шине решается поразрядным арбитражем, использующим иденти- фикатор. Механизм арбитража гарантирует, что ни информация, ни время не будут по- теряны. В течение арбитража каждый передатчик сравнивает уровень переданного бита с уровнем, который установлен на шине. Если эти уровни равны, то передача продолжа- ется. Когда передатчиком послан 'рецессивный' уровень, а считан 'доминантный', узел теряет арбитраж и должен прекратить передачу сообщения. Надежность Чтобы достигнуть наибольшей надежности передачи данных, приняты меры для обнаружения ошибок, сообщения о них и самопроверке каждого узла CAN. ? Обнаружение ошибок Для обнаружения ошибок используются: - контроль состояния шины (передатчики сравнивают уровень сигнала, который бу- дет передан, с уровнем, установленным на шине) - использование циклической контрольной суммы - кодирование методом разрядного наполнения (STUFFING)