基于STM32的智能轮椅控制系统设计
2020-08-31彭天然张梅
彭天然 张梅
摘 要:为了更好地服务老年人和残障人士,文中设计一种基于STM32的智能轮椅控制系。该系统主要由主控芯片、传感器模块、人机交互模块、电机驱动模块、GPS模块、无线通信模块和报警模块等部分组成,实现轮椅的自动感知、可靠控制、无线通信、GPS定位等多种功能。实验结果表明,该系统具有功耗低、可靠性强、功能多等优点。
关键词:智能轮椅;STM32;控制系统;人机交互;无线通信;GPS
0 引 言
为了更好地服务老年人和残障人士,使其获得更好的帮助,尽可能地融入社会,最大程度地节约人工陪护成本,各国都致力于功能丰富的轮椅的研究。随着物联网技术的发展,轮椅越来越智能化、人性化。目前存在的智能轮椅是在电动轮椅的基础上,集合一些人工智能技术,使轮椅具备较好的自主性、适应性与交互性。
本文设计了一种基于STM32的智能轮椅控制系统。该系统以STM32为控制核心,其利用低功耗控制芯片、高精度传感器、GPS模块、超声波模块、无线通信模块,实现轮椅的自动感知、可靠控制、无线通信、GPS定位等多种功能。
1 系统结构
基于STM32的智能轮椅控制系统的结构如图1所示。
该系统主要由主控芯片、传感器模块、电机驱动模块、人机交互模块、GPS模块、无线通信模块、报警电路、电源电路、时钟电路、复位电路等部分组成。使用者通过按键可选择不同的人机交互模式,如操纵杆、按键或手机等;通过传感器模块中的角度传感器和次声波传感器采集轮椅自身和外部环境的信息,经主控芯片分析处理后,控制电机驱动模块使电机运行;系统内部设置自动避障算法,可进行自动避障;其GPS模块可以定位轮椅,通过无线通信模块将位置信息、轮椅信息发送给监护者,在轮椅发生跌倒时本地报警的同时还发送报警信号到监护者手机端。
2 硬件电路设计
系统的主控芯片选用意法半导体公司(ST公司)的STM32F103C8T6。该芯片具有较高的实时性、较低的功耗、丰富的片外扩展能力、强大的数据处理能力等。所有外围电路均与主控芯片相连,由主控芯片进行数据处理和控制。下面对部分硬件电路做介绍。
2.1 传感器模块电路
系统传感器模块主要有角度传感器、超声波传感器,用来感知智能轮椅的自身状态和外部的环境信息,来确定轮椅自身的位姿信息、周围环境和障碍物的距离信息等。
角度传感器选用MPU-6050角度传感器,其与主控芯片的连接电路如图2所示。
MPU-6050角度传感器通过I2C接口与STM32F103C8T6相连接,通过I2C串口通信实现角度信息的传送。
超声波传感器采用HC-SR04超声波传感器,来获得轮椅与物体的距离信息。这里设计了3路超声波传感器,分别安装在轮椅的前方、左侧和右侧,同时采集这3个方向的距离信息,通过避障算法控制后达到较好的避障效果,超声波传感器与主控芯片的连接电路如图3所示。
图3中的3个HC-SR04超声波传感器分别与STM32 F103C8T6的PC0~PC5等6个GPIO口相连,STM32 F103C8T6通过控制这些通信接口进行信息的交互。
2.2 电机驱动电路
智能轮椅采用后轮驱动的方式,每一个后轮配置一个电动机,这里采用双H桥直流电机口驱动器L298N来驱动轮椅的左、右轮电机,实现电动轮椅的前进、后退和转向,其驱动电路如图4所示。
STM32F103C8T6通过光电隔离电路TLP521-4与电机驱动芯片L298N芯片相连。TLP521-4内部包含了4组光电耦合管,可以将负载电路与控制信号完全隔离,可以增强抗干扰能力提高电机驱动的可靠性。STM32F103C8T6通过控制ENA和ENB使L298N使能,通过控制IN1~IN4引脚的电平高低即可控制电机的正转和反转,OUT1~OUT4为控制信号输出引脚,该引脚通过整流电路直接与电机相连进而控制电机的旋转状态。
2.3 人机交互模块
人机交互接口要求操作简单、便捷、合理,本系统的人机交互模块组成如图5所示。
本系统的人机交互模块由手机端、操控杆和触摸屏3个部分组成。手机端通过WiFi信号与轮椅相连,来设置相关参数、查看轮椅相关信息,同时也可操控轮椅。操控杆的控制方式为电磁感应式,控制轮椅的运动方向,同时在操控杆的手柄上增加一些独立的功能按键,这里设置5个按键,分别是紧急停止、加速、减速、鸣笛、控制模式选择按键。触摸屏采用电容屏,可以实现轮椅的运动控制、参数设置、参数显示等功能。
2.4 无线通信模块与报警电路
本系统的无线通信模块利用GPRS芯片SIM300通过手机短信的形式把輪椅位置、报警信息发送给指定人员,发生倾倒时本地报警,达到远程监护的目的,其电路如图6所示。
STM32F103C8T6的PB110和PB11引脚与SIM300的RXD和TXD相连,通过串口通信发送AT指令即可实现对SIM300模块控制。同时在SIM300模块的外围扩展模块上设计蜂鸣器电路,当轮椅发生倾倒可以实现本地声音报警。
3 软件设计
根据智能轮椅设计的运行情况,系统的主程序流程如图7所示。系统的主程序是整个智能轮椅软件编写的整体框架,也是系统整个运行程序依据。系统主要完成硬件初始化、循环接收轮椅控制命令、控制电机运行等功能。
4 结 语
本文设计了一种基于STM32的智能轮椅控制系统,并给出了系统的总体结构、部分硬件电路和软件流程。该系统选择STM32F103C8T6作为主控芯片,采用模块化、系统化的设计思想进行设计,传感器模块、人机交互模块、电机驱动模块、GPS模块、无线通信模块、报警模块共同作用,相互协调,构成了一个安全可靠的智能轮椅控制系统。
参考文献
[1]高强.面向老人的智能轮椅研究[D].苏州:苏州大学,2015.
[2]郝付英.智能轮椅控制系统研究与设计[D].济南:山东大学,2012.
[3]朱亚坤,姚立纲,徐业良,等.基于物联网的电动轮椅控制系统研究[J].机械制造与自动化,2019,48(2):164-168.
[4]滕兴旺,从兰美,邱建龙,等.基于单片机的智能轮椅控制系统设计[J].南京信息工程大学学报(自然科学版),2019,11(4):495-498.
[5]麻文刚,王小鹏,马鹏.基于GMR传感器校正的智能轮椅控制系统设计[J].传感器与微系统,2018,37(1):117-119.
[6]石学文,杜勇,秦川,等.基于无线通信的电动轮椅控制系统的研究与设计[J].电子技术,2018,47(8):90-92.
[7]李瑛达,周海波,杨易青.脑波控制的智能医疗轮椅系统[J].物联网技术,2019,9(5):63-66.
[8]ZHAO Cong,WANG Zhengxing,JIANG Shihong,et al. The design of wheelchair lifting mechanism and control system [J].Computer aided drafting,design and manufacturing,2014,24(2): 43-47.
[9]陈真诚,庞雪燕,孙统雷,等.脑控智能轮椅控制系统[J].电子技术应用,2014,40(9):126-129.
[10]罗元,杨杨,张毅,等.智能轮椅嵌入式手势控制系统设计与实现[J].中南大学学报(自然科学版),2013,44(z2):68-72.