无人智能小车导盲系统的设计与实现

2021-10-23 04:06陈晓陈志杰杜灿谊吴劲龚永康
新型工业化 2021年7期
关键词:导盲下位蓝牙

陈晓,陈志杰,杜灿谊,吴劲,龚永康

(广东技术师范大学汽车与交通工程学院,广东 广州 510665)

0 引言

目前,我国存在视力障碍的人数位列世界前茅,政府关爱视力障碍人群,设置了全世界长度最长、分布最广的盲道,但日常生活中我们却很少看到他们走在盲道上。原因在于行人道上,到处有横跨盲道的电线杆、斜拉线、广告牌、共享单车等,这些无疑成为了盲人的“无影杀手”[1-2],大部分盲人依靠盲杖根本不敢走出家门,盲人出行安全一直是社会难以解决的问题。

针对以上问题,笔者设计了一种无人智能小车导盲系统。本系统以STM32单片机为主控核心,运用智能小车、定位模块、光电对管模块、蓝牙通信模块等相关模块,结合App Inventor软件、高德地图开放平台等,借助盲人手中的智能导盲APP,通过双声道耳机的语音播报来引导盲人走向目的地。该系统为盲人提供一种出行辅助设备,从而提高出行安全性,具有一定的现实意义。

1 无人智能小车导盲系统总体设计

本系统主要包括五大板块,分别为定位板块、避障板块、方向角板块、蓝牙通讯板块、人机交互板块。定位模块可定位小车的位置,方向角板块可计算出小车当前的朝向,这些数据通过蓝牙通讯传输至导盲App,App端通过高德地图API组件实现目的地路径的自主规划。系统对实时性要求比较高,因此,本设计选择处理速度快的STM 32F103作为主控芯片。其他外设主要为光电对管模块、L298N电机驱动等。人机交互中的语音板块使用百度大脑AI开放平台,使用者唤醒手机App,通过语音输入目的地地址,App便可精准识别并播报。高德地图API根据语音输入的目的地内容,实现路径的自主规划。使用者根据语音提示可跟踪小车行走,最终到达目的地。整体设计原理框图如图1。

图1 系统整体设计原理框图

2 无人智能小车导盲系统硬件设计

导盲系统硬件部分主要包括供电部分、无线通讯部分、驱动部分和外设部分。供电部分为其他三大部分提供电源,无线通讯部分负责小车与手机App之间,即下位机与上位机之间的连接。驱动部分将利用11.1V锂离子电池提供的电源驱动两个直流减速电机工作,达到行驶目的。外设主要包括用于定位的GPS-BDS双模模块、电子指南针模块以及用于避障的光电对管模块。硬件设计框图如图2。

图2 硬件设计框图

2.1 供电硬件设计

在本系统中,供电电源采用DC-11.1V锂离子聚合物电池,该电源通过LM 2596S DC-DC可调降压芯片将11.1V电压转换成适合STM 32F103主板使用的5V电压。STM 32F103主板上设有5V电压接口,可给众多外设供电,包括供给GY-26电子指南针、光电开关E18-D80NK、GPS-BDS双模定位模块、HC-05蓝牙模块。

2.2 无线通讯设计

导盲系统无线通讯部分使用蓝牙模块HC-05进行上位机与下位机之间的数据传递[3]。此设计中用到HC-05四个引脚,分别为电源正极引脚VCC、电源线负极引脚GND、信号发送引脚TX,信号接收引脚RX。

2.3 电机驱动设计

直接用STM 32F103上的电源给直流减速电机供电不足以驱动电机工作。因此,在本设计中使用L298N模块驱动两个直流减速电机[4]。L298N驱动能力强、发热量低、抗干扰能力强,使用大容量滤波电容和续流保护二极管,可以提高设备可靠性。

2.4 外设设计

(1)主控芯片。导盲设备的外设都挂载在主控芯片上,本设计选用STM 32F103RCT6作为主控芯片,该芯片体积小、功耗低,广泛应用于智能设备、自动化控制、安全检视等,非常适合作为本设计的主控芯片。(2)光电开关。光电开关在本设计中的作用为实现避障[5]。智能小车在行驶过程中,不可避免会遇到各种障碍物,光电开关可以即时检测到障碍物,系统依据写好的避障程序,让小车即时完成避障反应,防止碰撞。本设计选用型号为E18-D80NK的光电传感器,这是一种集发射与接收于一体的光电传感器。该传感器检测距离可调节,具有探测距离远、受可见光干扰小等特点。(3)指南针模块。GY-26是一款低成本平面数字罗盘模块。此罗盘以RS232协议及IIC协议与其他设备通信。该产品精度高,稳定性高,并具有重新标定的功能,能够在任意位置得到准确的方位角。其输出的波特率是9600bps,数据以询问方式输出,具有硬铁校准功能和磁偏角补偿功能,适应不同的工作环境。(4)双模定位模块。GPS-BDS双模定位模块采用的芯片为ATGM 336H-5N。ATGM 336H-5N系列模块是高性能BDS/GNSS全星座定位导航模块系列的总称。ATGM 336H-5N系列芯片具有高灵敏度、低功耗、低成本等优势,适用于车载导航、手持定位、可穿戴设备。因此,本设计选用该型号芯片,主要功能是给智能小车定位,获取经纬度信息后经过主控芯片的数据解析将信息反馈给手机App端,并在手机App的地图中进行定位[6-7]。

3 无人智能小车导盲系统软件设计

软件部分的设计分为下位机设计和上位机设计两部分。下位机部分为智能小车的软件设计,上位机部分为智能导盲App的设计。下位机中,实现障碍物的躲避、GPS的定位、电子罗盘方向角的识别、电机的运动等功能。其程序使用MDK5软件编写,编程语言为C语言;上位机中,实现语音的识别、目的地路径的自主规划、语音播报、小车位置显示等功能,使用软件为App Inventor,采用图形化编程的方式。

3.1 下位机程序设计

下位机程序采用模块化程序设计的方式,将一个大程序按照功能划分为若干小程序模块,每个模块完成一个确定的功能,并在这些功能模块之间建立必要的联系,通过模块的互相协作最终完成整个功能的程序设计。在下位机设计当中,主要应用到两个编程软件,分别为STM 32CubeMX和MDK5。下位机程序设计思路如图3。

图3 下位机程序设计思路

3.2 上位机程序设计

上位机程序设计内容为制作一款智能导盲App,其功能有蓝牙通讯、定位、坐标转换、路径规划、定位方向角、语音播报等。手机App端能够通过蓝牙通讯获得小车所在位置的经度和纬度、小车当前的方向角、小车方向角与手机方向角的偏差并将这些信息显示在手机用户界面上。App具备语音唤醒、语音提示、语音播报等功能,方便对该系统的操作。同时设置手动控制智能小车功能,例如出发、停止指令[8]。App整体逻辑关系见图4。

图4 App逻辑关系示意图

4 无人智能小车导盲系统实车测试

开启电源,小车进入初始化状态,等待GPS获得位置信息并识别小车的方向角,打开导盲系统软件App,蓝牙自动实现小车与App匹配通讯。手机App上显示和播报小车方向角、小车经度、小车纬度、方向角偏差等信息。按住语音按钮,语音输入目的地位置,小车将进行路径规划并且在App界面中显示,语音输入“出发”,小车按照路径规划的方向行驶;当语音输入“停止”,小车停下。智能导盲系统App的路径规划示意图如图5。

图5 导盲系统App路径规划示意图

5 结语

实际测试显示,笔者设计的这套无人智能小车导盲系统,能实现语音识别、语音播报、定位、路径规划、听声辨位等功能,有助于解决盲人出行难的问题。

猜你喜欢
导盲下位蓝牙
基于云端技术的多功能导盲手杖的设计与实现
蓝牙音箱的直线之美
基于物联网的导盲机器犬的研究与设计
发射机房监控系统之下位机
路口导盲及马路障碍物检测提醒系统的设计
简单、易用,可玩性强Q AcousticsBT3蓝牙音箱
适合自己的才是最好的 德生(TECSUN) BT-50蓝牙耳机放大器
紧急:蓝牙指尖陀螺自燃!安全隐患频出
景洪电厂监控系统下位机数据传输网络改造
围观党“下位”,吐槽帝“登基”