Если бы Вы знали какие объекты у нас бывают, то не удивлялись бы 4 тысячам. Выжимаем все соки из ПЛК210. Так уж повелось.
Вот пример одного из среднестатистических проектов.
Снимок экрана 2024-06-06 145907.png
Последний раз редактировалось Андрей Чернов; 06.06.2024 в 14:59.
Мощно конечно) А что это за объекты в основном поделитесь?Вот пример одного из среднестатистических проектов.
Мне кажется ничего не изменится. Вероятно сначала также последовательно опросит приборы в одном компоненте Modbus TCP Master потом в другом и по новой.А если добавить вторую такую и перенести туда часть модулей
Можно попросить подсказки?
Я работаю с ПР200, и мне не хватит Slave-регистров, как и всем остальным.
1. Я знаю, что OwenCloud может разбирать регистр по битам.
У меня будет передача всяких статусов, битовых, типа "Протечка воды", "Свет включен", "Питание подано" и так далее.
Как правильно делать, чтобы выгрузить проект из ПРки в OwenCloud с такой битовой маской?
Надо будет добавить в OwenCloud такой регистр несколько раз, указав разные биты?
У нас есть функция дублирования регистра (если нет - я могу руками всё сделать)?
2. Можно ли по аналогии сделать запись битовых команд в ПРку через один регистр?
Идея точно такая же, как и на чтение: один бит - выключить питание, другой - погасить свет, третий - сбросить аварию протечек.
Можно ли в OwenCloud добавить на запись такие биты из одно регистра?
Как это сделать?
3. Нормальной ли практикой будет, если я вместо FLOAT32 буду передавать параметры в SIGNED INT16 и делить их на 100, например?
Мне надо передавать температуры (улица) от ну пусть -40 до +60 градусов. Хватит тут одного регистра WORD?
Как правильно такое описать в OwenCloud и OwenLogic?
Спасибо, если кто подскажет.
Последний раз редактировалось Cs-Cs; 09.07.2024 в 22:29.
Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте. © Steve McConnell
Мой рабочий блог со статьями про щиты и автоматику ОВЕН - Cs-Cs.Net | Почта: Info@Cs-Cs.Net | Канал в ТГ @CsCsNetLab
Вот так выглядит настройка битового тега в Cloud:
Снимок экрана 2024-07-10 083211.png
Управление битами - аналогично, только разрешение на запись нужно.
Есть МНОЖИТЕЛЬ, наверное должен работать:
изображение_2024-07-10_083504475.png
Но в OL придётся умножать float на 100 и использовать функцию перевода в int (чтобы передавать отрицательные значения)
Код:function REAL_TO_INT : udint; var_input rIn : real; end_var var // udTmp : udint; end_var IF rIn < -32768 THEN rIn := -32768; ELSIF rIn > 32767 THEN rIn := 32767; END_IF; udTmp := real_to_udint(abs(rIn)); IF rIn > -1 THEN REAL_TO_INT := udTmp; ELSE REAL_TO_INT := 65536 - udTmp; END_IF; end_function
Последний раз редактировалось 1exan; 10.07.2024 в 05:05.
Так он писать хочет биты в регистры ПР, а не читать, в смысле, ваши настройки для чтения, они не подойдут в данном конкретном случае!
И, макросы преобразования уже имеются, здесь в посте#83 в последний раз выкладывал универсальные, в смысле, для INT и DINT:
https://owen.ru/forum/showthread.php?t=39392&page=9
А здесь обсуждали:
https://owen.ru/forum/showthread.php?t=9398&page=647
Последний раз редактировалось Сергей0308; 10.07.2024 в 05:56.
Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
справиться с проблемами, либо это не твои проблемы.