基于以太网的智能护理床系统设计与实现*

2015-02-23 08:28常国权侯贵法郭晓波
电子器件 2015年4期

常国权,侯贵法,郭晓波

(安阳工学院计算机科学与信息工程学院,河南安阳455000)



基于以太网的智能护理床系统设计与实现*

常国权*,侯贵法,郭晓波

(安阳工学院计算机科学与信息工程学院,河南安阳455000)

摘要:为了实现对老人、失能人群进行更好的照顾和护理,减少护理人员的工作强度并提高护理效率和护理质量,采用STM32微控制器和ENC28J60以太网芯片设计了一种网络化的智能护理床系统,STM32微控制器通过对护理床传感器信号进行采集和处理,控制护理床系统实现自动接便、左右侧翻、交互式操作、自动报警及网络化管理与集中式监管等功能。经过实际测试证明,该系统安全可靠、操作简单、管理方便,获得了较好的效果。

关键词:护理床; STM32微控制器; ENC28J60; uIP协议栈; ACS712ELC

目前,我国已经逐渐步入老龄化社会,有关专家预计,今后50年内,我国老龄人口将达到总人口数的三分之一[1]。人口老龄化带来的问题之一就是老人的照顾和护理,而照顾和护理老人、残障人等失能人群给护理人员带来了极高的劳动强度和护理工作上的麻烦,特别是在一些医院、养老院、老年公寓等机构中对这些失能人群的护理更是一个突出的问题。传统的护理床和传统的护理方式已经无法满人们对护理质量和更加人性化护理功能的需求。

1 系统概述

为了实现对老人、失能人群进行更加有效的照顾和护理,设计了一种数控智能护理床系统,该系统采用32 bit STM32微控制器作为主控制器,并扩展了接便控制系统、左右侧翻控制系统、电流检测传感器、尿湿检测传感器、320×240液晶显示、存储器以及以太网等外围模块,既能联机操作又能脱机操作,可以对被护理人实现智能化护理。STM32微控制器检测尿湿传感器,并可控制电机带动接便装置实施接便,同时开启报警系统和LED指示灯发出提示,等待护理人员进行处理;被护理人可以通过按键控制护理床实现左右侧翻、仰卧起背、报警提示等操作;驱动电机配有电流检测芯片ACS712ELC,该芯片把检测到的电机运行电流转换为模拟信号送给STM32进行处理,以判断电机电流是否超出设定范围,对被护理人和电机起到安全保护作用;系统所有的参数信息都可以存储在EEPROM或Flash存储器模块中,而以太网模块则可以把系统接入到以太网网络中,从而可以实现网络化的信息采集和管理,这对于养老院、医院等护理机构实现集中式的护理工作特别有效,可以大大减少护理人员的工作强度、提高护理工作效率和护理质量。系统的总体结构示意图如图1所示。

图1 系统的总体结构示意图

2 系统硬件设计

2.1系统电源设计

由于系统采用的STM32微控制器、Flash存储器W25Q16和ENC28J60网络芯片等模块的工作电压是3.3 V,而液晶模块、继电器等模块的工作电压是5 V,系统需要3.3 V和5 V的电源电压,考虑到系统5 V电源需要的功率较大,系统电源设计采用了效率更高、功能更强的DC-DC转换器LM2576-5.0。LM2576系列是美国国家半导体公司生产的3 A电流输出降压开关型集成稳压电路,它内含固定频率振荡器和基准稳压器,并具有完善的保护电路,包括电流限制及热关断电路等,利用该器件只需极少的外围器件便可构成高效稳压电路[2]。而AMS1117则给功耗较低的STM32微控制器等模块提供3.3 V工作电压。自恢复保险丝F1和稳压二极管D3构成电压保护电路,当因其他原因致使输出电压超过5.3 V以上时,D3导通,从而使F1自动保护。D4~D7构成系统的LED状态指示灯。系统电源设计原理图如图2所示。

图2 系统电源设计原理图

2.2系统主控电路接口设计

综合成本、性能等各方面考虑,主控制器采用的是意法半导体公司生产的STM32F103RBT6微控制器,它是基于Cortex-M3核心的32 bit处理器,它具有高性能、低功耗、低成本等优点[3]。该芯片内部集成了丰富的模块,可以减少系统设计的复杂度[4]。系统的网络接口芯片采用的是美国微芯科技公司(Microchip Technology Inc)推出的兼容IEEE 802.3协议规范的一款以太网控制器芯片ENC28J60,它是专门针对嵌入式应用以太网解决方案而设计的。ENC28J60是28引脚独立以太网控制器,带有行业标准的高速SPI接口,并集成了介质访问控制器(MAC)和10 BASE-T物理层(PHY),支持全双工和半双工模式[5]。ENC28J60没有集成硬件的网络协议栈,需要移植专门的嵌入式TCP/IP协议栈才能工作。STM32和ENC28J60采用的是模拟SPI总线接口方式,只需选用STM32通用IO口和ENC28J60连接即可。EEPROM存储器AT24C16用来存储系统参数信息,如尿湿传感器阀值、电机电流阀值、网络芯片的MAC地址、IP地址等;而Flash存储器W25Q16的容量为2 Mbyte,则用来存储汉字字模库、图片库等数据,它们的工作电压都是3.3 V,采用模拟接口通讯,可以和STM32直接接口。J2是按键接口,按键采用电容式触摸按键芯片JR1610C来设计,JR1610C是I2C接口的16键专用检测传感器IC,具有使用寿命长、稳定可靠等优点[6]。J3是尿湿传感器接口,尿湿传感器采用橡胶垫封装交叉疏状电极的湿敏电阻传感器,当有尿湿时两电极之间电阻变小,它具有灵敏度高、恢复快、易于清理的特点,可通过RSE1对采集灵敏度进行微调,也可通过STM32程序进行调节。STM32使用自带的12位高精度A/D转换器完成对尿湿传感器采集、转换操作,并完成比较、控制等操作。系统主控电路设计原理图如图3所示。

图3 系统主控电路设计原理图

2.3电机控制系统电路设计

该护理床系统的自动接便控制系统、左右侧翻控制系统、仰卧起背控制系统是通过光耦和继电器共同控制直流电机实现正向和反向运动的。当光耦U7导通、U8截止时,继电器JDQ1的1引脚接+16 V,而继电器JDQ2的1引脚接地,此时电机M1实现正向转动;当光耦U7截止、U8导通时则电机M1反向转动,而当光耦U7、U8同时截止或导通时,电机因其两端的电压相同而停止转动。电机电流传感器采用的是ACS712ELC,它是Allegro公司生产的基于霍尔效应的线性电流传感器,ACS712ELC具有高绝缘电压、单电源操作、极低内部传导电阻等优点,可为工业、汽车、商业和通信系统中的交流或直流电流感测提供经济实惠的精密解决方案[7]。ACS712ELC电流传感器监测通过电机的电流值,并传递给STM32微控制器实时处理,当电机负载增大到一定程度,通过电机的电流值超过预先设定阀值时,STM32微控制器控制继电器使电机停止转动,从而起到安全保护作用。其中,D8和D9是保护二极管。C13~C16是高压电容,可以起到保护电路的作用。接便电机控制系统电路设计原理图如图4所示。左右侧翻和仰卧起背电机控制系统电路跟该图类似。

图4 接便电机控制系统电路设计原理图

3 系统软件设计

系统软件设计主要包括下位机软件设计、上位机前台和后台软件设计,下位机软件设计是系统的核心。下位机软件在MDK环境下采用C语言编写,采用ST-LINK仿真器通过SWD两线接口对程序进行调试与下载[8]。系统上电以后首先进行系统初始化工作,包括初始化系统时钟、初始化ADC、初始化IO口、初始化ENC28J60等操作,完成系统初始化操作之后,STM32微控制器从AT24C16存储器中读取系统信息并显示在320×240液晶屏幕上,如被护理人信息、系统当前的时间、日期、IP地址等系统的一些参数。之后系统通过一个引脚跳线来确定是否需要联网操作,如果工作在联机模式,则系统会用分配给它的IP地址去连接服务器,直到成功连接到服务器;不管是联机模式还是脱机模式,系统做完以上初始化操作后进入自动接便工作模式,用户可以通过按键实现模式的切换以及其他控制操作,如实现仰卧起背、左右侧翻一定的角度、按下启动报警器呼叫医护人员等操作,当尿湿传感器超过设定的阀值时,系统会启动自动接便控制系统进行接便,同时开启报警、指示系统,并把被护理人的相关信息发送到服务器,以便于护理人员及时进行护理操作。STM32微控制器实时检测相应控制电机的运行电流值,一旦某个电机电流超过规定的阀值一段时间(如1 s),STM32微控制器立即关闭相应继电器,使电机停止转动,起到安全保护作用。下位机软件设计流程图如图5所示。

图5 下位机软件设计流程图

以太网芯片ENC28J60可以实现把护理床系统接入到以太网网络中,从而可以实现网络化的信息采集和管理。要实现网络功能,就需要在STM32嵌入式系统上实现一个网络协议栈,这里在ENC28J60上移植了一个uIP协议栈,uIP协议栈是专门针对嵌入式应用设计的嵌入式TCP/IP协议栈[9],它去掉了完整的TCP/IP中不常用的功能,保留了网络通信必须使用的IP、TCP、ICMP、UDP、ARP等网络协议,保证了代码的通用性和结构的稳定性[10]。uIP协议栈支持C/S和B/S模式,系统采用的是C/S模式,即护理床系统作为客户端,PC机服务器的上位机软件作为服务器,通过服务器和下位机配合可以实现自动分配网络的MAC地址、IP地址等信息,这就增加了网络连接的灵活性以及方便对多个护理床进行有效的管理。

PC机软件是使用VC++6.0和SQL Server 2005数据库设计开发的,使用了网络Socket编程技术[11]。为了实现管理上的方便,上位机软件采用了前台和后台设计模式,后台即是C/S模式中的服务器,它跟SQL Server数据库都运行在服务器上,而前台跟多个护理床系统一样属于一个客户端。后台根据数据库中存储的IP地址等信息建立多个相应的线程,等待客户端的连接,并用一个专用的线程在一个固定端口监听新客户端的连接,当双方建立好网络连接之后,后台通过查询数据库给该新客户端分配另外一个固定的MAC地址和IP地址,并建立起一个相应的线程等待客户端的下一次连接,这种方式提高了系统的方便性和灵活性。后台负责把多个护理床客户端发送过来的数据存入到数据库,并负责把前台发给护理床客户端的数据转发给相应的客户端,而前台负责从数据库中实时读取被护理人的数据信息,并把被护理人的数据信息显示出来,随时可以监测被护理人的情况,并做出及时的处理。这对于养老院、医院等护理机构实现集中式的护理工作特别有效,可以大大减少护理人员的工作强度、提高护理工作效率和护理质量。客户端连接服务器测试效果如图6所示。服务器记录设备信息数据如图7所示。

图6 客户端连接服务器测试

图7 服务器记录设备信息数据

4 结论

以STM32微控制器为核心,并扩展以太网、尿湿传感器、电流传感器、液晶显示、报警提示以及电机控制等外围模块设计的智能护理床,可以对老人、失能人群进行更好的照顾和护理,系统除了具有其他护理床的护理功能外,还实现了网络采集和监管的功能,这对于养老院、医院等护理机构实现集中式的网络化管理提供了必要的手段,减少了护理人员的工作强度并提高了护理效率和护理质量。经过测试证明,该系统安全可靠、操作简单、管理方便,推广使用,会产生显著的社会效益。

参考文献:

[1]廖翼.智能护理床的发展现状与趋势[J].医疗装备,2013 (10):5-7.

[2]National Semiconductor Corporation.LM2576 Series SIMPLE SWITCHER 3A Step-Down Voltage Regulator[R].2004,8.

[3]STMicroelectronics.STM32F103xx datasheet[EB/OL].http://www.st.com/.

[4]陈贻国,钱金芳,潘日敏.一种基于STM32的航模直升机飞控系统设计[J].电子器件,2012,35(1):47-51.

[5]Microchip Technology Inc.ENC28J60 Data Sheet Stand-Alone Ethernet Controller with SPI Interface[P].2006,6.

[6]深圳市劲锐科技有限公司.16键电容式触摸按键JR1610C手册[EB/OL].http://www.jinrui-tech.com/.

[7]Allegro MicroSystems,Inc.ACS712ELC,Fully Integrated,Hall Effect-Based Linear Current Sensor with 2.1 kVRMS Voltage Isolation and a Low-Resistance Current Conductor[P].2008,10.

[8]王永虹,徐炜,郝立平.STM32系列ARM Cortex-M3微控制器原理与实践[M].北京:北京航空航天大学出版社,2008:102-105.

[9]张庆辉,马延立.STM32F103VET6和ENC28J60的嵌入式以太网接口设计[J].单片机与嵌入式系统应用,2012,12(9):23-25.

[10]刘宗铭,卓振泰,何明华.基于ENC28J60的以太网接口的设计与实现[J].电子器件,2013,36(6):919-923.

[11]孙鑫,余安萍.VC++深入详解[M].北京:电子工业出版社,2012:526-530.

常国权(1973-),男,汉族,河南省清丰县人,安阳工学院计算机科学与信息工程学院讲师,硕士研究生,研究方向为嵌入式系统技术应用与开发,changguoquan@126.com。

Design of Speech Processing Platform for Hearing Aids*

LIANG Ruiyu*,WANG Guowei,XUE Wanli,NI Ye
(School of Communication Engineering,Institute of Nanjing Technology,Nanjing 211167,China)

Abstract:Considering the characteristic of the hearing-aid with small size,and low power consumption,one development platform based on the real-time speech processing algorithm of embedded systems is designed.The hardware core of the platform is mainly composed of CortexA8 chip and FPGA chip,which contains four key modules:audio input module,internal clock module,FPGA control module and signal processing module.In order to improve the system processing efficiency,the multi-channel speech processing conversion module based on FPGA is designed.The speech enhancement algorithm of the hearing-aid based on Wiener filtering is designed and realized to verify the platform performance and a subjective test is conducted with good experiment results.

Key words:hearing aid; speech signal; Wiener filter; embedded system

doi:EEACC:722010.3969/j.issn.1005-9490.2015.04.036

收稿日期:2015-02-01修改日期:2015-03-05

中图分类号:TP368.2

文献标识码:A

文章编号:1005-9490(2015)04-0893-05

项目来源:2012国家自然科学基金项目(U1204613)