
Master PLC basics with Codesys: what a PLC is and components. Explore the IEC 61 1313 standard, Codesys environment, and structured text language through practical exercises and graphical simulations.
Explore what a programmable logic controller is, how it differs from a standard PC, and how PLCs use sensors, actuators, input/output boards, and field bus to control industrial processes.
Explore how the PRC CPU runs user code with a real-time OS, managing static priorities, cycle times, and task scheduling to prevent missed deadlines and ensure safe PLC operation.
Examine how PLC input and output boards convert digital and analog signals into boolean and numeric variables, enabling digital inputs and outputs, sensors, and actuators.
Learn to scale analog signals from range to another with a formula. See how 0–10 volts maps to 10–50 degrees Celsius and perform forward and inverse scaling.
The IEC 611313 standard defines three fundamental aspects of the PRC software structure: programming units, variable types, and programming languages, unifying software across brands for developing applications on pieces.
Explore the IEC 61131-3 PLC languages—ladder diagram, function block diagram, continuous function chart, structured text, and sequential function chart—and compare their strengths for simple versus complex projects.
Explore programmable logic controller programming basics with CoDeSys, focusing on programming organization units: programs, function blocks, and functions. Learn how declarations, implementations, and memory govern instantiation and behavior across tasks.
Explore IEC 61131-3 variables, focusing on visibility, type, and how local, input, output, in-out, and global variables are declared. Learn boolean, bit, byte, word, double word, integers, real, string, time.
Explore what CoDeSys is and why it’s used in PLC programming, a free demo development environment for IEC 61131-3 languages with simulation and debugging features for real-time systems.
Explore standard function blocks in IEC 61131-3, including edge detectors, timers, counters, clocks, and the link clock generator; learn R trig, F trig, CTU/CTD, and pulse generation.
Download and install codesys on Windows by logging in to the store, selecting the 32- or 64-bit version, accepting the license, and completing a full or custom setup.
Download and install the prescribed Codesys version to prevent compatibility issues in course projects; note that code size versions can coexist on the same system and choose 32-bit or 64-bit.
Explore the CoDeSys environment by creating a new project, configuring devices, managing libraries, and writing variables in declaration and implementation; learn task settings, visualization, building, and simulating plc programs.
Explore ladder diagram basics in the Encode project, declaring A, B, and C. Learn series and parallel networks with contacts and coils, and practice set, reset, and negation.
Explore ladder diagram programming in CoDeSys to model a simplified machine with start/stop, emergency, safety barriers, and velocity control using move blocks and readiness logic.
Extend the ladder diagram by adding a timer and function blocks to start the machine after a two-second press, then count produced pieces with a blink and counter.
Explore structured text (ST) fundamentals by declaring variables, using if statements and boolean logic, and coding a machine starter with start/stop, velocity controls, and safety checks.
Learn structured text programming for PLCs by implementing a 2-second start delay with a twin function block, a blink counter, and pieces counting.
Explore function block diagram (FBD), a graphical language of the IEC standard that uses block schemes and networks, and compare it with ladder diagrams in PLC programming.
Explore the continuous function chart language (CFC), a block-based execution system with inputs and outputs, and how it differs from ladder diagrams, plus hands-on wiring and block ordering techniques.
Implement a simplified elevator control in CodeSys by scanning 11 floor button booleans, comparing current and requested floors, and driving up or down commands with structured text and ladder diagrams.
Learn how state machines structure PSC programming, replacing messy sequential code with clear state transitions. An example uses sensors A/B and barriers to manage a level crossing.
Learn to design a two-way level crossing with sequential function chart state machines using sensors a and b to control barriers, transitions, and actions.
Learn to implement state machines in structured text using a level crossing example, employing a case instruction and a machine state variable to control transitions and actions.
Demonstrates designing a state machine in ladder diagram by modeling machine state, using equal checks and sensor signals to drive transitions, and discusses its limitations versus structured text.
Explore exercise 1 in CoDeSys plc programming by configuring a simulated piston: use start, limit sensors, and piston command to cycle from initial position to the positive limit and back.
Learn to design a CoDeSys state machine for a single piston, with a machine state variable and timer, handling negative and positive limit sensors and start/stop controls.
Explore a single-piston motion control using a product presence sensor, with dual actuations and a state-machine stop memory, implemented in structure text.
Implement a state machine to control a piston in a CoDeSys PLC project, detailing states zero, ten, twenty, and thirty, and handling start, stop, and resume logic.
Develop an FC for analog scaling in CoDeSys, defining input/output ranges and a safe scaling formula. Test with a temperature sensor and include error handling and inverse scaling.
Learn how to develop modular function blocks for PLCs by creating five independent piston FBs, replacing global variables, and using FBD actions to enable reusable, scalable control.
Implement a conveyor control exercise in CoDeSys to build PLC sequences and state machines, managing infeed, middle and end sensors, with start/stop controls and counters.
Build a PLC conveyor control using a state machine with states zero, ten, twenty, and thirty, handling start and stop, product generation, conveyor movement, sensors, rtrig triggers, and process timing.
Conclude by mastering PSC concepts, APC 611313 standard, and APC programming languages within the CIS environment to write PSC programs independently and create automation applications, with practice and exercises.
Explore the instructor's broader plc programming resources, including the PSC programming for beginners textbook, simulations, and free GitHub exercises, plus updates from Automation Academy.
Ready to take control and learn the essential skill of PLC programming? Want to build a solid foundation for a career in industrial automation, manufacturing, or electrical engineering?
This course is your starting point! Designed specifically for beginners, "PLC Programming - Learn the basics with CoDeSys" demystifies Programmable Logic Controllers (PLCs) and empowers you to write your own automation software using the powerful, vendor-independent CoDeSys (IEC 61131-3) development environment.
Why CoDeSys? It's a widely used standard, meaning the skills you learn here are highly transferable across different PLC brands and industries.
In this comprehensive, hands-on course, you will:
Understand PLCs Inside-Out: Grasp the fundamental concepts – what PLCs are, how they operate, and their crucial role in modern industry.
Master the CoDeSys 3 Environment: Confidently navigate and utilize the complete CoDeSys development suite to create, test, and debug PLC programs.
Learn to Program from Zero: Go from no experience to writing functional PLC applications and software.
Apply Industry Best Practices: Discover essential programming patterns and techniques used by professionals to write clean, efficient, and reliable automation code.
Build a Foundation for Your Future: Gain the core knowledge needed to pursue exciting career opportunities in the rapidly growing field of industrial automation.
This course is perfect for:
Aspiring Automation Technicians & Engineers
Electricians and Maintenance Staff looking to upskill
Engineering Students (Mechanical, Electrical, Mechatronics)
Hobbyists interested in industrial control systems
Anyone new to PLCs wanting a clear, structured introduction
No prior PLC experience is required! Join instructor Marco Nucci and gain the practical skills and theoretical understanding to confidently step into the world of PLC programming.
Enroll today and start building your future in automation!