Seite 1 von 1

Modbus Herausforderung für einen Neuling

Verfasst: Dienstag 6. März 2018, 15:19
von hudyhud
Hallo zusammen,

vom Prinzip möchte ich einen Sensor über eine RS485 Schnittstelle mit dem RPi3 auslesen.
Meine Versuche über die unterschiedlichen Pakete war erfolglos. Naja aufgeben möchte ich noch nicht.
Aktuell bin ich mit dem Paket minimalmodbus am werkeln.

Was ich dazu verwende:
Rpi3 mit folgender Platine
https://www.pollin.de/p/joy-it-rs485-br ... rry-810833

Der Sensor hat folgende Eigenschaften:
Register:40001
Adresse Sensor: 1
Messmodus (0x03) Read Holding Registers
Data Type: float (double word)
length: 2
R/W: r
Baudrate: 19200
Bytes: 8
Stopbits:1
P:None
BigEndian

Code: Alles auswählen

#python 2.7
import minimalmodbus
#import binascii
import time
import serial


instrument = minimalmodbus.Instrument('/dev/ttyAMA0',1) #modbusAddress)
instrument.serial.baudrate = 19200
instrument.serial.bytesize = 8
instrument.serial.parity   = minimalmodbus.serial.PARITY_NONE
instrument.serial.stopbits = 1
instrument.serial.timeout  = 3.0
instrument.debug = False
instrument.mode = minimalmodbus.MODE_RTU

data = instrument.read_registers(registeraddress=40001,
                                 numberOfRegisters=2 functioncode=4)

#read_float(registeraddress, functioncode=3, numberOfRegisters=2)
t2 = instrument.read_float(40001, 3, 2)

t1 = instrument.read_register(40001, 2, 3)
Ich muss dazu sagen, dass mir die Struktur noch fehlt.
Mit mit den drei Varianten wollte ich probieren wenigstens überhaupt einen Wert zu bekommen. Fehlanzeige.
Hat jemand von Euch einen Tipp, wie ich der Lösung etwas näher kommen könnte? :K
Oder kann es auch an der Schnittstelle vom RPI liegen? (UART )
Vielen Dank schon mal.

Re: Modbus Herausforderung für einen Neuling

Verfasst: Dienstag 6. März 2018, 15:48
von __deets__
Hast du die serielle Schnittstelle aktiviert? Dazu muss ein overlay in die config.txt aufgenommen, das seinerseits den BlueTooth controller deaktiviert - weil der sich auf die Schnittstelle klemmt. Wenn man das nicht macht, dann bekommt man eine serielle Schnittstelle die leider keinen stabilen Takt hat und damit fuer praktische Anwendungen nutzlos ist.

Re: Modbus Herausforderung für einen Neuling

Verfasst: Dienstag 6. März 2018, 15:56
von hudyhud

Code: Alles auswählen

# NOOBS Auto-generated Settings:
hdmi_force_hotplug=1
enable_uart=1
dtoverlay =pi3-miniuart-bt
Meinst du diesen dtoverlay ?
Sollte soweit passen. Bei der /dev/... habe ich nur diese beiden "Schnittstellen" verfügbar ttyAMA0 und serial0.

Re: Modbus Herausforderung für einen Neuling

Verfasst: Dienstag 6. März 2018, 16:08
von __deets__
Ich habe

dtoverlay=pi3-disable-bt.dtb

aber gerade mal in die Kernelquellen geschaut - ja, auch deins scheint richtig zu sein.

Ansonsten wuerde ich halt nen Oszi anhaengen & mir anschauen, ob und was da so ueber die Leitung geht. Weiter auskennen mit modbus tu ich mich leider nicht, gegebenenfalls hast du da mehr Erfolg im deutschen Raspberry-PI-Forum, da sind mehr Hardwarenahe Leute unterwegs als hier.

Re: Modbus Herausforderung für einen Neuling

Verfasst: Dienstag 6. März 2018, 18:34
von hudyhud
Vielen Dank schon mal. Zuvor hatte ich in der Datei etwas gelöscht. Vill ist dies das Porblem.