End Sub
必 须 首 先 调 用 指 令 GT_Open 打开运动控制器,和运动控制器建立通讯。对于ISA 总线的运动控制器, 调用指令GT_Open 时必须指定运动控制器的基地址。基地址必须和运动控制器的基地址跳线一致。对于PCI 总线的运动控制器,调用指令GT_Open 时不必指定运动控制器的基地址。在 退 出 应 用 程 序 时 应 当 调 用 指 令 GT_Close 关闭运动控制器。调 用 指 令 GT_Reset 将使运动控制器的所有寄存器恢复到默认状态,一般在打开运动控制器之后调用该指令。
G代码译码模块主要由G代码解析部分组成,主要完成的任务是把输入的G代码文件翻译成能够被PC机理解的代码程序,然后存储在系统的内存缓冲区里以备下一步加工使用。并通过相应的运动控制器接口函数,将解析好的能被计算机等识别的二进制格式代码传递给相应的处理模块。
假如此时要进行-d,段直线插补,以点A(XO,YO)作为起点,点B(X1,Y1)作为终点。用G代码实现,则可以表示为:
G92 X-10 Y-10 Z50 (设定坐标系,定义对刀点的位置)
G90 G17 (选择XY平面,绝对坐标编程)如G91则为增量坐标
G00 X4 Y10 (点定位到X4,Y10)
M03 S900 (主轴顺时针旋转,转速为900)
G01 Z-10 F800 (开始直线插补,进给速度为800)
X30 (加工AB段)
G03 X40 Y20 R10 (加工BC段)
G02 X30 Y30 R10 (加工CL段)
G01 X10 Y20 (加工LE段)
G01 Y10 (加工EA段)
G00 Z50 M05 (点定位到Z50,主轴停转)
M30 (程序结束)
显示图
代码命令表
G代码 命令含义
G00 快速定位
G01 直线插补
G02 顺圆插补
G03 逆圆插补
G90 绝对坐标
G91 相对坐标
G17 XY平面指定
3.1.3 插补控制模块
插补控制是运动控制中的重要环节,根据插补控制指令可以实时生成不断逼近于实际轨迹的运动曲线。通过不断将计算出来的下一个插补点的位置与对实际位置进行采样所得到的位置进行比较,得到位置误差,从而确定加工轨迹的准确性。可以通过不断改变插补步长和插补精度的数值来实现不同的直线和圆弧插补,选择更合适的数值来生成相对精确的运动轨迹。
插补控制模块主要是用于调整插补步长和插补精度来实现不同的直线插补和圆弧插补,其控制界面如图所示。
插补包括直线插补和圆弧插补。首先介绍直线插补,直线插补的部分代码如下:
Private Sub Command10_Click() '直线插补
err = GT_StrtList
err = GT_MvXYZ(-10, -10, 50, Text3.Text, Text4.Text)
err = GT_LnXY(4, 10)
err = GT_LnXYZ(Text5.Text, Text6.Text, Text8.Text)
err = GT_EndList
err = GT_StrtMtn
End Sub
无论是直线插补还是曲线插补,启 动 缓 冲 区 连 续 轨 迹 运 动 之 前 ,必须先调用指令GT_StrtList 进入缓冲区指令输入状态。该指令在缓冲区关闭且无缓冲区连续轨迹运动时有效。然后设置直线运动的起始位置和起始速度,通过调用GT_LnXYZ将参数传递进去,当调用GT_StrtMtn命令后,将会自动运行直线插补。曲线插补与直线插补类似,都是以GT_StrtList开始,设置初始位置和初始速度后进行曲线插补运动。曲线插补代码如下: 开放型数控系统运动控制系统设计+源程序+CAD图纸(5):http://www.751com.cn/jisuanji/lunwen_6176.html