基于MSP430单片机的原油含水率测定仪的设计

分享到:

原油含水率测定仪出现于20世纪90年代末,它是有温控仪、定时器等开关仪表组成的一种集测量与控制于一体的蒸馏法测定原油含水率的产品,适用于石油、石化等行业中原油含水率的测量。本仪器采用MSP430单片机,是集温度控制、时间控制、蒸馏功率控制和制冷循环水控制等功能为一体的自动化、智能化仪器。

系统设计方案
1温度传感器的选择
一般情况下,在温度测量中所采用的传感器有:热电偶和热电阻两大类。本系统需测控3处的温度,由于热电偶需温度补偿,而热电阻不需要,从硬件成本和软件复杂程度考虑确定采用热电阻PT100。


2 MSP430单片机
MSP430系列单片机为低功耗16位的精简指令构架,在线可编程,将大量的外围模块整合到片内:片内DCO振荡器,看门狗定时器/通用目的定时器,Timer_A3(带3个捕获/比较寄存器和PWM输出的16位定时器),Timer_B7(带7个捕获/比较寄存器和PWM输出的16位定时器),I/O端口1、2(每一个有8个I/O端口,均具有中断功能)、I/O端口3、4、5、6(每一个有8个I/O端口,可以位操作),ADC12(8路12位A/D),USART0和USART1,16位硬件乘法器等。


3 ICM7218A显示驱动芯片
本系统需26位数码管显示。为减少空间,少用器件,选用4片ICM7218A显示驱动器。


ICM7218A译码驱动芯片是8位静态LED驱动器,内含8×8位静态RAM,用于存放显示数据;有较强的位段驱动能力,能直接连接8只0.5英寸数码管。

系统总体组成结构及工作原理
如图1所示,整个系统由单片机主机系统、传感器信号处理电路、加热控制电路、冷却水控制电路、键盘、数码管显示和电源模块等组成。P1和P2.0、P2.1口作为系统的键盘线;P3、P4和P2.3~P2.7口作为系统的控制驱动线;P5和P2.2、P6.0~P6.3口作为系统的显示驱动线;测量信号通过P6.0~P6.3接至MCU。系统的电源模块产生+2.5V、+3.6V、+5V和+12V电压,分别为主机系统和传感器接口电路提供稳定的工作电压。

图1  系统总体构成图


本系统通过温度传感器PT100进行冷凝水、蒸馏冷凝器、恒温稀释箱内的温度数据采集,经过放大处理模块进行高精度的测量。用户可以通过键盘选择加热工位和设定冷凝器内汽温的上限值;设定冷凝水和加热稀释箱的温度值;设定蒸馏时间;设定输入温度和电压的标定值等参数。仪器采用冷凝循环水系统,MPS430单片机通过控制制冷机组来控制循环水的温度在室温左右(约25℃);原油一般在60℃时取样,MCU通过控制加热管使加热稀释箱的温度在60℃左右。油样在加热蒸馏前温度不高,为提高化验效率,蒸馏时先采用大功率加热,油样近100℃时切换小功率加热。加热蒸馏功率的调整通过控制加热管供电电压来实现,系统能显示加热管供电电压;显示定时时间;显示循环水温度的设定值和实际值;显示蒸馏冷凝器内温度;显示加热稀释箱内温度的设定值和实际值。

系统的主要硬件电路设计
1 温度测量放大电路
如图2所示,电路由TL431精密稳压器、电阻桥、放大电路组成。精密电阻R3、R4、R5和PT100组成了一个电阻桥,电阻R2用于电桥补偿;TL431和电阻R1组成2.5V的精密稳压电路,给电阻桥供电;热电阻PT100采用3线连接,可以抵消连线长度误差;测量温度范围在0~100℃,采用单电源仪表放大器AD623 对电桥信号进行放大处理。

图2 温度测量组成电路原理图


2 加热蒸馏控制驱动电路
电路如图3所示,单片机控制信号经反向器74LS07后,控制三极管,驱动继电器动作;继电器K1,总控各工位加热;K2起到加热功率切换的作用;K3~K8(或K14)控制各工位加热管;R1、R2控制固态调压器输出不同的电压波形。

图3 加热电路原理图


3 电磁搅拌电路设计
如图4所示,固态调压器调压调速,经变压器降压,全桥整流,变成直流电,控制12V直流电机。

图4 电磁搅拌电路原理图


4 加热稀释电路设计
有反相器74LS07、二极管、三极管、电阻、继电器组成控制电路,控制加热管和风机。


5 制冷循环水电路设计
有反相器74LS07、二极管、三极管、电阻、继电器组成控制电路,控制压缩机、散热器、水泵。


6 电压测量电路设计
该参数精度要求不高,采用全桥整流、电阻降压获取信号,进单片机A/D端。


7 键盘、显示电路设计
本系统有22个按键,采用5×5键盘阵列,占用10条I/O线:P1.0~P1.7和P2.0、P2.1。用单片机的P5口作为和显示驱动器ICM7218A数据传输总线,P6.2作为公共控制线连接ICM7218的MODE,P2.2、P6.0、P6.1、P6.3作为片选线连接ICM7218的/WR脚。

系统软件设计
系统的软件采用模块化结构设计,分为八大块,即系统初始化模块、数码管显示模块、按键识别及处理模块、水温测量及控制模块、稀释箱温度测量及控制模块、蒸汽温度测量及控制模块、定时处理模块、加热管供电电压测量模块。


系统通过初始化模块设置显示缓冲区、堆栈指针、操作标志和工作寄存器、各I/O端口的方向、A/D转换器设置、系统定时器模块,以及系统中断设置等。键盘模块负责按键的识别和按键处理,当有按键动作时调用相应的按键处理子程序进行处理,可实现对循环水、稀释箱及冷凝器内温度设定,定时时间的设定,工位的选择及各部分的起停。水温测量及控制模块能对冷凝循环水温度数据进行处理,处理数据送显示缓冲区,发出控制信号控制制冷机组,使水温保持在设定范围。稀释箱温度测量及控制模块能对稀释箱内的温度数据进行处理,处理数据送显示缓冲区,发出控制信号控制加热管,使箱内温度保持在设定范围。蒸汽温度测量及控制模块能对冷凝器内温度数据进行处理,处理数据送显示缓冲区,发出控制信号控制加热管,使冷凝器内温度不超过设定值。定时处理模块对加热功率的切换、电磁搅拌部分的启动和整个蒸馏时间的定时控制,蒸馏时间到,蒸馏加热、制冷循环水、电磁搅拌等部分停止运行,启动降温部分。