在化工产业,机械加工,工业制造等领域经常要考虑到温度对测量或加工的影响,因此对温度的测量和控制就显得尤为重要。特别在一些环境恶劣、干扰较强的使用场合,温度采集装置的稳定是实现测量与控制的首要环节。本文针对上述背景,设计了通用多通道检测模块。
1 系统结构和工作原理
模块采用单片机ATmega48为控制核心,多路恒流源测温电路通过电子开关CD4051与13位A/D转换器MCP3301相连,通过单片机控制3/8译码器74HC138进行通道选择;模块通过基于Modbus通信协议的RS 485接口与主机通信;并具有一路PWM转DAC电路。模块适用于与PLC等主机连接,各通道实时检测数据保存于各通道的保持寄存器中,当接收到主机读取命令时将数据发送。整体结构如图1所示。
2 系统硬件电路设计
系统主要硬件部分控制电路:MCU、温度测量电路、PWM转DAC电路、电源电路和RS 485通信电路。为了避免外连的通信电路影响内部测量电路,提高抗干扰性能,将通信接口电路通过光藕隔离,且工作电源具有两路隔离电源,本文采用开关电源,具有效率高、重量轻和体积小的特点,并可兼容交、直流24 V供电。本文在硬件部分主要介绍恒流源热电阻测温电路以及PWM输入的DAC电路。
2.1 热电阻温度测量电路
本模块的热电阻选用铂电阻Pt100作为温度传感器。在-50~+600℃中温范围内,与其他热敏元件相比,铂电阻温度传感器测量准确度高、测量范围大、稳定性好、抗干扰能力较强。
铂电阻测温电路主要有两种:桥式测温电路和恒流源式测温电路。
桥式测温电路主要是利用调整电桥的电阻参数,抵消电桥两端的电压波动,以突出热电阻变化引起的电压,当采用三线制时可以消除引线误差,但存在非线性误差和电路相对复杂等问题。
恒流源式测温电路利用稳定电压给热电阻以恒定电路流,保证热电阻上的电压和其阻值变化成线性关系的。在保证基准电压源稳定的情况下,可以简化电路结构,另外根据热电阻和输出电压线性关系,更加有利于温度的计算和校正。恒流源式测温的基本应用电路如图2所示。
图2中虚框部分即为恒流源电路。运放U1A将输入的基准电压VREF转换为恒流源,激励热电阻RT。热电阻两端电压,经过U1B运放组成的双端输入单端输出放大电路,将信号放大10倍,即输出期望的检测电压信号。该输出信号通过电子开关与A/D转换芯片相连。[page]
电子开关的通路电阻较小,仅为几百欧姆,而A/D测量电路一般呈现高阻态,其带来的误差可以忽略。
检测精度和模数转换芯片(A/D)的分辨位数有很大关系,一般单片机内带的A/D位数分辨率较低(ATmega48内含10位A/D),不适合精确测量,而高分辨率的A/D芯片价格昂贵。本文兼顾了性能价格比,采用了外扩一片低成本的13位A/D芯片MCP3301。通过改进软硬件设计,实际测量结果证明可以保证误差不超过0.5%。
2.2 PWM转DAC电路
在电子和自动化技术的应用中,也经常需要提供模拟输出,如变送器和控制器类仪器,经常需要输出0~10 V,0~20 mA(或4~20 mA)的直流信号。高精度的数模转换器(DAC)芯片或集成了DAC的单片机价格昂贵。应用单片机的PWM输出,经过简单的变换电路实现DAC,可以大大降低电子设备的成本。
通过一个低通滤波器就可以把PWM调制的数模转换信号解调出来,实现从PWM到DAC的转换ATmega48具有16位定时器的PWM输出功能,实现的DAC电路输出精度基本满足一般的工业控制场合。另外在一些环境恶劣、干扰较强的场合,模拟输出容易受到干扰,本文通过使用恒流方式驱动电路来提高DAC电路的负载和抗干扰能力。具体原理图如图3所示。
图3中单片机输出的PWM电压,经过基准电源VREF和开关管T1组成的整形电路进行整形,在A点的输出波形为理想的PWM波形,幅值由基准电源的准确度得到保证,再经过两级阻容滤波和一级跟随放大器,在B点得到直流分量,即MCU输出的调制PWM波在B点得到解调,实现了DAC功能。可得:
一般PWM转DAC电路到此已经完成,本文为了保证更高精度和电路更强的负载能力,模块使用了恒流输出的驱动电路。由于运放U2B的C点和D点电位相等,可得:
采用三极管T2提高输出驱动能力,负载RL的电流和流过电阻R9的电流相等,可得:
由式(3)可以看出无论负载电阻RL的值如何改变,并不影响DAC输出的电流值,这样设计的好处是可以方便地更改输出电阻RL,保证了模拟输出量值的准确度,提高了负载能力。
[page]
3 系统软件设计
系统的软件主要由温度测量程序和Modbus通信中断程序组成。
测温程序主要负责温度采集,主要工作在于建立热电阻温度和电阻值的分度表,并判断每路检测结果是否出现温度是否异常,是则重新测量。正确的测量结果将保存于保持寄存器,等待上位机读取。温度测量程序流程图如图4所示。
当模块接受到主机的读取命令时,则进入通信中断程序。Modbus协议是应用于工业控制上的一种通用通信协议。主要有两种通信模式:ASCII和RTU模式。由于在同样的波特率下,RTU比ASCII能够传送更多的数据,因此采用RTU模式来实现模块的MoSbus通信。它的消息帧格式主要有地址、功能码、数据、校验码构成。Modbus协议的通信中断程序流程图如5所示。
4 结语
本模块采用了AVR单片机为控制核心,采用外扩一片低成本的13位A/D芯片,通过电子开关切换实现多路测温电路。设计了一种PWM转DAC电路。基于Modbus通信协议,通过RS 485网路与主机通信。结构简单,准确度高,通用性好。实际使用中,在高温和强干扰环境下,模块仍能正常工作。
关键字:Modbus 温度采集 PWM DAC
引用地址:
带DAC输出的多通道温度采集模块的设计
推荐阅读最新更新时间:2024-03-30 22:18
STC15F104W PWM 调光
一、原理图 二、源程序 /** 主控MCU:STC15F104W 开关:INT0(P3.2) 下降沿触发 亮度增加:INT2(P3.4) 下降沿触发 亮度减少:INT3(P3.5) 下降沿触发 PWM输出:P3.3 **/ #include reg51.h #include intrins.h //#define FOSC 24000000L //晶振频率 #define FOSC 6000000L //晶振频率 #define MACHINE_CYCLE (FOSC / 1000000) //时钟震荡6次1μs #define _1US 1 //1u
[单片机]
基于PWM降压转换器AP3003的车载充电器的系统设计
随着电子技术的不断发展,手机、MP3、DSC等移动多媒体设备正逐渐成为人们生活中不可缺少的工具,与这些产品相对应的充电器设计也越来越受到关注。按照充电器的使用场合,可以分成家用型充电器和车载充电器,一般手机自带的充电器多数是家用型,即交流输入型;车载充电器是一种直流输入型的充电器,它的出现使移动设备的充电场合更加多样化。目前BCD公司提供的比较常用的车载充电器方案的控制芯片主要有AZ34063A/C,AZ494B/D和AP3003。
AZ34063A/C方案的优点是成本较低,缺点是限流点不准确,过热问题较为普遍;AZ494B/D方案的优点是设计灵活性较强,缺点是外围器件选择较复杂,需要选择合适的功率管、驱动电路,同时需
[电源管理]
STM32之timer1产生PWM(互补通道)
一、简介 本文介绍STM32系列如何使用timer1的第TIM1_CH2N通道(PB14)产生PWM。 二、实验平台 库版本:STM32F10x_StdPeriph_Lib_V3.5.0 编译软件:MDK4.53 硬件平台:STM32开发板(主芯片stm32f103c8t6) 仿真器:JLINK 三、版权声明 原文地址:http://blog.csdn.NET/feilusia 四、实验前提 1、在进行本文步骤前,请先阅读以下博文: 1)《STM32之timer3产生PWM》:http://blog.csdn.net/feilusia/article/details/53634
[单片机]
详解PWM开关稳压电源尖峰干扰
1 引言
PWM(PulseWidthmodulation)型开关稳压电源具有体积小、效率高的优点,作为电源设备在许多领域得到了广泛的应用。但是,开关三极管的工作状态转换持续期短、频谱甚宽的尖峰干扰是其致命弱点,它不仅影响开关电源本身,而且还会干扰邻近的其它电子设备。
开关稳压电源工作时开关三极管和续流二极管(亦可以是另一个开关三极管)总是交替地导通或者截止,图1中KQ和KD并非是理想器件,两种状态的转换需要一定的时间,这就产生了尖峰干扰。在状态转变过程中,该导通的开关没有完全导通,而该截止的开关却又没有截止的瞬间,电源到地有直接的通路,产生瞬态电流Is。该电流跟开关三极管导通时的电流Imax及截止时的电流
[电源管理]
atmega8 例程:T1定时器 快速PWM
/* * 函数库说明:ATMEGE8 T1定时器 快速PWM * 版本: v1.0 * 修改: 庞辉 * 修改日期: 2011年08月11日 * * 说明: OC1A 20khz 50%占空比 * OC1B 10khz 33%占空比 * 且在溢出中断中频率不断改变 * * 版本更新: * *注意:快速PWM模式 WGM1=5,6,7,14,15 *
[单片机]
使用AVR实现PWM波
简介:使用AVR的定时器实现PWM,具有众多优点。 1:AVR 定时/计数器的PWM 模式可以分成快速PWM和频率(相位)调整PWM 两大类。 快速PWM 可以得到比较高频率的PWM 输出,但占空比的调节精度稍微差一些。此时计数器仅工作在单程正向计数方式,计数器的上限值决定PWM的频率,而比较匹配寄存器的值决定了占空比的大小。PWM 频率的计算公式为: PWM频率 = 系统时钟频率/(分频系数*(1+计数器上限值)) 频率(相位)调整PWM 模式的占空比调节精度高,但输出频率比较低,因为此时计数器仅工作在双向计数方式。同样计数器的上限值决定了PWM 的频率,比较匹配寄存器的值决定了占空比的大小。PWM 频率的计
[单片机]
stm8程序设计之PWM
在单片机应用系统中,也常常会用到PWM 信号输出,例如电机转速的控制。现在很多高档的单片机 也都集成了PWM 功能模块,方便用户的应用。 对于PWM 信号,主要涉及到两个概念,一个就是PWM 信号的周期或频率,另一个就是PWM 信号的占空比。例如一个频率为1KHZ,占空比为30%,有效信号为1 的PWM 信号,在用示波器测量时,就是高电平的时间为300uS,低电平的时间为700uS 的周期波形。 在单片机中实现PWM 信号的功能模块,实际上就是带比较器的计数器模块。首先该计数器循环计数,例如从0 到N,那么这个N 就决定了PWM 的周期,PWM 周期=(N+1)*计数器时钟的周期。在计数器模块中一定还有一个比较器,比较器有2
[单片机]
一种基于PWM快速产生模拟电压的方法
1,概述 在电子和自动化技术的应用中,数字信号转换模拟控制信号输出是电子设计中常见的问题,然而许多单片机内部并没有集成数摸转换器(DAC)。当然市场上也有一些专用的D/A转换芯片,但这类芯片价格昂贵,并且需要多个处理器功能管脚来控制,这对一般的简单应用是不适合的。 所以在有些应用中,由单片机的PWM输出(或者通过定时器和软件一起来实现PWM输出),经过简单RC滤波电路实现DAC来得到模拟电压是一种比较好的选择。然后,这种方法的一个缺点就是电平转换时间过长,本文提出了一种新的方法来克服该问题。 2, RC滤波电路 图1是传统的RC滤波电路,PSoC通过GPIO口和RC滤波产生模拟电压
[模拟电子]