Перейти к содержанию
    

CANopen IXXAT stack

День добрый!

Я новичок в CAN-делах, и от обилия информации голова идет кругом. Разрешите задать глупых вопросов.

Моя задача реализовать простой Slave на STM32F072. Контора прикупила

IXXAT CANopen стек для F103. CAN контроллер похож (bxCAN), хотя прерывания немного отличаются (одно прерывание на прием и отправку).

Проблема еще в том что у меня RTOS (Chibios), а IXXAT стек interrupt-driven. Впрочем, добавив ожидание в основную state-machine демо приложения мне удалось "запустить" CANopen в отдельной задаче. Прерывания на прием и передачу происходят, проблема в том что я не знаю чем проверить работоспособность моего приложения. Пробовал CANopen for .NET, но связи нет, диагностики нет чтобы выяснить что не так. Можете посоветовать какой-нибудь софт с мониторингом на шине и разбором сообщений CANopen чтобы я мог верифицировать свое приложение? Еще вопрос, чем лучше редактировать EDS-файлы?

P.S. USB-CAN адаптер - PCAN http://www.peak-system.com/PCAN-USB.199.0.html?L=1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Крутая у Вас контора, раз может позволить себе CANopen стеки покупать.

А CANopen анализатор они не смогли купить? Например с тем же PCANовским адаптером? http://www.peak-system.com/CANopen-Magic.258.0.html?&L=1

 

В принципе если стек работает, он должен при запуске сразу начать генерить heartbit сообщения на CAN шину. Это первый признак, что там что-то запустилось. Если хеартбит генерится, то первое, что можно попробовать - это подавать ему команды NMT и посмотреть будет ли стек переходить в разные состояния - preoperational, stopped, operational и т.д. Далее надо попытаться приконнектится к устройству через SDO и прочитать внутренний словарь - это функция самого стека, и она не зависит

 

Для всего этого из условно-бесплатного я всем советую http://canwizard.de/en/demoversion-download

Эта демоверсия, хоть и предназначена для лифтового профиля, но весьма неплохо работает как обыкновенный SDO клиент и может читать CANopen соообщения и генерить NMT комманды. С PEAKом работает. Установите, запускаете, если heratbit на шине есть - она сразу покажет в статусе номер устройства и его состояние. Просите просканировать CAN-шину - она должна найти ваше устройство и попытаться прочитать его словарь по eds файлу, который вы ей скормите.

 

А, еще нужен EDS файл. С CANopen стеком генератора EDS файлов не было? Если нет, то придется делать вручную. Тогда рекомендую бесплатный CANeds http://canopen-solutions.com/canopen_caneds_en.html

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Крутая у Вас контора, раз может позволить себе CANopen стеки покупать.

Контора и крутая и богатая, но из-за размера неповоротливая и правая рука не знает, что делает левая...

А CANopen анализатор они не смогли купить? Например с тем же PCANовским адаптером? http://www.peak-system.com/CANopen-Magic.258.0.html?&L=1

Нельзя так просто взять и купить CANopen analyzer... Купить то можно все, проблема в том что нужно начинать бюрократический процесс закупок с согласованиями и объяснениями зачем оно надо... И время это займет, но видимо, придется через это пройти.

 

В принципе если стек работает, он должен при запуске сразу начать генерить heartbit сообщения на CAN шину. Это первый признак, что там что-то запустилось. Если хеартбит генерится, то первое, что можно попробовать - это подавать ему команды NMT и посмотреть будет ли стек переходить в разные состояния - preoperational, stopped, operational и т.д. Далее надо попытаться приконнектится к устройству через SDO и прочитать внутренний словарь - это функция самого стека, и она не зависит

Спасибо за совет, думаю это я смогу проверить даже сейчас!

 

Для всего этого из условно-бесплатного я всем советую http://canwizard.de/en/demoversion-download

Эта демоверсия, хоть и предназначена для лифтового профиля, но весьма неплохо работает как обыкновенный SDO клиент и может читать CANopen соообщения и генерить NMT комманды. С PEAKом работает. Установите, запускаете, если heratbit на шине есть - она сразу покажет в статусе номер устройства и его состояние. Просите просканировать CAN-шину - она должна найти ваше устройство и попытаться прочитать его словарь по eds файлу, который вы ей скормите.

Да, уже пытался использовать, но ограничение в 18 запусков немного напрягает :) Чувствую себя Золушкой в без-пяти 12 ) нужен нормальный инструмент, и я буду его пробивать.

А, еще нужен EDS файл. С CANopen стеком генератора EDS файлов не было? Если нет, то придется делать вручную. Тогда рекомендую бесплатный CANeds http://canopen-solutions.com/canopen_caneds_en.html

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

 

Благодарю за помощь!

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да, уже пытался использовать, но ограничение в 18 запусков немного напрягает sm.gif Чувствую себя Золушкой в без-пяти 12 ) нужен нормальный инструмент, и я буду его пробивать.

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

А насчет нормального инструмента - у меня есть IXXATовский CANopen анализатор. Так указанная тулза намного удобнее, чем он.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Чего-то я не помню, чтобы там было ограничение на запуски.

Без регистрации 18 запусков. Но как зарегистрировался, то можно запускать бесконечное число раз.

 

А насчет нормального инструмента - у меня есть IXXATовский CANopen анализатор. Так указанная тулза намного удобнее, чем он.

Попросил у начальства CANopen Magic от конторы близкой к Peak System. Пока пользуюсь лифтовой программой, действительно она хорошая!

Между прочим мне удалось портировать CANopennode на Chibios/STM32F072, причем работает даже через родной HAL.

По крайней мере есть Heartbeat, NMT команды выполняются и нода сканируется. Даже пишет туда :)

IXXAT же что-то не взлетел...

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я портировал CanFestival на STM32F103. Как по мне он более функционален, чем CanOpenNode.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

IXXAT выпускает конвертеры USB-to-CAN, с ними в комплекте идёт ПО для прослушивания шины и либы для прикручивания этой прослушки к своему ПО. Не помню только в каком формате

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Между прочим мне удалось портировать CANopennode на Chibios/STM32F072

 

CanFestival на STM32F103

 

Кому это интересно если нет ссылок на GITHUB.

Или вы уже сделали PR и все изменения в мастере?

 

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Кому это интересно если нет ссылок на GITHUB.

Или вы уже сделали PR и все изменения в мастере?

Я в свое время закинул все в майл рассылку. И вроде как в последних версиях уже есть дрова под STM32FX - значит внесли в мастер.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

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

×
×
  • Создать...