基于Matlab的一种小型温度检测系统
方吕,李淑芬
(北京化工大学,北京联合大学,100029)
摘要:基于Matlab环境下PC机与单片机实时串行通信及数据处理的方法,设计了一个小型温度检测系统,由单片机和DS18B20完成数据采集,PC机实现通信数据的分析处理及图形显示,并得到温度随时间变化的函数解析式。使用Matlab编程,提高了开发效率,具有一定的实用性。
关键字:Matlab 设备控制箱串口通信 DS18B20
中图分类号:TP274 文献标识码:B
A Small Temperature-Measuring System Based on Matlab
Fang Lv LiShufen
(Beijing University of Chemical Technology,Beijing Union University,Beijing,China,100029) Absract: Based on the principle of real-time asynchronous communication between PC and MCU in Matlab,a small temperature-measuring system was designed.The MCU and DS18B20 is used for data acquisition,PC is used for processing and showing the result graphically,then the analytical function is worked out.The communication system was developed on Matlab,which improves the development efficiency greatly,the system is pratical.
Key words: Matlab instrument-control toolbox serial communication DS18B20
1 前言
温度是表征环境的一个重要的参数。在工程领域,尤其像工程热力学等,温度检测非常普遍,对温度精确测量以便实时控制也显得尤为重要。
在控制系统中,上位机与下位机之间实现通信的方法和应用平台很多。目前,以VB和VC开发的通信软件较多,然而,这类软件虽然功能完善,但是数据采集到计算机后要进行各种处理(例如滤波,系统辨识,曲线拟合等)就显得不方便,编程比较复杂。MATLAB 具有强大的数据处理能力及功能丰富的工具箱,被广泛的应用于信号处理、自动控制等领域[1]。它编程语言简单易学,利用简单的命令就可以代替复杂的代码,极大地提高了开发效率。
本实验基于Matlab环境下设计了一个小型温度检测系统,下位机使用AT89S51单片机和DS18B20完成温度数据采集,上位机在Matlab环境下,调用设备控制箱serial类操作RS-232串口,用串行通信方式交换数据,进而借助Matlab对数据进行分析和处理,得到了温度随时间变化的函数解析式,同时介绍了基于Matlab环境下PC机与单片机串行通信的实时数据处理的实现方法。
2 系统总体设计
图1 系统结构图