CODESYS Control For Raspberry Pi Allows PLC Programming According To IEC 61131-3
CODESYS is a PLC programming suite used by automation specialists as an environment for the development of controller applications. It is an IEC 61131-3 programming tool developed by the Germany-based company, 3S (Smart Software Solutions), providing users with integrated solutions that optimize the engineering of automated solutions. It represents a platform-independent development environment that is compatible with PLC hardware and many other automation components available from various companies, making it a resourceful solution that helps users achieve a multitude of tasks.
CODESYS supports every one of the five PLC programming languages defined by the IEC 61131-3 standard: ladder diagram, function block diagram, sequential function chart, structured text, and instruction list. The result is a uniform system that supports a vast number of PLCs and automation components, supporting system designers to work within any one of them as wanted. Such an approach simplifies the integration of new products into a control system.
CODESYS quickly adapts to different system requirements and environments. It is available as a modular single-source runtime system for various device platforms, and it also supports all standard processors and operating systems.
CODESYS Control for Raspberry Pi MC S
CODESYS Control for Raspberry Pi SL contains a multicore capable CODESYS Control runtime system for all Raspberry Pi models whose CPU has multiple cores. That includes compute modules (CM), as well as their possibility to use expansion hardware such as Raspberry PiFace Digital, Raspberry Pi Camera, and various devices/boards with SPI, I²C, or 1-wire interface.
After the installation of the runtime environment, the Raspberry Pi can be programmed like a PLC using the CODESYS Development System.
The installation includes the CODESYS Deploy Tool plug-in via the CODESYS Development System on the Linux distribution Raspbian. After each restart, the runtime system will start automatically. In the absence of a valid software license, the CODESYS Control program operates for two hours without functional limitations before shut down.
CANopen And SAE J1939 Protocol Stacks in CODESYS
Furthermore, the products supports a variety of fieldbus technologies, including CANopen and SAE J1939. The CANopen and J1939 protocol stacks in CODESYS are using the standard Linux socketCAN interface.
However, the bare Raspberry Pi does not have a CAN Bus controller on board. This means you will need to add a board with a CAN Bus controller that is supported by the Linux kernel, for example a CAN Bus controller for SPI.
A good source of information regarding CODESYS on Raspberry Pi and CAN Bus is the 3S forum here:
Feel free to join the forum and post your questions and answers regarding specific hardware or configurations.
PiCAN 2 - CAN Bus Interface for Raspberry Pi
This PiCAN2 board provides Controller Area Network (CAN) Bus capabilities for the Raspberry Pi. It uses the Microchip MCP2515 CAN controller with MCP2551 CAN transceiver. Connection are made via DB9 or 3-way screw terminal.
This board is also available with a 5VDC@1A SMPS (Switch-Mode Power Supply) that can power the Raspberry Pi plus the PICAN board via a screw terminal or DB9 connector.
There is an easy-to-install SocketCAN driver, and programming can be accomplished in C or Python.