第二章 需求分析:功能需求、性能指标、安全规范与用户场景
好,咱们正式开始干活了。
做嵌入式开发,最怕什么?最怕一上来就画板子、写代码。我见过太多工程师,拿到需求就开干,结果做到一半发现功能对不上,或者性能跑不满,最后推倒重来。嗯,这滋味我尝过,不好受。
所以,这一章咱们老老实实把需求分析做透。说白了,就是搞清楚三件事:要做什么、要做到多好、绝对不能出什么问题。
2.1 功能需求:理疗仪到底要干哪些活?
先别想得太复杂。理疗仪的核心功能,其实就是产生特定波形,通过电极片作用于人体。我个人习惯,先把功能拆成几个模块来想。
2.1.1 核心治疗功能
- 波形生成:至少支持方波、正弦波、三角波。每种波形频率可调,范围从0.5Hz到1000Hz。为什么是这个范围?低频用于镇痛,中频用于肌肉刺激,高频嘛...嗯,咱们后面讲安全规范时会提到。
- 强度控制:输出电流强度0-100mA可调,步进1mA。注意,这里说的是电流,不是电压。人体阻抗变化很大,恒流源才是王道。
- 治疗模式:至少3种预设模式——镇痛模式、肌肉放松模式、康复训练模式。每种模式对应不同的波形组合和时序。
- 定时功能:治疗时间1-60分钟可设,误差不超过±30秒。到时间自动停止输出。
我的经验:波形生成这块,我建议用DDS(直接数字频率合成)方案。STM32的DAC配合DMA,做出来的波形又稳又准。我之前有个项目,用定时器中断模拟波形,结果频率一高就失真,折腾了两周才换成DDS。
2.1.2 用户交互功能
- 显示:OLED或LCD屏,显示当前模式、强度、剩余时间、电池电量。
- 按键:至少4个物理按键——开关机、模式切换、强度加、强度减。触摸按键?我个人不太推荐,理疗仪使用中手可能会出汗,触摸容易误触。
- 蜂鸣器:操作反馈、治疗结束提醒、异常报警。
2.1.3 数据管理功能
- 治疗记录:存储最近10次治疗记录,包括时间、模式、强度。
- 固件升级:支持通过USB或蓝牙进行OTA升级。这个功能很多人会忽略,但产品上市后你会发现,没有OTA简直是噩梦。
2.2 性能指标:做到多好才算合格?
功能定完了,接下来要量化。性能指标是硬杠杠,差一点都不行。
| 指标项 | 要求值 | 说明 |
|---|---|---|
| 输出频率精度 | ±2% | 在0.5-1000Hz范围内 |
| 输出电流精度 | ±5% 或 ±2mA | 取较大值,负载500Ω-2kΩ |
| 波形失真度 | < 3% | 正弦波THD,20Hz-500Hz |
| 响应时间 | < 100ms | 按键到输出变化的延迟 |
| 待机功耗 | < 50μA | 电池供电产品,这个很关键 |
| 工作续航 | ≥ 8小时 | 连续治疗模式,中等强度 |
注意:输出电流精度这个指标,我曾经吃过亏。一开始觉得±10%就够了,结果送检时发现,在低阻抗负载下电流偏大,差点没过安全测试。后来老老实实加了闭环控制,才把精度提上来。
2.3 安全规范:IEC 60601 到底在说什么?
做医疗设备,安全是第一位的。IEC 60601是医用电气设备的基础标准,咱们理疗仪属于BF型应用部分(身体浮动),重点要关注以下几点。
2.3.1 漏电流要求
- 对地漏电流:正常状态 ≤ 0.5mA,单一故障状态 ≤ 1mA
- 患者漏电流:正常状态 ≤ 0.1mA,单一故障状态 ≤ 0.5mA
- 患者辅助电流:正常状态 ≤ 0.01mA
你想想看,0.1mA是什么概念?人体对1mA的电流就有感觉了。所以隔离设计必须到位,光耦、隔离电源、爬电距离,一个都不能少。
2.3.2 电介质强度(耐压测试)
- 一次电路与二次电路之间:1500V AC,1分钟
- 应用部分与地之间:500V AC,1分钟
- 爬电距离:≥ 4mm(污染等级2,材料组别IIIa)
关键点:PCB Layout时,隔离带宽度至少4mm,开槽更好。我见过有人为了省空间,把隔离带做到2mm,结果耐压测试直接打火。嗯,那批板子全废了。
2.3.3 其他安全要求
- 过流保护:输出电流超过设定值120%时,必须在100ms内切断输出
- 电极脱落检测:任意电极脱落,立即停止输出并报警
- 温度保护:外壳温度超过45℃时,自动降功率或关机
- 软件安全等级:按照IEC 62304,属于Class B级
2.4 用户场景分析:谁在用?怎么用?
做产品不能闭门造车。咱们得想想,用户到底会在什么场景下使用这个理疗仪。
2.4.1 主要用户画像
- 家庭用户:40-65岁,有慢性疼痛(腰、肩、膝),不太懂技术,需要简单易用
- 康复患者:术后或运动损伤,需要长期规律治疗,对效果有较高期望
- 理疗师:专业用户,需要更多参数调节选项,可能同时管理多台设备
2.4.2 典型使用场景
场景一:家庭晚间治疗
- 用户坐在沙发上,把电极片贴在腰部
- 开机,选择「镇痛模式」,强度从10mA开始慢慢加
- 设定30分钟,开始治疗
- 治疗过程中可能看电视、玩手机,需要设备稳定可靠
- 30分钟后自动停止,蜂鸣器提醒
场景二:康复中心批量使用
- 理疗师一次管理5-10台设备
- 每台设备需要快速设置参数
- 治疗记录需要导出,用于患者档案
- 设备需要长时间连续工作,散热和稳定性要求高
避坑指南:我曾经遇到一个场景——用户把电极片贴在脖子上,然后睡着了。结果治疗时间到了,设备停了,但用户没醒。后来我们加了一个「无操作自动关机」功能,15分钟无操作就自动断电。这个功能在安全规范里没有明确要求,但实际使用中非常重要。
2.4.3 环境条件
| 参数 | 工作条件 | 存储条件 |
|---|---|---|
| 温度 | 10℃ - 40℃ | -20℃ - 55℃ |
| 湿度 | 30% - 75% RH | 10% - 90% RH |
| 大气压 | 700hPa - 1060hPa | 500hPa - 1060hPa |
好了,需求分析做到这个份上,基本上可以进入下一阶段了。记住一句话:需求分析花的时间,会在开发阶段加倍还给你。别急着动手,先把这些搞清楚。
下一章,咱们聊聊系统架构设计。到时候我会把整个系统的模块划分、通信协议、电源方案都讲清楚。嗯,敬请期待。