Sign in to follow this  
Followers 0
ruz

Trying to Create Driver DLL for AB PLCs

14 posts in this topic

hi... am new to this field of plcs. I wanted to know how i can configure micrologix1100 to work as plc5 or controllogix5000. The thing is my project uses micrologix1100 to implement commands of plc5 and controllogix5000.Plz help. Thanks

Share this post


Link to post
Share on other sites
The instruction set of the Micrologix 1100 is different from the instruction set of the PLC/5. The ControlLogix5000 instruction set is advanced and very different from the Micrologix1100. You cannot make a MicroLogix run a PLC/5 program or a ControlLogix program. However, you can make a micrologix control many of the same things a PLC/5 does (with some limitations, particularly on I/O size and program size) and you can make it do many of the things a ControlLogix does, again with lots of limitations. If you need help figuring out how to do what a PLC/5 instruction or a ControlLogix instruction does when there is not a similar instruction in the Micrologix then post a specific question about the instruction - we cannot help when the request is so vague.

Share this post


Link to post
Share on other sites
My specific problem is that i vl be creating a Driver DLL to enable communication to MicroLogix 1100 using EIP/Native protocol implementing commands for ControlLogix 5000(which are CIP Read Data Service,CIP Wrie Data Service, and many other commands.). The same thing i need to do for PLC5(using CSP/PCCC protocol). Any Solution???? Thanx

Share this post


Link to post
Share on other sites
What are the equivalent commands in Micrologix1100 for the following contrologix5000 commands: 1)CIP Read Data Service 2) Read Data Fragmented Format Service 3)CIP Write Data Service 4)Write Data Fragmented Format Service 5)Multi-Request Service packs shall be used to optimize both reads and writes. Thanx

Share this post


Link to post
Share on other sites
I'm going to guess that you are trying to do these out the built in Ethernet port. Don't think that there is an equivalent to your 5 commands in the Micrologix 1100 Your only other option would be the Compactlogix What are you trying to communicate with?

Share this post


Link to post
Share on other sites
You are talking about totally different concepts. The "commands" you are referring to have to do with the communication protocol, not the PLC per se. You are venturing into undocumented and poorly documented territory here. So if you don't want to spend hours of frustration, my advice is to stay away. You are not going to be able to change the PLC protocols in any way. You will need a distinct driver for all 4 "flavors" of AB PLC's. SLC, PLC-5, Micrologix, and ControlLogix all have subtle variations in their protocols, much of which is not documented. The industry-accepted solution is to use an OPC driver. This allows your code to talk in a standardized way to ANY PLC at the other end. There are OPC servers for almost every PLC available. In other words, pay for someone else to figure it out. This is the solution which is being implemented by virtually all of the HMI companies out there. They are making plenty of money to the point where they could afford to develop device drivers, but they choose to go the OPC route themselves. The hardware solution is to use a universal translator. Two good ones are the UDS100 from Lantronix and the Digi One IAP from Digi. Of the two, I prefer the Digi product. With these devices, you can quite easily pick a single protocol target and use the hardware device to go between them. A related version would be to develop your protocol for a SINGLE PLC and then use MSG instructions on that PLC. The PLC becomes a "data concentrator" and pulls data in from all the other PLC's. Finally, take a look at Ron Gage's code (google it). He gives out free C++ source code which is easily rewritten in your choice of languages if you don't like C++. The code is known to work well with PLC-5 and SLC. It's a very simple protocol once you get past all the ugly and undocumented details, and Ron Gage's code goes a long way towards fixing that problem. I'm assuming it will work fine with ML (haven't tried). There is also a free library out there that implements the Ethernet/IP protocol at least well enough to work with CLX. I don't know much about it because I haven't really tried to write my own EIP drivers (unlike PLC 5 and SLC). CLX apparently speaks a variant of the PCCC protocol and also CIP, but there I've run into something of a road block. The AB documentation does NOT document the CLX variant so there's no way short of protocol sniffing to figure out the DF1 variant for the CLX. Second, the CIP protocol is totally undocumented unless you are willing to pay $5K up front membership fees to the ODVA to get documentation on their "open" protocols. The OPC protocol has similar membership fees, but there's something of an "out". The OPC publishes a reference client-only protocol. Nearly all of their members have compiled it into a DLL and give it away with their OPC servers for free. They like to sell you repackaged variants of the DLL which purport to make it "easier" to use but mostly don't do anything at all aside from changing the API names. I haven't ever bought an OPC server that didn't come with the free DLL or where I couldn't get one for free. Even RS-Linx comes with one. The API is so standardized that you can even use the manual from a different vendor to use one that comes "undocumented". Only the older XML variant of OPC which is not as commonly implemented has freely available documentation. I don't know this for sure but I'm guessing that the new protocol ("OPC UA") is probably going to be a variant of this one. So far unless once again you shell out several thousand dollars to get documentation on an "open" protocol, documentation is unavailable.

Share this post


Link to post
Share on other sites
A starting point on the Ab knowledgebase would be the following: http://www.rockwellautomation.com/knowledgebase/?OpenForm Technote ID 45006

Share this post


Link to post
Share on other sites
How do i connect pc running ml1100 dll to micrologix1100? Thanx

Share this post


Link to post
Share on other sites
What is ml1100 dll? Should be running windows xp pro or 2000.

Share this post


Link to post
Share on other sites
EDIT : Here. He hasn't answered in that topic. Link Disabled as it point to this topic when the original post was in another topic.

Share this post


Link to post
Share on other sites
Plz can anyone tell me whether micrologix1100 support pccc??

Share this post


Link to post
Share on other sites
All 4 PLC families "support" PCCC in some form, but the term varies from one processor to another. 3 of them support a CIP/CSP encapsulated version. 2 of them support a non-encapsulated version. Within the DF1 (encapsulated PCCC) protocol there are about 50 different commands. Each PLC supports a different subset of those commands. There is almost no documentation for the specific command set used by the ControlLogix and Micrologix PLC's. So even if you have a driver that does "PCCC" and a PLC that does "PCCC", there is no gaurantee that the driver will work with a particular PLC if it is not specifically compatible with it.

Share this post


Link to post
Share on other sites
Hi, Where can I get more information on PCCC and ASA as well? I use a tool that employs PCCC as well as ASA. The tool defines ASA as a new (?) protocol. Used for Logix platform. My job is only to use the tool for purposes it was designed for, but would like to have more details on PCCC and ASA. Any help would be appreciated. Thanks in advance. Edited by Mandar

Share this post


Link to post
Share on other sites
I have never head of ASA anywhere. As to PCCC...get the DH+ manual off AB's tech notes and you'll be 99% of the way there. Go to Ron Gage's web site for documentation in "source code" form (www.rongage.org). Finally, also check with Lynne Linse's web site here for more details about PLC protocols in general: http://iatips.com/

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0