Bad programmers worry about the code. Good programmers worry about data structures and their relationships
среди успешных людей я не встречала нытиков
Барбара Коркоран
В облаке есть настройки количества знаков после запятой для отображения. По крайней мере для протокола Овен было. Может тоже самое есть и для Modbus протокола?
Это как раз для случая преобразовать float в int на стороне устройства с умножением на 10 например. Но тогда надо в устройстве и обратное преобразование делать при поступлении команды записи со стороны облака.
То есть регистр в устройстве для чтения облаком должен быть именно целым числом.
з.ы. не проверял, не на чем пока.
Вроде как есть в настройках тегов в облаке такие параметры как "Точность отображения" и "Множитель" - попробуйте
изображение_2023-03-26_140817696.png
спасибо за ответ, я пробовал так , но если упаковываешь в биты в пр200 и потом ставишь галочку в овен клауде применять битовую маску , то множитель в овен клауде становится недоступен ( некликабельным ) . Я тоже подумал об этом способе , но почему то так не выходит (
Если упакованные регистры доставать в овен клауде - применять битовую маску становится недоступной так же как и галочка " знаков после точки "
Но этот способ работает если не упаковывавать ,просто с целочисленными , вместо 2 регистров получаем 1 регистр .
Но упаковать не получается и так же сделать .
Последний раз редактировалось shmnpay; 26.03.2023 в 13:11.
Я чайник-самоучка не спорю , но идея такова . Вынуть из пр200 в овенклауд измереное значение датчиков давления и температур , но нужно как то сэкономить регистры .
Я перевел float в int в owen logic , можно ли после этого целочисленные значения упаковать в битовую маску и вынуть уже в овенклауде ? Просто множитель после упаковки не работает в овен клауде .
С булевыми все получилось , упаковать и вынуть там биты ( но там не требуется множитель ) .
Так же все работает без упаковки целочисленных значений .
Последний раз редактировалось shmnpay; 26.03.2023 в 15:11.
Покажите как вы перевели float в int.
При нормальном переводе ничего упаковывать не надо, int после перевода будет занимать один регистр, читаете его в облаке как тип int и всё на этом.
Макросы перевода здесь посмотрите
Последний раз редактировалось 1exan; 26.03.2023 в 16:49.
Я может не правильно выразил свои мысли , я перевел Float в int - получился 1 регистр и так сделал с 8 датчиками , а можно как нибудь после упаковки их в биты , в owen cloud распаковать их способом умножения ( у меня допустим нельзя нажать множитель- кнопку на упакованных регистрах , только если по отдельному целочисленному регистру )
p.s смысл таков 8 датчиков в 1 регистр и вынуть в owencloud по битам способом множителя.