基于人机交互系统的取药机器人设计

2022-11-16 02:16刘玉丛
电子技术与软件工程 2022年16期
关键词:行走机构药盒按键

刘玉丛

(德州职业技术学院电气工程系 山东省德州市 253034)

据第七次人口普查,60 岁以上老年人口占到总人口的18.70%,老年人口基数大,本文以老年人服药为切入点,设计一款智能取药机器人,服务于老年人服药。普通药盒在健忘的老年患者手里,方便了服药的同时,也难免会给老年患者带来了“不遵医嘱服药”的隐患。存在不按时吃药、重复吃药、种类繁多吃错药的担忧,基于以上考虑,本文将人工智能技术应用到药盒中,智能取药机器人将贴心为老年人制定“分忧”计划,保证每一顿按时按量服药,保证每一顿服药准确。据此,对人机交互系统的取药机器人设计进行研究分析,将有着一定实际应用意义。

1 基于人机交互系统的取药机器人总体方案设计

1.1 总体方案设计

基于人机交互系统的取药机器人以单片机控制板为核心,可以按键、语音、手机APP 三种方式控制,整个过程通过软件编程控制,自动完成。主要研究内容包括项目外观结构设计研究、取药机器人的动作控制设计研究、语音模块控制设计研究、视觉判断模块设计研究、手机APP 控制模块的设计研究。需要解决的关键问题为语音模块、视觉模块与机械臂的通讯、机器人可行走结构的设计与控制。具体的设计方案如图1 所示。

在图1 所示方案中,外形设计包括机械臂取药部分与行走机构部分,另外还要将机械臂取药部分与行走机构部分有机结合在一起,做成一个可以灵活移动的取药机器人。硬件设计包括视觉模块、语音模块、手机控制模块、按键模块、机械臂取药模块、行走模块[1],其中视觉模块、语音模块、手机控制模块、按键模块要与机械臂取药模块进行通讯连接。行走部分需要控制好运行速度。通过软件编程,软硬件联调实现取药机器人设计功能。

图1:基于人机交互系统的取药机器人方案设计框图

1.2 取药机器人功能分析

(1)语音按键(APP)多功能控制:可以通过语音、按键、手机远程控制取药机械手臂动作,控制方式简单灵活,显示模块显示设定的用药时间。

(2)实现远程实时监测用药信息:用药信息和用药时的视频图像通过GPRS 通信或者WLAN 网络形式与手机APP 进行实时通信,并对药盒进行远程的查看、设定与控制,实现远程监测病人用药情况,达到远程照顾病人的目的。

(3)视觉判断防止吃错药:机器人视觉模块安装在机械臂末端工具上方,机械臂取药前必须先要经过视觉判断,老年人的吃药信息需要提前通过图像采集系统采集,视觉判断无误后,机械臂才能取药,否则药盒原路退回,并将错误信息反馈到手机端。

(4)亲情语音提示:可以输入亲情语音提醒,如果提醒吃药后没有取药,药盒会在接下来的一个半小时之内重复提醒五次。到了下一个吃药的时间后还没取药的话,未取的药会被替换成下个时间段该服的药,智能化管理,避免重复服药。

(5)外形设计:早中晚分时段放药,合理分配空间,每次用药时段区分明确,漏吃少吃一目了然。整个外形结构占地空间小,移动灵活。

(6)可行走机构助力移动服务:增加了可行走机构,在行走机构前面增加了前置摄像头,前置摄像头实时提供前方路线,手机远程控制机器人移动到服务位置,移动服务更贴心。

1.3 外形结构设计

结合设计方案及功能分析,取药机器人外形结构设计如图2 所示,图中,1 为药点提醒器,2 为气泵,3 为药盒抽屉,4 为核心控制模板,5 为减速电机,6 为按钮,7 为机械臂正视图,8 为机械臂左视图,9 为机械臂俯视图,10 为行走轮子,11 为水杯,12 为行走机构电机,行走机构电机为直流电机。另外机器人及行走部分均采用锂电池供电,所以要充分考虑锂电池的容量。

图2:基于人机交互系统的取药机器人外形结构设计示意图

机械臂气泵来控制机械臂末端吸盘吸气还是呼气,从而决定将药盒吸取还是放下。但是特别注意选取气泵时,注意选取噪音小的气泵,以免噪音太大,影响老年人休息。早中晚三个药盒靠三个减速电机带动,采用减速电机可以有效的控制启动和停止时的运行速度,运行比较平稳。当减速电机正转时,药盒被推出,减速电机反转时,药盒退回原位。小车行走机构靠小车下面的核心控制模块控制,另外小车前面安装前置摄像头,用于实时提供小车行走路线。本设计结构中将机械臂,药盒,行走机构灵活整合在一起,结构简单,控制灵活。如果用于市场投入,还应该考虑取药机器人的外观美观程度,将其产品化,这需要进一步完善改造。

2 硬件设计

2.1 语音模块设计

本设计采用的单片机为Arduino Mega 2560,控制板的工作电压为5V,有54 路数字输入输出通道,其中15 个可以作为PWM 输出,16 路模拟量输入端口,每个I/O 口的直流电流为40mA,晶振为16MHz。为了便于控制,采用拓展口把语音、视觉、机械臂的控制口连接起来。

采用LD3320 语音模块, 本语音模块集成了精度很高的A/D 与D/A 转换口,不用外接其它辅助设备,结合取药机器人控制功能,在编写程序时,将“早晨用药”、“中午用药”、“晚上用药”三个关键词写入到模块中,模块就可以识别这三个特定的关键词。例如,当早晨该吃药时,用户对着语音模块说出“早晨用药”,模块识别后与三个关键词匹配,与提前写入的“早晨用药”关键词匹配成功,模块将发出信号驱动带动早晨药盒的减速电机正转,送出药盒,同时机械臂收到信号,取走药盒。同样,当语音模块接收到“中午用药”或者“晚上用药”关键词时,与提前写入的三个关键词匹配,匹配成功后,语音模块发出信号驱动带动中午或者晚上药盒的减速电机正转,送出药盒,同时机械臂收到信号,运行到相应位置取走药盒。当药盒取走后,减速电机反转,药盒退回原位置。

2.2 机器人视觉模块设计

机器人视觉模块采用Pixy2 视觉识别模块,将Pixy2 视觉识别模块连接到Arduino Mega 2560 控制芯片的拓展口上,为了方便控制,也可以专门设置一个拓展板,在拓展板上留出需要连接的视觉、语音、机械臂等外部设备的拓展口。

Pixy2 视觉识别模块主要是通过识别颜色来识别物体,最多可以识别7 种颜色,在取药机器人设计中,分别用蓝、红、黑三种颜色的药盒装早、中、晚三顿该吃的药片,在使用前,需要完成三步操作,第一步,将蓝、红、黑三种颜色学习到Pixy2 视觉识别模块中;第二步,为了保证视觉模块识别到药盒后,机器人能准确抓取药盒,还必须进行视觉标定,通过视觉标定会对三种颜色的药盒产生标定坐标;第三步,机械臂标定,通过第二步视觉模块已经生成了标定坐标,如果不进行机械臂标定,会出现手眼不一致,抓取精度不高的现象,通过机械臂标定,把视觉模块产生的标定坐标,转换成机械臂实际应该运动的坐标,确保抓取药盒准确。通过以上操作,在取药机器人设计中,当取相应的药盒时,视觉模块会对颜色进行匹配,如果成功则给控制板信号,机械臂抓取药盒,否则药盒原路退回。例如,应该取早晨药盒时,如果是蓝色药盒,视觉模块识别后能匹配成功,则正常取药,否则如果是其他颜色药盒,则药盒退回,这样有效的防止吃错药的情况发生。

2.3 手机控制模块设计

手机控制模块的核心元件手机Wi‐Fi 模块,通过手机Wi‐Fi 模块将早、中、晚三顿取药做成三个虚拟开关,直接操作手机界面的早、中、晚取药按钮,相应的药盒推出,视觉模块识别无误后,机械臂准确抓取药盒。另外小车前方安置摄像头,与手机Wi‐Fi 模块连接,将小车前进、后退、左拐、右拐等做成虚拟按钮,这样可以通过摄像头提供的实时路线,操纵小车到达服务点,方便行动不便的老年人取药。另外子女也可以通过手机端查看老人吃药的情况,及时提醒老人吃药。有效的实现了手机物联网的功能。

2.4 按键模块设计

按键操作是最传统的操作方式,采用红、绿、蓝三个按键分别控制早、中、晚三个取药点,制作三个传统按键取药的目的是为了服务于对手机使用不熟练或者说话声音不清楚的老年人。当按下早晨取药按键时,早晨药盒被推出,视觉模块识别无误后,机械臂抓取药盒送到服务位置,如果视觉识别药盒颜色有错误,药盒被原路退回。当按下中午或者晚上按键时,相应的药盒推出,机器人取药。按键操作是最简单的操作方式,这种传统的操作方式不可以省略去掉,这是最基本的控制方式。

2.5 控制系统原理分析

通过以上各硬件模块的分析,结合控制要求,基于人机交互系统的取药机器人原理分析如图3 所示,本设计以Arduino Mega 2560 控制板为核心,可以输入亲情语音提醒到药点提醒器。当药点提醒模块发出吃药提醒时,例如,“您好!您的早晨吃药时间到了。”或者“老爸,您的早晨吃药时间到了。”可以通过手机端控制机器人行走到服务位置,当控制中心收到按键、语音、手机APP 三种任意一种控制信号输入时,发出输出控制信号,减速电机正转,拉出早晨药盒,视觉模块判断药品无误后,机械臂动作取药到指定位置,减速电机反转,送回药盒。如果视觉模块判断药盒颜色错误,则药盒退回,并将吃药情况反馈到子女手机,及时更换药盒,有效防止吃错药的现象出现。三种控制方式灵活方便,便于实现。

图3:基于人机交互系统的取药机器人原理分析图

3 软件设计

3.1 软件编程

经过以上硬件模块与原理分析,基于人机交互系统的取药机器人程序编写流程图如图4 所示,本文用到的单片机为Arduino Mega 2560,因此编程采用Arduino 编程软件。在取药机器人的整个控制过程中,行走部分的控制和取药部分控制是分开控制的,当收到吃药提醒时,需要操纵手机端,将机器人移动到服务位置,到达位置之后需要老人通过语音、手机APP、按键三种方式中的任何一种来使机器人动作取药。还没有完全做到机器人到达服务位置后自动取药这一功能,这需要进一步研究。

图4:基于人机交互系统的取药机器人程序编写流程图

在取药机器人的编程控制中,通讯是难点,在程序编写时,需要将机械臂模块、语音模块、视觉模块三部分用到的库函数加载到Arduino 编程软件中,否则无法实现控制。另外机械臂的运动轨迹要多次调试,找到合适的运动轨迹[2],保证能抓到药盒,而且还不会碰撞其他部件,将找到的合适轨迹坐标编写到程序中,实现运动控制目标。机器人行走部分控制要考虑电机的带载能力,保证能带动机器人所有部件,另外要通过多次调试找到合适的运动速度,通过软件编程实现PWM 调速,速度过快或者过慢都不能满足服务要求。由于单片机工作电压为5V,控制的直流电机一般都超过5V,所以还需要设置驱动电路,才能实现行走部分的有效控制。

3.2 软硬件联调

软件编写完之后需要反复调试,在调试过程中出现视觉标定不准确的问题,经过反复研究,当视觉标定时保证周围环境不能过亮或者过暗,通过调节环境亮度有效的解决了标定不准确的问题;机械臂运动过程中发现吸盘没有落到药盒中心,在机械臂标定时,需要移动机械臂吸盘落到药盒中心位置,确定准确的吸取点。另外在调试过程中,优化机械臂的运动轨迹,防止碰撞到机器人其他部件。一次调试成功之后需要机器人多次运行来观察多次运行之后机器人的运动偏差,确保机器人的运行稳定。

4 结束语

综上所述,为了解决老年人漏吃少吃药问题,本文提出一种基于人机交互系统的取药机器人设计方案,此设计方案主要分为外形设计、硬件设计和软件编程三部分内容,在设计过程中,语音、视觉、手机APP 与机械臂的通讯问题是控制的核心,项目调试完成后,多次调试按键、语音、手机APP 的不同控制方式,模拟视觉判断模式,保证机器人工作的准确定与稳定性。另外为了便于服务行动不便的老年人,行走机构的设计也是重点。经过反复调试,与多次实际应用,本设计可以实现老年人用药的服务,结合以上分析,本设计研究的智能助老取药机器人将有很大的应用前景,适用于家庭、养老服务、医院等医养体系,可以有效解决老人忘记吃药、重复吃药、吃错药的问题。虽然,在设计过程中在外形美观,产品化等方面存在不足之处,但该设计方案仍然可以作为后续取药机器人设计的参考。

猜你喜欢
行走机构药盒按键
草莓采摘机器人行走机构设计
基于有限状态机的按键检测程序设计
基于山地丘陵地区农机行走机构设计研究*
一种电动旋转的大车行走机构
清扫机器人行走机构的设计
一种多方向导光按键结构设计
红外光谱法鉴别维药盒果藤根药材模型研究
“七彩药盒”在艾滋病抗病毒药物治疗中的应用
旅行便携随身药盒
药盒计数器的设计方案及特点