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

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

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

Сообщений: 6


« : 19.02.2015, 11:10:32 »

Добрый день!
Необходимо прочитать данные накопительного и  мгновенного расходов, а так же уровня жидкости в  канале.
Ваше ПО "Универсальный Просмотрщик" (УП) видит искомые показания так, как нужно. Числа с плавающей точкой и четырьмя знаками после запятой.
По документации это адреса:
Накопительный  = 349269 лог адрес и длинна 4 рег(8 байт).  Его нормально прочитал и расшифровал в Дельфи. (первое число это Cardinal-целая часть, второе дробная не важная для нас часть так как рабочий расход лотка 3000 м3/ч ). Результат похож на правду при сравнении с данными УП.
Уровень жидкости в канале = 349257 лог адрес и длинна 2 рег(4 байта).  Его нормально прочитал и расшифровал в Дельфи. (число это Cardinal). Результат похож на правду при сравнении с данными УП.
Мгновенный расход  = 349267 лог адрес и длинна 2 рег(4 байта).  Данные никак не могу расшифровать.
Посылаю [01 04 C0 72 00 02 ED D0]
Получаю [01 04 04 3F 90 54 1E 49 75]
 (а в УП 3710,87 м3/ч и соответственно число должно быть похоже на это+- 200 м3/ч)
Уже создал свой тип для просмотра одновременно всех байтовых представлений в дельфи. ни в одном виде не получилось нужного значения
type
 Val_all=record
  case Int64 of
   1:(Val_D:Double);
   2:(Val_S1,Val_S2:Single);(аналог Float и равно Val_S1=1,1275670528)
   3:(Val_Cur1,Val_Cur2:Currency);(денежный 106642,3326)
   4:(Val_b1,Val_b2,Val_b3,Val_b4,Val_b5,Val_b6,Val_b7,Val_b8:byte); //байты чисел (b1=30 b2=84 b3=144 b4 63)
   5:(Val_I1,Val_I2:Integer);// 1066423326
   6:(Val_Car1,Val_Car2:Cardinal); 1066423326
   7:(Val_LW1,Val_LW2:Longword); 1066423326
   8:(Val_I64:Int64); 1066423326
   9:(Val_W1,Val_W2,Val_W3,Val_W4:Word); (W1=21534 W2=16272)
 end;

Подскажите как прочитать мгновенный текущий расход?


* данные.jpg (35.17 Кб, 272x479 - просмотрено 1528 раз.)
Записан
yura
Наш человек
***

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

Сообщений: 342


« Ответ #1 : 19.02.2015, 13:51:51 »


   2:(Val_S1,Val_S2:Single);(аналог Float и равно Val_S1=1,1275670528)

Подскажите как прочитать мгновенный текущий расход?

Добрый день, Вы прочитали нужный регистр и правильно расшифровали полученное значение. Но значение в этом регистре это мгновенный расход в м3/с, поэтому если Вы хотите получить его в м3/ч нужно умножить на 3600.
То есть получается:
Q = 1.127567 * 3600 = 4059.24 (м3/ч).
Как я понимаю, это несколько больше чем Вы ожидаете получить, но из прибора читается именно это значение. То же самое Вы должны видеть и при чтении универсальным просмотрщиком.
Записан
IliaIT
Пользователь
**

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

Сообщений: 6


« Ответ #2 : 19.02.2015, 14:27:20 »

Большое спасибо.! сейчас подправил опрос в соответствии с вашим замечанием. завтра , как накопятся результаты чтений можно будет сравнить с другими приборами учёта, а так же будет рекомендация наших технологов. А так внешне похоже на правду.
P.S. именно с такой скоростью гадит наш город Smiley. Данный прибор установлен на очистных сооружения канализации для измерения количества стоков после извлечения крупногабаритного мусора (после решёток).
Записан
Страниц: [1] Печать 
« предыдущая тема следующая тема »
Перейти в:  


Войти

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