单片机控制系统在生产生活领域应用广泛,无论是从简单的有线控制还是到无线远程控制,都能体现单片机在电子控制领域非常重要。现代化的办公大楼里面各种控制开关系统更是离不开单片机系统,现在的办公设备和精密仪器需要严格的温度和湿度环境,基于单片机的温、湿、时遥控开关系统是采集当时的温度、湿度传感器传回的信息及内部时钟信息,经分析是否符合办公仪器设备和常规下人体舒适程度进行有效的门窗开关遥控。
系统的工作原理 温湿度遥控控制系统主要是由SHT11传感器进行温湿度采集的,将采集到的温湿度输入到单片机的AT89C51的P1.0接口,SCK信号输入到单片机的P1.1接口,由单片机的P1.2口将接收到的数据转发送到MICR102的STBY接口。如图3所示,将P1.0接口接收到的DATA数据信息转由P1.3接口转发送到MICRF102的8号接口,经由MICRF102将数据信息转化成可以发送的无线电波信号由6、7号接口的自制天线发射出去。在用户端用MICRF002进行信号接收,信号经转换后有DO口输出到80C51单片机,再由单片机分析温度和湿度以及内部时钟来控制继电器以便于{zh1}控制电机的正反转,{zh1}达到控制门窗自动关闭的效果。 该系统主要由五部分组成,其中SHT11传感器和AT89C51单片机用来进行信号采集和,MICRF102用来发射数字信号,MICRF002接收数字信号经过解调后传送给控制部分AT89C51单片机,{zh1}由继电器控制电机进行正反转。系统原理图如图1所示。 图1 系统结构图 对于SHT11传感器我们将其分成5部分,首先是温度传感器可以用DS75LX型号的传感器来进行温度采集,湿度传感器可以用HS1100湿度传感器来进行湿度采集采集后的温湿度经过露点值计算功能输出湿度温度值输出分辨率为12位可编程为8位、湿度值输出分辨率为14位可编程为12位。采集后的信号后经由放大器进行放大再进行14位的A/D转换,可以将转换后的温湿度数据在标定存储器里面,或在需要的时候送到二线I2C总线器件从而将数字信号抓换为符合I2C总线的串行数字信号。I2C的四个管脚分别是SCK(串行时钟输入)、GND(接地端)、DATA(双向串行数据线)、VDD(电源端专门接0.4~5.5V的电源)传感器结构框图如图2所示。 图2 电源管理电路 无线发射机的工作原理 无线发射器主要是Micrel公司推出的一个单片UHF/ASK发射器,其核心主要是MICRF102芯片。MICRF102芯片主要包含:基准振荡器、相位检波器、分频器、带通滤波器、压控振荡器构成的合成器,发射偏置控制,RF功率放大器,天线调谐控制和变容二极管等电路。将数字串行信号由ASK引脚输入,由UHF合成器产生载频和正交信号输出,真正实现了数字输入无线输出,REFOSC引脚是基准振荡器端,连接晶振接地,如果要接受外来时钟信号需要采用AC耦合方式,输入信号幅度峰-峰值为200~500mV。STBY端主要是待机模式控制,接VDD是发射模式,接VSS是待机模式,这里为了时刻监控周围的温湿度所以设为接VDD, MICRF102采用差分输出驱动天线负载,功率放大器输出级包含一个变容二极管,它自动与天线的电感调谐,以保证谐振在发射频率上。功率放大器的输出功率与PC端上的电压有关,正常应该在0.2~0.4V之间,电压越高功率越大,当电压过高时被限流则输出功率不再增加。基本的电路结构如图3所示。 图3 发射机原理图 控制器工作原理 无线信号经MICRF002接收后经过调制重新变成串行数据,经由DO口送出到单片机AT80C51的P3.0口,利用程序对P3.0口输入的串行数据进行分析,如果温度和适度都适合则将P3.5口置1并且P3.6口置0,如果温度和湿度不适合,则将P3.5口置0并且P3.6口置1。除了温度和湿度的分析,可以设置单片机的内部时钟来控制P3口的置0或1。当P3.5口置1,P3.6口置0时,由P3.5口接出来的电磁继电器为吸合状态,相反P3.6口接出来的继电器为未吸合状态,这样就可以控制电动机正转。如果情况相反则电动机为反转状态。如果P3.5或P3.6口为0或1的时间达到规定的时长,则设置P3.5和P3.6口均为0。这样防止电动机无限制转动。原理图如图4所示。 图4 接收及控制原理图 硬件设计 该系统主要分为两大部分,即信号采集发送、信号接收控制。本系统在信息采集和数据串行输入的时候,采用了AT89C51单片机作为核心控制器件,其上集成了4KB的闪速存储器,128B内部RAM,能方便的存储和处理程序,并且具有一定的驱动负载能力。 该系统在发射端主要用AT89C51单片机进行数据筛选,首先将串行数据中的时间数据通过P3.1发送到MICRF102的ASK端口,等待延迟5μs,然后传送湿度数据,并且通过内部时钟分析是否达到一定的时间,如果到了预期时间则停止传送数据。系统的接收端主要有MICRF002和AT89C51单片机组成,这一部分功能已经介绍过。在继电器和电机的接连进行电动机的反正转设置中,必须反复检测电动机需要转动的时长,否则电动机会空转或导致电阻过高烧坏电动机。硬件电路如图5所示。
图5 硬件系统原理图 系统软件设计 软件采用了KeilC51汇编和C混合编程语言,主程序包括:系统初始化、定时器T0的时间设定,接收传感器SHT11传出的数据信息程序、运算处理温湿度数据信息程序、发送程序、接收程序、中断调用程序。为了使系统正常运行加强系统的可靠性,在系统的设计上可以采取指令冗余、软件陷阱、容错设计、系统中断设计和外部强行中断设计,以防在实际的运行中外界的干扰产生误差和人为重新调整带来的误差,从而保证测量的准确性可靠性。系统软件流程如图6所示。 图6 软件实现流程图 |