WinAC S2O(Simulink to ODK) 向导使用入门 WinAC S2O(Simulink to ODK)Wizard Getting-started Getting-started Edition (2013 年 3 月 )
摘要本文以风能 Demo 主控系统的代码在 Step7 中的集成为例, 详细介绍了 WinAC S2O 向导的安装注意事项以及使用方法 关键词 WinAC,S2O,Matlab/Simulink, 风能 Key Words WinAC,S2O,Matlab/Simulink,Wind Energy I CS LS TS 1 Page 2-17
目 录 1 WinAC S2O 向导概述...4 2 WinAC S2O 向导安装...5 2.1 软件要求... 5 2.2 安装顺序... 5 3 WinAC S2O 向导的使用...6 3.1 风机建模及仿真... 6 3.2 代码转换步骤... 7 3.2.1 采用 Matlab 中的 Real-Time Workshop(RTW) 生成 C/C++ 代码... 8 3.2.2 采用 Simulink to ODK wizard(s2o wizard) 生成 dll( 或 rtdll) 及 SCL 源代码... 10 3.2.3 Step7 V5.5 中调用生成的功能块... 13 3.2.4 将生成的 DLL 拷贝到目标 PC 的 C:\ 下... 14 3.2.5 Step7 V11 代码转换及调用... 14 I CS LS TS 1 Page 3-17
1 WinAC S2O 向导概述 Mathworks 公司的产品 MATLAB/Simulink 是一款提供建模与仿真功能的软件 Simulink 图形化的编辑器可以用来创建实际的工艺过程及解决方案, 譬如, 可以 应用到控制工程领域 Real-Time Workshop Embedded Coder(RTWEC) 插 件能够将 Simulink 子系统直接编译为 C/C++ 代码 借助于 WinAC ODK, 这些 C/C++ 代码可以在 Windows 或者 WinAC RTX 实时环境下处理执行 WinACS2O(Simulink to ODK) 向导使得 Simulink 子系统在 Step7 中的集成变 得更加方便快捷 WinAC S2O 向导自动创建用于在 Step7 项目中集成所需要的所有的功能块及文 件 通过 WinAC S2O 向导, 通过 RTWEC 创建的 C/C++ 代码可以创建成 SCL 源代码以及 DLL 或 RTDLL 文件 Step7 V5.X 或 TIA portal Step7 V11 可以将创 建的 SCL 源代码很容易的集成到 Step7 程序中去, 同时也可以将 DLL 或 RTDLL 文件方便的装载到 WinAC RTX 所在的 PC 系统中去, 最终实现 C/C++ 代码在 WinAC RTX 系统中的集成 本文将以风能 Demo 控制系统在 Step 7 中的集成为例介绍 WinAC S2O 的使用, 图 1 简单描述了代码转换及集成过程 图 1 使用 S2O 向导实现风能 Demo 控制系统在 Step 7 中的集成 I CS LS TS 1 Page 4-17
2 WinAC S2O 向导安装 2.1 软件要求 WinAC S2O 向导安装之前, 需要安装如下软件 : Microsoft Visual Studio 2008 Professional STEP V5.5 与 S7-SCL V5.3 或 STEP 7 V11 Professional with Service Pack 2 WinAC ODK V4.2 2.2 安装顺序需要按照如下顺序安装 : Microsoft Visual Studio 2008 Professional STEP V5.5 与 S7-SCL V5.3 或 STEP 7 V11 Professional with Service Pack 2 ODK4.2; S2O 提示! ODK4.2 不支持 Win7, 而 S2O 需要 ODK4.2 的支持, 所以 S2O 也只能在 Windows Xp 环境 下应用, 不支持 Win7; 另外经测试 S2O 不支持 VS2005 I CS LS TS 1 Page 5-17
3 WinAC S2O 向导的使用 3.1 风机建模及仿真 首先将风机全部或部分对象或功能建模并仿真, 如图 2 所示 图 2 风机建模及仿真关于 Matlab/Simulink 的建模及仿真本文不展开介绍, 具体操作可参考 Mathworks 公司的相关技术资料 西门子提供了基于 WinAC 及 MicroBox427C 的软硬件平台, 用于实现风能算法的集成, 实现风机主控 变桨 偏航控制以及系统的状态监控 I CS LS TS 1 Page 6-17
仿真整个风机 生成控制功能块 在 WinAC RTX 环境下调用生成的功能块, 无需重新编程 图 3 基于 WinAC 及 MicroBox427C 实现风能算法的集成 3.2 代码转换步骤 基于 Matlab/Simulink 对风机的仿真, 使用 S2O 向导实现风能算法在 Step7 中的 集成主要通过如图 4 所示的三个步骤 : 采用 Matlab 中的 Real-Time Workshop(RTW) 生成 C/C++ 代码 ; 采用 Simulink to ODK wizard(s2o wizard) 生成 dll( 或 rtdll) 及 SCL 源代 ; Step7 中调用生成的功能块及 DLL 文件 1 采用 Real-Time Workshop Embedded Coder 编译创建 C 代码 2 采用 WinAC S2O Wizard 编译创建项目输入 3 在 STEP Mathlab/Simulink 7 中使用 Matlab/Simulink verwenden subsystem engineering integration input ODK DLL/RTDLL SCL source WinAC Simulink to ODK Wizard DLL / RTDLL 图 4 使用 S2O 向导实现风能算法在 Step 7 中集成过程 I CS LS TS 1 Page 7-17
下面以风机 Demo 主控系统的代码转换为例详细介绍 S2O 的使用 3.2.1 采用 Matlab 中的 Real-Time Workshop(RTW) 生成 C/C++ 代码 序号操作图例 1. 1 设置 Matlab/Simulink 中 Real- Time Workshop(RTW) 的代码编译环境 2 I CS LS TS 1 Page 8-17
3 2. 选择编译子系统命令 3. 选择参数 I CS LS TS 1 Page 9-17
4. 编译进行中 编译之后生成的代码 3.2.2 采用 Simulink to ODK wizard(s2o wizard) 生成 dll ( 或 rtdll) 及 SCL 源代码 序号 操作 图示 1. 新建 Step7 项目 2. 打开 WinAC ODK Library I CS LS TS 1 Page 10-17
3. 将 SFB65001 SFB65002 以及 SFB65003 拷贝到新建的 Step7 项目中去 打开 WinAC S2O 向导 4. 1 选择 C/C++ 代码所在的存储位置 2 I CS LS TS 1 Page 11-17
5. 1 选择目标项目路径 2 I CS LS TS 1 Page 12-17
3 6. 命名 SCL 源代码及生成的 FB 块 7. 生成目标文件 (SCL 源代码及 DLL 文件 ) 3.2.3 Step7 V5.5 中调用生成的功能块 序号操作图示 I CS LS TS 1 Page 13-17
1. 打开目标项目, 可以看到 FB1 已包含在项目中 2. 调用 FB 3.2.4 将生成的 DLL 拷贝到目标 PC 的 C:\ 下 3.2.5 Step7 V11 代码转换及调用 序号 操作 图示 1. 选择 SCL 代码的应用环境 - Step7 V11 I CS LS TS 1 Page 14-17
2. 命名 SCL 源代码以及 FB 变量表名称, 之后点击 Finish 按钮 完成 SCL 及 DLL 文件的创建 3. Step7 V11 中选择 Add new external file 并选择创建的 SCL 文件 I CS LS TS 1 Page 15-17
4. 将导入的 SCL 代码通过 Generate Blocks 转换成 FB 块 5. 在项目中调用生成的 FB 块 如果您对该文档有任何建议, 请将您的宝贵建议提交至下载中心留言板 该文档的文档编号 :A0698 I CS LS TS 1 Page 16-17
附录 - 推荐网址 自动化系统西门子 ( 中国 ) 有限公司工业业务领域客户服务与支持中心网站首页 :www.4008104288.com.cn 自动化系统下载中心 : http://www.ad.siemens.com.cn/download/doclist.aspx?typeid=0&catfirst=1 自动化系统全球技术资源 : http://support.automation.siemens.com/cn/view/zh/10805045/130000 找答案 自动化系统版区 : http://www.ad.siemens.com.cn/service/answer/category.asp?cid=1027 注意事项 应用示例与所示电路 设备及任何可能结果没有必然联系, 并不完全相关 应用示例不表示客户的具体解决方案 它们仅对典型应用提供支持 用户负责确保所述产品的正确使用 这些应用示例不能免除用户在确保安全 专业使用 安装 操作和维护设备方面的责任 当使用这些应用示例时, 应意识到西门子不对在所述责任条款范围之外的任何损坏 / 索赔承担责任 我们保留随时修改这些应用示例的权利, 恕不另行通知 如果这些应用示例与其它西门子出版物 ( 例如, 目录 ) 给出的建议不同, 则以其它文档的内容为准 声明我们已核对过本手册的内容与所描述的硬件和软件相符 由于差错难以完全避免, 我们不能保证完全一致 我们会经常对手册中的数据进行检查, 并在后续的版本中进行必要的更正 欢迎您提出宝贵意见 版权 西门子 ( 中国 ) 有限公司 2001-2013 版权保留复制 传播或者使用该文件或文件内容必须经过权利人书面明确同意 侵权者将承担权利人的全部损失 权利人保留一切权利, 包括复制 发行, 以及改编 汇编的权利 西门子 ( 中国 ) 有限公司 I CS LS TS 1 Page 17-17