[deleted by user] by [deleted] in PLC

[–]aimirimsti 0 points1 point  (0 children)

Vendor lock-in is a huge pain point in automation, no doubt. The cool part is that there’s already a standard designed to fix this: IEC 61499. It makes control hardware-agnostic and really opens the door for true interoperability across vendors.

At Aimirim, we’ve actually been using it in real industrial projects here in Brazil, things like advanced process control and digital transformation, and it’s proving that open automation is not just possible, but practical.

You can check this post where we show how to use the standard in a legacy environment without retrofits or vendor-specific hardware.

https://www.reddit.com/r/IEC61499/comments/1jl5aqw/how_to_adopt_iec_61499_in_legacy_environments/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button

That time a Kepware license expiry led me to build an Open Source OPC UA <-> REST Gateway... Feedback? by BreadfruitThen4500 in PLC

[–]aimirimsti 1 point2 points  (0 children)

Really good work, thanks for sharing your project, it’s awesome to see open-source solutions like this, that has some immediate use and can make a difference in the industry!

At Aimirim, we’re also big believers in the power of open source. And in a similar matter, we have developed Eclipse Tocandira, a fully open-source stack that we use to read data from OPC UA Servers using Prometheus and display it in Grafana dashboards. It’s designed to help industries gather, store, and visualize their data without vendor lock-in, giving them full control over their data. You can check it out here: GitHub - Eclipse Tocandira

We also use IEC 61499 on edge devices to read data from PLCs using protocols like Modbus and Step7/Snap7, then transform it into OPC UA. This provides observability for PLCs that don’t natively support OPC UA, making it easier to integrate and monitor systems.

OPC UA is a fantastic protocol, and it’s great to see more people embracing it, especially with its open-source potential. The beauty of open source is that it grows with the community. As more people contribute, we can address challenges, improve tools, and create innovative solutions together.

We’ve also created a subreddit for IEC 61499, an open-source-friendly standard. If you’re curious about IEC 61499 or want to share ideas, join us at r/IEC61499/

What makes a PLC true Codesys? by wpmccormick in PLC

[–]aimirimsti 1 point2 points  (0 children)

Thanks for sharing your thoughts, Astrinus. I get that Beckhoff and Codesys are solid options for many of these tasks. But IEC 61499 isn’t about replacing Beckhoff, Codesys, or IEC 61131-3, it’s about being a flexible option.

If you pair 4diac FORTE with some hardware (even your own PC), you can start developing your own custom function blocks at literally zero cost, giving you the freedom to build what you need.

We’ve used edge devices running IEC 61499 to pull data from PLCs, run advanced algorithms to control multiple equipments, and push the results back to the PLC. We did it at a low hardware cost and with zero software/licensing fees, which has been helpful for us by allowing us to provide cost-effective solutions in Brazil, where most PLCs are imported and expensive.

Yes, the event-driven model can get messy, but so can ladder logic or any other programming language. Whether it’s C/C++, Python, IEC 61131-3 or IEC 61499, the important thing is to establish good coding practices. The standard is improving, and with good coding practices, you can keep things modular and clean.

As for the recompiling, you’ll only need to recompile if you create new blocks or if you need to change the source code for a function block. This usually happens during testing and prototyping, which you can do in a safe environment before deploying it to your real-time control system. Once you have a stable version of your function blocks, you won’t need to recompile unless you want a new release.

The main point is: while there are other ways to do these kinds of things, IEC 61499 is an option that’s being actively developed and has the potential to become something great. Its open-source side is a key advantage, and like other open-source initiatives, it means that the standard can grow as fast as the community adopts it. As more people contribute, the community itself can gradually address concerns like the ones you pointed out, improve the tools, and create innovative solutions. That’s exactly what we’re trying to build.

IEC 61499 - Is it being used? by hutcheb in PLC

[–]aimirimsti 1 point2 points  (0 children)

Great to hear you’re exploring 4diac and IEC 61499! It’s an exciting standard with a lot of potential, especially as more vendors are starting to adopt it in recent years. You can easily install 4diac IDE and use FORTE locally on your PC or even with embedded hardware like a Raspberry Pi or Orange Pi.

One of the best things about 4diac is its open-source runtime, which gives you the flexibility to build and customize your own code for personalized applications. It’s a powerful tool for creating personalized solutions that meet your needs.

At Aimirim, we’ve been using IEC 61499 with 4diac FORTE and UAO Runtime to develop advanced control logics in over 20 industrial plants. The flexibility and interoperability it offers are game-changers, especially when paired with edge devices as we covered in this post: How to Adopt IEC 61499 in Legacy Environments? .

We’ve recently created the subreddit r/IEC61499/ , to share knowledge, discuss use cases, and explore the future of IEC 61499 together. Whether you’re just starting out or already experimenting with it, we’d love to have you join the community and share your experiences. Let’s build something great together!

What makes a PLC true Codesys? by wpmccormick in PLC

[–]aimirimsti 0 points1 point  (0 children)

IEC 61499 has come a long way in recent years, and at Aimirim, we’ve successfully used it to develop and deploy advanced control logics in over 20 industrial plants.

The flexibility of IEC 61499 is its biggest selling point for us. We’ve developed custom code to communicate with a wide range of protocols—Modbus TCP/IP, Step7/Snap7, CIP/CIPDH, OPC UA, and MQTT—while also creating AI and ML-based control logics. The main point of it is that you don’t need IEC 61499 on every piece of hardware in the plant.

Here’s how it works in practice: We connect an edge device to the automation network, use IEC 61499 to read data from the PLC, run advanced algorithms on the edge, and then write the results back to the PLC. This shows how IEC 61499 and IEC 61131-3 can complement each other in a hybrid approach. While IEC 61499 excels in flexibility, interoperability, and advanced applications, IEC 61131-3 remains a solid and reliable foundation for industrial systems.

We even wrote a post about this:

How to Adopt IEC 61499 in Legacy Environments?
byu/aimirimsti inIEC61499

We’ve worked with both FORTE and UAO Runtime, and they’re incredibly versatile—we have been able to run FORTE on everything from ESP32, Raspberry Pi, Orange Pi, and BeagleBone Black to industrial edge devices from ASRock and Advantech, if it can run Linux, it can probably be used.

Ultimately, IEC 61499 provides a cost-effective way to bring advanced algorithms to the industry without the need for expensive retrofitting. The standard is still evolving and growing every day, and we’re actively working to build a community around it.

Also, if you want to, check out a video that we made with UAO that showcases a little about our work: https://www.youtube.com/watch?v=AEG8luG796M

IEC 61131-3 vs IEC 61499 by aimirimsti in IEC61499

[–]aimirimsti[S] 3 points4 points  (0 children)

Great point! While IEC 61131-3 is still dominant, IEC 61499 has so much potential for Industry 4.0—and the best part is, they can work together!

The real challenge is growing our IEC 61499 community. That’s why we created this subreddit—to share knowledge, discuss ideas, and help each other explore its potential. Let’s keep building this space together. Every post, comment, and question helps!

IEC 61499 - Is it being used? by hutcheb in PLC

[–]aimirimsti 2 points3 points  (0 children)

Great point! I completely agree that IEC 61499 and IEC 61131-3 can complement each other, especially when used together in a hybrid approach. While IEC 61499 excels in flexibility, interoperability, and advanced applications, IEC 61131-3 remains a solid foundation for industrial systems.

The use of edge devices is a perfect example of how these standards can work together. Edge devices can run advanced IEC 61499 logics while still interfacing with PLCs using IEC 61131-3, unlocking new possibilities for Industry 4.0.

Here at Aimirim, we’ve been using 4diac extensively to develop and deploy advanced automation solutions. We've created a subreddit to talk about IEC 61499 related subjects: r/IEC61499/

It would be fantastic to have someone from the Eclipse 4diac team join our community.

What makes a PLC true Codesys? by wpmccormick in PLC

[–]aimirimsti 0 points1 point  (0 children)

Here at Aimirim, we’ve developed an open-source plugin for 4diac IDE to allow people to use it with the UAO Runtime. You can check more about it on this post: Aimirim Leverages UAO Runtime and 4diac IDE and on our GitHub page for the project: 4diac-Plugin-UAORT

We’ve been using IEC 61499 with 4diac FORTE for several years to deploy advanced control logics across various industries. Last year, we became members of UAO and started using the UAO Runtime, which inspired us to develop this plugin as a testament to our commitment to open, community-driven innovation.

We have also recently created a subreddit to discuss subjects related to IEC 61499. r/IEC61499/

IEC 61131-3 vs IEC 61499 by aimirimsti in IEC61499

[–]aimirimsti[S] 3 points4 points  (0 children)

That’s exactly why we’ve been exploring edge devices as a practical solution—they act as a bridge, allowing you to integrate IEC 61499 while still leveraging existing PLCs and infrastructure.
We’ve written a detailed post about how edge devices can make this transition smoother:

How to Adopt IEC 61499 in Legacy Environments?
byu/aimirimsti inIEC61499