无线遥控小车的设计与实现

2020-10-20 07:18孙恒谷君豪罗红梅刘亮孟德强
汽车实用技术 2020年15期

孙恒 谷君豪 罗红梅 刘亮 孟德强

摘 要:随着电子技术的发展,无线遥控小车得到日益广泛的推广和应用,在现代社会中发展了巨大的作用。文章设计了无线遥控小车的上位机系统与下位机系统。上位机系统用来发送控制指令,通过点击软件界面的虚拟按键,借助USB转NRF24L01模块发送相应的指令,而下位机系统以MK60FN1M0VLQ15单片机为核心单元,负责接收控制系统的动作指令,实现小车的运动以及自动避障功能。

关键词:无线遥控;NRF24L01模块;自动避障

中图分类号:U284.48+2  文献标识码:A  文章编号:1671-7988(2020)15-25-04

Abstract: With the development of electronic technology, wireless remote control cars have been increasingly promoted and applied, and have developed a huge role in modern society. This paper designs the upper computer system and the lower computer system of the wireless remote control car. The upper computer system is used to send control commands. By clicking the virtual buttons on the software interface, the corresponding commands are sent by means of the USB-to- NRF24L01 module. The lower computer system uses the MK60FN1M0VLQ15 microcomputer as the core unit and is responsible for receiving the control system's action commands to realize the movement of the car and automatic obstacle avoidance function.

Keywords: Wireless remote control; NRF24L01 module; Automatic obstacle avoidance

CLC NO.: U284.48+2  Document Code: A  Article ID: 1671-7988(2020)15-25-04

前言

随着无线通信技术和电子技术的发展,无线遥控小车在环境侦察、疫情监控等方面得到日益广泛的应用[1]。本文主要论述基于NRF24L01模块的无线遥控小车设计,包括上位机系统设计、硬件系统设计。上位机系统借助Visual Studio 2015实现虚拟按键设计,并通过USB转NRF24L01模块发送控制指令,硬件系统则负责响应相应的指令,从而实现对无线遥控小车运动的控制。

1 无线遥控小车系统的整体设计

本文所设计的遥控小车系统从整体上分为上位机系统和下位機系统。上位机从PC端发出控制信号,然后由USB转NRF24L01模块将控制信号发送出去,下位机系统以K60单片机作为下位机控制单元,根据上位机的指令控制I/O端口的输出电平,从而控制驱动小车的电机的转向和转速,或者控制负责小车前进方向控制的舵机打舵量,并可在紧急状况下实现自动避障。

上位机系统主要由控制软件和USB转NRF24L01模块组成,在控制软件界面中设计5个按键,分别用于控制小车的前后行进、左右转向与停止,鼠标点击不同的按键后就由USB转NRF24L01模块发送指令数据出去。

下位机系统主要由电源模块、K60单片机、NRF24L01模块、电机驱动模块、直流电机、舵机、超声波测距模块组成。电源模块将7.2V的电池电压分别调节成5V、6V和12V电压,然后分别提供给K60核心板、舵机和驱动芯片作为VCC信号。K60单片机作为下位机系统的控制单元,根据上位机发送的指令控制驱动小车的电机和决定小车前进方向的舵机,并能够接收超声波测距模块的回传信号,实时计算遥控小车当前情况下与障碍物的距离,在小车与障碍物之间的距离小于本系统设计的紧急避障阈值时,做出相应的响应自动控制舵机,使小车不至于因操作人员操作不当或注意力分散等意外情况下小车碰撞障碍物。NRF24L01模块作为无线通信的射频收发器件,可实现上位机与下位机之间的无线通信,从而实现对小车的遥控控制。直流电机的作用为驱动小车,在下位机通过I/O端口输出PWM信号[2]时可以实现前进、后退等各种动作。在本文的遥控小车的设计中,控制小车前进方向的舵机安装在遥控小车的前端,并通过舵机支架与舵机圆盘与小车的转向拉杆进行连接。超声波测距模块主要负责自动测量小车与障碍物之间的距离,单片机根据得到的距离信息决策是否需要紧急避障。

无线遥控小车的系统框图如图1所示。

2 系统硬件设计

2.1 单片机模块

本文设计的无线遥控小车的硬件控制单元采用K60核心板,该核心板将MK60FN1M0VLQ15单片机的引脚使用排针及插座全部引接出来,方便使用者与其他器件连接,省去焊接引脚的精力。该核心板的尺寸为40*32.5mm,JTAG接口为双排针标准插接件,该板子的额定工作电压为5V±5%,板子的主频晶振为50M,工作温度范围为-40℃-105℃。单片机模块原理图如图2所示。

2.2 NRF24L01模块

本无线遥控小车的设计采用NRF24L01模块,如图3所示。该模块是由NORDIC公司生产的一种用于无线通信的芯片,它工作在2.4-2.5GHz的ISM频段内,在芯片的内部有位于挪威的研发公司的自己的Enhanced short Burst协议,可以方便的实现一点对一点或者一点对多点的通信。

2.3 电机驱动模块

本设计的电机驱动芯片采用HIP4082芯片,通过H桥电路[3]和单片机输出的PWM信号实现对电机的控制,包括电机正转、反转、加速和减速。电机驱动模块的原理图如图4所示。

驱动电路有两个输入端和四个输出端,其中,PTC1和PTC2为控制信号输入端,AHO1、ALO1、BHO1、BLO1为信号输出端,用来控制电机的正反转和加减速。

2.4 电源模块

由于电机驱动模块需要12V电压,单片机模块需要5V电压,舵机则需要6V电压供,因此电源模块的设计要能够提供三种电压,来分别满足下位机系统主要模块的供电要求。

TPS7350芯片内部含有过热保护电路、电流限制电路、静态电流降低电路、电池反接和反插入保护电路,能够使电压稳定在5V,使得单片机稳定运行,因此本设计中选择TPS7350芯片将7.2V的电池电压降压为5V。考虑到电机可能需要提供一定的大电流,同时在静态的时候希望静态消耗小,因此选择MC34063芯片将电压升为12V。除此以外,本设计选择AS1015芯片将7.2V的电池电压降压为6V,相应的稳压电路原理图如下所示。

2.5 舵机模块

舵机与转向拉杆相连接,用于控制小车的前进方向,本设计采用了辉盛公司生产的SG-5010型号的舵机,如图8所示。

本无线遥控小车所选舵机有三根信号线,分别是VCC电源线,接6V电压,GND线,接地线,信号线,接单片机的PTD2端口。与驱动模块的控制方式类似,舵机也采用PWM信号控制。

2.6 超声波测距模块

由于操作人员存在操作失误或注意力分散等情况,小车在运行过程中存在碰撞风险。超声波测距模块可实时发出超声波,测量无线遥控小车与障碍物的距离,在小车与障碍物之间的距离小于碰撞阈值时,小车能够自动刹车,实现自动避障。在本设计中,采用HC-SR04超声波避障模块,如图9所示。

通过MK60FN1M0VLQ15单片机给予超声波测距模块的Trig端口10us高电平信号,作为测距触发信号,该模块在接收触发信号后,自动发射8个40KHz方波,并自动检测是否有信号返回。在信号返回时,通过超声波测距模块的Echo端口输出高电平,根据公式(1)即可计算此时无线遥控小车与障碍物的距离。

式中:l为无线遥控小车与障碍物的距离,单位为m;s为Echo端口高电平持续的时间,单位为s。

在本设计中,碰撞阈值设置为0.2m。

3 系统软件设计

3.1 控制软件界面及控制逻辑

控制软件使用Visual Studio 2015开发,在Visual Studio 2015建立基于对话框的项目,然后放置5个按键和其他控件,点击软件界面的按键则可发送相应的控制指令,如图10所示。

图11与图12所示的流程图展示了控制软件的控制逻辑,打开软件后,判断是否有按键被点击,如果没有按键被按下则继续检查有无按键按下。如果有按键被按下,将按键的ID放到NRF24L01模块的发送缓冲区中,通过该模块将控制指令发送到下位机。

4 结论

本文设计了一种新型的无线遥控小车,该系统借助集成开发环境Visual Studio 2015设计了控制软件,通过点击控制软件界面的按键,可向下位机发送控制指令,下位机可在20ms内对指令进行响应,控制无线遥控小车的前进、后退以及转向,还可在紧急情况下实现自动避障。经过多次实验,本文设计的无线遥控小车工作稳定可靠,为新型无线遥控小车的设计与实现提供了新的可借鉴方案。

参考文献

[1] 叶郑凯,朱建鸿,李琳,王幼琴.基于单片机的无线遥控智能小车的设计与实现[J].计算机与现代化,2012(10):65-67.

[2] 陈炜炜,詹跃东.基于单片机的直流电机PWM調速系统[J].化工自动化及仪表,2019,46(03):218-222.

[3] 戴贻康,焦运良,范晶.H桥式电路驱动无刷直流电机的设计[J].信息技术与网络安全,2019,38(08):58-63.