|
Добрый день, 5 лет 3 месяца назад Роман 13С учётом того что сообщения о состоянии зон я получаю - разобрался, это опечатка в моем сообщении, должно быть 40008 - 9-я строка (зона Modbus). Спасибо за замечание.
– Роман 5 лет 3 месяца назад Может быть стоит выложить конфиги в облако, а ссылку сюда?
– Тремасов Константин Александрович 5 лет 3 месяца назад Иногда бывает что надо отправить команду на взятие не 01 06 9С 98 00 18 CRC (24), а 01 06 9С 98 18 00 CRC (6144).
– Тремасов Константин Александрович 5 лет 3 месяца назад Спасибо, попробую.
Конфигурации выложу позже, если ничего не получится. – Роман 5 лет 3 месяца назад Точно не знаю, но возможно надо в Pprog привязку управления разделов сделать к ПП.
– Тремасов Константин Александрович 5 лет 3 месяца назад Для добавления сообщений на форуме вам необходимо зарегистрироваться и указать мобильный телефон в своем профиле (зачем?) |
|
День добрый. 5 лет 3 месяца назад Горелый Юрий Алексеевич 584Для добавления сообщений на форуме вам необходимо зарегистрироваться и указать мобильный телефон в своем профиле (зачем?) |
|
Константин, Юрий, спасибо что откликнулись. 5 лет 3 месяца назад Роман 13День добрый, Роман.
Достаточно странно что Вы видите в Moxa одно а запрашиваете другое. Это ввиду того, что в РЭ на С2000-ПП указаны Адреса в протоколе Modbus (для исключения путаницы и повторяемости примеров в Руководстве по эксплуатации;)) То-есть к примеру чтение событий это адрес "Адрес регистра = 46264" и даже в примере на стр.41 видно, что в "посылке" этот адрес должен выглядеть как "B4B8" Я бы посоветовал использовать преобразователи RS485 интерфейса в прозрачном режиме, не добавляя искажений пакетов. При этом есть вариант Вы запрашивали достаточно мало регистров и получили только "остаток" события. Рекомендую Панель Управления попробовать. – Горелый Юрий Алексеевич 5 лет 3 месяца назад Он в посылке и выглядит как B4B8 - это адресация в PDU, но по модели данных Modbus согласно приведённому документу выше (http://modbus.org/docs/Modbus_Application_Protocol_V1_1b3.pdf лист 8) - B4B8 это регистр №46265. Ну да ладно, не столь важно.
Года два назад мы реализовывали обмен через С2000-ПП по одному из проектов. Тогда использовали опрос буфера событий. Данный способ насколько я помню обладал одним не очень удобным эффектом, при запуске системы, до возникновения какого-либо события в Орионе, С2000-ПП может не знать состояние каких-либо приборов или ШС, соответственно и клиент Modbus ничего не знает. Тем не меннее больших неприятностей нам это не доставило, просто приходилось некторое время подождать. В руководстве насколько я помню тоже рекомендуется опрос буфера событий. Посмотрев логи Панели Управления вижу, что там используется запрос самого старого и самого нового события, и порос по зонам. Почему именно такой алгоритм опроса исползуется? – Роман 5 лет 3 месяца назад "Панель управления С2000-ПП" была создана для помощи в интеграции прибора.
Поэтому обмен с устройством был сделан максимально прозрачным образом. Само вычитывание событий в программе является всего лишь одним из вариантов. Получение самого старого и самого нового события позволяет организовать вычитывание событий, и учесть некоторые нюансы. В зависимости от задач, алгоритм может сильно измениться. – Ларин Юрий Александрович 5 лет 3 месяца назад Юрий,
можете подробнее пояснить что значит вычитание событий и про нюансы? Вычитанием что можно получить? Количество не прочитанных событий ? Номера событий приходят из системы Орион? Если да, то вопрос, они гарантировано приходят подряд без разрывов (1,2,3,4, .....)? Вообщем есть нюансы, которые пока не освещены в руководстве или я их там не заметил. – Роман 5 лет 3 месяца назад День добрый, Роман.
Для построения Вашего алгоритма опроса событий Рекомендую к прочтению https://bolid.ru/files/373/566/s2000_pp_re_v.1.31_apr_18.pdf страницу 39 В случае если возникнут дополнительные вопросы, мы на них сразу ответим. – Горелый Юрий Алексеевич 5 лет 3 месяца назад Если присмотреться, то я писал "вычитывание событий", а не "вычитание" =)
Про нюансы: Очень здорово, когда нам просто нужно получить список всех новых событий из прибора, пометить их как прочитанные и забыть про них. Именно такой алгоритм и реализован в "Панели управления С2000-ПП": - запрос номера самого старого непрочитанного - его получение - пометка о прочтении (получение номеров самого старого и самого нового в данном случае служат лишь для диагностики) Совсем другая ситуация, если нам придётся вычитывать события не помечая их как прочитанные, или же получить события с уже выставленным флагом о прочтении. В этих случаях следует учесть ряд нюансов: - размер буфера событий всего 256 записей * по достижении конца списка, начинают затираться записи в его начале, следовательно, при большом количестве поступающих событий, многие из них просто пропадут (актуально при малых скоростях, ниже скорости работы протокола "Орион" и/или высокой активности на линии, когда устройство физически не успевает выполнять все команды с нужной скоростью) - номера событиям выдаются строго по порядку, но размер регистра с номером не резиновый (целое 16 бит без знака) и в определённый момент происходит переполнение, и сброс номера в нуль. Это следует учесть при цикличном чтении событий (новые события будут иметь номера меньше старых). и другие нюансы, которые могут обнаружиться только в процессе эксплуатации прибора в вашей конкретной конфигурации. – Ларин Юрий Александрович 5 лет 3 месяца назад Добрый вечер Юрий. Читал эту страницу неоднократно. Использую и буфер и запросы к зонам. Я не вижу на этой странице ответы на заданные вопросы:
Что значит вычитание упомянутые Вами? Номер события приходит из системы Орион (от С2000М)? Или же номер события это всего лишь номер ячейки в кольцевом буфере и он никак не связан ни с какими номерами в С2000М? В таком случае ещё могу предположить для чего может понадобиться вычитание, например чтобы контролировать перезапись старых событий новыми, но это можно утверждать только, если знать как устроено хранение данных в буфер хранение номеров событий. Только вот в РЭ этого не написано а на догадках строить систему никуда не годится и в диагностике проблем жизнь усложняет. – Роман 5 лет 3 месяца назад Юрий, пока писал сообщение не увидел Вашего дополнения.
Т.е.получается номера событий задаёт сам С2000ПП, а моё предположение о номере события как об номере ячейки не верно. Ну и соответственно сравнением номеров событий (например вычитанием) позволяет контролировать затирание старых событий. – Роман 5 лет 3 месяца назад Юрий, можете привести пример какой-то практической ситуации, когда после считывания события не нужно помечать его прочитанных?
– Роман 5 лет 3 месяца назад Если С2000-ПП находится на линии как Master, то он сам генерирует события и раздаёт им номера, а если в режиме Slave, то события генерируются и нумеруются "Пультом", кроме событий "Сброс" и "Неправильное напряжение источника питания".
Помечать событие как прочитанное не стоит в том случае если: - была ошибка чтения и нужно повторить запрос - если события вычитываются несколькими программами - если задача только собрать события - итд в зависимости от конкретной ситуации P.S. Лично мне такая задача ставилась, поэтому ситуация более чем возможна – Ларин Юрий Александрович 5 лет 3 месяца назад Для добавления сообщений на форуме вам необходимо зарегистрироваться и указать мобильный телефон в своем профиле (зачем?) |
|
Добрый день, 5 лет 3 месяца назад Роман 13Насколько я знаю, чтобы получать состояние реле, необходимо это реле отвязать от локальных тактик, это когда сам прибор управляет реле. В вашем случае, скоре всего установлен режим одна дверь на вход/выход, задействовано только первое реле прибора, второе самим прибором не управляется, поэтому вы видите состояние второго и даже можете им управлять, а первого нет, так как им управляет прибор. Попробуйте поставить галки на на события дверь открыта и дверь закрыта, не уверен что поможет, но попробовать стоит. Я вообще не уверен что ПП может работать с доступом. Еще вариант, не реле опрашивать, а закинуть один из считывателей в раздел и пробовать получить события от считки.
– Тремасов Константин Александрович 5 лет 3 месяца назад Предполагал так же,
В вашем случае, скоре всего установлен режим одна дверь на вход/выход, задействовано только первое реле прибора, второе самим прибором не управляется, поэтому вы видите состояние второго и даже можете им управлять, а первого нет, так как им управляет прибор. Видимо так и есть. Посмотрел ещё раз настройки реле, заметил галку "События о включении /выключении реле". Поставил, события стали приходить в кольцевой буфер. У меня версия прибора 2.20, судя по инструкции поддержка событий появилась только с версии 1.15. По считывателям тоже сомнения можно ли к ним как к ШС получить доступ из С2000-ПП. Не ясно какой номер шлейфа указывать в ПП для них, если это вообще возможно. В ПП в настройках ключей прописал ключ, но в событиях, судя по логам с Moxa, ни в одном из сообщений не проскакивает поле №1 "Порядковый номре пользователя в базе данных С2000-ПП". – Роман 5 лет 3 месяца назад Для добавления сообщений на форуме вам необходимо зарегистрироваться и указать мобильный телефон в своем профиле (зачем?) |
4250 раз
5 лет 3 месяца назад
По каждому вопросу/ответу можно добавлять комментарии. Комментарии предназначены для уточнения вопроса/ответа.
– Тремасов Константин Александрович 5 лет 3 месяца назад
#ссылка