Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
29.03.2024, 00:27:44
 
Начало Помощь Поиск Войти Регистрация
Новости: Форум обновлен

+  Форум АО "ВЗЛЕТ"
|-+  Приборы ЗАО "Взлет"
| |-+  Отдел программистов
| | |-+  РСЛ-212 и РСЛ связь Modbus RTU
0 Пользователей и 1 Гость смотрят эту тему. « предыдущая тема следующая тема »
Страниц: [1] Печать
Автор Тема: РСЛ-212 и РСЛ связь Modbus RTU  (Прочитано 5616 раз)
kac
Разбирается
*

Харизма: 0
Офлайн Офлайн

Сообщений: 2


« : 10.05.2018, 12:44:52 »

Задача читать контроллером расход, уровень и накопительный расход с приборов ВЗЛЕТ.
Связь с приборами есть но читается как то непонятно:
1) прибор РСЛ -212
Два параметра читаются. (функция 4)
       349257 0xC068 УРОВЕНЬ без динамической видимости, м ИЗМЕРЕНИЯ КАНАЛ 1 (0)
       349269 0xC074 НАКОПЛЕННЫЙ ОБЪЕМ (64 бита), м\xBA Объем, м\xBA КАНАЛ 1 (0)
А Расход читается но цифра совсем не та (пробовал и так и эдак её декодировать...)
       349267 0xC072 РАСХОД без динамической видимости, ИЗМЕРЕНИЯ КАНАЛ 1 (0)
2) Прибор РСЛ
 расход и уровень читаем.
 а вместо накопительного опять левая цифра, или ее как то хитро закодировали...

Подскажите в каком направлении вести раскопки?  Smiley
Записан
dimoniche
Global Moderator
*****

Харизма: 21
Офлайн Офлайн

Сообщений: 564


« Ответ #1 : 10.05.2018, 19:31:15 »

Здравствуйте.

Во первых имейте в виду, что байты нужно перевернуть, для 4х байтных чисел: abcd -> dcba
Во вторых 4х байтные числа в вашем случае это float
В третьих 8 байтные накопительные числа должны считываются все за раз и представляют собой 2 числа: int (32 бита, целая часть) + float (дробная часть). (переворачивать байты нужно по 4 байта, раздельно целую и дробную часть).

Вот такое направление.
Записан
kac
Разбирается
*

Харизма: 0
Офлайн Офлайн

Сообщений: 2


« Ответ #2 : 11.05.2018, 11:48:22 »

Контроллер простенький МЗТА МС12. Программа вся на FBD, городить свои алго-блоки нельзя.
Имеется алго-блок для перевода из модбасовских 2*int -> float.

Данный алго-блок отлично справляется с Уровнем (349257) - это тоже float.
А соседний регистр выдает какую то ересь...
Записан
I_m
Наш человек
***

Харизма: 6
Офлайн Офлайн

Сообщений: 318


« Ответ #3 : 15.05.2018, 08:35:09 »

Контроллер простенький МЗТА МС12.

Наш подрядчик сказал, что на КОНТАРе такое не реализуется. Мы ответили, что нас вполне устроит целая часть, без дробной мы как-нибудь переживем. Так и сделали. Стыковали с ТСРВ-024М, но думаю, что в контексте вопроса это не существенно.
Записан
Страниц: [1] Печать 
« предыдущая тема следующая тема »
Перейти в:  


Войти

© 1990—2016, АО «Взлет».
Все права защищены.
Контактная информация
Powered by SMF 1.1.13 | SMF © 2006-2011, Simple Machines LLC
Материалы, размещенные на сайте, охраняются законодательством об авторском праве. Перепечатка материалов допускается только со ссылкой на сайт.