Networking a ML1200 and ML1000...

Eric Nelson

Lifetime Supporting Member + Moderator
Join Date
Apr 2002
Location
Randolph, NJ
Posts
4,346
Hi guys! Yeah, it's been a (long) while, but I'm back!... ;)

I've stayed in the industry, but haven't done much PLC work over the past few years. I just started getting back into machine building, but I'm way out of practice with my AB skills.

Here's the deal...

One of my customers has a labeler with a ML1200 running it. They are adding a feeder bowl to it which is controlled by a ML1000. I need to be able to adjust a handful of timers in the feeder bowl using the Maple Systems HMI on the labeler. I installed a 1761-NET-AIC on each of the PLCs. The AICs are connected to the PLCs via a 1761-CBL-AM00 cable (the one with the mini-DIN connectors on each end) on Port 2 of the AICs. The Maple Systems HMI is connected via RS-232 to Port 1 (the DB-9 connector) on the labeler. The two AICs are connected to each other via DH-485 (Port 3 to Port 3).

A diagram might clarify my setup:

               LABELER                        FEEDER BOWL
+-----------+ +-----------+
ML1500<---->|(2) AIC (3)|<------DH-485------>|(3) AIC (2)|<----> ML1200
| | | |
| (1) | | (1) |
+-----------+ +-----------+
^
|
Maple HMI<--------+



The Maple Systems HMI currently communicates fine with the ML1500 with this setup, and I can connect to the ML1000 with my laptop thru Port 1 of the second AIC. The ML1200 does not have the secondary COM port.

Note: I do NOT need to talk directly to the ML1000 from the HMI, I only need to send a dozen or so integer values (N7:nn) from the ML1500 to the ML1000 (one way).

Now my questions:

The HMI is currently connected using DF1 thru the AIC's serial port. Will I have to move it to the DH-485 network?... :(

What settings do I have to change on the PLCs? I haven't played around with it much yet. I did try changing the ML1000 to node 2, but of course I immediately lost comms. with it... šŸ™ƒ

I still have both PLCs set to DF1 Full Duplex. I assume I'll need to change them both to DH485, or does the AIC do that for me?... :confused:

Sorry for what are probably newbie questions, but I haven't touched any AB stuff in the past 10 years or so... :oops:

Let me know if I need to clarify anything!

šŸ»

-Eric
 
3.gif
 
The title says ML1200 to ML1000. Then the picture shows ML1500 to ML1200.
Then you says ML1500 to ML1000 message.

Two many beers? Or is it me.

All devices are going to have to be configured for DH485.
 
Last edited:
Oops, you're right, Mickey!... šŸ™ƒ

I guess I have ML1500 stuck in my head because that's my PLC of choice when it comes to AB. The title & my first description are correct. There are NO ML1500s in this system.

This is how the picture SHOULD look:
               LABELER                        FEEDER BOWL
+-----------+ +-----------+
ML1200<---->|(2) AIC (3)|<------DH-485------>|(3) AIC (2)|<----> ML1000
| | | |
| (1) | | (1) |
+-----------+ +-----------+
^
|
Maple HMI<--------+

Thanks for the tip about DH485, Mickey. I've been doing some more research and I think I've figured out what I need to do. Hopefully I will have some time to test it tomorrow.

I'll set the channel configuration in both PLCs to use the DH485 driver. I'll set the ML1200 to Node 1, and the ML1000 to Node 2.

THIS PDF shows the settings, etc. for the Maple Systems HMI that I'm using

I'll set the HMI to use DH485, and make it Node 3. It looks like the 'default settings' listed on pages 4-5 of the PDF should be good. The "PLC Default Station Number" would be "1", since I want the HMI to communicate with the ML1200, which is at Node 1.

I've used the Maple Systems HMIs with a number of AB PLCs over the years, but I've always just connected point-to-point using DF1.

I'd welcome any other tips or tricks!... (y)

"beerchug:

-Eric
 
Some would say never use the default node address . Because if you add another node and forget to change its address, then you end up with comm. errors until you scratch your head awhile waiting for the light bulb comes on.:unsure:
 
OK, I played around a bit today without much success... :confused:

For now, I'm ignoring the ML1000. I'm concentrating first on getting the HMI and ML1200 talking. I think once I've got that working, communication to the ML1000 should be easy... šŸ¤žšŸ»

I set up the HMI to use DH485, set its node address to "3", and pointed it to look at node 2. I then configured the ML1200 to use DH485, 19200 Baud, and set the node address to "2". I downloaded the program to the PLC, and got the expected "You will lose comms" message (which I accepted).

The HMI appears to connect fine. If I unplug it from the PLC, I get communication errors, so it must be finding the PLC. Of course, the PLC is still in 'program' mode since I downloaded the new comm settings.

My problem now is... How do I get back online with the PLC with RSLogix? Which driver should I be using in RSLinx? If I press the comm reset button on the PLC, I can connect, but that's only because it's back to default comm settings. How do I connect using DH485???

When connecting via DF1, I have been using the standard 1761-CBL-PM02 cable to connect my laptop to the PLC (Yes, my laptop has a REAL serial port). A regular old null-modem cable from my laptop to Port 1 on the AIC also works fine. I do have a 1761-UIC, but I don't see how using that would be any different.

I'm sure it's just one little thing I'm overlooking, but I've yet to discover what that 'one little thing' is... o_O

šŸ»

-Eric
 
Because your laptop has a real serial port then you can use the 1747-PIC/AIC+ driver in RSLinx. Delete the DF1 driver first.
Make sure RsLinx is not running as a service. Same cables should work.

Your 1747-UIC will also work, some small changes to RSLinx's DF1 driver would have to be made. (i.e. Deivce Type to 1770-KF3/1747-KE) This might be a better choise depending on the operating system of your laptop. The 1747-PIC/AIC+ driver is getting old. But give it a try.

Manual for 1747-UIC if you don't have

http://literature.rockwellautomation.com/idc/groups/literature/documents/in/1747-in063_-en-p.pdf

See PDF below
 
Last edited:
Thanks for the info, Mickey. I'll probably be able to try it tomorrow. FYI, I'm running XP Pro on my trusty ol' T30 laptop.

I just watched Chakorules' video (LINK) over at MrPLC. That pretty much duplicates what you said, so it looks like I should be good to go.

Thanks again! I'll post my results.

šŸ»

-Eric
 
Success and Failure...

I was able to spend a little time on this today. I had no luck using the 1747-PIC/AIC+ driver on my COM port. All I got was something like "failed to initialize PIC". However, I WAS able to connect using my 1747-UIC. Once I got online and switched the processor back to RUN mode, the HMI was finally communicating with the PLC via DH485!... (y)

I then went and connected my laptop to Port 1 of the AIC at the ML1000 end. Sure enough, I was able to see the ML1200 as Node 2. So far, so good. The ML1200, HMI, and both AICs were working. Now to get the ML1000 in the loop. I unplugged the cable from the PLC and connected to it via my COM port using DF1. I went into the channel configuration and changed it to DH485. Upon download, I got the expected 'loss of comm' warning and accepted it. I reconnected the PLC back to the AIC and switched back to using my UIC into Port 1 of that AIC. Whaddya know, I was able to see both the ML1200 AND the ML1000 on the DH485 network. Looking good!... :)

The ML1000 was at Node 1, so I decided to change it to Node 4 so it wouldn't be at the 'default' node. I went online with it and changed the node from 1 to 4. RSLogix said that it would make the change and reconnect at Node 4, so I clicked OK. It made the change, but when it tried to reconnect, it failed. When I tried to go online again, it said "Processor Corrupt". NOT what I wanted to see!... :mad:

When I looked at the network in RSLinx, both of the PLCs would appear and disappear randomly. Since I couldn't get online with the ML1000, I decided to cycle power on everything. The ML1200 came up fine, but the ML1000 now has a blinking FAULT LED. Also, the HMI lost communication with the ML1200. I shut everything down again, and disconnected the DH-485 cable between the AICs. When I powered back up, the ML1200 and HMI are all back to normal (and communicating), but the ML1000 still has the blinking FAULT LED. When I try to connect to the ML1000, RSLinx now sees nothing (I even tried to connect via DF1 with no luck either)... :(

I'm guessing I now have a bricked ML1000? The blinking FAULT LED means a major error, but since I can't connect, and can't view the error code. Is there any way to clear the program on a ML1000, or am I just screwed?

Any ideas on how to revive this ML1000 would be appreciated. I don't have a spare one 'lying around', so I'll have to get a new one ASAP. Let's hope the new one doesn't suffer the same fate... :rolleyes:

šŸ»

-Eric
 
It Works! (for the most part)...

Today's update...

I popped in the replacement ML1000 (why can't they splurge on removable terminal blocks?... :mad:) and c-a-r-e-f-u-l-l-y downloaded the program (direct connect via DF1).

After changing the communication settings in the ML1000, I was able to get the ML1200 talking to both the HMI and the ML1000, but here's the problem. When I plug my laptop into Port 1 of the AIC (using my UIC), both PLCs appear and disappear at random in RSLinx. Sometimes it sees one, sometimes the other, sometimes both, sometimes none. Of course, the HMI also loses connection with the ML1200. As soon as I disconnect my laptop, the network runs fine again.

Upon further investigation, I also discovered that if I unplug the HMI from the AIC, both PLCs are seen fine in RSLinx, with no communication issues. Bottom line is, I can connect the HMI OR my laptop, just not BOTH. I think the problem is that RSLinx doesn't like the non-AB device in the loop. If the HMI was a PanelView, it would probably work fine. Currently, the HMI is set to 8-N-1, but I noticed that RSLinx is set to even parity. I tried changing the HMI to even, but it won't connect at all with that setting. Does anyone know what the correct setting should be for a ML1200?

Oh well, at least the system works the way I need it to, I just have to remember to unplug the HMI to make program changes on the PLCs. Annoying for debugging, but I can live with it.

Now for the next issue:

As I've stated before, the whole reason that I needed to network these 2 PLCs is so that I can change 8 different timer presets in the ML1000 from the HMI. My plan was to have the HMI edit values in the ML1200, then MSG these values to the ML1000. Sounds easy enough, right?

I originally planned to use N:nn values values for the timer presets, but then realized that you can use N values for the timer preset. The timer preset is T4:n/PRE, period. Okay, fine, I'll have the HMI edit the preset values of T4:20 thru T4:27 in the ML1200, then MSG them to the same timers in the ML1000. That works, but it also sends the accumulated values to the ML1000. Since I'm not using these timers in the ML1200, the accumulated values are at zero in the ML1200, and they constantly reset the accumulated values in the ML1000 to zero. In other words, the timers can never reach their preset values. They are constantly reset.

So, before I go down another dead end road, I figured I'd ask here what would be the best method to achieve my goal? My current thought is to have the HMI edit N values in the ML1200, then MSG these values to N registers in the ML1000. In the ML1000, I'll move these N values the the timer's respective preset registers, without touching the accumulated values.

Something like this:
                  ML1200                        ML1000                            ML1000
+-----+ +------------------+ +------------------+ +--------------------------+
| HMI |<--->| N7:20 thru N7:27 |---MSG--->| N7:20 thru N7:27 |---MOV--->| T4:20/PRE thru T4:27/PRE |
+-----+ +------------------+ +------------------+ +--------------------------+



Is there a better (i.e. simpler) way to do this? Remember that the HMI only talks to the ML1200. It can't access the ML1000 directly. The ML1200 is the only one that can talk to the ML1000.

I have to work at Colgate tomorrow, so I won't be working on this again until Wednesday.

šŸ»

-Eric
 
Your method of changing the timer presets should work. If fact I think it is the right way to do it.
The comm problems you describe sounds like conflicting node addresses to me. But I'm not familiar with your HMI.
 
Thanks again for the advice, Mickey. I thought about the conflicting nodes issue, but I KNOW that the HMI is sitting at Node 3. What's odd is that, when the HMI and laptop are on the network, every once in a while RSLinx will show a MicroLogix at Node 3. Like it's saying "something is there, but I don't know what it is"... :confused:

Now that the HMI is communicating with the ML1200 via DH485 instead of DF1, there is a bit of a lag between HMI button presses and PLC response. It's not horrible, but definitely noticeable. I can't go above 19.2 on the baud rate, because that's the max. on the ML1000. Do you think lowering the "Max Node Address" in the ML1200 from 31 to 4 (the highest node in use) might help decrease the lag?

Hopefully I'll have some success tomorrow with the new value transfer method. I'll post back my results.

šŸ»

-Eric
 
What's odd is that, when the HMI and laptop are on the network, every once in a while RSLinx will show a MicroLogix at Node 3. Like it's saying "something is there, but I don't know what it is"...
I suspect RSLinx just does not recognize your Maple System's HMI no "EDS" file. Might check with Maple systmes to see if one exist.

Do you think lowering the "Max Node Address" in the ML1200 from 31 to 4 (the highest node in use) might help decrease the lag?
Don't know but it can't hurt. You can always set it back.
 
I agree with Mickeys last points and also would recommend writing to integers instead of timer presets. Then MOV them into the timer presets only when they are within limits. This avoids faulting the PLC in case a negative value somehow gets stuck in the .pre.

Then, MSG those integers over to the other PLC and MOV them into the presets there too. That should solve the problem of overwriting the .acc values.

And welcome back, Eric!
Paul
 

Similar Topics

I have a client who periodically experiences network communication issues. Sometimes when I VPN into the site, their SCADA systems will flash comm...
Replies
2
Views
170
guys: I have a problem with my IP configuration. my organization networking has 2 subnets. 10.0.0.25 and 10.1.0.25 both under 255.255.255.0 all...
Replies
2
Views
565
I have a question about IP addressing and Networking. I have a PLC with following IP address 10.1.0.120 this is an static PLC PLC is working like...
Replies
15
Views
2,007
I swear I post this yesterday but can't find it. Don't see any notification about the post removal either. Maybe my memory is malfunctioning...
Replies
3
Views
2,569
Hello all. I have a system with 4 different machines, each has their own PLC. I also have a RC in this subnet also. I created a server PLC that...
Replies
0
Views
462
Back
Top Bottom