论文部分内容阅读
臂型机器人或简称机械臂,是一种非常常见的机器人类型,常用于工业自动化中诸如组装、焊接、搬运等的工作。如今,机械臂的应用方案已经非常成熟,大部分工业用机械臂都是使用PLC(可编程逻辑控制器)进行控制。PLC具有性能稳定,可靠性高,编程方便等优点,尽管如此,不同厂家生产的PLC之间通常是不兼容的,这给程序的移植工作带来很大的麻烦,降低了运动控制软件算法的通用性。其次,商用的控制软件通常需要收取高额的购买费用,增加了用户的生产成本。ROS(机器人控制系统)是一个用于机器人应用开发的软件生态系统,利用它开发的机器人应用具有通用性好,移植方便等特点,而且它采用开源的软件模式,使得我们能够自由地在选用许多已有的开源软件和算法,提高了应用的开发效率。因此,对于工业机械臂而言,研究基于ROS的运动控制器的开发具有重要的工程价值和理论意义。本文围绕基于ROS的机械臂运动控制器的设计与实现问题展开讨论,主要内容包括如下。本文的第二章首先从系统的角度入手,分析了典型的机械臂运动控制器的系统结构以及每个功能模块的主要功能和特点。接着,通过借助ROS基础框架所提供的进程间通讯方式,对机械臂控制器的整体软件结构进行了论证和设计。为了在计算机中对控制器进行仿真实验,我们在第三章中讨论了基于URDF(统一机器人描述格式)的机器人建模方法,以及机器人的坐标变换问题。本文的第四章,主要讨论了机械臂控制器的设计与实现方法。我们采用了自下而上的讨论顺序,对控制系统结构中的每一个层次的功能模块进行逐一介绍。其中包括了伺服控制器,轨迹插补模块,以及运动学正逆解模块。对于每一个模块,我们首先从算法层面进行研究,接着给出其在ROS中具体实现的方法。在本章的最后,我们使用了所设计的控制器,控制机械臂模型完成一个综合性任务,以验证运动控制器的有效性。在本文的第五章,考虑到运动控制算法在小型设备上的性能问题,我们提出了一种基于频域补零的插补算法改进方法,使得部分的计算负载能够由DSP(数字信号处理器)分担。算法通过在一台带有显卡的计算机上进行仿真实验,以验证算法的有效性。文章的最后总结了基于ROS的机械臂运动控制器设计的优点与缺点,并给出了项目未来的研究方向。