Links:
https://www.modbusdriver.com/modpoll.html
Начало:
## Что у нас есть
/dev/ttyS0 - порт 485 на напи
115200 - скорость
полярность:
a +
b -
Для GW modbus:
1 . Создать необходимые директории и файлы:
#/etc/mbusd/mbusd-ttyS0.conf
# Внимание имя конфиг файла должно иметь правильное название
# для mbusd@ttyS1.service файл будет иметь название mbusd-ttyS1.conf и etc.
# а иначе если файла не будет, то сервис запустится с параметрами по умолчанию
mkdir /etc/mbusd
touch /etc/mbusd/mbusd-ttyS0.conf
2. Запуск демона.
systemctl enable mbusd@ttyS0.service
systemctl start mbusd@ttyS0.service
systemctl status mbusd@ttyS0.service
3. Настроить правильно конфиг:
Пример конфига:
https://github.com/3cky/mbusd/blob/master/conf/mbusd.conf.example
Тут нужно поменять :
device = /dev/ttyS3
speed = 115200
maxconn = 100
timeout = 10
pause = 50
wait = 50
default conf:
#############################################
# #
# Sample configuration file for mbusd #
# #
#############################################
########## Serial port settings #############
# Serial port device name
device = /dev/ttyS0
# Serial port speed
speed = 9600
# Serial port mode
mode = 8n1
# RS-485 data direction control type (addc, rts, sysfs_0, sysfs_1)
trx_control = addc
# Sysfs file to use to control data direction
# trx_sysfile =
############# TCP port settings #############
# TCP server address to bind
address = 0.0.0.0
# TCP server port number
port = 502
# Maximum number of simultaneous TCP connections
maxconn = 32
# Connection timeout value in seconds
timeout = 60
######### Request/response settings #########
# Maximum number of request retries
retries = 3
# Pause between requests in milliseconds
pause = 100
# Response wait time in milliseconds
wait = 500
# Reply on Broadcast
replyonbroadcast = no
modpoll:
https://www.modbusdriver.com/modpoll.html
cd /opt
wget https://www.modbusdriver.com/downloads/modpoll.tgz
tar -xvf modpoll.tgx
cd modpoll
mbpoll -b 9600 -p none -m rtu -a 1 -r 515 /dev/ttyS3
modpoll -m tcp -t3 -a1 -r 515 -c 1 192.168.16.153
modpoll -0 -b 9600 -p none -m rtu -a 1 -t 3 -r 512 /dev/ttyUSB0
modpoll -0 -b 9600 -p none -m rtu -a 1 -t 3 -r 512 /dev/ttyUSB1
modpoll -m rtu -a 1 -b 9600 -p none -t 4:int -c 10 /dev/ttyS1
modpoll -m rtu -a 1 -b 9600 -p none -t 4:int -r 1 -c 62 /dev/ttyS1
modpoll -m rtu -a 1 -b 9600 -p none -t 4:int -r 1 -c 1 /dev/ttyS1
modpoll -m rtu -a 1 -b 9600 -p none -t 4:int -r 99 -c 1 /dev/ttyS1
modpoll -m rtu -a 1 -b 9600 -p none -r 1 -c 125 /dev/ttyS1
modpoll -m rtu -a 1 -b 9600 -p none -t 4:hex -r 1 -c 125 /dev/ttyS1
modpoll -m rtu -b 9600 -p none -c 125 -a 1 -r 1 -0 /dev/ttyS1
modpoll -0 -b 9600 -p none -m rtu /dev/ttyS1
modpoll -0 -b 115200 -p none -m rtu -a 2 -t 3 -r 512 /dev/ttyS4
modpoll -m rtu -a 1 -b 9600 -p none -r100 /dev/ttyS1
modpoll -m tcp -a1 -r 100 -c 1 192.168.16.147
Пример конфига:
root@napi-redkoala:~# cat /boot/uEnv.txt
verbosity=7
fdtfile=rk3308-napi-c.dtb
console=ttyS0,1152008
overlays=rk3308-usb20-host rk3308-i2c1-ds1307 rk3308-uart1
#overlays=rk3308-uart1 rk3308-uart2 rk3308-uart3 rk3308-i2c1-ds1338 rk3308-i2c3-m0 rk3308-usb20-host rk3308-spi1-w5500
kernelimg=Image
extraargs=
PM-3112-160
https://www.modbusdriver.com/modpoll.html
mbpoll -0 -b 9600 -P none -a 1 -t 3 -r 515 /dev/ttyUSB0
modpoll -0 -b 9600 -p none -m rtu -a 1 -t 3 -r 515 /dev/ttyUSB0
Настройки портов пример:
stty -F /dev/ttyS3 #посмотреть текущие настройки
stty -F /dev/ttyS3 115200 cs8 -parenb -cstopb #установить настройки