基于 UC/OSII操作系统的温度采集系统的设计

2014-03-16 09:26贵州大学电气工程学院党长青熊锦玲陈湘萍
电子世界 2014年9期
关键词:接收数据热敏电阻阻值

贵州大学电气工程学院 党长青 熊锦玲 陈湘萍

1.系统介绍

本系统是基于UCOSII操作系统的温度采集系统,微控制器采用的是意法半导体(ST)公司推出的基于ARM CortexM3内核的STM32F103增强型系列STM32F103VC。传感器使用的是具有负温度系数的热敏电阻,其阻值随温度的升高而减小,通过AD采样其电压值,就可以算出对应的阻值,再查询热敏电阻的温度——阻值系数表,就可以得出当前的温度。该系统的显示分为两个部分,从机显示和主机显示,从机显示采用的是一个2.8寸的TFT彩色液晶,调用液晶的显示库函数,只需要设定好函数的各项参数,也就是显示的坐标和显示内容,就可以在液晶屏上看到我们想看到的内容了。主机显示即上位机显示,用VC编写显示的界面。

2.功能模块以及硬件电路介绍

2.1 微控制器

Stm32f103vc是一个基于cortex-M3的32位ARM7微控制器,并带有64或128kB的嵌入式高速Flash存储器,最高72MHz工作频率,在存储器的0等待周期访问时可达1.25DMips/MHz。

由于内置了宽范围的串行通信接口(3个USART、SPI和2个I2C)和20KB的片内SRAM,7通道DMA控制器,支持的外设有定时器、ADC、SPI、I2C和USART,使得Stm32f103vc也适合用在通信网关和协议转换器中。3个16位定时器,每个定时器有多达4个用于输入捕获/输出比较/PWM或脉冲计数的通道和增量编码器输入。1个16位带死区控制和紧急刹车,用于电机控制的PWM高级控制定时器。

2.2 传感器

方案一:采用Pt10铂电阻作为检测温度的传感器,其原理是将温度的变化反应到电阻的电压的变化上,经过A/D转换器将其转换成数字量,与其温度的变化相同。其优点是测量的范围广,缺点是成本高,辅助电路复杂,难维护。

方案二:采用半导体温度传感器DS18B20,DS18B20为可编程数字式温度传感器,将采集到的温度转换成二进制数保存在传感器中,SCM可以通过对DS18B20的寄存器的访问读出寄存器的值,DS18B20内部有上下限报警值设定寄存器,可以对传感器进行上下限报警设定。其优点是操作简单,硬件电路简单,不易受到外界的干扰。

方案三:采用热敏电阻,其阻值随温度的变化而变化,一般分为两种基本类型,负温度系数(NTC)和正温度系数(PTC),NTC表现为阻值随温度的升高而减小,PTC表现为阻值随温度的升高而升高,这两种热敏电阻都各自具有优点和特点,以适应不同的应用场合,其应用电路简单,成本低,在测量精度要求不是很好的场合,热敏电阻是很好的选择,基于以上考虑,在本系统中采用的是分温度系数的热敏电阻。

3.显示模块介绍

3.1 从机显示模块

从机显示模块采用的是一个2.8寸的TFT彩色液晶显示器,该液晶具有操作简单,显示的信息量大而且设计灵活的特点,显示只需要在转换结束以后调用显示的库函数,设置好各项参数,需要的内容就会显示在液晶屏上。

3.2 主机显示

主机显示采用的PC机,用VC编写一个从串口接收数据的界面。在串口打开之前界面如图3.1所示。

图3.1 上位机显示界面

4.硬件电路

4.1 电源电路

本系统采用的Stm32f103vc,其供电电源3.3V,其内核供电为1.8V,采用的是线性三端集成稳 压芯片U 10 LT1117-3.3,具体电路图如图4.1所示。

图4.1 系统的供电电路图

图4.2 串口接口电路图

4.2 串口通信电路

在本系统中需要用到串口通信。控制发送数据到PC上显示。在串口通信中使用到的芯片是MAX3232,MAX3232是一种低功耗拥有两个接收器和两个发射器的串口接口芯片。它兼容了RS-232的特性。供电范围是3V-5.5V.在MAX3232内部,有两个充电泵。该芯片的外围电路非常简单,外部只需要接上4个0.1uF的充电电容就可以使用了。通信速率在120kbps能够保证数据不出错。并且能够保持RS232的输出电平。MAX3232具有低至1uA的关闭模式,在便携式设备中,降低了电源的消耗,延长了电池的寿命。在低能耗的关闭模式中,接收器任然处于激活模式,允许调制解调器接收数据,其应用电路如图4.2所示。

4.3 传感器应用电路

在本系统中,传感器使用的是具有负温度系数的热敏电阻(NTC),其测温原理是:热敏电阻的阻值随温度的升高而降低,热敏电阻两端的电压也相应的降低,通过STM32内部的AD采样就可以得到热敏电阻两端的电压,其应用电路如图4.3所示。

图4.3 热敏电阻应用电路图

图5.1 从机软件流程图

图5.2 主机软件流程图

假如在某一时刻采样得到的电压值为A伏,此时热敏电阻的阻值为B欧,计算出此时点电阻值,再查询热敏电阻的阻值与温度关系的对应表,就可以得出此时的温度。

图5.3 主机接收数据界面

5.软件流程图以及应用软件

5.1 下位机软件流程图

该模块主要是实现NTC温度传感器测温功能,首先读取AD转换的值,然后根据此值计算所对应的温度值。输出参数为十进制的温度值。程序流程图如图5.1所示。

5.2 上位机软件流程图

图5.4 设计实物图

该模块主要是完成接收下位机传送上来的数据,并将数据以正确的形式显示在控制界面当中。该模块包括界面的设计以及具体的响应函数的设计。

上位机的串口通信用的不是VC自带的MSCOMM控件,这里使用一个动态库,分别是Pcomm.h,Pcomm.lib,Pcomm.dll。输入参数为串口的接收数据,输出参数为编辑框的显示数据。程序的流程图如图5.2所示。打开串口后主机接收数据时的界面如图5.3所示。设计的实物图如图5.4所示。

[1]周立功.ARM嵌入式系统基础教程(二)[M].北京:北京航空航天大学出版社,2005.

[2]周立功.ARM嵌入式系统基础教程(三)[M].北京:北京航空航天大学出版社,2005.

[3]周立功等.EasyArm2131教材[M].

[4]谭浩强著.C程序设计(第三版)[M].清华大学出版社,2007.

[5]周旭.现代传感器技术[M].北京:国防工业出版社,2007.

[6]田泽.嵌入式系统开发与应用教程[M].北京:北京航空航天大学出版社,2005.

猜你喜欢
接收数据热敏电阻阻值
四线制阻值检测电路实验研究
微安表内阻值对热敏电阻温度计设计的影响
励磁线圈对插入式电磁流量计的影响
复合NTC热敏电阻材料的制备与电性能研究
低电阻碳膜板制作及其阻值的优化
低复杂度多输入多输出雷达目标角度估计方法
对一道电学实验题的思考
单片机模拟串口数据接收程序的实现及优化
热敏电阻特性的线性化方法
基于神经网络的高分子PTC热敏电阻测温准确性的研究