Hello there, i have some problems with node-re modbus connection via rs485. i have conencted raspberry to Yada dcm6636 energy meter via rs485 port. The port open and communicate each other but in node-red no values come and it give time out error. is there know this problem’s solution anyone
Welcome to the Opto22 Forums!
Modbus is, as you are probably aware. is a bit of a mess. Lots of different ways to implement the same ‘standard’.
Generally the meter manual will get you started.
I did not get very many hits on Google looking for that meter model, so hopefully you have a manual on hand.
You mention you are using a Raspberry Pi, not a groov device, so that part of it we can’t help.
You mention RS485, but not the USB to serial model number and if it has Tx/Rx LEDs and if they are flickering, so we are not sure if even on the most basic level if Node-RED can see your adapter and the Linux device driver etc is loaded.
Usually after that, be sure you have the power meter device ID and confirm it. (Don’t just guess or presume, you have around 254 possible addresses, you could be guessing for a while).
Once you have that, then you need to look at byte order and address or address +1, the usual Modbus tricks.
Hello Beno, although the documentation of the energy meter I mentioned is shown in this document:
S23120077-02 说明书 DCM3366D-J 电子式直流电能表 雅达中英文 A5装订成册 (2).zip (561.8 KB)
, the communication LED between the two is on, but I cannot see any value. and it give timed out error
I can not unzip or view that document, but it sounds like you know where to start.
A timeout means you are not connecting with the meter. So start there.
Check your /dev directory and see if your USB to RS485 adapter is even showing up. What TTY port does it connect to. What does it show up in Node-RED as. Check your baud rates etc.
Ok, I got the zip file to open…
Default baud rate is 2400 and Even parity, no stop bit.
And it looks from here like the Modbus device ID is 1.
I am assuming that you have not changed any of those from the meters programming interface.
Assuming that your USB to RS484 adapter is found by the Linux running on the Raspberry Pi and has a USBTTY device, then you should setup your Node-RED Modbus node for those settings and start checking for Modbus data.
Looking at the register addresses…
You would need to be looking at 2000 hex register. You can put that in the Node-RED node and see what data comes back.
Thanks for response Beno, I can communicate mid meter and raspberry pi with node-red but no value comes my debug screen just timed out error
this is my modbus read configuration boud rate and parity is true. Is it possible my address is wrong
A timeout means that you are not communicating with the meter.
Do you have SSH setup on the Pi?
You need to start at the USB to RS485 converter. Make sure that is showing up in the /dev correctly and what serial device number it is being mapped to.
Forget Node-RED for now. Start with the serial adapter as I have mentioned a few times.