(成都理工大学信息科学与技术学院 四川 成都 610059)
21世纪以来,人们生活水平和现代科技水平的不断改善和提高,节能环保、健康、安全、多功能等方面成为家用电器的发展方向。在现实生活中,由于风扇成本低、风力温和、对电力负载压力小等优势,空调的普及并未对风扇的使用造成太大影响。相反,人们对于电风扇多功能的要求还日益严苛。
而如今市面上的电风扇大部分只能手动调速,或者再加一个定时器,功能略显单一化。并且存在一定的安全隐患,例如人们出门忘记关电风扇,首先是造成不必要的能源损耗,其次是长时间的工作会损坏电器,最后最重要的是容易引发火灾。
因此,为减少不必要的能源损耗、适应消费者的需求、消除安全隐患,将本文系统设计为了三种工作模式:按键驱动模式、智能温控模式、蓝牙遥控模式。通过这三种不同的模式,可以满足消费者在不同时期的不同需求,达到节约能源、安全健康、远程控制等目的。本文将针对这一系统设计展开详细的讨论。
系统整体设计框图如图1所示。由图1可知,整个系统由6个模块组成,分别是FPGA开发板、数字温度传感器模块、按键模块、蓝牙模块、温度显示模块以及电机驱动模块。系统的整体设计思路是采用FPGA作为中央处理器,作为系统的控制中心,DS18B20作为数字温度传感器,检测环境温度并直接输出数字温度信号给FPGA进行相应处理,并在LCD1602液晶显示模块上显示数字温度传感器实时传输来的环境温度,HC-06作为蓝牙模块,可通过手机APP界面进行远程遥控,L298N作为电机驱动模块,驱动风扇转动。整个系统使用便捷,抗干扰性强,性价比高。
图1 系统整体设计框图
该系统的设计需要实现风扇的自动温度检测和蓝牙遥控控制,使风扇能够自动对环境温度的变化做出自动启停及转速改变,这要求较高的温度变化分辨率以及稳定可靠的转速控制方式;也需要满足远程的遥控操作启停及转速控制,这要求短距离的数据无线传输。
1.温度传感器选择
在该系统设计中,温度传感器的选择方案有以下两种。
方案一:采用数字温度传感器DS18B20作为温度检测模块,对环境温度进行实时监测。由于DS18B20是数字式的集成温度传感器,因此其检测到环境温度后直接输出数字温度信号给FPGA进行处理。
方案二:采用热敏电阻作为核心器件,进行环境温度的检测,并且通过运算放大器进行放大,由于热敏电阻会随外界温度的改变和变化,因此会产生微弱的输出电压变化的信号,最后经过DAC0832模数转换模块,将微弱的电压变化信号转换为数字温度信号输入到FPGA进行处理。
对于方案一,DS18B20是高度集成化的,因此温度检测误差将很小,温度分辨率高。并且数字式温度传感器使得检测的温度值在其内部直接转化成数字温度信号直接输出,无需额外的模数转换模块,大大的简化了系统的设计,节约了成本与资源,并且抗干扰能力强。因此适用于系统的设计。
对于方案二,热敏电阻相比DS18B20价格便宜,但是热敏电阻对温度的细微变化并不十分敏感,会使得信号在检测、放大以及转换的过程中产生极大的信号畸变和较大的误差。相比于方案一,此方案不适用于系统的设计。
2.蓝牙模块选择
在该系统设计中,需要用到蓝牙模块实现FPGA与手机终端之间的通信。市面上有很多种类的蓝牙模块,例如通信采用HC-06从机蓝牙模块,主要用于短距离的数据无线传输领域,可以方便的和PC机或带蓝牙功能的设备相连,也可以两个模块之间的数据互通。避免繁琐的线缆连接,能直接替代串口线,配对后只需当成固定波特率的串口一样使用即可。系统采用该蓝牙模块实现了手机终端和FPGA之间的通讯。
3.调速方式选择
在该系统设计中,风扇电机调速方式的选择方案有以下两种。
方案一:采用FPGA软件编程,实现脉冲宽度调制(PWM)调速方式。PWM是一种模拟控制方式,其根据相应载荷的变化来调制晶体管基极或MOS管栅极的偏置,来实现晶体管或MOS管导通时间的改变,从而实现开关稳压电源输出的改变,这种方式能使电源的输出电压在工作条件变化时保持恒定。
方案二:采用串行口模数转换芯片来控制。例如采用数模转换芯片DAC0832,由FPGA根据当前温度值输出相应的数字量到芯片中,再由芯片将数字信号转换成相应的模拟信号,控制晶闸管的导通角,实现风扇电机转速的自动调节。
对于方案一,PWM调速是一种纯软件的方法,相比于其他硬件方法实现对电机的调速功能而言,首先是零成本,其次具有更大的灵活性,并且能够更加充分发挥FPGA的功能。
对于方案二,采用DAC0832芯片的方式,可以通过无极调速电路来实现风扇电机转速的自动调节,且速度变化灵。但相比于方案一,资源成本高一些,因此采用方案一。
FPGA采用了逻辑单元整列LCA概念,FPGA的基本结构包括可编程输入输出单元IOB、可配置逻辑块CLB、数字时钟管理模块、嵌入式块RAM、布线资源、内嵌专用硬核、底层内嵌功能单元。
DS18B20是美国DALLAS半导体公司推出的支持“一线总线”接口的温度传感器,具有微型化、低功耗、高性能、抗干扰性强、易配微处理器的优点,可以直接将温度转化成串行数字信号供处理器处理。其适应电压范围在3.0~5.5V,测温范围在-55OC~+125 OC,在-10~+85 OC范围内,精度可达±0.5OC,可实现高精度测温,在使用过程中不需要任何外围元件,并且具有负压特性。
DS18B20内部主要由64位光刻ROM、温度传感器、温度触发器TH和TL、配置寄存器四部分组成。其引脚由DQ数字信号输入/输出端、GND电源地、VDD外接供电电源输入端三部分组成。
HC-06从机蓝牙模块是目前市面上功能最为强大的串口蓝牙模块,其模块采用Blue2.0,支持主从模式,模块支持波特率为1200~1382400。该模块一共包括KEY、VCC、GND、TXD、RXD、STATE六个引脚,其中KEY引脚在主控端模式中用于清除上次配对的蓝牙从机位址,断开与蓝牙从机的连接;VCC引脚接正电源;GND引脚接电源地;TXD引脚为传送端;RXD引脚为接收端;STATE引脚为状态引脚,持续高电平代表已接通,不停输出高低电平代表未接通。在实际应用中,实际接线只用到VCC、GND、TXD、RXD四个引脚。该模块具有低功耗、信号强、性能稳定、通讯距离远、成本低的优点。
本模块使用L298N作为主驱动芯片,具有驱动能力强、发热量低、抗干扰能力强的特点。在电路中使用大容量滤波电容,续流保护二极管,提高可靠性。本模块采用双H桥电机驱动工作模式,其中每个H桥可以提供2A的电流,驱动电压5~35V,最大功率25W。其原理图如图2所示。
图2 L298N驱动模块原理图
键盘其实就是一组按键,采用机械弹性开关,当开关闭合时,线路导通,开关断开时,线路断开。该模块主要用于实现系统模式的选择,以及当系统处于按键驱动模式时,用于实现对电机驱动风扇转速的调节。
LCD1602液晶是一种工业字符型液晶,能够同时显示16×2即32个字符,即可以显示两行,每行为16个字符,但只能显示字符和数字,不能显示汉字。它由若干个5×7或5×11点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用。其内置含28个字符的ASCⅡ字符集字库,为5V电压驱动,带背光,只有并行接口,无串行接口。
该系统设计的软件开发环境为Quartus Ⅱ,采用硬件描述语言VHDL完成数据流描述。
在系统软件设计中,软件系统由主程序、DS18B20测温、蓝牙控制、按键扫描、智能温控5个部分组成。首先通过DS18B20温度传感器,将采集到的温度值传递给1602液晶显示部分;其次,通过按键部分判断所选择的工作模式;接着调用对应的工作模式函数,再传递给相应不同转速的电机驱动控制函数。具体程序实现流程图如图3所示。
图3 程序实现流程图
该系统采用HC-06蓝牙模块与上位机(手机)APP的连接,实现手机终端通过蓝牙模块与FPGA之间的通讯功能,从而起到手机终端蓝牙遥控系统,实现电机驱动风扇转速改变的功能。手机终端设计界面如图4所示,其中上下左右的四个箭头分别代表转速1、转速2、转速3、停止转动四个功能。
图4 手机终端界面设计图