Как прочитать значение как определенный тип данных (с плавающей запятой вместо UINT16) с помощью клиента Python OPC-UA?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как прочитать значение как определенный тип данных (с плавающей запятой вместо UINT16) с помощью клиента Python OPC-UA?

Сообщение Anonymous »

Снимок экрана из OPC QUICK CLIENT
Я работаю с клиентом Python OPC-UA для получения значений с сервера OPC UA. Я столкнулся с проблемой, когда мне нужно убедиться, что я получаю эти значения как числа с плавающей запятой. Используя быстрый клиент OPC, я подтвердил, что сервер хранит значения в различных типах данных, включая числа с плавающей запятой, поэтому их действительно можно читать как таковые.
Однако я изо всех сил пытаюсь получить значение в виде числа с плавающей запятой напрямую с помощью библиотеки Python OPC-UA. Вот что я пробовал:
Вызов get_value() без указания типа данных, что не гарантирует получение значения в виде числа с плавающей запятой.
Я пробовал указать тип данных напрямую в вызове метода get_value() (как get_value(datatype=ua.VariantType.Float)), но получил ошибку, что get_value() не принимает аргумент «тип данных».
Вот фрагмент кода, над которым я работаю с:

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

from opcua import Client
import logging
from opcua import ua

# Setup logging to debug level
# logging.basicConfig(level=logging.DEBUG)

url = "opc.tcp://xxx:1111"
client = Client(url)

try:
client.connect()
print("Client connected to:", url)

node_id = "ns=2;s=xxx_lf_V.Rpc.30043"
node = client.get_node(node_id)
current_value = node.get_value()
print("Current value from node:", current_value)

except Exception as e:
print(f"Error accessing node {node_id}: {str(e)}")

finally:
client.disconnect()
print("Client disconnected")
Учитывая, что сервер хранит значения в виде чисел с плавающей запятой, как я могу правильно получить эти значения в виде чисел с плавающей запятой с помощью клиента Python OPC-UA? Пожалуйста, посмотрите прикрепленную фотографию, на которой показано, что мне действительно удалось получить один и тот же регистр в разных типах данных с помощью приложения быстрого клиента. Будем очень признательны за любую помощь или предложения о том, как правильно с этим справиться!
как точно получить значение с сервера OPC в типе данных, отличном от того, который я получаю сейчас

Подробнее здесь: https://stackoverflow.com/questions/784 ... using-pyth
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»