Добрый день!
Пишу программу обработки дискретных и аналоговых сигналов.
В качестве модуля ввода-вывода используется корзина ICP DAS ET-87p8-MTCP (2 модуля аналогового ввода, 4 модуля дискретного ввода и 2 модуля дискретного вывода)
Ситуация следующая:
Настроил между ими связь (сконфигурировал устройство "Ethernet", добавил и сконфигурировал Modbus TCP Master и Modbus TCP Slave). В Modbus TCP Slave сконфигурировал каналы для обращения к каждому модулю ввода-вывода данной корзины (пришлось долго разбираться с адресацией параметров ICP DAS'а), данные выводятся стандартными функциями на чтение/запись. Данные аналоговых модулей выводятся в формате WORD (16 бит).
2.jpg
значение 10000 примерно соответствует 27-28 градусам цельсия
Вопрос:
Как перевести данные из формата в WORD в формат REAL? Для примера приведу считываемый аналоговым модулем ввода параметр температуры. Сам параметр выводится в Codesys только в формате dec (в ПО для конфигурирования ICP DAS можно посмотреть эти данные в формате value, dec и hex).
Просмотрел библиотеку OwenCommunication, подходящих блоков не нашел, а стандартные переводы типа WORD_TO_REAL положительного результата не дал.
1.jpg
Может я проглядел какой блок, который решит мою проблему, или может быть существует способ из этих 16 бит собрать число типа REAL
Последний раз редактировалось farta; 27.01.2023 в 12:36.
Добрый день.
Выложите документацию на ваш модуль аналогового входа, в которой приведена карта регистров.
Приложите скриншоты настроек входов модуля.
Последний раз редактировалось Евгений Кислов; 27.01.2023 в 11:48.
СODESYS V3.5: Repository Archive V3.5 SP4 (необходим для старых СПК) / Раздел CDS V3.5 на сайте
Форум: Вопросы и ответы / Визуализация / Настройка обмена с другими устройствами
Web-панель ВП110 / Modbus-индикатор СМИ2-М
Telegram: @JuneSmellsLikeBlood | e-mail: e.kislov@owen.ru | oscat.ru | Как обратиться в техподдержку?
Как отлаживать ошибки | Отладка проектов в CODESYS V3.5 | XY problem | Как правильно задавать вопросы | AnyDesk
у сименса это примерно так делается owen.png
Bad programmers worry about the code. Good programmers worry about data structures and their relationships
среди успешных людей я не встречала нытиков
Барбара Коркоран
К сожалению, не нашел документацию с описанием карты регистров
Вообще в принципе, большинство документации на ICP DAS (и на корзину ET/87p8-MTCP, и на отдельные модули ввода/вывода) невнятная, большинство информации находил путем экспериментов
В ПО на ICP DAS в секции мапинга прописаны адреса ячеек
3.jpg
сначала думал, что адресация параметров для AI имеет вид 3xxxx (как написано синим цветом на скриншоте выше), однако при обращении таким образом не понятно, куда именно он обращается
путем экспериментов пришел к выводу, что адресация, указанная на скриншоте в секции мапинга, точно совпадает с адресом параметра, а к конкретному модулю кодесис обращается сам посредством встроенных функций
4.jpg
P.S. Не знаю, почему в скриншоте ПО на ICP DAS не отображаются значения value, но в кодесисе данные отображаются корректно
Последний раз редактировалось farta; 27.01.2023 в 12:21.
Тогда проще всего написать в техподдержку ICP DAS и уточнить у них формат хранения аналоговых значений.Вообще в принципе, большинство документации на ICP DAS (и на корзину ET/87p8-MTCP, и на отдельные модули ввода/вывода) невнятная, большинство информации находил путем экспериментов
СODESYS V3.5: Repository Archive V3.5 SP4 (необходим для старых СПК) / Раздел CDS V3.5 на сайте
Форум: Вопросы и ответы / Визуализация / Настройка обмена с другими устройствами
Web-панель ВП110 / Modbus-индикатор СМИ2-М
Telegram: @JuneSmellsLikeBlood | e-mail: e.kislov@owen.ru | oscat.ru | Как обратиться в техподдержку?
Как отлаживать ошибки | Отладка проектов в CODESYS V3.5 | XY problem | Как правильно задавать вопросы | AnyDesk
День добрый.
Подскажите пожалуйста, какой библиотекой из стандартных нужно пользоваться для работы с файлами из нескольких потоков (задач)?
Сейчас использую SysFile, но несмотря на синхронизацию BOLT-ом периодически затирают друг друга записи в файле. Есть подозрение, что после завершения SysFileFlush ещё некоторое время производится запись файла.
СODESYS V3.5: Repository Archive V3.5 SP4 (необходим для старых СПК) / Раздел CDS V3.5 на сайте
Форум: Вопросы и ответы / Визуализация / Настройка обмена с другими устройствами
Web-панель ВП110 / Modbus-индикатор СМИ2-М
Telegram: @JuneSmellsLikeBlood | e-mail: e.kislov@owen.ru | oscat.ru | Как обратиться в техподдержку?
Как отлаживать ошибки | Отладка проектов в CODESYS V3.5 | XY problem | Как правильно задавать вопросы | AnyDesk
Т.е. даже с учётом синхронизации -- будет затирание данных в файле?
СODESYS V3.5: Repository Archive V3.5 SP4 (необходим для старых СПК) / Раздел CDS V3.5 на сайте
Форум: Вопросы и ответы / Визуализация / Настройка обмена с другими устройствами
Web-панель ВП110 / Modbus-индикатор СМИ2-М
Telegram: @JuneSmellsLikeBlood | e-mail: e.kislov@owen.ru | oscat.ru | Как обратиться в техподдержку?
Как отлаживать ошибки | Отладка проектов в CODESYS V3.5 | XY problem | Как правильно задавать вопросы | AnyDesk