仿真和结构化文本生成使用Simulink PLC编码器金宝app

这个例子说明了如何模拟,并生成使用的Simulink PLC编码器™软件MPC控制器块结构化文本。金宝app生成的代码使用的单精度。

所需的产品下载188bet金宝搏

要运行这个例子,Simulink和Simu金宝applink的PLC编码器是必需的。

如果〜mpcchecktoolboxinstalled('金宝appSIMULINK')DISP(的金宝appSimulink需要运行这个例子。“返回结束如果〜mpcchecktoolboxinstalled('plccoder')DISP(的金宝appSimulink PLC编码器需要运行这个例子。“);返回结束

设置环境

您必须具有写权限才能生成相关的文件和可执行文件。因此,在开始仿真和代码生成之前,将当前目录切换到一个临时目录。

CWD = PWD;TMPDIR = tempname;MKDIR(TMPDIR);CD(TMPDIR);

定义工厂模型和MPC控制器

定义一个SISO植物。

植物= SS(TF([3 1],[1 0.6 1]));

定义为工厂MPC控制器。

TS = 0.1;%采样时间P = 10;%的预测范围m = 2时;%控制范围权重=结构('MV',0,'MVRate',0.01%,'OV',1);%权重MV =结构(“最低”,-Inf,“最大”,天道酬勤,'RateMin',-100,'RateMax',100);%输入约束OV =结构(“最低”,-2,“最大”,2);%输出限制mpcobj = MPC(植物中,Ts,P,M,重量,MV,OV);

模拟,并生成结构化文本

打开Simulin金宝appk模型。

MDL ='mpc_plcdemo';open_system(MDL)

要生成MPC控制器块结构化文本,完成以下两个步骤:

  • 配置MPC块使用单精度数据。设置输出数据类型MPC控制器块的属性来

open_system([MDL“/控制系统/ MPC控制器”])

  • 把MPC块的子系统块内和治疗子系统块作为一个原子单位。选择治疗以原子单位子系统块的属性。

模拟在Simulink模型。金宝app

close_system([MDL“/控制系统/ MPC控制器”])open_system([MDL“/输出//参考”])open_system([MDL“/输入”])SIM(MDL)
- >转换模型,以离散时间。- >加入到测量的输出信道#1假设输出干扰被集成白噪声。- >的“MPC”对象的“Model.Noise”属性是空的。假设在每个测得的输出信道的白噪声。

为了生成与PLC编码器代码,使用plcgeneratecode命令。

DISP(“生成PLC结构化文本...请等待,直到它完成。”)plcgeneratecode([MDL'/控制系统']);
创建PLC结构化文本...请等待,直到它完成。###为“mpc_plcdemo /控制系统”生成PLC的代码。###使用模型设置从PLC代码生成参数 'mpc_plcdemo' 的。###开始代码生成IDE  codesys23 。###的Emit PLC代码文件。###创建PLC代码生成报告 mpc_plcdemo_codegen_rpt.html 。### PLC代码生成成功为“mpc_plcdemo /控制系统”。###生成的文件: plcsrc / mpc_plcdemo.exp 

消息查看器对话框显示PLC代码生成是成功的。

关闭Simulink金宝app模型,并返回到原来的目录。

bdclose(MDL)CD(CWD)

相关话题