Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » 4DIAC - Framework for Distributed Industrial Automation and Control » Guide from migrating from 61131-3 ST application to 61499
Guide from migrating from 61131-3 ST application to 61499 [message #1792053] Tue, 10 July 2018 14:44 Go to next message
Garret Fick is currently offline Garret FickFriend
Messages: 2
Registered: July 2018
Junior Member
Is there a guide or recommendations anywhere for migrating from a 61131 application to 61499, or maintaining compatibility between two environments?

I have a moderate size application and we would like to evaluate the feasibility of migrating it to 61499. The application logic is primarily defined in a series of ST function blocks, however they do depend on timers.

I see from the forums (and my understanding of 61499) that execution behaviour are inherently different. That said, is there a way to hack this into our models for the purpose of understanding feasibility?

Doing a re-write to 61499 probably won't fly for several reasons, including a need to support 61131 for HW targets that don't support 61499.
Re: Guide from migrating from 61131-3 ST application to 61499 [message #1792133 is a reply to message #1792053] Thu, 12 July 2018 05:51 Go to previous messageGo to next message
Alois Zoitl is currently online Alois ZoitlFriend
Messages: 640
Registered: January 2014
Senior Member
Monika Wenger has been working on how to migrate from 61131-3 to 61499, also in automated ways. She achieved quite promising results.

However what we also learned from that work that you only get a direct representation of the 61131-3 semantics in IEC 61499. This normally does not show the real power of IEC 61499. Therefore it can also be advantageous to analyze your application and redesigning it with the IEC 61499 means. Especially events and the ECCs often allow for simpler applications. For bigger applications this can unfortunately mean quite some effort. However even in that case it is possible to leverage your existing ST code within IEC 61499 basic FBs. 4diac has a quite good ST support for basic FBs. We also allow all functions defined in IEC 61131-3 to be used there and we are working on a concept how to define own ST functions for this use case.

Therefore we are always interested in the limitations of our implementation and where extensions are needed.

I understand that mainting both an IEC 61131-3 and an IEC 61499 version of your code is maybe not feasible. The only thing that I can say is that our list of supported hardware is increasing with each version. Maybe yours is already on the list or is rather easy to support.
Re: Guide from migrating from 61131-3 ST application to 61499 [message #1792204 is a reply to message #1792133] Thu, 12 July 2018 14:53 Go to previous messageGo to next message
Monika Wenger is currently offline Monika WengerFriend
Messages: 18
Registered: September 2015
Junior Member
as a guide ... first you should ask yourself if you want to make an IEC 61499 application or if it is ok for you to make an IEC 61131 application with IEC 61499 elements.

if you are interested in making an IEC 61499 application i would recommend to think about the functionalities you had and how you can express them with IEC 61499. your IEC 61131 application might block your thinking since IEC 61499 is a different thinking than IEC 61131. If you have special algorithms in ST you might be able to reuse them in Algorithms of BFBs, but this depends on your ST code.

if you just want to rebuild your IEC 61131 behavior then you would port all of your FBs. Then you should look at your IEC 61131 Tasks. if you only use free running tasks you basically make a proper event loop. if you use periodic tasks you should use E_CYCLE. for "event" triggered IEC 61131 tasks you have to build a proper FB. put each rebuilt task into an own IEC 61499 Resource.
Re: Guide from migrating from 61131-3 ST application to 61499 [message #1792280 is a reply to message #1792204] Fri, 13 July 2018 20:52 Go to previous messageGo to next message
Garret Fick is currently offline Garret FickFriend
Messages: 2
Registered: July 2018
Junior Member
Thanks for your comments and suggestions. You have both raised good points.

While there can be good reasons to convert entirely 61499, we need to support existing hardware targets for which there is currently no support for 61499. Some of these run Linux, which you support, but other run on Windows CE, which probably means porting isn't so easy.

@ Alois - if you can send me a PM or email, I can discuss further some of the limitations
@Monika - your recommendations above were spot on what I was looking for

Re: Guide from migrating from 61131-3 ST application to 61499 [message #1792281 is a reply to message #1792280] Fri, 13 July 2018 21:23 Go to previous message
Alois Zoitl is currently online Alois ZoitlFriend
Messages: 640
Registered: January 2014
Senior Member
You are welcome. Windows CE should already be supported by our windows port. It least we have some ifdefs for Windows CE and I know that people where using 4diac on it.

I've tried to get in contact with you on linkedin with my direct contact details. I hope that is fine for you.
Previous Topic:Can I connect function block input or output with variable? Like IEC61131-3
Next Topic:[SOLVED] Request validation FB according to standard
Goto Forum:
  


Current Time: Wed Sep 26 14:35:40 GMT 2018

Powered by FUDForum. Page generated in 0.03750 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top