cancel
Showing results for 
Search instead for 
Did you mean: 

Modbus Server with Unit Ids

Modbus Server with Unit Ids

star_board
Established Member

Hello!

I need to create a Modbus server that allows me to define multiple unit IDs for the same IP address and port. This will enable reading data from multiple unit IDs through a single connection.

I have looked into the ctrlX Modbus App, as well as the PLC Engineering library CXA_ModbusTCP, but neither offers the option to define unit IDs.

Is there an alternative solution to address this issue?

Thanks in advance! 😊

3 REPLIES 3

cc2go
Occasional Contributor

Hello,

you're planning to run a ModbusTCP Server with multiple Unit IDs, currently the Modbus TCP App supports one Unit ID, not multiple. And one instance only currently. The library doesn't provide it. I assume, it's because in Modbus TCP normally Unit ID is default 255 and Unit ID is something which was used with Modbus RTU. Is it possible to do the same with different register addresses instead?

With the Modbus TCP App as Client, on adding a new device, it is possible to configure the Unit ID. You have to configure for each Unit ID an individual device. We tested this with a device which supports Unit ID.

with the library CXA_ModbusTCP each function code function block offers an input for the Unit ID for Client functionality.

Please share version of the Modbus TCP App and library CXA_ModbusTCP you used for testing.

star_board
Established Member

I am using:

  • CXA_ModbusTCP 2.6.0.0
  • Modbus TCP App 2.6.3

Thanks for the answer! Based on it, I understand that there currently isn't a solution for creating a Modbus Server that takes unit IDs into account, correct?

"Is it possible to do the same with different register addresses instead?"

  • No, because the current plan is to use this Modbus server to replicate the server from real equipment for testing purposes. Therefore, I can't modify the Modbus interface.

Could someone just confirm this quickly? 
"Based on it, I understand that there currently isn't a ctrlX solution for creating a Modbus Server that takes unit IDs into account, correct?"

Icon--AD-black-48x48Icon--address-consumer-data-black-48x48Icon--appointment-black-48x48Icon--back-left-black-48x48Icon--calendar-black-48x48Icon--center-alignedIcon--Checkbox-checkIcon--clock-black-48x48Icon--close-black-48x48Icon--compare-black-48x48Icon--confirmation-black-48x48Icon--dealer-details-black-48x48Icon--delete-black-48x48Icon--delivery-black-48x48Icon--down-black-48x48Icon--download-black-48x48Ic-OverlayAlertIcon--externallink-black-48x48Icon-Filledforward-right_adjustedIcon--grid-view-black-48x48IC_gd_Check-Circle170821_Icons_Community170823_Bosch_Icons170823_Bosch_Icons170821_Icons_CommunityIC-logout170821_Icons_Community170825_Bosch_Icons170821_Icons_CommunityIC-shopping-cart2170821_Icons_CommunityIC-upIC_UserIcon--imageIcon--info-i-black-48x48Icon--left-alignedIcon--Less-minimize-black-48x48Icon-FilledIcon--List-Check-grennIcon--List-Check-blackIcon--List-Cross-blackIcon--list-view-mobile-black-48x48Icon--list-view-black-48x48Icon--More-Maximize-black-48x48Icon--my-product-black-48x48Icon--newsletter-black-48x48Icon--payment-black-48x48Icon--print-black-48x48Icon--promotion-black-48x48Icon--registration-black-48x48Icon--Reset-black-48x48Icon--right-alignedshare-circle1Icon--share-black-48x48Icon--shopping-bag-black-48x48Icon-shopping-cartIcon--start-play-black-48x48Icon--store-locator-black-48x48Ic-OverlayAlertIcon--summary-black-48x48tumblrIcon-FilledvineIc-OverlayAlertwhishlist