Controlling a Mitsubishi VFD with a Micrologix 1400 via Modbus - at a loss.

Join Date
Nov 2013
Location
Michigan
Posts
532
So, here's my hardware:

Micrologix 1400 controller
Mitsubishi E740 Drive

I'm communicating via the 1763-NC01 out of Channel 0 on the Micrologix.

My settings for Channel 0 are:

Modbus RTU Master
Baud: 9600
Parity: EVEN
Stop Bits: 1
Data Bits: 8
No Handshaking (485 Network)

The parameters in the Drive I changed are:

117 - 100 (Station number)
118 - 96 (9600 Baud)
120 - 2 (Even Parity, 1 Stop Bit)
122 - 2.5 (Check Time Interval)
549 - 1 (Modbus RTU)

I'm going through the RJ45 connector on the E700 drive. According to the manual, the pinout is as follows:

1 - SG Earth (Ground)
2 - Power for HIM
3 - RDA (Receive +)
4 - SDB (Send -)
5 - SDA (Send +)
6 - RDB (Receive -)
7 - SG Earth (Ground)
8 - Power for HIM

I'm using a T568B patch cord I cut one end off to have flying leads, and this is how I have it hooked up to the NC01:

NC01 Terminal "Term" - Nothing connected
NC01 Terminal "A" - RJ45 Pins 3 and 5 (RDA & SDA)
NC01 Terminal "B" - RJ45 Pins 4 and 6 (RDB & SDB)
NC01 Terminal "Com" - RJ45 Pins 1 and 7 (Earth Ground)
NC01 Terminal "Shld" - Nothing connected
NC01 Terminal "GND" - Ground

I have tried swapping the "A" and "B" leads. It makes no difference.

Now, onto the program. I've attached it to this post. Currently I have several MSG statements but I'm keeping all but one from scanning right now. Once I get that one to work, I can work on coordinating the others more.

My settings for the MSG are as follows:

Channel: 0 (integrated)
Modbus Command: 03 (Read Holding Registers 4xxxxx)
Datatable Address: N40:3
Size: 5
Data: 16 bit

Target Device
Message Timeout: 2
Modbus data address: 201
Slave Node Address: 100
Modbus Address: 40201 (this field is read-only)


The problem I'm having is that my message is timing out. I'm getting Error code 37 (Messaged timed out in local processor).

According to the Mitubishi manual, address 40201 is the starting address of a number of drive status registers, like volts, amps, etc.

At this point, I don't know what more I can do. Anyone have any ideas? Anything I could try?
 
What I would do is connect to a computer and try a simulator package on both the master and slave unit.
Simulator such as: http://www.plcsimulator.org/
The computer will need a usb to rs485 adapter.
http://www.automationdirect.com/adc/Shopping/Catalog/Communications/Serial/Serial_Isolators_-a-_Converters/USB-485M

This will quickly prove if each unit will communicate or not. If both will communicate then it must be the cable.

Hope this helps,

Do you think I could use a 1747-UIC as my adapter?
 
The 1747-UIC is DH485. DH485 is a protocol like Modbus. RS485 is an electrical specification for the physical layer connections. They are not related or compatible.

Regards,
 
It is probably going to be a simple setting or wiring issue.

I would start by just trying to read one 16 bit address, trigger it every half a second or so.

Looking at your program, I notice that you have message control logic to trigger the message, but then you also examine the EN bit of the message on the MSG rung. That could lead to multiple messages being fired off during each step of the message sequence. This is a side issue since none of them are working, just something to consider when you get the basic comms sorted.

With Modbus, there are a handful of common PITA that I always have to solve by trial and error. Is it zero or one based addressing? What is the byte order? Does the device send negative ack responses when there is a problem? Do I need an inter-character delay? Response delay?

The last one I had to sort out was Modbus to a Yaskawa iQPump 1000 VFD and they list their Modbus addresses in hexadecimal. A typo in their manual said the default number of stop bits was zero, which I found odd. That was not accurate using the VFD keypad I found it to be the more normal "1" stop bit. I thought I had it all sorted out and was starting and stopping the VFD, but my real values I was reading were whacked. That was when I found I needed to change the word order for 32 bit values. Luckily, I was using an Automation direct PLC that let me uncheck a tickbox and fix that without breaking other stuff.

It is like being a safe cracker...getting all the tumblers aligned...
 
I'm running the simulator and the comms from the Micrologix are fine. I can read and write registers between my simulator on my laptop and my PLC no problem. But now I have the drive hooked up and I'm wondering how I can issue a read command from the simulator.
 
Okay, I got everything working. The original drive I used I think had something wrong with it. Some parameter or parameters set. Anyway, I hooked it all up this morning and it started talking without issue. My only guess is that I missed a power cycle somewhere. I was able to go forward, reverse, stop, and change speed over Modbus. Thanks for the advice!
 
So, here's my hardware:

Micrologix 1400 controller
Mitsubishi E740 Drive

I'm communicating via the 1763-NC01 out of Channel 0 on the Micrologix.

My settings for Channel 0 are:

Modbus RTU Master
Baud: 9600
Parity: EVEN
Stop Bits: 1
Data Bits: 8
No Handshaking (485 Network)

The parameters in the Drive I changed are:

117 - 100 (Station number)
118 - 96 (9600 Baud)
120 - 2 (Even Parity, 1 Stop Bit)
122 - 2.5 (Check Time Interval)
549 - 1 (Modbus RTU)

I'm going through the RJ45 connector on the E700 drive. According to the manual, the pinout is as follows:

1 - SG Earth (Ground)
2 - Power for HIM
3 - RDA (Receive +)
4 - SDB (Send -)
5 - SDA (Send +)
6 - RDB (Receive -)
7 - SG Earth (Ground)
8 - Power for HIM

I'm using a T568B patch cord I cut one end off to have flying leads, and this is how I have it hooked up to the NC01:

NC01 Terminal "Term" - Nothing connected
NC01 Terminal "A" - RJ45 Pins 3 and 5 (RDA & SDA)
NC01 Terminal "B" - RJ45 Pins 4 and 6 (RDB & SDB)
NC01 Terminal "Com" - RJ45 Pins 1 and 7 (Earth Ground)
NC01 Terminal "Shld" - Nothing connected
NC01 Terminal "GND" - Ground

I have tried swapping the "A" and "B" leads. It makes no difference.

Now, onto the program. I've attached it to this post. Currently I have several MSG statements but I'm keeping all but one from scanning right now. Once I get that one to work, I can work on coordinating the others more.

My settings for the MSG are as follows:

Channel: 0 (integrated)
Modbus Command: 03 (Read Holding Registers 4xxxxx)
Datatable Address: N40:3
Size: 5
Data: 16 bit

Target Device
Message Timeout: 2
Modbus data address: 201
Slave Node Address: 100
Modbus Address: 40201 (this field is read-only)


The problem I'm having is that my message is timing out. I'm getting Error code 37 (Messaged timed out in local processor).

According to the Mitubishi manual, address 40201 is the starting address of a number of drive status registers, like volts, amps, etc.

At this point, I don't know what more I can do. Anyone have any ideas? Anything I could try?
I am trying to setup the master and slave for my ML1400 PLC using 2 core ( Tx-1 & Rx-1) RS 485 modbus communication. I received the data as my ML1400 channel 0 set as Modbus RTU master. I am trying to send my data with the same RS485 communication. How to setup the message instruction for that.

Can you please help me to resolve this
 

Similar Topics

Afternoon all, I'm working on setting up a large excel recipe table for porting updates through the Linx Gateway RTD/DDE function into my recipe...
Replies
2
Views
110
Compactlogix controller, program has 28 conveyors that use TON's to start the conveyors. The TT sounds a warning horn during start and the DN...
Replies
10
Views
485
I'm a Manufacturing Engineer with limited PLC experience and I am doing some research for our Controls Department. Does anyone have experience...
Replies
4
Views
178
Good Evening , I should know more about Solid State Relays . I have a system with 8) 120 vac Vibrators . These Solid State Relays have...
Replies
24
Views
2,045
Hi All, I am facing one issue with the SEW MDX61B drive. Issue- I want to run a conveyor with this drive in two directions but it runs in...
Replies
0
Views
339
Back
Top Bottom