论文部分内容阅读
摘要:控制器属于工业机器人的大脑,其设计的质量对工业机器人的性能、精度产生直接的影响。六轴工业机器人为工业机器人类型中的一种,运动控制的复杂性比较高,从我国现有的运动控制器来看,尚无法有效的满足其控制需求。基于此,本文在DSP基础上,分析了设计六轴工业机器人控制器的方法,旨在实现有效的控制六轴工业机器人运行,发挥其应用价值。
关键词:DSP;六轴工业机器人;控制器;设计
前言:制造领域中应用工业机器人之后,明显的提升了生产效率,并增强了行业的信息化与工业化程度,实现制造行业的繁荣发展。随着工业机器人应用领域的不断拓宽,关于工业机器人及其控制器的研究逐渐增多,并形成了较好的研究成果。六轴工业机器人运动时,要对六轴联动做出科学的控制,由于现有控制器無法满足其实时性与精度的要求,还需要在相应技术基础上有针对性的研究,由此可见,本文研究的开展具有十分重要的现实意义。
一、控制器设计需求分析
工业机器人性能实现时,控制器具有核心性的作用,通过其中的硬件及软件平台,为工业机器人的运动控制提供良好的支持。站在用户的角度上,控制器与黑箱子较为相似,用户使用时,只需将运动轨迹的起始、目标位置,路径约束条件输入到上位机中,之后,控制器可以根据自身的功能自动完成运动轨迹规划工作,并对末端执行器做出控制,使其运动轨迹与预先设置相同。基于上述分析,设计六轴工业机器人的控制器时,需求主要体现在以下三个方面:
第一,一个关节对应一个伺服系统,各个关节运动时,硬件架构要使其运动具备协调性,对每个伺服系统都能良好的兼容;第二,规划运动轨迹时,需求的算法比较复杂,如计算插值点、正解及逆解运动学等,坐标变换、矩阵逆运算的量非常大,硬件架构要对此给予良好的支撑;第三,控制6个伺服系统时,需求的I/O口比较多,同时,用户具备二次开发需求,因此,硬件架构中,带有的I/O数量要足够多,并能够与预留,以满足客户的需求。
二、控制器硬件设计
(一)电源设计
电路板中,重要组成部分即为电源,关系着电路板功能能否稳定的实现。设计电源时,要以电路板类型为依据,本文中需设计的电源用于控制器中,也就是需要设计DSP电源。通常,DSP电源电路应设计三种,第一种为DSP芯片内核电源,以1.9V作为供电电压;第二种为I/O口电源,电压3.3V,电平转换无需进行;第三种为模拟电路电源,属于ADC模块专用电源,电压3.3V。因供电电源的数量比较多,需要着重的考虑加电次序问题,对于DSP,上电、掉电次序及复位问题均需要进行妥善的设计。理想状态下,DSP芯片中,内核电源及I/O口电源的上电应同时进行,但由于实际实现难度非常大,因此,先进行上电的为I/O口电源和模拟电路电源,之后再进行内核电源的上电。基于此种上电顺序,设计时选用的芯片型号为LT1963A-33。
(二)模块通信设计
控制器控制六轴工业机器人时,PC机需要与DSP之间进行数据交换,以有效的调动各个关节,保证机器人正常运行。一般,控制卡人机交互界面的实现位置为上位机,而对于控制卡自身,运动轨迹规划算法需要实时执行,因此,上位机与控制卡通信时,要交换的数据量是非常大的,为保证通信正常进行,要求就有非常高的传输速率及实时性。设计之初,本文已经将直线插值点、圆弧插值点写入到DSP中,PC机仅需将轨迹运动命令发送给DSP即可,由此,上位机程序复杂程度可以有效降低,也简化了二者之间的通信。
(三)伺服模块设计
以松下A5伺服系统作为本文设计时所采用的伺服模块。首先,设计光耦模块,主要功能为输出,输入控制伺服驱动器的信号,如输入伺服ON、输出伺服准备等,部分控制器中的该模块用于控制伺服驱动器、反应伺服的工作状态等,由于伺服驱动器处于比较恶劣的工作环境中,干扰较大,设计时还需要进行抗干扰设计,光耦传递电信号时,媒介为光,能够良好的隔离输入输出的电信号,广泛的应用于工业中,本文中光耦隔离控制输入输出心电时,采用TLP521-4。其次,设计差分信号转换模块,伺服驱动器输出时,相共包含3个,分别为A相、B相、Z相,各相输出时,均为一组差分信号,差分信号具有非常强的抗干扰能力,可高度免疫外部电磁干扰,而且也不需要依赖“地”,提升传输可靠性,设计该模块时,采用的芯片为MC3486。最后,設计模拟量输出模块,速度模式为伺服驱动器工作时选择的模式,为能对电机转速做出控制,需要进行模拟量的接收,实现此功能时,采用数模转换电路法,如果采用专用D/A芯片,会大幅度的增加控制器的设计成本,而且占用的I/O接口也比较多,本文设计过程中,D/A转换构成应用PWM方式,即脉冲宽度调制方式。
三、控制器软件设计
(一)总体设计
在控制器中,包含上位机、下位机两部分,下位机控制器为本文研究的重点,因此,运动控制系统的上位机功能没有完全开发。控制系统较为成熟时,人机交互界面、规划运动轨迹等功能均需要在上位机实现,而实现插补算法、数据通信、伺服控制等为主要由下位机完成,如果正逆解运动学并未在上位机中进行,也可由下位机进行。具体说来,控制算法、数据存储、数据通信、伺服控制、I/O控制、伺服中断为控制器设计时总体的软件架构,这些软件模块中,部分运行在DSP上,部分运行在其他芯片上,共同实现控制器的各项功能。
(二)控制算法设计
本文所设计的控制器属于初级阶段产品,直线插值点、圆弧插值点均已经事先设计到了DSP内部,这些属于六轴工业机器人各个关节的理想位置,而关节轴实际位置的得到需要进行增量式编码解码,之后,DSP接收实际位置信息,并比较理想位置信息,将误差计算出来,对关节给进速度做出相应的调整,并输出相关信息,以能控制伺服系统,使末端执行器的方向运动误差降至最小。
(二)数据存储设计
DSP为能便利的开展程序调节工作,在数据存储模块中外扩了一个SRAM芯片,型号为IS61LVL416,该芯片具有比较大的存储容量,DSP调试时,会直接受到ARSM芯片的影响。测试SRAM芯片性能时,需要经历一系列的程序,由其整体流程可知,地址从0开始,依次的将0-0xFFFF数据写入,直至地址为0xFFFF,期间,验证工作也顺次的开展,测试完成后,要想了解错误信息情况,对变量error数值查看即可,最后对芯片性能作出判定。
(三)增量式编码器设计
伺服控制系统中广泛的应用增量式光电编码器,原因为其具有较高的精度、较快的响应速度及较为稳定的性能。此种编码器输出时,数字量无法直接输出,A相、B相与z相的脉冲信号为能够输出的,再经处理后,使转子转角及速度信息获得。在转子转角、转向基础上,增量式编码器可将一系列的脉冲信号输出,转角越多时,输出的脉冲信号数量越多,因此,转速越快,脉冲频率越高。关节轴实际位置信息需要经过增量式编码器解码得到,还需要针对编码器设计相应的解码器。
(四)双端口RAM通信模块设计
所谓双端口RAM,是指将数据线等加在SRAM芯片上,而且两端的均为独立的总线,对于内部存储数据,由两个端口共享,访问存储空间的时间并不受到限制。基于此,将两个单独的CPU设计在端口的两端,对存储空间做出访问时,两个CPU属于同时异步访问,实现数据听信。共享过程中,为防止数据冲突的存在,需要将仲裁机制加入其中,通过仲裁机制相关功能的发挥,保证控制器正常运行。双端口RAM构建过程中,使用存储单元块,型号为M9K,使其与DSP之间顺利通信,并提升端口的运行效率。
(五)限位急停模块设计
正负极限位置设计到控制器中后,能够有效的保证六轴工业机器人作业的安全性。实际工作过程中,关节轴的运动如果处于极限位置,会立即的停止运行与其所对应的电机,同时,电机不会接收到任何前进信号,且能够正常的接收反向运动信号,以此来保证运行安全。
结论:基于上述方法设计控制器后,能够有效的满足六轴工业机器人运功控制时的基本需求,但由于本文研究能力有限,加之科学技术的不断发展,还需要持续的进行更为深入的研究。
关键词:DSP;六轴工业机器人;控制器;设计
前言:制造领域中应用工业机器人之后,明显的提升了生产效率,并增强了行业的信息化与工业化程度,实现制造行业的繁荣发展。随着工业机器人应用领域的不断拓宽,关于工业机器人及其控制器的研究逐渐增多,并形成了较好的研究成果。六轴工业机器人运动时,要对六轴联动做出科学的控制,由于现有控制器無法满足其实时性与精度的要求,还需要在相应技术基础上有针对性的研究,由此可见,本文研究的开展具有十分重要的现实意义。
一、控制器设计需求分析
工业机器人性能实现时,控制器具有核心性的作用,通过其中的硬件及软件平台,为工业机器人的运动控制提供良好的支持。站在用户的角度上,控制器与黑箱子较为相似,用户使用时,只需将运动轨迹的起始、目标位置,路径约束条件输入到上位机中,之后,控制器可以根据自身的功能自动完成运动轨迹规划工作,并对末端执行器做出控制,使其运动轨迹与预先设置相同。基于上述分析,设计六轴工业机器人的控制器时,需求主要体现在以下三个方面:
第一,一个关节对应一个伺服系统,各个关节运动时,硬件架构要使其运动具备协调性,对每个伺服系统都能良好的兼容;第二,规划运动轨迹时,需求的算法比较复杂,如计算插值点、正解及逆解运动学等,坐标变换、矩阵逆运算的量非常大,硬件架构要对此给予良好的支撑;第三,控制6个伺服系统时,需求的I/O口比较多,同时,用户具备二次开发需求,因此,硬件架构中,带有的I/O数量要足够多,并能够与预留,以满足客户的需求。
二、控制器硬件设计
(一)电源设计
电路板中,重要组成部分即为电源,关系着电路板功能能否稳定的实现。设计电源时,要以电路板类型为依据,本文中需设计的电源用于控制器中,也就是需要设计DSP电源。通常,DSP电源电路应设计三种,第一种为DSP芯片内核电源,以1.9V作为供电电压;第二种为I/O口电源,电压3.3V,电平转换无需进行;第三种为模拟电路电源,属于ADC模块专用电源,电压3.3V。因供电电源的数量比较多,需要着重的考虑加电次序问题,对于DSP,上电、掉电次序及复位问题均需要进行妥善的设计。理想状态下,DSP芯片中,内核电源及I/O口电源的上电应同时进行,但由于实际实现难度非常大,因此,先进行上电的为I/O口电源和模拟电路电源,之后再进行内核电源的上电。基于此种上电顺序,设计时选用的芯片型号为LT1963A-33。
(二)模块通信设计
控制器控制六轴工业机器人时,PC机需要与DSP之间进行数据交换,以有效的调动各个关节,保证机器人正常运行。一般,控制卡人机交互界面的实现位置为上位机,而对于控制卡自身,运动轨迹规划算法需要实时执行,因此,上位机与控制卡通信时,要交换的数据量是非常大的,为保证通信正常进行,要求就有非常高的传输速率及实时性。设计之初,本文已经将直线插值点、圆弧插值点写入到DSP中,PC机仅需将轨迹运动命令发送给DSP即可,由此,上位机程序复杂程度可以有效降低,也简化了二者之间的通信。
(三)伺服模块设计
以松下A5伺服系统作为本文设计时所采用的伺服模块。首先,设计光耦模块,主要功能为输出,输入控制伺服驱动器的信号,如输入伺服ON、输出伺服准备等,部分控制器中的该模块用于控制伺服驱动器、反应伺服的工作状态等,由于伺服驱动器处于比较恶劣的工作环境中,干扰较大,设计时还需要进行抗干扰设计,光耦传递电信号时,媒介为光,能够良好的隔离输入输出的电信号,广泛的应用于工业中,本文中光耦隔离控制输入输出心电时,采用TLP521-4。其次,设计差分信号转换模块,伺服驱动器输出时,相共包含3个,分别为A相、B相、Z相,各相输出时,均为一组差分信号,差分信号具有非常强的抗干扰能力,可高度免疫外部电磁干扰,而且也不需要依赖“地”,提升传输可靠性,设计该模块时,采用的芯片为MC3486。最后,設计模拟量输出模块,速度模式为伺服驱动器工作时选择的模式,为能对电机转速做出控制,需要进行模拟量的接收,实现此功能时,采用数模转换电路法,如果采用专用D/A芯片,会大幅度的增加控制器的设计成本,而且占用的I/O接口也比较多,本文设计过程中,D/A转换构成应用PWM方式,即脉冲宽度调制方式。
三、控制器软件设计
(一)总体设计
在控制器中,包含上位机、下位机两部分,下位机控制器为本文研究的重点,因此,运动控制系统的上位机功能没有完全开发。控制系统较为成熟时,人机交互界面、规划运动轨迹等功能均需要在上位机实现,而实现插补算法、数据通信、伺服控制等为主要由下位机完成,如果正逆解运动学并未在上位机中进行,也可由下位机进行。具体说来,控制算法、数据存储、数据通信、伺服控制、I/O控制、伺服中断为控制器设计时总体的软件架构,这些软件模块中,部分运行在DSP上,部分运行在其他芯片上,共同实现控制器的各项功能。
(二)控制算法设计
本文所设计的控制器属于初级阶段产品,直线插值点、圆弧插值点均已经事先设计到了DSP内部,这些属于六轴工业机器人各个关节的理想位置,而关节轴实际位置的得到需要进行增量式编码解码,之后,DSP接收实际位置信息,并比较理想位置信息,将误差计算出来,对关节给进速度做出相应的调整,并输出相关信息,以能控制伺服系统,使末端执行器的方向运动误差降至最小。
(二)数据存储设计
DSP为能便利的开展程序调节工作,在数据存储模块中外扩了一个SRAM芯片,型号为IS61LVL416,该芯片具有比较大的存储容量,DSP调试时,会直接受到ARSM芯片的影响。测试SRAM芯片性能时,需要经历一系列的程序,由其整体流程可知,地址从0开始,依次的将0-0xFFFF数据写入,直至地址为0xFFFF,期间,验证工作也顺次的开展,测试完成后,要想了解错误信息情况,对变量error数值查看即可,最后对芯片性能作出判定。
(三)增量式编码器设计
伺服控制系统中广泛的应用增量式光电编码器,原因为其具有较高的精度、较快的响应速度及较为稳定的性能。此种编码器输出时,数字量无法直接输出,A相、B相与z相的脉冲信号为能够输出的,再经处理后,使转子转角及速度信息获得。在转子转角、转向基础上,增量式编码器可将一系列的脉冲信号输出,转角越多时,输出的脉冲信号数量越多,因此,转速越快,脉冲频率越高。关节轴实际位置信息需要经过增量式编码器解码得到,还需要针对编码器设计相应的解码器。
(四)双端口RAM通信模块设计
所谓双端口RAM,是指将数据线等加在SRAM芯片上,而且两端的均为独立的总线,对于内部存储数据,由两个端口共享,访问存储空间的时间并不受到限制。基于此,将两个单独的CPU设计在端口的两端,对存储空间做出访问时,两个CPU属于同时异步访问,实现数据听信。共享过程中,为防止数据冲突的存在,需要将仲裁机制加入其中,通过仲裁机制相关功能的发挥,保证控制器正常运行。双端口RAM构建过程中,使用存储单元块,型号为M9K,使其与DSP之间顺利通信,并提升端口的运行效率。
(五)限位急停模块设计
正负极限位置设计到控制器中后,能够有效的保证六轴工业机器人作业的安全性。实际工作过程中,关节轴的运动如果处于极限位置,会立即的停止运行与其所对应的电机,同时,电机不会接收到任何前进信号,且能够正常的接收反向运动信号,以此来保证运行安全。
结论:基于上述方法设计控制器后,能够有效的满足六轴工业机器人运功控制时的基本需求,但由于本文研究能力有限,加之科学技术的不断发展,还需要持续的进行更为深入的研究。