基于富芮坤FR3068x-C的医用冰帽带语音与音乐治疗功能的系统架构设计,是一个结合低功耗、高安全性无线MCU(微控制器单元)、制冷技术、具有音频治疗功能以及用户交互的复杂系统。结合上位机可以实时温控数据分析。医用冰帽主要用于对人体头部进行降温,以减少大脑的耗氧和耗能,保护脑细胞,减少因供氧、供能不足而出现的脑细胞损害。在抢救复苏过程中,使用医用冰帽可以保护脑细胞,减少脑细胞的损害。此外,医用冰帽还常用于高热患者的物理降温,尤其是对于中枢性发热的患者,药物降温效果较差时,通过医用冰帽的物理降温能起到一定的退热作用。

一、系统概述

   本系统设计一款集成了医用冰帽的降温功能、语音提示与音乐治疗功能的智能医疗设备。由箱体和冰帽两部分组成,两者通过蛇形软管连接。箱体内包含制冷系统、控制和测温系统通过富芮坤FR3068x-C无线MCU作为核心控制器,实现对冰帽制冷系统的控制、麦克风采集,音频输出治疗以及与用户交互的界面处理。

二、系统架构


框架结构.png

1. 硬件架构

· 核心控制器:富芮坤FR3068x-C无线MCU,负责系统的主要逻辑控制、数据通信及音频处理。FR3068x-C系列芯片内置了蓝牙BR/EDR/BLE的收发器和控制器。支持蓝牙音频传输,可以实现蓝牙音频的接收和发送功能。

· 制冷系统:包括冷凝剂、冷却元件、温度传感器及制冷循环控制模块,实现医用冰帽的降温功能。

· 传感器采集:FR3068具有12 位 ADC(模拟数字转换器),总计 10 个外部模拟输入,最大支持 16 NTC 10K采集。

                      为了解决IO,才有DS18B20,一个IO通过单总线可以采集N组DS18B20传感器数据。

· 音频系统:音频解码器、功率放大器、扬声器,用于播放语音提示和音乐治疗音频。

· 用户交互界面:FTF高青RGB屏,按键面板、LED指示灯,提供用户操作接口及状态反馈。

· 电源管理:电池或外接电源适配器,一路ADC实时监测锂电池电压,有无市电介入。为整个系统提供稳定的电源供应。

· 通信模块:蓝牙模块(利用FR3068x-C内置的蓝牙BLE功能),实现与智能手机或其他智能设备的无线连接。

2. 软件架构:

· 操作系统:基于实时操作系统(RTOS),提供多任务处理、资源管理等功能。

· 设备驱动程序:MCU驱动程序、制冷系统驱动程序、音频系统驱动程序等,实现硬件抽象及底层控制。

· 温度控制模块:负责监测温度传感器数据,引入PID模组控制,根据预设温度范围精确控制制冷系统的开关及制冷强度。

· 音频处理模块:FR3068x-C系列芯片内置了高效的音频解码器,能够支持多种音频格式的解码,可以本地可以支持音频文件的解码、播放控制及音量调节,实现语音提示和音乐治疗的音频输出。FR3068x-C系列芯片内置了蓝牙BR/EDR/BLE的收发器和控制器,也可无线接受PC端音频

· 用户交互模块:处理用户输入按键输入,更新用户界面显示,提供用户友好的交互体验。

· 通信模块:实现与智能手机或其他智能设备的蓝牙连接,支持数据同步、远程控制等功能。

· 安全管理模块:FR3068x-C内置 AES 硬件加速器可以实现 AES (Advanced Encryption Standard)编码算法,即 Rijndael 算法。支持 6 种结构模式(ECB、 CBC、 CFB、 OFB、 CTR 和 PCBC)模式,能够进行加、 解密双向运算,覆盖三种不同长度的密钥,分别是 AES-128、 AES-192、 AES-256 AES数据加密、实现用户身份验证等功能,确保系统的安全性。

· 基于QT开发上位机:实现PC端显示,实现数据记录,数据分析,远程交互功能。


3、成果展示:

微信图片_20250215230103.jpg

实物.png


基于QT开发上位机,试下BLE数据透传到电脑,节省线束。

5555.png

898221.png

<pre>
  • </pre>
  • 复制代码


    4、关键技术点:

    1. 温度精确控制:通过高精度温度传感器及先进的PID控制算法,实现对冰帽温度的精确监测与控制。

    PID关键代码

    // PID参数结构体
  • typedef struct {
  •     float Kp; // 比例系数
  •     float Ki; // 积分系数
  •     float Kd; // 微分系数
  •     float prev_error; // 上一次的误差
  •     float integral; // 积分累积
  • } PID_Controller;

  • // PID控制器实例
  • PID_Controller pid;

  • // 初始化PID控制器
  • void PID_Init(PID_Controller *controller, float Kp, float Ki, float Kd) {
  •     controller->Kp = Kp;
  •     controller->Ki = Ki;
  •     controller->Kd = Kd;
  •     controller->prev_error = 0.0f;
  •     controller->integral = 0.0f;
  • }

  • // PID计算函数
  • float PID_Compute(PID_Controller *controller, float setpoint, float measured_value, float dt) {
  •     float error = setpoint - measured_value; // 计算误差
  •     controller->integral += error * dt; // 积分累积
  •     float derivative = (error - controller->prev_error) / dt; // 计算微分

  •     // 应用PID公式计算输出
  •     float output = controller->Kp * error + controller->Ki * controller->integral + controller->Kd * derivative;

  •     // 更新上一次的误差
  •     controller->prev_error = error;

  •     return output;
  • }
  • 复制代码
    int        get_temperature(uint adc)
  • {
  •         uint        code *p;
  •         uint        i;
  •         uchar        j,k;
  •         uchar        min,max;        //查表序号, 0对应-40度, 160对应120度
  •        
  • //        adc = 4096 - adc;        //Rt接地
  •         p = temp_table;
  •         if(adc < p[0])                return (0xfffe);
  •         if(adc > p[160])        return (0xffff);
  •        
  •         min = 0;                //-40度
  •         max = 160;                //120度

  •         for(j=0; j<5; j++)        //对分查表
  •         {
  •                 k = min / 2 + max / 2;
  •                 if(adc <= p[k])        max = k;
  •                 else                        min = k;
  •         }
  •                  if(adc == p[min])        i = (uint)min * D_SCALE;
  •         else if(adc == p[max])        i = (uint)max * D_SCALE;
  •         else        // min < temp < max
  •         {
  •                 while(min <= max)
  •                 {
  •                         min++;
  •                         if(adc == p[min])        {i = (uint)min * D_SCALE;        break;}
  •                         else if(adc < p[min])        //线性插补
  •                         {
  •                                 min--;
  •                                 i = p[min];        //min
  •                                 j = (adc - i) * D_SCALE / (p[min+1] - i);
  •                                 i = min;
  •                                 i *= D_SCALE;
  •                                 i += j;
  •                                 break;
  •                         }
  •                 }
  •         }
  •         return (i-400);
  • }
  • 复制代码

    2. 音频处理与优化:采用高质量的音频解码器及功率放大器,确保语音提示清晰、音乐治疗效果显著。同时,支持多种音频格式及播放模式,满足不同用户的需求。

    3. 用户交互设计:简洁直观的用户界面,提供清晰的温度显示、操作提示及状态反馈。支持按键操作,方便用户快速上手。

    4. 蓝牙通信与远程控制:利用FR3068x-C内置的蓝牙功能,实现与智能手机或其他智能设备的无线连接。支持远程温度设置、音频播放控制等功能,提高系统的灵活性和便捷性。

    5. 低功耗设计:采用低功耗硬件组件及优化的软件算法,确保系统在长时间使用过程中保持较低的能耗。