Jump to content

    
Sign in to follow this  
Bloom

CANopen IXXAT stack

Recommended Posts

День добрый!

Я новичок в 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

Share this post


Link to post
Share on other sites

Крутая у Вас контора, раз может позволить себе 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

Share this post


Link to post
Share on other sites
Крутая у Вас контора, раз может позволить себе 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, думаю мои скромные запросы он удовлетворит.

 

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

 

Share this post


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

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

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

Share this post


Link to post
Share on other sites
Чего-то я не помню, чтобы там было ограничение на запуски.

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

 

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

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

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

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

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

 

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites
Между прочим мне удалось портировать CANopennode на Chibios/STM32F072

 

CanFestival на STM32F103

 

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

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

 

 

 

 

Share this post


Link to post
Share on other sites
Кому это интересно если нет ссылок на GITHUB.

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

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

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this