分别将三个机器人放置在较远位置进行聚集实验。通过多次随机放置实验证明三个机器人的放置位置不会影响聚集是否成功,只会对三个机器人聚集花费的时间和路径有影响。
摘要:本课题主要研究基于ARM的多机器人协作系统的硬件部分,主要包括单个机器人的定位与制导问题以及多个机器人之间的通信问题。随着工作环境、工作任务以及工作要求的复杂化,在处理实际问题中,多个机器人的协作行动往往相比单个机器人独自行动具有更高的效率、更强的冗余性。系统中的机器人通过将自身的位置、方向以及运动姿态等信息通过Wi-Fi通信传输给其他机器人,单个机器人通过对以上数据进行分析处理,并根据自身的情况采取相应的行动达到聚集等基本任务。在本课题中,使用基于ARM Cortex-M3的STM32为控制器的智能车为基本单位,Wi-Fi通信功能通过ATK-ESP8266 Wi-Fi模块实现,定位通过ATK-S1216-BD GPS/北斗定位模块实现,运动姿态感知由基于MPU6050的JY61模块实现。最终通过系统的协调作用,多个机器人可以顺利地完成聚集等动作。
关键字:多机器人;群体智能;GPS;INS;Wi-Fi
Multi-robot cooperation based on ARM and swarm intelligence (hardware part)
Abstract: This topic mainly studies the hardware part of the multi-robot cooperative system based on ARM, mainly including the positioning and guidance of a single robot and the communication problems between multiple robots. With the complexity of work environment, work task and work requirement, the cooperative action of multiple robots is often more efficient and more redundant than a single robot in dealing with practical problems. The robot in the system is transmitted to other robots through Wi-Fi communication through the information of its position, direction and motion attitude. The single robot can analyze the above data and take corresponding action according to its own situation to achieve the basic task of aggregation. In the subject, the intelligent vehicle based on STM32 based on ARM Cortex-M3 is used as the basic unit. The Wi-Fi communication function is realized through the ATK-ESP8266 Wi-Fi module, and the positioning module is realized through the ATK-S1216-BD GPS/Beidou positioning module. The movement attitude perception is realized by the JY61 module based on MPU6050. Finally, through the coordination of the system, multiple robots can successfully complete aggregation and other action.
Keywords: multi-robot; swarm intelligent; GPS; INS Wi-Fi
目录
摘要 i
Abstract i
目 录 iii
1. 绪论 1
1.1 本课题的研究背景和意义 1
1.2 国内外发展现状 1
1.3 发展趋势 2
2. 机器人主体配置 4
2.1 模块选用 4
2.2 STM32微控制器 5
2.3 USART串口通信 5
2.3.1 USART简介 5
2.3.2 USART串口初始化 5
2.4 STM32单片机中断系统 7
2.5 伺服电机控制 7
2.5.1 伺服电机介绍 7
2.5.2 控制方案 7
2.5.3 伺服电机控制程序 8
2.6 电源系统 9
2.7 机器人硬件连接 10
3. 通信模块配置 11
3.1 基本参数 11
3.2 具体使用 11
3.2.1 模块引脚说明 11
3.2.2 功能说明 12
3.2.3 指令结构 12
3.3 模块配置 13
3.3.1 设置模块Wi-Fi应用模式 13
3.3.2 设置模块的IP地址 13
3.3.3 设置AP模式下的参数 14
3.3.4 加入AP 15
3.3.5 启动多连接 15
3.3.6 配置为服务器 16
3.3.7 发送数据 16
3.4 通信初始化 17
3.4.1 作为AP的Wi-Fi模块初始化 17
3.4.2 作为STA的Wi-Fi模块初始化 18
4. 定位模块配置 19
4.1 基本参数 19
4.2 具体使用 19
4.2.1 模块引脚说明 19
4.3 模块数据获取 20
4.4 定位精度计算 24
4.5 定位模块初始化 25
5. 惯性制导模块配置 26
5.1 基本参数 26
5.2 具体使用 26
5.2.1 模块引脚说明 26
5.2.2 轴向说明 27
5.2.3 安装方向 28
5.3 模块配置 28
5.3.1 模块校准 29
5.3.2 数据获取 30
5.4 惯性制导模块初始化 31