自动温度采集控制系统

发布时间:2022-06-9 阅读量:1010 来源: 我爱方案网整理 发布人: Aurora

随着当前工业控制自动化日益普及,对于工作环境中的温度控制也越来越重要。本设计即是针对某些需要持续恒温的特殊环境而设计的自动温度采集控制系统。该系统采用FPGA作为硬件核心部分,有效地利用FPGA在可编程门阵列方面的优点,最大限度的使硬件电路软件化,减少了可视硬件的规模,降低了硬件加工、布线以及元器件采购方面的成本与复杂性,从而降低了故障排查方面的繁杂性。使硬件电路简洁,降低了整体占用的空间。相对于其他的温度控制系统,具有小巧,维护维修方便的优点,大大的提高了可维护性,同时由于采用的元器件都比较常见,整体成本较低。因此很适用于一些小规模同时对温度精度要求不高的场合。


1 系统工作原理


通过传感器实现对外界环境温度的采集,并将采集到的温度信号传送给FPGA芯片,FPGA芯片能够自主地对采集的温度信号进行处理,并能通过LED 显示当前温度,同时自动将采集到的温度信号与预设的温度进行比较得出正确的比较结果,通过I/O端口输出控制外围设备对环境温度进行控制,从而达到实时温度控制的目的。本设计中主要有温度采集模块、FPGA芯片模块、LED数字显示模块三部分,系统原理框图如图1所示。


系统工作原理


通过FPGA编程来实现对温度传感器的实时温度数据采集,并且实时地处理采集到的数据,将采集到的数据转换为BCD码通过8段LED数码管显示出此前的温度。与此同时,采集到的数据将会与存储在芯片里的温度预设值比较,并自动产生比较结果,控制外围设备对被测空间的温度实施调节控制,从而达到恒温的目的,温度传感器采集出的温度数据通过二进制数组片选选择数据通过LED显示,选择的数据再与标准温度进行比较,温度过高降温处理、温度过低则升温处理。


2 主要功能模块的实现


控制模块如图2所示,其中两个PNP三极管的作用是在P1输出控制信号时起到开关作用,根据图中的三极管接法,当输出控制信号为低电平时,三极管通导,此时P2继电器中有电流通过,使其3和6引脚接通。设计中由于采用的三极管对电流的要求较高,而又由于继电器内部可以认为相当于是一个电感,因此在继电器刚刚上电的时刻,三极管发射极和集电极电流将会很大,很容易将三极管烧毁,因此加装稳压二极管D2,使继电器上电工作的时刻,瞬间电流通过二极管回路而不是通过三极管,就可以有效保护三极管不被烧毁。


主要功能模块的实现


外部输出信号为低电平时,p2回路导通,引脚6与引脚3有电流,p3导通开始工作,当温度过低时,灯泡点亮;当温度过高时,风扇工作。从而实现对温度的实时控制。


3 软件设计及仿真结果


本设计中采用FPGA芯片作为核心控制部分。在本设计中软件模块主要包括温度传感器控制及数据接收模块,温度数据处理模块,温度显示模块。


3.1 温度数据处理模块


传感器数据处理模块tempture的顶层电路图如图3所示,它的作用主要是将12位二进制的温度信号转换为用BCD码表示的3位十进制数,输入的 12位温度信号中其中的高8位二进制代码转换为2组4位的BCD码,例如输入二进制码为“00010110”,代表十进制数为“22”,输出 BCD码为“00100010”对应的十进制数个位、十位均为“2”和“2”;然后将剩余的低4位二进制代码转换为4位BCD码,如输入二进制码为 “1110”,代表10进制数小数为“0.875”,若只取一位小数位,则取“8”,其BCD码可表示为“1000”。通过三个输出端口分别输出十位、个位和小数位。

对温度数据处理模块tempture-进行仿真测试。假定预设置输入温度二进制的代码为“000101111011”,则其对应十进制数应为:“23.6”。仿真结果如图4所示。


根据顶层原理图,a[3. . 0]输出为温度数值的十位数,b[3..0]输出为温度数值的个位数,c[3..0]输出为温度数值的小数位。则仿真图中,shi、fen、ge三位输出的数字分别为“2”、“3”、“6”,仿真结果与预测转换结果一致。


3.2 温度显示模块


设计采用了4个8段式的LED数码管可以动态显示温度的百位、十位、个位与分位。下图为温度显示模块的顶层电路,由图可知,模块由片选模块、译码转换模块与计数器三者组成。片选模块主要由一个二进制计数器和四选一电路组成。

当系统工作时,先将二进制计数器在clk控制下依次连续产生4个两位二进制数组,来控制片选模块选择性的输出shi[3..0]、 ge[3..0]、fen[3. . 0]、bai[3. . 0]四路输入信号中任意的一路。将选出的这一路输入信号交给译码转换模块,利用二进制计数器产生的连续二进制数组,可以控制译码器依次输出对应的4位二进制数组来依次点亮各个LED数码管。最后,可以在LED上显示出数字,读取结果。


对温度显示模块display进行软件仿真测试,设置输入shi[3..0]、fen[3..0]、ge[3..0]分别是“0100”、“0011”、“0010”,则其对应10进制数应为“43.2”。仿真结果如图6所示。

由仿真示意图可看出,片选信号由时钟信号控制循环变化,而对应输出的ledout端也依次输出shi,fen,ge,bai四个端口输入的数据,且输出的是8位LED数码管显示码,从图中可以读出,当片选信号为“0111”时,对应的输出信号ledout为“11000000”,即表示在数码管上的显示为 0,小数点不亮,表示百位为0;当片选信号为“1011”时,对应的输出信号ledout为“10011001”,在数码管上的显示为4,小数点不亮,表示十位为4;当片选信号为“1101”时,对应输出ledout为“10110000”,在数码管上的显示即为3,表示个位为3;当片选信号为 “1110”时,对应输出ledout为“00100100”,在数码管上的显示即为2,小数点点亮,表示小数位为2。动态扫描后可知,数码管上显示的内容即为“043.2”。与输入的数据相同,说明程序编写正确,系统运用良好。  

 


相关资讯
无源晶振YSX321SL应用于高精度HUD平视显示系统YXC3225

在现代汽车行业中,HUD平视显示系统正日益成为驾驶员的得力助手,为驾驶员提供实时导航、车辆信息和警示等功能,使驾驶更加安全和便捷。在HUD平视显示系统中,高精度的晶振是确保系统稳定运行的关键要素。YSX321SL是一款优质的3225无源晶振,拥有多项卓越特性,使其成为HUD平视显示系统的首选。

拥有卓越性能的高精度超薄低功耗心电贴—YSX211SL

随着医疗技术的进步,心电监护设备在日常生活和医疗领域中起到了至关重要的作用。而无源晶振 YSX211SL 作为一种先进的心电贴产品,以其独特的优势在市场上备受瞩目。

可编程晶振选型应该注意事项

对于可编程晶振选型的话,需要根据企业的需求选择。在选择可编程晶振的时候注重晶振外观、晶振的频率、晶振的输出模式、晶振的型号等等,这些都是要注意的,尤其是晶振的频率和晶振输出模式以及晶振的型号都是需要注意的。

性能高的服务器—宽电压有源晶振YSO110TR 25MHZ,多种精度选择支持±10PPM—±30PPM

在现代科技发展中,服务器扮演着越来越重要的角色,为各种应用提供强大的计算和数据存储能力。而高品质的服务器组件是确保服务器稳定运行的关键。YSO110TR宽电压有源晶振,作为服务器的重要组成部分,具备多项优势,成为业界必备的可靠之选。

差分晶振怎么测量

其实对于差分晶振怎么测量方式有很多种,主要还是要看自己选择什么样的方式了,因为选择不同的测量方式步骤和操作方式是不同的。关于差分晶振怎么测量的方式,小扬给大家详细的分享一些吧!