Integrating Bacnet Data with Modbus TCP for Multiple Devices with Node Red

Question:

Hello everyone, I am currently working on integrating Bacnet Data with Modbus TCP using Node Red. At the moment, I am able to send data to Modbus server or flex server with device ID 61. However, I want to expand this to include device IDs such as 62, 63, and so on, utilizing only two holding register addresses: 40001 and 40002. I would greatly appreciate a step-by-step guide on how to achieve this, as my understanding is limited. I will provide my JSON file for Node Red below, excluding the modbus flex server configuration. Your assistance in guiding me through this process would be invaluable. Thank you.

Top Replies

If you are unfamiliar with Bacnet or Node Red, it is important to note that expanding a Modbus request to cover multiple servers may not be possible. Instead, it is recommended to initiate a new request for each Modbus server being targeted. This holds true for both Modbus RTU and Modbus TCP protocols. By utilizing a for-loop or similar function in Node Red, you can generate multiple requests that access the same registers with unique addresses. In my experience, I have never encountered two servers within a network that share the same registers.

Hi there, it sounds like you're making good progress already. You're right that with Flex Server, you can dynamically assign the unit IDs. You should be able to call multiple devices just by using different unit IDs, given that the "Core" property in your flow config is set to those unit IDs respectively. So, for device 62, your function node should update msg.payload.unitid to be 62 before sending to the Modbus flex server, and similarly for 63, etc. If you give me more context about your setup and how you're defining these register addresses in your function node, I may be able to guide you more.

Hi there! It sounds like you might need to use an iterative loop approach within your Node Red flow to cycle through different device IDs while keeping the register addresses constant. Also, make sure you're addressing the devices correctly under the Modbus protocol, where device addresses typically start at 0, not 1. This might mean your desired addresses correlate to 40000 and 40001 instead. If you're unfamiliar with creating loops in Node Red, I'd recommend checking out some beginner tutorials on this topic. I look forward to taking a look at your JSON file to better understand your current setup and provide more tailored advice. Cheers!

Hey there! It sounds like you're on an exciting project with Node Red! To expand your Modbus TCP to include those additional device IDs using just the two holding register addresses, you might want to consider using a function node in Node Red to dynamically modify the payload based on the device ID before sending it to the Modbus server. You can set up the function node to check the device ID and bundle the data accordingly into a single message for registers 40001 and 40002. Make sure your Modbus node is configured for multiple writes if needed. If you’re unsure how to structure the function, I can help with a sample snippet! Let me know if that helps!

More Replies β†’

Streamline Your Asset Management
See How Oxmaint Works!!

βœ…   Work Order Management

βœ…   Asset Tracking

βœ…   Preventive Maintenance

βœ…   Inspection Report

We have received your information. We will share Schedule Demo details on your Mail Id.

To add a comment, please sign in or register if you haven't already..   

Frequently Asked Questions (FAQ)

FAQ: 1. How can I integrate Bacnet Data with Modbus TCP for multiple devices using Node Red?

Answer: Answer: To integrate Bacnet Data with Modbus TCP for multiple devices using Node Red, you can use two holding register addresses (e.g., 40001 and 40002) and specify different device IDs (e.g., 61, 62, 63, etc.). You may need to adjust your JSON file configuration in Node Red accordingly.

FAQ: 2. Can you provide a step-by-step guide on expanding the integration to include device IDs 62, 63, and beyond?

Answer: Answer: To expand the integration to include device IDs such as 62, 63, and beyond, you can modify your Node Red configuration to handle communication with different device IDs while utilizing the same holding register addresses. Adjusting the JSON file and ensuring proper mapping of device IDs to Modbus addresses is key.

FAQ: 3. How can I configure Node Red to send data to Modbus servers or flex servers with multiple device IDs?

Answer: Answer: You can configure Node Red to send data to Modbus servers or flex servers with multiple device IDs by customizing your JSON file settings to accommodate communication with different device IDs. Ensure that your configuration is set up to handle the data exchange effectively between Bacnet Data and Modbus TCP for each device ID.

Ready to Simplify Maintenance?

Join hundreds of satisfied customers who have transformed their maintenance processes.
Sign up today and start optimizing your workflow.

Request Demo  β†’