施耐德PLC应用,在程序中定义变量和数据!
(一)基本知识
1、变量分类
变量是在程序执行时可以修改的内存区域。Unity Pro 软件编程可以使用两种类型的变量:
1) 定位变量:是与 I/O 硬件模块输入输出通道相关联的,或者与内存引用相关联的变量。例如:“启动电机”与输入模板通道 %I 0.5.0 相关联,“启动电机”就是定位变量。
2) 非定位变量:是既不与I/O 硬件模块输入输出通道相关联,也不与内存引用地址相关联的变量,即没有地址关联的变量成为非定位变量。非定位变量在内存中的位置不可知。这种变量定义类型可以使您在编写程序时抛开地址的束缚,完全专注于您的应用。
2、通用数据类型和范围
BOOL/EBOOL : 布尔变量必须为 FALSE (0) 或 TRUE (1). EBOOL处理强制和边沿检测
WORD : 代表 “位串16”, 意味着数据长度为 16 位
INT : 代表整型数. 数值范围从 -32768 至 +32767
UINT : 代表无符号整型数. 数值范围从 0 至 65535
REAL : 代表浮点值. 数值范围从 -3.40e+38 至 3.40e+38
3、 通用数据类型的立即值语法
通常基本数据类型(EDT)的实例采用变量名或拓扑地址的方式引用,而在数据编辑器或程序段中也可以通过立即值的方式赋值和引用。如下图所示。
4、定义变量的三种方式
方式一,在项目浏览器中鼠标双击“变量和FB实例”,在弹出的‘数据编辑器窗口’定义,编辑、修改变量,如下图。
方式二,在项目浏览器中双击CPU或I/O模块,如下图查看相应模块的地址,在模块的I/O对象表格里定义,这种方式只能生成,不支持修改和删除。
方式三,在”程序编辑窗口”中定义,这种方式只能生成,不支持修改和删除。
(二)实际操作
1、在项目浏览器中点击“变量和FB实例”,在右侧“名称”下输入start,类型选 EBOOL,在下一行输入 stop,类型选 EBOOL,然后关闭窗口。如下图:
2、从硬件属性中书写:在项目浏览器中双击DDO3202k;左键点右侧“BMX DDO3202k”,选择I/O对象,再选择%Q,然后点击“更新网络”。在该界面右侧%Q0.2.0名称下,改写为cmd_motor,再用鼠标左键选中第2行,按着鼠标左键下拉,选择右侧Q0.2.1、Q0.2.2、Q0.2.3;然后在左侧“名称前缀”框中输入cmd_,点击“创建”。即可形成cmd_0、cmd_1、cmd_2;如下图:
3、关闭所有窗口,点击“变量和FB实例”,会显示刚才所有的定义变量名。
4、按保存按钮,保存项目。
PLC程序的仿真之-施耐德SoMachine PLC的变量强制(SoMachine PLC)
施耐德PLC分大中小三种类型,使用不同的软件进行编程,SoMachine编程软件可以对中小型PLC进行编程,这款软件集成了PLC仿真器,在PC上运行的PLC的仿真软件,可以在现场运行应用程序以前,就可以进行完整的测试,这样,读者就可以及早的发现程序中的逻辑错误,提高程序开发的效率,缩短程序的开发、调试时间。
施耐德M262 PLC如图1所示。
图1 施耐德M241 PLC
一、 SoMachine的仿真页面
开启仿真的方法,在菜单【在线】中选择【仿真】,操作如图2所示。
图2 选择仿真
然后点击编译和在线,先单击编译,编译没有错误后,就可以点击在线,进行程序的仿真操作,如图3所示。
图 3 程序的编译和在线操作
二、 仿真示例
开始下载时,对话框提示仿真器中没有程序,单击【是】继续如图4所示。
图4提示没有程序对话框
程序的左侧的硬件显示部分在线后,会显示当前硬件的状态,在使用仿真后此部分的内容仅作参考。
程序体上方的变量声明部分在仿真在线时,作为程序准备、修改、强制变量的部分,是调试程序中最频繁使用的功能。
常用的功能包括使用的变量采用修改值(【写入值】,快捷键Ctrl+F7键),对输入点变量采用【强制值】(快捷键F7)和对强制变量值之后【取消强制】(取消强制)。
程序编写部分在线后成为在线程序显示区,程序中的布尔变量会显示运行时的实际值,例如True或false,数值型变量或枚举型变量会显示当前值,例如程序中的枚举型变量mw2显示MW,如图5所示。
图 5 程序在线后的各个功能区
相关问答
施耐德m340系统变量介绍?
施耐德m340系统变量是用于支持不需要用户在创建报表时输入、但对创建报表有限定作用的信息。典型的系统变量如用户ID、报表创建时间。系统变量是参数的扩展,...
施耐德m340通讯变量怎么定义?
变量定义:变量类型选IO实型,连接设备自己选一下,寄存器里填40003或40004。(这里说一下,如果你的设备的开始位为0的话就要变量定义:变量类型选IO实型,连接设...
有谁知道施耐德M340PLC和组态王modbusTCP通讯中,modbus地址怎么对应?
1、将设备的16进制地址转换为10进制:0003H(16进制数,H没用,只是说明该数为16进制数)=0003。2、设备定义PLC----莫迪康---Mobus-rtu----串口。3、变量定义.....
施耐德PLC与CANopen通信?
g...1、首先设置对应的Can参数,比如波特率什么的。2、导入对应设备的eds文件导入somachine。3、如果用PDO的话就比较简单,打开对应设备,在CANopenI/OMap...
施耐德SoMachine平台下,在进行LAD(梯形图)编程时,如何调用FB(功能块)?特别是带局部变量(形参)的功能块?
先拖一个带问号的功能块,一般在SoM最上面菜单,或者右边General菜单那,然后点一下框框里的三个问号那,右边会出来一个三个点的小框框,再点一下这个小框框就...
plc中bool是什么数据类型?
bool是一个布尔变量,它是逻辑变量的定义者,类似于float、double等。bool是布尔变量,用于逻辑判断。bool的值是false和true,即0和1之间的差。False可以表示0,...
施耐德plc改施耐德触摸屏的点?
你所说触摸屏的点应该特指触摸屏的内部变量,因为外部变量都联接到PLC(自动同步的);如果要用PLC改触摸屏内部变量的值,则需要在触摸屏编写脚本赋值,脚本执行...
在座的资深人士有哪位知道!!PLC控制模拟屏需要配置什么设备?...
[回答]模拟模拟量量是指变量在一定范围连续变化的量也就是在一定范围(定义域)内可以取任意值.一般模拟量一般模拟量是指现场的水井水位、水塔水位、泵出...
为何中国的一些尖端科技已远超日本?
这是个好问题,同时也可以预见会有为数众多的“土产日杂”分子咬钩。为了防止这些疯狗乱咬,当然也为了楼主自身的人身安全,我会先举出几个具体事例来说明。之后...
台达PLC和触摸屏下载程序问题?台达触摸屏好不好?
[回答]如果是用WPLsoft编程软件,是可以的,有专门的手册说明,请到相关网站下载手册。如果你觉得不方便,最好使用USB下载触摸屏程序,做一个485的接口到触摸...