近程遥控与远程路径规划智能巡航小车设计毕业论文
2021-11-06 20:04:51
摘 要
针对目前轮式移动机器人操作模式单一、远近范围不能同时控制的问题,本文旨在开发一种控制模式多元,可以在近程、远程多种距离范围内对小车进行无线控制,更加具有稳定性、可控制性、扩展性的智能小车。本文运用嵌入式开发和无线通信的相关理论与技术,进行设备的组装与程序的编写。
1.设计了在近程模式下,使用PS2游戏手柄对小车进行无线操控,同时对智能小车进行躲避障碍、巡线运动等控制操作的算法,并进行了运动操控。
2.设计了使用GPRS无线通信模块在远程范围内对智能小车进行远程操控,并与与服务器连接接入Internet,完成指令通讯的功能,并进行了环境测试。
3.利用单片机伪多线程技术与并发执行机制,设计了近远程控制模式切换及不同功能之间的并发执行的算法,验证了算法的有效性。
经过测试,本文利用PS2手柄通信实现的智能小车近程通信可实时、稳定的对小车进行操控,而GPRS实现的远程通信方式可远距离、低延迟的与小车进行指令通讯,同时近程、远程切换算法可实现当超出手柄控制距离的情况下由近程控制向远程控制切换,有效地实现了近远程控制模式的快速切换。
本文验证了近程到远程控制模式快速转换的可行性,同时证明了单片机伪多线程技术可以有效的提高操作的效率,为无人驾驶及远程操控提供了新的思路与方法。
关键词:Arduino;智能小车;PS2手柄;GPRS;伪多线程;快速转换
Abstract
In view of the single operation mode of the current wheeled mobile robot and the problem that the near and far range can not be controlled at the same time, this paper aims to develop a kind of smart car with multiple control modes, which can control the car wirelessly in the short and long range, and has more stability, controllability and expansibility. In this paper, the theory and technology of embedded development and wireless communication are used to assemble the device and write the program.
Firstly, the algorithm of wireless control of the car using PS2 Controller in the short-range mode is designed, and the algorithm of avoiding obstacles, line patrol motion and other control operations for the smart car is also designed.
Secondly, the GPRS wireless communication module is designed to control the smart car in a remote range, connect with the server and connect to the Internet to complete the command communication function, and carry out the environmental test.
Thirdly, by using the pseudo-threads technology and concurrent execution mechanism of single chip microcomputer, the algorithm of near remote control mode switching and concurrent execution between different functions is designed, which verifies the effectiveness of the algorithm.
After testing, the short-range communication of the smart car realized by PS2 Controller communication can control the car in real time and stably, while the remote communication mode realized by GPRS can communicate with the car in a long distance and with low delay. At the same time, the short-range and remote switching algorithm can realize the switching from short-range control to remote control when the distance is beyond the control distance of the PS2 Controller Fast switching of near remote control mode.
In this paper, the feasibility of fast conversion from short-range control mode to remote control mode is verified. At the same time, it is proved that the pseudo-threads technology of single-chip microcomputer can effectively improve the efficiency of operation and provide new ideas and methods for unmanned driving and remote control.
Key Words: Arduino;Smart car;PS2 Controller;GPRS;Pseudo-threads;Fast switching
目 录
第1章 绪论 1
1.1 研究目的和意义 1
1.2 国内外研究现状 2
1.3 研究内容 3
1.4 论文的组织结构 4
1.5 小结 5
第2章 智能小车整体系统设计 6
2.1 技术方案 6
2.1.1 智能小车主控制核心方案 7
2.1.2 智能小车规避路障、自动巡线方案选择 8
2.1.3 智能小车近程控制方案选择 8
2.1.4 智能小车远程无线通信方案选择 9
2.2 硬件设计 9
2.3 软件设计 11
2.4 小结 12
第3章 智能小车近程模式设计 13
3.1 智能小车PS2通信模块开发 13
3.1.1 硬件原理 13
3.1.2 智能小车手柄控制程序设计 15
3.2智能小车避障模块开发 17
3.2.1 硬件原理 17
3.2.2 测距避障程序设计 18
3.3智能小车循迹模块开发 19
3.3.1 硬件原理 19
3.3.2 循迹程序设计 21
3.4 小结 23
第4章 智能小车远程模式开发 24
4.1 GPRS远程通信程序设计 24
4.1.1 硬件原理 24
4.1.2 GPRS远程通信算法设计 25
4.2 远程连接服务器 26
4.2.1 机智云服务配置 26
4.3 小结 31
第5章 近、远程切换技术实现 33
5.1 实现原理 33
5.1.1 程序逻辑 33
5.1.2 系统测试 35
5.2 开发技术 37
5.2.1 伪多线程技术应用 37
5.2.2 安卓控制平台的开发 39
5.3 小结 41
第6章 结论与展望 42
6.1 结论 42
6.2 展望 42
参考文献 43
致谢 45
第1章 绪论
1.1 研究目的和意义
在不同距离内实现对智能小车进行灵活的操控是进行智能小车功能开发的基础[1],目前流行的智能小车操控方法主要是使用WIFI/蓝牙为通讯手段,搭配手机安卓应用程序在近距离范围内进行小车的遥控操作[2],就目前智能小车的操控方式来看,其主要使用的无线通信技术一种是蓝牙(Bluetooth)无线通讯标准,另一种就是4G时代的典型技术——WiFi,这也就导致了智能小车的先天不足:受限于无线设备指标及功耗,无法采用同样的方式进行远程的控制;而使用GPRS通过数据流量传输控制指令的方式虽然可以实现远程控制,受限于数据流量资费价格,在中近距离上长时间使用这种方式显然会增加使用成本,同时,面对室内信号较弱,传输延迟高的情况,使用GPRS数据流量通信很明显不及前一种通信方式。由此可见,仅使用单一的传输模式无法保持控制距离与成本的平衡。
为了寻找智能小车在控制距离与传输成本之间的最优解,提升智能小车的性价比,实现对智能小车在近端及远端统一操作、根据当前环境切换为最合适的操作方式,本毕业设计拟使用四轮滑动转向(差速驱动)轮式机器人为硬件开发平台,arduino系列单片机提供程序运算核心,arduino IDE为开发平台,在近程情况下使用PS2手柄无线遥控小车进行运动及避障、在远程情况下利用GPRS通讯设备搭配云平台服务器传输控制指令,并使用迪杰斯特拉算法实现路径规划,实现智能小车在近端与远端任意范围内的统一操作与随意切换。