论文部分内容阅读
摘要:工业机器人在制造业中得到了日渐广泛的应用。工业机器人作为先进的自动化装备,涉及电子、人工智能、机械以及控制等多方面内容。运动控制系统在工业机器人构成装置中占据着核心地位。为实现对工业机器人运动的高效控制,并增强工业机器人性能的稳定性,必须强化对工业机器人运动控制系统的设计。本文浅析了运动控制系统硬件设计,探究了运动控制系统软件设计,以期为工业机器人运动控制系统设计提供借鉴。
关键词:工业机器人;运动控制系统;设计
前言
工业机器人主要由本体、运动控制系统以及驱动装置所构成。工业机器人不仅需要在轨迹空间中进行直线运动和圆弧运动,还需要进行复杂性较强的运动。NURBS方法对复杂几何造型具有显著的应用优势,在CAD/CAM中的应用极为广泛。工控机具有较高的稳定性,且防潮防尘,具有良好的可扩展性,将DMC-2163运动控制卡作为机器人运动控制系统的核心,能有效增强系统硬件的可靠性。
1.运动控制系统硬件设计
本文论述的机器人运动控制方案以ARM工控机作为基础。借助DMC-2163控制卡,对下位机模块进行构建。工控机借助以太网将控制指令发送至DMC-2163控制卡,该控制卡基于控制指令对相应程序进行执行,并将电机控制信号发出。伺服放大器将指令信号放大后,对工业机器人相应的各电机实施驱动,促使各关节实现运动。机器人各关节相应的电机编码器则借助以太网将经过DMC-2163的位置信号对工控机进行反馈,能实时对机器人状态实施清晰显示和有效监控[1]。控制系统硬件架构如下图1所示:
1.1 DMC-2163运动控制卡
DMC-2163运动控制卡,能实现对数控设备性能需求以及精度需求的良好满足。本文对DMC-2163运动控制卡进行选用,将之应用于6自由度工业机器人。同时,对API进行使用,基于工控机实施二次开发。
1.2嵌入式ARM工控机
工业机器人运动控制系统相应的硬件系统需具备良好的使用性能和较强的稳定性和可靠性。对此,可对嵌入式Freescale IMX6工控机进行选用,Cortex-A9核心处理器是工控机的CPU,其主频高达1.2GHz,最高支持存储器容量为32G。工控机具有丰富的硬件资源,能实现对机器人控制系统相应的上位机各项要求的有效满足[2]。
2.运动控制系统软件设计
2.1 NURBS插补实现
在空间中,可对NURBS曲线相应的有理分式形式进行如下定义:
在上式中,表示控制顶点;表示控制顶点对应的权因子;表示次样条基函数,其定义如下:取共个节点值组成节点向量()。令:
(2)
在(2)式中,参数具体变化范围如下。可对进行如下定义:
(3)
在(3)式中,若分母为0,则分式的值也相应为0。
2.2 NURBS插补算法
通过控制顶点、对应于控制顶点的权因子、节点矢量可对NURBS曲线进行唯一确定。NURBS曲线插补,是通过插补周期内相应的步长折线段对NURBS曲线本身进行近似逼近。因此,实现NURBS曲线插补,要解决如下问题:(1)密化参数。是指将轨迹空间内相应的进给步长对参数空间进行映射,对参数增量、新点相应的参数坐标进行求解[3]。(2)计算轨迹。是指求解出的参数空间相应的坐标值对轨迹空间进行反向映射,求得映射点。该点实际上就是插补轨迹相应的新坐标点。
2.3 ARM工控机上软件设计
工业机器人,在ARM工控机上实现其运动控制系统相应的软件部分。首先,需对软件开发环境进行配置:将Linus系统相应的ubuntu版本安装在Freescale IMX6上,对移植嵌入式Qt进行采用,并向ubuntu中移植Linus系统下的库。
控制软件对图形用户界面进行采用,借助QMain Window类对主框架进行构建,借助QDialog类以及QWidget类实现各模块相应功能,借助Qt信号/槽机制、配置文件、事件管理以及全局变量等实现各模块信息交流。
①与下位机通讯模块。该模块,主要借助DMCComandOM()函数对各编码器相应的值进行读取,并对工业机器人具备的各关节转角进行获取,为正逆运动学计算以及轨迹规划提供条件。另外,借助DMCDownloadFile()函数对运动控制指令进行下载,并将之发送至DMC-2183运动控制卡内。②文档管理模块。该模块可对文档进行新建及保存,DMC-2163可对文档中包含的二字符指令集进行解析,并从代码级别上对工业机器人具备的各轴实施测试,并对之进行简单控制。③运动学分析模块。运动学正解,是指已知工业机器人相应的各关节的实际转动角度,对其末端处于空间的具体位置和姿态进行求解。运动学逆解,是指已知末端连杆的实际位置和具体姿态,对工业机器人相应的各关节实际转动角度进行求解。运动学分析为控制软件确保工业机器人实施正确运行奠定了基础,同时,能对工业机器人达到相应目标点进行检验,有助于设计人员发现相关错误。④人机界面模块。人机界面负责对工业机器人运动状态相关数据进行实时显示和及时更新,并用于用户对相关设置参数进行输入,帮助用户实现对工业机器人运动状态的实时监控和有效控制。⑤轨迹规划模块。该模块为工业机器人在运动作业任务中各类运动形式奠定基础。不仅能实现直线运动以及圆弧运动插补,还能实现NURBS轨迹插补,确保自由曲线运动的有效实现。⑥示教再现模块。该模块主要对工业机器人各项复杂作业进行示教,并对模式操作界面进行再现。完成示教后,对模式界面进行再现,实现对示教动作的自动重现。⑦系统设置。对工业机器人相应的本体参数进行设置,使控制系统软件适用与6自由度工业机器人。⑧状态显示模块。该模块负责对控制卡I/O狀态、作业完成进度以及机器人位姿状态等信息进行显示。 (1)机器人参数设置
工业机器人参数主要包括以下两类:(1)运动学D-H参数。此类参数对6自由度机器人相应的本体结构具有决定性影响。(2)分频比/倍频比。此类参数决定了工控机借助DMC控制卡对单个脉冲发送时,机器人各关节实际的转动角度。
(2)机器人轨迹规划
DMC-2163控制器相应的轮廓模式能在1~6轴内辅助用户对自由位置—时间曲线进行定义。因此,可对轨迹进行有效跟踪。在工业机器人运动控制系统设计中,由工控机内相应算法对空间运动规划、运动学分析进行完成,借助DMC-2163相应的轮廓模式对机器人各关节运动实施协调控制,空间运动轨迹相应的插补周期为32ms。具体流程如下:
对空间轨迹相应的参数方程进行构建,每隔32ms,即对运动轨迹相应的空间坐标进行计算,以(x,y,z)对坐标向量进行表示。对工业机器人相应的末端空间坐标向量实施运动学分解,即可计算得出机器人各关节相应的关节变量。对各关节变量进行变换,即可求出电机轴相应的脉冲量。DMC对一定脉冲量进行发送,实现对各电机变量的有效控制。当前,主要通过计算获取各轴相应的脉冲变量,由相应的轨迹规划文本*.dmc对各脉冲增量进行记录。然后,对API函数库所包含的文件相应的下载函数DownloadFile()进行调用,对上述轨迹规划文本*.dmc进行下载。最后,对Command()进行调用,对文本命令进行执行,确保工艺机器人末端对用户定义轨迹进行完成。
(3)机器人示教作业
工业机器人基于控制系统设计对特定作业进行完成,主要对示教及再现模式进行采用。在示教界面,对适宜的坐标系进行选用,借助轴控制按钮,对工业机器人末端到位置点的运动进行控制,再对运动指令以及具体参数进行选择,使工业机器人末端遵循各类轨迹向目标点进行运动。示教模块实现了包括NURBS、MOVJ、MOVS、MOVL在内的运动指令集以及各类其他指令,诸如延时指令、数字运算指令等。通过工业机器人相应的运动学分析结果,获取机器人各关节实际转动角度,将相关命令对DMC控制卡进行发送,对机器人作业进行操作。
3.结语
综上所述,本文基于UPR100机器人本体,对运动控制系统进行设计。该运动控制系统以DMC-2163控制卡以及嵌入式ARM工控机作为硬件核心,并基于ubuntu平台,对Qt环境进行搭建,并对控制软件进行设计开发。该控制系统实现了与NURBS插补算法的融合,使工业机器人末端能在軌迹空间中实现对自由曲线相应轨迹的良好完成。
参考文献:
[1]赖时伍. 工业机器人运动控制系统的研究与设计[J]. 电子测试,2016(12):13-14.
[2]陈健. 基于EtherCAT的工业机器人开放式运动控制系统研究与设计[D]. 燕山大学,2015.
[3]杨帅,邹智慧. 多自由度工业机器人运动控制系统的研究[J]. 制造业自动化,2013(10):117-121.
关键词:工业机器人;运动控制系统;设计
前言
工业机器人主要由本体、运动控制系统以及驱动装置所构成。工业机器人不仅需要在轨迹空间中进行直线运动和圆弧运动,还需要进行复杂性较强的运动。NURBS方法对复杂几何造型具有显著的应用优势,在CAD/CAM中的应用极为广泛。工控机具有较高的稳定性,且防潮防尘,具有良好的可扩展性,将DMC-2163运动控制卡作为机器人运动控制系统的核心,能有效增强系统硬件的可靠性。
1.运动控制系统硬件设计
本文论述的机器人运动控制方案以ARM工控机作为基础。借助DMC-2163控制卡,对下位机模块进行构建。工控机借助以太网将控制指令发送至DMC-2163控制卡,该控制卡基于控制指令对相应程序进行执行,并将电机控制信号发出。伺服放大器将指令信号放大后,对工业机器人相应的各电机实施驱动,促使各关节实现运动。机器人各关节相应的电机编码器则借助以太网将经过DMC-2163的位置信号对工控机进行反馈,能实时对机器人状态实施清晰显示和有效监控[1]。控制系统硬件架构如下图1所示:
1.1 DMC-2163运动控制卡
DMC-2163运动控制卡,能实现对数控设备性能需求以及精度需求的良好满足。本文对DMC-2163运动控制卡进行选用,将之应用于6自由度工业机器人。同时,对API进行使用,基于工控机实施二次开发。
1.2嵌入式ARM工控机
工业机器人运动控制系统相应的硬件系统需具备良好的使用性能和较强的稳定性和可靠性。对此,可对嵌入式Freescale IMX6工控机进行选用,Cortex-A9核心处理器是工控机的CPU,其主频高达1.2GHz,最高支持存储器容量为32G。工控机具有丰富的硬件资源,能实现对机器人控制系统相应的上位机各项要求的有效满足[2]。
2.运动控制系统软件设计
2.1 NURBS插补实现
在空间中,可对NURBS曲线相应的有理分式形式进行如下定义:
在上式中,表示控制顶点;表示控制顶点对应的权因子;表示次样条基函数,其定义如下:取共个节点值组成节点向量()。令:
(2)
在(2)式中,参数具体变化范围如下。可对进行如下定义:
(3)
在(3)式中,若分母为0,则分式的值也相应为0。
2.2 NURBS插补算法
通过控制顶点、对应于控制顶点的权因子、节点矢量可对NURBS曲线进行唯一确定。NURBS曲线插补,是通过插补周期内相应的步长折线段对NURBS曲线本身进行近似逼近。因此,实现NURBS曲线插补,要解决如下问题:(1)密化参数。是指将轨迹空间内相应的进给步长对参数空间进行映射,对参数增量、新点相应的参数坐标进行求解[3]。(2)计算轨迹。是指求解出的参数空间相应的坐标值对轨迹空间进行反向映射,求得映射点。该点实际上就是插补轨迹相应的新坐标点。
2.3 ARM工控机上软件设计
工业机器人,在ARM工控机上实现其运动控制系统相应的软件部分。首先,需对软件开发环境进行配置:将Linus系统相应的ubuntu版本安装在Freescale IMX6上,对移植嵌入式Qt进行采用,并向ubuntu中移植Linus系统下的库。
控制软件对图形用户界面进行采用,借助QMain Window类对主框架进行构建,借助QDialog类以及QWidget类实现各模块相应功能,借助Qt信号/槽机制、配置文件、事件管理以及全局变量等实现各模块信息交流。
①与下位机通讯模块。该模块,主要借助DMCComandOM()函数对各编码器相应的值进行读取,并对工业机器人具备的各关节转角进行获取,为正逆运动学计算以及轨迹规划提供条件。另外,借助DMCDownloadFile()函数对运动控制指令进行下载,并将之发送至DMC-2183运动控制卡内。②文档管理模块。该模块可对文档进行新建及保存,DMC-2163可对文档中包含的二字符指令集进行解析,并从代码级别上对工业机器人具备的各轴实施测试,并对之进行简单控制。③运动学分析模块。运动学正解,是指已知工业机器人相应的各关节的实际转动角度,对其末端处于空间的具体位置和姿态进行求解。运动学逆解,是指已知末端连杆的实际位置和具体姿态,对工业机器人相应的各关节实际转动角度进行求解。运动学分析为控制软件确保工业机器人实施正确运行奠定了基础,同时,能对工业机器人达到相应目标点进行检验,有助于设计人员发现相关错误。④人机界面模块。人机界面负责对工业机器人运动状态相关数据进行实时显示和及时更新,并用于用户对相关设置参数进行输入,帮助用户实现对工业机器人运动状态的实时监控和有效控制。⑤轨迹规划模块。该模块为工业机器人在运动作业任务中各类运动形式奠定基础。不仅能实现直线运动以及圆弧运动插补,还能实现NURBS轨迹插补,确保自由曲线运动的有效实现。⑥示教再现模块。该模块主要对工业机器人各项复杂作业进行示教,并对模式操作界面进行再现。完成示教后,对模式界面进行再现,实现对示教动作的自动重现。⑦系统设置。对工业机器人相应的本体参数进行设置,使控制系统软件适用与6自由度工业机器人。⑧状态显示模块。该模块负责对控制卡I/O狀态、作业完成进度以及机器人位姿状态等信息进行显示。 (1)机器人参数设置
工业机器人参数主要包括以下两类:(1)运动学D-H参数。此类参数对6自由度机器人相应的本体结构具有决定性影响。(2)分频比/倍频比。此类参数决定了工控机借助DMC控制卡对单个脉冲发送时,机器人各关节实际的转动角度。
(2)机器人轨迹规划
DMC-2163控制器相应的轮廓模式能在1~6轴内辅助用户对自由位置—时间曲线进行定义。因此,可对轨迹进行有效跟踪。在工业机器人运动控制系统设计中,由工控机内相应算法对空间运动规划、运动学分析进行完成,借助DMC-2163相应的轮廓模式对机器人各关节运动实施协调控制,空间运动轨迹相应的插补周期为32ms。具体流程如下:
对空间轨迹相应的参数方程进行构建,每隔32ms,即对运动轨迹相应的空间坐标进行计算,以(x,y,z)对坐标向量进行表示。对工业机器人相应的末端空间坐标向量实施运动学分解,即可计算得出机器人各关节相应的关节变量。对各关节变量进行变换,即可求出电机轴相应的脉冲量。DMC对一定脉冲量进行发送,实现对各电机变量的有效控制。当前,主要通过计算获取各轴相应的脉冲变量,由相应的轨迹规划文本*.dmc对各脉冲增量进行记录。然后,对API函数库所包含的文件相应的下载函数DownloadFile()进行调用,对上述轨迹规划文本*.dmc进行下载。最后,对Command()进行调用,对文本命令进行执行,确保工艺机器人末端对用户定义轨迹进行完成。
(3)机器人示教作业
工业机器人基于控制系统设计对特定作业进行完成,主要对示教及再现模式进行采用。在示教界面,对适宜的坐标系进行选用,借助轴控制按钮,对工业机器人末端到位置点的运动进行控制,再对运动指令以及具体参数进行选择,使工业机器人末端遵循各类轨迹向目标点进行运动。示教模块实现了包括NURBS、MOVJ、MOVS、MOVL在内的运动指令集以及各类其他指令,诸如延时指令、数字运算指令等。通过工业机器人相应的运动学分析结果,获取机器人各关节实际转动角度,将相关命令对DMC控制卡进行发送,对机器人作业进行操作。
3.结语
综上所述,本文基于UPR100机器人本体,对运动控制系统进行设计。该运动控制系统以DMC-2163控制卡以及嵌入式ARM工控机作为硬件核心,并基于ubuntu平台,对Qt环境进行搭建,并对控制软件进行设计开发。该控制系统实现了与NURBS插补算法的融合,使工业机器人末端能在軌迹空间中实现对自由曲线相应轨迹的良好完成。
参考文献:
[1]赖时伍. 工业机器人运动控制系统的研究与设计[J]. 电子测试,2016(12):13-14.
[2]陈健. 基于EtherCAT的工业机器人开放式运动控制系统研究与设计[D]. 燕山大学,2015.
[3]杨帅,邹智慧. 多自由度工业机器人运动控制系统的研究[J]. 制造业自动化,2013(10):117-121.