Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Подключение CanOpen датчика давления к микроконтроллеру
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > Controller Area Network (CAN)
AndruB
Пытаемся подключить CanOpen датчик давления CMP8270 фирмы Trafag к микроконтроллеру 1986ВЕ1Т.
К сожалению - это первый:
1. наш опыт общения с контроллером CAN.
2. наш опыт общения с протоколом CanOpen.
3. наш первое и единственное устройство.

Пока результаты скромные, если не сказать нулевые.
Мы научились отправлять заданную посылку с заданной частотой. (20 кв/с)
Пытаемся обратиться к датчику по протоколу службы LSS - COB-ID 0x7E5
данные - 0x04 0x01 0x0 0x0 0x0 0x0 0x0 0x0
На осциллографе видим что посылка с заданными значениями идет.
датчик молчит как партизан.

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

1. При подаче питания на датчик в диапазоне от 8 до 19В потребление от 10 до 20 мА.
Выходы CAN_L CAN_H устанавливаются на уровне 1В при 8В питания и при добавлении до 19В плавно поднимаются до 2В.
- Нормальное ли это поведение.
2. Должно ли устройство CanOpen выдавать AСK подтверждение при обнаружении посылки.
3. Насколько важно согласование шины при полуметровой длинне и скорости 20 кв/с.
4. Насколько точно должна соблюдаться скорость 20 кв/с. У меня получается ошибка в 10%.


редактор
Цитата
2. Должно ли устройство CanOpen выдавать AСK подтверждение при обнаружении посылки.

да, исключение - если режим прослушки (например для автоопределения скорости обмена)
Цитата
3. Насколько важно согласование шины при полуметровой длинне и скорости 20 кв/с.
работаем на более высоких скоростях и при такой длинне как минимум 1 резистор (120 Ом) в линии.
Цитата
Насколько точно должна соблюдаться скорость 20 кв/с. У меня получается ошибка в 10%.

10% очень много (от внутреннего источника тактируетесь?). посмотрите BOSH CAN UG, там есть расчет допустимого отклонения скорости. На 250-500 кбит/сек у меня получалось от 0,7-1,5%
С CANOpen не работал (читал некоторые статьи), вроде как датчик перед установкой должен быть сконфигурирован - типа скорость и адрес.Но это лучше в мануале на датчик посмотреть, могу и ошибаться.
на 1986ВЕ91 проблем с CAN не было (использовался внешний кварц).
syoma
Было бы неплохо, если бы у вас был хоть какой-то реально работающий USB адаптер для CANopen или на худой конец CANopen Мастер. В общем что, то что гарантированно умеет этот протокол и соблюдает скоростные и битовые параметры. Хотя бы одолжите у кого-нибудь на время.
Например USB/CAN адаптер IXXAT, VEctor или PEAK. Тогда с помощью бесплатного софта вы хотя бы сможете попытаться "поговорить" с датчиком и посмотреть, что он будет отвечать. Уже будет проще. Или ПЛК с CANopen мастером - он будет тоже лучше, чем ничего.

Без этого попробуйте добиться того, чтобы датчик начал что-то посылать на шину - по спецификации он должен слать Heartbeаt автоматически. Но при автоопределении скорости может и ничего не слать.

Цитата
1. При подаче питания на датчик в диапазоне от 8 до 19В потребление от 10 до 20 мА.
Выходы CAN_L CAN_H устанавливаются на уровне 1В при 8В питания и при добавлении до 19В плавно поднимаются до 2В.
- Нормальное ли это поведение

Да
Цитата
2. Должно ли устройство CanOpen выдавать AСK подтверждение при обнаружении посылки.

Да, но вы это вряд-ли увидите.
Цитата
3. Насколько важно согласование шины при полуметровой длинне и скорости 20 кв/с.

Вам надо просто поставить два 120 Омных резистора между CAN-H и CAN-L
Цитата
4. Насколько точно должна соблюдаться скорость 20 кв/с. У меня получается ошибка в 10%.

Это очень много - надо намного точнее. А лучше возьмите адаптер сперва.
AndruB
Спасибо за ответы. К сожалению меня перекинули на другую работу и к датчику я вернусь несколько позже, выполню Ваши рекомендации и отпишусь.
AndruB
Вернулись к проекту.
Датчик ответил AСKом !!!
Проблема была в неправильно установленной частоте обмена (заплутали в коэффициентах).
Сейчас осваиваем SDO что бы установить нужный нам темп обмена и тип данных передаваемых в PDO .
Спасибо за советы и поддержку.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.