UnityPro 变量及数据教案.pptx
会计学1UnityPro 变量及数据变量及数据变量变量 n n变量变量变量变量是在程序执行期间可以修改的以是在程序执行期间可以修改的以BOOL,WORD,DWORDBOOL,WORD,DWORD等为类型的内存实体等为类型的内存实体。n n定位变量定位变量定位变量定位变量是或者是或者与与I/OI/O模块输入输出通道相关联的变量,或者是与内存引用相关联的变量模块输入输出通道相关联的变量,或者是与内存引用相关联的变量.例如例如,变量变量 Water_pressure Water_pressure 与内存字与内存字%MW102MW102相关联相关联.Water_pressure Water_pressure 就是定位变量就是定位变量.n n非定位变量非定位变量非定位变量非定位变量是既不与是既不与I/OI/O模块也不与内存引用相关联的变量模块也不与内存引用相关联的变量(其在存储器内的位置不可知其在存储器内的位置不可知).).没有与地址没有与地址关联的变量为非定位变量关联的变量为非定位变量.第1页/共30页变量变量(续续)n n公共变量公共变量公共变量公共变量是应用于功能块的变量是应用于功能块的变量.这些变量把数值传递到功能块这些变量把数值传递到功能块.它们用于设定功能块参数它们用于设定功能块参数.n n私有变量私有变量私有变量私有变量是一些功能块使用的变量是一些功能块使用的变量.这些变量不能通过应用程序存储这些变量不能通过应用程序存储.n nI/ODDTI/ODDT 是输入是输入/输出导出数据类型输出导出数据类型(Input/Output Derived Data Type)Input/Output Derived Data Type)的缩写的缩写.I/ODDT I/ODDT 设计为结构化数设计为结构化数据类型,代表一个据类型,代表一个PLCPLC模块的通道模块的通道.每个专用模块拥有它自己的每个专用模块拥有它自己的 I/ODDT.I/ODDT.n n常数常数常数常数是是 位于常数域位于常数域(%(%K)K)中的中的INT,DINT INT,DINT 或或 REAL REAL 类型变量类型变量,或直接寻址变量或直接寻址变量(%(%KW,%KD,KW,%KD,或或%KF).KF).在程在程序执行期间不能修改序执行期间不能修改.第2页/共30页通用数据类型和范围通用数据类型和范围n nBOOL/EBOOLBOOL/EBOOL:布尔变量必须为布尔变量必须为 FALSE(0)FALSE(0)或或 TRUE(1).EBOOL TRUE(1).EBOOL 处理强制和边沿检测处理强制和边沿检测n nWORDWORD:代表代表“位串位串16”,16”,意味着数据长度为意味着数据长度为 16 16 位位n nINTINT:代表整型数代表整型数.数值范围从数值范围从-32768 -32768 至至+32767+32767n nUINTUINT :代表无符号整型数代表无符号整型数.数值范围从数值范围从 0 0 至至 65535 65535n nREALREAL :代表浮点值代表浮点值.数值范围从数值范围从-3.40-3.40e+38 e+38 至至 3.40 3.40e+38e+38第4页/共30页输入文本型数值输入文本型数值n n文本型数值用于给管脚赋值文本型数值用于给管脚赋值,或给变量赋值常数或给变量赋值常数,但不意味着可以由但不意味着可以由程序更改程序更改.n n可以输入文本型数值可以输入文本型数值可以输入文本型数值可以输入文本型数值n n八进制八进制 8#177777 8#177777n n十进制十进制 65535(65535(不需要不需要 10#)10#)n n 十六进制十六进制 16#16#FFFFFFFF以上数值都相等以上数值都相等以上数值都相等以上数值都相等,它们只是输入格式不同它们只是输入格式不同它们只是输入格式不同它们只是输入格式不同 第5页/共30页变量名称变量名称n n最长最长 32 32 个字符个字符,可以以数字开头可以以数字开头非定位变量非定位变量非定位变量非定位变量n n不带硬件地址的标签名称不带硬件地址的标签名称n n非定位变量不能周期设定非定位变量不能周期设定.如果在项目中需要周期设定变量,使用定位变量如果在项目中需要周期设定变量,使用定位变量定位变量定位变量定位变量定位变量n n带硬件地址的标签名称带硬件地址的标签名称(静态静态 RAM)RAM)常量常量常量常量n n具有写保护功能的变量具有写保护功能的变量n n用于给变量赋固定值用于给变量赋固定值第6页/共30页配置配置,寻址和变量赋值寻址和变量赋值硬件硬件 状态内存状态内存 变量列表变量列表 程序程序第7页/共30页直接寻址直接寻址n n每个直接地址有一个在序列中指示位置的参考值,或者是输入地址每个直接地址有一个在序列中指示位置的参考值,或者是输入地址(只读只读)或者是输出地址或者是输出地址(读读/写写).).n n0 0 x/%QXx x/%QXx 区域区域=位输出位输出(离散离散)例例 1:000001 1:000001 是离散输出是离散输出1 1 例例 2:%2:%QX00001 QX00001 是输出位是输出位 1 1n n1 1x/%IXx x/%IXx 区域区域=位输入位输入(离散离散)例例 1:100017 1:100017 是离散输入是离散输入 17 17 例例 2:%2:%IX00017 IX00017 是输入位是输入位 17 17n n3 3x/%IWx x/%IWx 区域区域=寄存器输入寄存器输入,例例 1:300300 1:300300 是寄存器输入是寄存器输入 300 300 例例 2:%2:%IW000300 IW000300 是输入字是输入字 300 300n n4 4x/%QWx x/%QWx 区域区域=寄存器输出寄存器输出,例例 1:400029 1:400029 是寄存器输出是寄存器输出 29 29 例例 2:%2:%QW00029 QW00029 是输出字是输出字 29 29 第8页/共30页变量和变量和 FB 实例目录实例目录n n存储存储 变量变量变量变量(基本和导出基本和导出)和功能块实例和功能块实例第9页/共30页编辑变量编辑变量n n在在 同一个工具中同一个工具中同一个工具中同一个工具中作变量的类型定义和实例声明作变量的类型定义和实例声明3标识符标识符非定位变量非定位变量数据类型数据类型 定位变量定位变量双击单元进入编双击单元进入编辑模式辑模式21第10页/共30页过滤过滤n n通用类型通用类型(EDT,.)EDT,.)或变量名称可以直接过滤或变量名称可以直接过滤n n使用变量属性的漏斗过滤器使用变量属性的漏斗过滤器(类型类型类型类型,注释注释注释注释,地址地址地址地址,.),.)123第11页/共30页配置显示列配置显示列n n配置显示列配置显示列配置显示列配置显示列n n用户可以根据需要来配置想要显示的变量参数列用户可以根据需要来配置想要显示的变量参数列.列的显示顺列的显示顺序可以通过右侧按钮调整序可以通过右侧按钮调整 选中名称前选中名称前面的检查框可以显示相关列面的检查框可以显示相关列 .1212第12页/共30页数据属性数据属性(续续)n n变量的所有参数可以在数据属性窗口中显示变量的所有参数可以在数据属性窗口中显示变量的所有参数可以在数据属性窗口中显示变量的所有参数可以在数据属性窗口中显示.第13页/共30页编辑数据类型编辑数据类型n n数据类型可以从以前使用过的类型列表中选择数据类型可以从以前使用过的类型列表中选择 n n或通过按或通过按 按钮从变量类型中直接选择按钮从变量类型中直接选择2112第14页/共30页IODDTn n使用完整的使用完整的 I/O I/O 结构数据将模块通道映射到变量上结构数据将模块通道映射到变量上12345第15页/共30页编辑导出功能块编辑导出功能块(DFB)n n定义用户功能块类型定义用户功能块类型123-DFB 程序段4第16页/共30页编辑功能块编辑功能块(EFB,DFB)n n使用功能块实例使用功能块实例12第17页/共30页导出数据类型导出数据类型n n定义数组或结构类型定义数组或结构类型123第18页/共30页变量类型变量类型(DDT)n n使用数组或结构实例使用数组或结构实例4第19页/共30页导出功能导出功能n n可以使用不同选项导出整个程序段可以使用不同选项导出整个程序段可以使用不同选项导出整个程序段可以使用不同选项导出整个程序段:包含导出数据类型包含导出数据类型(DDT)DDT)包含导出功能块包含导出功能块(DFB)DFB)包含子程序包含子程序123123第20页/共30页导出功能导出功能(续续)n nDDT DDT 或或 DFB DFB 实例可以与相关类型同时导出,实例可以与相关类型同时导出,便于在新程序中的重复使用便于在新程序中的重复使用导出导出DDTDDT变量类型变量类型导出导出DFBDFB变量类型变量类型1221第21页/共30页导入功能导入功能n n使用向导使用向导使用向导使用向导可以改变变量、程序段的可以改变变量、程序段的命名命名,.,.或映射地址或映射地址n n可以导入应用程序的部分或全可以导入应用程序的部分或全部部.n nUnity Pro Unity Pro 提供提供两种导入模式两种导入模式两种导入模式两种导入模式:n n直接导入直接导入,组件导入与导出时组件导入与导出时的状态完全相同的状态完全相同.n n通过导入向导通过导入向导(1),(1),可以修改可以修改变量,程序段的名称变量,程序段的名称,以及改以及改变映射的地址变映射的地址.第22页/共30页在程序中编辑在程序中编辑n n变量可以在任何编辑器直接创建变量可以在任何编辑器直接创建:n n当输入变量时当输入变量时,智能分析器检查可用智能分析器检查可用性性n n如果变量不存在,会弹出窗口,建议如果变量不存在,会弹出窗口,建议用户创建变量用户创建变量n n可以在编辑器中调用数据属性窗口以显示可以在编辑器中调用数据属性窗口以显示和修改对象属性和修改对象属性n n窗口在选择时更新窗口在选择时更新第23页/共30页I/O 对象对象n n在硬件配置中提供新的服务在硬件配置中提供新的服务n n选择和显示由模块或选择和显示由模块或CPU CPU 管理的所有管理的所有对象对象n n单击创建单击创建 IODDT IODDT 或拓扑或拓扑 EDT EDT 变量变量n n预先使用一组预先使用一组 IODDT IODDT 变量或拓扑变量或拓扑EDTEDT变量符号变量符号n n显示应用中使用的显示应用中使用的 I/O I/O 对象对象第24页/共30页I/O 对象编辑对象编辑 选择对象类型选择对象类型更新网格表更新网格表 选择其中一部分选择其中一部分定义前缀定义前缀 创建变量创建变量54321第25页/共30页I/O 对象的人机工程学对象的人机工程学n nI/O I/O 对象在变量中映射或在程序中使用的采用粗体显示对象在变量中映射或在程序中使用的采用粗体显示n n可以只关注使用过的变量可以只关注使用过的变量:点击点击 Filter on usageFilter on usage 按钮按钮 第26页/共30页实实 验验第27页/共30页实验一实验一步骤步骤动作动作1双击 Variables&FB instances 文件夹,访问数据编辑器。2作下述定位变量定义:为本地机架的140 ACI 04000 的第16个通道定义1个变量,变量名为 anain_16(提示,变量地址为%IW1.4.16 或者%IW36,数据类型为 INT)为本地机架的140 DDO 35300 的第32个通道定义1个变量,变量名为 disout_32(提示,变量地址为%Q1.5.32 或者%M64,数据类型为 EBOOL)为 RIO 机架的140 ACO 13000 的第8个通道定义1个变量,变量名为 anaout_8(提示,变量地址为%QW2.21.2.8 或者%MW17,数据类型为 EBOOL)为 DIO 机架的140 DDI 35300 的第32个通道定义1个变量,变量名为 disin_32(提示,变量地址为%I3.11.2.32 或者%I96,数据类型为 EBOOL)定义一个变量 VAR1,类型为 REAL,地址为%MW50。定义一个变量 VAR2,类型为 EBOOL,地址为%M50。3作下述非定位变量定义:定义变量 RUN、STOP、BOX、RUNNING、flash,类型均为 EBOOL 定义变量 TIMER1,类型为 TIME 定义变量 COUNTER1,类型为 UDINT 定义变量 reset1,类型为 BOOLn基本变量的定义第28页/共30页实验二实验二步骤步骤动作动作1双击 Variables&FB instances 文件夹,访问数据编辑器。2定义一个包含16个 元素的 Word 类型的数组,变量名为 VAR3,首地址为%MW150。3选择 DDT Types 选项卡,定义一个导出数据类型 MOTOR,包含下列元素:Motor_Start,BOOL 类型 Motor_Stop,BOOL 类型 Motor_running,BOOL 类型 Motor_ Delay,TIME 类型 Motor_Counter,UDINT 类型4选择 Variables 选项卡,定义一个变量 VAR4,数据类型为 MOTOR,首地址为%MW1805修改导出数据类型 MOTOR,添加一个元素为 Motor_Speed,数据类型为 Real。6右键 MOTOR,选择 Analyze Type,观察变量 VAR4的元素及地址变化。n复杂数据类型和变量的定义第29页/共30页