基于串行通信的MATLABGUI在压力传感器中的标定软件设计

基于串行通信的MATLABGUI在压力传感器中的标定软件设计

1680

计算机测量与控制.2010.18(7) ComputerMeasurement&Control

文献标识码:A

软件工程技术

文章编号:1671-4598(2010)07-1680-04 中图分类号:TP273 5

基于串行通信的MATLABGUI在

压力传感器中的标定软件设计

李 颀1,张建军1,李沙沙1,丁明东2

(1 陕西科技大学电气与信息工程学院,陕西西安 710021;2 西安中星测控有限公司,陕西西安 710077)

摘要:以MATLAB的丰富函数和图形用户界面编程为基础,通过下位机对压力传感器的温度和压力信号采集,利用MATLAB的RS232串口实现GUI(GraphicalUserInterface)对下位机的数据获取,在GUI上利用MATLAB的神经网络函数完成BP网络的建立﹑训练以对压力传感器温度补偿,将训练后的BP网络权值与阈值通过串口发送给下位机,完成软件标定;结果表明,MATLAB环境下的GUI操作方便,BP网络算法温度补偿精度较高,利用串口通讯可实现在线标定,方法通用性强,可以实现批量生产。

关键词:MATLABGUI;压力传感器;BP网络;温度补偿;RS232串行通信

ApplicationofCalibratedSoftwareinPressureSensorBasedon

SerialCommunicationMATLABGUI

LiQi1,ZhangJianjun1,LiShasha1,DingMingdong2

(1 ElectricalandInformationEngineeringCollege,ShaanxiUniversityofScienceand

Technology,Xi

an 710021,China;2 Xi anChinastarM&CLimited,Xi an 710077,China)

Abstract:BasedontherichfunctionandgraphicaluserinterfaceprogramofMATLAB,temperatureandpressuredatesofpressuresen-sorarecollectedbylowercomputeranddeliveredtoGUIwithMATLABserialportRS232communication.BPnetworkiscreated,trainedandsimulinkedfortemperaturecompensation.TheweightsandthresholdsoftrainedBPnetworkaresenttolowercomputerandonlinecal-ibrationiscompleted.TheresultshowsthattheoperationofGUIisconvenient,BPnetworkintemperaturecompensationisatwork,onlinecolibratationisattainedbyMATLABserialportcommunication,themethodisgenerallyusedandmassproductionisrealized

Keywords:MATLABGUI;pressuresensor;BPnetwork;temperaturecompensation;RS232serialcommunication

0 引言

压力传感器广泛应用于工业生产的许多行业,它的精度直接决定着测控系统的性能,影响压力传感器的精度主要原因是

压力传感器的温度漂移,解决温度漂移问题的方法有硬件和软件方法,硬件方法存在电路复杂,又引入了新的温度漂移,软件方法有最小二乘法、多项式曲线拟合、查表法和BP网络算法等,其中BP网络算法是比较好的方法。但是利用BP网络对压力传感器标定时又存在诸多困难。需要对压力传感器的温度和压力信号采集,将采集的数据归一化处理,建立BP网络模型并对训练之后的BP网络的权值与阈值获取,利用对下位机编译方式或用PC机对下位机通讯方式完成标定,一般的图形用户界面(GUI)无法完成BP网络训练功能。

MATLAB是一种高效的工程计算语言,它在数值计算和数据处理中有广泛的应用,有丰富的工具箱,支持BP网络算法,从Matlab6 0版本开始,Matlab中增加了设备控制箱(instrumentcontroltoolbox),提供对RS-232/RS-485通信标准的串口通信的正式支持。利用MATLAB自带的图形界面开发环境GUIDE设计GUI,在GUI上利用设备工具箱实现RS232通讯完成传感器温度和压力信号的采集,在GUI上完成数据归一化处理,建立BP网络并对BP网络训练,将训练

收稿日期:2010-01-17; 修回日期:2010-02-27。

作者简介:李 颀(1973-),女,硕士,副教授,硕士生导师,主要从事过程控制及智能控制方面的科研与教学。

[2][1]

获取的权值与阈值利用串口通讯传送给下位机,完成对压力传感器在线标定的功能。

1 总体系统设计介绍

总体设计如图1所示,整个系统的功能实现分为两个阶段,即上位机对传感器温度和压力数据的获取阶段以及在MATLAB的GUI上实现数据的处理及BP网络训练以实现对

传感器标定阶段。为了利用BP网络的数据融合能力消除温度带来的交叉灵敏度问题,数据采集时把传感器工作的温度和压力信号通过AD转换传送给下位机,下位机采用的是MSP430F247,下位机通过RS485串口将数据发送到PC机的缓冲区,GUI界面利用MATLAB的串口通讯实现压力传感器的温度和压力信号获取,采集的数据为-40~80 之间共11组数据,其中10组作为训练样本,1组作为检测样本。将GUI上采集到的数据写成数组形式,利用MATLAB的max(),min()函数分别找出温度,压力采样,压力标定值的最大值﹑最小值,并将训练样本和检测样本归一化处理。在GUI界面上利用训练样本完成神经网络训练,用检测样本检测误差满足一定要求后利用MATLAB的串口按照一定的握手协议将神经网络的权值与阈值发送给下位机,并将归一化之中的温度和压力数据发送到下位机,完成在线标定。

2 BP网络算法及MatlabGUI

2 1 BP网络算法

BP网络[3]是应用最广泛的神经网络模型,它分为输入层、

你可能喜欢

  • 串口通信编程
  • GUI设计
  • 传感器标定
  • 智能压力传感器
  • 通信设计企业

基于串行通信的MATLABGUI在压力传感器中的标定软件设计相关文档

最新文档

返回顶部