APP下载

基于EV3教育机器人的电子宠物应用研究*

2021-11-15周颖怡

南方农机 2021年21期
关键词:小白使用者宠物

周颖怡

(岭南师范学院,广东 湛江 524048)

0 概述

由于人口结构、家庭、社会结构的变化,空巢青年、老年群体人数正在逐渐增多,为了寻求精神的寄托,人们开始需要更丰富的精神生活,电子宠物应运而生[1]。电子宠物可以实现陪伴、缓解压力等功能,具有巨大的发展潜力[2]。

本课题采用EV3机器人作为搭载电子宠物的基本套件,EV3机器人拥有独立开放的编程程序,它的功能强大,通过机械部件与编程的组合,能够完成多种机械动作[3];配备编程软件以及使用手册,让广大用户能够根据自身的需要来改变程序,以实现更多功能,亲身体验编程的乐趣,培养用户的科学素养[4]。

1 EV3套件介绍

本课题设计的EV3宠物机器人是指以EV3机器人为搭建主体的电子宠物狗“小白”,宠物的身体由各类积木、电动机、传感器以及主控制器组成,在编程软件上完成程序编写并导入到主控制器,则可实现预设功能[5]。该电子宠物的主要功能包括:能够完成基本动作,如发声、挥手等,并且能够实现人宠互动,对使用者的指令实现实时响应。

EV3机器人核心套件如下:

1)“智能砖头”——EV3程序块。EV3机器人的特点之一就是它拥有一个“大脑”一般的主控制器[6]。以往使用者在编程完成后,往往需要将程序从计算机下载到机器人,而在配备了主控制器之后,使用者不仅可以将程序储存在上面,还可以直接通过主控制器完成编程,从而快速检验程序有效性。

2)各类传感器,包括超声波传感器、红外传感器、陀螺仪传感器、颜色传感器、声音传感器以及触动传感器等等。如果说主控制器是EV3机器人的“大脑”,那么这些传感器就相当于机器人的“五官”,高精度的传感器能够帮助机器人感受周围的环境,并根据预设做出响应[7]。

3)各类积木和电机,即EV3机器人的“躯干”和“四肢”。通过改变不同积木之间的搭配,能够组合出多种多样的机器人模型,电机为机器人的行动提供动力[8]。

4)配备了搭建手册和编程软件EST。EV3机器人采用图形化编程,将不同的模块进行合理组合,则可以实现指定动作,如前进、后退、转弯等,配合不同传感器能接收不同的信号,实现更高级的动作[9]。

2 电子宠物“小白”的造型制作

电子宠物“小白”的头部由主程序块构成,主屏幕能够显示它的表情,两只“耳朵”让它看起来更加生动形象,超声波传感器、颜色传感器位于“下巴”处。“小白”的躯干部分由中型电机、声音传感器、触碰传感器以及各种积木构成,尾部用金属圆球模拟小狗的“尾巴”。电子宠物“小白”的正视图如图1所示,侧视图如图2所示。

图1 “小白”正视图

图2 “小白”侧视图

3 电子宠物“小白”的程序设计

3.1 电子驱动的实现

“小白”的躯干有一个中型电机,连接的是主程序块的A端口。中型电机带动蜗轮转动,通过蜗轮蜗杆传动,可以实现上下点头的动作。

“小白”的后肢有两个大型电机,连接的分别是主程序块的B端口和D端口。大型电机带动齿轮转动,通过齿轮之间相互啮合传动,使得轮胎转动,实现移动。

3.2 传感器的实现

“小白”身上有4个传感器,分别是超声波传感器、声音传感器、颜色传感器及触动传感器。声音传感器连接的是主程序块的1端口,超声波传感器连接的是主程序块的2端口,颜色传感器连接的是主程序块的3端口,触动传感器连接的是主程序块的4端口。

当声音传感器检测环境声音达到50 dB以上时,主程序块屏幕将会出现“EST”字样;当超声波传感器感应到前方20 cm以内有物体时,主程序块屏幕将会出现“EST”字样;当颜色传感器感应到物体颜色为红色时,主程序屏幕块将会出现“EST”字样;当触碰传感器受到挤压时,主程序屏幕块将会出现“EST”字样。

3.3 对声音的实时响应

“小白”能够对使用者的命令做出反应,当使用者喊出“小白”的名字或者拍掌呼唤“小白”时,它会缓缓向使用者走来,同时抬起头“看着”使用者。利用切换模块,将模式设置为声音传感器。设定阈值,当声音传感器检测到周围环境声音达到40 dB以上时,中型电机以20%的功率逆时针转动3 600°,通过蜗轮蜗杆传动,“小白”做出抬头的动作;两个大型电机同时以20%的功率转动一圈,“小白”向使用者走来;同时,主程序块屏幕显示表情“仰视”。当周围环境声音低于或等于40 dB时,“小白”无动作。最后使用一个无限制循环模块将该程序包含在内,让该程序能够在“小白”启动时一直运行。

3.4 显示预设表情

“小白”在不同的情境下会显示不同的表情,配合发声功能,可以表现出“小白”的情绪状态。当“小白”闲置时,每5 s会转换一次表情并显示在主程序块屏幕上。程序如图3所示。

图3 显示预设表情程序

3.5 距离感应

“小白”能够通过超声波传感器感应到前方物体的存在,当探测到该物体的存在时,“小白”能够随着物体的运动而运动,并与物体保持一定的距离。利用切换模块,将模式设置为超声波传感器。设定阈值,当超声波传感器探测到物体距离“小白”大于15 cm时,将此时探测到的距离的值设为a,利用数学模块将a与15的差值乘以10,并将结果输入为电机的功率值,使电机以该功率顺时针运转,达到跟随的效果;当物体距离“小白”大于10 cm、小于15 cm时,电机关闭,“小白”保持静止;当物体距离“小白”小于10 cm时,将此时探测到的距离的值设为b,利用数学模块将10与b的差值乘以-10,并将结果输入为电机的功率值,使电机以该功率逆时针运转。程序如图4所示。

图4 距离感应程序

3.6 手动调节头部

使用者可以通过按压程序块按钮,手动调节“小白”头部的角度。利用切换模块,将输入模式设为“程序块按钮——比较”,将动作状态设为挤压,当程序块上按钮受到挤压时,中型电机会以-100%的功率运转,“小白”做出抬头的动作;当程序块下按钮受到挤压时,中型电机会以100%的功率运转,“小白”做出低头的动作。使用者可以根据需要手动调节“小白”头部的角度。程序如图5所示。

图5 手动调节头部

3.7 辨别“食物”

“小白”配备了颜色传感器,通过辨别物体的颜色,能够分辨该物体是否为食物,并做出反应。利用切换模块,将模式设置为“颜色传感器——比较”。若颜色传感器探测物体颜色为红色时,即该物体为“食物”,此时主程序块显示表情“热爱的”,发出声音“嘎吱”,同时,以50%的功率前后移动;若颜色传感器探测到物体颜色不为红色时,即物体不为“食物”,此时主程序块显示表情“伤心的”。

3.8 感应触碰

使用者挤压“小白”身上的触动传感器时,“小白”会抬头“望向”使用者,做出“眯眼”的表情,并发出可爱的叫声。利用切换模块,将模式设置为触动传感器,并将动作状态设为“挤压”。当触动传感器的按钮受到挤压时,主程序块会显示表情“眯眼着”,发出声音“啵嘤”,并且中型电机会以20%的功率逆时针旋转3 600°。如果一段时间没有进行操作,“小白”会进入睡眠状态。

3.9 遥控

使用者通过挤压“小白”身上的两个触动传感器,通过不同的动作组合来遥控“小白”前进、后退、左转及右转。利用切换模块,将模式设置为触动传感器(端口为1,即1号触动传感器),并将动作状态设为“挤压”。同时嵌套两个切换模块,将模式设置为触动传感器(端口为2,即2号触动传感器)。当1号触动传感器和2号触动传感器同时“松开”时,“小白”前进;当1号触动传感器和2号触动传感器同时“挤压”时,“小白”后退;当1号触动传感器“挤压”,同时2号触动传感器“松开”时,“小白”左转;当1号触动传感器“松开”,同时2号触动传感器“挤压”时,“小白”右转。

3.10 声控调速

使用者能够用声音让“小白”前进,并且能够通过改变声音分贝的大小来改变“小白”前进的速度[10]。利用切换模块,将模式设置为声音传感器。当检测到声音分贝大于20 dB时,利用声音传感器模块测量出当前声音分贝值的大小,将声音分贝测量值作为电机功率,从而达到声控调速的效果[11]。考虑到直接将声音分贝值作为电机功率,可能会导致电机功率过高、速度过快,所以在程序中加入了一个数学模块,在读取测量结果之后,将其设为数学模块的a值,用a除以固定值2,再将结果作为电机功率。改良后的程序既避免了电机速度过快,又避免了输出值为负数而导致电机反转。程序如图6所示。

图6 声控调速

3.11 触动调速

使用者通过挤压“小白”身上的触动传感器来控制“小白”前进,随着使用者挤压触动传感器次数的增多,电机功率随之增高。程序说明:使用常量模块,设置常量值为20,并将其导入变量模块,作为变量1初始值。利用等待模块,将模式设置为触动传感器,当使用者挤压一次触动传感器,变量模块将变量1的值导入数学模块中作为a值,加上固定值10,然后利用变量模块读取结果,并将结果导入电机功率。使用者每挤压一次触动传感器,电机功率就会增加10%,最终电机功率达到100%,“小白”全速前进。程序如图7所示。

图7 触动调速

4 小结

EV3机器人是一款教育机器人,越来越多的学校、教育机构开始使用它作为教学工具,越来越多人看到了它的优势和潜力。本课题中的“小白”是基于EV3机器人的电子宠物,是对EV3机器人应用的一次尝试。虽然现今为止宠物狗“小白”的表现与人们的预期还无法相提并论,但在日后的研究中定会不断发展进步。

猜你喜欢

小白使用者宠物
“咯咯哒”
设计让您在喜爱的虚拟世界中自由奔跑
小白找朋友
新型拼插休闲椅,让人与人的距离更近
抓拍神器
抬起脚来
养宠物
万能的小白
梦乡床
“大鸡蛋”变身