登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 毕业论文 > 计算机类 > 计算机科学与技术 > 正文

基于ROS的机械臂仿真程序设计毕业论文

 2021-11-05 19:39:01  

摘 要

近些年来,随着人工智能的火热,越来越多的人选择进入到机器人的相关领域中来。机械臂作为机器人的一个关键组成部分显得尤为重要,而对机械臂的研究便离不开机械臂的仿真,如何设计一个机械臂的仿真程序就成为一个重要问题。本文主要研究如何设计一个机械臂的仿真程序,以ROS操作系统为平台,设计Panda机械臂的模型, 然后对机械臂进行运动学分析,最后编写程序实现Panda机械臂的仿真控制并完成了完整的程序设计。

首先,对Panda机械臂进行了3D模型的设计,其中确定了Panda机械臂的组成结构,然后编写对应XACRO机器人描述文件的代码,设置了其连杆和关节的具体参数。至此,完成了Panda机械臂仿真的第一步,即设计其3D模型。

然后,通过D-H规则对Panda机械臂进行运动学建模,分析了Panda机械臂各相邻连杆在空间中的坐标系变换,得出了连杆间的坐标系变换矩阵,并对该系列矩阵进行了推导,最后求出了机械臂的运动学逆解,为之后Panda机械臂的运动规划打好理论基础。之后通过Moveit配置助手得到了Panda机械臂的配置文件,是其模型文件能够在仿真软件上运行,为之后的仿真实验做好基础工作。

最后,使用RRT算法作为Panda机械臂进行运动规划的理论依据,设计得到RRT算法实现Panda机械臂运动规划的C 程序。其后编写Panda机械臂的控制程序,实现Panda机械臂在Gazebo上的控制仿真。至此,设计出了Panda机械臂的仿真程序。

通过在Rviz以及Gazebo上对Panda机械臂仿真程序的测试,其运动规划和控制达到了设计的需求,设计的程序实现了本课题机械臂仿真这一最终目标。

关键字:机械臂,运动学分析,运动规划,仿真

Abstract

In recent years, with the popularity of artificial intelligence, more and more people choose to enter the field of robotics. As a key part of the robot, the research of the manipulator can not be separated from the simulation of the manipulator, so how to design the simulation program of the manipulator becomes an important problem. In this paper, we mainly study how to design a simulation program of a robot arm, design a model of Panda robot arm based on Ros operating system, and then analyze the kinematics of the robot arm, finally, the Panda manipulator is simulated and controlled by the program and the whole program design is completed.

First, the 3D model of Panda manipulator is designed, the structure of Panda manipulator is determined, then the code corresponding to the description file of Xacro manipulator is written, and the parameters of link and joint are set. At this point, the first step of Panda simulation is completed, which is to design its 3D model.

Secondly, the D-H rule is used to model the Panda manipulator, and the coordinate system transformation between the adjacent links of the Panda manipulator is analyzed, the coordinate system transformation matrix between the links is obtained, and the Panda Series Matrix is derived, finally, the inverse kinematics solution of the Panda manipulator is obtained, which lays a good theoretical foundation for the motion planning of the Panda manipulator. After that, the Panda manipulator's configuration file is obtained through the Moveit configuration assistant, which makes the model file run on the simulation software, and makes the foundation work for the simulation experiment.

Finally, the RRT Algorithm is used as the theoretical basis of Panda manipulator motion planning, and a C program of Panda manipulator motion planning based on RRT algorithm is designed. Then we write the control program of Panda manipulator, and realize the control simulation of Panda manipulator on Gazebo. So far, the simulation program of Panda manipulator has been designed.

By testing the simulation program of Panda arm on Rviz and Gazebo, the motion planning and control of the robot arm meet the requirement of the design.

Keywords: manipulator, kinematics analysis, motion planning, simulation

目录

摘 要 1

Abstract 2

第一章 绪论 1

1.1目的及意义 1

1.2关于机械臂仿真技术的国内外现状 1

1.2.1ROS研究现状 1

1.2.2机械臂研究现状 2

1.3研究的目的及内容 3

1.4本章小结 4

第二章 机械臂3D建模 5

2.1 ROS框架及其概念 5

2.1.1ROS文件系统级 5

2.1.2 计算图集 6

2.1.3 开源社区级 7

2.2 机械臂3D建模 7

2.2.1创建URDF文件 7

2.2.2 Panda机械臂结构设计 10

2.3本章小结 12

第三章 Panda机械臂的运动学建模及其配置文件生成 13

3.1 机械臂的位置及姿态描述 13

3.1.1机械臂位置的描述 13

3.1.2机械臂的姿态描述 13

3.2 D-H建模 14

3.2.1建立坐标系 14

3.2.2坐标变换矩阵 15

3.3 Panda机械臂的逆运动学求解 16

3.4 生成配置文件 18

3.5本章小结 23

第四章 机械臂运动规划及仿真 24

4.1 运动规划 24

4.1.1 建立C空间 24

4.1.2 机械臂RRT算法的原理 24

4.2 RRT算法仿真 26

4.3 机械臂仿真 28

4.4本章小结 31

第五章 总结与展望 32

5.1 总结 32

5.2 展望 32

参考文献 33

致谢 34

第一章 绪论

1.1目的及意义

基于ROS机械臂的仿真程序设计是指在ROS操作系统中通过程序的编写并运行来实现对机械臂的仿真,本文的目的旨在实现标椎化的机械臂仿真程序设计。通过仿真,可以验证机械臂模型的机械臂的结构设计,运动控制,轨迹规划等功能的有效性,降低实际中的机械臂的设计成本。现如今,许多机器人厂商都有自己的机器人开发软件,然而不同厂商之间的机器人开发软件的设计标准是各不相同的,这导致了这些机器人开发软件之间的内容并不能够兼容,实现同样功能的代码,却不能在不同类型的机器人之间进行移植,使得开发过程显得繁琐且复杂[1]。ROS作为一款非常实用的通用的分布式的机器人软件开发框架,其功能多样,性能优秀,众多功能模块间以松耦合方式结合。资源上还有ROS社区,在该社区上拥有大量的机器人的共享资源,许多的功能代码能够被重复利用,从而能够有效地提高开发人员们开发的工作效率。

1.2关于机械臂仿真技术的国内外现状

1.2.1ROS研究现状

机器人操作系统(Robot Operating System,ROS)是一个用于编写机器人软件的框架,它起源于斯坦福大学人工智能实验室与Willow Garage公司合作的个人机器人项目(Personal Robotics Project)[2]。ROS操作系统中配置有诸多的工具以便于进行机器人的相关开发,能够在开发过程中有效地辅助开发人员,ROS社区还拥有着大量开源代码,方便开发人员在ROS上迅速地对机器人进行程序的开发,并能够快速地在大量的所需资源中查找并得到实现各种功能的代码源码,能够极大的简化机器人的开发工作。

ROS—开始是针对PR2机器人从而开发出来的的,开发ROS最初的目的是向PR2机器人提供满足各种需求的一套软件,便于对PR2机器人实现各种功能地开发,设计ROS的要求是能够对代码高利用率。在2008年,作为PR2第一个版本的alpha被开发人员成功地研究出来。随时间的推移,ROS平台的内容以及功能都在被人们不断地完善并丰富起来,PR2机器人的性能同样地在提高。之后PR2机器人就已经实现了不通过他人控制进行开门的功能,还实现了通过装备的视觉传感器发现并找到电源插座并进行智能自动充电等功能。一个PR2机器人如图1-1所示。几年后,Willow Garage公司发布了新的版本,ROS1.0版本,之后又陆陆续续推出了其他的正式版本,至今ROS已发布了十几个版本

您需要先支付 80元 才能查看全部内容!立即支付

企业微信

Copyright © 2010-2022 毕业论文网 站点地图