整理自己的项目有个著名的STAR法则:Situation,Task,Action,Result。 

即 

situation:

第一步明确相关经历及任务的背景:是什么类型的;怎样产生的;当时情况是怎样的。

Task:

第二部明确在相关经历及任务中:要达到什么目标;完成过程中涉及什么环节及流程。

Action:

第三步明确:针对这样的情况进行的分析;决定的行动方式及采取的步骤。

Result:

第四步描述结果怎样。

依据上边的理论对自己最近的项目做一个整理,需要的小伙伴可以参照整理下自己的项目


整体描述:帕金森康复治疗仪,是一款旨在缓解帕金森病人静止性震颤的可穿戴设备。

设备由气动肌肉,惯性传感器,嵌入式处理器,便携式气泵与护臂主体组成。

气动肌肉放置于护臂夹层之中,当传感器检测到病症出现,会通过处理器进行数据运算从而控制肌肉充放气来形成对震颤的抑制作用。在检测到患者的主动运动倾向时,会调整对应的气动肌肉从而减小对正常运动的阻滞效果。并且设备设置有震颤记录功能,可通过无线传输至上位机完成对患者的病情跟踪。与同类器械相比,主体采用气动肌肉会在佩戴舒适度,安全性等方面有较大优势。

预计项目目标是发病响应速度在1s左右,将患者4-5Hz的震颤幅度降低70%以上,从而在帕金森病人的日常生活与病情康复中发挥有益作用。

situation(情景):

项目是来自中科院苏州医工所的合作项目,目的是研发一款缓解帕金森病人静止性震颤的可穿戴设备。由于之前有过从事嵌入式开发的经历,加上做过一些人体运动方面的仿真,因此任务分配给我。当今帕金森病人的发病率很高,并且高频率震颤已经严重影响到了病人的生活,因此项目具有实际应用价值。

Task(任务):

主要负责的是软件开发与算法设计这一块。设备由气动肌肉,惯性传感器,嵌入式处理器,便携式气泵与护臂主体组成。气动肌肉及其制造是由实验室的师兄配合3D打印完成的,因此我的主要工作就是能把这个硬件系统搭建起来并且在上边能实现相应的功能。

主要分为以下几块工作内容:

数据采集及处理部分

上位机通讯部分

肌肉控制部分

Action(行动)

数据采集部分:

采用的是一款基于MPU6050的六轴传感器,通过串口可以输出实时的数据。之后通过USB口传入到三星ARM开发板中。开发板搭载的是linux系统,因此可以直接运行C++或Python程序。根据说明书的转换公式将数据转成正常格式,之后再由平滑滤波算法去除一些噪声干扰,随后对频率进行判断,对信号进行频率分离后传输至控制单元进行处理。

上位机通讯部分:

采用同样搭载linux系统的上位机进行通讯,安装ros kinetic机器人操作系统,利用消息的传递机制进行分布式节点传输。在开发板建立一个信号的topic并publish,在上位机进行接收。采用rospy编程库,至此可实现同一局域网下上位机到开发板的数据实时传输与分析。

肌肉控制部分:

由于开发板没有自带的I/O接口,因此采用Arduino作为气动肌肉的驱动板。具体实现是通过开发板串口发送肌肉的信号,之后经过Arduino解算成具体I/O口的高低电平信号,然后通过电磁阀的充放气来调整气动肌肉的气体进出从而控制肌肉的收缩与舒张。

Result(结果):

当病人发病时控制肌肉充放气来形成对震颤的抑制作用。在检测到患者的主动运动倾向时,会调整对应的气动肌肉从而减小对正常运动的阻滞效果。并且设备设置有震颤记录功能,可通过无线传输至上位机完成对患者的病情跟踪。与同类器械相比,主体采用气动肌肉会在佩戴舒适度,安全性等方面有较大优势。项目发病响应速度在1s左右,将患者4-5Hz的震颤幅度降低70%以上,从而在帕金森病人的日常生活与病情康复中发挥有益作用。


另外一个项目的常见问题就是项目中遇到的难点与如何解决,下面整理了一下:

1 肌肉的响应速度慢

之前设计的是对于震颤进行相反运动来进行抵消作用,后来发现气动肌肉的响应频率大概在5Hz左右,加上充放气的时间,实际作业中远远没有满足实时响应的要求,因而采用类似血压计原理的束缚力作用,经过测试,确实可以降低患者抖动的幅度。

2 患者的正常行为受到束缚

在气动肌肉充气时,会让病人的正常运动受到阻滞。因此采用传感器检测加速度中的低频信号,在检测到有持续的低频信号产生时,控制对应的气动肌肉进行舒张从而减小对病人的阻滞作用。

3 信号传输的不稳定

wifi信号的不稳定:由于采用公共路由器局域网,容易产生不稳定的现象。后采用独立的路由器解决这个问题。

串口传输的不稳定,采用握手机制加校验位进行优化。

4 检测的误差

有时候病人会因正常动作触发设备,因此采用类似于信号量的机制。当信号量达到一定的值时,再启用设备。

5 指标的设定问题

开始将指标设定为抑制震颤的频率,但是会出现抑制震颤之后设备频繁开闭的状态,而储气罐存储的气体量有限,后来将指标调整为抑制抖动的幅度,成功解决了这个问题。

6 开发板的遥控问题

采用SSH解决。

参考链接:https://blog.csdn.net/u___u/article/details/70054223