【asrpro语音模块+语音控制小风扇】
智能语音控制小风扇,使用ASRPRO语音模块只要一句话就能设置小风扇不同挡位的风力。图形化编程简单有效的控制输出PWM的占空比。
文章共1,749字 · 阅读需要大约6分钟
一键AI生成摘要,助你高效阅读
问答
·
《语控小风扇》目录
硬件接线图与实物图
一、硬件模块
1-1 ASRPRO语音模块
- 通过 “天问block图形化编程软件” 为 asrpro模块 烧录已编辑好的程序。(程序见下面)
这里,选择PA4引脚输出PWM信号。
1-2 PWM频率设置的一些问题
- 产生PWM时,频率的选择需要根据小风扇电机的不同做调整。如果频率太小 电机就会产生刺耳的噪音。
- 几百Hz的频率显然是不行的,高于10KHz的频率时基本上已经听不到声音。而频率太高太高的话损耗会大。
- 这里,选择的频率为14kHz。
有两相关论文的链接:
1(直流电机噪声的产生原因和抑制)
2(直流电机噪音来源的分析与优化)
1-2 DRV8833 电机驱动模块
1-2.1 DRV8833简介
- DRV8833是适合打印机、电气、工业设备和其他小型机器的电刷直流电动机驱动器。由四个N通道金属氧化物半导体场效应晶体管(MOSFET)组成的两个逻辑输入控制H桥驱动器,可在3.6A的峰值电流双向控制马达。电流衰减模式允许输入通过脉宽调制(PWM)来控制电气速度。
- 输入与输出:AINx 对 AOx 、BINx 对 BOx
- 电源接线:由上面硬件接线图可见,VM是接电机工作电压的电源(Vcc:
3.3v到12v+ 同侧的一个GND接地), STBY接asrpro模块高电平(3V)。 - 这里,选择 BIN1和BIN2 分别接asrpro模块的 PA4 和GNG 。
1-2.2 PWM控制逻辑
(注意:两组输入端 AINx和BINx 与两组输出端 AOx和BOx 相对应)
- 输入为一个低电平,一个PWM时,正反转、快衰减,占空比越大,转速越快。
- 输入为一个高电平,一个PWM时,正反转、慢衰减,占空比越小,转速越快。
关于DRV8833类电机驱动模块的知识点多多,参考链接:
1、(电机驱动芯片)
1-3 小风扇
- 小风扇由一个直流电机、三叶片扇和机身构成
- 这里,直流电机两线分别接DRV8833驱动模块的BO1和BO2。
- 用一个买的正品风扇做实验的话,两接线可能有正负之分(固定朝一个方向吹出风),需要换接调试。
二、低速问题
2-1 关于小风扇无法正常低速转动的解决
- 控制asrpro模块输出的PWM时,设置占空比越小希望电机转动速度越慢,理论上没问题了,但是如果频率没有达到一个合适的值就不能正常实现了。
- 我的解决办法就是:在DRV8833 电机驱动模块(BO1和BO2)与小风扇电机(正和负相)之间并联一个电容。电容的大小适合就行。
- 这里,选择并联电容10uF
三、图形化编程
3-1 天问block图形化编程软件
3-2 语音控制小风扇转速的编程
3-2.1 初始化
- 语音管家唤醒词:星期五
- 执行任务:打开和关闭风扇、设置风速的档位等等等
- 其实就是改变输出PWM的占空比
3-2.2 按键控制风速挡位
3-2.3 处理语音识别ID
3-2.4 添加命令词处理函数
- 添加命令词,执行加速或减速等等
- 和语音管家进行互动对话,或者让她简述一些当前运行的一些参数什么的。
四、实现效果
智能语控小风扇
更多推荐
已为社区贡献2条内容
所有评论(0)