整体设备采用一个双涵道通路系统,外壳使用 3D 打印,材料使用 PETG 和 TPU 为主,但是也有一小部分采用较少量的 PAHT-CF。

经过一些简单的流体力学论证(雷诺数分析与整流部分参数计算,以及流体粘性相关的边界层厚度估算)以及一些电气分析(涵道功耗负载,线材承受电压降以及热管理和电磁兼容性)


传感器

本系统集成了运动学、声学、流体动力学及安全防护等维度的传感器,具体参数如下:

传感器类型型号通信协议工作电压核心目的关键参数与特性
IMU 惯性单元ICM-42688SPI / I²C1.71-3.6V监测结构振动表现支持最高 32kHz 采样速率;高精度、低噪声,适合捕捉 48m/s 风速下的高频机械共振。
MEMS 麦克风INMP441I²S1.6-3.6V测量声学频谱特征24-bit 数字输出;44.1kHz - 48kHz 采样率,用于捕捉涵道运转时的声学特征。
压差/空速计MS4525DOI²C3.3 / 5.0V测量测试段风速14-bit 数字输出,量程 1 psi (6.89kPa),精度 0.25%。数字信号有效规避电调干扰。
环境传感器BME280I²C1.7-3.6V气压标定与环境修正同时测量压强、温度、湿度。用于实时计算空气密度 ρ,实现空速的高精度补偿。
激光测距TFmini-SUART / I²C5.0V涵道口遮挡安全防护12m 量程;用于检测涵道口异物,触发安全保护逻辑(减速至 0 或禁止启动)。
压力传感XGZP6847A模拟3.3V读取上下气压衡量模型受压情况,作为反馈数据

同时,安全方面,通过安装在涵道底部的 TFmini-S 实现硬件闭环保护

  1. 静态检查: 启动前若检测到前方有遮挡物,系统锁死电机启动权限。
  2. 动态防护: 运行过程中若检测到异物侵入安全距离,系统将根据距离权重立即执行减速逻辑,直至完全停机(转速归零),防止损坏涵道叶片或伤人。

材料

材料方面,针对不同功能区间对刚度、阻尼和抗压性的差异化需求,采用了多种增材制造材料:

  • PETG-CF (主体框架/收缩段/扩散段): 作为核心受力部件,PETG-CF 引入了碳纤维填充,使其弯曲模量显著高于普通 PETG。这在 $$v=48,\mathrm{m}\cdot\mathrm{s}^{-1}$$ 的高风速下至关重要,能有效抑制因气流脉动引起的壁面“颤振(Flutter)”现象。其耐温性也足以应对 ESC 及电机产生的积热。
  • PLA-CF (整流段外壳): 整流段处于低流速区(进气口),主要承受大气压力。PLA-CF 具有极高的打印精度和硬度,能确保铝蜂窝器与钢丝网的物理尺寸严格固定。
  • TPU (95A) (密封垫片/减震): 风洞为负压/正压交替系统,任何缝隙漏气都会导致雷诺数计算偏移。在各模块法兰面嵌套 TPU 密封圈,可实现气密性级联。同时,在电机底座处使用 TPU 垫片可吸收高频振动。
  • PAHT-CF (电调架/法兰盘): 要求能承受电调工作时 120°C 的高温,且具有良好导热性能,用于电调风冷的流线性外壳。法兰盘用于前后连接,需要极高的结构强度。
  • 聚碳酸酯 (PC) (试验段外壳): 采用 5 mm PC 板。PC 具有极高的韧性和抗冲击强度,其断裂伸长率远高于 PETG。在极限风速下,结构件会受到高频气流脉动带来的疲劳载荷。PC 材料能有效防止螺栓紧固处(如 M5 螺纹钢筋的受力点)出现裂纹,确保长期运行的安全性。后续实验涉及高压气动测试或需要更强的耐磨性,PC 板作为亚克力的升级替代方案,其优异的抗碎裂特性保证了在模型发生结构失效(如模型破碎脱落)时,观察窗不会发生贯穿性破坏,保护外部操作人员安全。

软件

软件模块为上位机/下位机设计,采用 UART 协议通信,Baudrate 为 921,500。

  1. 跨平台共享库 (Shared Crate: aerosmart-shared) 利用 Rust 的 no_std 特性,构建一个同时兼容 STM32 和 Raspberry Pi 的共享库。
  • 序列化方案 (rkyv): 相比于 serderkyv 支持零拷贝访问,允许上位机直接在内存映射的缓冲区上读取传感器数据,无需额外的解析开销,这对于实时流场可视化至关重要。
  • 通用数据结构: 定义 SensorFrame(包含皮托管压差、IMU 轴向数据、麦克风频谱特征)和 ControlCommand(PWM 占空比、PID 参数调节),通过 feature 同时兼顾 no_std 特性和数据库持久化。
  1. 下位机控制逻辑 (STM32H7 - Firmware) 下位机侧重于高频确定性
  • 数据获取: 利用 DMA(直接存储器访问)从 SPI (ICM-42688) 和 I2C (MS4525DO) 循环读取数据,减轻 CPU 负担。
  • PID 控制: 实现风速闭环控制。针对双涵道系统,设计软启动算法,防止瞬间启动电流烧毁 XT60 接口。
  • FFT (快速傅里叶变换): 在 STM32H7 上利用 microfft 库或 Rust 版本的 FFT 库,对 INMP441 的音频信号进行处理,提取湍流相关的频谱特征。
  • 串口通信: 使用 embassy-stm32 配合 rkyv 将数据打包发送至上位机。

下位机的计时器分配为:

定时器功能技术实现与理由
TIM1左右涵道 PWM高级定时器,支持高达 480MHz 计数频率,用于生成高精度、低抖动的电机控制信号。左涵道 Ch1 右涵道 Ch2
TIM2舵机控制 PWM32 位定时器,非常适合产生标准的 50Hz 脉宽调制信号,用于控制试验段内的扰流板或模型姿态。
TIM5轮询时钟负责触发传感器采样(Pitot, IMU),确保数据采集的等间时性(Isocronous),采样频率预设为 1kHz。
TIM4全局时钟作为系统运行时间的基准,为 rkyv 打包的每一个 SensorFrame 提供高分辨率时间戳。
WWDT异常处理窗口看门狗,监测 PID 闭环逻辑耗时。若因总线堵塞导致计算超时,强制切断 PWM 输出以保护硬件。
  1. 上位机服务架构 (Raspberry Pi - Backend) 上位机侧重于数据治理与生态接入
  • Serial Stack: 监听串口数据流,使用 rkyv::accessrkyv::deserialize 验证数据完整性,并将其存入持久化层。
  • Persistency (SQLx + PostgreSQL): 使用 sqlx 进行异步数据库操作。记录每一次风洞试验的原始数据(Airspeed, Vibration, Sound Spectrum),便于后期进行流体力学建模分析。
  • GraphQL & MCP:
    • GraphQL API: 为前端提供灵活的查询接口,支持订阅(Subscription)模式实时推送风速曲线。
    • MCP (Model Context Protocol): 接入 LLM 接口,使 AI 能够直接读取数据库中的试验记录和实时数据,进行自动化实验和分析。有待优化,可直接用 GraphQL。
  • 计算机视觉: 后期可通过 Zenoh 和由 Python 编写的脚本通过外置摄像头进行 SolvePnP,和 IMU 互补获得试验件的测试状态。
  • 神经网络计算: 后期可通过 Zenoh 和由 Python 编写、使用 PyTorch 的神经网络模块连接,进行简单的机器学习模型分析,如特征学习之类,为大模型决策提供基础。
评论 隐私政策