MODBUS TCP / RS 485 Question

richleva

Member
Join Date
Sep 2012
Location
ontario
Posts
79
Hello!!

I have a question for you guys, I understand that you can only enable one Message Instruction at a time. I had to use counters and timers to create a sequential order to make this work on the Modbus RS485 network channel,

But now we will need to add Modbus TCP. Therefore, we will be using a different comm port (ethernet TCP IP Port), Will these new MSG instruction need to follow the sequential order from the Modbus RS485 Network? Or, Since I’m using a different port to communicate, I don’t need to follow the existing Message instruction order ?

Thanks guys
 
Do you mean that when you send a request you have to wait to get the response before to send a new request ?

And my response is using RS-485 or RS-422 the answer is yes, you need to wait for response each time.

But with MODBUS TCP the master on each request puts a sequential identifier that the responding slave copies and return back in the response, then the master can identify to which request corresponds.
Theorically with this system the master can send several request in row in a asynchronous way without waiting for each response, but that doesn't mean all slaves will work well this way, the only way to know is testing.

And it does not mean that the transmission speed will improve much in all cases.

Hope it will help
 
Do you mean that when you send a request you have to wait to get the response before to send a new request ?

And my response is using RS-485 or RS-422 the answer is yes, you need to wait for response each time.

But with MODBUS TCP the master on each request puts a sequential identifier that the responding slave copies and return back in the response, then the master can identify to which request corresponds.
Theorically with this system the master can send several request in row in a asynchronous way without waiting for each response, but that doesn't mean all slaves will work well this way, the only way to know is testing.

And it does not mean that the transmission speed will improve much in all cases.

Hope it will help

So yes That's exactly what I mean. So the RS484/RS422 port is different, right? Can the RS484/Rs422 Port send and receive a Message at the same time as the Modbus TCP Port ? since they are two different ports and networks..?
 
RS-485 is a half-duplex comm , it can't send and receive at same time because the same transmission pair is used in both directions.

RS-422 can transmit and receive at same time but this is 100% true only if it's a 1 to 1 communication,
If it's 1 to N (1 master and several slaves) if more than one salve try to respond at same time the collision is assured.
 
RS-485 is a half-duplex comm , it can't send and receive at same time because the same transmission pair is used in both directions.

RS-422 can transmit and receive at same time but this is 100% true only if it's a 1 to 1 communication,
If it's 1 to N (1 master and several slaves) if more than one salve try to respond at same time the collision is assured.

Ok and what about the Modbus TCP Port (Ethernet)? can this port transmit and receive while the RS485 port is operating at the same time?

Can the two different ports send and receive at the same time?
 
TCP is a connected socket, it establish a bidirectional channel without restrictions for send and receive at same time.
 
Ok and what about the Modbus TCP Port (Ethernet)? can this port transmit and receive while the RS485 port is operating at the same time?

Can the two different ports send and receive at the same time?

Yes, as far as I know. All the PLCs I have worked with have separate buffers for each port making them independent. Under the hood, there is probably one CPU handling the data transfer to and from the sub-systems, but the programmer generally doesn't need to worry about any of that as long as you don't overload each port. Just make use of the available system tags for each port in your logic, and message instruction bits to ensure the integrity of communications.

With serial communications, I will program a step by step logic scheme to handle the messages one at a time. I might use that same method with Ethernet ports if I need things to complete in a certain order, but if the actual order doesn't matter, just fire them all off at the same time in PLC code with a prescribed delay between repeating them.
 
Last edited:
Yes, as far as I know. All the PLCs I have worked with have separate buffers for each port making them independent. Under the hood, there is probably one CPU handling the data transfer to and from the sub-systems, but the programmer generally doesn't need to worry about any of that as long as you don't overload each port. Just make use of the available system tags for each port in your logic, and message instruction bits to ensure the integrity of communications.

With serial communications, I will program a step by step logic scheme to handle the messages one at a time. I might use that same method with Ethernet ports if I need things to complete in a certain order, but if the actual order doesn't matter, just fire them all off at the same time in PLC code with a prescribed delay between repeating them.


Thanks Again OKiePC !!!
I appreciate it !!
 
Yes, as far as I know. All the PLCs I have worked with have separate buffers for each port making them independent. Under the hood, there is probably one CPU handling the data transfer to and from the sub-systems, but the programmer generally doesn't need to worry about any of that as long as you don't overload each port. Just make use of the available system tags for each port in your logic, and message instruction bits to ensure the integrity of communications.

With serial communications, I will program a step by step logic scheme to handle the messages one at a time. I might use that same method with Ethernet ports if I need things to complete in a certain order, but if the actual order doesn't matter, just fire them all off at the same time in PLC code with a prescribed delay between repeating them.

Modbus TCP can have multiple messages same time, but max connections depends of hardware and manufacturer.
There should be somewhere on manual datasheet how many simultaneus TCP communications is possible for client and server connections.
Server and client connections also can have different limitations.
 

Similar Topics

Dear all When I am using Moxa Mgate 5105 convertor for converting Modbus TCP IP to Modbus serial RS 485 I am getting swapped word as LSB and MSB...
Replies
1
Views
1,382
1. Modbus TCP vs Modbus UDP There is recent mention of Modbus UDP (Modbus over ethernet, but UDP, not TCP) on this thread...
Replies
9
Views
11,680
Dear All, I have to establish the communication between the VIPA PLC CPU315SN-4NE11 & Geo PMAC Motion Controller using the MODBUS RTU Protocol...
Replies
4
Views
9,076
If a device has Modbus RTU over serial and Modbus RTO over TCP and Modbus TCP then there is a difference between Modbus RTU over TCP vs Modbus TCP...
Replies
7
Views
348
Hi There. I have PC to get few tags from PLC into C# windows forms application. What is the best and fastest way? I could not find Omron in...
Replies
3
Views
161
Back
Top Bottom