群体智能机器人是一种国际前沿的人工智能研究项目,由多个小型机器人组成的集群式解决系统,灵感源于蚂蚁、蜜蜂、鱼等群体生物,在没有统一领导的情况下,也能合作执行大量复杂的任务,比如组建一个图形,再在此基础上一步叠加复杂的任务,最终实现整个人工智能的突破,无限接近、甚至超越人类。群体智能机器人的运用前景非常广泛,包括智慧城市、智慧医疗、智能制造等方面,甚至在军事战略中也发挥巨大作用。
高频定位系统通过采用E-puck2.0桌面型群体智能机器人,在小型实验场地内通过高频光电投影定位技术实现机器人位置感知和数据通讯,实现“多智能体自主协同-群体智能”的研究目标。该套系统能够为项目研究算法提供较为充足的研究条件及软、硬件环境支撑,可以实现涵盖单体智能控制、多体协同控制、网络通讯、协同算法等领域的相关技术内容,以及验证多智能体协同系统控制理论和关键技术解决方案,为现实生活中大规模活动与个体之间关系提供实验模型和理论验证。
系统支持多研究方向
在动态不可预测多智能体环境中,重点可以研究以下课题:
智能机器人自主感知、组网算法、多机器人目标协同定位算法、多机器人自主动态决策与路径规划算法、多机器人区域覆盖算法、智能蚁群算法、粒子群算法、蚁群优化算法、蚁群聚类算法、单片机微机原理和编程语言、信号调理电路和控制电路、各种通信协议和通信方式、电机和传感器等硬件资源的应用
拓展应用:
科学研究、群体智能算法、多机器人智能协同、智能群体模拟演练、消防演练(地震、火灾、逃生、救灾)、人员自然流动(疫情传播模拟) 、体育运动模拟(接力赛、足球赛:基于跟随)、智能交通、物流分配模拟、模拟建模、自然群体(蚁群,鱼群,鸟群,细菌)、分子扩散(有害气体模型)、消息传播模型、游戏娱乐、迷宫地图、棋子类游戏(跳棋等)。
系统架构与功能
本系统分为E-puck2.0机器人系统、高频投影定位系统、无线通讯控制系统、群体智能决策软件系统四大部分。机器人是实验控制对象,是算法实现的载体;高频投影仪系统是机器人位置感知与定位的主要系统,通过高频光谱采集机器人位置、朝向、速度等数据信息;无线通讯控制系统负责上位机和机器人之间的通讯,连接数据的采集和数据的发送,使整个系统成为一个闭环。群体智能决策软件系统相当于整个系统的大脑,综合收集到的信息控制机器人之间的运动关系,经过决策后发出机器人执行的指令。
 
E-puck2.0嵌入式机器人系统
E-puck2.0为高端桌面型嵌入式机器人,可以在有限的空间内融入大数量的智能机器人进行群体协作实验,凭着其在任务适用性、经济性、稳定性、可拓展性、软件开放性强等有极大的优越性,可在已知环境下的任务动态分配和再分配研究,任务预测与任务分解研究,以及异构大规模系统和复杂任务分配研究等具有巨大优势。E-PUCK 2虽然体积小,但配有多种先进的传感器,例如:彩色摄像头、WiFi、蓝牙、红外传感器、USB数据口、IMU、麦克风、扬声器、LED灯等,内置标准的Linux运行系统,提供标准C/C++语言开发环境。
 
 
高频投影定位系统
高频投影仪系统包含两个子系统,光引擎系统和驱动系统,以及散热器和风扇等设备。高频投影仪系统可用于三维重建、三维测量、平面定位等。三维重建和测量主要是通过高频投影仪将结构光投影至被测物体上,并通过摄像机进行拍摄,并根据三维坐标和二维坐标的转换得到其深度。平面定位是一套定位毫米级的定位系统。
 
 
无线通讯控制系统
群体智能无线通讯控制系统含单体智能无线接收模块和USB中继接收模块,具有多点通信、调频通信、功耗低等诸多优点。
单体智能无线接收模块是自主定位和通信组网模块,通过串口通讯加装在ROBO-MAS微型移动机器人上,来实现微型机器人的定位和通信组网。它内含光电接收传感器、STM32F0C8T6处理器、NRF24L01+通信芯片、板载2.4GHZ天线、电源管理芯片等。
USB中继接收模块是一款通信中间件模块,它与PC端采用USB接口连接方式,PC端软件通过该模块能够查询或设置ROBO-MAS机器人,中继接收模块能够实时管理查询多个微型移动机器人。
群体智能决策软件系统
群体智能决策软件系统是多智能体自主协作仿真以及实物验证的软件平台系统,用于多机器人群体行为决策的仿真、机器人路径规划、机器人状态显示等,实现对多个微型移动机器人间通讯管理和信息交互。
群体智能决策软件系统分为应用层、仿真层、服务层、通信层四部分。应用层提供二种协作案例(图形模式、手绘模式)和底层二次开发模式,仿真层含机器人节点的新增、删除,机器人的路径规划,机器人目标点设置等。服务层包含软件系统获取机器人本体的位置和状态。通讯层包含软件系统与中继接收模块之间的通信。
实验场景
为方便用户快速熟悉群体智能协作平台,直观展示群体智能的运用与开发内容,我们提供两种协作模式,以及复杂算法的二次开发底层代码:
1、图形模式:在上位机软件上选择如圆形、五角星形、正方形、数字等图形,机器人自动根据配置数量排列出对应形状
2、手绘模式:在上位机显示的窗口内画图或写字,系统会自动分析、识别图形,根据机器人的数量自动排列出对应图案
3、二次开发:提供底层通讯协议和API接口,以及相关demo。
(1)提供机器人端与群体智能协作系统的通信协议。
(2)提供机器人模块目标速度控制接口
(3)提供机器人模块目标角度控制接口
(4)提供机器人单体避障算法与demo
(5)提供机器人群体队列保持算法demo
(6)提供机器人跟随算法demo
(7)提供高频定位系统平面坐标输出接口demo
(8)图形模式算法demo(自主路径规划)
(9)画图模式算法demo(自主路径规划)
(10)实时手势控制算法demo。
(11)环境感知:协同感知算法demo
视频观看:https://www.bilibili.com/video/BV1Cv411y7uL
 
 
实验室效果图

基于E-PUCK 2.0多智能体自主协同 高频投影定位系统的更多相关文章

  1. 基于ROBO-MAS多智能体自主协同 高频投影定位系统

  2. 伯克利推出「看视频学动作」的AI智能体

    伯克利曾经提出 DeepMimic框架,让智能体模仿参考动作片段来学习高难度技能.但这些参考片段都是经过动作捕捉合成的高度结构化数据,数据本身的获取需要很高的成本.而近日,他们又更进一步,提出了可以直 ...

  3. TensorFlow利用A3C算法训练智能体玩CartPole游戏

    本教程讲解如何使用深度强化学习训练一个可以在 CartPole 游戏中获胜的模型.研究人员使用 tf.keras.OpenAI 训练了一个使用「异步优势动作评价」(Asynchronous Advan ...

  4. DRL 教程 | 如何保持运动小车上的旗杆屹立不倒?TensorFlow利用A3C算法训练智能体玩CartPole游戏

    本教程讲解如何使用深度强化学习训练一个可以在 CartPole 游戏中获胜的模型.研究人员使用 tf.keras.OpenAI 训练了一个使用「异步优势动作评价」(Asynchronous Advan ...

  5. STM32W108无线传感器网络节点自组织与移动智能体导航技术

    使用STM32W108无线开发板及节点完毕大规模网络的自组建,网络模型选择树型,网络组建完毕之后,使用基于接收信号强度指示RSSI(ReceivedSignal Strength Indication ...

  6. NVIDIA DeepStream 5.0构建智能视频分析应用程序

    NVIDIA DeepStream 5.0构建智能视频分析应用程序 无论是要平衡产品分配和优化流量的仓库,工厂流水线检查还是医院管理,要确保员工和护理人员在照顾病人的同时使用个人保护设备(PPE),就 ...

  7. 基于STM32+华为云IOT设计智能称重系统

    摘要:选择部署多个重量传感器和必要的算法.通过WiFi 通信模块.GPS定位模块,采集车辆称重数据一地理位置信息,并通过网络发送至云平台,设计图形化UI界面展示称重.地图位置等重要信息,实现对称重系统 ...

  8. 基于Visual C++6.0的DLL编程实现

    整理自基于Visual C++6.0的DLL编程实现 本文通过通俗易懂的方式,全面介绍了动态链接库的概念.动态链接库的创建和动态链接库的链接,并给出个简单明了的例子,相信读者看了本文后,能够创建自己的 ...

  9. iKcamp出品|微信小程序|工具安装+目录说明|基于最新版1.0开发者工具初中级教程分享

    iKcamp官网:http://www.ikcamp.com 访问官网更快阅读全部免费分享课程:<iKcamp出品|全网最新|微信小程序|基于最新版1.0开发者工具之初中级培训教程分享>. ...

随机推荐

  1. springmvc<一> 一些特殊的Bean

    Special Bean Types        HandlerMapping 基于前置或后置拦截器映射请求到处理器,具体实现方式由子类决定,        两种主要的实现             ...

  2. PyQt+moviepy音视频剪辑实战1:多个音视频合成顺序播放或同屏播放的视频文件实现详解

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt+moviepy音视频剪辑实战 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一. ...

  3. Oracle函数使用1

    一.字符串处理函数 1.ascii(x):返回字符的ASCII. SQL语句:select ascii('a') from dual; dual:空表,每创建一个用户都会生成这样一个dual表,表中只 ...

  4. HTML5中的自定义属性data-*

    在html5中,给元素添加自定义属性需要用到data-*,比如data-name,添加完data-自定义属性之后通过元素的dataset属性来访问其值. dataset与getAttribute/se ...

  5. 题解-CF101D Castle

    题面 CF101D Castle 给一棵 \(n\) 个节点的带权树,求一种遍历方案,从 \(1\) 出发,每条边走两次,走过所有点,第一次经过每个节点的平均时间最小.输出这个平均时间. 数据范围:\ ...

  6. 3款pdf插件介绍

    1.pdf.js:推荐使用.小窗口可以使用iframe来解决.ie8及以下不支持,但是360的兼容模式ie8下可以在新标签页中打开,在iframe中打不开,ie8中在新标签页也不支持打开.可使用ua- ...

  7. Day5 - 04 函数的参数-可变参数*

    传入的参数的个数是可变的. 例子:定义一个函数,通过给出一组数,返回这组数中最大值与最小值的和.    def msum(numbers):        r = max(numbers) + min ...

  8. pandas 学习 第14篇:索引和选择数据

    数据框和序列结构中都有轴标签,轴标签的信息存储在Index对象中,轴标签的最重要的作用是: 唯一标识数据,用于定位数据 用于数据对齐 获取和设置数据集的子集. 本文重点关注如何对序列(Series)和 ...

  9. [日常摸鱼]JSOI2008最大数

    校运会的时候随手抽的题- 一句话题意 维护一个序列,初始为空,要求滋兹: 1.查询这个序列末尾$x$个数的最大值 2.设上一次查询的答案为$t$(如果还没查询$t=0$),在末尾插入一个数$(x+t) ...

  10. App性能测试揭秘(Android篇)

    阿里云 云原生应用研发平台EMAS 李嘉华(千瞬) 简介: 性能测试在移动测试领域一直是一个大难题,它最直观的表现是用户在前台使用 App 时的主观体验,然而决定体验优劣的背后,涉及到了许许多多的技术 ...