原文地址:

https://www.cnblogs.com/zhaochenliang/p/10453255.html

-------------------------------------------

仿生机器人研究是非常有意思的领域,它不仅从自然界中获取灵感,它也为一些生物的研究提供一个手段和基础,正如下图中所展示的。不论人工智能发展的如何迅速,机械结构始终做为着一个承载的平台,其重要性不可忽略。

(Auke Jan Ijspeert gives a talk on Animal Locomotion - Learning from Robots at WORLDS.MINDS MOBILITY)

仿生机器人有结构仿生,上图不难看出,但也有着仿生控制方法,相比于广泛存在基于模型,和基于行为的控制方法,它不需要进行复杂的数学计算和分析,方法相对简单,但是要想用于实际的工程中,需要结合生物运动资料或者优化算法来确定控制的参数。在这里主要介绍下生物控制方法(此处指 中枢模式发生器CPG)在机器人中的运用。

Auke Jan的实验室进行了许多CPG的实践,下图是一个很好的展示,在动物的行走控制中,控制网络主要包括三部分,即高层中枢系统(对应下图的Descending modulation)、低级中枢系统(Central pattern generators)以及信息反馈模块(Reflexes)。

(Auke Jan Ijspeert gives a talk on Animal Locomotion - Learning from Robots at WORLDS.MINDS MOBILITY)

高层中枢系统  提供  控制节律运动起始的信号 并 对整个运动过程进行监控,特别是动物在复杂环境中运动,高层中枢的调控作用更为突出。行走控制网络的前向通道以脊椎动物的脊髓(CPG)为中心控制单元,产生控制肌肉收缩的舒张的基本节律控制信号。CPG具有独立于神经中枢和外围传入、自激产生运动控制信号的特性,而CPG控制网络要复杂、稳定的运动控制信号,高层中枢系统和反馈信息的实时调控是必不可少的。

动物实现行走的关键在于神经系统对"肌肉-骨骼"系统的精确控制,"肌肉-骨骼"系统是动物躯体运动及姿态实现的物质基础,运动神经元网络与之相连,传递脊髓的运动控制信号。下图可以看到,在拥有更多运动行为的人类身体中,其CPG网络也更加复杂,这在以后介绍。

(Auke Jan Ijspeert gives a talk on Animal Locomotion - Learning from Robots at WORLDS.MINDS MOBILITY)

在14年的文献综述中也对机器人进行了总结,将其中一张图截出以作展示。(Yu J , Tan M , Chen J , et al. A Survey on CPG-Inspired Control Models and System Implementation[J]. IEEE Transactions on Neural Networks and Learning Systems, 2014, 25(3):441-456.)

The bioinspired CPG control has proven to be successful in diverse robotic applications, including legged robots (e.g., biped/humanoid, quadruped, hexapod, octopod, and reconfigurable), crawling robots (e.g., snake-like and salamander-like), swimming robots (anguilliform, carangiform, ostraciiform, undulatory dorsal or pelvic fins, dolphin-like, flapping fins, and amphibious), flying robots (i.e., flapping flight),climbing robots (e.g., caterpillar), and other rhythmic motions(e.g., robot arm, neuro prosthesis, robotic marionette, and industrial robots). Note that the rhythmic movements are not applicable to wheeled and tracked locomotion. (Yu J , Tan M , Chen J , et al. A Survey on CPG-Inspired Control Models and System Implementation[J]. IEEE Transactions on Neural Networks and Learning Systems, 2014, 25(3):441-456.)

做以上简单总结,以供后来之思。

--------------------------------------------------

【转载】 介绍具有代表性的CPG控制机器人的更多相关文章

  1. 通过joystick遥感和按键控制机器人--11

    原创博客:转载请表明出处:http://www.cnblogs.com/zxouxuewei/ 1.首先安装joystick遥控器驱动: sudo apt-get install ros-indigo ...

  2. MIT 黑科技:通过脑电波和手势控制机器人

    简评:麻省理工黑科技,虽然现在能实现的操作还很简单,但前景(想象空间)非常巨大. 通常,控制机器人并不容易,常规手段就是编程.但是地球上从来不缺天马行空的科学家,今日 MIT 的计算机科学与人工智能实 ...

  3. 通过ros节点发布Twist Messages控制机器人--10

    原创博客:转载请表明出处:http://www.cnblogs.com/zxouxuewei/ 1.到目前为止,我们已经从命令行移动机器人,但大多数时间你将依靠一个ros节点发布适当的Twist消息. ...

  4. 转载:Nginx的命令行控制(1.6)《深入理解Nginx》(陶辉)

    原文:https://book.2cto.com/201304/19621.html 在Linux中,需要使用命令行来控制Nginx服务器的启动与停止.重载配置文件.回滚日志文件.平滑升级等行为.默认 ...

  5. ROS 多台计算机联网控制机器人

    0. 时间同步 sudo apt-get install chrony 1. ubuntu自带的有openssh-client 可以通过如下指令 ssh username@host 来连接同一局域网内 ...

  6. 转载:/etc/security/limits.conf 控制文件描述符,进程数,栈大小

    原文地址:http://ilikedo.iteye.com/blog/1554822 linux下安装Oracle 一般都会修改/etc/security/limits.conf这个文件,但是这里面的 ...

  7. 【转载】linux进程及进程控制

    Linux进程控制   程序是一组可执行的静态指令集,而进程(process)是一个执行中的程序实例.利用分时技术,在Linux操作系统上同时可以运行多个进程.分时技术的基本原理是把CPU的运行时间划 ...

  8. [转载]介绍一个JSONP 跨域访问代理API-yahooapis

    你是否遇到了想利用AJAX访问一些公网API,但是你又不想建立自己的代理服务,因为有时我根本就没打算涉及服务端任何代码,但是讨厌的浏览器的同源策略,阻止了我们的ajax调用. 比如我想访问一个天气的r ...

  9. ROS Learning-029 (提高篇-007 A Mobile Base-05) 控制移动平台 --- (Python编程)控制虚拟机器人的移动(精确的制定目标位置)

    ROS 提高篇 之 A Mobile Base-05 - 控制移动平台 - (Python编程)控制虚拟机器人的移动(精确的制定目标位置) 使用 odometry 消息类型 重写 out_and_ba ...

  10. ROS Learning-028 (提高篇-006 A Mobile Base-04) 控制移动平台 --- (Python编程)控制虚拟机器人的移动(不精确的制定目标位置)

    ROS 提高篇 之 A Mobile Base-04 - 控制移动平台 - (Python编程)控制虚拟机器人的移动(不精确的制定目标位置) 我使用的虚拟机软件:VMware Workstation ...

随机推荐

  1. 在线HMAC加密工具

    在线HMAC加密工具提供一站式服务,支持MD5至SHA512.RIPEMD160及SM3等多种哈希算法,用户可便捷选择算法并生成安全的HMAC散列值,确保消息完整性与验证来源.适用于开发调试.网络安全 ...

  2. Java JSON组成和解析

    本框架JSON元素组成和分析,JsonElement分三大类型JsonArray,JsonObject,JsonString. JsonArray:数组和Collection子类,指定数组的话,使用A ...

  3. requests的使用

    准备工作 安装request库 pip install request 实例引入 get方法实现GET请求,返回一个Response对象,存放在变量r中,分别输出响应的类型.状态码.响应体的类型.内容 ...

  4. Java面试知识点(四)重写和重载

    重写override 在 java 中有很多的继承,继承下来的有变量.方法.在有一些子类要实现的方法中,方法名.传的参数.返回值跟父类中的方法一样,但具体实现又跟父类的不一样,这时候我们就需要重写父类 ...

  5. 在Python中输出当前文件名和行号

    在Python中输出当前文件名和行号 用 inspect 库 info = inspect.currentframe() print('DEBUG!! ',info.f_code.co_filenam ...

  6. Gitbook的安装和部署

    安装 npm install gitbook-cli -g gitbook命令: gitbook init //初始化目录文件 gitbook help //列出gitbook所有的命令 gitboo ...

  7. 【VMware vSAN】vSAN Data Protection Part 2:配置管理。

    上篇文章"vSAN Data Protection Part 1:安装部署."介绍了如何安装及部署 VMware Snapshot Service Appliance 设备,并在 ...

  8. .Net Core 全局捕获异常-中间件

    1.代码版本 .Net Core 版本 2.2 2.目录结构 3.定义中间件 新建一个类 CustomerExceptionMiddleware.cs /// <summary> /// ...

  9. Maven的依赖详解和打包方式

    设置maven maven下载与安装教程: https://blog.csdn.net/YOL888666/article/details/122008374 1. 在File->setting ...

  10. 在IDEA中找不到Mapper报错

    前言 相信大多数互联网公司的持久层框架都是使用 Mybatis 框架,而大家在 Service 层引入自己编写的 Mapper 接口时应该会遇到下面的情况: 我们可以看到,上面的红色警告在提示我们,找 ...