"Стандартный" протокол для коммуникации с прибором

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

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

"Стандартный" протокол для коммуникации с прибором

Сообщение Kosist »

Коллеги, у меня есть такой вопрос.
Для измерительных приборов широко используется SCPI протокол как стандарт.
А есть ли какой-то "стандартный" протокол для комуникации в случае если нужно не только посылать комманды, но и посылать сообщения?
Что я имею ввиду - коллега будет делать "кастомную" доску для CAN коммуникации (доска будет просто служить как роутер для CAN сообщений), для измерения тока и напряжения, плюс контроль реле.
Физический интерфейс для коммуникации - ethernet, программный TCP/IP.
Хотелось бы не изобретать велосипед, и использовать правила уже существующего протокола - терминирующие символы, чек суммы, и т.д. Тогда я и коллега могли бы работать параллельно, имплементируя протокол каждый на своей стороне - я в :labview: , коллега в прошивке для доски.
Перед этим мы использовали кастомный протокол - но проблема в том, что не всегда удается все продумать сразу, и потом приходиться менять правила во время игры...
Есть ли у кого-то опыт использования такого стандартного протокола? Если да, то какой протокол использовали? Или все равно лучше городить что-то свое?
Заранее спасибо за любые советы)
Мы делили апельсин - много наших полегло...
Аватара пользователя
ladik

Silver
developer
developer
Сообщения: 275
Зарегистрирован: 18 ноя 2014, 11:45
Награды: 1
Версия LabVIEW: 2015, 2019
Откуда: Екатеринбург
Благодарил (а): 4 раза
Поблагодарили: 3 раза
Контактная информация:

Re: "Стандартный" протокол для коммуникации с прибором

Сообщение ladik »

Как один из вариантов, посмотреть в сторону NMEA. Довольно просто реализовать и использовать.
Дорогу осилит идущий.
Аватара пользователя
Kosist

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

Re: "Стандартный" протокол для коммуникации с прибором

Сообщение Kosist »

ladik писал(а): 17 мар 2021, 13:48 Как один из вариантов, посмотреть в сторону NMEA. Довольно просто реализовать и использовать.
Спасибо! Я посмотрел, он широко используется в навигации - а мое приложение немного другое... Вы использовали его тоже для других целей, и просто брали за основу его формат сообщений?
Мы делили апельсин - много наших полегло...
ujin1
adviser
adviser
Сообщения: 231
Зарегистрирован: 06 ноя 2020, 15:37
Версия LabVIEW: 19
Благодарил (а): 18 раз
Поблагодарили: 37 раз
Контактная информация:

Re: "Стандартный" протокол для коммуникации с прибором

Сообщение ujin1 »

Kosist писал(а): 17 мар 2021, 13:26 "кастомную" доску для CAN коммуникации
Физический интерфейс для коммуникации - ethernet, программный TCP/IP.
С такими входными параметрами Вашего запроса подходят десятки вариантов.
Самый близкий EtherCAT (CANopen под TCP/UDP). Самый универсальный OPC UA.
Я применяю MODBUS TCP, OPC UA. Так же пробовал кастомный JSON TCP - обмен в формате JSON.
Сейчас конфигурация такая: Модули ввода вывода с MODBUS TCP, Контроллер (Аналог Вашей кастомной доски) OPC UA.
Компьютер с Labview в качестве скады.
Аналоговые переменные и т.д. теги в виде массива значений.
Управляющие каналы в виде текстовой строки OPC UA формата JSON.
Общий управляющий канал типа очередь 100 значений в формате строки JSON.
Работает уже больше 2х месяцев 24 часа в сутки.
Контроллер на NI LinuxRT. В нем OPC UA уже реализован.
Основная проблема сделать реализацию OPC UA на С/С++ в кастомной доске. Но далее этот вариант будет работать долго и практически везде.
Изображение
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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