称重系统控制系统设计完整版1.doc

上传人:仙*** 文档编号:29100404 上传时间:2021-09-26 格式:DOC 页数:29 大小:4.32MB
收藏 版权申诉 举报 下载
称重系统控制系统设计完整版1.doc_第1页
第1页 / 共29页
称重系统控制系统设计完整版1.doc_第2页
第2页 / 共29页
称重系统控制系统设计完整版1.doc_第3页
第3页 / 共29页
资源描述:

《称重系统控制系统设计完整版1.doc》由会员分享,可在线阅读,更多相关《称重系统控制系统设计完整版1.doc(29页珍藏版)》请在装配图网上搜索。

1、 计算机控制技术课程设计计算机控制技术课 程 设 计成绩评定表设计课题 汽车动态称重控制系统设计学院名称 : 电气工程学院 专业班级 : 学生姓名 : 学 号 : 指导教师 : 设计地点 : 设计时间 : 2012-06-112012-06-15 指导教师意见:成绩: 签名: 年 月 日24重庆理工大学毕业论文 参考文献 计算机控制技术课 程 设 计 课程设计名称: 汽车动态称重控制系统设计 专 业 班 级 : 学 生 姓 名 : 学 号 : 指 导 教 师 : 臧海河 课程设计地点: 31-503 课程设计时间: 2012-06-112011-06-15 计算机控制技术课程设计任务书学生姓名

2、专业班级学号题 目汽车动态称重控制系统设计课题性质工程设计课题来源自拟指导教师主要内容(参数)此汽车动态称重系统采用电阻应变式称重传感器,通过信号放大电路,AD转换,信号采集,单片机控制电路和通信电路,实现动态称重。由于本系统适用于恶劣的环境,必须考虑消除不良因素造成的误差,因此设计时从硬件和软件方面都有提高精度的方法。本报告包括了各个电路的信号流程图,各部分子程序,总原理图,和源程序。任务要求(进度)第1天:熟悉课程设计任务及要求,针对课题查阅技术资料。第2天:确定设计方案。要求对设计方案进行分析、比较、论证,画出方框图,并简述工作原理。第3 - 4天:按照确定的方案设计单元电路。要求画出单

3、元电路图,元件及元件参数选择要有依据,各单元电路的设计要有详细论述。第5天:撰写课程设计报告。要求内容完整、图表清晰、文理流畅、格式规范、方案合理、设计正确,篇幅不少于6000字。主要参考资料【1】田社平.采用数字滤波技术得数据采集误差分析J.计量技术1994【4】陈明荧8051单片机基础教程北京科学出版社,2003【5】李建忠单片机原理及应用西安西安电子科技大学出版社,2003【6】胡学军单片机与控制技术北京北京航空航天大学出版社,2004【7】庚华光,邹寿彬电子技术基础M北京:高等教育出版社,1998【8】刘君华智能传感器系统M西安;西安电子科技大学出版社,1999审查意见系(教研室)主任

4、签字: 年 月 日 目 录1 引言42 总体方案设计42.1 硬件方案论证52.1.1 微处理器的选择52.1.2 称重传感器的选择52.1.3 显示器的选择52.1.4 数据采集电路的选择52.1.5 数据接口的选择62.2 系统总体设计62.2.1 系统的工作流程62.1.2 系统的设计方案方框图72.3 系统控制算法的设计73 系统单元电路的设计93.1 检测电路设计93.1.1传感器电路设计93.1.2 放大电路设计93.2 A/D转换电路设计113.3微控制器的工作电路设计123.4 显示电路的设计133.5 通信模块设计133.6 系统抗干扰设计144 系统的软件设计144.1 系

5、统主程序流程图144.2 A/D转换子程序154.3 数据采集子程序164.4 通信模块子程序174.5 显示子程序194.6 控制子程序195 总结216 参考文献21附录211 引言随着交通检查、超限治理和计重收费工作的不断深入,车辆称重系统得到了越来越广泛的应用。车辆称重系统实际上就是一个信号转换和显示的系统。当车辆行驶到称重平台上时,传感器把感受到的压力转换并输出电压模拟信号,经模/数转换(A/D变换)后就得到数字量的信号。但是,数字量的信号并不是重物的实际重量值,它需要由数字量在单片机内部经过一系列的数据处理才能得到。不仅如此,称重显示器的整个工作过程也都是在单片机的控制下有条不紊地

6、进行。近年来,随着大规模集成电路的飞速发展,单片机更加广泛的应用在各种智能化表中。多年来,公路车辆在运输货物时,普遍存在着超限超载现象。据调查,德国超限超载车辆达50、美国40的大型载货汽车超限超载。近年来,我国道路运输车辆超限超载现象也极为普遍,在严重地区,几乎所有的货运车辆都存在不同程度的超限超载行为。货运部门通过改装车身、后桥和轮胎来大幅度提高货车的装载能力,使运输效率和经济效益得到很大的提高,但是超限超载却带来了一系列的重大危害。要有效治理超限超载,就必须有对车辆是否超限超载进行判断,也就是说必须进行超限超载测量。如何实现准确科学地衡量车辆的重量是治理超限超载运输和计重收费中的关键问题

7、。目前对车辆的超限超载监测有静态和动态两种方法:动态称重系统虽能实现超载治理和不停车计重收费系统的完美结合,但是由于影响动态称重精度的因素较多,例如,汽车的振动、路面的不平度、汽车的速度等等。这些因素势必会使测量精度降低,使测量结果不准确、不具说服力,在车辆称重系统中使用单片机可使系统的性能提高、成本降低,具有明的优越性。2 总体方案设计系统主要由动态轴重秤台,红外车辆分离器,轮胎识别检测器,收尾地感线圈,室外信号控制柜及相关通信软件等组成。动态称重系统主要安装在高速公路及等级公路的收费站,工作环境恶劣,车流量大,因此对其称量精度,稳定性质量可靠性,长寿命,故障自诊断能力,可维护性等要求较高。

8、2.1 硬件方案论证硬件系统是它的最基本的框架,是系统的所有功能的基础。本系统硬件方案论证包括单片机、公路动态称重系统的传感器、数据采集电路、数据接口及显示电路的选择。2.1.1 微处理器的选择由于所需程序空间比较大,要求微处理器包含比较大的内部程序存储器空间。PHLIPS公司生产的P89C58X2单片机内部含有32K字节的FLASH程序存储器和256字节的RAM,可以满足设计需要。所以我们选择P89C58X2作为系统微处理器。2.1.2 称重传感器的选择电阻应变片式传感器通常是由某些金属半导体材料制成。它具有精度高、测量范围广,使用寿命长、性能稳定可靠,结构简单、尺寸小,重量轻,频率特性好,

9、可在高低温、高速、高压、强烈震动、强磁场、核辐射和化学反应等腐蚀的恶劣条件下工作,很适合与露天动态称重,故本设计选用电阻应变片式称重传感器。2.1.3 显示器的选择LED数码管显示器动态显示方式下,将所有位的段选线并联在起,由位选线控制哪位接收字段码。采用动态扫描显示,也就是在显示过中,轮流向各位送出字形码和相应的字位选择,同一时刻只有一位显示,其他各位熄灭。利用显示器的余晖和人眼的视觉暂留现象,只要每一位显示足够短,则人看到的就是无为数码管同时显示。在动态显示方式下电路设计简单,故采用此方式。2.1.4 数据采集电路的选择串行通信是指一条信息的各位数据被逐位按顺序传送的通信方式。串行通信的特

10、点是:数据位传送,按位顺序进行,最少只一需根传输线即可完成,成本低但传送速度慢。串行通信的距离可以从几米到几千米。由于串行通信方式具有使用线路少、成本低、特别是在远程传输时,避免了多条线路特性的不一致而被广泛采用,因此本设计采用串行通信。2.1.5 数据接口的选择在串行通信时,要求通信双方都采用一个标准接口,是不同的设备可以方便地连接起来进行通信。当前流行的接口有:RS-232-C和RS-485。RS-485总线,通信距离为几十米到上千米时,因此长距离要求时被广泛采用。RS-485采用平衡发送和差分接收,因此具有抑制共模干扰的能力。RS-485采用半双工工作方式,任何时候只能有一点处于发送状态

11、,因此发送电路须由使能信号加以控制。RS-485用于多点互连时非常方便,可以省掉许多信号线。应用RS一485可以联网构成分布式系统,其允许最多并联32台驱动器和32台接收器。故本系统采用RS-485接口。2.2 系统总体设计2.2.1 系统的工作流程(1)初始状态:检测区通过地感线圈检测有无车辆。(2)车辆驶入秤台,仪表接收到来自秤台的重量数据超过一定限定值时,系统自动进入动态称重方式。(3)车辆通过秤台,仪表检测车重。控制箱内的数据采集模块将称重称台传来的信号进行放大,并转换为数字信号送到计算机进行称重信号处理。(4)计算机收到仪表传送的信息后,自动计算出轴超载量、总重超载量及相关内容,并进

12、行记录与储存。2.1.2 系统的设计方案方框图图21系统总体构造图2.3 系统控制算法的设计车辆通过称重台时,由于自身结构、路面平整度等因素的影响,使称重系统受到动态干扰力。设d(t)是反映车辆通过称重台台面过程中施加给台面的一个幅值为单位l的输入信号,w(t)为称重台面向下位移,M为称重台面质量,m为车辆真实载荷,k、c分别为称重传感系统结构的弹性系数和阻尼次数。依照牛顿第二定律,可以对模型建立如下力学方程:M*d2w(t)/ d2t+c*dw(t)/d(t)+kw(t)=mgd(t),再进行拉氏变换,可以得出其传递函数为:G(S)=W(S)/D(S)=mg/(MS2+cS+k).其中D(s

13、),W(s)分别为输入信号和输出信号的拉式变换。可见此称重系统为一二阶欠阻尼系统,系统无阻尼振荡频率(固有频率)为:wn=(k/M)1/2,阻尼比为=c/(2(k/M)1/2)。建立这个模型后,车辆驶入称重台相当于给此系统施加了一个信号mgd(t)。综合分析汽车称重系统模型和实测数据后,可以发现车辆在称重台上所产生信号d(t)实为一梯形波。梯形波的两腰分别对应车辆上下称重台的过程;中间平稳阶段即为车辆轮轴完全作用在称重台上的测量过程,有效采集数据存在于此段。输入的信号d(t)的上升和水平阶段可以两个速度信号的叠加,据拉氏变换的叠加原理可得D(S)=1/(0*S*S)- e-s/(0*S*S).

14、再依据拉氏变换的终止定理有:w(+)=mg/k.我们采用的控制算法是参数估计法。参数估计法是一种系统辨识方法,它把动态测量作为一个参数估计和预测问题来处理,具体过程是:首先依据车辆动态称重的先验知识,推导出一个含有未知参数的模型;其次用此模型去模拟动态称重过程中的输出信号,从而获得最小平方误差意义上的参数估计。基于参数估计的系统辨识方法可由极短的轴重信号估计出模型参数和轴重值,而且具有较高的准确度,同时利用适当的辨识算法可以进一步减小速度对测量结果的影响,可以在车辆中速及高速的情况下使用此种方法。其典型应用算法是最小二乘递推算法(RLS)。该问题的典型提法是,根据随时间先后顺序所获得的测量值Z

15、l、Z2、Zk,在线且实时地估计参数的值。其中,测量值Zl、Z2、Zk是向量,待估参数可以是矩阵。最小二乘递推算法RLS的基本思想可以概括成:k=k-1+修正值;RLS算法的基本递推算式为:k=k-1+KkZk-hk*k-1;Kk=PK-1*hKhkPk-1+1;Pk=1-Kk*hk*PK-1 .根据前次观测数据得到的Pk-1及新的测量数据,可以计算出Kk,从而由k-1递推出k,下一次的递推计算所需的Pk也可根据Pk-1,、和Kk等计算出来。每一次递推计算过程中的信息变换。图 2.2 RLS算法示意图系统实际的输入信号是连续的,而计算机的处理是基于离散信号的,因此依据上面的微分方程将系统的传递

16、函数离散化,得出下式:G(Z)=(b0+b1Z-1+b2Z-2)/(1+a1 Z-1+a2 Z-2),a1,a2,b。,b1,b2为Z变抉的相关参数。根据Z变换的中值定理,w(+)=(b0+b1+b2)/(1+a1+a2);由此可知mg/k=(b0+b1+b2)/(1+a1+a2),经过变换计算可以得到具有理想精度的汽车质量m=((b0+b1+b2)/(1+a1+a2))*(k/g)。在采集到系统相关输出的基础上,依据RLS算法进行参数估计,可以快速的在线辨识出参数如,k也可以通过系统辨识标定出来。3 系统单元电路的设计对于本系统,硬件系统的设计可分为以下几个部分:机械部分和电器部分,我们关心

17、的是电器部分。电气部分包括检测电路的设计及其信号调理电路的设计、信号采集电路(A/D转换电路)设计、单片机最小系统设计、显示电路设计。系统硬件的选择和设计按精确性,经济性,可靠性,线长最短原则进行。3.1 检测电路设计3.1.1传感器电路设计称重传感器位于称体之中,是整个硬件系统的起始部分,是构成系统信息输入的主要窗口,为系统提供赖以处理和决策控制所必需的原始信息。它将车重信号转换成电压信号,动态称重系统信号检测中传感器的性能,直接影响称量精度,称重原理决定了传感器的选择或设计。相当多的动态称重系统仍是采用通用的压力传感器,就通用传感器本身性能而言其动态特性完全可以满足车辆正常行驶时的信号检测

18、。选择传感器要考虑数量,量程,准确度,使用环境及介质性能3.1.2 放大电路设计由于称重传感器转换后的电压信号是幅度很小的毫伏级差动信号,很难直接进行模数转换,因此需要对这一模拟电信号进行放大处理。由于传感器信号放大电路的设计对系统的精度有很重要的影响,因此尽量选用高增益、高输入电阻、低失调和高共模抑制比的仪表放大器。在传感器信号放大电路中采用放大AD602。AD602电路不复杂,同时该放大器具有很好的特性,温漂和电压失调参数很小。AD602是一种只用一个外部电阻就能设置放大倍数为l1000的低功耗、高精度仪表放大器。其主要特性如下:供电电源范围:士2.3V士l8V;最大供电电流:13mA;最

19、大输入失调电压:125uV;最大输入失调电压漂移:1uV/;最大输入偏置电流:2nA; 最小共模抑制比:93dB(G=10);建立时间:15us。AD620在它的输入端采用了超处理,使其具有低输入偏置电流和低噪音,因而是一个很好的前置放大器。低功耗的特性,使它非常适合于传感器接口。其增益公式为:RG=49.4/(G-1)K。其电路工作原理:传感器电桥采用恒压源供电,激励电压为12V。本电压由精密稳压电源提供。我们选用的称重传感器(10Kg)灵敏度为2mVV,由于前面的分析,取5Kg作为最大称量,传感器输出电压范围为012mV。AD的输入电压要求为0l 0V,所以考虑把传感器的输出信号放大到0l

20、 0V范围内,放大倍数为833倍,但考虑到动态称量时汽车的动态峰值可能会大于汽车静态轴载,故放大倍数为750倍,同时考虑到去零电路,故采用两级放大电路。考虑温度漂移会给放大电路带来影响,整个放大电路的电阻均采用低温度系数(5ppm)的高精密电阻。(1)第一级放大电路第一级采用差动放大电路,为了减小可调电阻的值,使得调试时容易调节放大倍数,采用两个电阻(一个阻值固定,一个阻值可调)来决定放大倍数。其中RI=1 00 ,RPl为200 的可调电阻。本级放大倍数为250。(2)第二级放大电路由于传感器可变电阻的不平衡及称重台的重力,造成无汽车时传感器仍有输出,由于输出电压非零值,AD转换器的输出显示

21、的是该电压对应的数字量。单片机把这一数字量作为零点,进行零点标定,这样很大一部分数据单元就被占据。如果进行调零,使从零到最大运算数都可作为有效分辨单位,则单片机中被零点占据的大部分有效空间被释放出来,从而提高称量的精度。为了解决此问题,用RP来调零。即RP4来调放大倍数,R5的作用是减小可调电阻的值,使得调试时容易调节放大倍数,而且工作性能稳定,本级放大倍数为3倍。图 3.1 放大电路图3.2 A/D转换电路设计采集上来的模拟信号要进入单片机进行处理前,需要转换成数字信号。综合考虑系统对转换精度与转换速度的要求,选择AD574模数转换器来完成模数转换的工作。AD574A是美国模拟数字公司(An

22、alog)推出的单片高速12位逐次比较型A/D转换器,内置双极性电路构成的混合集成转换芯片,具有外接元件少,功耗低,精度高等特点。并且具有自动校零和自动极性转换功能,只需外接少量的电阻电容元件即可构成一个完整的A/D转换器。其主要功能特性如下:非线性误差:小于l/2LBS或+1LBS;有参考电压基准和时钟电路,不需外部时钟就可以工作:转换速率高:l2位转换25us,8位转换l6us;模拟电压输入范围为Ol0V和020V,O5V和Ol0V两档四种;数据输出格式分为12位和8位两种。AD574采用5V+5V双极性输入方式,2脚直接接地,转换结果为12位数据,分两次输出转换结果,3、4、5、6脚分别

23、接至单片机P25、P13、P14、P15,用于控制AD574A的工作过程。AD574状态脚(STATUS)接单片机P10,当单片机P1O查询到STS端送出的转换结束信号后,先将转换后的l2位A/D数据的高8位读入单片机,然后再将低4位读入单片机。与AD574的12脚和lO脚相接的两个100 Q的电位器分别用于零点调整和满刻度调整(增益调整) 。3.3微控制器的工作电路设计P89C58X2是一款低功耗、高性能的8位微处理器,采用先进的CMOS工艺制造,指令系统与805l完全相同。它包含32K字节的FLASH EPROM和256字节的RAM、32条IO口线、3个16位定时计数器、6输入4优先级嵌套

24、中断结构、一个串行IO(可用于多机通信、IO扩展或全双IUART)以及片内振荡器和时钟电路。其特性如下:采用静态设计,可提供很宽的操作频率范围(频率可降至0);片内含32K字节FLASH程序储存器,可擦除和编程1 0000次以上。可编程加密位,数据保存可达10年以上;存储器的寻址范围可达到64K字节RAM和64K字节ROM;工作速度可达到33MHz;电源控制模式:可实现两个由软件选择的节电模式(空闲模式以及掉电模式)。图 3.2 微控制器电路图3.4 显示电路的设计动态称重系统测最出汽车车重后,要在显示器上将卡车重显示出来。本设计选用适合LED数码管显示器来完成显示。LED(Light Emi

25、tting Diode) 数码管显示器与其他显示器相比,有工作电压低、多色、寿命长、发光控制简单的特点。我们用无片共阳极发光二极管显示器来显示汽车重量,其中三位整数、两位小数。用一片74LS373锁存器完成LED数码数码管字形码的锁仔和驱动。单片机的P2 0P2 4作为位选端,通过反相器7106与各位数码管的共阳极连接,控制某一位数码点亮。图 3.3 显示电路图3.5 通信模块设计该模块完成了串行口的初始化和波特率的没置,并将数据传送给PC机。在串行通信时,要求通信双方都采用一个标准接口,是不同的设备可以方便地连接起来进行通信。本系统采用了RS-485接口,波特率为9600。3.6 系统抗干扰

26、设计 CPU的抗干扰设计主要是用专门的看门狗复位电路,保证CPU系统的可靠运行,从而保证整个动态称重系统的可靠性。为了降低干扰,传感器输入信号线采用四芯屏蔽线,同时屏蔽地线与秤台底部相连。在实验的过程中非常必要,可有效保证传感器的信号不被其它信号干扰。4 系统的软件设计汽车动态称重系统的软件设计主要包括单片机的软件设计和PC机上的程序设计。单片机的软件设计主要包括:主程序设计、数据采集、数据处理、显示程序、通信程序等。4.1 系统主程序流程图在本设计中选用的单片机语言是C51。它具有一般C语言的特点:程序书写简单,便于阅读和维护;可实现模块化、结构化编程;语言表达能力强:可对内存、变量的值进行

27、直接操作,能完成汇编语言对硬件操作的大部分功能;源程序的可移植性好,许多程序段不做或只做少量的修改即可移植到另一个C系统上运行,为调试提供方便。主程序主要完成可编程芯片的初始化和重量数据采集及按需要调用各模块。程序流程图如下:图 4.1 主程序流程图4.2 A/D转换子程序该模块的功能是:设置数据的采集频率和转换的格式,将采集到的数据转换成单片机能识别的数字信号。当主程序调用AD转换程序时,首先须对AD转换模块的采样频率和采样精度进行设置,再等待传感器检测信号的输入,如有前端数据输入,则对输入数据进行预处理,采集、调整频率和幅值,最后输出数字信号。AD转换程序主要有三大块组成:AD转换器启动程

28、序:查询等待转换结束程序;读取转换结果程序。图 4.2 A/D子程序流程图4.3 数据采集子程序数据采集就是把称重传感器的模拟信号x(t)经过采样转换为采样信号x(nT),然后再进行量化和编码处理得到离散的数字信号x(n),最后把x(n)送到计算机进行相应的处理。(1)采样周期的选择采样周期T决定了采样信号的质量与数量,T太小,会使采样信号x(n T)的数量剧增,占用大量的内存单元;T太大,会使模拟信号的某些信息丢失,这样一来就会出现失真现象,影响数据处理的精度。因此必须根据采样定理来选择T以确保x(n T)不失真。根据采样定理可知,对截止频率为f的连续信号x(t)进行采样,其采样周期T必须满

29、足T1/(2f)时,才能唯一确定不会出现失真。根据相关文献可知汽车的垂直振动在50Hz时已不明显,因此f取50Hz比较合适,所以T1/(2f)=001s=10ms。一个采样周期包括硬件延迟时间、A/D转换时间和程序执行时间。在本课题中取硬件延迟为100微秒,A/D转换时间35微秒,程序执行时间l5微秒,由此可知T=150微秒,满足采样定理。(2)采样开始和结束的判断由于硬件系统的数据采集是连续的,因此实验小车通过计量平台的开始和结束要由软件来判断。这就需要在软件中设置一个阀值,如果A/D转换数据超过阀值,则认为小车开始通过计量平台采样开始,一旦采样开始并且转换值低于阀值则认为小车离开计量平台采

30、样结束。图 4.3 数据采集流程图4.4 通信模块子程序通信模块负责单片机与用户PC之间的通信,完成了串行口的初始化和波特率的设置,并将数据传送给PC机。在串行通信时,要求通信双方都采用一个标准接口,是不同的设备可以方便地连接起来进行通信当主程序调用通信模块时,程序首先设置好断点并保护好现场,在处理完通信程序后,利用现场数据进行恢复。接下来要设置好波特率,并对串口进行初始化。接着向PC发送要传输的数据长度,再传输数据并等待PC方接收,接着判断数据是否被PC收到、数据是否发完,如PC没有收到数据或者数据没有发送完毕,则重新进行发送。数据发送完毕后,程序利用保护好的现场数据进行现场恢复。通信模块的

31、具体程序流程如下图所示:图 4.4 通信模块流程图4.5 显示子程序由于在数码管的显示上,本系统选择的是动态显示,因此在不同位数码管的显示之间需要延时,因考虑人眼的视觉暂留的影响,数码管每5个采样周期,即0.5秒刷新一次。三个数码管的高两位为显示重量的整数值,两个显示重量的小数值。如:char dispvalue_Array=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90;为显示09的数组。为了把整数值与小数值区分开,中间的数码管显示时要把小数点点亮。这时给中间的数码管的显示编写了另一个代码数组如:char dispvalue_Array1=

32、0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10;4.6 控制子程序设d(t)是反映车辆通过称重台台面过程中施加给台面的一个幅值为单位l的输入信号,w(t)为称重台面向下位移,M为称重台面质量,m为车辆真实载荷,k、c分别为称重传感系统结构的弹性系数和阻尼次数。上可知系统传递函数为:G(S)=W(S)/D(S)=mg/(MS2+cS+k).且系统无阻尼振荡频率(固有频率)为:wn=(k/M)1/2,阻尼比为=c/(2(k/M)1/2)。Z变换为G(Z)=(b0+b1Z-1+b2Z-2)/(1+a1 Z-1+a2 Z-2),将系统模型格式写最小二

33、乘格式:Z(k)=h(k)+v(k),其中h(k)=z(k-1),-z(k-2),u(k),u(k-1),u(k-2)T,=a1,a2,b0,b1,b2T。根据前述最小二乘参数估计递推算法RLS,得流程图如下:图 4.5 控制流程图5 总结此设计在理论分析的基础上,对车辆动态称重系统进行了硬件设计,包括传感器,AD转换电路,信号放大电路,信号采集以及控制电路和LED显示电路。完成电路系统的仿真调试。由于时间和精力有限,所做的称重系统知识其中一部分,还要感谢老师和同学们的帮助。6 参考文献【1】田社平.采用数字滤波技术得数据采集误差分析J.计量技术1994 NO 5【2】任克强,刘晖.微机控制系

34、统的数字滤波算法J.现代电子技术.2003年第3期【3】蔡美琴MCS51系列单片机系统及其应用北京高等教育出版社,1999【4】陈明荧8051单片机基础教程北京科学出版社,2003【5】李建忠单片机原理及应用西安西安电子科技大学出版社,2003【6】胡学军单片机与控制技术北京北京航空航天大学出版社,2004【7】庚华光,邹寿彬电子技术基础M北京:高等教育出版社,1998【8】刘君华智能传感器系统M西安;西安电子科技大学出版社,19997 附录一:系统硬件总原理图附录二:源程序#include sbit RS=P20;sbit RW=P21;sbit E=P22;unsigned char co

35、de str=Volt:;unsigned char code str1=weigh:;void Delay(unsigned int t) unsigned char i,j; for(i=0;it;i+) for(j=0;j110;j+);void wr_command(unsigned char com) Delay(1); RS=0; /RS=0是输入指令RS=1是输入数据 RW=0; /RW=0是写数据或指令RW=1是从LCD读指令 E=0; /EN=1是使能信号,1时读取信息,1-0(下降沿)时执行指令 P0=com; Delay(1); E=1; Delay(1); E=0; /

36、EN下降沿时数据锁存void wr_data(unsigned char dat) Delay(1); RS=1; /RS=0是输入指令RS=1是输入数据 RW=0; /RW=0是写数据或指令RW=1是从LCD读指令 E=0; /EN=1是使能信号,1时读取信息,1-0(下降沿)时执行指令 P0=dat; Delay(1); E=1; Delay(1); E=0; /EN下降沿时数据锁存void locateXY(unsigned char x,unsigned char y)if(y=0) x|=0x80; /当要显示第一行时的起始地址码其中x是列总共最大值为16,y为行最大值为1 else

37、 x|=0xc0; /当要显示第二行时的起始地址码 wr_command(x);void Init_LCD() Delay(15);wr_command(0x38); /设置8位格式2行5*7 Delay(5); wr_command(0x08); /显示关闭 Delay(5); wr_command(0x01); /显示清屏Delay(5); wr_command(0x06); /显示光标移动位置 Delay(5); wr_command(0x0c); /显示开及光标位置 Delay(5);void Display_str(unsigned char *p) while(*p!=0) wr_

38、data(*p); p+; Delay(1); void Init_display() Init_LCD(); locateXY(0,0); Display_str(str);locateXY(0,1);Display_str(str1);#include 0804.h#include 1602.h#include sbit int1=P33; /定义管脚功能sbit cs=P32; /使能端sbit wr=P36; /写端口sbit rd=P37; /读端口sbit LED=P23;sbit sound=P24;void Delay_0804(unsigned int tc) /显示延时程序

39、while( tc != 0 )unsigned int i;for(i=0; i100; i+);tc-;unsigned char adc0804(void) /读AD0804子程序unsigned char addata; rd=1; /sbit cs=P32; /使能端 sbit wr=P36; /写端口sbit rd=P37; /读端口 wr=1; /CS0、WR0、RD1(由CPLD发出信号要求ADC0804开始进行模拟/数字信号的转换) int1=1; /读ADC0804 前准备 P1=0xff; /P1全部置一准备 cs=0; wr=0; wr=1; /启动ADC0804开始测

40、电压 while(int1=1);/查询等待A/D转换完毕产生的INT(低电平有效)信号 rd=0; /开始读转换后数据wr=1; /启动ADC0804开始测电压 Delay_0804(1); /无意义语句,用于延时等待ADC0804 读数完毕 addata=P1; /读出的数据赋与addate rd=1; cs=1; /读数完毕 return(addata); /返回最后读出的数据 unsigned int datpro(void) /ADC0804 读出的数据处理 unsigned char x; unsigned int dianyah,dianyal; /用于存储读出数据的高字节和低字

41、节 unsigned int dianya=0; /存储最后处理完的结果 注意数据类型 for(x=0;x4; dianyal=dianya&0x0f; dianya=dianyal*20+dianyah*320; return(dianya); /返回最后处理结果 display_0804() unsigned int dat=0; unsigned int weigh=0; dat=datpro(); weigh=dat/5; locateXY(6,0); wr_data(dat%1000/100+0x30); wr_data(.); wr_data(dat%100/10+0x30); wr_data(V); locateXY(7,1); if(weigh/100+0)=0x30) wr_data(0x20); else wr_data(weigh/100+0); wr_data(weigh%100/10+0); wr_data(.); wr_data(weigh%10+0); wr_data(t); while(dat=400) /判断超重点亮LED LED=0; Delay(100); sound=0; Delay(100);27

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!