ROBO PRO(慧鱼编程教程)

定时器变量向下计时的速度可以在其属性窗口中设定,在每节拍1/1000秒和每节拍1分钟之间。定时器的精度取决于时间节拍的设置。在操作时,应该选择小的时间节拍,比如10x1秒或者100x0.1秒,而不是1x10秒。在程序需要等待至少一个小时的时候,才可以选择1分钟的时间节拍。

向下计时的节拍数通常是由赋值“=”指令来分配给定时器。在图示的例子中,要向下计时100个10ms的节拍。这对应于1000ms=1s的一个时间间隔。其精度为10ms。 如果要测量一个时间值,可以在开始时将定时器变量设置为尽可能大的正值。这样一来,在定时器到达零时还剩下很多时间。将初始值减去当前的定时器的值,就是已经得时间。

定时器变量的属性窗口:

? 在“延时”一栏,可以确定定时器变量的

初始值。作为惯例,可以在这里输入0,并在适当的时间用“=”指令来给定时器变量设定一个值。但是如果定时器假设的是在程序或者子程序开始的时候来投入运行,那么其相应值可以在这里输入。

? 在“时间单位”一栏,可以设定定时器变

量在向下计时的时候,所用的时间节拍的单位大小。

? 在“定时器变量类型”一栏,可以设定定

时器变量为全局变量还是局部变量。

12. 序列

序列模块相当于一个变量,其存储不止一个而是多个数值。变量中可以存储的数值的最大个数可以在其属性窗口中设定。

下列的序列功能可以用传递指令到W输入来运用: 指令 数值 到作用 添加指令可以将新的数值加到序列的末尾。整个序列就多了一个模块。如果序列已经达到了最大数值,则忽略此指令。 删除序列末尾已有的模块。与指令一起传递的数值是所需要删除的模块号。如果此号码大于序列的模块号,则所有的模块会被删除。如果号码为0或为负,则忽略此指令。 -32767 32767 0到32767 0到32767 序列属性窗口:

将已有的模块和序列的第一个模块交换。与指令一起传递的数值时所需要交换的模块的位置号。 ? 在“最大数量”一栏,可

以输入序列中元素的最大值。这个尺寸无法用Append指令超出。 ? 在“初始数量”一栏,输

入开始时用以初始化序列的元素数量。 ? 在“初始值列表”一栏,

可以输入预分配到序列的初始值。可以用用变的按钮对序列进行编辑。

? 在“从.CSV文件调用”

一栏,可以选择一个Excel兼容的.CSV文件,序列可以从此文件中提取数值。在所选择区域的中部,可以选择.CSV文

件栏用于此目的。文件直接装载并且显示在List of initial values下。开始执行程序或者执行下载操作,ROBO Pro会多次试图从文件装载当前值。如果不成功,则只能用存储在List of initial values下的数值。 ? 在“存入.CSV文件”一栏,可以指定一个文件,用来将程序结束后存储序列的内

容。这项功能只对在线模式和静态序列有效。 ? 在“列分隔符”一栏,可以选择序列的单个的列是否应该用逗号或者分号分开。 ? 在“序列变量类型”一栏,可以将序列设置为一个全局或局部变量。对于大序列建

议设置为全局变量,因为全局变量比局部变量有更多的存储区可用。

13. 指令

=(赋值)

赋值指令“=”将一个数值分配个接受者,其经常用来将数值分配给变量,定时器变量,序列模块或者面板输出。

+(加)

指令“+”可以传递到变量或者定时器变量来增加变量的值。指令“+”可以附带任何一个想要的值,并加到变量上。因为指令附带的值也可以为负,变量的值也可以用此指令来减少。

-(减)

指令“-”和上述的指令“+”比较相似。唯一的区别在,指令所附带的值会从变量的值里减去。

向右

“Right”指令传递到一个马达输出模块来切换马达到顺时针方向。

向左

“Left”指令传递到一个马达输出模块来切换马达到逆时针方向。

停止

“Stop”指令传递到一个马达输出模块来停止马达。没有值随“Stop”指令传递。

打开

“On”指令传递到一个灯输出模块来将灯打开。“On”指令也可以传递到马达输出模块,相当于“向右”指令。

关闭

“Off”指令传递到一个灯输出模块来将灯关闭。也可以传递到马达输出模块,相当于“停止”指令。

文本

“Test”指令是一条特殊的指令,由于它不是传递一条带数值的指令,而是选择的一个文本,到所连接的模块。然而,只有一个程序模块可以处理“文本”指令,它是面板中的文本显示指令。

添加数值

“Append”指令是针对序列的一条特殊的指令。这条指令附带着一个数值,用来添加到序列的末尾。如果序列已经满了,则会忽略这条指令。

删除数值

“Delete”指令是针对序列的一条特殊指令。用这条指令可以删除序列末尾的任何数值。想要的号码作为数值随指令附带。如果这个值大于序列中所有模块,序列中所有的数会被删除。

交换数值

“Exchange”指令是针对序列的一条特殊的指令。用这条指令,序列中所有的值都可以和第一个模块交换。要和第一个模块交换的模块号作为一个数值随指令附带。注意:序列第一个模块的编号为0.如果指令附带的值不是一个有效的模块号,序列模块会忽略此指令。

指令模块的属性窗口:

? 在“指令”一栏,可以在可能的指令列表中

选择想要的指令。 ? 在“值”一栏,可以输入随指令附带的数值。

如果没有附带值,这一栏为空。 ? 在“值的描述”一栏,可以输入一个简短的

表示文本,显示在有附带值的指令模块中。这段文字应该说明包含了哪种类型的值。这一部分只是作为现实内容,没有其他作用。

? 在“外部数据赋值”一栏,可以指定是否指令模块的左边带一个橙色的用来附带数

据的数据输入端。对于所有的指令模块,数值可以输入在指令模块内,也可以从指令模块左边的数据输入端读取。

14. 判断(带数据输入)

这个程序判断模块的左边有一个橙色的数据输入端“A”。通过这个端子,可以读入一个经常来自输入模块的数值。数据输入端“A”可以和变量,定时器变量或运算器的输出相关联。模块将来自数据输入端“A”的数值和一个固定但可自由定义的值比较。根据比较是否保持,决定模块的分支以“Y”或“N”为出口。

判断模块的属性窗口

? 在“条件”一栏,在右边的区域,可以输入用来和输

入值A作比较的数值。通常的比较运算器对于这一比较是有效的。 ? 如果选择了“交换Y/N分支位置”,“Y”和“N”两

个出口就会互换。

15. 与固定值作比较

该程序模块数据输入端A的数值可以和一个固定的,但可以自由定义的数值作比较。根据在数据输入端A出现的数值大于、小于或等于固定值,控制分支就以比较模块的右边,左边或者中间为出口。

比较模块属性窗口

? 在“比较值”一栏,可以输入一个和输入端A的

值进行比较的常数。

16. 比较

使用比较程序模块,数据输入端A和B的数值可以相互比较。根据A小于B,A大于B,或A等于B,模块分支以左边,右边或中间作为出口。这个模块最普通的应用是将一个名义上的值和一个实际的值作比较。根据名义上的值和实际值的相对关系,比如马达可以左转、右转或停止。

17.等待…

等待程序模块可以组织程序的执行,直到发生一个变化或在模块的数据输入端达到一个特定的状态。模块有五种变化状态。

“等待”模块的属性窗口

? 在“等待”一栏,可以在上述五种功能中作

选择。如果选择了“出发变化监测”,模块在其不应当执行的时候,也会检测信号变化的发生。在此情况下,模块保存了最近的值。当模块再次执行的时候,如果值在间歇期已经按正确的方式变化了,程序就可以立即继续执行了。这种方式下,丢失信号变化的可能性就较小了,因为程序去完成其它任务了。

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4