Страница 1 из 2

Функция 08 в Modbus library

Добавлено: 22 мар 2017, 20:30
AlexOskar
Здравствуйте!
Есть прибор и VI, которые постоянно "общаются". Для создания использовал Modbus Library, но оказалось что каждые 2 часа надо отправлять сообщение с кодом функции 08. На стандартной панели её нет, но хочется верить, что она где-то спрятана. Кто-нибудь знает есть она там или нет? Или может есть библиотека, где эту функцию включили?

Re: Функция 08 в Modbus library

Добавлено: 22 мар 2017, 20:34
Borjomy_1
AlexOskar, Если у вас библиотека с открытым исходным кодом, то вы спокойно можете скопировать оттуда код и заменить код функции. Это будет проще.

Re: Функция 08 в Modbus library

Добавлено: 22 мар 2017, 21:28
AlexOskar
Запоролена она, к сожалению

Re: Функция 08 в Modbus library

Добавлено: 23 мар 2017, 09:19
Borjomy_1
Ясно, имеет смысл поискать другую библиотеку, не на объектах. Называется NI ModBus v1.2.1 Написана еще для версии :labview: 8.6 и ниже. Она полностью открытая, кроссплатформенная, на порядок проще и к тому-же не вешает потоки :labview: напрочь при отсутствии соединения.

Re: Функция 08 в Modbus library

Добавлено: 23 мар 2017, 10:21
Blackman
AlexOscar, какие сабфункции диагностики (функция 08) Вам нужны?

Re: Функция 08 в Modbus library

Добавлено: 23 мар 2017, 17:31
dadreamer
AlexOskar писал(а):Запоролена она, к сожалению
Неужто в 2017-м вы не знаете, как снять пароль? :brows: Вбейте в гугл "labview hmilch" и будет вам щастье. :wink:

Re: Функция 08 в Modbus library

Добавлено: 23 мар 2017, 17:33
AlexOskar
Re: Функция 08 в Modbus library
Непрочитанное сообщение Borjomy_1 Сегодня, 09:19
Ясно, имеет смысл поискать другую библиотеку, не на объектах. Называется NI ModBus v1.2.1 Написана еще для версии :labview: 8.6 и ниже.
Уже пробую, только сложновато с этой архитектурой или иерархией
Re: Функция 08 в Modbus library
Непрочитанное сообщение Blackman Сегодня, 10:21
AlexOscar, какие сабфункции диагностики (функция 08) Вам нужны?
Нужно отправить сообщение: 0108 0001 0000 В1СВ

Re: Функция 08 в Modbus library

Добавлено: 23 мар 2017, 17:38
AlexOskar
dadreamer писал(а):
AlexOskar писал(а):Запоролена она, к сожалению
Неужто в 2017-м вы не знаете, как снять пароль? :brows: Вбейте в гугл "labview hmilch" и будет вам щастье. :wink:
Яндексом пользуюсь, наверное поэтому и отстал от времени)) сейчас исправлюсь, спасибо!

Re: Функция 08 в Modbus library

Добавлено: 23 мар 2017, 19:11
Blackman
AlexOscar, Вы уверенны что это Вам надо? Смотри описание функции на картинке...

Re: Функция 08 в Modbus library

Добавлено: 23 мар 2017, 21:48
AlexOskar
Да да, именно это и надо. Не знаю в чем прикол, но протокол обмена с оборудованием требует реинициализацию связи каждые 8 часов, иначе - дисконект. Откуда у Вас такие картинки??? Поделитесь

Re: Функция 08 в Modbus library

Добавлено: 24 мар 2017, 09:24
Blackman
Тогда рекомендую сертифицированный драйвер Plasmionique Modbus Master V1.2.1 доступный через VIPM или можно скачать с LAVA по ссылке
https://lavag.org/files/file/286-plasmi ... us-master/.
Этой функции там нет, но так как код открытый, сделан очень качественно и хорошо документирован, то добавить функции диагностики будет не сложно.

Re: Функция 08 в Modbus library

Добавлено: 28 мар 2017, 22:56
AlexOskar
Установил себе Plasmionique Modbus Master V1.2.1. Начал добавлять функцию, но столкнулся с большой (для меня) проблемой.
Для добавления функции решил просто скопировать содержимое блоков и подблоков к себе на блок-диаграмму. Открываю первый блок и вижу: из входного терминала 1 в блок 2 идет тонкая линия
1.jpg
Открываю блок 2 и вижу, что от входного терминала 3 идет уже толстая линия
2.jpg
Когда копирую содержимое этого терминала к себе на блок-диаграмму, то терминал и линии становятся тонкими
3.jpg
В чем причина таких изменений и как это можно исправить? Или содержимое готовых библиотек вообще так нельзя копировать?

Re: Функция 08 в Modbus library

Добавлено: 28 мар 2017, 23:16
Borjomy_1
Про наследование что-нибудь слышали и про видимость классов?
Последний раз рекомендую NI ModBus v1.2.1 . с ней давно уже сделали-бы...

Re: Функция 08 в Modbus library

Добавлено: 29 мар 2017, 07:16
AlexOskar
Последний раз рекомендую NI ModBus v1.2.1 . с ней давно уже сделали-бы...
Я с ней уже сделал, но мне не очень нравится результат - она теряет данные. Периодически в каком-нибудь поле проскакивают нули, хотя их там 100% не должно быть.
Про наследование что-нибудь слышали и про видимость классов?
Сейчас начну изучать

Re: Функция 08 в Modbus library

Добавлено: 29 мар 2017, 07:55
Blackman
За основу лучше взять любой :vi: чтения регистров и сохранить его в этой же библиотеке с новым именем например: Diag_Restart Communications Option.vi.
В этом :vi: необходимо изменить (сохранить с новым именем в тех же библиотеках) первый и третий :vi: . Отредактировать эти 2 новых :vi: в соответствии с требованиями протокола Modbus для функции 08 саб функции 0001. После этого проверить результат на железе.