Реклама / ООО «ИЗОЛПРОЕКТ» / ИНН: 7725566484 | ERID: 2VtzqucPabn
IPB IPB
Проектирование, монтаж, наладка, сервис

Здравствуйте, гость ( Вход | Регистрация )

- Рекомендации АВОК 5.5.1-2023
«Системы противодымной вентиляции жилых и общественный зданий»

- Рекомендации АВОК 7.8.3-2023
«Проектирование инженерных систем лабораторий»

- Рекомендации АВОК 7.10-2023
«Здания жилые и общественные. Защита от шума и вибрации инженерного оборудования»

АВОК в соц. сетях
ИНН: 7714824045
 
Добавить ответ в эту темуОткрыть тему
> Дачтик SE + ПР200, подключение по ModBus, путаница с регистрами
Сергей А. Ефремо...
сообщение 21.2.2022, 13:18
Сообщение #1





Группа: Участники форума
Сообщений: 2940
Регистрация: 10.7.2012
Из: Нижний Новгород
Пользователь №: 156204



Добрый день.

Не понимаю как настроить сетевую переменную, чтобы считывать показания датчика. У Овена регистры 512, 514, 516, а у Шнайдера 1, 3, 5. Вообще не отдупляю как их поженить между собой. Ткните носом пожалуйста или накиньте овеновский файл для лоджика, как это делается.
Прикрепленный файл  SLP_Датчики_качества_воздуха___инструкция.pdf ( 1,66 мегабайт ) Кол-во скачиваний: 26
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
LordN
сообщение 21.2.2022, 13:46
Сообщение #2


МОДЕРАТОР


Группа: Модераторы
Сообщений: 10694
Регистрация: 3.7.2004
Пользователь №: 32



https://ipc2u.ru/articles/prostye-resheniya/modbus-rtu/
Код
Номер регистра    Адрес регистра HEX    Тип    Название    Тип
1-9999    0000 до 270E    Чтение-запись    Discrete Output Coils    DO
10001-19999    0000 до 270E    Чтение    Discrete Input Contacts    DI
30001-39999    0000 до 270E    Чтение    Analog Input Registers    AI
40001-49999    0000 до 270E    Чтение-запись    Analog Output Holding Registers    AO

Прикрепленный файл  2022_02_21_17_45_33_Просто_о_протоколе_Modbus_RTU___Google_Chrome.png ( 62,16 килобайт ) Кол-во скачиваний: 17


Прикрепленный файл  2022_02_21_17_43_59_rp_pr200_21.pdf___Google_Chrome.png ( 471,79 килобайт ) Кол-во скачиваний: 22
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Сергей А. Ефремо...
сообщение 21.2.2022, 14:33
Сообщение #3





Группа: Участники форума
Сообщений: 2940
Регистрация: 10.7.2012
Из: Нижний Новгород
Пользователь №: 156204



В самом начале затупил, не обратил внимание на то, что порт ПР200 определён как slave, переопределил на master, но с настройками всё равно не получается. Там написано про 32 бита, может с этим связано?

Сообщение отредактировал Сергей А. Ефремов - 21.2.2022, 14:35
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
LordN
сообщение 21.2.2022, 14:51
Сообщение #4


МОДЕРАТОР


Группа: Модераторы
Сообщений: 10694
Регистрация: 3.7.2004
Пользователь №: 32



Цитата(Сергей А. Ефремов @ 21.2.2022, 18:33) *
В самом начале затупил, не обратил внимание на то, что порт ПР200 определён как slave, переопределил на master, но с настройками всё равно не получается. Там написано про 32 бита, может с этим связано?

конечно.
надо задать тип, а затем, если все выводится не так, поиграть с галками
Прикрепленный файл  2022_02_21_18_49_46_Настройка_прибора.png ( 55,7 килобайт ) Кол-во скачиваний: 18

Прикрепленные файлы
Прикрепленный файл  123.zip ( 76,18 килобайт ) Кол-во скачиваний: 2
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Сергей А. Ефремо...
сообщение 21.2.2022, 16:13
Сообщение #5





Группа: Участники форума
Сообщений: 2940
Регистрация: 10.7.2012
Из: Нижний Новгород
Пользователь №: 156204



Овен ни в какую, модбасвувером мучаю, обмен есть, а какие данные то же не понято.
Прикрепленный файл  Снимок_экрана__3_.png ( 127,62 килобайт ) Кол-во скачиваний: 22

Прикрепленный файл  Снимок_экрана__5_.png ( 117,71 килобайт ) Кол-во скачиваний: 20

Прикрепленные файлы
Прикрепленный файл  MODBUS_View.zip ( 310,17 килобайт ) Кол-во скачиваний: 3
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
LordN
сообщение 21.2.2022, 17:24
Сообщение #6


МОДЕРАТОР


Группа: Модераторы
Сообщений: 10694
Регистрация: 3.7.2004
Пользователь №: 32



я когда новую непонятную зверушку мучаю, всегда начинаю с того, что создаю несколько целых однорегисторных переменных и пытаюсь вычитать их последовательно перебирая адреса и функции. сейчас код пишут все кому не лень и выдержка стандарта зачастую никакущая.
ну например.
создаю
х1 int адрес 0
х2 int адрес 1
x3 int адрес 2
и т.д.
и вычитываю их сначала 3й, а потом 4й функциями.
групповые запросы и функции пока отключаю ибо частенько дивайсы их либо не поддерживают, либо имеют жёстко ограниченный размер пакета, типа как у ебмпапст в 23байта и давай до свиданья.
и вот когда порегистрово уже все читается , тогда и начинаю колдовать дальше.
ибо нередки косяки в настройках битрейта чет-нечет и т.д.
на этом первом этапе юзаю CAS Modbus Scanner
Прикрепленный файл  2022_02_21_21_24_14_Settings.png ( 37,05 килобайт ) Кол-во скачиваний: 17

Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
manjey73
сообщение 21.2.2022, 23:20
Сообщение #7





Группа: Участники форума
Сообщений: 2030
Регистрация: 1.8.2014
Пользователь №: 240922



Время опроса задайте и не взводите по команде импульсом. з.ы. в этом плане ПР уг...

У датчика 16-й адрес? smile.gif

Сообщение отредактировал manjey73 - 21.2.2022, 23:22
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Сергей А. Ефремо...
сообщение 22.2.2022, 11:29
Сообщение #8





Группа: Участники форума
Сообщений: 2940
Регистрация: 10.7.2012
Из: Нижний Новгород
Пользователь №: 156204



Цитата(manjey73 @ 21.2.2022, 23:20) *
Время опроса задайте и не взводите по команде импульсом. з.ы. в этом плане ПР уг...

У датчика 16-й адрес? smile.gif


Прикрепленный файл  Снимок_экрана__9_.png ( 119,71 килобайт ) Кол-во скачиваний: 9


Вообще никак, и с галочками и без галочек, в любой последовательности, безрезультатно.

Делать что? )) Менять контроллер?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
manjey73
сообщение 22.2.2022, 11:52
Сообщение #9





Группа: Участники форума
Сообщений: 2030
Регистрация: 1.8.2014
Пользователь №: 240922



Если читает программой, то должен прочесть и ПР200. Чудес не бывает. Скорость, четность, режим выставлены правильно?

У ПР200 только нет возможности групповых запросов, ну и наколдовали они там что-то с периодами запросов по команде, команду надо удерживать в 1 на все время чтения, то есть импульс не прокатывает для запуска цикла чтения.

Ну и стартовые адреса регистров может быть не 5 а 4 надо поставить, но это мелочи уже.

Сообщение отредактировал manjey73 - 22.2.2022, 11:55
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Сергей А. Ефремо...
сообщение 22.2.2022, 11:55
Сообщение #10





Группа: Участники форума
Сообщений: 2940
Регистрация: 10.7.2012
Из: Нижний Новгород
Пользователь №: 156204



Цитата(manjey73 @ 22.2.2022, 11:52) *
Если читает программой, то должен прочесть и ПР200. Чудес не бывает. Скорость, четность, режим выставлены правильно?

Обмен есть, ошибок нет, а данные приходят - непонятно что там в них содержится... какие-то левые цифры...
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
manjey73
сообщение 22.2.2022, 12:58
Сообщение #11





Группа: Участники форума
Сообщений: 2030
Регистрация: 1.8.2014
Пользователь №: 240922



Левые цифры могут быть по
1. не с того регистра начинается чтение
2. неправильно выставлена перестановка байт/слов

я обычно становлюсь снифером и пакет байт, например float, закидываю в онлайн калькулятор чисел, смотрю как надо переставить чтобы получить корректное значение.

Сообщение отредактировал manjey73 - 22.2.2022, 13:00
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
LordN
сообщение 22.2.2022, 13:15
Сообщение #12


МОДЕРАТОР


Группа: Модераторы
Сообщений: 10694
Регистрация: 3.7.2004
Пользователь №: 32



Цитата(Сергей А. Ефремов @ 22.2.2022, 15:55) *
Обмен есть, ошибок нет, а данные приходят - непонятно что там в них содержится... какие-то левые цифры...

я ж говорю, касмодбас, он умеет считанные последовательные регистры в любом виде показать.
я тоже полагаю что косяк в адресе. не с того числа отсчет.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Сергей А. Ефремо...
сообщение 22.2.2022, 15:45
Сообщение #13





Группа: Участники форума
Сообщений: 2940
Регистрация: 10.7.2012
Из: Нижний Новгород
Пользователь №: 156204



Цитата(manjey73 @ 22.2.2022, 12:58) *
Левые цифры могут быть по
1. не с того регистра начинается чтение
2. неправильно выставлена перестановка байт/слов

я обычно становлюсь снифером и пакет байт, например float, закидываю в онлайн калькулятор чисел, смотрю как надо переставить чтобы получить корректное значение.



Цитата(LordN @ 22.2.2022, 13:15) *
я ж говорю, касмодбас, он умеет считанные последовательные регистры в любом виде показать.
я тоже полагаю что косяк в адресе. не с того числа отсчет.


Прикрепленный файл  Снимок_экрана__5_.png ( 117,71 килобайт ) Кол-во скачиваний: 14


Снизу вот есть ответная строка.

Касмодбас буду пробовать, спасибо.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
manjey73
сообщение 22.2.2022, 16:07
Сообщение #14





Группа: Участники форума
Сообщений: 2030
Регистрация: 1.8.2014
Пользователь №: 240922



А вы можете не скрином кинуть сюда HEX строки запроса и ответа? а то неприлично как-то заставлять людей набивать циферки с экрана...

# ________Raw______ Float
0 ____ 0A 21 01 00 ____ 7.752056e-33

Попробуйте указать стартовый регистр 0 и поменять места словами всего лишь.

https://www.scadacore.com/tools/programming...-hex-converter/

Вы же понимаете, что если это 1-й регистр, то он не тянет на температуру, если вы конечно его не на улице повесили и не меряете минус хрен знает сколько градусов

Сообщение отредактировал manjey73 - 22.2.2022, 16:14
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
LordN
сообщение 22.2.2022, 17:59
Сообщение #15


МОДЕРАТОР


Группа: Модераторы
Сообщений: 10694
Регистрация: 3.7.2004
Пользователь №: 32



Цитата
Снизу вот есть ответная строка.


я же говорю, по одному регистру надо пытаться читать, а не по 10 штук зараз.
и разными функциями.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Сергей А. Ефремо...
сообщение 24.2.2022, 15:37
Сообщение #16





Группа: Участники форума
Сообщений: 2940
Регистрация: 10.7.2012
Из: Нижний Новгород
Пользователь №: 156204



Цитата(manjey73 @ 22.2.2022, 16:07) *
А вы можете не скрином кинуть сюда HEX строки запроса и ответа? а то неприлично как-то заставлять людей набивать циферки с экрана...

# ________Raw______ Float
0 ____ 0A 21 01 00 ____ 7.752056e-33

Попробуйте указать стартовый регистр 0 и поменять места словами всего лишь.

https://www.scadacore.com/tools/programming...-hex-converter/

Вы же понимаете, что если это 1-й регистр, то он не тянет на температуру, если вы конечно его не на улице повесили и не меряете минус хрен знает сколько градусов


Прикрепленный файл  photo5240088980383447326.jpg ( 151,81 килобайт ) Кол-во скачиваний: 15


Большое спасибо за информацию и отдельное спасибо, что не сочли за труд глянуть дату, завелась шарманка, работает.

Установил регистры 0 - температура, 2 - влажность, 4 - СО2, пээрка видит данные, выводит на экран. Почему так? Интересно.

А сетпойнты как считывать/записывать? У них те же регистры... запутался ещё больше. ))

Карта узлов Modbus
Коды функций:
Код функции Функция 03
Чтение регистров хранения (RW) 04
Чтение регистров ввода (RO)
06 Запись единичного регистра
16 Запись нескольких регистров
01 Чтение регистра флагов
05 Запись одинарного регистра флагов
15 Запись нескольких регистров флагов

Все эти значения соответствуют одноименным объектам BACnet.
Их определения см. в Заявлении о соответствии BACnet.
Обратите внимание, что попытка записи в регистры хранения только для чтения приведет к ошибке и вся команда записи не будет выполнена, даже если также была запрошена запись в регистры с возможностью чтения/записи. В этом случае выдается код исключения 2.

«Сохранено» означает, что значения сохраняются при отключении электропитания.

Регистры ввода (только для чтения):
Регистр Описание
1 Показания температуры в 32-разрядном виде по стандарту IEEE с плавающей запятой
3 Показания влажности в 32-разрядном виде по стандарту IEEE с плавающей запятой
5 Показания CO2 в 32-разрядном виде по стандарту IEEE с плавающей запятой
7 Показания ЛОС в 32-разрядном целочисленном виде
9 Модель
42 Заводской номер

Регистры хранения (чтение/запись):
Регистр Описание
1 Уставка температуры
3 Уставка влажности
5 Набор цветов экрана
7 Название устройства
40 Скорость вентилятора

Сообщение отредактировал Сергей А. Ефремов - 24.2.2022, 15:29
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
LordN
сообщение 24.2.2022, 15:39
Сообщение #17


МОДЕРАТОР


Группа: Модераторы
Сообщений: 10694
Регистрация: 3.7.2004
Пользователь №: 32



Цитата(Сергей А. Ефремов @ 24.2.2022, 19:29) *
Прикрепленный файл  photo5240088980383447326.jpg ( 151,81 килобайт ) Кол-во скачиваний: 15


Большое спасибо за информацию и отдельное спасибо, что не сочли за труд глянуть дату, завелась шарманка, работает.

Установил регистры 0 - температура, 2 - влажность, 4 - СО2, пээрка видит данные, выводит на экран. Почему так? Интересно.

А сетпойнты как считывать/записывать? У них те же регистры... запутался ещё больше. ))

ну вот, другое дело smile.gif
а то контроллер сразу менять smile.gif
исторически так сложилось, что физические адреса, оффсет, начинаются с единицы, а логические то так, то эдак, хотя обычно с нуля. но китайцы как дети малые им пох история, у них свое видение логики.
я потому и говорю, что начинать надо читать порегистрово, чтобы понять откуда начинается отсчет в приборе и как он соотносится с читающим мастером.

сетпоинты имеют иную функцию на чтение. логические адреса те же, а вот физические иные, внимательно см.ссылку вначале темы.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
manjey73
сообщение 24.2.2022, 21:58
Сообщение #18





Группа: Участники форума
Сообщений: 2030
Регистрация: 1.8.2014
Пользователь №: 240922



Цитата
Почему так?


Логический/физический адрес Modbus. Производители не всегда указывают точку отсчета.

Цитата
А сетпойнты как считывать/записывать? У них те же регистры... запутался ещё больше.


Команды разные. Ну и поищите в доке на ПР, как рассчитать положение бита, там где-то было. Ну и как бы, а оно надо при использовании с ПР200 ?

Сообщение отредактировал manjey73 - 24.2.2022, 22:01
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Сергей А. Ефремо...
сообщение 8.4.2022, 12:29
Сообщение #19





Группа: Участники форума
Сообщений: 2940
Регистрация: 10.7.2012
Из: Нижний Новгород
Пользователь №: 156204



Всем, здрасте.

Ковыряю (пытаюсь подключить к ПР200) такой вот контроллер с алиэкспресс:

Прикрепленный файл  photo5368831698822871142.jpg ( 125,03 килобайт ) Кол-во скачиваний: 14


Основные регистры (углекислота, влажность, температура) считываются без проблем, а вот остальные (вкыл/выкл, L-M-H, Mode) никак.

Прикрепленный файл  Scan.jpg ( 968,29 килобайт ) Кол-во скачиваний: 13


Вувером, для примера 13-й регистр считывается, но значение отображается в седьмом бите, и как его извлечь от туда с помощью ПР200 вообще непонятно.

Прикрепленный файл  Снимок_экрана__4_.jpg ( 57,34 килобайт ) Кол-во скачиваний: 11


Как я только не пробовал, выводится либо 0 либо 999.

Помогите разобраться, какие настройки должны быть у ПР200, чтобы он мог корректно считывать эти регистры.

Третий день бьюсь с этой проблемой.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
LordN
сообщение 8.4.2022, 17:25
Сообщение #20


МОДЕРАТОР


Группа: Модераторы
Сообщений: 10694
Регистрация: 3.7.2004
Пользователь №: 32



в фбд блоках овенлоджика д.б. преобразователь int-bool
это раз
два - пробуйте читать групповыми битовыми функциями, т.е. читаете подряд все шестнадцать бит, может прокатить.
три - биг эндиан, ло эндиан.
но я бы ограничился пунктом 1. ну и три

Прикрепленный файл  2022_04_08_21_24_35_Менеджер_компонентов.png ( 115,01 килобайт ) Кол-во скачиваний: 10

кажется это оно


Прикрепленный файл  2022_04_08_21_26_48_О_программе.png ( 46,5 килобайт ) Кол-во скачиваний: 12

или это
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Сергей А. Ефремо...
сообщение 11.4.2022, 10:47
Сообщение #21





Группа: Участники форума
Сообщений: 2940
Регистрация: 10.7.2012
Из: Нижний Новгород
Пользователь №: 156204



Цитата(LordN @ 8.4.2022, 17:25) *
в фбд блоках овенлоджика д.б. преобразователь int-bool
это раз
два - пробуйте читать групповыми битовыми функциями, т.е. читаете подряд все шестнадцать бит, может прокатить.
три - биг эндиан, ло эндиан.
но я бы ограничился пунктом 1. ну и три

Прикрепленный файл  2022_04_08_21_24_35_Менеджер_компонентов.png ( 115,01 килобайт ) Кол-во скачиваний: 10

кажется это оно


Прикрепленный файл  2022_04_08_21_26_48_О_программе.png ( 46,5 килобайт ) Кол-во скачиваний: 12

или это

Спасибо большое, буду пробовать.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Сергей А. Ефремо...
сообщение 12.4.2022, 15:05
Сообщение #22





Группа: Участники форума
Сообщений: 2940
Регистрация: 10.7.2012
Из: Нижний Новгород
Пользователь №: 156204



Цитата(LordN @ 8.4.2022, 17:25) *
в фбд блоках овенлоджика д.б. преобразователь int-bool
это раз
два - пробуйте читать групповыми битовыми функциями, т.е. читаете подряд все шестнадцать бит, может прокатить.
три - биг эндиан, ло эндиан.
но я бы ограничился пунктом 1. ну и три

Прикрепленный файл  2022_04_08_21_24_35_Менеджер_компонентов.png ( 115,01 килобайт ) Кол-во скачиваний: 10

кажется это оно


Прикрепленный файл  2022_04_08_21_26_48_О_программе.png ( 46,5 килобайт ) Кол-во скачиваний: 12

или это

Прикрепленный файл  Снимок_экрана__4_.jpg ( 57,34 килобайт ) Кол-во скачиваний: 6


А как получить интовое значение?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Сергей А. Ефремо...
сообщение 12.4.2022, 15:52
Сообщение #23





Группа: Участники форума
Сообщений: 2940
Регистрация: 10.7.2012
Из: Нижний Новгород
Пользователь №: 156204



Сорян за беспокойство, только сейчас увидел (лох чилийский), что адреса даны в хексах и всё это время пытался читать 13 адрес вместо 20, он резервный и по всей видимости там отображается то же самое значение, но записанное в другой байт.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения

Добавить ответ в эту темуОткрыть тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

Реклама
ООО «Арктика групп» ИНН: 7713634274


ООО «УНИСПЛИТ» ИНН: 6453155081 erid:2VtzqvE2vr3

Последние сообщения Форума





Rambler's Top100 Rambler's Top100

RSS Текстовая версия Сейчас: 19.4.2024, 3:34