本帖最后由 0x00000000 于 2019-6-17 15:15 编辑
根据实践经验,微孔雾化片能工作在中心频率3KHz左右的范围内,没有很明显的雾化量变化,而且雾化片自身的中心频率也比较稳定。所以定频驱动是完全可行的,扫频驱动多此一举。所以微孔雾化片的驱动器实际上是构建一个可控的108KHz的频率源去激励雾化片。 这是我设计的雾化片驱动一体化板。使用5V的电源供电,接口是Type-C。雾化片由Class-E功放电路驱动,Class-E的MOSFET驱动信号由MCU产生并由栅极驱动器放大。为了达到足够的输出功率,MCU还输出一路PWM信号控制Boost电路的MOSFET,将5V供电提升到22V以供给Class-E电炉使用。这是电路的基本架构。
电路启动后,MCU除了不断进行PID运算调整占空比稳定Boost电路输出电压,还进行LED的控制,及按键扫描水位检测等任务。具体是.MUC的程序中设定了一个定时器中断,每768个时钟周期进入中断一次,中断中使用ADC对Boost电路输出电压检测,随后调用PID算法计算最新的占空比值并更新,然后更改LED呼吸灯的驱动占空比,最后进行按键扫描并输出按键事件值。在main函数中进行三个任务循环:任务一负责对水位进行检测,如果处于低水位状态则关闭Class-E功放电路的激励以保护雾化片(实际该功能未使用);任务二对按键事件进行处理,根据按键长按和短按的行为调整系统状态,开关机,雾化量调节。雾化量的调节是通过改变超低频PWM信号的占空比,控制栅极驱动器使能端使得后级Class-E功放电路的输出时有时无达到雾化量调整功能。同时当雾化量改变后,还将最新的雾化量挡位写入Flash供下次上电时使用。任务三负责看门狗喂狗。
在最近的更新中增加了频率调整模式,以适应不同的雾化片和应对同种雾化片的个体差异(由于步进太大,可能毫无作用)。进入方式:上电之前按住按键不放,给电路通电,等到LED点亮后即可进入频率调整模式,请在示波器的监测下调节频率,监测点选择MOSFET的G和D极。短按一次频率增加1KHz左右,长按一次减少1KHz左右。同时可以配合MOSFET的D,S并联电容一起调节,使得雾化片雾化效果最好时电路工作在Clas-E状态。
重要提示:请在MCU的P3.0引脚上并联2K左右的下拉电阻以保证上电时该引脚电平强制为低电平,否则电路可能无法启动。这是之前设计没有考虑到的。PCB上自行找位置焊接。
图一:电路板正面细节
图二:电路板背面细节
图三:后级Class-E功放电路中MOSFET的G和D极波形图(使用了比较理想的雾化片。其它的雾化片不一定能做到这种近似的ZVS工作模式)
最初版本的一个简单测试视频,现在的版本没有更新硬件,主要是对软件控制上做了修正:
结论及反思:本设计实现了一个雾化片的驱动方案,经过实际测试验证,电路的各功能基本正常达到预期,长时间的工作表明该电路能稳定工作。但是,本设计仍存在较多的不足。本设计原先意欲用于1.7MHz的高频雾化片驱动,由于高频雾化片需要极高的驱动功率(约十几瓦才有明显的效果)对于使用手机充电器5v供电的场合难以实现,同时由于软硬件的设计缺陷,Boost升压部分也无法提供如此高的功率,所以才改用了低频微孔雾化片。同时,MCU供电使用了简单的稳压管加电阻,使得该部分消耗了较多的功率,使得PCB温度较高。
在下一版中试图对上述问题进行改进,使用AMS1117用作MCU供电解决供电效率地的问题。但是对于传统的高频陶瓷雾化片的难题目前依然没有好的思路。
|