Generating C Code from Simulink Ladder
The following example demonstrates how to import a simple ladder diagram
.L5X file (
simpleController.L5X) into the
Simulink® environment and then generate C code from the imported model. You must have a
Coder™ license and necessary compilers to generate C code from the model. For more
information, see Get Started with Simulink Coder (Simulink Coder).
.L5X file was created using RSLogix™ 5000 IDE and contains contacts and coils representing switches and motor. The
following is a snapshot of the ladder structure.
plcladderimport function to import the ladder into Simulink.
[mdlName,mdlLib,busScript] = plcimportladder('simpleController.L5X','OpenModel','On')
The imported model contains a PLC Controller block named
simpleController, followed by a Task block named
MainTask and finally a Ladder Diagram Program block named
MainProgram. The model imported into Simulink has blocks that implement the functionality of the contacts and coils.
To generate C code for the subsystem,
you must first enable
'FastSim' option for the Simulink Ladder Diagram model.
currentState = plcladderoption('simpleController/simpleController','FastSim','on');
Open the Configuration Parameters dialog box from the model editor by clicking Modeling > Model Settings.
Alternately, type the following commands at the MATLAB® command prompt.
cs = getActiveConfigSet(model); openDialog(cs);
Ensure that a valid Toolchain is selected.
In the model window, initiate code generation and the build process for the model by using any of the following options:
Click the Build Model button.
In the Apps gallery, under Code Generation, click Embedded Coder. The C Code tab opens. Select Build> Build.
slbuildcommand from the MATLAB command line.