SoMachine软件介绍和编程培训ConfidentialPropertyofSchneiderElectric王兆宇2018-5-12Page2ConfidentialPropertyofSchneiderElectric|1SoMachine软件简介2SoMachine软件编程入门培训3SoMachine典型编程举例-HSC4SoMachine典型编程举例-PTO5SoMachine典型编程举例-Modbus6SoMachine典型编程举例-CANopen7SoMachine在线编译、诊断SoMachinePage3ConfidentialPropertyofSchneiderElectric|ConfidentialPropertyofSchneiderElectricSoMachineV4.3编程软件V12007V22009V32011V4.12014友好的软件界面丰富的编程语言灵活的配置方案详实的在线帮助V4.1SP12015V4.22016V4.32017V4.3SP22018ConfidentialPropertyofSchneiderElectricSoMachineV4.2/V4.3自定义安装Windows7SP1专业版32位/64位Windows8.1专业版32位/64位Windows10专业版32位/64位PC推荐配置CPU-Intel®Core™i7内存-8G硬盘-15G空闲空间SoMachine4.2/4.3软件下载:请关注微信号SoMachine然后在首页中下载SoMachine4.1授权在4.2/3中有效SoMachine具有强大的设备集成能力简化机器的工程阶段•实现完整的机器设备程序,通过:1项目文件1次下载1根编程电缆•TVDA文档和项目文件可以重复使用在相同机器上,大量节省设计时间。注:TVDA:TestedValidatedDocumentedArchitecturePage6ConfidentialPropertyofSchneiderElectric|高级集成设备元件本体集成在SoMachine编程软件中,方便使用SoMachine兼容FDT/DTM使用FDT/DTM的好处:•所有集成设备的一致性•基于统一的标准,开放第三方产品的接入Page7ConfidentialPropertyofSchneiderElectric|通过拖放来配置你的设备•从设备和模块目录•本地集成减少操作次数驱动器是预配置好的•网络配置已经预设值完成•现场总线预配置完成•配置好的IO映射能够简化项目的开始阶段•自动加载库文件第一步快速而且简单:拖放编译下载运行!SoMachine编程入门Page8ConfidentialPropertyofSchneiderElectric|SoMachine软件如何启动SoMachine和更改编程软件的语言•从窗口的开始菜单选择SoMachineV4.2/4.3•或者双击桌面上的SoMachineV4.2/4.3•打开SoMachine软件•SoMachine第一次打开后是英文版•在系统设定-》logicbuilderoption-》Internationalsetting-》选择中文,选择后点击OK•然后退出SoMachine再重新进入就是中文界面了Page9ConfidentialPropertyofSchneiderElectric|SoMachine软件启动介绍SoMachine软件启动画面•进入SoMachineV4.2软件后在启动界面下共有四个选项•最近的项目-打开最近编辑过的项目•连接控制器•新建项目•打开项目•选择新建项目后•SoMachine提供4个新建项目的方式,分别是:•使用助手•带模块•空项目•新建库Page10ConfidentialPropertyofSchneiderElectric|SoMachine软件创建新的项目使用模板•使用模板中的TVDA创建项目在带模板选项下面,选择机器类型并填写项目名称Page11ConfidentialPropertyofSchneiderElectric|SoMachine软件创建新的项目使用空项目创建新项目•使用空项目创建新的项目,项目中的PLC、触摸屏等硬件和程序需手动添加Page12ConfidentialPropertyofSchneiderElectric|SoMachine软件创建新的库使用空项目创建新库•使用空项目创建新的库-库的名称和库的属性Page13ConfidentialPropertyofSchneiderElectric|SoMachine主页面编程环境介绍主界面简介•多选项卡导航器:设备树、应用程序树和工具树Page14ConfidentialPropertyofSchneiderElectric|SoMachine设备树硬件配置•在设备树下双击需要编辑的条目•例如需要设置高速计数器则双击‘counter’,其它设置例如PTO,逻辑输入、输出、通讯等都使用同样的方法•然后进行进一步设置,例如选择高速计数器的类型为HSCsimple•IO上的扩展:Catridge、COM_Bus和IO_Bus,采用右键菜单,选择“添加设备”Page15ConfidentialPropertyofSchneiderElectric|SoMachine应用程序树编程的功能•应用程序树包含了软件编程核心的功能•采用右键菜单,选择“添加对象”,可添加的对象包括最常用的POU、跟踪、可视化、配方…..•然后选择添加程序组织单元POU,在POU中选择此POU是程序、功能块还是函数Page16ConfidentialPropertyofSchneiderElectric|SoMachine应用程序树续任务的配置和POU的调用•在任务配置中可创建多个任务,MAST任务在创建项目后自动创建•选择某一任务,例如MAST任务,双击进入任务配置界面,设置任务优先级(数值越小越高)和任务的类型,如果是循环的,则每隔一段设置的“间隔”时间自动执行。Page17ConfidentialPropertyofSchneiderElectric|SoMachine应用程序树续任务的配置和POU的调用•在任务配置中可设置软件看门狗,看门狗的报警时间‘时间’*“灵敏度”•在“添加调用”选择在任务中执行的程序组织单元POU。Page18ConfidentialPropertyofSchneiderElectric|SoMachine工具树库文件的添加和配置•施耐德提供大量的库文件供最终用户使用,有些库在添加硬件时自动添加,有些库可以手动添加•在工具树还有一个重要功能是工程设置Page19ConfidentialPropertyofSchneiderElectric|SoMachine六种编程语言一FBD/LD/IL/CFC/ST/SFC•梯形图LD是基于图形的编程语言,梯形图语言沿袭了继电器控制电路的形式,梯形图是在常用的继电器与接触器逻辑控制基础上简化了符号演变而来的,具有形象、直观、实用等特点,电气技术人员容易接受,是电气人员编程使用比较多的语言•指令列表(IL)是一种类似汇编程序的IEC61131-3编程语言,适合熟练掌握机器语言的IT人员来使用,该语言支持基于累加器的编程。支持IEC61131-3操作符以及多输入/多输出、取反、注释、输出的设置/重置和无条件/有条件跳转。每个指令主要通过使用LD操作符将值载入累加器来发挥作用。此后会使用从累加器中获得的第一个参数执行操作。操作的结果可在累加器中使用Page20ConfidentialPropertyofSchneiderElectric|SoMachine六种编程语言二FBD/LD/IL/CFC/ST/SFC•FBD功能块图是面向图形的编程语言,是一种类似于数字逻辑电路结构的编程语言,是一种使用布尔代数的图形逻辑符号来表示的控制逻辑,一些复杂的功能用指令框表示,适合于有数字电路基础的编程人员使用。功能块图用类似于与门、或门的框图来表示逻辑运算关系,方框的左侧为逻辑运算的输入变量,右侧为输出变量,输入、输出端的小圆圈表示“非”运算,方框用“导线”连在一起,信号自左向右•连续功能图(CFC)语言是用图形方式连接程序库中以块的形式提供的各种功能,包括从简单的逻辑操作到复杂的功能块调用。编程时将这些块放到图中并用线连接起来即可。功能块自由放置,调整图形元素,允许将功能块的输出反过来接到输入。Page21ConfidentialPropertyofSchneiderElectric|SoMachine六种编程语言三FBD/LD/IL/CFC/ST/SFC•ST语言是定位给程序设计者使用的,它是一个与Pascal语言相类似的高级程序设计语言.程序包含了一些象DO-WHILE、REPEAT-UNTIL、FOR-TO-DO、IF-THEN-ELSE、CASE-OF的结构语句使用,方便用户编程,虽然不直观,但是编程方便,相比梯形图来说占用空间小,建议使用SoMachine软件的编程人员都要掌握这种编程方法。•SFC顺序功能图,也称为顺序功能流程图,是一种强大的描述控制程序的顺序行为特征的图形化语言,可对复杂的过程或操作由顶到底地进行辅助开发,特别适合用于有固定流程的工艺过程。SFC允许一个复杂的问题逐层地分解为步和较小的能够被详细分析的顺序。SFC本身不是一种独立的语言.一个用SFC编写的程序看上去就象一个方框图,这个方框图由程序块(梯阶)、步间的转换和发生这些转换时所依赖的条件组成。Page22ConfidentialPropertyofSchneiderElectric|SoMachine编程中的变量声明变量声明•可通过以下方式声明一个变量:在软件目录的变量视图中在POU的声明编辑器中-手动添加,常用通过自动声明对话框–最常用在DUT编辑器中在GVL编辑器中-手动添加,常用•变量声明的语法:标识符{AT地址}:数据类型{:=初始值};{:=初始值}这部分根据需要填写,可以没有初始值。•变量的数据类型•VAR_INPUT、VAR_OUTPUT、VAR_IN_OUT、VAR_GLOBAL、VAR_TEMP、VAR_STAT、VAR_EXTERNAL、VAR_CONFIGPage23ConfidentialPropertyofSchneiderElectric|SoMachine编程中的变量声明变量声明•变量数值的断电保持(剩余变量和保留持久性变量):•前1000个%MW会自动持久保留,如果没有使用AT指令与这些变量关联。它们的值在重新启动/热复位/冷复位后得到保留。•在GVL编辑器中声明为VARGLOBALPERSISTENTRETAIN,即将变量m1声明为保留持久性变量Page24ConfidentialPropertyofSchneiderElectric|SoMachine的梯形图编程界面和常用指令梯形图的编程•在FBD/LD/IL编辑器中,可选择梯形图编程时的所有元素包括:插入新的网络(即新的梯级)、常开、常闭、上升沿、下降沿触点、串联或并联触点、线圈、(置位线圈、复位线圈、取反线圈)、定时器(TON,TOFF,TP)、比较器•可插入跳转或返回return•可通过空功能块调用库中或用户自己编写的功能块•可插入分支•通过视图可以将程序在FBD、IL或LD三种语言中切换•推荐用户尽快熟悉和使用ST编程语言Page25ConfidentialPropertyofSchneiderElectric|SoMachine的常用指令常用基本指令•基本算术指令(由IEC1131-3标准规定)可用:•ADD–加、MUL-乘、SUB–减、DIV–除、MOD-取余数、MOVE–赋值操作•逻辑操作操作符可用(与IEC1131-3标准匹配):•AND-与、OR-或、XOR–异或、NOT-取反•移位操作符•SHL-用于操作数的逐位左移位的IEC操作符。