基于虚拟仪器的电子秤设计.docx
《基于虚拟仪器的电子秤设计.docx》由会员分享,可在线阅读,更多相关《基于虚拟仪器的电子秤设计.docx(16页珍藏版)》请在冰豆网上搜索。
![基于虚拟仪器的电子秤设计.docx](https://file1.bdocx.com/fileroot1/2023-2/4/18185826-81ca-407b-81eb-6a8f6c2ef80a/18185826-81ca-407b-81eb-6a8f6c2ef80a1.gif)
基于虚拟仪器的电子秤设计
课程设计说明书
(2016/2017学年第一学期)
课程名称:
《测控系统工程设计》
题目:
基于虚拟仪器的电子秤设计
专业班级:
学生姓名:
学号:
指导教师:
设计周数:
一周
设计成绩:
20年月日
绪论·………………………………………………………………………………………………………2
1、设计的目的………………………………………………………………………………………………3
2、原始数据和主要任务及技术要求………………………………………………………………………3
原始数据和主要任务…………………………………………………………………………………3
技术要求………………………………………………………………………………………………3
3、电子称系统的硬件部分简述……………………………………………………………………………3
实验原理·………………………………………………………………………………………………3
实验步骤·………………………………………………………………………………………………4
软件流程………………………………………………………………………………………………4
数据采集………………………………………………………………………………………………5
4、电子称系统软件设计……………………………………………………………………………………5
用户界面设计…………………………………………………………………………………………5
框图程序设计…………………………………………………………………………………………6
主控模块……………………………………………………………………………………………6
数据采集模块………………………………………………………………………………………7
5、电子称测试系统的调试………………………………………………………………………………11
硬件的安装调试………………………………………………………………………………………11
软件的调试……………………………………………………………………………………………11
U18数据采集卡……………………………………………………………………………………11
开启程序……………………………………………………………………………………………14
程序的调试…………………………………………………………………………………………14
6、总结……………………………………………………………………………………………………14
7、参考文献………………………………………………………………………………………………15
绪论
随着人们对电子称测量数据的精确要求越来越高,电子称已成为现实生活中不可缺少的称重仪,即电子称是各行业对物料进行计量或工矿业在生产过程中对物料重量进行各种控制的新一代重量计量器具。
作为重量测量仪器,虚拟仪器电子秤在各行各业中开始显现其测量精度高,测量速度快,操作简单易学,可以实时监控的巨大优点,使其已经开始逐渐取代传统型的机械杠杆测量称,成为测重领域的主流产品.结合压力传感器技术、数据采集技术和虚拟仪器技术开发设计了一种基于LabVIEW的虚拟仪器电子秤,该系统采用普通Pc机为主机,利用图形化可视测试软件LabVIEW为软件开发平台,将被测重量转换处理进行数据采集,实时进行处理、显示.设备成本低,使用方便灵活,适用于工厂企业和教学。
选择labview软件是因为LabVIEW是美国NationalInstruments(简称NI)公司推出的一个图形化软件开发环境,它是一个通用的软件开发平台,其最大优势在于测控系统的开发。
它不仅提供了几乎所有经典的信号处理函数和大量现代的高级信号分析工具,而且LabVIEW程序还很容易和各种数据采集硬件集成,可以和多种主流的工业现场总线通信以及与大多数通用标准的实时数据库链接。
这种编程方式强调信号处理的实际过程,编程简单,调试方便。
本文的主题是“基于虚拟仪器的电子称设计”,基于express平台编程设计的。
主要阐述了硬件电路构成,软件设计的思想和具体实现,系统应用虚拟仪器进行数据采集、处理和显示,从而实现电子称的设计功能,它具有测量精度高、界面友好、运行稳定可靠、功能便于扩展。
且本文对上述的功能模块逐一进行了分析,并进行了整个测试系统的程序调试与研究。
1、设计的目的
虚拟仪器技术是测试技术和计算机技术相结合的产物,它融合了测试理论、仪器原理和技术、计算机接口技术、高速总线技术以及图形化软件编程技术于一身,实现了测量测试仪器的集成化、智能化、多样化及可编程化,本课程设计的目的旨在帮助学生学习和了解虚拟仪器的原理和开发技术,掌握虚拟仪器软件平台LabVIEW的主要编程方法及调试技术,并完成相应的电子秤设计。
2、原始数据和主要任务及技术要求
原始数据和主要任务
了解电阻应变式传感器的工作原理;掌握桥式测量和差动放大电路的工作原理;确定上位机监控系统的控制方案;利用LabVIEW软件编制上位机监控系统界面,实现电子秤的基本测量功能,建立实时显示曲线,并设定相应的标定系统;对本次课程设计进行总结,撰写课程设计报告。
技术要求
设定相应的“零”标定功能系统和两个10克砝码来标定系统;实现电子秤的基本测量功能,并进行同步动画显示重量;要求系统操作简单,使用方便,满足用户要求;课程设计报告书写规范,文字通顺,图表清晰,数据完整,结论明确。
3、电子称系统的硬件部分简述
实验原理:
1)本实验的压力传感器是电阻应变式传感器,故其电阻变化与电阻的关系如下:
其中:
为灵敏系数,由金属材料决定;当压力F在一定范围内时,
以一个常数正比于F。
故由压力传感器连接线路及压力传感器的性质,可知电路的CH2电压输出与压力传感器上所放置物体的质量近似成线性关系,因而有:
m=a*F+b(a,b为常数)
通过测试,可得到经验方程:
质量=145*UCH2+50
2)利用U18硬件平台可实现模拟信号的采集输入(A/D转换)。
电阻的变化可通过电桥电路转换为相应的电压信号,因此电压信号与压力(被测质量)近似成线性关系,由于电桥输出信号较小且会受到外界信号的干扰,因此在电桥输出后需加上放大电路和抗干扰电路。
具体硬件电路如图:
如图所示,当压力传感器上压力变化时,其电阻也相应发生线性变化,从而压力桥式测量电路输出端电压发生变化,该变化电压通过连接器J2进入由LM324的U8B、U8C、U8D组成的差动放大电路进行一级放大,再经过LM324的U8A进行二级放大后在CH2端输出一个与压力成正比的线性电压波形。
其中通过调节电位器RX4来改变差动放大倍数,在U8D输出端得到一级放大信号;通过调节电位器RX5来调节电路对称性,实现对于干扰信号的抑制。
实验步骤
1)接线:
将压力传感器经J2连接至压力桥式测量电路,将实验板模拟口XS1与采集卡模拟口XS2连接。
2)通过调节电位器RX4来改变差动放大倍数,在U6D输出端得到一级放大信号;通过调节电位器RX5来调节电路对称性,实现对干扰信号的抑制。
3)最终结果是:
在U8A的输出端得到一个二级放大后的信号,该信号特点是:
当压力增大时,该信号曲线显示增大的信息;当压力减小时,该信号曲线幅度也相应应减小。
4)通过LabView编程来实现电子秤的功能,软件要求有“零”标定功能,即无砝码放入时,软件认定为0克,通过提供的两个20克的砝码来标定系统。
软件流程
数据采集
采集卡在设计中的作用
将得到的Ucm电压送到数据采集卡中进行数据采集,再通过USB线将数据送人计算机,由计算机利用软件平台labview进行控制和处理.数据采集卡(DAQ)主要由多路开关、放大器、采样保持器和A/D转换器等组成,它们与定时/计数器、总线接口电路等做在一块印刷电路板上,完成对被测信号的采集、放大和模/数转换任务。
4、电子称系统软件设计
用户界面设计
系统用户界面设计图
用户界面(前面板)是虚拟仪器的重要组成部分,仪器参数的设置、测试结果显示等功能都是通过软件实现,因此要求软件界面简单直接,便于使用.前面板主要由输人控制器(contro1)和输出指示器(indicate)组成。
可通过控制模板和工具模板创建.本系统设汁的用户界面主要包括将测量的重量用指针和数值
显示面板,系统校准和标定(有0g和2个10g标定系统)和控制按钮。
如图
框图程序设计
框图程序相当于程序的源代码,只有创建了框图程序后,该程序才能真正运行。
其设计主要是对节点、数据端口和连线的设计。
本系统采用模块化设计,可将不同测量内容设计成单独的功能模块。
各子模块分别完成一定的功能,在主界面程序或其它的子程序中调用。
各功能模块间的独立性较强,一般都可单独调试、修改和移植。
所以整个系统软件层次清晰、易于理解、便于修改、利于开发新功能。
主控模块
主控模块主要完成对系统的初始化、参数的设定、启动、释放数据采集卡、数据处理等功能
程序运行过程分析:
1)为了拥有对该设备的控制权在使用设备的一切功能前,我们必须用CreateDevice函数创建一个设备对象句柄hDevice,如下图函数我们只需要对这个pADPara参数结构体的各个成员简单赋值即可实现所有硬件参数和设备状态的初始化。
2)初始化AD部件:
功能:
它负责初始化设备对象中的AD部件,为设备操作就绪有关工作,如预置AD采集通道,采样频率等,然后启动AD设备开始AD采集,随后,我们便可以连续调用ReadDeviceAD读取USB设备上的AD数据以实现连续采集。
注意:
每次在InitDeviceAD之后所采集的所有数据,其第一个点是无效的,必须丢掉,有效数据从第二个点开始
返回值:
如果初始化设备对象成功,则返回TRUE,且AD便被启动。
否则返回FALSE,用户可用GetLastError捕
3)数据处理利用求取的平均值乘以校准时求得b的数值得到的电压值再加上a的在校准时得到的数值就实现了称重数据的读取
4)根据while循环变量是否为真来判断是否结束程序,如果为真继续执行,如果为假则推出程序。
5)释放设备
功能:
释放设备对象所占用的系统资源及设备对象自身。
返回值:
若成功,则返回TRUE,否则返回FALSE,用户可以用GetLastError捕获错误码。
应注意的是,CreateDevice必须和ReleaseDevice函数一一对应,即当您执行了一次CreateDevice,再一次执行这些函数前,必须执行一次ReleaseDevice函数,以释放由CreateDevice占用的系统软硬件资源,如系统内存等。
只有这样,当您再次调用CreateDevice函数时,那些软硬件资源才可被再次使用。
数据采集模块
LabVIEW的数据采集(DataAcquisition)程序库包括了许多NI公司数据采集(DAQ)卡的驱动控制程序。
通常,一块卡可以完成多种功能-模/数转换,数/模转换,数字量输入/输出,以及计数器/定时器操作等。
用户在使用之前必须DAQ卡的硬件进行配置。
这些控制程序用到了许多低层的DAQ驱动程序。
本课程需要一块安装好的DAQ卡以及LabVIEW开发系统。
本次设计中数据采集模块主要完成模拟量与数字量的相互转换,实现数据的采集测量。
图中数组为初始化数组,为初始值0,每次执行完后按下按钮数组自动恢复初始值,并依次循环,直到程序结束,表示数组长度为了提高读取速率,根据特定要求,其长度必须指定为32字的整数倍长,如32、64、128……8192等字长,否则,USB设备对象将失败该读操作。
为创建一个ID设备对象句柄,并返回设备对象句柄;
函数可以使用创建句柄以初始化设备的AD部件并启动AD设备;
参数:
创建了设备对象句柄后,便可用函数初始化AD部件,关于采样通道、频率等的参数的设置都是由这个函数的参数结构体决定的,对这个参数结构体的各个成员简单赋值0,2,2。
即可实现所有硬件参数和设备状态的初始化,然后这个函数启动AD设备反复读取AD数据以实现连续不间断采样。
(注:
虽然主要面对批量读取,高速连续采集而设计,但亦可用它以少量点如32个点读取AD数据,以满足慢速采集需要
由于参数需要的是返回值,所以需要实现对AD设备的关闭;
关闭AD设备后,便可得到相应的数据(但设备对象句柄依然存在)。
数组:
要使用这个数组,根据LabView的特点,应分配一个16字节的内存单元,每一个字节的内存单元对应相应位置上的开关量输入状态。
要使用这些状态,根据得到DI数据,将存放实际的当前开关量状态的内存单元用IndexArray数组操作控件将其每一路开关量状态分离出来,即可确定每一路开关输入状态。
详见开关量输入输出LabView演示部分。
数组的功能主要实现对数组内容的替换,将得到的电压值输出从而实现对数据的采集;
校准标定模块
校准标定模块主要是对系统进行校准和标定模块如下:
图中为while循环结构,i为循环变量,右下端则为条件端子;
如上图用0克砝码,既无法码放入时,软件认定为0克进行校准,即U0=0g;
为分支结构图:
Case,其中?
表示条件端子,False表示子程序标识,当按下0克砝码按钮时,子程序标识为Ture,代表真说明校准成功;
如上图用20克砝码来标定系统时程序进行前的条件端子,即U20=20g;
为分支结构图:
Case,其中?
表示条件端子,False表示子程序标识,当按下2O克砝码按钮时,,子程序表示为Ture,代表真说明校准成功;
:
如上图为延时计时器,且延时时间为2秒;
如上图校准是程序性进行前的条件端子;为20克;是的一个局部变量;
是的一个局部变量;为b的输出值;为a的输出值。
根据流程图和程序代码,我们对校准标定模块进行如下分析:
将标定数值20克除以两个局部变量的电压差即U20减去UO得到数值b,表达式为20/(20-0)=1g;0减去乘以b的值得到数值a,表达式为0-U0*b=a;根据经验方程:
m=b*f+a得a=145g
数据处理模块
的功能主要对采集数据输出的电压值求取平均数;的局部变量;的局部变量数组实现的是元素的输出;和是数据采集输出的两种方式其实现功能是用所得平均值乘以变量b值将得到的电压值加上变量a值,从而实现数据的输出。
当按下时表示while循环结束;把以上的各个加以模块综合就可以得到Labview完整的电子称设计流程图如下:
5、电子称测试系统的调试
硬件的安装调试
在调试时,我们用一台可调稳压电压源来模拟压力传感器的输出电压信号。
把数据采集卡插到计算机主板上,从采集卡端子盒的输入端子引出两根导线分别与稳压电源的正负电极相连接,再从采集卡端子盒的输出端子引出两根导线分别与继电器的输入端正负极相连接,具体实验步骤如下:
1)接线:
将压力传感器经J2连接至压力桥式测量电路,将实验板模拟口XS1与采集卡模拟口XS2连接。
2)通过调节电位器RX4来改变差动放大倍数,在U6D输出端得到一级放大信号;通过调节电位器RX5来调节电路对称性,实现对干扰信号的抑制。
3)最终结果是:
在U8A的输出端得到一个二级放大后的信号,该信号特点是:
当压力增大时,该信号曲线显示增大的信息;当压力减小时,该信号曲线幅度也相应应减小。
4)通过LabView编程来实现电子秤的功能,软件要求有“零”标定功能,即无砝码放入时,软件认定为0克,通过提供的两个20克的砝码来标定系统。
阻值来观察继电器的离合。
在软件环境下编程实现数据的采集和测试。
软件的调试
认真的进行软件调试是软件设计至关重要的环节,正是在一次次的调试过程中不断的改进程序,是程序越来越完善。
每次程序的调试过程一般可分为几个步骤进行。
U18数据采集卡
U18模板是USB总线兼容的数据采集板,可经USB电缆接入计算机,构成实验室、产品质量检验中心、特别是野外测控、医疗设备等领域的数据采集、波形分析和处理系统,也可构成工业生产过程控制监控系统。
而且它具有体积小,即插即用等特点,因此是便携式系统用户的最佳选择。
U18板上设计有12Bit分辨率的A/D转换器和D/A转换器,提供了16路单端或8路双端的模拟输入通道和4路D/A输出通道,A/D转换器输入信号范围:
±5V、±10V、0~10V,D/A转换器输入信号范围:
0~5V、0~10V、±5V、±10V。
16路开关量输入,16路开关量输出且均能上电清零。
使用本卡时最好通过板卡上EX_VCC插座接上外接电源。
如本卡不能正常工作,必须接上外接电源。
注:
使用外接电源时,应先接外接电源,后接USB电缆。
拔掉时先拔USB电缆,后拔外接电源。
模拟信号输入部分:
模拟通道输入数:
16路单端或8路双端输入;模拟输入阻抗:
100MΩ;模拟输入电压范围:
±5V、±10V、0~+10V;模拟输入共模电压范围:
>±2V;放大器建立时间:
2Us;放大器增益G与电阻RG的运算关系为:
G=1+50KΩ/RG
放大器增益与电阻RG的对应关系如下表所示:
增益
RG(Ω)
最接近的阻值(1%的精度)RG(Ω)
1
空
空
2
5
10
20
50
100
511
200
249
500
100
1000
2000
5000
10000
A/D转换电路部分:
A/D分辨率:
12Bit(4096)非线性误差:
±1LSB(最大)
转换时间:
10us系统测量精度:
%
D/A转换电路部分:
输出通道数:
4路;模拟输出电压范围:
0~5V、0~10V、±5V、±10V;
D/A分辨率:
12Bit(4096);非线性误差:
±1LIB(最大);
D/A输出精度(满量程):
±1LIB;建立时间:
10μS%精度);
输出阻抗:
Ω;
开关量输入输出部分:
16路数字量输入、16路数字量输出经过50脚扁平电缆插座XS2引出。
数字端口满足标准
TTL电气特性:
输入TTL电平,吸入电流小于毫安。
输出TTL电平,最大下拉电流20mA,上拉
电流毫安。
数字量输入最低的高电平:
2V;数字量输入最高的低电平:
数字量输出最低的高电平:
;数字量输入最高的低电平:
A/D采样率:
A/D采样通过率:
100KHz
U18板主要由模/数转换(A/D)电路、数/模转换(D/A)电路、USB总线接口电路等部分电路的组合,力求满足用户各种用途的需求。
主要元件位置图、信号输入插座和开关量管脚定义
图为U28板的主要跳线位置图,此位置图上跳线设置为出厂标准设置。
设置为:
单端输入方式,模
拟输入范围±5V,模拟输出范围±5V。
XS1:
模拟信号输入/输出引线插座XS2:
开关量输入/输出及8254接口引线插座
USB-T:
USB总线连接插座RP5:
4路DA输出电压零点调整电位器
RP1:
DA0输出电压满度调整电位器RP2:
DA1输出电压满度调整电位器
RP3:
DA2输出电压满度调整电位器RP4:
DA3输出电压满度调整电位器
RP8:
A/D电路单极性零点调整电位器RP7:
A/D电路双极性零点调整电位器
RP6:
A/D电路满度调整电位器XF1、XF5:
模拟电压输入单端、双端选择
XF9、XF10:
模拟电压输入量程选择XF7、XF8:
D/A输出极性选择
XF1、XF2、XF3、XF4:
D/A输出量程选择
开启程序
在开启程序前,先将各个设计好的子VI与主程序放在同一个文件夹下,以方便程序调用。
在这个软件系统中,我们设计了一个主程序与3个子VI,3个子VI分别为“校准”子VI、“数据采集”子VI、“数据输出”子VI。
开启程序,我们可以直接双击主程序图标,这时,可以看到,它会把主程序所用到的各个子VI自动载入,载入完全后,便出现程序的前面板界面,按快捷键“CTRL+E”便可以切换到后面板的程序界面进行程序的设计或修改。
程序的调试
一切就绪后,切换至前面板进行程序的调试了。
调试效果如图:
6、总结
通过本次设计,所学理论知识很好的运用到了实际的工程当中,在具体的设计过程中将所学知识很好的系统了一遍,体会到了学以致用的乐趣,使自己的实际工程能力得到了很大的提高。
本设计是基于虚拟仪器的电子称设计,系统的软件设计部分与硬件设计部分结合成一个整体。
在进行具体的软件设计之前,先学习了一些相关的知识,如完整的测试装置系统结构和运作原理以及软件设计所用的编程软件labview等。
有了这些必要的基础知识后,根据实际要求,先将整个软件系统模块化,按照不同功能划分为四大基本模块:
主控模块、数据采集模块、校准标定模块和仪器功能模块,然后对各个模块进行了具体的分析与设计,设计完成了各个模块的软件编程后,再将它们和协的组合成一个完整的程序就基本实现了本设计的内容。
在每个功能模块设计完成后,将它们组合在一个主程序中,并对程序进行了一些必要的处理,如采集数据的滤波,增强程序的抗干扰能力等,最终基本实现了完整的程序系统设计。
本软件系统尚没有在真正的测试装置中进行调试,但在用稳压电源模拟压力传感器输出电压的调试中已经基本上实现了各功能测试,均表现良好,相信对电子称用压力传感器的性能测试有一定的应用价值,对生产、生活有着十分重要的现实意义。
在这次设计过程中,也暴露出了前期我在这方面的知识欠缺和经验不足,无论是对知识的理解还是实践能力以及理论联系实际的能力还急需提高。
所以每天都必须复习曾经学的知识、并巩固知识、努力将知识系统化。
7、参考文献
[1]童刚,崔凤英等.虚拟仪器实用编程技术.机械工业出版社,
[2]郁有文,常建.传感器原理及工程应用.西安电子科技大学出版社,
[3]雷勇编.虚拟仪器设计与实践[M].电子工业出版社,2009
[4]杨乐平等.虚拟仪器技术概论[M].电子工业出版社.2007.3
[5]黄贤武.郑晓霞.传感器原理与应用[M].电子称科技大学出版社,2009