2 情感机器人系统设计(Design of emotional robot system)
本文制作的情感机器人如图1所示,其系统主要由三大模块构成,即动作情感采集模块、动作情感分析模块、机器人反馈模块,每个部分又由特定的硬件和软件来实现,其系统框架如图2所示。
图1 情感机器人
Fig.1 Emotional robot
图2 情感机器人系统框架
Fig.2 Emotional robot system framework
2.1 动作情感采集模块
动作情感采集模块主要由 13 个电阻式压力应变片传感器组成的传感器阵列构成。电阻式应变片传感器由电阻式应变片和解析压力应变片弯曲程度的电路板组成。电阻式应变片的弯曲程度越大,电阻式应变片传感器输出的电压值越高,利用电阻式应变片传感器的目的是将人手对机器人抚摸的压力转化为电阻式应变片的弯曲程度,进而转化为电阻式应变片传感器输出的电压值。
电阻式应变片需要粘贴在可弯曲介质上,用于测量其弯曲程度。考虑应变片的柔韧性、可恢复性和灵敏度,将压力应变片与轧带粘贴在一起,轧带弹性好、可恢复性强。轧带斜插入机器人内部机壳上的孔中并固定,如图 3 所示。电阻式应变片依附的轧带在机器人表面的分布如图4所示,图4中的数字为传感器序号。轧带周围要填充棉花,外部表面还需要包围毛绒材质,使机器人摸起来比较柔软。当人手抚摸机器人表面时,机器人表面会凹陷下去,进而轧带弯曲。人手的抚摸力度越大,机器人表面的形变量越大,轧带的弯曲程度越大,轧带弯曲带动电阻式应变片弯曲,从而使电阻式应变片传感器输出的电压值发生变化。
图3 情感机器人应变片内部结构
Fig.3 Internal structure of emotional robot strain gauge
图4 情感机器人轧带(应变片)分布图
Fig.4 Distribution of emotional robot strain gauge
2.2 动作情感分析模块
动作情感分析模块为纯软件部分,该模块可分析出用户的情感是快乐、轻松,还是悲伤、愤怒,这主要通过BP神经网络来实现[9]。分别让具有这些情感的用户抚摸情感机器人,控制器收集从电阻式应变片传感器输出的电压数据。电压数据通过串口发送给计算机,作为训练输入,并人工标定数据,作为神经网络训练集。训练结束后,神经网络便能根据训练出来的权值分析出输入数据具有哪种情绪,再将训练好的网络参数运用于动作情感分析模块,使机器人可实时地进行情感分析[15]。
2.3 机器人反馈模块
经过调查,真实的宠物猫与人交互包括摇尾巴、不同的猫叫声、各种姿态动作及听懂主人的话语等。由于外观设计成了抱枕的形状,所以姿态动作方面的设计受到限制,我们主要考虑从摇尾巴、发声、语音识别等方面进行设计。
采用PWM 波来控制数字舵机转动实现摇尾巴,为了使舵机的转动更加接近真实宠物猫尾巴的运动,尾部决定采用四个串联的舵机(见图5)。尾部左右摆动有三个自由度,上下摆动有一个自由度,会根据用户抚摸机器人的路径、时间及力度反馈不同的动作,从而实现与人交互。
图5 机器人尾部舵机结构图
Fig.5 Robot tail rudder structure 1,2,3,4—舵机
尾部机械结构外部会套有毛绒材料,增加美观性。情感机器人根据对动作和情感的识别,提供相应的尾部摆动策略,并将控制指令传输至舵机,实现情感机器人对用户动作的及时响应;同时,情感机器人将舵机参数传给上位机,实现上位机虚拟机器人模型与实物同时运动的效果。