SLC to PLC conversions

PLCDude

Member
Join Date
May 2003
Location
Detroit MI
Posts
10
Hi Guys Great site !

Ok I need to convert an SLC-500 program to a PLC-5 program. Both are A/B controllers and using Rockwell software & I'm looking for documentation to assist in this process. I know that you can import a 500 or 5 project into the 5000 Logix program and the resulting logic is messy. Rockwell has released documentation to assist in the cleanup process of a conversion to Logix 5000. Is there any similar documentation for converting from SLC-500 to PLC-5?
 
Converting between SLC/PLC5 is fairly straightforward. Just open up RSLogix and RSLogix 500 side-by-side, copy and paste.

Some Caveats:

If RSLogix doesn't recognise an instruction, it will balk. Fortunately, the instruction sets are nearly identical.
The biggest difference is that PLC-5 calls a oneshot ONS, while a SLC calls it OSR.

SLC has the SCP and SCL functions, while PLC5 has the FAL (these instructions are not interchangeable - those are just the major different ones off the top of my head). The PLC5, however, allows complex math in the compare (CMP) and compute (CPT) functions, while the SLC does not.

The SLC data file is limited to 256 elements - the PLC5 can go up to 1000 (not an issue for you, since you are going from SLC to PLC5).

Those are the biggest issues. Conversion should be a piece of cake.

Another method of conversion might be to export the entire SLC program as a Library file (.SLC), which is just an ASCII text file, export an empty PLC-5 program to Library (.PC5) to get the proper text headers, copy the body of the code and data tables from the .SLC to the .PC5, search/replace OSR for ONS, and import the file to see what happens.

Good luck
 
I tried Allen's second suggestion.

I opened each of the 5 files that you get when you export .slc, copied and pasted to each of the 5 files from the blank .pc5 export trying to retain all descriptions. It turned out pretty good. I used a file that I knew had one-shots and a couple SCP's. The PLC 5 version appeared to have just left the SCP's blank and the one-shots converted into the PLC5 OSR instruction(which is differnet than the ONS), some of the comments/descriptions got hosed, but it is still better than manually entering the whole thing.
 
Thanks for the replies guys...yes the obvious task for me was to copy the SLC logic over and change the one shots....however here is where the simple part ends. The SLC program has some copies into and from M0 and M1 to do explicit messaging to a servo. My first inclination was to simply use a MSG block command on the PLC version to replace the copy commands to M0 & M1. What would my target address be in the setup table of the message block since MO and M1 are not accessable to us in PLC-5?
 
Oops - Forgot about M0/M1

I think that you would replace the M0/M1 moves with a regular integer file and BTR/BTW instructions, not MSG.

It used to be that the SLC didn't have BTR/BTW instructions, but manipulating the M0/M1 files were a method of doing pseudo-block transfers.

The servo is likely to be on remote I/O, not DH+, so BTR/BTW is the proper instruction.

But you will need to know the data map to know which bits/words to send to acheive the same result.
 
Is the servo on Remote I/O or is it a SLC servo card or other specialty card? If a specialty card what is going to replace it in the PLC5?

If on RIO you will probably use Block Transfers (BTR/BTW) to talk to and read from the drive.

The MSG command is typically for use in communications to/from other devices on a network. The M1/M0 files are usually not involved.

The SLC 500's M files are typically memory locations on a specialty card not in the processor.





edit:

Ya beat me this time, Allen :p
 
Last edited:
Actually the servo is Devicenet so I was thinking msg blocks would be cleaner. I have the bit mapping for the polled I/O method which I will use to issue move commands, but to change command block values such as velocity or target destination I was going to used explicit messaging. The company who made the drive and recently added DNet to it only has 1 engineer capible of answering detailed programming questions like bit mappings so it looks like I have to wait until he returns from vacation.

edit:

The servo's are new and the rest of the application is old in case you were wondering why I had DNet servos
 
Last edited:
Is your new controller actually a PLC-5 or a ControlLogix ?

Your posts above don't make it clear; you talk about PLC-5 controllers, but also about RSLogix 5000 and the Import Utility, which imply ControlLogix.

DeviceNet explicit messaging is very easy in ControlLogix, much more so than in SLC or PLC-5. Data files for explicit messaging with a 1747-SDN are the same structure as data files in the PLC-5 for explicit messaging with a 1771-SDN. It's only the mechanism for getting those structures into the module (Copy M0/M1 in the SLC, use BTR/BTW instructions in the PLC-5) that's different.

Also, give some info about the servo controllers or post the EDS file; it may give more info than you think.
 
I'm converting to PLC-5

My original post requested info on coversion documentation for SLC to PLC-5. Sorry if the reference to the 5000 conversion was confusing. I cited it because I knew that there was conversion documentation for newer platforms....I was wondering about older ones too. Your knowledge in PLC comunication device(s) data structures is obviously much better than mine so I'd like to pick your brain a little more. :)

I'm using a KOLLMORGEN ServoStar 610 Servo Amp with DNet.

I don't have an EDS file yet but I do have a PDF version of the DNet Communications profile.

If you look at section 2.6 of the Appendix you will see that the documentation describes the SLC way of handling Explicit Messaging. I obtained the reference logic listed on page 66 but its in SLC format. Now I need to understand how to convert these examples to PLC-5 to use in my project.

the PDF file is too large to attatch so here is a link to it.

http://www.danaher-motion.de/doku/srdnet_e.exe
 
Last edited:
Done!

Here's my best guess for your conversion. The BTW/BTR in LAD6 may have to be re-addressed to the proper rack/slot/group of your 1771-SDN card, and your I/O addresses may be different, but this should get you started.

Elapsed time: 15 minutes.

No charge.
 
Thanks Allen I'll open that file you posted in a moment...what a great idea to make this site...I'll be checking in often. :)

I'm not replacing a SLC 93lt1. I adding new DNet servos to an existing PLC-5 system. The documentation and example logic for DNet interface methods was done for SLC controllers and so I needed find the best method to accomplish the same interface tasks from a PLC-5 processor.

Thanks again guys.
 
Hi again I reviewed the file Allen posted and it makes sense to me. The remaining question I have is:

Are the inputs and outputs for that rack/slot associated to the DNet adaptor card for discreet I/O commands. IE: if I put it at rack 0 slot 0 is 0:000/1 availible? I selected a 1741-SDN card and mapped Integer files to it for read/write lengths of 32. So now it shows 64 I/O points for that slot. So is it correct to use Integer addressing for only block transfers ...nevermind that last question...a little reading works wonders :rolleyes:
 
Last edited:

Similar Topics

Good day colleagues, I have a problem with a plc slc 5 since I export the tags to my factory program to load them into a panel view 1000 plus 6...
Replies
0
Views
118
Hi long time out... I´m in a project now, that request to upgrade an old SLC to a new ControlLogix. Just the PLC. It is connected now to a...
Replies
5
Views
1,971
Everyone, i am in the process of purchasing the Slc 500 version of software to support what we have and i have a question. Several of our...
Replies
9
Views
776
I used up my last new Allen-Bradley SLC 5/04 controller. Does anyone have info on a good reliable place to get a new one for a decent price, or...
Replies
3
Views
527
Hello, We have an older machine that has a standard PanelView (2711-T10C3) connected over DH485 to a SLC 5/04 PLC via a 1761-NET-AIC module in...
Replies
1
Views
677
Back
Top Bottom