摘 要:针对热风阀冷却水系统监测介绍了一个基于DSP的温度和压力采集及报警的实时、高速系统软件设计。该系统采用TMS320F2812芯片,在硬件设计的基础上,借助专业的软件开发系统完成了软件设计。实验表明,DSP处理温度和压力数据能力强,实时性好。
关键词:DSP;热风阀;冷却系统;监测引言
目前单片机广泛应用于医疗器械、测控仪器及智能化领域,单片机体积小、功耗低、扩展灵活,可以进行温度、压力、频率、湿度等参数监测。但单片机硬件资源有限,各类端口集成较少,运算速度慢,在实时性强和数据运算量大的控制系统过程中,系统很难达到现场实时性要求,稳定性也不够。随着现代科技的发展,DSP芯片集成度高,运算能力强,价格大幅度下降,在一些信号运算领域和实时性控制领域发挥了重要作用。目前DSP芯片的主流供应商有TI,ADI,Motor ola,Lucent和Zilog,其中TI公司的DSP芯片,硬件温度、指令丰富、外设功能模块高度集成和大容量存储器等特点,被测控领域广泛应用,可满足对信号的高速实时精确处理。
文章在原硬件设计基础上,借助CSS和VB开发系统完成热风阀监测系统软件设计。主要是将冷却水温度和压力值通过A/D转换程序并行转换成数字量,可以对温度和压力范围做出限制,超出范围将进行报警。除了在现场能够实行监测外,在监测室的上位机分析仪上,也实现对其温度、压力的监测。
1 软件设计
1.1 下位机主程序设计
主程序循环结构中,设置响应的二个中断方式,用中断方式实现各个任务,中断由A/D转换器触发。开始初始化时,将可屏蔽中断屏蔽掉,设定芯片工作频率,设置芯片看门狗工作方式,清除片内数据SRAM,置为零。初始化AD,设为所需的工作方式,设置相应I/O引脚的状态。初始化结束后,系统进入无限循环等待中断产生。
1.2 通信程序流程设计
实现DSP芯片与上位机的通信,在上位机通过数据线对下位机的地址和相应数据进行读写控制。程序流程图如图1所示。
1.3 A/D转换程序流程设计
利用F2812芯片内集成有12位A/D转换器,能够快速地将温度和压力数据进行转换。程序开始,对系统和A/D转换器进行初始化,赋A/D中断地址。结束后,对A/D转换器状态进行判断。当A/D转换器占用时,主程序进入死循环,程序处于等待状态;当A/D转换器空闲时,则启动A/D通道进行转换,当A/D正常转换完毕后,进入中断服务子程序。中断服务程序用数组存放所有的A/D转换结果,并再次启动A/D通道进行转换,如此循环,从而实现系统对输入模拟信号的实时采集,程序的流程图如图2所示。
1.4 上位机程序设计
上位机监测系统,主要是接收无线上传的数据,实时地研究每个阀的工作状况,研究越限与否,并且对分析数据进行存储。上位机主要有以下几个部分的监测功能:一个是对无线上传的各个阀的信息进行分析,存储;另一个是利用数据库对用U盘存储的数据进行还原,存储和分析,得到热风阀冷却水各个参数的时间变化曲线以系统地分析阀的工作状况。程序的流程图如图3所示。
监测界面的串口设置程序
Private Sub Form_Load()
Dim strFileName As String
Call tabinit
gridIndex = 1
writeFlag = True
MSComm_Start_Flag = False
strFileName = App.Path & "\报警记录.txt"
Open strFileName For Append As #1
MSComm1.CommPort = 1 '通讯串口设定
MSComm1.Settings = "9600,n,8,1" '波特率和发送字符格式设定
MSComm1.InputLen = 0 '设定返回一次从接收缓冲区中读取字节数,一次读取所有数据
MSComm1.InputMode = 0 '设定以取回的数为文本格式
MSComm1.InBufferSize = 1024 '设定接收缓冲区
MSComm1.InBufferCount = 0
MSComm1.OutBufferSize = 1024 ' 设定发送缓冲区
MSComm1.OutBufferCount = 0
MSComm1.RThreshold = 1 ' 每个字符到接收缓冲区都触发接收事件
MSComm1.SThreshold = 1
MSComm1.PortOpen = True
Inputsignal = ""
End Sub
oncomm设置程序
If (MSComm_Start_Flag = True) Then
Select Case MSComm1.CommEvent ' 设置oncomm事件,读取DSP内存的数据
Case comEvReceive
k = MSComm1.Input
t.Text = MSComm1.Input
Case Else
End Select
End If
2 结束语
通过一些模拟数据实验,该系统响应速度较快,灵敏度高,经过一些调整,可以适应多种温度和压力的监测。实验表明,DSP处理温度和压力数据能力强,实时性好。
参考文献
[1]Visual Basic 6.0程序设计与开发技术大全[M].人民邮电出版社,2004.
[2]万山明.TMS320F281X DSP原理及实例[M].北京航空航天大学出版社,2007.
[3]孙传有,孙晓斌,汉泽西.测控系统原理与设计[M].北京航空航天大学出版社,2004.
[4]李江全,张丽.Visual Basic串口通信与测控应用技术实战详解[M].人民邮电出版社,2007.
作者简介:石建军(1977-),男,湖南新邵人,讲师,本科,硕士学位,研究方向:电气工程和自动控制。