论文部分内容阅读
[摘 要 ]随着时代的发展和科学的进步,自动化、智能化深度融合应用于各个领域是以后发展的方向。基于STM32单片机的智能医疗巡诊送药系统,是以STM32最小核心板为主控制器,实现巡诊送药过程全自动化,无需过多的人为操作。此系统是服务行业为了提高配送效率的一次尝试。医护人员将药品放在巡诊送药智能机器人上,指派智能机器人进行自主配送,完成送药任务。
[关键词]STM32;自动化;智能化;智能机器人
[中图分类号]U463.4 [文献标志码]A [文章编号]2095–6487(2021)06–0–02
[Abstract]With the development of the times and the progress of science, the deep integration of automation and intelligence in various fields is the future direction of development. The intelligent medical round-trip medicine delivery system based on STM32 single-chip microcomputer is based on the STM32 minimum core board as the main controller, which realizes the fully automated round-trip medicine delivery process without excessive human operations. This system is an attempt by the service industry to improve the efficiency of distribution. The medical staff put the medicines on the patrol and delivery intelligent robots, and assign the intelligent robots to carry out autonomous distribution and complete the task of delivering medicines.
[Keywords]STM32; automation; intelligence; intelligent robot
医院是从事疾病诊断、治病救人的重要机构,随着近年来经济的飞速发展,越来越多人注意自身健康情况,养成“有病早治、无病预防”健康意识。正因如此,医院的人流量逐渐增多,医院的送药过程是一个复杂的系统,患者在住院过程需要注射和服用各种药物,每名患者因病情的不同,其需要的药品种类和用药量都各不相同。在目前医院系统送药模式中,是采取医护人员给患者诊断开出药方后,院方按照药方配好药物,指派护士在对应时间将药品送到患者的房间内,但一位护士常常需要到多个病房给患者送药,这需要护士记住送药的目标患者以及对应的药品,而且还要靠护士识别药品的能力,使得送药的过程中耗费大量的人力,还容易出错,一旦出错将导致患者病情加重,甚至造成更加严重的后果。本次设计的巡诊送药系统,不需要过多的操作,医护人员只要给它一个指令,巡诊送药智能机器人能够运行到达目的地,将目的患者的药品送往对应的病房交于患者手上,患者还能将自己所量得的体温,血压以及当天身体状况的感受,在系统中选择对应选项,再通过串口通信发送反馈给系统,既减少人力,又能避免出错,从而提高了效率。
1 系统总体设计
本系统是以STM32F103Z8T6单片机为主控处理器,使用电机、电机驱动、电机测速模块、红外循迹模块来实现送药、记录患者身体基本数据等功能,并且患者可以通过按键控制OLED屏显示身体基本数据,然后自动储存到STM32F103Z8T6单片机的flash中反馈给医护人员,同时,巡诊送药智能机器人上还可以安装收音和语音模块,简化操作难度。在保证药品完好无损地运送到患者手中的前提下,保证以最快的速度行驶,同时根据自身对患者状态的反馈,进行相应状况的语言播报提示。系统总体框如图1所示。
2 系统硬件设计
本系统由主控模块STM32F103C8T6单片机、红外循迹模块、按键模块、OLED屏、直流电机驱动模块、编码器电机模块和蜂鸣器组成,各模块在STM32F103C8T6单片机的控制下相互配合,实现智能巡诊送药的功能,本设计还具有自主控制,可以在系统运行途中强制停止,更改巡诊送药对象,在医护人员命令需要改变时对巡诊送药机器人实现选择控制,节省了医护人员的时间,还能达到更好地控制效果。
2.1 主控模块
本系统主控模块采用STM32F103C8T6单片机,该单片机属于中低端的32位ARM微控制器,该系列芯片是意法半导体(ST)公司出品,其内核是Cortex-M3,超低功耗的32位微处理器,支持2.0~3.6 V供电,I/O管口较多,兼容5 V电压,最高72 MHz工作频率,在存储器的0等待周期访问时可达1.25 DMips/MHZ,接口简单、程序模块化、工作速度快、地址空间大。
STM32F103C8T6最小系统由5个部分组成,分别是电源电路、复位电路,时钟源电路、BOOT启动电路、调试接口电路,直接使用3.3 V直流供电。晶振分为有源晶振和无源晶振,最高工作频率达到72 MHz,而本发明使用8 MHz的晶振来提供频率,电容起到滤波作用,滤除晶振波形中的高頻杂波,让晶振输出的震荡频率更加稳定。
2.2 显示模块OLED屏
本系统显示模块采用OLED屏,OLED是指有机电激发光二极管,由OLED显示屏和PCB加上铁架框组成,引角少,便于安装,具有自发光,色彩还原度高,可视角度广,视觉舒适度高,画面亮度柔和,显示字体清晰,价格便宜,再加上OLED显示屏上有详细介绍,患者能从中知道使用方法,让诊断医护人员在诊断室能即时了解患者身体的状况。配合按键使用可以更加方便快捷的找到需要的选项,更加具体的了解到患者的身体状况及各方面身体指标。 有机电致发光器件(OLED)属于低电压、高电流的双注人式发光器件,具有发光二极管的性质,所以有机电致发光器件又称之为有机电致发光二极管。当给器件施加一正向的外加偏压后,电子和空穴克服界面势垒,经由阴极和阳极注入到有机材料中,在外加电场的作用下迁移至发光层,在发光层内,当电子和空穴相遇时,由于库仑力的相互作用而形成暂态激子,由于暂态激子具有较高的能量处于不稳定态,所以一小部分激子可以通过晶格振动,将一部分能量传递给声子而消耗掉,另外的激子则发生复合,最终电子落入空穴,同时向外释放出一定的能量,而发光材料原子的最外层电子吸收这些能量后将处于激发态,当激发态的电子跃迁至基态时,向外辐射出光子,从而就产生了电致发光现象。
本系统设计采用OLED屏,是为了更加清楚地显示出患者身体信息,方便填写,同时带有光标“>”提示,方便患者选择体温等选项,同时数据会返回到医护人员电脑上。如果数据不确定,还可以从OLED屏上找到患者填写的数据,复位之后数据依然会保存。
OLED屏与按键相互配合使用,当语音模块运行不正常时,提供另一种选择方式,同时写入OLED屏的数据,当单片机复位时达到数据不丢失的效果。
2.3 直流电机驱动模块
在电机驱动模块方面,考虑了L289N和DRV8833,相比之下,L289N体积较大,发热严重,较易烧坏,电机功率较低,而DRV8833具有内置过热保护和可调限流保护电路,电机功率较高,因为考虑到运送更种药品,重量可能偏大,所以最终选择了DRV8833直流电机驱动模块。
该模块芯片中共有2个全H桥。因此最多可以同时驱动2个直流电机或1个步进电机。使2个10 K减速比的电机正常工作,达到电机所需要的电压,从而为巡诊送药机器人提供更充足的动力。
2.4 红外循迹避障模块
巡诊送药机器人要实现自动避障的功能需要红外避障模块,红外避障模块有3个组成部分,分别是发射管、接收管和LED灯,发射管发出一定频率的红外线,模块感应到传感器反射回来的红外光时,红指示灯亮,输出低电平;没有红外光时,指示灯不亮,输出高电平。以检测黑线为例,如果传感器检测到黑线,红外光无法反射回来则模块红指示灯熄灭,同时小板对应的OUT口输出高电平;如果未检测到黑线,红外光可以反射回来则模块红指示灯亮,小板对应的OUT口输出低电平。其中需要注意一种特殊情况,也就是说当测量物体超出测量范围时,此时红指示灯熄灭,OUT口输出高电平。
利用红外模块可以使巡诊送药机器人检测到前方有无障碍物,对巡诊送药机器人速度进行加减速,判断巡诊送药机器人是否需要停止,是否繼续前进,相当于巡诊送药机器人的“眼睛”,另外医院的灯光已达到红外循迹对于光线的要求。
2.5 编码器电机模块
编码器电机可以用来判断旋转方向和测量旋转速度。用户可根据显示屏上转速的大小和方向选择所需的转速。利用OLED屏和按键通过串行通信向巡诊送药机器人发送反馈来实时控制速度。这样可以做到实时改变运行速度方向,同时还可以选择患者送药顺序。
同时编码器电机自带编码器,在转动的同时检测电机速度及方向,并发送给单片机,单片机将测量值与期望值比较,控制驱动模块,使电机实现加速或减速,达到PID自动控制小车速度的效果,从而让巡诊送药机器人实现按给定的速度运行。
3 系统软件设计
本系统采用PID控制原理,成比例地反映控制系统的偏差信号,偏差一旦产生,立即产生控制作用以减小偏差,比例控制器的输出u(t)与输入偏差e(t)成正比,能迅速反映偏差,从而减小偏差,但不能消除静差。偏差存在,才能使控制器维持一定的控制量输出,因此比例控制器必然存在着静差。由偏差理论知,增大虽然可以减小偏差,但不能彻底消除偏差。PID控速减小偏差后基本上可以做到实际速度与设定的期望速度一致。
在整定PID控制器参数时,可以根据控制器的参数与系统动态性能和稳态性能之间的定性关系,用实验的方法来调节控制器的参数。在调试中最重要的问题是在系统性能不能令人满意时,知道应该调节哪一个参数,该参数应该增大还是减小。
本系统的部分源代码如下:
intIncremental_PI_A(intaggregately,intTarget)
{staticintBias,Pwm,Last_bias;
Bias=Target-aggregately;
Pwm+=Kp*(Bias-Last_bias)+Ki*Bias;
Last_bias=Bias;
if(Pwm>=1500)
{Pwm=1500;}
if(Pwm<=0)
{Pwm=0;}
returnPwm;}
4 结束语
智能巡诊送药系统在制作完成之后,预期的效果是针对患者巡诊模式,实现医患之间零接触,并且能够将患者的常规检测信息在系统之间信息共享的同时做到信息传输的零延时,保证信息更新的实时性。智能巡诊送药系统根据地面的电磁引导线可以自动行驶运送药品,并且根据具体的路线情况调整自身速度,在保证药品完好无损的运送到患者手中的前提下,保证以最快的速度行驶,同时根据自身对患者状态的反馈,进行相应状况的语言播报提示。
参考文献
[1] 陈海峰,陈盛闯.基于单片机的OLED显示系统设计与实现[J].电子设计工程,2015,23(20):137-140.
[2] 赵亮.跟我学51单片机(一)——单片机最小系统组成与I/O输出控制[J].电子制作,2011(1):73-77.
[关键词]STM32;自动化;智能化;智能机器人
[中图分类号]U463.4 [文献标志码]A [文章编号]2095–6487(2021)06–0–02
[Abstract]With the development of the times and the progress of science, the deep integration of automation and intelligence in various fields is the future direction of development. The intelligent medical round-trip medicine delivery system based on STM32 single-chip microcomputer is based on the STM32 minimum core board as the main controller, which realizes the fully automated round-trip medicine delivery process without excessive human operations. This system is an attempt by the service industry to improve the efficiency of distribution. The medical staff put the medicines on the patrol and delivery intelligent robots, and assign the intelligent robots to carry out autonomous distribution and complete the task of delivering medicines.
[Keywords]STM32; automation; intelligence; intelligent robot
医院是从事疾病诊断、治病救人的重要机构,随着近年来经济的飞速发展,越来越多人注意自身健康情况,养成“有病早治、无病预防”健康意识。正因如此,医院的人流量逐渐增多,医院的送药过程是一个复杂的系统,患者在住院过程需要注射和服用各种药物,每名患者因病情的不同,其需要的药品种类和用药量都各不相同。在目前医院系统送药模式中,是采取医护人员给患者诊断开出药方后,院方按照药方配好药物,指派护士在对应时间将药品送到患者的房间内,但一位护士常常需要到多个病房给患者送药,这需要护士记住送药的目标患者以及对应的药品,而且还要靠护士识别药品的能力,使得送药的过程中耗费大量的人力,还容易出错,一旦出错将导致患者病情加重,甚至造成更加严重的后果。本次设计的巡诊送药系统,不需要过多的操作,医护人员只要给它一个指令,巡诊送药智能机器人能够运行到达目的地,将目的患者的药品送往对应的病房交于患者手上,患者还能将自己所量得的体温,血压以及当天身体状况的感受,在系统中选择对应选项,再通过串口通信发送反馈给系统,既减少人力,又能避免出错,从而提高了效率。
1 系统总体设计
本系统是以STM32F103Z8T6单片机为主控处理器,使用电机、电机驱动、电机测速模块、红外循迹模块来实现送药、记录患者身体基本数据等功能,并且患者可以通过按键控制OLED屏显示身体基本数据,然后自动储存到STM32F103Z8T6单片机的flash中反馈给医护人员,同时,巡诊送药智能机器人上还可以安装收音和语音模块,简化操作难度。在保证药品完好无损地运送到患者手中的前提下,保证以最快的速度行驶,同时根据自身对患者状态的反馈,进行相应状况的语言播报提示。系统总体框如图1所示。
2 系统硬件设计
本系统由主控模块STM32F103C8T6单片机、红外循迹模块、按键模块、OLED屏、直流电机驱动模块、编码器电机模块和蜂鸣器组成,各模块在STM32F103C8T6单片机的控制下相互配合,实现智能巡诊送药的功能,本设计还具有自主控制,可以在系统运行途中强制停止,更改巡诊送药对象,在医护人员命令需要改变时对巡诊送药机器人实现选择控制,节省了医护人员的时间,还能达到更好地控制效果。
2.1 主控模块
本系统主控模块采用STM32F103C8T6单片机,该单片机属于中低端的32位ARM微控制器,该系列芯片是意法半导体(ST)公司出品,其内核是Cortex-M3,超低功耗的32位微处理器,支持2.0~3.6 V供电,I/O管口较多,兼容5 V电压,最高72 MHz工作频率,在存储器的0等待周期访问时可达1.25 DMips/MHZ,接口简单、程序模块化、工作速度快、地址空间大。
STM32F103C8T6最小系统由5个部分组成,分别是电源电路、复位电路,时钟源电路、BOOT启动电路、调试接口电路,直接使用3.3 V直流供电。晶振分为有源晶振和无源晶振,最高工作频率达到72 MHz,而本发明使用8 MHz的晶振来提供频率,电容起到滤波作用,滤除晶振波形中的高頻杂波,让晶振输出的震荡频率更加稳定。
2.2 显示模块OLED屏
本系统显示模块采用OLED屏,OLED是指有机电激发光二极管,由OLED显示屏和PCB加上铁架框组成,引角少,便于安装,具有自发光,色彩还原度高,可视角度广,视觉舒适度高,画面亮度柔和,显示字体清晰,价格便宜,再加上OLED显示屏上有详细介绍,患者能从中知道使用方法,让诊断医护人员在诊断室能即时了解患者身体的状况。配合按键使用可以更加方便快捷的找到需要的选项,更加具体的了解到患者的身体状况及各方面身体指标。 有机电致发光器件(OLED)属于低电压、高电流的双注人式发光器件,具有发光二极管的性质,所以有机电致发光器件又称之为有机电致发光二极管。当给器件施加一正向的外加偏压后,电子和空穴克服界面势垒,经由阴极和阳极注入到有机材料中,在外加电场的作用下迁移至发光层,在发光层内,当电子和空穴相遇时,由于库仑力的相互作用而形成暂态激子,由于暂态激子具有较高的能量处于不稳定态,所以一小部分激子可以通过晶格振动,将一部分能量传递给声子而消耗掉,另外的激子则发生复合,最终电子落入空穴,同时向外释放出一定的能量,而发光材料原子的最外层电子吸收这些能量后将处于激发态,当激发态的电子跃迁至基态时,向外辐射出光子,从而就产生了电致发光现象。
本系统设计采用OLED屏,是为了更加清楚地显示出患者身体信息,方便填写,同时带有光标“>”提示,方便患者选择体温等选项,同时数据会返回到医护人员电脑上。如果数据不确定,还可以从OLED屏上找到患者填写的数据,复位之后数据依然会保存。
OLED屏与按键相互配合使用,当语音模块运行不正常时,提供另一种选择方式,同时写入OLED屏的数据,当单片机复位时达到数据不丢失的效果。
2.3 直流电机驱动模块
在电机驱动模块方面,考虑了L289N和DRV8833,相比之下,L289N体积较大,发热严重,较易烧坏,电机功率较低,而DRV8833具有内置过热保护和可调限流保护电路,电机功率较高,因为考虑到运送更种药品,重量可能偏大,所以最终选择了DRV8833直流电机驱动模块。
该模块芯片中共有2个全H桥。因此最多可以同时驱动2个直流电机或1个步进电机。使2个10 K减速比的电机正常工作,达到电机所需要的电压,从而为巡诊送药机器人提供更充足的动力。
2.4 红外循迹避障模块
巡诊送药机器人要实现自动避障的功能需要红外避障模块,红外避障模块有3个组成部分,分别是发射管、接收管和LED灯,发射管发出一定频率的红外线,模块感应到传感器反射回来的红外光时,红指示灯亮,输出低电平;没有红外光时,指示灯不亮,输出高电平。以检测黑线为例,如果传感器检测到黑线,红外光无法反射回来则模块红指示灯熄灭,同时小板对应的OUT口输出高电平;如果未检测到黑线,红外光可以反射回来则模块红指示灯亮,小板对应的OUT口输出低电平。其中需要注意一种特殊情况,也就是说当测量物体超出测量范围时,此时红指示灯熄灭,OUT口输出高电平。
利用红外模块可以使巡诊送药机器人检测到前方有无障碍物,对巡诊送药机器人速度进行加减速,判断巡诊送药机器人是否需要停止,是否繼续前进,相当于巡诊送药机器人的“眼睛”,另外医院的灯光已达到红外循迹对于光线的要求。
2.5 编码器电机模块
编码器电机可以用来判断旋转方向和测量旋转速度。用户可根据显示屏上转速的大小和方向选择所需的转速。利用OLED屏和按键通过串行通信向巡诊送药机器人发送反馈来实时控制速度。这样可以做到实时改变运行速度方向,同时还可以选择患者送药顺序。
同时编码器电机自带编码器,在转动的同时检测电机速度及方向,并发送给单片机,单片机将测量值与期望值比较,控制驱动模块,使电机实现加速或减速,达到PID自动控制小车速度的效果,从而让巡诊送药机器人实现按给定的速度运行。
3 系统软件设计
本系统采用PID控制原理,成比例地反映控制系统的偏差信号,偏差一旦产生,立即产生控制作用以减小偏差,比例控制器的输出u(t)与输入偏差e(t)成正比,能迅速反映偏差,从而减小偏差,但不能消除静差。偏差存在,才能使控制器维持一定的控制量输出,因此比例控制器必然存在着静差。由偏差理论知,增大虽然可以减小偏差,但不能彻底消除偏差。PID控速减小偏差后基本上可以做到实际速度与设定的期望速度一致。
在整定PID控制器参数时,可以根据控制器的参数与系统动态性能和稳态性能之间的定性关系,用实验的方法来调节控制器的参数。在调试中最重要的问题是在系统性能不能令人满意时,知道应该调节哪一个参数,该参数应该增大还是减小。
本系统的部分源代码如下:
intIncremental_PI_A(intaggregately,intTarget)
{staticintBias,Pwm,Last_bias;
Bias=Target-aggregately;
Pwm+=Kp*(Bias-Last_bias)+Ki*Bias;
Last_bias=Bias;
if(Pwm>=1500)
{Pwm=1500;}
if(Pwm<=0)
{Pwm=0;}
returnPwm;}
4 结束语
智能巡诊送药系统在制作完成之后,预期的效果是针对患者巡诊模式,实现医患之间零接触,并且能够将患者的常规检测信息在系统之间信息共享的同时做到信息传输的零延时,保证信息更新的实时性。智能巡诊送药系统根据地面的电磁引导线可以自动行驶运送药品,并且根据具体的路线情况调整自身速度,在保证药品完好无损的运送到患者手中的前提下,保证以最快的速度行驶,同时根据自身对患者状态的反馈,进行相应状况的语言播报提示。
参考文献
[1] 陈海峰,陈盛闯.基于单片机的OLED显示系统设计与实现[J].电子设计工程,2015,23(20):137-140.
[2] 赵亮.跟我学51单片机(一)——单片机最小系统组成与I/O输出控制[J].电子制作,2011(1):73-77.