I’m in the preparatory phase of drawing my domotic architecture block diagram.
I see OH is compatible with Modbus RTU devices.
From a previous project, I’ve got 6 pcs of:
8DO 4DI 8AI RS485 Modbus RTU Multifunction Relay Module PLC IO Expanding Board 4-20MA 0-10V Current Voltage Collector
to be used to manage sensors and actuators for windows, shutters, heating and cooling, and all the I/O I intend to use.
The above cards are capable of a top speed of 115200 kb/s.
OH will be hosted on Rpi4 or a similar micro industrial PC with a USB-485 adapter.
My question: I see many posts related to connecting a single Modbus device (energy meters and so on), but what are your thoughts on a network of Modbus cards managing the I/O?
Is there any problem you can foresee from your experienced standpoint?
Thanks for the support
- Platform information:
- Hardware: CPUArchitecture/RAM/storage
- OS: what OS is used and which version
- Java Runtime Environment: which java platform is used and what version
- openHAB version:
- Issue of the topic: please be detailed explaining your issue
- Please post configurations (if applicable):
- Items configuration related to the issue
- Sitemap configuration related to the issue
- Rules code related to the issue
- Services configuration related to the issue
- If logs where generated please post these here using code fences:
I would get Modbus TCP gateways and connect your RTU devices to OH using these gateways. I had some RTU devices which I connected to OH via these gateways and noticed that Modbus TCP is much faster than RTU. I assume that you have connected all your RTU devices using the Daisy chain method. In case you decide to expand your Modbus RTU network the cabling could become a problem. With Modbus TCP you would have much more freedom because these Modbus TCP gateways are connected to your internet switch or router. I have used Moxa Mgate gateways which are very reliable and you can get them easily from Ebay.
Ciao Jari, thanks for the reply.
I preferred the RTU hardware over TCP to simplify the network, avoiding switches and the star configuration that TCP requires. The house was built in early '90, I got small cable pipes in the wall tracks. I can manage RTU with 4*0.75sqmm+shield (24Vdc+485) instead of a cat5 cable+power supply line.
Having a 2-floor house, I use a 485 splitter and a daisy chain for each floor. This way, having to add an I/O card or a Modbus sensor somewhere, I can cut the cable and add the device without pulling any additional line.
What worries me is, as you mentioned, the overall speed. Since I deal with slow processes (temperatures, shutters, safety lock actuators, and so on), I was wondering how easy could be to schedule the pollings prioritizing the real-time ones (e.g. the shutter position during the movement command or the entry phone) over the slow ones (e.g. room temperature sampled every 60s).
I will have second thoughts about the Modbus TCP, reconsidering it if the overall speed of the RTU will cause delay or unacceptable waiting time.
Thanks for the suggestion
I understand that cabling can be an issue. I used Modbus RTU for over 10 years under Homeseer software before changing to TCP. Most of my devices had speed of 38400 and some had 19200. I didn’t have any major problems with the speed. E.g. when controlling a heat pump I could see the action almost immediately when changing e.g. the fan speed. I started to use OH3 almost 2 years ago and I then started to change RS485 gateways (Moxa Nport) to TCP. I’m pretty convinced that the RTU support under OH is far better than under Homeseer. I think you just need to test the RTU under OH and see if it works well enough for your purposes. If not then perhaps you can start making tests with TCP.