汽轮机内蒸汽湿度测量控制系统研究
扫描二维码
随时随地手机看文章
3.1 单片机内部的主要外围电路
晶体振荡器电路:单片机系统最敏感的是时钟信号、复位信号和中断信号,若电磁干扰侵入到这些信号中,最容易于扰微控制器,使系统产生误动作。尤其是时钟信号中累加噪声干扰后。会改变时钟分频信号,导致单片机工作时序发生紊乱。本系统提供了高速和低速晶体振荡器电路,可使单片机内部不同模块输出不同频率的时钟。用户可以用高速晶体振荡器产生频率较高的MCLK供给CPU以满足高速数据的运算需要,也可以在不需要CPU工作时关闭高速晶体振荡器,而对于实时时钟可用低速晶体振荡器产生频率较低的ACLK。输入、输出、电源等回路应并联一些小电容以避免噪声干扰。
12位D/A转换模块:与较早推出的型号相比,MSP430F15/16x系列单片机新增了双12位的D/A转换器,D/A转换器主要用于将单片机的数字量输出转化为实际的模拟量以控制外接器件。此D/A转换器在使用过程中可以设置成8位或12位转换模式。在理想情况下,选择8位转换模式时,分辨率为1/256;选择12位时,分辨率高达1/4 096。D/A转换器在定时器Timer_A的配合下完成控制信号的输出。
定时器Timer_A模块:MSP430F157单片机的定时器是16位计数器,具有四种工作模式:停止模式、增计数模式、连续计数模式和增/减计数模式。通过设置相应的定时器A寄存器可以选择四种模式之一。而且Timer_A有两个中断向量,即CCR0中断向量和TAIV中断向量,其中CCR0是单源中断向量,具有最高优先级;TAIV是多源中断向量,优先级较低。在本系统中选择增计数模式,利用CCR0设置定时器的中断频率,控制采样时间。
控制原理:当谐振腔由失谐状态变化到谐振状态时,输出功率骤降为零,输出失谐零信号,这时将得到一个从“1”到“0”的下降沿,使单片机的Timer_A停止计数,输出保持不变,直到湿度发生变化,谐振腔由谐振状态到失谐状态,产生“0”到“1”的上升沿,这时Timer_A开始计数。当计数到CCR0时,发送中断标志,启动D/A转换.如果得到新数据设置一个标志位通知主程序,再等待下个信号的到来。
3.2 器件选择
MSP430F157的工作电压为3.3 V,现有的开关电源无法提供,另外考虑到系统要求电源具有稳压功能和纹波小、硬件系统功耗低等特点,因此电源部分采用TI公司的。TPS76033或者LM1117。这两款器件都能很好地满足硬件系统要求,此外,都具有很小的封装。能够有效地节约PCB面积。
在单片机系统中,单片机需要复位电路,复位电路可以采用RC电路也可以采用复位器件。RC复位电路成本低,但可靠性不高;而复位器件则具有很高的可靠性。为了保证复位电路的可靠性,该系统采用复位器件MAX809STR实现复位电路。
温度测量电路由XTR101器件实现。XTR101是一款精密、低漂移的双线变送器,可以将微弱的电压信号放大并变换成4 mA~20 mA的电流信号后,远距离传送。它是由精密的1 mA电流源组成,XTR101的失调电压为30μV,温漂为0.75μV/℃,非线性度为0.01%。
频率测量电路:为了简化电路,提高集成度,系统频率测量部分采用CPLD实现。
4 软件设计
MSP430系列单片机的代码存储空间从1 kB至60 kB不等。当程序量大于8 kB时,使用汇编语言会使软件设计工作的效率大大降低。用C语言实现系统的应用软件开发,可以大大提高开发调试工作效率;同时,所产生的文档资料也容易理解,便于移植。适用于MSP430系列的C语言与标准C语言兼容性强。选用美国IAR公司提供的集成调试环境IAR Embedded Workbench和C语言C-SPY调试器作为开发平台。它是一种开发不同目标处理器应用程序的灵活方便的集成环境,提供了友好的用户界面和强大的调试环境,便于开发MSP430系列单片机的应用程序。MSP430系列单片机可以利用Workbench,直接下载至片内Flash内存脱机运行。调试过程中可以在上层软件中看到各寄存器的内容并在线修改,支持单步运行,可以在线观察定义的各个变量实时值。采用把所有相关文件放入一个项目中的组织方式,编译运行时软件会自动将文件按内在联系自动组合在一起,支持C语言编程。系统软件设计流程如图2所示。
系统主程序为:
5 结束语
与以往采用分离元件实现的控制系统相比,本文所介绍的MSP430F157单片机实现的湿度测量控制系统精度高、设计简单、连线少,避免了电磁干扰和由于线间相互靠近产生短路现象。软件设计采用IAR Embedded Workbench和C语言C-SPY调试器作为开发平台,功能强、操作使用简便。