Minimalmodbus ErrorSlave сообщил о недопустимой функцииPython

Программы на Python
Ответить
Anonymous
 Minimalmodbus ErrorSlave сообщил о недопустимой функции

Сообщение Anonymous »

У меня проблема с библиотекой minimodbus. Ведомое устройство не распознает код функции и показывает сообщение об ошибке. Ведомое устройство сообщило о недопустимой функции. Я хочу запросить чтение входного регистра. Я использую Raspberry Pi 4 Model B. Я использую датчик расхода Geolux RSS-2-300WL в качестве ведомого устройства.
Я упомянул код функции = 4.

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

#!/usr/bin/env python3

# Import all library needed
import minimalmodbus
import serial
import time
import logging

# Configuration of the sensor
geolux = minimalmodbus.Instrument('/dev/ttySC0', 1) #(port number, slave ID)
geolux.serial.baudrate = 9600
geolux.serial.bytesize = 8
geolux.serial.parity = serial.PARITY_EVEN
geolux.serial.stopbits = 1
geolux.serial.timeout = 1

# Main Loop
try:
while True:
try:
# Read raw reading for water level
water_level_raw = geolux.read_register(0x0012,2,functioncode=4) #(address register, byte read)
print(f"Raw water level: {water_level_raw}")
Ошибка:
Изображение

Технические данные из руководства к устройству:
Изображение
< /п>

Подробнее здесь: https://stackoverflow.com/questions/792 ... l-function
Ответить

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

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

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

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

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