2020(培训体系)2020年进阶培训资料

上传人:精****库 文档编号:134504514 上传时间:2020-06-05 格式:DOC 页数:106 大小:386.61KB
返回 下载 相关 举报
2020(培训体系)2020年进阶培训资料_第1页
第1页 / 共106页
2020(培训体系)2020年进阶培训资料_第2页
第2页 / 共106页
2020(培训体系)2020年进阶培训资料_第3页
第3页 / 共106页
2020(培训体系)2020年进阶培训资料_第4页
第4页 / 共106页
2020(培训体系)2020年进阶培训资料_第5页
第5页 / 共106页
点击查看更多>>
资源描述

《2020(培训体系)2020年进阶培训资料》由会员分享,可在线阅读,更多相关《2020(培训体系)2020年进阶培训资料(106页珍藏版)》请在金锄头文库上搜索。

1、一 变量与数值运算在机械手运行过程中,往往会需要涉及到大量数据的处理与运算。简单的,如工件的数量,工件的种类编号,复杂的,如工件的位置补正数据,产品的良品率计算等等。为了能够有效的在程序中获取,保存和使用这些数值,需要通过变量来储存这些数据。变量的作用,相当于在系统的内存中,开辟一个有特定名称的区域,来保存特定的数据。规划好这个区域后,对该数据的读写只需要通过变量名称前访问即可。1. 变量的类型与范围变量的数据类型:根据储存的数据格式的不同,我们可以给变量设定能够不同的数据类型。当赋值给变量的数值超过了其范围,会出现错误报警(错误: 2243, 变量溢出。指定变量超过最大允许值。)数据类型 长

2、度 范围 Boolean 1 字节 TRUE 或者FALSE Byte 1字节 -128 +127 Double 8字节 -1.79E+308 1.79E+308 Integer 2字节 -32768 +32767 Long 4字节 -2147483648 +2147483647 Real 4字节 -3.40E+38 3.40E+38 String 255字节 全部是 ASCII字符 定义变量使用变量之前必须先要定义变量的名称.定义格式为:变量类型+变量名称。如:Integer i, j, k定义全局整型变量变量的作用范围SPEL+语言有三种作用范围的变量: Local : 局部变量 Modu

3、le : 模块变量 Global : 全局变量 一般函数内部使用局部变量,需要函数之间共享的数据使用全局变量。在函数内部直接用变量类型+变量名称定义的变量为局部变量。只能在函数内部使用,当函数结束时变量的生存期也就结束了。在函数外部,使用Global关键字+变量类型+变量名称定义的为全局变量。全局变量的生存周期为程序开始运行到程序结束。在程序中任意位置任意时刻均可以使用。全局保存变量:一般变量在程序运行时会初始化,不能保存上一次运行时的数据。如果需要保存之前运行的数据,以便在重新运行程序,甚至机械手控制器断电重启之后,能够读回原有数据的话,可以使用Preserve关键字,将变量定义为全局保存变

4、量。Global Preserve Integer Gi2.变量的操作数值表示与转换:一般数值型的数据(Boolean,Int,Real等等)可以直接进行数学运算。但字符串型的数据不能进行数学运行,必须将字符串转换为数值。Val函数Val函数用于将字符串转换为数值.同样适用于浮点数.Real aa = val(“1.234”) 则a = 1.234如果字符串不是有效的数字格式,返回0。如a = val(“A1.234”) 则a = 0Int函数:将其他数值类型的数据转换为整型。如Int (1.2)则返回1进制转换一般常用人便于认知的10进制数表示。但在位运算中,用2进制或者16进制会更加方便。

5、16进制的表示方式: &H数值。如10进制的255转换为16进制为FF,在SPEL+语言中写为:&HFF。2进制写为&B11111111。如A = &HFF,则A=255使用hex$()函数可以将数值转换为16进制编码(返回结果是字符串)。如 print hex$(255) FF如将16进制表示的字符串转换为数值,可以用Val函数。16进制转换为数值:i = val(&HFF);则i=255。 print val(&HFF) 255 print &HFF + 1 256数值运算:变量的赋值:直接使用 = 符号可以给变量赋值。如A = 0也可以通过Input 函数,从运行窗口中用键盘输入数值。如

6、:Integer aInput a ; print “你输入的数值是:”,a运算操作:定义后的变量可以在其有效范围内操作。常用的运算操作及运算符有以下符号.运算符 格式例 说明 + A+B 加法 - A-B 减法 * A*B 乘法 / A/B 除法 * A*B 乘方 AB A大于B AB A小于B AB A不等于B And A And B 逻辑与 Mod A Mod B 整数的余数 Not A Not B 非 Or A Or B 逻辑或 Xor A Xor B 异或逻辑 其中And、Or、Not、Xor用于对二进制数据的位操作。注意:以上运算只适用于变量,不完全适用于点数据。在点数据后面加/n

7、 (n=015)表示将点数据转换为对应Local坐标的数值(参考八章4节 坐标转换内容).而非除法的除以n。监控变量在运行程序时,点击菜单-运行-显示变量(或直接按F4)可以显示变量窗口.可以查看运行中用到的变量的数值.点击后弹出变量显示窗口.勾选编辑框,即可以对数值进行修改和写入命令行中显示变量命令行窗口可以用于执行单句的命令.方便调试程序.按Ctrl+M或者按菜单栏按钮弹出命令行窗口.输入Print Gi或者? Gi后回车即可显示Gi的数值(Gi为变量名称.可以显示其他的变量)示例程序:Global Integer Gi, Gj, Gk定义全局整型变量Global Preserve Int

8、eger GPi, GPj, GPk定义保持性全局整型变量Function task00_variable_AXqt task00_variable_BInteger i, j, ki = 10; j = 10.33; k = 90 可以直接用=对变量赋值Print the number i = , i, j=, j, k=, kGi = Gi + 11Gj = 11.33 + GiGk = 91 可以直接用变量对变量本身或者其他变量进行操作用Print语句在运行窗口上显示变量的数值Print the number Gi = , Gi, Gj=, Gj, Gk=, GkFendFunction

9、 task00_variable_B 全局变量可以在不同任务/函数之间共享数值DoWait 1Print task00_variable_B:the number Gi = , Gi, Gj=, Gj, Gk=, GkLoopFend操作与练习:(1) 定义变量,保存某个产品的种类编号,总加工件数,待加工件数,良品件数,并进行模拟运算良率(2) 定义变量Integer i.如果i = 1/2;print i 后会输出多少?为什么?(3) 编写一个函数,将上位机发送过来的字符串strA$转换为小数点后两位(如”13.48753”转换成13.48,”11”转换为11.00)显示在运行窗口上(4)

10、编写程序将以下数据分别转换为16进制表示和二进制表示,显示在运行串口上。“255” , 16 , 1.234 , &B00001111 , &B1010 And &HFF 二 IO操作1 IO标签在Robot项目中,可以使用控制器自带的24个输入和16个输出(物理IO),可以使用点数据P0-P999总共1000个点.为了方便记忆IO点各自的功能或者点数据代表的位置,可以对IO点或者点数据设定其特有的名称,称之为标签.设定好标签之后,即可以在程序中直接使用标签,而无需记住各个编号所代表的含义.点标签的设置和使用在对某个编号的点进行第一次示教的时候可以设定其标签.也可以在点文件中修改.设定好的点标

11、签可以直接代替如P0,P(0)等编号.如:Go Place等效于Go P0IO标签点击项目浏览器中的IO标签,可以编辑物理/内存IO的标签名称.注意要点定义标签的目的在于方便编程人员的使用和操作.因此定义标签时应遵循以下规则:(1)名称清晰有意义:所有的标签名称必须清晰容易识别.可以用大小写间隔.如:Integer iCountA定义Integer类型的变量,保存A的个数.(2)名称唯一:所有的标签名称不能与系统关键字重复,不能与其他标签或者其他变量名称重复.(3)定义标签时建议写明注释或描述方便其他人员查阅程序的时候参考2 物理IO操作IO接线方法:IO的接线方式有NPN接法(SINK型、漏

12、型)和PNP接法(Sourse型、源型)。区别在于公共端接高电平或低电平,或者说电流的方向。一般使用哪一种接法需要跟控制器的输出点类型,以及外部设备相匹配,才能正常工作。如果机械手控制器和与其相连的外部设备,如PLC等不是同一类型的IO接口,则需通过继电器或者专用的转换板转换。国内常用NPN接法。输入的NPN接法:输出的NPN接法:注意:1 国内PLC,传感器等部件多常用NPN接法。2 所有型号的控制器的输入端,以及RC180和RC620的输出点均可以兼容NPN和PNP接法。3 RC90和RC700的输出端,只支持NPN接法或者PNP接法。采购与使用时均需要注意需要的是哪一种。输出点的操作:O

13、N:打开指定的输出位,经过指定时间后关闭。On 输出位编号 |输出标签, 时间, ,非同步指定OFF: 关闭指定的输出位,经过指定时间后打开。OFF 输出位编号 |输出标签, 时间, ,非同步指定示例程序:Function iotask打开DoOn 1On 2Wait 1Off 1Off 2Wait 1On 1,1,1On 2,1,1LoopFend输入点的判断处理:使用SW命令读取输入端口的状态Sw(位编号|端口标签)可以与wait指令配合使用,可以直接读取SW()的数值进行处理.如:Boolean a;a = sw(0)将SW(0)的数值赋值变量aIf sw(0) = on then go

14、 p0当输入点0接收到信号时运动到P0点Wait sw(0)=off等待直到输入点0接收到信号Wait sw(0)=off,3等待输入点0接收到信号,或等待时间超过3S示例程序:Function task20_waitTMout 输入信号的检测和等待时间判断Print 等待Sw(0)输入Wait Sw(0) = OnPrint 检测到Sw(0)已输入Print 等待Sw(2)输入.如果等待时间超过5S则不等待Wait Sw(2) = On, 5Print 检测到Sw(2)已输入或Sw(2)等待超时TMOut 3Wait Sw(1) = OnIf Sw(0) = Off Then Print Sw(0)等待超时Wait Sw(1) = OnFend3 内存IO操作内存IO的作用相当于PLC的中间继电器,用于程序过程状态的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 企业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号