Q编程介绍及例程
Q编程介绍
SCL指令的使用已经有很多年的历史。Q程序是建立在SCL指令基础之上的一个新的平台,扩展了SCL命令的使用,允许用户创建与存储SCL指令。这些程序可以保存在驱动器的非易失性存储器中,驱动可以脱离主机独立运行这些程序。Q程序为系统设计提供了高度的灵活性和强大的功能。主要特点如下:• 运动控制(例如FL、FP、SH等)
• 执行驻留程序
• 多任务处理(请参阅MT指令)
• 条件判断(例如OI、TI等指令)
• 数学运算(例如R+、R-、R*、R/、R|、R&等指令)
• 寄存器操作(例如RX、RM等指令)
1个Q程序支持多达12个程序段,每个程序段最多可以编写62条指令。
参考例程
以下内容给出了Q编程的参考例程,并对这些指令逐条进行了解释,Q编程中所有指令均为缓存指令(Buffered Commands)点到点相对运动(Feed to Length)

点到点绝对运动(Feed to Position)

运动到传感器位置(Feed to Sensor)


循环(Looping)
用户可以通过两种方式来实现程序的循环。第一种使用QG(Queue Goto)指令,设置QG参数使程序回到设定的行数。下图中列出了一个参考例程,在FL指令后等待时间0.5秒(WT0.5),然后使用QG指令,使程序回到第一行重新执行,实现不断循环。

跳转(Jumping)
程序跳转由QJ(Queue Jump)指令实现,跳转和循环不同,跳转主要判断条件是否满足,即跳转指令通常和TI(输入检测),TR(寄存器检测),CR(寄存器比较)指令配合使用。下图中列出了一个参考例程,有两种可能的运动,顺时针旋转,当输入信号5有效时(低电平有效)电机开始逆时针旋转,加速度300,减速度450,速度18.5,两种运动间有0.25秒的等待时间。然后,检测X5信号的状态,当 X5信号有效时(True),程序跳转到第10行,开始逆时针旋转,如果X5信号为高时程序直接到第7行进行顺时针旋转,执行完后回到第一行进行循环。