APP下载

宝石磨雕机器人软件控制系统的设计和实现

2012-07-04李向南饶建华刘东升

制造业自动化 2012年17期
关键词:控制面板宝石脉冲

李向南,饶建华,王 冲,刘东升

(中国地质大学 机械与电子信息学院,武汉 430074)

0 引言

自古人们就已经开始进行宝石加工方法和技术的探索,珠宝加工也从最开始的手工加工逐步向机械加工发展。传统手工方法和机械加工设备全程需手动控制,在生产效率、加工精度和品质上都有进一步提高的必要[1]。近年来国内外提出和发展出一些新的宝石加工技术和设备。国内如福建省力鑫宝石机械公司生产了MILL-3050型自动宝石刻面研磨机,该机可自动完成宝石刻面、研磨、抛光,但仅限水晶加工且设备体积庞大。剑桥大学研制成功一种宝石加工机器人[2]可通过激光分析宝石的光学特性的数据,计算机对数据分析得出最佳加工方案并进行自动加工,但不能实现新类型琢型的加工,且加工精度需要进一步提高。

目前宝石加工控制系统主要有以下六个需求指标:1)适应性强,可加工材料和种类多;2)精度高,实现微米或更高的精度控制;3)体积小,轻便节能;4)参数通用性强,便于交互和规范化;5)界面友好,操作简便智能,安全可靠;6)实现CAD/CAM一体化。综观当前国内外宝石加工控制设备体积庞大,控制和加工精度不高,交互性和通用性不好等缺点,或者不能同时克服以上缺点,缺乏CAD/CAM一体化功能。当前宝石加工仍为劳动密集型产业,因此开发一种简便通用,适应性强的宝石自动加工机械装备很有必要,而控制系统是其核心。本文基于“磨雕加工机器人”专利的机械模型和驱动方式,以Visual C++ 6.0为开发平台,设计了对应的宝石加工上位机控制系统并进行了加工测试,系统运行良好,达到了预期的加工效果。

1 系统设计

1.1 各轴运动关节变量的计算

机器人机械臂主体机械结构可看成两平移两转动(2S2R)四个关节依次串联而成,如图1所示。其中X轴、Z轴平动,U轴、W轴、S轴转动。X、Z、U、W轴控制宝石的位姿,对应的关节变量分别为d1、d2、θ3、θ4。系统采用齐次变换法来求解各关节变量。将机器人各个关节间的连杆i看成刚体,在各个刚体上建立与之固连的空间右手坐标系{i}。空间任一点P在坐标系{A}和{B}中的坐标关系如式(1):

式(1)中,AP为点P在{A}中的位置矢量;

图1 磨雕加工机器人结构

BP为点P在{B}中的位置矢量;

当进行宝石加工时,在宝石加工面Π上选定切削点P,过P点以Π外法线方向为Z轴正向、水平方向为Y轴正向建立切削点右手坐标系{C},为关于关节变量 d1、d2、θ3、θ4的一个矩阵,由机器人固有尺寸参数以及宝石加工面倾角和分度参数可以确定式,则解上述四元方程组即可得到四个关节变量的表达式。加工时只需要使各轴按照关节变量的要求运动到相应的位置和姿态即可完成该表面的加工。

1.2 上位机控制系统方案设计

图2 控制系统各个模块划分

常规宝石琢型只需要给定初始参数即可确定其最终形状,因此适合自动加工;对于宝石局部修饰或自定义琢型的加工,需能够独立灵活控制各轴运动。基于以上需求分析,系统总体设计分为指令和程控两种加工模式,指令模式通过用户直接或间接方式向运动轴发送指令或指令集实现各轴运动;程控模式根据琢型和加工类别,通过指定几何参数和运动由程序自动完成加工。同时为使用户能实时了解加工状态,系统需设置加工状态同步显示。考虑到安全性和简易性,系统需要有一定的提示、限位和纠错功能,以减少误操作或误动作。综上,划分系统模块如图2所示。

系统面板左侧设计为专用G代码管理区,右侧标签页为指令/程控模式控制区。指令模式标签页为默认的活动标签页;第二标签页设计为程控加工的入口,通过点选琢型图标进入对应琢型控制界面。

1.2.1 指令模式控制面板设计

指令模式标签页按照数控机床控制面板的操作习惯布局,划分为全局控制、进给设置、主轴控制、数据显示、参数设定、运动控制和加工控制7个区。

全局控制区进行全局和辅助功能控制,有6个相应功能键:急停、回原点、设置原点、回零、复位和冷却,分别用于紧急停车、各轴回到系统坐标系原点、设置用户坐标系原点、回到用户坐标系原点、程序运行异常时重新初始化、冷却水开关等功能的实现。

进给设置区进行单轴运动的进给方式选和脉冲倍率选择。系统提供“手动进给”、“手动脉冲”和“电子手轮”三种进给方式。“手动进给”通过按钮控制某轴的常速和快速运动,主要用于大行程运动的快速完成。“手动脉冲”实现某轴的常速运动;分X1~X1000四个倍率档,用于完成常速运动和各轴微调。“电子手轮”通过手轮来控制各轴的运动方向以及速率,控制简便灵活,可实现现场控制。

主轴控制区进行磨盘主轴的运动控制。数据显示区实时显示各轴脉冲、坐标和速度等信息。参数设定区进行多轴联动和半自动加工的参数设定。运动控制区实现单轴或多轴联合控制。

加工控制区实现半自动加工功能。 “半自动加工”又分“直接”、“参考点”和“自动换面”三种方式。“直接”方式实现单面的磨削或者抛光加工;“参考点”方式自动记录加工最低点(参考点),用于均匀加工深度的同一倾角的多个分度面的连续加工;“自动换面”方式可完成均匀深度、等倾角、同圆周均布的多分度面的一次性磨削和抛光加工。

最终设计完成指令模式加工控制面板如图3所示。

图3 指令模式控制面板

1.2.2 程控模式控制面板设计

“程控”模式可对已有标准琢型进行自动加工,除初始参数设置、换装夹和对刀,不需其他人工干预。分别选择四种常规刻面琢型和弧面琢型作为琢型加工入口,点选对应图标可进入该琢型的自动加工面板。以磨削加工为例,其操作流程设计如表1。根据操作流程并综合辅助功能要求,设计特定琢型自动加工控制面板,并划分为坯体参数、加工控制、运行状态和图形显示4个区,并提供菜单功能。

表1 刻面琢型自动磨削加工流程(从左至右)

坯体参数区设定宝石琢型的目标几何参数。加工控制区设定加工工艺参数和启停控制,并提供坯体高度参数的软件测量功能。状态显示区同步显示各轴绝对位置和速度、加工时间和进度、当前加工面等信息。图形显示区根据输入的参数自动生成宝石几何图形预览,可作为调整设计参数的参照,并在加工时同步显示琢型几何外形变化,以直观反映加工过程和进度。

菜单功能又分为系统菜单和图形区上下文菜单。系统菜单进行参数和加工变量的输入输出,以及完工后的动作等功能,提高了操作效率和参数的可重用性。图形区上下文菜单提供图形区隐藏、刷新、颜色设定等功能。以57面圆钻[5]为例,最终设计完成琢型自动加工控制面板如图4所示。

图4 57面圆钻自动加工控制面板

1.3 控制系统功能的实现

1.3.1 运动控制功能的实现

机器人X轴、Y轴、Z轴和W轴通过电机配套驱动器实现驱动;通过调用驱动器系统的运动控制函数来实现运动指令的调用。点选控制键之后,在消息响应函数中调用运动控制函数发送运动指令到控制器,控制器向伺服驱动器发出脉冲和方向信号,实现运动控制。S轴由交流电动机驱动,通过专用调速器调节转速。

在运动控制中,运动轴的单脉冲增量不为有限小数或不便于编程计算,并且给定的目标运动增量对应的脉冲数一般不为整数,若直接四舍五入或进行其他近似处理方式,则会造成运动误差的累计。因此,解决控制脉冲的误差是一个关键问题。

系统使用“当量脉冲法”和“全局变量法”解决该问题。首先以方便编程为原则,根据控制精度和实际需要确定各轴的最小运动增量Ai,根据Ai换算出各轴对应的脉冲数Pei,将Pei称作当量脉冲。全局变量算法如图5所示,假设本次预发送脉冲数为P0,实际应发送脉冲数为P1,系统启动时在内存中建立全局变量G以保存各轴的累计应接收的脉冲数;系统构建了一个脉冲圆整函数f,每次调用运动函数前首先调用f,f根据G对P0进行综合的判断处理计算出P1,然后将P1作为传递给运动函数的脉冲值参数,同时更新G的值。各轴以Pei为最小单位编程,既满足了精度要求又方便了编程计算;使用G算法累计应接收的脉冲数没有累积误差,单次接收的脉冲数的绝对误差不大于1个步进脉冲,从而保证了系统的控制精度。最终各轴当量脉冲和对应运动增量确定如表2,运动控制功能原理如图6所示。

图5 全局变量算法框图

表2 各轴当量脉冲和对应运动增量

图6 运动控制功能原理框图

1.3.2 其他功能的实现

其他功能包括参数交互、状态更新和辅助功能。

系统前后台参数交互通过Visual C++的DDX技术[6]实现。状态更新即状态显示的同步更新,通过设置系统定时器来实现,每隔一个定时间隔系统进行一次数据重算和更新并将传送至前台。

辅助功能包括软件限位、消息通知和智能提示三个方面。软件限位即对各输入预定有效范围和内部逻辑关系,对无效数据和操作进行错误提示并自动取消操作。消息通知即对关键操作增加消息框进行二次确认。智能提示包含按键动态禁用与启用,状态提示符随用户选择和系统当前状态而动态变化,简明安全,可极大程度避免误操作和误动作。

辅助功能的实现使操作更加简明,提高了系统的安全性和交互性。

1.4 系统调试

经反复调试和实际测试,软件系统可长期稳定可靠运行,不会干扰计算机其他操作和其他软件的运行,未出现逻辑错误、跑飞和死机的情况。

2 测试加工

为了验证软件控制系统的可行性,进行了57面标准圆钻的磨削和抛光试验,试验材料是氧化锆晶体,加工试验结果如图7所示。由试验结果可知,57面圆钻各个圆周分度面分度均匀,对应倾角一致,加工深度一致,加工效果良好。经抛光后的加工表面平整光滑,表面粗糙度低,达到了镜面效果。

图7 氧化锆材料的57面圆钻顶面面组抛光试样(左)和底面面组抛光试样(右)

综上,控制系统的设计达到了预期的效果,表明了控制算法和软件实现是可行的。

3 结论

设计基于“磨雕加工机器人”,以Visual C++6.0为平台开发的宝石加工软件控制系统具有可视化、交互式、通用性强的特点。利用当量脉冲法统一了脉冲单位,降低运动控制编程的计算量;利用全局变量法克服了软件控制系统累计误差的产生,保证了控制精度。经过实际加工测试,达到了良好的加工效果,具有较好的应用前景。

[1] 周树礼.宝石加工方法的演变和发展[J].宝石和宝石学杂志, 2003, 5(4), 28-29.

[2] 国信.英研制成宝石加工机器人[J].中国宝玉石, 1998,(1), 34.

[3] 熊有伦.机器人技术基础[M].武汉: 华中科技大学出版社, 1996.

[4] 徐阳, 杨兴云.空间解析几何及其应用[M].哈尔滨: 哈尔滨工业大学出版社, 2006.

[5] 周汉利.宝石琢型设计及加工工艺学[M].武汉: 中国地质大学出版社, 2007.

[6] 郑阿奇.Visual C++实用教程[M].北京: 电子工业出版社, 2005.

猜你喜欢

控制面板宝石脉冲
脉冲工况氧气缓冲罐裂纹修复实践
“种”棵宝石树
恢复开始按钮右键菜单“控制面板”选项
黄芩苷脉冲片的制备
FES丙烷制冷机控制系统升级改造
多种方法找回传统控制面板
2015年斯巴鲁傲虎空调控制面板操控失灵
宝石迷踪
宝石树
基于Hopkinson杆的窄脉冲校准系统