APP下载

面向慢性病患者的智能家居药盒的设计与实现

2022-09-09高笛烟黄泽豪陈志聪

电子技术与软件工程 2022年14期
关键词:药盒智能家居慢性病

高笛烟 黄泽豪 陈志聪

(福州大学 福建省福州市 350108)

1 引言

基于人口老龄化和慢性病患者基数逐年增长的社会现状,需要长期服药的人群数量不断增长,并且随着医疗质量与医疗服务水平地快速发展,人们越来越重视日常的健康状况、身体数据等。因此人们对于日常用药的记录和体验也有了更多的需求,传统药盒的单一的功能和设计已经难以满足客户的需求。针对此情况,研究一款针对慢性病患者的多功能智能药盒将拥有极大的发展空间和生产前景。该项目基于嵌入式系统,通过模块化设计让药盒实现完备的功能,使药盒不再是只简单作为储物工具,而是成为能够帮助患者记录日常身体数据、健康状况和帮助医患交流的智能工具。

2 项目分析

本项目以搭建患者与医生间的沟通平台为基础,以减少双方沟通交流为双方提供便利为目的,以智能家居药盒和微信小程序为载体,设计出一款面向慢性病患者的智能家居药盒,目的是解决医患交流互动困难的问题。设计开发初期,我们对传统的家用药盒进行了一系列的调研,发现传统的普通药盒会存在以下一些问题:

(1)药盒结构功能单一,只有基础的存放药物的作用;

(2)药盒没有提醒功能,对于一些忙绿的或者是老年病患,容易产生忘记定时服药的问题;

(3)慢性病是一个需要长期服药的疗程,对于医患之间的沟通十分重要,医患之间缺乏稳定方便的交流平台来进行定期反馈。

因此针对以上问题,结合对于用户需求的分析,本项目的主要设计思路如下:

(1)收集调查慢性病患者的用药习惯,经过沟通交流后了解慢性病患者平日的实际问题和痛楚所在,对信息进行整合和分析;

(2)制定功能模块,选择合适的设计语言并设计小程序;

(3)对硬件结构进行设计模型,实现软硬件结合;

(4)对设计代码进行调试修改,进行测试和运行

该面向慢性病患者的智能家居药盒目标设计如下:本APP是基于微信小程序的服务型平台,服务对象为使用本产品智能家居药盒的患者和医生。利用本小程序收集整合历史服药数据,建立自己独有的近期服药状况数据库,为医生查看近期服药情况及身体是否有异常提供数据支持。基于历史服药情况和身体数据提取药物的影响因子,结合算法建立对接下来是否继续服用该药物和需要使用的量建议预测模型,对未来的身体状况和服药情况进行判断和预测,以此帮助需要服药的人群按时服药,以及帮助人们更好及时的关注用户的身体健康。

3 开发涉及技术

3.1 SolidWorks软件

Solidworks软件是一款基于Windows操作系统开发的三维设计软件,具有较高的易学性、操作性和创新性等优秀性能。利用其设计功能可实现绘制草图、零件建模以及虚拟装配等工作。可将预期的效果设计制成实物进行功能验证便可获得设计参数,即可以利用Solidworks软件的检测功能对结构设计与组装进行干涉检查,能够方便地显示零部件的不同的位置,验证各结构单体构件组合在一起后能否发挥结构整体的功能效益,使得用户能在比较短的时间内完成更多的工作。

3.2 主控制器

主控制器决定选择 STM32F103。该芯片内置 ARM 型Cortex®-M3。内核使用的是 32 位数据处理数据,整合增强的技术和功能,瞄准超低成本预算的应用,低功耗的内核使得在经济型用户终端产品上实现先进且复杂的功能。芯片的最高速度可达72MHz。芯片搭配了512K 的存储空间保证程序的存储。同样带有上电和掉电复位功能。为了保证系统的功耗,芯片内部有三种模式,休眠,停止,待机模式。带有两个12位的转换范围为0-3.6V的数模转化器,和两个DMA控制器。能够实现串行单线调试(SWD)和JTAG接口。

3.3 LD3320语音模块

系统的语音模块部分由LD3320芯片完成,它是一个基于非特定语音识别技术的语音鉴别芯片。该芯片集成了语音识别处理器和一些外部电路,包括高精度的A/D,D/A转化器,麦克风接口,声音输出接口等等。因此,它可以实现不需要任何外接辅助芯片、Flash 或者 RAM,直接集成在现有产品中即可实现语音识别、人机对话等等功能。该LD3320语音识别芯片图如图1所示。

图1:LD3320芯片图

3.4 Springboot

SpringBoot基于Spring4.0设计,不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程。另外SpringBoot通过集成大量的框架,内嵌 Servlet、Tomcat、Jetty等,使得依赖包的版本冲突,以及引用的不稳定性等问题得到了很好的解决。它可直接运用 java-jar指令对项目打包为jar,同时进行自动依赖与版本控制,帮助开发者导入所用到的全部依赖,并自动控制版本,文中所有的配置都由SpringBoot完成,提高了开发效率。

3.5 MySQL数据库

MySQL是开源数据库管理系统。它是一个多用户、多线程的数据库管理系统,主要是通过表和表之间,行和列之间的关系进行数据的存储。它具有事务安全性、按需可扩展性、高可用性、高可靠性、快速启动功能等等优点。在使用 MySQL来即时开发和启动应用程序,大部分的工作由DBMS自动完成,大大降低总体拥有成本的同时又提高了运行的效率。

3.6 RocketMq 消息队列

RocketMQ提供事务消息、定时消息、顺序消息、同步请求等各种各样的消息类型,可以 帮助开发者快速解决业务开发中遇到的各种问题。相比于其他的消息产品来说,一方面,RocketMQ没有任何的外部依赖,它由两部分组成:一部分是用于服务发现的NameServer,另一部分是用于消息、数据中转、流转和存储的Broker。可以说,RocketMQ拥有极简架构,因此,它对运维成本的要求非常低。另一方面,RocketMQ在高可靠、高吞吐和低延迟方面具有明显的优势。

4 系统功能设计

4.1 用例设计

该系统设计了三种角色:患者、监护人、医生和管理员。详细用例图内容如图2所示:

图2:系统用例图

患者可以进行以下操作:登录、注册、查看用药记录、联系医生、查看健康咨询和我的。

(1)如果没有注册则进入注册页面,如果已有账号则微信一键登录。

(2)患者和监护人一进入登录页便可查看今日用药情况:已服用、未服用(超时/未超时)。当到用药时间,会有闹钟提醒;若某种药品超时还未服用,则会有闹铃提醒,并且将消息告知监护端,让监护人提醒患者用药。

(3)患者和监护人可个性化添加药品,可变动性高,添加方便。

(4)患者可查看用药记录:健康记录(记录血压、血糖、体重等各类身体状况)和生成用药反馈,让医生、监护人查看数据,也反馈给管理端,生成大数据,以此改进打造更人性化的产品。

(5)患者可以线上联系开药的医生,询问病情和查看医嘱,为医生和患者的后续联系搭建平台。医生可后续跟进患者的相关情况,添加医嘱和用药。

(6)可以查看相关的健康资讯,提升关于健康的小知识。

4.2 药盒模块设计

在参考了药片生产的数据,以直径分别为:0.7cm、0.9cm、1.3cm,以及一个长为1.5cm,宽为0.8cm的胶囊槽作为药盒装口的尺寸。在药槽下方加上能控制开合的挡板,利用简易机械装置的推出结构,在放药槽下方侧面开一个与药品侧面大小一致的洞,在后方用机械结构从洞中推出最下方的药品。药盒最终设计图和药盒内部构造图如图3和图4所示。

图3:药盒设计图

图4:药盒内部构造图

4.3 语音模块设计

先预设指令,将LD3320模块与STM32F103的串口4相连,初始化TIM4,设置初始定器时间为10MS,从接收到第一个字符开始启动定时器,当收到一个新字符时,计数器清空,直到定时器产生中断,如若不在接受到新数据,即为接收到一个完成的数据包。在中断函数中,用变量USART_RX_STA进行标记数据是否接受完成,再用CJSON解析收到的串口数据并用舵机显示动作代表药盒推出或者关上。

4.4 UI设计

本项目微信小程序开发的主基调为简单与舒适。所以将APP的主色调效果以绿色#17B68A和白色为主。绿色是健康的标志,象征着生机与希望,与设计面向慢性病患者的智能家居药盒的目标理念相符。而文字主要以黑色和灰色#797979搭配,使其看起来既简单而又舒适。

4.5 数据输入和消息提示反馈模块设计

智能药盒需要能够为用户提供消息提示,同时让用户能够实现数据的输入,这也是我们研究的重要部分。首先应该实现用户在按键模块能够进行一些简单设置和数据传输的功能,语音输入功能的实现也将在这部分通过Microsoft、Speech和API实现。剩余更加具体详细的数据传输和查询和设置选项将通过软件部分实现。同时药盒也需要能够接收多个设备的数据例如手表手环、电子体重秤、血压仪等等。消息提示反馈也需要可以链接多个设备让药盒、手机、手环等都可以收到提示和反馈,使用户随时可以接收到消息,提示这部分将使用。

4.6 提醒模块

今日提醒模块作为APP的首页,其作用是显示每日服药的时间、药品名和服药数量,让患者第一时间了解到今日的情况。如图5(a)今日提醒模块页面所示,在首页,APP主要界面向患者展示今日服药情况,并且能在相应的时间点显示药品名称和数量,提醒用户及时进行服药。患者可以一目了然地获取今日的服药情况,包括药品名称,服用的计量和时间,还有医嘱。点击添加,患者还能够自主新增所需要服用的新药品名称和计量等等信息,同时可以设置提醒闹钟时间,防止自己忘记服用。左上角的虚拟按键为返回首页,点击快速返回主页面。药品添加页面如图5(b)所示。

图5:首页

4.7 用药记录模块

用药记录模块主要记录今日用药情况是否完成,检测体重、心率、体温、血压和睡眠质量等等身体状态。因为医生咨询患者近期情况时,有些患者会因为记忆不清或者表述不明的问题,不能很好地将自己的情况展现给医生,造成了医患沟通方面的障碍。为了避免这种情况的发生,本微信小程序可以直接记录每天相关的身体信息,基于此些数值,生成近期的身体状况曲线记录图。这能够使得在定期会面医生沟通近期病情和身体情况的时候,极大地提高了沟通交流的效率,使得医生能够对病情做出更好的判断。用药记录模块页面如图6所示。

图6:用药记录页面

4.8 联系医生模块

联系医生页面如图7所示,APP的联系医生是实现APP主要功能的最重要的界面之一。联系医生模块的主要功能是可以提供医患之间的一个交流平台。患者可以通过手机在微信小程序线上向医生咨询一些比较小的身体问题,医生也能够及时给出意见反馈和用药建议。它可以根据患者的病情,选择不同医院的不同医生进行基于微信小程序平台交流的线上沟通,让患者可以更方便快捷的了解到自己的情况,与医生进行沟通反馈并即时调整用药情况。它不仅能够减少了路上通勤和医院排队等等过程时间,还使得医患之间的交流变得更加方便快捷。

图7:联系医生页面

4.9 健康资讯模块

健康咨询页面如图8所示,健康资讯模块将会展示近期医生发布的资讯。通过由医生或平台定期推送相关健康资讯,患者日常可以点击查看推送资讯,浏览相关健康资讯,不仅可以增加患者对于健康知识的了解,在平时生活中也能够多注意自己的身体状态,留意饮食和者运动相关方面的知识,及时地发现自身是否有出现异常情况。这种提高患者自身对于相关的健康知识的了解的方式,从根本上降低患者生病的概率和风险,提高身体素质和免疫能力。

图8:健康资讯页面

4.10 设置模块

设置模块页面如图9所示,在设置模块中,患者可以查看或修改设置、查看医生的反馈、可以选择监护人、查看历史健康报告、收藏重要文章等等操作。

图9:设置页面

5 结语

面向慢性病患者的智能家居药盒突破传统对于药盒的定义,意在打造更符合慢性病患者需求的智能家居药盒。项目针对慢性病患者对于日常服药过程中的一些问题,紧密结合患者对于药盒功能的需求,通过设计微信小程序,实现医患更密切方便的交流,通过药盒来对患者进行长期服药习惯进行有效干预和培养。在市场需求分析和调研后,小程序针对患者的平时服药过程中的一些体验,设计了对应的功能模块,不仅可以随时查看每日的服药提醒,更搭建了一个医患之间日常交流沟通的平台桥梁,实现患者与医生之间的沟通便利。该系统将对日常身体情况的记录曲线合成反馈算法优化,形成更加准确和合理的身体情况预测,对于患者未来身体的康复起到关键的作用。

猜你喜欢

药盒智能家居慢性病
肥胖是种慢性病,得治!
健康体检常见慢性病及指标异常流行病学分析
基于Zigbee的无线通信技术在智能家居中的应用
居民慢性病患病率十年增一倍
逆转慢性病每个人都可能是潜在的慢性病候选人!
红外光谱法鉴别维药盒果藤根药材模型研究
“七彩药盒”在艾滋病抗病毒药物治疗中的应用
旅行便携随身药盒
药盒计数器的设计方案及特点
基于LD3320的智能家居控制