Znaleziono 4 wyniki

autor: cspna06
29 mar 2018, 11:21
Forum: Arduino, Raspberry pi i inne systemy mikroprocesorowe
Temat: RaspberryPi +Modbus
Odpowiedzi: 7
Odsłony: 3594

Re: RaspberryPi +Modbus

Udało się rozwiązać problem!
Otóż płytka Modbus ma trochę inne oznaczenia gniazd: A/- i B/+. W tym przypadku kabelki muszą być podłączone krzyżowo:
A -> B/+, B -> A/-

Dzięki za pomoc, pozdrawiam :)
autor: cspna06
06 mar 2018, 16:55
Forum: Arduino, Raspberry pi i inne systemy mikroprocesorowe
Temat: RaspberryPi +Modbus
Odpowiedzi: 7
Odsłony: 3594

Re: RaspberryPi +Modbus

Według informacji od konsultanta technicznego Kamstrup, płytkę Modbus RTU wystarczy tylko włożyć do licznika Multical i jest gotowa do użytku, a parametry połączenia dobieram z dokumentacji technicznej - tam są opisane jako domyślne.
autor: cspna06
06 mar 2018, 09:17
Forum: Arduino, Raspberry pi i inne systemy mikroprocesorowe
Temat: RaspberryPi +Modbus
Odpowiedzi: 7
Odsłony: 3594

Re: RaspberryPi +Modbus

Ok, spróbuję, aczkolwiek może to trochę potrwać, bo liczniki są 200km ode mnie.
Terminacji nie próbowałem, ponieważ wyczytałem, że stosuje się ją przy transmisji danych na większe odległości. W moim przypadku odległość Raspberry od licznika to max 5m.

Dodam jeszcze, że użyte parametry są domyślnymi wg dokumentacji płytki Modbus RTU. Poniżej log z programu mbpoll:

$ sudo mbpoll -a 41 -b 19200 -t 4:float -r 256 -0 -c 16 -s 1 -d 8 -P even -v /dev/ttyAMA0

mbpoll 1.0-0 - FieldTalk(tm) Modbus(R) Master Simulator
Copyright (c) 2015 epsilonRT, All rights reserved.
This software is governed by the CeCILL license <http://www.cecill.info>

Opening /dev/ttyAMA0 at 19200 bauds (E, 8, 1)
Protocol configuration: Modbus RTU
Slave configuration...: address = [41]
start reference = 256, count = 16
Communication.........: /dev/ttyAMA0, 19200-8E1
t/o 1.00 s, poll rate 1000 ms
Data type.............: 16-bit register, output (holding) register table

-- Polling slave 41... Ctrl-C to stop)
[29][03][01][00][00][10][43][D2]
Waiting for a confirmation...
ERROR Connection timed out: select
Read output (holding) register failed: Connection timed out

Są jeszcze jakieś inne pomysły?
autor: cspna06
05 mar 2018, 21:12
Forum: Arduino, Raspberry pi i inne systemy mikroprocesorowe
Temat: RaspberryPi +Modbus
Odpowiedzi: 7
Odsłony: 3594

RaspberryPi +Modbus

Witam,
Mam za zadanie zczytać dane z licznik Multical 602 (w płytką Modbus RTU http://www.multical.hu/MODBUS_datasheet.pdf). Próbuję do tego wykorzystać RPi3 z dodatkowym shieldem https://botland.com.pl/raspberry-pi-hat ... i-2bb.html.

Wcześniej nie mając do dyspozycji licznika Multical, symulowałem go za pomocą drugiego komputera z konwerterem USB -> RS485 i komunikacja działała bez zarzutów. Po podłączeniu RPi kablem do licznika ciepła nie mam możliwości skomunikować się z tym urządzeniem korzystając z domyślnych parametrów. Bawiłem się też zmianą tych parametrów i nic.

Próbowałem już skrypt przygotowany w Pythonie:

from pymodbus.client.sync import ModbusSerialClient as ModbusClient

client = ModbusClient(method='rtu', port='/dev/ttyAMA0', timeout=1, stopbits = 1, bytesize = 8, baudrate=19200, parity='E')
conn = client.connect()

rr = client.read_holding_registers(0x0100, 16, unit=41)


ponadto korzystałem z programu mbpool https://github.com/epsilonrt/mbpoll , komenda:
sudo mbpoll -a 4 -b 19200 -t 4 -r 0x0100 -c 16 -s 1 -d 8 -P even -v /dev/ttyAMA0

W każdym przypadku otrzymuję błędy typu:
"Read output (holding) register failed: Connection timed out"
"No response received from remote host"

Może ktoś spotkał się wcześniej z czymś takim i byłby mi w stanie pomóc? :D

Wróć do „RaspberryPi +Modbus”