CANOPEN драйвер

Илья!
Сообщения: 114
Зарегистрирован: 09 ноя 2018, 16:55

Re: CANOPEN драйвер

Сообщение Илья! » 02 дек 2021, 14:14

да, в кудэдите как у вас.

наоборот, при подключении по КЭН2 комм. параметр сохраняется, а при подключении по КЭН1 - нет. А общие пользовательские параметры сохраняются и по КЭН1 и по КЭН2

Аватара пользователя
Лашкевич Максим
Сообщения: 342
Зарегистрирован: 30 дек 2015, 10:38

Re: CANOPEN драйвер

Сообщение Лашкевич Максим » 02 дек 2021, 14:17

Илья! писал(а):
02 дек 2021, 11:36
1. к Юникону подключены оба узла.
2. изменил коммуникационный параметр в Кэн узла2.
3. сохранил параметры.
4. выкл питание, вкл питание
5. подключился в Юниконе к узлу2
6. редактируемый параметр не сохранил своего значения.
судя по этому описанию по CAN2 не сохраняется. Я запутался. Вы можете выложить проект, демонстрирующий проблему? Чтобы мы прошили и проверили и разобрались. Или проверьте как это работает на исходином motorcontroldemo, у которого только
#define CO1_SPI_START_ADDR 0
#define CO2_SPI_START_ADDR 3500
задано, и напишите последовательность действий, как воспроизвести проблему, какие конкретно параметры меняете и что получается.
С уважением,
Лашкевич Максим.
skype: maxlashk
Инженер-программист ООО "НПФ Вектор", Москва.

Илья!
Сообщения: 114
Зарегистрирован: 09 ноя 2018, 16:55

Re: CANOPEN драйвер

Сообщение Илья! » 02 дек 2021, 14:19

узел1 - это КЭН2
узел2 - это КЭН1

извините, не уточнил ранее

Илья!
Сообщения: 114
Зарегистрирован: 09 ноя 2018, 16:55

Re: CANOPEN драйвер

Сообщение Илья! » 02 дек 2021, 14:48

ну давайте отложим данный вопрос, раз вы запутались ))
просто у меня какая была мысль. TPDO формирует узел1 (КЭН2), в котором комм. параметры сохраняются правильно. А в узле2 (КЭН1) я настраиваю RPDO. И поскольку комм. параметры узла2 (КЭН1) не сохраняются, я подумал, что может быть это является причиной того, что я не вижу приема посылки.
Последний раз редактировалось Илья! 02 дек 2021, 15:08, всего редактировалось 1 раз.

Илья!
Сообщения: 114
Зарегистрирован: 09 ноя 2018, 16:55

Re: CANOPEN драйвер

Сообщение Илья! » 02 дек 2021, 14:54

при работе с Canwise пока по одному каналу (канал 0) я вижу следующую картину
2021-12-02_145218.jpg
2021-12-02_145218.jpg (139.12 КБ) 5458 просмотров
отправленные данные соответствуют настройке TPDO. но приема нет
TPDO формирует Узел1, а принимать должен Узел2

Аватара пользователя
Disona
Сообщения: 92
Зарегистрирован: 28 ноя 2015, 22:03
Откуда: Москва

Re: CANOPEN драйвер

Сообщение Disona » 02 дек 2021, 15:32

Илья! писал(а):
02 дек 2021, 09:43
Доброе утро.
Обнаружился еще один баг. Давайте с ним разберемся, прежде чем с самими посылками.
Конфигурация железа тажа: плата с двумя Кэнами, которые объединены линиями CANH/CANL. На Кэн2 подключен Юникон через марафон.
Node_ID у Кэнов разные. Юникон при включении видит оба узла и подключается к обоим как по отдельности так и совместно.
Проблема в следующем: не сохраняются ( или не восстанавливаются) в энергонезависимой памяти коммуникационные параметры Кэн1. Коммуникационные параметры Кэн2 сохраняются. Пользовательские параметры сохраняются. Это во-перавых.
А во-вторых, при переключении между узлами начинает моргать кнопочка "обновить словарь". Предполагаю, что это может быть по причине первой проблемы.
Добрый день.
Мы попробовали воспроизвести проблему на последнем коммите из BitBucket.

Поменяли там только адрес сохранения параметров второго кэна в "co_ODvars.h":

Код: Выделить всё

//! Начальный адрес для сохранения в SPI памяти словаря 1-го CAN
#define CO1_SPI_START_ADDR 0
//! Начальный адрес для сохранения в SPI памяти словаря 2-го CAN
#define CO2_SPI_START_ADDR 3500
Дальше подключили оба кэна в одну сеть.
Для CAN1 поставили номер узла "2". Для CAN2 поставили номер узла "1".

На узле 1 ввели в "RPDO2-1 Mapping" значение "0x51000300". Сохранили параметры.
На узле 2 ввели в "RPDO1-1 Mapping" значение "0x51000300". Сохранили параметры.
Перезагрузили контроллер - параметры восстановились корректно.

Попробовали и на 1 и на 2 узле задавать "RPDO1-1 Mapping" - тоже сохраняется корректно.
Попробовали поменять что-то только на одном узле и сохранить только на одном - тоже сохраняется.

Вроде всё работает корректно.
Мы правильно воспроизводим проблему?
С уважением,
Дмитрий Шпак
Telegram: +79773608997
shpak@motorcontrol.ru
Инженер-программист ООО "НПФ Вектор", Москва.

Илья!
Сообщения: 114
Зарегистрирован: 09 ноя 2018, 16:55

Re: CANOPEN драйвер

Сообщение Илья! » 02 дек 2021, 15:43

да, правильно.
но, вроде, я тоже использую последний коммит. но параметры но у меня работает по другому

Аватара пользователя
Лашкевич Максим
Сообщения: 342
Зарегистрирован: 30 дек 2015, 10:38

Re: CANOPEN драйвер

Сообщение Лашкевич Максим » 02 дек 2021, 15:45

Ну попробуйте ещё раз по нашим шагам воспроизвести, возьмите чистый последний motorcontroldemo и проделайте.
С уважением,
Лашкевич Максим.
skype: maxlashk
Инженер-программист ООО "НПФ Вектор", Москва.

Аватара пользователя
Лашкевич Максим
Сообщения: 342
Зарегистрирован: 30 дек 2015, 10:38

Re: CANOPEN драйвер

Сообщение Лашкевич Максим » 02 дек 2021, 16:01

Для PDO тоже на чистом motorcontroldemo напишите, что в какие объекты прописываете, покажите CANwise для этих настроек и мы попробуем повторить.
С уважением,
Лашкевич Максим.
skype: maxlashk
Инженер-программист ООО "НПФ Вектор", Москва.

Илья!
Сообщения: 114
Зарегистрирован: 09 ноя 2018, 16:55

Re: CANOPEN драйвер

Сообщение Илья! » 09 дек 2021, 12:32

здравствуйте.
Заработало. Редактируется, сохраняется, посылается, принимается.
Имею следующие настройки
2021-12-09_122546.jpg
2021-12-09_122546.jpg (55.66 КБ) 5375 просмотров
на осциллографе наблюдаю посылки PDO c периодом 2мс. Согласно настройкам период должен составлять 1мс. Настройки Event Timer1= 2 и более соответствуют действительности. Длительность самой посылки на скорости 250кб составляет 0,5мс. Увеличение скорости передачи вопрос не решает. Подскажите пожалуйста, с чем может быть связано ограничение?
Благодраю.

Ответить