原文地址:

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. AtCoder Beginner Contest 357

    ABC357总结 AtCoder Beginner Contest 357 A - Sanitize Hands 翻译 有一瓶消毒剂,正好可以消毒 \(M\) 双手. \(N\) 名外星人陆续前来消毒 ...

  2. .net程序反编译教程(附反编译工具)

    一.以windows服务和winform项目为例,此处用的是winform,发布后的程序都会生成.exe文件,如果有其它关联的程序集,会打包成.dll的动态库文件,一般打包后exe和dll都会带.pd ...

  3. css 让页面变灰色

    html { -webkit-filter: grayscale(1); }-webkit-filter(滤镜)有十种效果,分别是:     // grayscale 灰度     // sepia ...

  4. 微信支付or支付宝支付调用流程图

    微信支付or支付宝支付调用流程图 支付宝小程序支付调用流程https://opendocs.alipay.com/mini/03l735 微信H5支付调用流程https://pay.weixin.qq ...

  5. Vulnhub Fall Walkthrough

    Recon 二层本地扫描,发现目标靶机. ┌──(kali㉿kali)-[~] └─$ sudo netdiscover -r 192.168.80.0/24 Currently scanning: ...

  6. 剖析 Kafka 消息丢失的原因

    目录 前言 一.生产者导致消息丢失的场景 场景1:消息体太大 解决方案 : 1.减少生产者发送消息体体积 2.调整参数max.request.size 场景2:异步发送机制 解决方案 : 1.使用带回 ...

  7. 天翼云centos7.6安装redis6.2.6

    以下部分的具体略: 1.wget获取源码 2.make 这里重点说下,如何使用 utils/install_server.sh脚本 使用install_service.sh添加服务 有了这个脚本,那么 ...

  8. 面试官:transient关键字修饰的变量当真不可序列化?我:烦请先生教我!

    一.写在开头 在这篇文章中记录一下之前自己面试时学到的东西,是关于transient关键字的,当时面试官问我IO的相关问题,基本上全答出来了,关于如何不序列化对象中某个字段时,我果断的选择了stati ...

  9. 格式化显示JSON数据

    测试JSON {"took":1,"timed_out":false,"_shards":{"total":1,&quo ...

  10. vscode 使用 python 进行 UG 二次开发 实现代码提示功能

    vscode 使用 python 进行 UG 二次开发的 实现代码提示功能 用 VSCODE 进行 UG 二次开发的时候, 想要用代码提示的时候,可以用 pydev 插件, 但是,pydev 只有一个 ...