APP下载

基于多种传感器的双轮平衡车遥控系统设计

2022-11-03牛旭杨蕾李旭

现代信息科技 2022年17期
关键词:直流电机遥控指令

牛旭,杨蕾,李旭

(中原工学院 电子信息学院,河南 郑州 450007)

0 引 言

机器人技术兴起于20世纪60年代,随着电子技术的飞速发展,机器人技术也日趋成熟,并且给人们的生产和生活带来了深刻影响。移动机器人是机器人大家庭中重要的一员,按照移动方式可以分为足式移动机器人、履带式移动机器人、轮式移动机器人等类型。其中轮式移动机器人是应用最为广泛的一种机器人(两轮自平衡车就是轮式移动机器人的一种),它更加智能化,发展前景更为广阔。

现如今,新冠病毒依旧危害着全世界人民,虽然疫情得到了有效控制,但是医务人员因为种种原因还是要冒着很大的风险冲在疫情前线。这个时候就体现出平衡车的益处,它可以负载着药品将其直接送到新冠轻症患者手上,降低医护人员感染的概率。目前,以传统机动车为主的出行方式所带来的大气污染和交通拥堵等问题越发突出。短途出行的环境友好型替代品——双轮智能平衡车逐渐走入人们的视野,智能平衡车以其体积小、操作方便、环境友好等优点得以迅速普及,故此我们设计基于多传感器的双轮平衡车遥控系统,这样可使我们的平衡车更具实用性、独创性。在某些危机情况下,利用遥控系统控制平衡车,让它代替我们身处险境完成相关工作。

1 方案论证与设计

1.1 遥控系统设计原理

一个完整的无线遥控系统通常包括发射部分、接收部分和执行部分,三者缺一不可。发射部分包括操作杆(或指令键)、调制电路、指令编码电路、发射传感器和放大电路。遥控端发送指令,经由指令编码电路进行指令编码,使其在信道中传输,调制电路要将指令编码信号加载到高频载波上,由于信道传输中存在损耗,放大电路对调制信号进行功率放大,最后经由发射传感器实现指令信号的发送。接收部分包括接收传感器、放大电路、解调电路和指令译码电路。接收部分是发射部分的逆过程,实现指令的解读。执行部分一般为在驱动电路和各种执行电路接收到发射部分的正确指令后,驱动电路联结执行电路完成相应的操作。

1.2 设计原理与方法

本设计方案在遥控系统可行性的前提下进行探索,采用模块化的设计逻辑。本次设计中整体系统核心控制单元采用STM 单片机,拓展连接ESP8285Wi-Fi 模块和电机驱动模块TB6612FNG。ESP8285 模块与设备之间需要路由器作为连接中介,模块从路由器接入互联网,可对设备进行远程遥控,从而实现遥控端与单片机的关联,并且在整个操作过程中双轮平衡车始终保持平衡站立。通过遥控端发送指令,ESP8285Wi-Fi 模块在接收到指令后,进行解调、译码等处理,再通过内部路由器串口端将指令传递给单片机,利用直流驱动电机芯片TB6612FNG,联结直流电机驱动平衡车完成相应的指令操作,如实现驱动小车前进行驶、后退行驶和左右转弯等基础遥控功能,从而实现双轮平衡车遥控系统方案设计。

整体系统以差速驱动电路为主体,这部分主要由单片机拓展板、电机驱动模块、两个直流电机、A/D 转换以及定时计数器组成。PWM 调速系统主要提供两项功能:(1)完成整体系统的转向控制。(2)完成整体系统的转速控制,从而实现整体遥控系统的差速驱动。单片机通过PWM 技术对模拟输入信号进行数字编码(输入模拟电压值,输出的PWM 信号为数字信号),可以模拟产生路脉宽可调的电平信号,从而实现0~2占空比输入,并由直流电机驱动芯片对电机施加线性电压,实现电机转动。为电机驱动设置一个基准电平,在单片机输入电平信号后,通过二者的对比来控制电机的转向与转速,当输入电平为正且大于基准电平时电机加速,反之电机减速;当输入电平为负时电机反转。本设计方案采用差速驱动,平衡车双轮各安装一个直流电机,实现左、右轮的差速控制。利用左右车轮电机的转动方向和转速不同来完成不同的动作,车体的转弯就是依照此原理实现的。通过手机控制端发送控制指令,单片机分析处理后调用相关函数来实现前进、转弯、后退等任务。

2 原理分析与模块介绍

2.1 硬件设计方案

本方案主要元器件包括STM32 单片机、STM32F103C8T6核心板、电源模块、TB6612FNG 电机驱动模块、ESP8285Wi-Fi 模块、BT06 蓝牙模块、双轮平衡车。整体系统核心控制单元为STM 单片机,通过STM32 拓展板连接外设模块电路。直流电机驱动模块的核心为TB6612FNG 芯片,同时控制两路直流电机,实现差速驱动。ESP8285Wi-Fi 模块作为指令中转站连接遥控端和单片机,完成遥控系统设计。

电源和单片机开关开启后,ESP8285Wi-Fi 模块进入STA模式,通过遥控端发送指令,ESP8285Wi-Fi 模块在接收到指令后,进行解调、译码等处理,再通过内部路由器串口端将指令传递给单片机,利用TB6612FNG 电机驱动模块联结两个直流电机,实现差速驱动,完成相应的操作。硬件整体设计框图如图1所示。

图1 硬件整体设计框图

双轮平衡车是智能移动机器人系列的典型装置,其运作原理是通过检测平衡车倾斜角度和运行方向,提前调整两个直流电机的转向和转速,从而使双轮平衡车保持独立平衡状态。双轮平衡车独立平衡的实现有赖于比例和微分控制,而完成双轮平衡车行进方向及速度控制则是采用了比例和积分控制,正是基于三种控制算法的最终总叠加,才使双轮平衡车能保持独立平衡,整体系统始终处于一种动态的稳定之中。

2.2 相关模块介绍

该平衡车主要包括STM32 核心模块、直流电机驱动模块、Wi-Fi 模块和BT06 蓝牙模块。其中STM32 核心模块为核心控制模块,直流电机驱动模块驱动电机控制小车行动,Wi-Fi 模块主要用于实现远程控制,蓝牙模块用于实现串口与蓝牙设备之间的数据传输。对四个模块的介绍如下:

(1)STM32 核心模块。该模块是一款基于ARM Cortex-M 内核STM32 系列的32 位微控制器,程序存储器容量是64 KB,需要电压2 V~3.6 V。外围设备包括DMA、电机控制PWM、PWM、温度传感器。接口类型为CAN、

I2C、SPI、UART、USB。

(2)直流电机驱动模块。本方案选用TB6612FNG 驱动模块,TB6612FNG 驱动模块能够同时输出两路控制信号,对两个直流电机进行智能控制。该模块以连续电流的形式输出电流时,单通道最高可输出1.2 A,模块启动脉冲电流峰值在2.2 A~3 A 之间。具有反转、正转、加速、减速等4种电机控制模式,可通过调整输入脉冲信号的占空比来控制两路电机的转向及转速,从而达到差速驱动。

(3)Wi-Fi 模块。本方案使用ESP8285Wi-Fi 模块实现手机遥控端与单片机的连接,采用STA 模式可实现无限远的遥控距离。ESP8285Wi-Fi(UART—Wi-Fi 串口模块)专门为硬件联网设计,在Wi-Fi 与串口设备之间的数据交换中,不会发生数据的丢失和变化,输入即输出,并且符合无线网络标准。与同类产品相比,具有超低功耗和远距离传输等极具竞争力的优势。

(4)BT06 蓝牙模块。BT06 蓝牙模块专门为智能无线数据传输而打造,遵循V3.0 蓝牙规范。本模块支持UART接口,并支持SPP 蓝牙串口协议,具有成本低、体积小、功耗低、收发灵敏性高等优点,只需配备少许外围元件就能实现其强大功能。

2.3 软件设计与流程

软件设计的核心是双轮平衡车遥控状态下的差速驱动部分,包括前进行驶模块、后退行驶模块、左右转弯模块、电机停止模块,采用PWM 方式对直流电机进行控制(PWM调速相当于在一定周期内设置判决门限,确定脉冲占空比,从而达到对转速的控制)。

在操作过程中通过调整电机的转向和转速来实现前进行驶、后退行驶、左右转弯、停止等功能。当两个电机均为正转且速度一致时,平衡车表现为前进;当两个电机均为正转但左轮电机速度小于右轮电机速度时,平衡车表示为左转;当两个电机均为正转但左轮电机速度大于右轮电机速度时,平衡车表现为右转;当两个电机均为反转且速度一致时,平衡车表现为后退;当两个电机速度均为0 时,平衡车表现为停止。手机控制端发出相应指令后,平衡车会做出相应的动作。

在程序整体设计中,首先进行系统的初始化设置,其中包括各引脚配置、函数声明以及传输协议,然后进入循环结构,对小车的遥控控制进行了模块化处理。遥控系统体系设计流程图如图2所示,初始时平衡车为独立平衡站立状态,按遥控端开启遥控控制后,相当于单片机收到指令分析处理后进入中断程序,通过遥控端控制双轮平衡车动作。由于采用了模块化设计逻辑,并且STM 单片机使用的编程语言为C 语言,因此本次设计中Wi-Fi 模块和蓝牙模块电机驱动部分采用相同的中断程序。二者接口为同一位置,因此只能采用一种遥控方式,同时在遥控控制过程中调用平衡程序,保证平衡车在遥控控制过程中平衡运行。通过遥控端发送指令,Wi-Fi 模块(蓝牙模块)接收到指令后,进行解调、译码等处理,然后利用串口通信将处理过的指令信息传递给单片机,单片机分析处理后调用指令对应的库函数,驱动双轮平衡车执行相应的操作。

图2 遥控系统设计流程

3 系统测试

本方案基于双轮平衡车平台,连接ESP8285Wi-Fi 无线模块,实现真正意义上的物联网控制。在初次Wi-Fi 配置成功后,在后面遥控距离没有限制,只要是在有网络的地方即可遥控平衡车。以STM32 拓展板为核心控制单元的整体遥控系统如图3所示,实验环境为空旷无杂物的场地,该遥控系统基本能够实现设计任务指标。

图3 系统整体实物图

启动平衡车,使其保持整体直立5 s 左右,系统进行初始化。双轮平衡车调用平衡程序,保持平衡站立,Wi-Fi 无线模块上的蓝色指示灯常亮,表示模块进入待连接状态,手机遥控端连接无线模块发出的热点,输入对应的IP 和端口地址,指示灯闪亮,表示已连接。此时相当于中断进入遥控程序中,与此同时调用平衡程序,手机遥控端发出指令后,单片机调用相应的遥控程序模块,通过PWM 调速函数,实现左右电机的差速驱动,从而实现平衡车的遥控控制。蓝牙模块应用原理同上,把Wi-Fi 模块换成蓝牙模块,在系统启动后,基于手机配对通过蓝牙遥控平衡车,蓝牙遥控方式有三种,分别为按键遥控、重力遥控和摇杆遥控。蓝牙遥控内容包含前后左右行驶、旋转、PID 调试等。

4 结 论

本文设计一款基于多传感器的双轮平衡车遥控系统,多次的实验表明,在四周空旷无遮挡物的环境下,整体遥控系统可实现远距离遥控(ESP8285Wi-Fi 模块设置为STA模式,在STA 模式下可实现长距离遥控,遥控距离可达数千米之远)。在复杂的工作环境中,该系统可控制平衡车代替人类进行危险的工作,具有一定的应用推广价值和现实意义。

猜你喜欢

直流电机遥控指令
基于模糊自适应ADRC的无刷直流电机控制技术
一样,不一样
《单一形状固定循环指令G90车外圆仿真》教案设计
新机研制中总装装配指令策划研究
基于24V直流电机调速的应用
他是如何遥控引爆的
基于霍尔位置信号的无刷直流电机直接转矩控制
无人侦察遥控飞机
遥控赛车
遥控提琴