来源:网络转载更新时间:2019-12-05 09:52:24点击次数:13072次
1 引言
行车称重显示控制器是冶金工业现场称重的重要设备之一,它广泛应用于工矿企业、物资部门货物称重。但目前所使用的行车称重器分布零散,不便统一管理。有鉴于此,我们研制了基于虚拟仪器的分布式行车称重显示控制器。
虚拟仪器是目前测控领域中最为流行的技术之一。它是计算机硬、软件和计测技术、仪器仪表技术共同结合的产物,计算机友好的人机交互、方便快捷的即时在线帮助,强大的图形和数据处理功能,大容量存储以及显示,文件管理、打印输出等功能,彻底的弥补了传统硬件化仪器的不足,使得虚拟式仪器成为先进的智能化仪器。
Lab Window/CVI (Cfor Vinual Instrument)是目前虚拟仪器开发的常用软件,它以最常用的C语言为基础,使虚拟仪器开发变得更加方便、灵活、功能更强大,所以在研制行车称重显示控制器时,我们采用了Lab Window/CVl作为上位机的编程软件。
在该称重显示控制器中,下位机用89C51单片机,完成控制对象的数据采集和直接控制,上位机( IMB-PC机)使用LabWindows/CVI的软件开发平台,应用LabWindows/CVI多种开发功能,对测量数据进行显示、处理、存储及参数设定。通讯标准采用FIA RS-232C串行接口,形成分布式微机控制系统。
2 硬件设计
2.1 工作原理
将圆柱式电阻应变式传感器采用吊挂式安装在行车上,传感器在轴向有一个或几个电阻应变片,在圆周方向也有同样数目的电阻应变片。当传感器受力时,电阻应变片发生变形,导致电阻的变化,测量电桥将由平衡转为不平衡,电阻的信号转化为微弱的毫伏级电信号,经过预处理后,可作为被测信号送人A/D转换器。
我们设计的行车称重显示控制器有4种工作方式:第1种方式下,可对第1路信号进行测量;第2种方式下,对第2路信号进行测量;第3种方式下,循环对两路信号进行测量;第4种方式下,可对行车称重显示控制器的工作参数进行设定。
使用时,先通过拨码开关对行车称重显示控制器设定好工作方式,被测信号、标准电压信号、模拟地信号均送人模数转换AD654。进行A/D转化后的脉冲信号送人89C51,通过计数器定时计数与基准信号计数结果比较来读取毫伏电压信号,再把毫伏电压信号还原成重量信号的数字描述。并通过89C51实现打印、显示、报警、通讯,上位机可对数据进行进一步的处理和存储,实现分布式测控。
2.2硬件电路
行车称重显示仪表系统组件主要由多路选择电路、信号处理电路、显示电路、键盘电路、报警电路、通讯接口、扩展EPROM接口及校正自启动电路等组成。
(1)多路选择电路
单片机设计的行车称重显示控制器,需要对多路信号进行采集和处理,如果每一路都采用各自的输入回路,即每一路都采用放大、采样/保持,A/D转换等环节,不仅成本比单路成倍的增加,而且会导致系统体积庞大,且由于模拟器件、阻容元件参数特性的不一致性,对系统的校准带来了很大的困难;并且对于多路巡检信号采集情况,每路单独采用一个回路几乎是不太可能。因此,除了特殊的情况下采用多路独立的放大、A/D和D/A外,通常采用公共的采样/保持及A/D转换回路(有时甚至可将某些放大电路公用),而要实现这种设计,往往采用多路模拟开关。多路开关的作用主要是用于信号切换,如某一时刻接通某一路,让该路信号输入、其他路断开,从而达到信号切换的目的。
行车称重显示控制器中的信号多路选择电路设计采用常用的CD4051芯片。CD4051是一种8选1的多路选择开关,输入信号8路,输出1路。CD4051选择8路输入信号中的哪一路作为输出是由控制信号A、B、C决定的。A、B、C组成一个数字序列。所以通过计数器CD4024发过来的信号Q0、Q1、Q2输入到CD4051的A、B、C端就可以决定哪一路被选择输出。例如选择第4路信号输入作为输出,只要CD4024的Q0、Q1脚发低电平,Q2发出高电平就可以了。
CD4024的第1脚CLK是脉冲输入端,第2脚RST是清除端,高电平有效,它们通过光电耦合开关TLC521分别与CPU的PL0、PL1相连。当CPU的PL1发出高并保持的时候,PL0不断发出脉冲,CD4024计数,通过PL0、PL1,发脉冲可控制CD4024计数,
使计数值Q0、Q1、Q2作为8选1的多路选择开关CD4051的A、B、C信号的输入,所以通过PL0、PLl可改变CD4024计数值Q0、Q1、Q2送CD4051就可以决定哪一路Vx被选择输出。
(2)频率测量电路
经多路选择电路输出的信号经过OP07放大后送入AD654,转换得到的频率信号利用89C51记数测量。在单片机内由软件实现80ms的定时,通过单片机的T0进行定时内的AD654的输出脉冲记数,一旦定时时间到,就读出T0的记数值,供后面的计算使用。
(3)显示及键盘电路
我们将空闲的串行口用作显示、键盘接口。共用6片74LS164来扩展I/O口。其中显示用5片74LS164.采用准静态的显示方式,每片74LS 164送数据同时到对应的LED数码管,通过89C51的PL5脚发出显示数据.PL6脚发出驱动电平,控制显示74LS 164的时钟,以保证一组参数的完整显示;余下的一片74LS164实现键盘接口,也使用P L5脚发出扫描数据.P L7脚用作扫描数据的移位脉冲,实现对6根键盘线的扫描,键盘数据回收线接入89C51的P 3.5脚。
键盘的连接是采用8位串行输入并行输出移位寄存器74LS164来构成行列式键盘。采用编程扫描方式,来取得键号。89C51的P 3.5口接键盘的行线,用来回收键扫描数据,行线X0~X7的电位作为键扫描口。Q 0~Q 7接列线作为键输人口。P :5接74LS1 64的A、B端,依次串行输出值。
在该单片机的应用系统中,使用的显示器为LED(发光二极管显示器),这种显示器成本低廉.配置灵活,与单片机接口方便,L ED显示块是由发光二极管显示字段的显示器件。在单片机系统中通常使用的是7段LED,这种显示块有共阴极和共阳极2种。
我们采用的是共阴极,共阴极LED显示块的发光二极管阴极共地,7段显示块与单片机的接口非常容易:只要将一个74LS164的8位并行输出口与显示块的发光二极管的引脚相连即可。8位并行输出口输出不同的字节数据即可获得不同的数字或字符。
通常将控制发光二极管的8位字节数据称为段选码。由于要显示的字数不多,采用静态显示方式下共阴极连接在一起接地,每位的段选线与一个74LS1648位并行口相连,每一位可独立显示,只要在该位的段选线卜保持段选码电平,该位就能保持相应的显示字符。
由于每一位有一个8位输出口控制段选码,故在同一时间里每一位显示的字符可以各不相同,每片74LS164送数据同时到对应的LED数码管,通过89C51的P L5脚发出显示数据,P L6脚发出驱动电平,控制照示74LS 164的时钟,以保证一组参数的完整礁示.
(4)外围芯片24C02
24C02是近年来推出的EEPROM系列产品之一,它的串行接口为PCBLTS接日,常用普通的2根I/O口线串行传输;具有页写模式;白同步写周期为10ms,具有写保护措施;10万次写人次数,100万年数据保存, A0,A1,A2为芯片地址线,单片使用时一般接Vss;SCL为串行移位时钟;SDA为串行数据或地址通过SDA,CPIT可对芯片写入或读出数据;WP为写保护若WP接Vcc芯片只读.
这里24C02用作系统的EEPROM,用于存入仪器的E F限报警值,仪表的量程。单片使用A0,A1,A2,Vss均接地。串行时钟SCL接89C51的PL4引脚,串行数据或地址线SDA接89C51的PL5引脚。
由于24C02写入的数据停电不丢失,占用极少的I/O资源,非常适合于各类仪器仪表的参数保存,它的引入使仪表的硬件结构十分简洁、系统扩展极为方便
(5)单片机应用系统中的l/()n扩展
MCS-51单片机共有4个并I/O口,但这些I/O口并不能完全提供给用户使用:,只有对于片内有ROM/EPROM的单片机8051/8751,在不使用外部扩展时,才允许这4个I/O口做为用户使用,然『面对于大多数使用6031以及使用8051/875l需外部扣“展时,MCS-51单片机可提供给用户使用的P1口和部分P1口线,,因此,在大部分的MC.S-51单片机应用系统设计巾都不可避免地要进行I/O口的扩展。
在单片机应用系统中,8255与MCS-51单片机连接方式简单,其工作方式由程序设定8255可编程并行I/O芯片由以下4个逻辑结构组成:
数据总线驱动器,这是双向3态的8位驱动器,用于和单片机的数据总线相连,以实现单片机与 8255芯片的数据传送。并行I/O端门,A 口、B口和C口 这3个8位I/O端口功能完全Fh编程决定,但每个口都有自己的特点
读/写控制逻辑.它用于管理所有的数据、控制字或状态字的传送。它接收单片机的地址线和控制信号米控制各个口的工作状态。CS为8255的片选信号,RD为控制信号,WR为写控制端。A0、A1为口地址选择。通过A0、A1可选中8255的4个寄存器。
口地址选择如下:A0、A1为00,选输出寄存器A(A口),为01选输出寄存器B(B口),10选输出寄存器C(C口),为1l选控制寄存器(控制口)。RESET为复位端,当RESET=1时,8255复位。复位状态是:控制寄存器被清除,所有接口(A、B、C)被置入输入方式。
这里采用89C51的P0口与8255的数据总线相连,8255的读写控制信号RD、WD和89C51的读写控制信号RD、WD相连。8951的P20、P21控制8255的A0、A1进行口地址选择。8255的A口接打印机接口,B口通过锁存器74LS373接继电器实现报警功能。
(6)通信口电路
上位机(IMB-PC机)串行口给出的是标准电平,89C51给出的是TTL电平,这两种电平互不兼容,必须将TTL电平与RS-232C电平进行转换。通常+5V和士12V电源供电,而且工作不稳定。
我们使用INTERSIL公司生产的ICL232集成电路,它是单片集成双RS-232发送/接收器,采用单一+5V电源供电,内部有两组电压转换电路,外接至多是4个电容.两只电阻便可以构成标准的RS-232C通讯接口。
由多个下位单片机通过RS-232C总线与上位PC机连接可成为一个多微机控制系统,上位机通过地址识别可以同时管理多个单片机系统。
3 软件设计
在该称重显示控制器中,下位机用89C51单片机,完成控制对象的数据采集和直接控制,上位机( IMB-PC机)使用LabWindows/CVI的软件开发平台,对测量数据进行显示、处理、存储及参数设定,形成分布式微机控制系统。其软件相应的也就可以分为由汇编语言编写的下位机软件部分和用LabWindows/CVI开发的上位机软件部分。
3.1下位机软件部分
单片机对控制对象的数据采集和直接控制由主程序调用各个功能子程序实现。功能子程序主要包括:数据采集及计算程序、显示程序、键盘程序、通讯程序、打印程序等。
3.2上位机软件部分
基于标准的C语言的半图形化的开发工具LabWin-dows/CVI,不仅提供了对虚拟仪器的支持能力,还具有各种测试、控制和数值分析能力,集成了数据库开发的软件包,使得该工具能适应大型分布式测试应用系统的开发要求,开发功能更加强大。
所以,我们选用LabWindows/CVI作为上位机的工作平台,利周计算机的图形能力和数值功能建立图形化的虚拟仪器面板,RS232总线作为LabWindows/CVI的I/O接口设备,通过特定的算法实现对测量数据进行显示、处理、存储及参数设定。
首先,我们根据任务确定程序的基本框架如程序界面、程序中所需的函数等。然后,根据第一步制定的方案创建用户图形界面及回调函数名,让计算机生成程序代码及回调函数的基本框架,添加函数代码,完成源代码的编制工作。最后,编译、调试程序。把头文件,用户图形界面文件,源代码文件添加到项目文件中去,完成整个程序的编制。
4 结束语
分布式行车称重显示控制器精度高、功能强、使用方便。基于虚拟仪器的设计使用户的操作方便直观,克服了称重器地理位置分布零散不便统一管理的缺点,真正的实现了自动化的统计管理。
参考文献
1 涂时亮,张友德,陈章龙.单片微机软件设计技术,1988.
2 何立民.单片机应用系统设计,北京航空航天大学出版社,1994.
3 秦树人,虚拟仪器及其最新发展,振动、测试与诊断,2000,6.
4 李腊元,官本云,智能仪器仪表.科学出版社,1993.
5 王兰省,李振海.虚拟仪器系统开发技术.测控技术, 1999,4.8
本文源于网络转载,如有侵权,请联系删除
×