医疗电子
从历史上看,可穿戴设计很难进行原型设计。核心问题是规模问题。大多数现成的开发板和系统都是针对尺寸和重量并不重要的台式环境而设计的。
较大的电路板尺寸使制造商可以使用相对简单的PCB生产线轻松提供低成本的开发支持。相对大量的电路板空间也支持传统的插头连接器以进行扩展。这些插头连接器上的大引脚尺寸和间距使得易于使用一次性面包板和极低成本的原型制作服务作为自定义I / O扩展。
虽然可以使用可以执行可穿戴设备功能的面向台式开发系统来构建功能强大的系统,但是对于试用用户和早期采用者可以使用的系统的需求而言却失败了,就好像它是真正的产品一样。当涉及到可用性和其他重要的剧院内测试和实验时,不舒服和沉重的健身可穿戴设备将无法实现。我们需要的是一个平台,它提供了传统开发板的大多数(如果不是全部)灵活性,但其形状因素对于可穿戴设备设计是有意义的。
MikroElektronika的 Hexiwear 等平台提供了一种在真实的用户环境中构建应用程序并对其进行测试的方法。Hexiwear平台的核心是以开放式开发环境支持的可穿戴形式提供集成的MCU和外围设备解决方案。更重要的是,它采用紧凑型六边形模块的外形封装,可轻松连接到腕带,用作支持物联网的智能手表。或者,它可以安装在吊坠环中,用作胸针或整合到衣物中。
外形尺寸也适用于更广泛的智能家居环境,可以将其作为可拆卸元件部署在壁挂式模块或更大的机械系统中。以Hexiwear为基础的智能家居项目包括智能浴室秤,可将测量的重量传输至用户的智能手机,门铃能够远程向房主报告活动并向访客显示自定义信息,以及智能冰箱磁铁能够在Hexiwear的展示中向用户报告内部温度。
Hexiwear平台基于Kinetis K64F MCU,采用ARM®Cortex®-M4内核,运行频率高达120 MHz,支持多种外设,包括ADC,DAC,定时器和串行接口(图1)。
可穿戴设备包括蓝牙低功耗(BLE)SoC和8个针对健康和其他典型物联网应用而优化的传感器,例如六轴加速度计和磁力计,三轴陀螺仪,压力传感器,温度和湿度传感器以及光学心脏速率传感器。它还包括一个1.1英寸的OLED彩色显示屏。
大多数板载外设使用I 2 C总线进行通信。可以通过MikroBus扩展,安排为两个平行的八位头连接器。这允许连接MikroElektronika的Click板以及自定义扩展模块和其他供应商的模块。MikroBus连接器引脚间距设计为与标准100密耳间距面包板兼容,可在自定义I / O模块上轻松进行初始原型设计。
MikroBus可以访问多个串行I / O总线,并提供模拟,PWM和中断引脚。除I 2 C外,还可通过SPI和UART接口进行连接。已经可用的Click模块包括GPS接收器,RFID阅读器,GSM收发器,甚至是基于线圈天线的闪电传感器。
Hexiwear上的运动传感器系列使平台能够进入可穿戴设备和家庭之外的应用。加速度计,陀螺仪,磁力计和压力传感器的组合使得可以创建具有十个自由度的惯性测量单元,用于无GPS的航空导航。一位用户已应用此功能为航拍无人机和四轴飞行器创建机载飞行监控系统。Hexiwear小巧轻便,无人驾驶。该应用程序通过提供有关无人机位置和航向的准确反馈,支持在能见度较差的情况下飞行。当与传感器融合技术一起使用时,不同的运动传感器有助于补偿其他运动传感器。压力传感器有助于改善高度的准确报告。
诸如Hexiwear中使用的NXP FXOS8700CQ之类的加速度计基于MEMS结构。单维加速度计使用附接到电极的柔性悬臂,其保持能够相对于第二电极移动的质量块。整体结构充当电容器。随着质量移动,电容板之间的距离改变,导致电容的变化。通过跟踪这些电容变化,传感器接口可以检测沿悬臂运动方向的加速度变化。三个正交安装,提供三轴检测。
加速度计的移动重量振荡的趋势导致电容的短期变化和对振动的敏感性。另一方面,陀螺仪基于振动的微机械臂,当设备旋转时,该机械臂记录增大的振幅。像一个依赖于旋转元件的更大的陀螺仪,测量对短期冲击和外部振动相对不敏感。然而,陀螺仪易于漂移并且对温度变化更敏感。
陀螺仪和加速度计的读数以及FXOS8700CQ中的磁力计的组合提供了消除大部分运动噪声源的能力。在相对简单的传感器融合应用中,互补的一对滤波器(图2)可以消除每种传感器类型的大部分噪声。例如,采用角度数据计算倾斜角度,低通滤波器有助于消除转换为角度坐标的加速度计读数的短期误差,高通滤波器消除陀螺仪的长期漂移和温度波动。与磁力计读数的比较可以提供方向的确认。
这些传感器可以应用和组合,用于使用Hexiwear开发的可穿戴应用。一个例子是老年人的跌倒监视器。另一款是个人心脏监护仪,适合那些希望改善健康状况的人。这两种应用都证明了传感器融合的有效性,以及多种传感器类型产生可靠输出的能力。
如果我们将上述无人机中使用的传感器融合技术应用于跌落探测器,则可以构建一种传感器,由于加速度计输入端出现短期噪声,因此不太可能容易引起误报警。如果佩戴在皮带或手腕上,陀螺仪将在跌倒期间检测到身体或手臂的旋转,并且加速计将记录突然增加,然后突然停止并且一段时间的小动作。总而言之,软件可以识别跌倒的模式。许多研究论文已经研究了跌落的典型运动曲线,可用于在跌倒探测器应用中获得适当的阈值。基于从跌倒测试中捕获的运动数据的机器学习技术已被证明有助于开发更强大的检测技术。
从重大充血性心脏事件中恢复的人可以以类似的方式使用部署在Hexiwear中的传感器。在这种情况下,输入将包括来自Maxim MAX30101心率传感器的信号。轻度运动对于从充血性心力衰竭中恢复非常重要,但是不要过度运动同样重要。通过跟踪运动结合心率,可穿戴应用可以帮助确定患者是否满足他或她的运动目标并且不会过度压力。针对运动数据的心率异常读数可用于触发由主机智能手机向健康专业人员中继的警报。可以类似地利用心率数据来增强跌倒检测器,以帮助确定事件之后佩戴者的状态。
在使用Hexiwear构建可穿戴设备或其他传感器驱动用途的应用程序时,硬件I / O,处理器和传感器只是等式的一部分。为了简化应用程序的创建,该平台由完整的开源工具链和库提供支持,这些工具链和库可通过GitHub在线存储库和ARM的mbed代码库等获得。这些库包括用于云连接的模块,提供对诸如WolkSense等服务的访问。
Hexiwear开发套件的核心是恩智浦Kinetis软件开发套件(SDK)。这是一个基于Eclipse和GNU代码库的工具链。IDE基于Eclipse,GNU编译器集合(GCC)和GNU调试器(GDB)支持Eclipse。下载并安装Kinetis工具后,用户可以从GitHub Hexiwear存储库添加模块。另一个开发环境是Zerynth,它为熟悉Python的程序员提供了一种开始为模块开发的方法。
GitHub下载包括示例引导加载程序和项目文件,可用作目标应用程序的模板。通常,通过Hexiwear扩展坞(图3)启用下载和硬件支持,通过USB从mbed下载的驱动程序处理通过USB进行通信。
GitHub提供的示例代码模块通常使用简单的循环main()结构。应用程序继续执行main()函数中的每个语句,然后循环回到开头。防止电池供电平台过度活动的常用策略是在main()循环的末尾插入wait(x)函数。即使有这么简单的结构,健康监测可穿戴应用的核心就在那里。但是,Hexiwear GitHub存储库上的许多模块支持的操作系统(如mbed OS或FreeRTOS)提供了更灵活的选项,能够实例化多个协作线程,这些线程可以由来自各种外围设备的硬件中断触发。
物联网可穿戴设备的典型应用是活动监视器,它通过BLE定期向智能手机或平板电脑报告状态。在一个简单的main()结构中,组织应用程序的最简单方法是在每次传递中轮询感兴趣的传感器,过滤数据然后缓冲已处理的值。尽管在每次通过时通过BLE进行数据通信是可行的,但这可能会快速耗尽电池并且在很大程度上是不必要的。一种方法是实现全局计数器变量并在每次传递时缓冲队列中的数据,直到达到计数器阈值。一个简单的if-then语句可以确定是否触发了BLE访问函数。这将从缓冲区收集数据,重新建立与智能手机的连接并发送数据。
可以通过Hexi_KW40Z.h头文件中定义的C ++类访问BLE模块。这提供了许多通过BLE发送和接收数据的功能。此类的默认版本包括为传输运行状况数据以及天气和运动传感器数据而设置的数据包定义。
在由mbed等操作系统调解的多线程实现中,应用程序可以分为多个线程。在健康监视器中,典型的结构是将一个或多个传感器记录线程馈送到处理和过滤线程中。然后一个单独的线程负责BLE通信。一种策略是使用通过回调函数(例如lptmr_Callback())访问的计时器中断来定期唤醒线程。BLE通信线程的周期通常比传感器记录线程的周期长。这些线程可以缓冲其数据,以便过滤线程仅与BLE通信线程一样频繁地运行。
但是,在监视器需要响应异常数据而发出警报的情况下,尽可能快地过滤和处理数据可能很重要。在这种情况下,响应于由处理线程识别的触发条件,可能需要单独的BLE线程来发出警报消息。或者,可以设置BLE线程在唤醒以发送警报和数据时使用的标志。选择取决于智能手机应用程序需要响应的速度。在许多情况下,BLE定时器间隔将足够短以支持后一种架构。
结论
通过使用额外的Click模块,可以容易地扩展功能以支持例如可能与佩戴者相关的湿度和其他环境因素的检测。因此,Hexiwear平台为各种物联网应用提供灵活且易于使用的支持。不仅适用于可穿戴设备,也适用于其他类型的面向传感器的设备。
全部0条评论
快来发表一下你的评论吧 !