brands · South Africa
Schneider PLC Training: Modicon and EcoStruxure Courses
Schneider PLC training in South Africa: choose the right Modicon software, compare courses and practise independent program state with a worked example.

Schneider PLC training in South Africa starts with identifying the controller and the engineering software you will actually use. Modicon is a broad controller family name. An M221 course, a Machine Expert course for an M251 and a Control Expert course for an M580 can teach overlapping logic concepts while requiring different project tools and exercises.
The most useful first question is therefore specific: “Which controller model, software version and practical task will I work on?” A course described only as EcoStruxure training leaves too much open. This guide explains the distinctions, gives you a software-only exercise in reusable state, and shows how to compare local, remote and independent learning options.
This website is commercially connected to PLC Simulator. We are an independent learning resource, not a Schneider-authorised training centre. The PLC Simulator learning curriculum can support foundational practice; it does not establish native Schneider project compatibility or replace vendor training and supervised equipment work.
Which software belongs with your Modicon controller?
Use the following distinctions to narrow a course enquiry. They are an orientation, not a compatibility matrix for every hardware revision, firmware release or software licence.
| Your starting point | Software path to investigate | What to confirm before enrolment |
|---|---|---|
| Modicon M221 | EcoStruxure Machine Expert Basic | Exact controller reference, installed release and exercises supported in that environment |
| Modicon M251 | EcoStruxure Machine Expert | Project version, controller firmware, required licence and any additional libraries |
| Modicon M340 or M580 | EcoStruxure Control Expert | Target CPU, software release, project architecture and scope of practical access |
| Existing project labelled SoMachine Basic, SoMachine or Unity Pro | Identify the original environment first | Source project, version history and documented upgrade or conversion route |
Schneider's M221 programming software FAQ identifies Machine Expert Basic, formerly SoMachine Basic, and describes it as a free download. Its M251 software FAQ identifies Machine Expert, previously SoMachine. The latter also discusses licensing and firmware relationships, so a download alone does not settle the requirements for your project.
For M340 and M580, Schneider's South African training page lists Control Expert programming and intermediate learning. Control Expert is the environment formerly named Unity Pro. Keep the word “Basic” in your M221 enquiries: dropping that suffix can lead to a different syllabus, installation or quotation.
Do not assume that similar names mean projects can be opened, transferred or converted without additional work. Equally, do not assume every transition requires a complete rewrite. Establish the source and destination versions, consult the applicable documentation, and have the provider explain the supported procedure for the particular project.
Choose training from a task you can demonstrate
A beginner needs to understand variables, Boolean conditions, stored state and the sequence in which a program is evaluated. Someone maintaining an existing installation may instead need to locate the correct project, interpret diagnostics and recognise the limits of an online change. A developer taking responsibility for reusable blocks needs interface design, instance behaviour and repeatable tests.
Write a one-sentence outcome before comparing providers. For example: “I want to build two independent instances of a small stateful function and explain their results.” That outcome is narrower and easier to assess than “become an expert in Modicon.” It also allows you to ask whether the exercise will be carried out in the named vendor environment, an independent simulator or on a physical training rig.
For a broader introduction, use our South African PLC training guide. If you already have a target project, send a sanitised description of its controller and software to the provider. Do not circulate employer source code, passwords, network information or project files without permission. A controller reference and a learning objective are often enough for the initial discussion.

What should a Control Expert course cover?
A useful introductory syllabus should make the project structure understandable. Ask how learners distinguish the hardware configuration, variables, program organisation and the places where code executes. The provider should explain how to observe values and interpret a result, rather than simply supply a finished project for copying.
For reusable programming, ask about derived function blocks, commonly abbreviated DFBs. The learning objective is to understand the difference between a definition and the state belonging to a particular use of that definition. The worked exercise below develops that distinction without pretending to be a ready-to-download Control Expert project.
Task context also matters. A section name does not create an interrupt or determine its scheduling. Schneider's DFB task-usage FAQ excludes event tasks and SFC transitions from the contexts it describes as permitting a DFB instance. Check the applicable release documentation before implementing a design; this is a concrete reason to avoid treating all program locations as interchangeable.
Use our Control Expert project-structure guide as a related reading route. During a course, ask the instructor to show the actual configured execution context and explain when the example is evaluated. A labelled folder or section is not evidence that a particular timing or event behaviour exists.
Worked exercise: two independent review markers
Imagine a fictional learning application with two exercise submissions, A and B. Each submission has a marker showing that a failed check still needs review. The marker is an educational display state. It is not a machine alarm, acknowledgement system, interlock, safety function or command to physical equipment.
For each submission there are two Boolean inputs: FailedCheck and ClearRequest. There is one stored Boolean value, Pending. Start both A and B with Pending = false. During each model step, calculate the new value from the current inputs and that submission's previous value.
The rule is: a failed check sets the marker; otherwise a clear request removes it; otherwise the previous marker remains. If failure and clear arrive together, failure takes priority. In Boolean notation:
NextPending = FailedCheck OR (PreviousPending AND NOT ClearRequest)
This is a specification for a discrete learning model, not Schneider source code. The model uses explicit steps, not a claimed physical scan interval. Its initial state is chosen for the exercise and says nothing about how a controller retains data after power loss, download or restart.
First check every input combination
There are eight combinations of the previous state and two inputs. Writing them out prevents an attractive diagram from concealing an ambiguous requirement. Here, 0 means false and 1 means true.
| Previous pending | Failed check | Clear request | Next pending |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 0 | 0 | 1 | 0 |
| 0 | 1 | 0 | 1 |
| 0 | 1 | 1 | 1 |
| 1 | 0 | 0 | 1 |
| 1 | 0 | 1 | 0 |
| 1 | 1 | 0 | 1 |
| 1 | 1 | 1 | 1 |
The fourth and eighth rows establish failure priority. The fifth row establishes memory: the marker remains even when neither input is active. Without that row, a learner might accidentally implement a direct copy of FailedCheck, losing the record as soon as the input becomes false.
The second row is also useful. Clearing an already clear marker leaves it clear. Nothing in this requirement counts clear requests, records timestamps or identifies who reviewed the exercise. Those would be additional requirements with additional data and tests.

Now exercise A and B together
Use two independent state values, PendingA and PendingB. Apply the same rule to each. Both begin at 0 before the first row. Each row below describes one model step; it is not a measured duration.
| Step | A failed | A clear | B failed | B clear | Pending A after step | Pending B after step |
|---|---|---|---|---|---|---|
| 1 | 1 | 0 | 0 | 0 | 1 | 0 |
| 2 | 0 | 0 | 1 | 0 | 1 | 1 |
| 3 | 0 | 1 | 0 | 0 | 0 | 1 |
| 4 | 1 | 1 | 0 | 1 | 1 | 0 |
| 5 | 0 | 0 | 0 | 0 | 1 | 0 |
Step three is the central independence test. A clears while B remains pending. If clearing A also clears B, inspect the design for an accidentally shared state value or an incorrect variable connection. A screenshot showing both markers set would not detect this defect; the deliberately different histories do.
Step four tests two requirements at once. A remains pending because its failed check takes priority over its clear request. B clears because its own failed check is false. Step five demonstrates that each result persists independently when no new input is present.
Translate the idea into a vendor exercise carefully
A block definition describes reusable behaviour. A stateful instance needs its own state for its own history. In an applicable vendor course, ask the instructor to implement this distinction in the selected controller environment, then demonstrate the two histories in a watch or animation view.
Record the project version, target and execution context alongside the observations. Confirm where the previous state is stored, when it is updated and how the two inputs reach each instance. Do not infer that a familiar-looking block symbol proves separate state, correct scheduling or a supported use in every task.
An independent ladder logic foundations lesson can help with the Boolean expression. The additional work here is state ownership: one reusable rule must preserve two separate histories. That idea transfers conceptually between environments, while syntax, declarations, execution rules and project files require platform-specific learning.
Extend the example without changing its meaning silently
Try a third submission with its own marker, then repeat the independence tests. Next, deliberately connect both displays to A's state and explain why the displayed evidence is misleading even if B's internal calculation is correct. This separates program behaviour from presentation and variable mapping.
If you change the requirement so that clear takes priority, update the truth table first. The simultaneous-input rows will change. Keep the earlier version and its expected results so a reviewer can see why the new behaviour differs. Do not call a changed priority a bug fix unless it corrects an agreed requirement.
For an assessment, hand in the requirements, eight-row truth table, five-step trace and a short explanation of one deliberately introduced defect. A useful submission shows what was tested and what remains outside the model, including timing, persistence and any physical process.
Simulation: useful evidence with a defined boundary
Simulation can make logic visible and allow repeatable input sequences. Before using a particular simulator, confirm the supported target, instructions, data types and communication behaviour from the applicable documentation. Ask the provider to distinguish a simulated variable change from an actual measurement or device response.
The review-marker exercise above can be checked as pure Boolean state transitions. That does not validate a Schneider download, controller startup behaviour, network connection, physical input or machine response. Record those boundaries with the results so a later reader does not mistake a learning trace for commissioning evidence.
If your aim is to practise interpreting logic, PLC Simulator scan-cycle highlighting is a relevant independent learning feature to explore. Use it for the behaviour it actually demonstrates. It does not establish that Control Expert executes every instruction, task or communication function in the same way.
For equipment-based learning, ask what the learner personally configures and observes. Watching an instructor operate a rig is a different activity from completing an assessed task with supervised access. Both can be useful, but the quotation and syllabus should distinguish them.

HMI, networking and migration are separate learning targets
A display can show the wrong variable while the underlying logic is correct. In the review-marker example, connecting both indicators to PendingA produces a misleading view of B. A useful HMI exercise checks tag mapping, displayed state and the effect of deliberately different input histories, rather than judging success from a screen that looks finished.
Our Schneider HMI tag-import topic is a related route. For an actual course, specify the HMI model and engineering environment. Do not assume an older Magelis project and every newer display use the same import process or project format.
Networking deserves its own objective: identify the intended devices, data and diagnostic evidence. An Ethernet connector alone does not establish a compatible protocol or supported configuration. Use the industrial networking training guide to plan prerequisite learning, then ask the Schneider provider which network tasks the selected course includes.
Migration should begin with a preserved source project and documented version information. Use the Unity Pro to Control Expert migration topic to frame questions about conversion and verification. Successful file opening is only one observation; it does not prove all intended behaviour remains correct on another target or release.
Likewise, the M340 and M580 comparison topic can help organise a hardware discussion. A final platform decision needs the actual application requirements and supported configuration, rather than choosing the larger model because it appears in a course title.
Finding Schneider training in South Africa
Schneider's South African training and workforce services page lists Control Expert programming and intermediate topics. Treat the page as an official enquiry starting point. Obtain the current syllabus, software release, venue or delivery format, dates and written price before planning travel or requesting employer funding.
For Gauteng, the Johannesburg Schneider training guide provides a local planning route. Learners in Mpumalanga can use the Witbank–Emalahleni Schneider training guide, and Free State learners can use the Bloemfontein Schneider training guide. These links do not establish a current class, authorised venue or local equipment market share.
For Cape Town, Durban, Gqeberha or another location, ask whether delivery is remote, at a training facility or on site for an employer group. A provider's national presence does not mean every course is offered in every city. Confirm the address before booking transport and ask what happens if the class is postponed.
For shift workers, check the live attendance requirements, access period and assessment schedule. For remote learners, confirm laptop specifications, installation rights, connectivity requirements and how technical support works during exercises. These practical details can determine whether you can participate fully even when the syllabus is well matched.

Compare fees, licences and evidence of completion
Request a quotation that separates tuition, VAT treatment, software access, equipment access, assessment and any certificate charge. Add travel, accommodation and time away from work when comparing classroom and remote options. This page does not publish an invented standard price for Schneider training.
Use our South African PLC course price guide for a broader budgeting approach. Compare courses against the same outcome: a short introductory session and a supervised vendor project course are different purchases even if both mention PLC programming.
Ask exactly who issues any certificate and what it records. Attendance, assessed course completion, vendor recognition and a nationally recognised qualification are separate claims. If a provider advertises accreditation or credits, request the specific programme and registration details and verify those with the relevant issuing body. Do not infer recognition from a logo or from the software brand taught.
An employer may value a practical demonstration, but this page cannot promise employment, promotion or a particular salary. Keep evidence that you can explain: your own requirements, test results, project version and a description of assistance received. That makes the learning clearer to a supervisor without exaggerating its scope.
Questions learners ask about Schneider PLC courses
Can I learn Schneider PLC programming without buying a PLC?
You can begin with Boolean logic, state tables and software exercises. Confirm the capabilities and access terms of the environment you intend to use. Hardware-free learning does not cover every equipment, communication or commissioning task, so ask how the course handles those outcomes if they matter to your job.
Is Machine Expert Basic the same as Machine Expert?
They are distinct software paths in the controller mapping above. Schneider identifies Basic for M221 and Machine Expert for M251. Include the full product name and version in your course enquiry and verify compatibility for the exact controller rather than relying on the shared branding.
Should I study Unity Pro or Control Expert?
Control Expert is the current product name for the environment formerly called Unity Pro. If you support an existing project, its original software version matters. Ask for training that explains your actual project context and any supported transition, rather than assuming a name change removes all compatibility questions.
Can one DFB serve two independent exercises?
The reusable behaviour can be shared conceptually, while each stateful instance needs its own history. The A/B example shows how to test that independence. Implement the idea using the supported facilities and task context of your selected vendor environment; the table itself is not a compiled Schneider project.
Which Schneider course is best for a South African beginner?
Choose from your target controller, prerequisites and desired practical outcome. A beginner with an M221 objective should ask different software questions from a learner supporting an M580 project. Request a sample exercise and assessment description before using a course title, price or certificate as the deciding factor.
Does this independent learning route provide Schneider certification?
No. This website does not issue Schneider-authorised certification. Independent simulator practice can support foundational learning, while official vendor training, any separately recognised qualification and workplace authorisation have their own requirements. Confirm the exact credential with its issuer before paying for a course on that basis.

A practical starting plan
Identify your controller and software, then choose one task you want to demonstrate. Complete the review-marker truth table before implementing it, test both instances with different histories, and keep the results with your project notes. Use those notes to identify where you need instructor help.
Next, compare a provider's syllabus against the vendor-specific skills still missing: project configuration, supported execution context, diagnostics, HMI mapping or supervised equipment access. For broader practice between sessions, explore the independent PLC training curriculum and choose exercises relevant to those learning gaps.
Progress is the ability to explain and reproduce a result under stated conditions. Keep that evidence specific, and build the next stage of Schneider training around what the target project actually requires.