Showing results for 
Search instead for 
Did you mean: 

Convert dnp3 protocol to modbus

has anyone tried to communicate with a ABB/Baldor controller using Baldor's "Host Comms Protocol"  over a serial connection using Labview? i have Labview running on a laptop with RS232 connection, connected to an RS232 to RS485 converter, then RS485 to the Baldor controller's RS485 serial port.


0 Kudos
Message 1 of 8

Hi Joseph,


Disclosure: I haven't.


But, maybe you can help me (and other forum members) understand the question a little better.


Why is the title 'convert dnp3 protocol to modbus'? You've named a total of five protocols. 3 higher level protocols (HCP, DNP3, Modbus) and 2 implementations of lower level serial communications (RS232, RS485). Which ones are actually relevant for the question? Where do DNP3 and Modbus come in?


From briefly googling HCP, it looks like it's another proprietary protocol built on serial. I didn't see that a Partner has published a toolkit on the LabVIEW Tools Network, nor did I see one on VIPM.

I poked around ABB's motion site for some sort of tool, but didn't get far before it required login credentials.


Perhaps ABB has a DLL that you could call in LabVIEW to communicate over HCP? This would probably be the preferred method.


If not, you probably could just use VISA to read the raw serial data. However, this would leave the parsing of that raw data into meaningful values (e.g. position data from the ABB controller being parsed from the binary serial data) to you. This might require more intimate knowledge of how HCP sends requests and data.

Andrew T.
"His job is to shed light, and not to master" - Robert Hunter
0 Kudos
Message 2 of 8
sorry about some of the confusion. I was trying to start a new subject but instead added to the post about dnp3 and modbus. the problem that I am having is that I want to talk to a ABB/Baldor drive using RS232/RS485. I have text examples of the telegram framing for the Baldor "Host Comms Protocol (HCP)" and I have built a serial application where I am trying to query the value of a Host Comms register using that format. I have RS232 tools that allow me to verify that what I am sending is correct, however the drive is not responding. I have even built a small program in the drive that will send a text message (one word "HELLO") out the serial port but all my labview program receives are the same 4 bytes regardless of the text message that the drive sends. support from Baldor has been little to non-existant. so I was hoping that someone in the Labview community has done this or similar before and could give me some pointers or things to try.
0 Kudos
Message 3 of 8

Do you have a manual that shows HCP commands for the controller (if such a thing exists; this is my first time hearing of HCP)?


Perhaps you could try something basic first, like *IDN? (if the controller implements that). Once you know you can send that message correctly and receive the controller's response, doing more advanced things (like register reads) might be a smaller leap to make.

Andrew T.
"His job is to shed light, and not to master" - Robert Hunter
0 Kudos
Message 4 of 8
I will get what I have together and send. the Baldor's do not recognize *IDN commands only there own and Modbus. in our application, Modbus would be too complicated to implement on the handheld pendant that we intend to control the Baldor with in the near future, if things get that far.
0 Kudos
Message 5 of 8

Does Baldor make a driver or utility program you could use to test communications? It would be useful to make sure we can communicate with the device at all with something we expect to work with it out of the box. Once that is confirmed, we can focus on the LabVIEW / VISA side of things.

Andrew T.
"His job is to shed light, and not to master" - Robert Hunter
0 Kudos
Message 6 of 8
attached is file that describes the HCP telegram. I have created a VI that makes a request for the value in a Comms Array element #23 using VISA serial. I have verified each byte going out matches the examples. the ABB ESB-2 controller does not respond. using the Mint developer environment terminal window, I can view info coming in over the ESB-2's serial port and which is machine code garbage (doesn't make any sense). I have also created a Labview program that uses the ActiveX control included with the ABB/Baldor Mint development environment. I used this second LV program to make the same request for the value in the Comms Array element #23. still no reply from the ESB-2. same garbage displayed in the Mint Developer environment terminal window. note that in both cases, I use a Black Box, company, Data Monitor to view the ascii and hex bytes going over the serial line between the PC and the ESB-2.
0 Kudos
Message 7 of 8

Nothing is attached.

Message 8 of 8