基于树莓派的少儿益智教育机器人设计*
2024-03-05李凝思王若歆聂亚博
陆 锋,李凝思,王若歆,聂亚博
(太原工业学院电子工程系,山西 太原 030008)
0 引言
由于人工智能的火热,目前教育机器人主要应用于课内教学和各级各类科技创新活动之中,表现出了不可替代的教育价值和亟待挖掘研究的发展前景[1,2]。近年来出现的树莓派系统,因其功能强大,扩展能力强,倍受嵌入式开发爱好者的青睐,出现了许多基于树莓派的嵌入式智能玩具产品。基于此,我们在分析了现有某型小车源代码的基础上,选择树莓派4B系统作为基础平台来设计一种少儿益智教育机器人(简称机器人),它具备了蓝牙通信、音乐播放、风扇控制、避障、循迹、颜色识别等益智功能,本文讨论了少儿益智教育机器人的设计、实现及相关测试。
1 系统总体方案设计
设计的系统如图1所示,包括树莓派4B、蓝牙模块、摄像头、风扇模块、音箱、红外避障传感器、红外循迹传感器、超声波传感器、STM8单片机和电机驱动等部分。
图1 系统总体设计框图
图2 主控系统硬件设计
APP可以通过蓝牙模块或树莓派自带的WiFi功能连接树莓派主控系统,通过发送命令实现机器人循迹、避障、音乐播放、颜色识别等功能。机器人循迹是指沿着标记的路线行进,本系统采用树莓派读取四路红外循迹传感器获取的标记路线和背景地面的返回信号进行判断,决定转向或直行以保证行驶在标记路线上。机器人避障除了利用超声波传感器获得正前方的障碍物距离外,还可以结合红外避障传感器获得左前方和右前方是否有障碍物等信息,由树莓派按照一定的方法和策略进行避障。利用树莓派和摄像头获取需要识别颜色的图像,采用OpenCV库设计实现算法完成颜色识别。为了增加趣味性,在以上功能上实现音乐播放和风扇控制功能。
2 系统硬件设计
2.1 基于树莓派的主控系统设计
树莓派(英文名为“Raspberry Pi”,简称RPi),它是约信用卡大小,基于ARM的一种微型电脑。本项目中我们选用的是树莓派4B系统,它以SD/MicroSD卡作为内存硬盘,在卡片主板旁边有1个100M以太网接口和4个USB接口,2个HDMI高清视频输出接口,此外还具有2个3.3V端子,2个5V端子,2个DNC,7个GND和28个GPIO接口。
2.2 蓝牙模块
蓝牙可实现不同设备之间较近距离的无线连接,蓝牙无线通信的频率f和WiFi一样都通常在2.4 GHz附近都属于特高频信号。相对于低频信号,高频传输的速度更加快,穿透能力更强,但传输距离会比较受限。本系统采用FSC-BT986型号的蓝牙转串口模块,其主要参数是最大传输速率50 kB/s,支持SPP/BLE/HID传输协议,输出功率5 dBm,工作电压是3.3 V~3.6 V。
2.3 超声波模块
超声波传感器是一种将超声波信号转换成其他能量信号的传感器,其转换成的信号通常是电信号。本机器人采用的是一款TTL串口通信的超声波传感器HC-SR04作为超声波模块,它可以精确地测量2 cm~400 cm范围内的距离,且误差较小仅为3 mm。HC-SR04由三部分组成:超声波发射器,超声波接收器和控制电路。其中HC-SR04超声波传感器只有4个引脚:Trig(触发器)、Echo(接收器)、VCC和GND,其中的VCC和GND引脚分别接树莓派的5V和GND引脚。然后将Trig引脚连接到树莓派的16号物理引脚(GPIO23)上。为了传感器的读数更加精确,需要使用680 Ω和1.5 kΩ的电阻将Echo引脚上的电压转化为3.3 V巡逻电压,并将其连接到树莓派的18号物理引脚(GPIO24)上。
2.4 红外避障模块
为了实现机器人避障,采用红外避障模块辅助超声波模块进行避障[3]。红外模块由红外发射管和红外接收管组成。发射管发射红外线,当前面没有障碍物时红外线就连续往前照射,当遇到障碍物后红外线便反射回来由接收管接收,比较器电路处理后输出指示灯随之亮起,同时在信号输出接口处输出低电平的数字信号,机器人也可以通过电位器的旋钮来调节并且检测距离,其有效距离范围是2 cm~30 cm,红外线的反射光越强则说明障碍物的距离越近。对于除障碍物表面是黑色的以外其他颜色,红外线均有较好的反射与接收的效果。但是超声波传感器发射出的超声波也很可能有被吸音墙面等环境吸收而造成影响,也可能会受温度和风向等的干扰。该模块的额定工作电压为3.3 V~5 V,共有3个引脚分别是OUT、VCC和GND。其中VCC和GND分别连接树莓派的5V和GND引脚;而OUT接在机器人任意的GPIO引脚上面即可。本设计使用左、右两路IR模块,使用的GPIO口为GPIO9和GPIO10。
2.5 红外循迹传感器模块
本设计为实现机器人循迹功能选取的红外循迹传感器,其基本性质是利用物体的反射性质,当红外线发射到黑线上时会被黑线所吸收导致红外的接收管无法接收反射光,经施密特触发器整形后输出高电平后警示灯亮;而发射到其他颜色的材料上面时不会被吸收且成功反射到红外接收管上,经施密特触发器整形后输出低电平后警示灯灭[4-6]。通过分析高低电平来分析循迹路线,由软件执行相应的循迹策略。在四路传感器模块中,左1和右1传感器完成边缘检测,左2和右2完成线内循迹。在Board编码下,左1、左2、右2、右1对应树莓派的GPIO22、GPIO27、GPIO4、GPIO17的管脚。
3 系统软件部分设计
3.1 避障算法
小车装配的是红外传感器加超声波传感器来协同进行红外避障的实验,由红外传感器来判断是否存在障碍物,而超声波传感器利用超声波的测距来测量实际的距离。红外避障算法的流程图如图3所示。
图3 机器人避障算法流程
3.2 蓝牙通信软件
每一对设备之间在进行蓝牙通讯时,要一个为主角色,另一为从角色,这样才可进行通信,通信中必须由主端发起查找,进行配对,在连接成功后双方即可收发数据。在本机器人系统中,相对蓝牙通信而言机器人是蓝牙服务器端,手机是蓝牙客户端,二者实现一对一串口通信。蓝牙客户端处理的流程如图4所示。
图4 蓝牙客户端处理流程
4 系统测试
本系统主有风扇控制、避障、循迹、颜色识别、蜂鸣与音乐播放等相关功能,通过测试已实现相关功能。
4.1 颜色识别
机器人对颜色的识别如下图5所示
图5 红色、绿色和蓝色识别效果
从图5可以明显的显示出机器人可以对基本的一些颜色进行判断,图5(a)识别标记为red(红色),图5(b)识别标记为green(绿色),图5(c)识别标记为blue(蓝色),结果正确表明机器人具有颜色识别的功能。
4.2 避障与循迹
机器人避障与循迹测试的结果如图6所示。
图6 避障与循迹效果图
其中图6(a)是第4秒时刻,图6(b)是第5秒时刻,图6(c)是第6秒时刻,图6(d)循迹效果图,由此可以看出机器人遇到障碍物后完成了转向,实现结果表明它实现了对障碍物的避障。机器人沿着黑色直线正常行使,对于其他形状也可以成功循线行驶。结果表明机器人可以完成路线循迹的功能。
5 总结
随着AI技术的不断发展和成熟,其应用的范围愈来愈广泛,教育机器人在社会上众多重要领域内都发挥着极其重要的作用。本文设计了以树莓派4B主控平台的少儿益智系统,借助树莓派的强大拓展性,设计、实现和测试了蓝牙通信,音乐播放,风扇控制,避障,循迹,颜色识别等功能,测试结果验证了本方案的正确性。