机器人控制系统(一)——前期准备

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/Kalenee/article/details/88563411

一、概述

机器人开发是一门综合学科,需要用到各方面知识,包括且不限于计算机,数学和物理等各个领域。因其综合程度高使其开发较为繁琐且困难,ROS的出现大大简单了机器人开发的门槛,ROS全称Robot Operating System,本质上是一个分布式系统架构,提供标准的通讯结构,实现功能的集成。
机器人开发的一般流程为:目标设计,构建框架,功能开发,整体优化,实体验证,该流程并非顺序执行,更多的是循环和回溯,本专栏也以按照该流程编写。

二、相关工具

工欲善其事必先利其器,要想更好的进行机器人开发,掌握相关工具和知识是必不可少的,下面介绍了在开发过程中常用的工具。

1. Matlab

  • 简述

    MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。

Matlab在机器人开发过程中主要用于控制算法的开发,但其程序运行速度较慢,不适合直接整合进控制系统中。

  • 相关学习
    机器人工具箱:提供机器人相关的各种函数,包括建模,逆解,轨迹规划和运动规划等。

2. C++

  • 简述
    C++执行效率较高,但编写较为繁琐,适合用在需要进行复杂计算的环境和性能要求较高的地方。
  • 相关学习
    Eigen
    Eigen和Matlab的比较
    g2o

3. Python

4. git

  • 简述

    Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。

    考虑到控制系统本身为模块化开发,即各部分功能独立成模块,整体较为复杂,git可以帮助我们更好地管理整个工作空间,同时通过分支我们可以很好地将各部分功能分开开发。

  • 相关学习
    廖雪峰-Git教程
    图解Git

备注
Google 开源项目风格指南

三、学习资源

ROS已经发展了较长时间,网上也有大量相关知识,下面整理了一些比较好的资源:
ROS官方教程
ROS Industrial (Kinetic) Training Exercises
古月居
创客智造
易科机器人实验室
中国大学MOOC《机器人操作系统入门》课程代码示例

四、开发参考

使用ROS开发机器人在国内外已经有较成熟的经验了,下面是使用ROS开发的机器人控制系统,可以作为开发参考:
universal_robot
franka
ABB
gauss

猜你喜欢

转载自blog.csdn.net/Kalenee/article/details/88563411