Стартовая страница › Форумы › Взаимодействие с устройствами › Вопрос по 2000-ПП
- В этой теме 118 ответов, 9 участников, последнее обновление 3 года, 6 месяцев назад сделано
Mikhail.
-
АвторЗаписи
-
28.01.2021 в 16:00 #18173
manjey73УчастникMikhail вы говорите о пользовательских командах Modbus, реализации которых просто нет в вашем драйвере ?
Имею ввиду расширение Modbus, которое позволяет выкачивать просто массивы байт, типа команды 0х11 и так далее ?Ведь на самом деле это можно легко реализовать я думаю…
28.01.2021 в 16:03 #18174
manjey73Участникsnik думаю считывать файл и дописывать в свой можно при помощи формул, но есть ли смысл делать это так часто ? Хотя если туда же, в RAM диск с периодическим сбросом в обычную папку. Хотя вот вопрос, а нафига это нужно ? 🙂
28.01.2021 в 16:24 #18179snik
УчастникMikhail вы говорите о пользовательских командах Modbus, реализации которых просто нет в вашем драйвере ?
Имею ввиду расширение Modbus, которое позволяет выкачивать просто массивы байт, типа команды 0х11 и так далее ?Ведь на самом деле это можно легко реализовать я думаю…
Я так понимаю это про ШС0.
Я сопоставил на С2000-ПП ШС0 устройства С2000-4 (Адрес 16) с разделом Modbus. С точки зрения Rapid SCADA это такой же шлейф. Он ничем не отличается от ШС1-ШС4. Об отличии знает только С2000-ПП.
Или это про события…
Тогда то же не понятно. Это данные с С2000М благополучно скачиваются. Их можно посмотреть в состоянии Линии связи -> КП.Мне необходимо увидеть кто авторизовался перед снятием и исходя из этого выполнить какие-то действия.
snik думаю считывать файл и дописывать в свой можно при помощи формул, но есть ли смысл делать это так часто ? Хотя если туда же, в RAM диск с периодическим сбросом в обычную папку. Хотя вот вопрос, а нафига это нужно ?
Просто написать парсер текстового файла на перле дело не сложное. А учитывая желание руководства идентифицировать тех кто снимает/ставит на контроль ШС это наиболее простой способ.
28.01.2021 в 18:02 #18181
manjey73УчастникЯ не про Perl я про формулу прямо в канале Scada Системы, которая будет читать файл и выводить текстом кто и что сделал… Но правда в канале всего 8 символов ASCII или 4 символа UTF
29.01.2021 в 09:27 #18183snik
УчастникЯ не про Perl я про формулу прямо в канале Scada Системы, которая будет читать файл и выводить текстом кто и что сделал… Но правда в канале всего 8 символов ASCII или 4 символа UTF
Не получится. Таблица событий не покидает модуль. Она выводится на экран и в файл. Причем файл отображает только 10 последних событий. И каждую секунду перезаписывается. Можно конечно использовать Log-файл КП, но там нужно расшифровывать записи и там много лишних записей типа «Нет непрочитанных записей в журнале событий» и т. д.
29.01.2021 в 18:34 #18201
MikhailМодераторMikhail вы говорите о пользовательских командах Modbus, реализации которых просто нет в вашем драйвере ?
Нет, о том, как организован опрос. Детали не помню и не вижу смысла сейчас в этом копаться. Посмотрите документацию на С2000-ПП, в которой описан протокол обмена.
В SCSDA\ScadaComm\Log\ есть файл kp00_.txt В нем хранится текущее состояние. И оно обновляется каждую секунду. Можно ли сделать так что бы данные в файл дописывались, а не перезаписывались?
Какая конечная цель этого действия?
Можно ли как-то работать с данными о событиях силами самой Rapid SCADA?
Уточните, пожалуйста, вопрос.
Но данные считываются только с ШС1-ШС4, а с ШС0 не хочет. Где стоит поискать?
Возможно, скриншоты настроек и журнал линии связи помогут понять, что происходит.
09.02.2021 в 16:19 #18317
MikhailМодераторНедавно Болид выпустил новую версию С2000-ПП, который поддерживает старый вариант протокола обмена и новый, как заявлено, упрощённый вариант опроса по Modbus. Ссылка на мануал. Я пока не разбирался, но если кому актуально, то было бы интересно сравнить, что принципиально нового сделано в приборе. Может быть его можно опрашивать обычным драйвером Модбас?
Существующий драйвер С2000-ПП экономически убыточно поддерживать, поэтому если бы Болид реализовал полностью стандартный Modbus, или хотя бы Enron Modbus, то все выиграли бы от этого.
18.02.2021 в 16:52 #18385snik
УчастникС2000-ПП, который поддерживает старый вариант протокола обмена и новый, как заявлено, упрощённый вариант опроса по Modbus
Отличия прошивок с сайта BOLIDа:
1. Поддержана возможность запрета управления состоянием зон, разделов, реле
2. Приоритеты состояний зон и разделов приведены в соответствие с приоритетами принятыми в пульте С2000М версии 3.хх и выше
3. Ограничена максимальная скорость опроса по протоколу Modbus в 38400бод/секПо позже попробую свою ППшку перешить.
Существующий драйвер С2000-ПП экономически убыточно поддерживать, поэтому если бы Болид реализовал полностью стандартный Modbus, или хотя бы Enron Modbus, то все выиграли бы от этого.
С2000-ПП это «завлекалочка». Когда клиент наберёт оборудования в BOLIDE с надеждой «малой кровью» сделать нормальный охранно-пожарный комплекс. Помучается со сторонним софтом и если «железа» набрали много то и вынуждены будут Орион брать. Так что «допиливать» до нормального состояния ППшку скорее всего не будут. Не зря был выбран UDP-протокол, который практически никто не поддерживает.
18.02.2021 в 17:04 #18386
manjey73УчастникА при чем тут UDP ?
18.02.2021 в 18:07 #18387
a80808УчастникПоддержка UDP никак не связана с «модностью» или «старостью». Нужен UDP — значит его реализуют.
18.02.2021 в 19:09 #18388
MikhailМодераторС2000-ПП опрашивается по интерфейсу RS-485. Может что-то изменилось с тех пор.
Для Modbus RTU проверка пакетов, которая реализуется протоколом TCP не требуется, т.к. в Modbus RTU свои контрольные суммы, поэтому UDP будет работать быстрее и с меньшими затратами ресурсов железа по сравнению с TCP.Т.к. контроллеры Болид конкурируют в самой дешёвой нише, для них критично удешевить железо насколько это возможно.
18.02.2021 в 19:09 #18389
MikhailМодераторИзменилось ли что-то в новой версии по адресам регистров Модбас и по считыванию событий?
18.02.2021 в 20:12 #18394
a80808УчастникК предыдущему посту — насколько я помню, там появился преобразователь RS-485 — TCP
https://bolid.ru/production/orion/interface-converter/s2000-ethernet.html
19.02.2021 в 08:46 #18395snik
УчастникПрошу прощенья, просто для меня, за последние несколько месяцев, 2 устройства уже слились в одно (это я про С2000-ПП и С2000-Ethernet). И я чисто на автомате написал про UDP.
Для Modbus RTU проверка пакетов, которая реализуется протоколом TCP не требуется, т.к. в Modbus RTU свои контрольные суммы, поэтому UDP будет работать быстрее и с меньшими затратами ресурсов железа по сравнению с TCP.
Не спорю в данном случае UDP быстрее. Правда это достигается повышением требованием к пропускной способности канала. Т. к. не гарантирует доставку пакета, в отличии от TCP. Что не удешевляет проект.
При работе с С2000-ПП через С2000-Ethernet последний ставиться в прозрачный режим, а ПП-шка в пассивный или он же Slave. С2000-Ethernet поддерживает только UDP. Кроме RapidSCADA я не нашел софта который становился бы Master по UDP. Да же просто библиотеки для самостоятельного написания на Perl, C++ поддерживают режим Мастера только по TCP.
19.02.2021 в 09:24 #18397 -
АвторЗаписи
- Для ответа в этой теме необходимо авторизоваться.