Настройка формата CAN/XNET комманд/сообщений

VISA, TCP/IP, USB, CAN, GPIB и подобные протоколы
Ответить
Аватара пользователя
Kosist

Activity Gold
expert
expert
Сообщения: 1236
Зарегистрирован: 21 фев 2011, 23:44
Награды: 2
Версия LabVIEW: 2013-2020
Благодарил (а): 23 раза
Поблагодарили: 30 раз
Контактная информация:

Настройка формата CAN/XNET комманд/сообщений

Сообщение Kosist »

Уважаемые форумчане,

разрешите задать один вопрос.

Есть задача - общаться с устройством при помощи CAN, используя специальные комманды. Есть описание комманд, что-то вроде:
<header> <command> <data (optional)>
где header - состоит из ID микропроцессора (2 байта); номера сервиса (1 байт);
command - номер комманды (2 байта),
data - параметры для комманды, если необходимо (N байт).

Имеется PXI CAN карта, драйвера NI-XNET также установлены. Проверено при помощи тест-панелей, что карта работает, комманды отсылаются, и при помощи осциллоскопа и вольтметра видно, что доска принимает сообщения. Но вот беда - она на них не отвечает, хотя должна автоматически отсылать в ответ принятое сообщение + некоторые параметры.
Есть подозрение, что CAN комманда отсылается не вполне правильно (т.е. при отсылке кастомный формат не соблюдается).
Но вот, собственно, вопрос - как в базе данных для CAN (XNET) сделать настройку отсылки сообщения кастомного формата? Что-то похожее я нашел здесь (http://forums.ni.com/t5/Automotive-and- ... true#M7124), но все равно, не совсем понятно, как это сделать...
Нужно ли вообще настраивать базу данных? Или достаточно сделать код с нужными параметрами?
Может быть, кто-то может подкинуть какое-то общее объяснение, как нужно поступать в таких случаях?
Казалось, что с CAN коммуникацией все будет легко, но не тут-то было...

Заранее спасибо!
Мы делили апельсин - много наших полегло...
bek
interested
interested
Сообщения: 9
Зарегистрирован: 06 янв 2015, 15:46
Версия LabVIEW: 2012
Контактная информация:

Re: Настройка формата CAN/XNET комманд/сообщений

Сообщение bek »

Не совсем понятно, что значит кастомный формат. Can протокол имеет описание и стандартизирован. Если вы имеете в виду менять данные на лету, то это можно делать и не используя базу данных. Обратите внимание на пример Can Frame Output Stream. Для этого в качестве базы данных нужно указать константу :memory:. Для отправки данных используется массив из can фреймов. Каждый фрейм можно индивидуально настроить: расширенный или базовый формат, количество байт в передаваемом сообщении(определяется количеством элементов в массиве) и т.д.
Аватара пользователя
Kosist

Activity Gold
expert
expert
Сообщения: 1236
Зарегистрирован: 21 фев 2011, 23:44
Награды: 2
Версия LabVIEW: 2013-2020
Благодарил (а): 23 раза
Поблагодарили: 30 раз
Контактная информация:

Re: Настройка формата CAN/XNET комманд/сообщений

Сообщение Kosist »

Кажется, разобрался, но еще не до конца... Нужно заставить прибор отвечать на сообщения, а он - молчит... Будем копать...
Мы делили апельсин - много наших полегло...
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Коммуникация с приборами»