发布时间:2021-03-27所属分类:科技论文浏览:1次
摘 要: 摘要:为让机械制造及其自动化专业的学生了解和掌握机械、控制和通信等多种技术的交叉应用,在大量的研究及试验的基础上,设计了可交互式面部表情机器人综合实验。该实验以现实中的问题为主题,以动手设计和制作为主、老师启发引导为辅的形式展开,强调工程
摘要:为让机械制造及其自动化专业的学生了解和掌握机械、控制和通信等多种技术的交叉应用,在大量的研究及试验的基础上,设计了可交互式面部表情机器人综合实验。该实验以现实中的问题为主题,以动手设计和制作为主、老师启发引导为辅的形式展开,强调工程与设计的融合、主动性和实践能力培养以及在技术学习上采用线上线下混合的学习方式。该课程融合多学科知识,通过动手实验、启发式学习、失败分析等方法让学生学习如何融合与应用多学科知识,并用于解决实际工程问题,逐步锻炼学生的综合能力和解决问题的能力。
关 键 词:表情机器人;STM32;舵机控制;安卓APP
机器人技术一直都是科技界的重点关注对象,从简单复现人类的基本示教动作,应用传感器和数字技术建立起的感觉能力,到感知、计算、控制等技术的升级,图像识别、语音处理、深度学习、人工智能,甚至纳米科技和材料技术等[1]新型数字技术的深入应用,机器人逐渐渗透到生产生活中[2],对机器人功能的要求也越来越高。为了更好地实现人机交流,机器人的面部表情实现及控制也越来越重要[3]。
学生完成机械原理、机械设计、C语言及单片机原理及应用等理论课程和相关实验的学习之后,具备了一定的理论知识,初步掌握了三维建模软件、编程软件的使用方法,以及基本的电路知识。
机器人技术是多学科交叉的科学工程,涉及机械、电子、计算机、通信和传感器等。面部表情机器人综合实验中包含了机械结构、单片机控制系统、无线通信、手机APP等技术的应用,将理论知识和实际应用相结合,有助于帮助学生综合应用所学到的知识,更好地理解各种技术在实际中的应用;在提高学生的动手能力及创新能力的同时,助力学生工程素养的建立,培养学生分析并解决复杂工程问题的能力。
1总体实验设计
实验以现实问题为主题,以动手设计和制作为主、老师启发引导为辅的形式展开,强调工程与设计的融合、主动性和实践能力培养以及在技术学习上采用线上线下混合的学习方式。该课程融合机械、控制和通信等多学科知识,再通过动手实验、启发式学习、失败分析等方法让学生学习如何融合与应用多学科知识,并用于解决实际工程问题,逐步锻炼学生的综合能力和解决问题的能力。
实验前老师给定题目、内容及指标要求,实验时学生根据题目和指标制定实验方案并制作实物,实物制作过程中不断优化方案。实验中涉及的理论知识采用视频和带录音PPT等方式线上教学,方便学生随时回顾知识点;线下学生完成方案制定和实物制作,方便学生间及学生与老师随时沟通交流,学生的沟通交流能力和团队合作能力得以锻炼。
实验课程从基本设备使用和独立创新两个方面入手,并将部分功能模块化,引导学生将理论知识应用到实践中。学生在掌握了3D打印机、雕刻机等设备的使用后,自行设计面部表情机器人的外观和关键结构,独立动手完成外观和关键结构的加工和安装;对于控制系统方面,设计了几个可选的功能模块,学生独立完成编程及调试。
2面部表情机器人总体设计思路
面部表情机器人分为三维模型设计和控制系统两个部分,如图1所示。三维模型由学生自行设计,要求有6个以上的自由度,使用3D打印和雕刻机完成三维模型实物制作。控制系统以STM32作为控制器,设计预留了多种传感器接口。舵机控制模块用于控制舵机以控制面部表情机器人做出不同的表情。该实验可通过多种方式实现人机交互,例如语音、蓝牙手机APP、串口以及按键等方式发布指令,面部机器人自主完成接收到的指令。
语音控制模块用于实现语音识别与语音对话功能。无线控制模块采用安卓APP,通过蓝牙与STM32无线连接,实现面部表情机器人的无线控制。智能感知模块用于根据需要添加各种传感器,如红外传感器、超声波传感器、温湿度传感器等。
3三维模型设计及加工
在设计面部表情机器人的三维模型时,应当给定一些基本准则。外形以仿生为主,要求有6个以上的自由度。
3.1面部表情机器人三维模型设计原则
3.1.1外形设计准则
面部表情机器人在外形上大小应与人的头部相近,结构简单灵活、方便控制且重量要轻,并要留出足够的空间放置机械零件及电机,实现多自由度的协调运转[4]。
3.1.2动作设计要求要求
面部表情机器人有6个以上的自由度,实现的运动结构包括眉毛、眼球、眼皮、嘴巴、脖颈等[5],各结构的运动可自由组合以实现各种动态表情,如兴奋、悲伤、愤怒、厌恶等。
3.2三维模型设计范例
3.2.1三维模型建模人类面部表情机器人的三维模型如图2所示。
本文模型设计时包
含了13个自由度,通过舵机来控制各个机械结构,可以实现眉毛、眼球、眼皮、嘴巴以及整个头部的转动。面部表情机器人动作单元、运动方向和自由度分配如表1所示,机器人的脖子、眉毛和下颌等部分直接连接舵机,通过控制舵机转动来实现;眼球部分,采用了四杆机构的原理,通过连杆实现眼球转动以及眼皮的开合,同时利用一对齿轮啮合实现机器人的抬头动作。
3.2.2模型加工及装配
面部表情机器人的机械结构主要由亚克力板雕刻而成,眼球部分为3D打印。为了使整个结构更加稳固,在组装过程中使用热熔胶进行固定,装配完成后如图3所示。
4面部表情机器人控制系统
选用了STM32F103系列微处理器作为系统的控制器,按系统扩展需要添加了外设接口电路,包括蓝牙模块的串口接口,24路舵机接口,语音识别模块和MP3播放模块接口,5V、3.3V外接电源接口等。
4.1电源电路
由于同时控制多个舵机转动,需要较大的电流,为了不干扰控制电路的正常工作,同时保证安全,设计了双路电源输入,如图4所示,将舵机电源电路与控制芯片电源电路隔离开,更加安全、稳定。
一路电源为控制部分供电,使用电压为12V的直流电输入,串联了一个肖特基二极管防止电流倒灌;然后串联AMS1117-5.0正向低压降稳压器将电压降为5V;再串联AMS1117-3.3正向低压降稳压器将电压降为3.3V,为单片机供电。通过这样的设计,可以同时获得5V和3.3V的输出,以方便给其他模块提供电源,并且电压更为稳定。
另一路电源为舵机供电,选用的舵机型号为SG90,所需电压为5V,利用LM2596降压模块将12V输入电压降为5V电压,用于驱动舵机旋转。
4.2各模块接口电
路为了方便扩展功能,采用了模块化思想来设计这部分电路。
4.2.1语音控制模块
语音控制模块包括语音识别模块和语音播放模块。
语音识别模块采用的是LD3320语音识别模块。该模块和单片机控制系统可通过串口连接[6],实现语音识别、声音控制和人机对话等多种功能;还可以手动编辑可识别的关键词列表,达到对特定词汇/语句的识别,以提高识别准确率[7]。语音识别模块与STM32通过串口3连接:RXD3和TXD3。
语音识别采用了讯飞的语音识别接口,得益于服务器的强大处理能力,可将连续的音频流内容实时识别返回对应的文字流内容,识别率比纯硬件的识别率高。在对获取到的JSON信息进行解析之后,编写对应的处理程序,并在APP中预先设定表情机器人的指令和对话,程序流程图如图5所示。
语音播放模块的TX引脚连接串口2的发送引脚TXD2,使用串口通信协议,通过串口发送指令控制播放预设的音频。
4.2.2无线控制模块
无线控制模块包括手机APP和蓝牙通信两个部分。
本系统选用Androidstudio软件开发基于AndroidOS智能手机的移动应用程序(APP)[8],Androidstudio提供了方便的图形化界面编程,通过简易的设置即可完成APP的界面开发。根据控制系统的设计要求,设计了表情控制、舵机控制和蓝牙连接3个界面,如图6所示。
相关期刊推荐:《实验科学与技术》(双月刊)创刊于2003年,是电子科技大学和四川省高教学会主办、西南六省、市、自治区高校实验室工作研究会协办的学术性、技术性科技期刊,探索实验教学改革、提高实验室管理水平及综合效益的新思路、新途径、新举措,交流有关研究成果与改革经验;为高等学校、科研单位、科技企业从事科学实验与技术研究的教师、研究人员、研究生、工程与实验技术人员提供学术交流的场所;研究各级各类实验室建设管理、对外开放、队伍建设、提高投资效益的共性问题;交流仪器设备设计研制、功能开发、维护管理及技术物资供应管理的研究成果与经验。
无线传输选择的是HC-05主从一体蓝牙串口模块,该模块与STM32通过串口连接[9],由于蓝牙模块和语音识别模块使用时互不影响,因此使用了相同的串口接口−RXD3和TXD3。
手机APP与连接STM32通过蓝牙传输信号,如图7所示的蓝牙连接程序流程图,在连接蓝牙前,首先要获取蓝牙权限,然后打开蓝牙,开启新的线程用于蓝牙搜索,此时会搜索到附近一定范围内的蓝牙设备,如果此设备已经和移动端完成匹配,则直接点击建立连接,如果是新的设备,则需要发起配对请求,在输入正确的PIN码后建立连接。
4.2.3舵机控制模块
由于SG90是模拟舵机,需要不断地发送PWM信号,才能旋转到指定位置。PWM信号由信号线进入舵机信号调制芯片,获得直流偏置电压[10]。舵机内部的基准电路会产生周期为20ms、脉宽为1.5ms的标准脉宽信号,将直流偏置电压与舵机内部的标准电压做差,得到的电压差[11]控制电机的转动方向。
当电机转速是一个定值时,通过级联减速齿轮带动电位器旋转,使得电压差为0,电机停止转动。本设计采用的舵机旋转角度为180°,对应的控制关系如表2所示。
为了能够同时驱动更多的舵机,本设计选择用定时器控制I/O口的方式来产生PWM波,如图8所示。这种方式可以实现一个定时器同时控制8路舵机,3个定时器就可以同时控制多达24路的舵机。
4.2.4智能感知模块
在完成面部机器人基本表情仿真的基础上,还可以添加感知模块,如光电开关、红外传感器和陀螺仪等,进一步完善机器人的功能。
5表情仿真机器人功能实现表情
机器人连接上位机后,发送指令将预定的表情指令放入储存芯片,就可以通过语音识别或者APP控制的方式控制机器人做出各种表情,如图9所示,展示了8种不同的表情。各个表情均由13个舵机共同实现,不同表情对应的舵机旋转角度不同。如高兴时:眉毛不动,两个眼睑转动15°,左右眼分别向上看3°,下巴张开3°,上嘴角上扬45°,脖子上抬3°。
6实验模式
本实验采用了开放性实验模式,实验室提供舵机、STM32F103舵机控制版和多种传感器等元器件,以及微型机床、3D打印机、雕刻机等加工设备。
实验课前将实验题目、内容和指标要求下发学生,学生进行资料调研,在符合实验要求的前提下,学生可自主设计实验方案,完成方案报告;上课时与教师讨论,确认方案的可行性,经审核后,进行后续实验。
实验过程中开放实验室,学生可以在需要的时间预约使用加工设备,方便学生制作、加工及装配机械结构,这样学生可以利用课余时间自主合理规划实验进度和学习任务,最终按进度完成实验内容。
实验过程中教师负责管控实验进度;实验结果验收时,要求学生完成设计报告,并用PPT演讲和现场展示两种方式汇报实验结果,教师根据方案难度、工作量、完成度、创新性和表达能力打分。
一轮课程完成后,发现学生间具有差异性,部分学生课前已经学习并掌握单片机的应用以及3D打印机和雕刻机的使用方法,能很快完成基础要求,因此为符合学生的个性化发展,实验内容分为基础指标和拓展内容。
1)基础指标
学生自行设计机器人的三维模型,要求有6个以上的自由度,使用3D打印和雕刻机完成三维模型实物制作,利用STM32F1控制器实现机器人的表情控制。
2)拓展实验内容
①智能感知模块学生可自由选择传感器完成相关功能;
②机器人视觉,在机器人眼睛处增加摄像头模块,实现图像获取、分析、识别、检测等技术的综合应用[12];
③运动底盘,本机器人设计时所用的都是舵机,为丰富实验内容,可以增加运动底盘,使用直流电机,并进行闭环控制;
④对部分机械结构进行力学仿真分析,如眉毛、嘴巴等,以设计出仿真效果更好的机构[13]。
7结束语
1)面部表情机器人实验融合了机械、控制和通信等多个领域的知识点,综合性强,不仅能有效地帮助学生巩固课程基础知识,同时可以引导和激发学生对智能制造和工业人工智能的兴趣
2)面部表情机器人实验内容由浅入深,可灵活选择。学生2~3人一组完成实验,面部表情机器人整体功能既可由一组学生完成,也可两组学生共同完成。
3)实验具有开放性和创新性。实验方案有学生自主设计,并提供拓展实验内容,学生可选择喜欢的内容进行深入研究。实验验收时要求采用多种方式展示实验结果,锻炼了学生文献查阅能力、创新能力、团队合作能力,以及分析和解决复杂工程问题的能力。——论文作者:肖茜,邢晓松,王成栋
SCISSCIAHCI