Главная Форум Vin декодер Ссылки
Вернуться   Форум Saab Club`а > Гараж > Курилка
Справка Пользователи Календарь Поиск Сообщения за день Все разделы прочитаны

Курилка Темы, выходящие за рамки других форумов. Свободное общение.

 
 
Опции темы Опции просмотра
Prev Предыдущее сообщение   Следующее сообщение Next
Старый 30.10.2010, 21:29   #12
VadPC
Пилот
 
Аватар для VadPC
 
Регистрация: 13.05.2009
Адрес: Наро-Фоминск 50ру
Сообщений: 1,941
По умолчанию

Что такое CAN шина?
CAN модуль, CAN шина, CAN интерфейс, CAN - все это названия стандарта промышленной сети, ориентированного прежде всего на объединения в единую сеть различных устройств и датчиков.

Если говорить простым языком, применительно непосредственно к автомобилю, то CAN - это устройство которое дает возможность объединить и использовать максимально большое количество функций и свойств различных электронных устройств. В зависимости от электронной системы в автомобиле может быть реализованно определенное количество функций. К примеру, заводской электронной системой, установленной в автомобиль при его производстве предусмотрено только несколько функций: подъем стекол и электронная регулировка сидений, а такой возможности как электронная функция управления багажником (открытие/закрытие) нет. Для того, чтобы реализовать эту функцию (открытие/закрытие багажника) требуется более разветвленная система. И в этом случае приходит на помощь CAN шина, которая позволяет реализовать на данном автомобиле данную функцию и многие другие. CAN служит для более быстрого и большего объема передаваемой информации между различными устройствами (контроллерами).

CAN - от английского Controller Area Network, что переводится как Сеть Контроллеров. CAN стандарт разработан компанией Robert Bosch GmbH 1980-х и в настоящее время широко распространён в промышленной автоматизации, технологиях «умного дома», автомобильной промышленности и многих других областях.



Далее приведена более подробная техническая информация описания стандарта CAN.

Описание стандарта
Непосредственно стандарт CAN от Bosch определяет передачу в отрыве от физического уровня — он может быть каким угодно, например, радиоканалом или оптоволокном. Но на практике под CAN-сетью обычно подразумевается сеть топологии «шина» с физическим уровнем в виде дифференциальной пары, определённым в стандарте ISO 11898. Передача ведётся кадрами, которые принимаются всеми узлами сети.

Общие сведения
Синхронная шина, с типом доступа Collision Resolution (CR), который в отличие от Collision Detect (CD) сетей (Ethernet — это CD) детерминировано (приоритетно) обеспечивает доступ на передачу сообщения, что особо ценно для промышленных сетей управления (fieldbus). Передача ведётся кадрами. Полезная информация в кадре состоит из идентификатора длиной 11 бит (стандартный формат) или 29 бит (расширенный формат, надмножество предыдущего) и поля данных длиной от 0 до 8 байт. Идентификатор говорит о содержимом пакета и служит для определения приоритета при попытке одновременной передачи несколькими сетевыми узлами.

Рецессивные и доминантные биты
Для абстрагирования от среды передачи спецификация CAN избегает описывать двоичные значения как «0» и «1». Вместо этого применяются термины «рецессивный» и «доминантный», при этом подразумевается, что при передаче одним узлом сети рецессивного бита, а другим доминантного, принят будет доминантный бит. Например, при реализации физического уровня на радиоканале отсутствие сигнала означает рецессивный бит, а наличие — доминантный; тогда как в типичной реализации проводной сети рецессив бывает при наличии сигнала, а доминант, соответственно, при отсутствии. Стандарт сети требует от «физического уровня», фактически, единственного условия: чтобы доминантный бит мог подавить рецессивный, но не наоборот. Например, в оптическом волокне доминантному биту должен соответствовать «свет», а рецессивному — «темнота». В электрическом проводе может быть так: рецессивное состояние — высокое напряжение на линии (от источника с большим внутренним сопротивлением), доминантное — низкое напряжение (все узлы сети «подтягивают» линию на землю). Если линия находится в рецессивном состоянии, перевести её в доминантное может любой узел сети (включив свет в оптоволокне или закоротив высокое напряжение). Наоборот — нельзя (включить темноту нельзя).

Виды кадров

Кадр данных (data frame) — передаёт данные;
Кадр запроса передачи (remote frame) — служит для запроса на передачу кадра данных с тем же идентификатором;
Кадр перегрузки (overload frame) — обеспечивает промежуток между кадрами данных или запроса;
Кадр ошибки (error frame) — передаётся узлом, обнаружившим в сети ошибку.

Кадры данных и запроса отделяются от предыдущих кадров межкадровым промежутком.

Формат кадра запроса
Совпадает с кадрами данных стандартного или расширенного формата за двумя исключениями:

В поле RTR рецессив вместо доминанты.
Отсутствует поле данных.

Арбитраж доступа
При свободной шине любой узел может начинать передачу в любой момент. В случае одновременной передачи кадров двумя и более узлами проходит арбитраж доступа: передавая адрес источника, узел одновременно проверяет состояние шины. Если при передаче "0" бита принимается "1" — считается, что другой узел передаёт сообщение с большим приоритетом и передача откладывается до освобождения шины. Таким образом, в отличие, например, от Ethernet в CAN не происходит непроизводительной потери пропускной способности канала при коллизиях. Цена этого решения — вероятность того, что сообщения с низким приоритетом никогда не будут переданы.

Контроль ошибок
CAN имеет несколько механизмов контроля и предотвращения ошибок:

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

Разработчики оценивают вероятность невыявления ошибки передачи как 4,7×10-11.

Скорость передачи и длина сети

Диапазон скоростей
Все узлы в сети должны работать с одной скоростью. Стандарт CAN не определяет скоростей работы, но большинство как отдельных, так и встроенных в микроконтроллеры адаптеров позволяют плавно менять скорость в диапазоне по крайней мере от 20 килобит в секунду до 1 мегабита в секунду. Существуют решения, выходящие далеко за рамки данного диапазона.

Предельная длина сети
Приведённые выше методы контроля ошибок требуют, чтобы изменение бита при передаче успело распространиться по всей сети к моменту замера значения. Это ставит максимальную длину сети в обратную зависимость от скорости передачи: чем больше скорость, тем меньше длина. Например, для сети стандарта ISO 11898 предельные длины составляют приблизительно:

1 Мбит/с 40 м
500 Кбит/с 100 м
125 Кбит/с 500 м
10 Кбит/с 5000 м

Протоколы высокого уровня

Базовой спецификации CAN недостаёт многих возможностей, требуемых в реальных системах: передачи данных длиннее 8 байт, автоматического распределения идентификаторов между узлами, единообразного управления устройствами различных типов и производителей. Поэтому вскоре после появления CAN на рынке начали разрабатываться протоколы высокого уровня для него. В число распространённых на данный момент протоколов входят:

CANopen
DeviceNet
CAN Kingdom
J1939
SDS

Преимущества

Возможность работы в режиме жёсткого реального времени.
Простота реализации и минимальные затраты на использование.
Высокая устойчивость к помехам.
Арбитраж доступа к сети без потерь пропускной способности.
Надёжный контроль ошибок передачи и приёма.
Широкий диапазон скоростей работы.
Большое распространение технологии, наличие широкого ассортимента продуктов от различных поставщиков.

Недостатки

Максимальная длина сети обратно пропорциональна скорости передачи.
Большой размер служебных данных в пакете (по отношению к полезным данным).
Отсутствие единого общепринятого стандарта на протокол высокого уровня, однако же, это и достоинство. Стандарт сети предоставляет широкие возможности для практически безошибочной передачи данных между узлами, оставляя разработчику возможность вложить в этот стандарт всё, что туда сможет поместиться. В этом отношении CAN подобен простому электрическому проводу. Туда можно «затолкать» любой поток информации, который сможет выдержать пропускная способность шины. Известны примеры передачи звука и изображения по шине CAN (Россия). Известен случай создания системы аварийной связи вдоль автодороги длиной несколько десятков километров (Германия). (В первом случае нужна была большая скорость передачи и небольшая длина линии, во втором случае — наоборот). Изготовители, как правило, не афишируют, как именно они используют полезные байты в пакете.

(спер) http://www.equs.ru/chto_takoe_can_shina
__________________
Лечу блоки ЦЗ заклинаниями, снимаю порчу с герконовых реле.
Заговариваю штатные ИММО, привораживаю автозапуск. Отвязываю VSS
Tech2, прошивка Saab и не только.
Дорого Выезд....ПО МО и МСК.. ночью дороже. :saab:
VadPC вне форума   Ответить с цитированием
 

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Вкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Цены на новый 9.5 (Англия) usr Новости 9 19.04.2010 23:22


Часовой пояс GMT +3, время: 07:53.


Работает на vBulletin® версия 3.8.11.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot
"created by ska_69 © 2008" "powered by RoM@n © 2021