Sign in to follow this  
Followers 0
douyi

How to convert RSLogix program to S7?

11 posts in this topic

Is there anyone knows how to convert RSLogix5000 program into Siemens S7? I have a project that have to use S7, but the original program we have is in RSLogix, it will be a lot of works if there is no converter. If there is no converter exist, does anyone knows a better way to do that? Thanks in advance. By the way, we use UDT to make it easier to copy and paste within RSLogix5000, is that possible to convert that as well? Thanks again.

Share this post


Link to post
Share on other sites
There is no converter for one brand of PLC logic to another. You're going to have to retype it. But at least both PLCs are using IEC61131 style programming software, so the functions should be just about the same.

Share this post


Link to post
Share on other sites
STEP7 is not really IEC61131-3 compliant. S7 STL (statement list) has little to do with IEC IL (instruction list). Also S7 LAD (ladder) and S7 FBD (logic function blocks) have little to do with the IEC counterparts. Only S7 SCL (=IEC ST) and S7 GRAPH (step sequences) complies with IEC. You will have to retype the whole lot ! S7 also uses UDTs, but you cannot import them easily. Maybe you can import them via the "source" objects in STEP7. But if you dont have so many it is easier just to retype them. Only good thing is that most Ladder code in RSLogix will be very similar to LAD code in STEP7. If you are an absolute beginner to STEP7, and you have a looming deadline, then get a crash-course in S7 at Siemens. It will too hard to figure out by one self, especially if you are in a hurry.

Share this post


Link to post
Share on other sites
Thank you guys. It seems I have to retype them all! Actually, I'm a new guy to S7 and don't have time to take a course, maybe I can get support from Siemens. But as long as S7 support all AB style logics, I can easily do it. Another question. RSLogix5000 V13 can export all to a ASCII based file, can S7 read them? ---Thanks in advance.

Share this post


Link to post
Share on other sites
By the way, I wanna discuss another issue. I know S7 have different style from AB, it recommand use FC, DB, etc forming reusable subroutines, and some of them is easier to write in STL (the reason I think is S5 only support STL, that means Siemens is good at that). Obviously, I have two ways to do that. One way is just retype all the logics from AB, rewrite Timer and Counter (or write customized Timer and Counter instructions using FC make it exactly same as AB functions). The second way is follow the S7 way, write a whole new program. Which is faster? which is easier? Thanks for help. Edited by douyi

Share this post


Link to post
Share on other sites
You seem to be in a hurry, so dont make it hard on yourself. Do not use "reusable code" - that is FB blocks with instance DBs. You can pass parameters back and forth to/from FC blocks too, but you dont have to. If the programming style in the original program is "classical Ladder" then I recommend that you rewrite all logics from AB to S7 and do it in S7 LAD. S7 LAD is very close to AB Ladder (but not 100%). Use IEC timers and not S5Timers. The IEC timers ressemble AB timers more. No. You could possibly export/import some data file definitions - but it is for experts who know what they are doing.

Share this post


Link to post
Share on other sites
Thanks, JesperMP! There comes out another question. When I doing the symbols editing (Tags), I found I can do it either in "Symbol Table" or do it thru DB defination, and the advantage of the DB way is that it's more structive, so I can have more levels, such as "Machine.Part1.Sol1.ON" instead of one "Machine_Part1_Sol1_ON" tag. Which is the proper way or either way is OK ? Thanks in advance.

Share this post


Link to post
Share on other sites
The "clever" way is to setup variables in DBs, possibly via STRUCTs or UDTs. You can then create "advanced" addresses such as the ones you have suggested. If you do the above, then you must either define your data ONCE and never change them, OR you must program 100% symbolically. That means you must have "Symbolic address priority" set in stead of "Absolute address priority". This is set in STEP7 manager when you rightclick the "blocks" (in the tree porject structure) and select "properties".

Share this post


Link to post
Share on other sites
Understood. Tanks a lot! You gave me so much help, I really appreicate that.

Share this post


Link to post
Share on other sites
Just a thought - S7 supports import of STL text source files, if the RSLogix could export a text file you could write a conversion routine, perhaps using VB (or even VBA within Word), probably not worth it for one program, but if you had a lot to do then it may be a different story Mike D

Share this post


Link to post
Share on other sites
Yes! It's possible, but I know nothing about STL. Another problem is Tags. In RSLogix, there is no limit of 24Characters length of a Tag, but in S7, it does. So I have some different tag name of in RSLogix and S7 which is a big headache. Anyway, I've started type in already. Maybe next time I'll write a small program to convert it - maybe it's no use in the future, because the concept are very different of AB and Siemens. Once I started using STL, it will be never converted to LAD anymore. Furthermore, it has FC and FB on 200, 300 and 400 platforms and AB has combined one on Logix platform. So much difference make very hard to do that. I hope someday at least the Ladder logix itself has some very standard verson, such as the timer and counter instructions are exactly the same, all the bits are the same, so we only need to know one language, that's all! Thanks everyone again!

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