记录一套开发流程,没啥意义
后续可看,ppt要好好做
1.基本理论
2.开发
ISO
- 机器人动作机构具有类似于人或其他生物体的某些器官(肢体、感受等)的功能;、
- 机器人具有通用性,工作种类多样,动作程序灵活易变;
- 机器人具有不同程度的智能性,比如记忆、感知、推理、决策、学习等;
- 机器人具有独立性、完整的机器人系统在工作中不可以依赖于人的干预。
驱动系统
- 电源子系统
- 电机驱动系统—控制信号-电信号
- 传感器
内部传感器
- 机器人里程计
- 惯性测量单元IMU
控制系统
PC—人机交互(SLAM、导航、图像识别、语音识别)
TCP/UDP
硬件系统:控制、传感器数据采集、驱动系统通信、外设连接
外部传感器
- 外部摄像头、Kinect
- 激光雷达
移动机器人-常见
机器人架构可参考(ppt制作,针对特种环境的通信干扰分析)
云机器人架构思想:
- 全局云:全局数据存储、共享和交互
- 本地云:密集型计算的机器人应用服务
- 机器人:面向用户的终端服务单元
优点:局部网络占优
- 本地云数据共享更加灵活、快捷
- 数据保存与本地服务器,更加安全、可靠
- 服务于多种机器人
整理常见机械臂:
- UR机械臂,安全度高、编程简单、灵活度高,负载10-18kg,工作半径85-130cm。
控制框架架构+系统架构+云系统架构
开发具体流程分析与记录(代码分析):
1.常见基础
2.manipulator_moveit
3.moveit+gazebo 仿真系统搭建
ros_control 为开发者提供的机器人控制中间件,包含一系列控制器接口、传动器接口、硬件接口、控制器工具箱
包括有速度控制、位置控制、力控制
关节位置控制器:PID 具体参照arm包 yaml文件或者gazebo_control内yaml文件
加载控制器,加载conrollers关节参数,加载publisher参数节点,三部分,关节矩阵变换
moveit与gazebo rviz 联合仿真
编程接口
moveit_commander python接口
1.连接控制需要的规划组 2.设置目标位姿 3.设置运动约束 4.使用moveit!规划一条到达目标的轨迹
5.修改轨迹 6.执行规划出的轨迹
启动moveit包-moveit_config,程序中给出目标位置以及执行器位置信息,软件自动规划最优路径
编程—-针对规划组编写,设置目标位置参数,臂则设置位置信息,数组导入,完成机械臂规划
工作空间运动规划—轨迹规划(关键代码参数)
创建规划组的控制对象
获取机器人终端LINK名称
设置目标位姿对应的参考坐标系和起始、终止位姿
完成规划并控制机械臂完成运动
运动限制约束设置
运动学插件问题KDL,插件选用以及二次开发
问题
抓取与放置,attach与un,避障规划
代码分析与移植待补充~~