Tools


«Сименс» в России

«Сименс» в России

S7-1200 и счетчик ALPHA 1805. Сбор данных по MODBUS RTU

Логические модули LOGO!, базовые контроллеры SIMATIC S7-1200

Модераторы: anna_razgoeva, gulenok_andrey

akcount
Сообщения: 13
Зарегистрирован: 26 июн 2019, 07:00
Откуда: Тюмень

Сообщение akcount » 17 окт 2019, 13:51

Alex_NN писал(а):
15 окт 2019, 09:40
Добрый день, форумчане.
Попробуйте так. На правах бреда, даже в симулятор не загружал. Разрядности мантиссы вещественного с двойной точностью на величину INT48 должно хватить.

FUNCTION_BLOCK "Block_1"
{ S7_Optimized_Access := 'TRUE' }
VERSION : 0.1
VAR_INPUT
reg0 : UInt; //младший регистр
reg1 : UInt;
reg2 : UInt; //старший регистр
END_VAR

VAR_OUTPUT
Energy : LReal;
END_VAR


BEGIN
#Energy := (UINT_TO_LREAL(#reg0)) + (UINT_TO_LREAL(#reg1) * 65536.0) + (UINT_TO_LREAL(#reg2) * 65536.0 * 65536.0);
END_FUNCTION_BLOCK

Alex_NN
Сообщения: 54
Зарегистрирован: 14 июн 2018, 12:28

Сообщение Alex_NN » 17 окт 2019, 16:12

akcount писал(а):
Попробуйте так.
Ух ты! Круто! Работает! Только я на LAD сделал через CALCULATE.
И вроде все логично и понятно!
Спасибо огромное!


Alex_NN
Сообщения: 54
Зарегистрирован: 14 июн 2018, 12:28

Сообщение Alex_NN » 02 дек 2019, 10:48

Продолжение истории.
На наладке выявилась следующая проблема.
Инструкция Modbus_Master "не желает" вычитывать из счетчика значения энергии с типом данных INT48. Выдает статус 8383. Она как-будто спотыкается об эти значения энергии.
Не нравятся ей похоже типы данных UINT, DINT и т. п. в блоке данных, подключенном ко входу DATA PTR.
Если делаю запрос без этих значений - все ок. Если включаю их в опрос или опрашиваю только их - статус 8383.
Вроде написано, что проблема в адресе, но фактически проблема, похоже, в данных.
Как быть?

Бронислав
Сообщения: 16
Зарегистрирован: 17 мар 2019, 20:14

Сообщение Бронислав » 02 дек 2019, 16:50

Добрый день.
Некоторые счетчики не дают считывать накопленные значения по частям. А если запрашивать все 6 регистров сразу - то ок. Попробуйте запрашивать не DINT а массив байт нужного размера.

Alex_NN
Сообщения: 54
Зарегистрирован: 14 июн 2018, 12:28

Сообщение Alex_NN » 03 дек 2019, 08:19

Спасибо за совет. Попробую и так и другие варианты - WORD, например.
Наладка перед отправкой заказчику была сильно ограничена по времени. Будет еще наладка на объекте через месяц.
Как запасной вариант думаю вычислять энергию через мощность в циклическом ОВ. Для технического учета - сгодится.