Округление температуры из Modbus по TCP

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

Аватара пользователя
~220v
Сообщения: 96
Зарегистрирован: Пн дек 23, 2019 5:56 pm
Благодарил (а): 109 раз
Поблагодарили: 18 раз

Re: Округление температуры из Modbus по TCP

Сообщение ~220v » Чт июл 02, 2020 6:44 pm

Всё сделал по инструкции выше, зашел в хистори свойства объекта TempSensor01.tempRounded, одно значение порождает дополнительных 2 - само значение, и 2 округлённых:
СпойлерПоказать
tempRound.png
tempRound.png (54.48 КБ) 3400 просмотров
не красиво... Может округлённое значение записывать в другое свойство?
Logrus
Сообщения: 2079
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 313 раз
Поблагодарили: 457 раз

Re: Округление температуры из Modbus по TCP

Сообщение Logrus » Чт июл 02, 2020 8:01 pm

Снимок.PNG
Снимок.PNG (30.19 КБ) 3388 просмотров
и округляй перед записью
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Округление температуры из Modbus по TCP

Сообщение nick7zmail » Чт июл 02, 2020 8:31 pm

~220v писал(а):
Чт июл 02, 2020 6:44 pm
Всё сделал по инструкции выше, зашел в хистори свойства объекта TempSensor01.tempRounded, одно значение порождает дополнительных 2 - само значение, и 2 округлённых:
СпойлерПоказать
tempRound.png
не красиво... Может округлённое значение записывать в другое свойство?
По какой инструкции и что сделали?)) Так по идее и надо в другое свойство писать...а вообще вон выше подсказывают, что новая фича появилась, вообще без доп. свойств.
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Logrus
Сообщения: 2079
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 313 раз
Поблагодарили: 457 раз

Re: Округление температуры из Modbus по TCP

Сообщение Logrus » Чт июл 02, 2020 8:37 pm

причем она дорабатывается и там можно получать и олд валуе (ну и естественно вариаций применения увеличивается)
Снимок1.PNG
Снимок1.PNG (31.2 КБ) 3380 просмотров
Снимок2.PNG
Снимок2.PNG (8.95 КБ) 3380 просмотров
дверь открыл и закрыл два раза
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Аватара пользователя
~220v
Сообщения: 96
Зарегистрирован: Пн дек 23, 2019 5:56 pm
Благодарил (а): 109 раз
Поблагодарили: 18 раз

Округление значений датчиков температуры, влажности и атм. давления

Сообщение ~220v » Пт июл 03, 2020 1:58 am

Сделал теперь поистине красиво и универсально:
1. В класс объекта SSensors добавил новое свойство Round_Do - для значения до которого будем округлять.
СпойлерПоказать
2020-07-03_Round_1.png
2020-07-03_Round_1.png (18.52 КБ) 3336 просмотров
2. к существующему свойству value добавил проверку значений. 1) чтение самого значения из глобальной переменной 2) на всякий случай проверку на пустоту и отрицательные данные 3) само округление
СпойлерПоказать
2020-07-03_Round_2.png
2020-07-03_Round_2.png (23.48 КБ) 3336 просмотров
3. теперь для каждого датчика возможно настроить своё округление значений 8-)
Аватара пользователя
xor
Сообщения: 2038
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 284 раза
Поблагодарили: 629 раз

Re: Округление значений датчиков температуры, влажности и атм. давления

Сообщение xor » Пт июл 03, 2020 7:19 pm

~220v писал(а):
Пт июл 03, 2020 1:58 am
Сделал теперь поистине красиво и универсально:
1. В класс объекта SSensors добавил новое свойство Round_Do - для значения до которого будем округлять.
СпойлерПоказать
2020-07-03_Round_1.png
2. к существующему свойству value добавил проверку значений. 1) чтение самого значения из глобальной переменной 2) на всякий случай проверку на пустоту и отрицательные данные 3) само округление
СпойлерПоказать
2020-07-03_Round_2.png
3. теперь для каждого датчика возможно настроить своё округление значений 8-)
то есть, если не указано, что округлять - всё равно будет округлять до десятых(
Аватара пользователя
~220v
Сообщения: 96
Зарегистрирован: Пн дек 23, 2019 5:56 pm
Благодарил (а): 109 раз
Поблагодарили: 18 раз

Re: Округление значений датчиков температуры, влажности и атм. давления

Сообщение ~220v » Вс июл 05, 2020 10:08 pm

xor писал(а):
Пт июл 03, 2020 7:19 pm
то есть, если не указано, что округлять - всё равно будет округлять до десятых(
Ну да, результат хоть какой-то надо иметь... Можно и 2, оно оставит как было. У меня другая идея, вот если б на этапе проверки можно было узнать тип датчика и для каждого типа установить своё округление по дефолту:

Код: Выделить всё

if ($this->class_title == 'STempSensors')
if ($this->class_title == 'SHumSensors') 
Аватара пользователя
xor
Сообщения: 2038
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 284 раза
Поблагодарили: 629 раз

Re: Округление значений датчиков температуры, влажности и атм. давления

Сообщение xor » Вс июл 05, 2020 11:20 pm

~220v писал(а):
Вс июл 05, 2020 10:08 pm
xor писал(а):
Пт июл 03, 2020 7:19 pm
то есть, если не указано, что округлять - всё равно будет округлять до десятых(
Ну да, результат хоть какой-то надо иметь... Можно и 2, оно оставит как было.
проще всего и нагляднее - если не указано округление (пусто), то и не округлять
За это сообщение автора xor поблагодарили (всего 2):
~220v (Вс июл 05, 2020 11:57 pm) • Yevgen16 (Пн окт 03, 2022 8:53 am)
Рейтинг: 2.33%
Аватара пользователя
adzam
Сообщения: 602
Зарегистрирован: Сб дек 08, 2012 10:28 pm
Откуда: Кишинев
Благодарил (а): 20 раз
Поблагодарили: 138 раз

Re: Округление температуры из Modbus по TCP

Сообщение adzam » Ср сен 14, 2022 12:21 am

Logrus писал(а):
Чт июл 02, 2020 8:01 pm
Снимок.PNG
и округляй перед записью
А код не подскажите , чтоб округлить до 0.
Мои проекты здесь...https://connect.smartliving.ru/profile/41/blog213.htm
Если вам помогло какое-либо мое сообщение - не ленитесь пользоваться кнопкой СПАСИБО.
Logrus
Сообщения: 2079
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 313 раз
Поблагодарили: 457 раз

Re: Округление температуры из Modbus по TCP

Сообщение Logrus » Ср сен 14, 2022 10:39 am

adzam писал(а):
Ср сен 14, 2022 12:21 am
Logrus писал(а):
Чт июл 02, 2020 8:01 pm
Снимок.PNG
и округляй перед записью
А код не подскажите , чтоб округлить до 0.
тз до нуля не понятно, до целого
$валуе = раунд($валуе); //ну естественно на латинице
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Ответить