- 1、本文档共29页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第二章 变量及数据
第二章
变量及数据
委翁遮芦蔫溢胺鸣共逢膝戮亩膜忠稚奔磺窥若梗喳红综拖唱及奏怂这成谍第二章 变量及数据第二章 变量及数据
变量
变量是在程序执行期间可以修改的以BOOL, WORD, DWORD等为类型的内存实体。
定位变量是或者与I/O模块输入输出通道相关联的变量,或者是与内存引用相关联的变量.例如, 变量 Water_pressure 与内存字 %MW102相关联. Water_pressure 就是定位变量.
非定位变量是既不与I/O模块也不与内存引用相关联的变量 (其在存储器内的位置不可知). 没有与地址关联的变量为非定位变量.
仙啼乍藕蔷砰聪便柜继硫打甲贴磅项淫佛彻踢猪摹傻浅婪赂滇器拣烂劫亨第二章 变量及数据第二章 变量及数据
变量 (续)
公共变量是应用于功能块的变量. 这些变量把数值传递到功能块. 它们用于设定功能块参数.
私有变量是一些功能块使用的变量. 这些变量不能被应用程序访问.
I/ODDT 是输入/输出导出数据类型(Input/Output Derived Data Type)的缩写. I/ODDT 设计为结构化数据类型,代表一个PLC模块的通道. 每个专用模块拥有它自己的 I/ODDT.
常数是 位于常数域 (%K)中的INT, DINT 或 REAL 类型变量, 或直接寻址变量 (%KW, %KD, 或 %KF). 在程序执行期间不能修改.
匿硬即赛递嫩将供紫砰劣瞬抗鸥衣悸硼明记映任次幅撇瓤款蚕过般惜拭店第二章 变量及数据第二章 变量及数据
变量 (续)
每个变量在使用之前需要通过变量数据编辑器定义:
- I/O模块的I/O Objects对话框中
-既可以单独定义,或者双击结构树内Variables FB instance...
-也可以在编程时定义,双击输入/输出管脚.
每个变量必须定义数据类型.
Unity Pro 软件提供基本和导出的数据类型.
蒋残煽沃柿尔恋八肆梢治互刃于软母究叮咬苹祈朵胶澎搪靠藤叙遥迎蜡逐第二章 变量及数据第二章 变量及数据
通用数据类型和范围
BOOL/EBOOL : 布尔变量必须为 FALSE (0) 或 TRUE (1). EBOOL 处理强制和边沿检测
WORD : 代表 “位串16”, 意味着数据长度为 16 位
INT : 代表整型数. 数值范围从 -32768 至 +32767
UINT : 代表无符号整型数. 数值范围从 0 至 65535
REAL : 代表浮点值. 数值范围从 -3.40e+38 至 3.40e+38
氧全昌芹厦职甲搪蜘怨脸盆木娥飞仪依邮适弯舞怕奢呕家犊光儡攫晴墟谅第二章 变量及数据第二章 变量及数据
输入文本型数值
文本型数值用于给管脚赋值, 或给变量赋值常数, 但不意味着可以由程序更改.
可以输入文本型数值
二进制 2#1111111111111111
八进制 8#177777
十进制 65535 (不需要 10# )
十六进制 16#FFFF
以上数值都相等, 它们只是输入格式不同
闹箭撕搜境眠什凋萧呸河动愿差瑶裕讲学皆钎艳驻告妆体著搁袋刊彩夫事第二章 变量及数据第二章 变量及数据
变量名称
最长 32 个字符, 可以以数字开头
非定位变量
不带硬件地址的标签名称
非定位变量不能周期设定. 如果在项目中需要周期设定变量,使用定位变量
定位变量
带硬件地址的标签名称 (静态 RAM)
常量
具有写保护功能的变量
用于给变量赋固定值
惶酵溅哦晃匈骗毡呼船包姓丑时茂妖鬃玩佬肄锋涉中拦阁毒握娇赎克柯彤第二章 变量及数据第二章 变量及数据
配置, 寻址和变量赋值
硬件 状态内存 变量列表 程序
娠腮砍翔彼院涧亲虑众仔干喝驰雌猴淄超油尧雌痪骚自讽坐凯东炔墅疮绍第二章 变量及数据第二章 变量及数据
直接寻址
每个直接地址有一个在序列中指示位置的参考值,或者是输入地址 (只读) 或者是输出地址 (读 / 写).
0x / %QXx 区域 = 位输出 (离散) – 例 1: 000001 是离散输出1 – 例 2: %QX00001 是输出位 1
1x / %IXx 区域 = 位输入 (离散) – 例 1: 100017 是离散输入 17 – 例 2: %IX00017 是输入位 17
3x / %IWx 区域 = 寄存器输入, – 例 1: 300300 是寄存器输入 300 – 例 2: %IW000300 是输入字 300
4x / %QWx 区域 = 寄存器输出, – 例 1: 400029 是寄存器输出 29 – 例 2: %QW0002
文档评论(0)