车间计件式生产统计报表系统设计毕业论文_第1页
车间计件式生产统计报表系统设计毕业论文_第2页
车间计件式生产统计报表系统设计毕业论文_第3页
车间计件式生产统计报表系统设计毕业论文_第4页
车间计件式生产统计报表系统设计毕业论文_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕业论文﹙设计﹚任务书院(系)班学生一、毕业论文﹙设计﹚题目车间计件式生产统计报表系设计二、毕业论文﹙设计﹚工作自_2013__年_2____月__1___日起至__2013年6月__22___日止三、毕业论文﹙设计﹚进行地点:电信工程系实验室四、毕业论文﹙设计﹚的内容要求:1、设计一个车间计件统计报表系统,要求具有下列功能:能够识别每一个工人(或工号,人数可选128/256/512);记录每一个工人加工的产品数(自定义上限,只是预留存储单元),记录间断时间并保证数据不丢失;间断超时报警,指明那一台设备发生故障;汇总排序2、具体做好系统设计、原理分析说明、实验测试方案和步骤说明。3、掌握撰写毕业设计报告的方法。要求格式正确,文字流畅,突出“目的、原理、方法、结论”四要素;对所选题目的研究有系统、深刻的认识,报告陈述、答辩中概念准确,逻辑严密,主题鲜明。4、要求方案论证有报告;硬件设计有原理,制版、调试有方法、有过程;报告有论文,参考有文献。进度安排:3─5周:资料查新及方案论证;6─13周:设计电路、元器件性能测试、单元电路制作调试;14-15周:电路统调16-17周:撰写论文18周:准备答辩指导教师教研室教研室主任(签名)批准日期2013-2-1接受论文(设计)任务开始执行日期2013-2-1学生签名:车间计件式生产统计报表系统的设计[摘要]介绍了一种车间生产计件统计系统,该系统以单片机AT89C52为控制中心,以C语言为单片机(下位机)的驱动程序语言,VB语言为计算机(上位机)编程语言,上位机与下位机利用RS232协议进行串口通信,实现车间计件系统的远距离实时监控。下位机通过键盘输入工号,液晶显示工人工号、设备报警情况、检测生产线上产品实际数量等数据,同时可实时向主控室传送数据;上位机显示人机界面、相关工人的基本资料、设备工作情况、当前上位机与下位机通信的端口号。实践证明该系统硬件电路简单、可靠性好、操作方便、成本低,可广泛应用在生产领域。[关键词]上位机下位机串口通信DesignofCountingSystemfortheWorkshopProductionStatisticsSystemAbstract:Introducesakindofworkshopproduction,thesystempiecewithsingle-chipmicrocomputertocontrolcentertoAT89C52formicrocontrollerClanguage(machine)driverprogramminglanguage,VBlanguageforcomputer(PC)incomputerprogramminglanguage,friendlyhuman-machineinterfacedesignforthebridge,withRS232serialcommunicationwillusecomputerandlowerlevelcomputerisconnected,realizethepiecesystemlong-distancereal-timeworkshopsurveillance.LowerplacemachinethroughthekeyboardinputJobID,liquidcrystaldisplayworkersJobID,equipmentalarmcondition,testinglineproductdatasuchasactualquantity,andreal-timedatatransmissiontocontrolcentreroom;PCdisplayman-machineinterfaceandrelatedbasicmaterial,equipmentworkersworkingcondition,thecurrentPCandlowerlevelcomputercommunicationsocket.Practiceshowsthatthesystemhardwarecircuitissimple,goodreliability,easyoperation,lowcost,andcanbewidelyappliedinmanufacturingfield.Keywords:UppercomputerLowercomputerSerialCommunication目录1绪论 12设计方案及工作原理 22.1工号识别部分 22.1.1指纹识别 22.1.2数字键盘 32.1.3论证结果 32.2计件部分 32.2.1红外对管 32.2.2按键开关 42.2.3论证结果 42.3上位机下位机通信部分 42.3.1无线蓝牙 42.3.2串口通信 62.3.3论证结果 72.4系统总体设计模块图 83单元电路工作原理 93.1键盘扫描 93.2液晶显示 103.3串口通信 114下位机电路实现 134.1硬件仿真 134.2系统调试 155上位机软件实现 165.1软件界面设计原则 165.2基于VB的串口通信设计 165.3软件功能说明 176设计结果 187总结 21致谢 22参考文献 23附录 24附录A:英语科技文献原文及翻译稿 24附录B:电路总图 35附录C:元器件清单 36附录D:源程序 371绪论随着现代生产的规模化发展,传统人工统计产品的方法难以做到及时准确、自适应能力差、数据采集慢、协同性与集成性差、智能性差、适应性差,为了对自动生产线上的零件或成品进行动态管理和统计,需要安装必要的自动检测与计数装置。一方面可实时显示产品的数量等信息,另一方面可向计算机管理系统提供动态数据,为过程控制提供依据。51单片机优异的性价比使它获得了广大用户的认可,其独特的系统结构、不断增加的片内设备以及强大的指令系统,依然是单片机中的主流。随着技术的发展和应用需求,51单片机片内设备越来越多,51单片机仍然是单片机学习与应用的主要对象。车间计件生产报表是数据的存储、传输、控制、处理过程,因此非常适合单片机控制。VB是VisualBasic简称,是Microsoft公司推出的一种Windows应用程序开发工具。是一种可视化的、面向对象和采用事件驱动方式的结构化高级程序设计语言,可用于开发Windows环境下的各类应用程序。在VisualBasic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的广泛应用程序接口(API)函数,动态链接库(DLL)、对象链接与嵌入(OLE)、开放式数据连接(ODBC)等技术,可以高效、快速地开发Windows环境下功能强大、图形界面丰富的应用软件系统。是当今世界上使用最广泛的编程语言之一,被公认为是编程效率最高的一种编程方法。无论是开发功能强大、性能可靠的商务软件,还是编写能处理实际问题的实用小程序,VB都是最快速、最简便的方法。计算机的串口通信是一种重要的数据交换方法,其广泛应用于计算机外设或工业测控领域。以往,要实现计算机的串口通信需要做大量复杂和艰苦的工作,现在PC计算机与单片机系统串口通信控制,特别是利用VB(或VC)编程语言进行控制界面设计控制对象的操作是单片机系统应用发展的最前端技术,。通常以PC机作为上位机发送指令到单片机,由单片机来完成现场数据采集、电路控制等工作,然后数据返回PC机进行高级处理。此实现了单片机的智能控制,也是单片机多年来得以生存的主要原因。车间计件式生产统计报表设计由51单片机为底层驱动主控制器的计件系统。该系统是以51单片机为核心,通过51单片机与计算机串口通讯、友好对话界面设计来实现对车间计件的远距离实时监控,简化生产管理过程的工作量,提高工作效率,极大调动员工的工作积极性,此系统研究具有重大的实际意义。

2设计方案及工作原理2.1工号识别部分功能:基于工作流管理技术,有序、有效、快速、灵活的管理员工,便于分配工作任务,考核工作情况,实现个人身份认证;2.1.1指纹识别硬件:自动指纹识别模块的基本原理如图1所示:图像采集模块图像处理、识别模块结果输出模块图像采集模块图像处理、识别模块结果输出模块图1自动指纹识别模块图像采集模块负责采集用户的指纹图像,并将其转换为二进制数据输出。目前常用的指纹传感器有光学指纹传感器、固态晶体传感器和超声波传感器。指纹图像的质量将直接影响系统的整体性能。图像处理与识别模块实现了整套指纹识别算法。该模块对输入的指纹图像进行预处理、后处理和特征提取,然后将得到的指纹特征数据(指纹模板)登记到指纹库,或是和已有的指纹模板进行匹配识别。这是系统的核心,常用DSP芯片完成。结果输出模块则根据前面指纹比对的情况,显示比对结果或者直接输出相应的显示控制信号。软件:指纹识别算法流程图如图2所示:图2指纹识别算法流程指纹图像分割的目的是从指纹图像中分离出清晰的指纹区域和有噪声但仍可以恢复的指纹区域,使后续处理能够集中于这些有效区域进行。我们实现了一种指纹图像的多级(三级)分割算法:第一级分割背景,第二级从前景中识别出模糊区域,第三级则从模糊区域中分割掉不可恢复的指纹区域部分。图像增强部分,结合Gabor滤波器善于分离粘连脊线和方向滤波器善于连接断裂脊线的特性,能对低质量指纹图像进行有效增强。同时,将二值化运算提前到图像增强阶段进行,图像增强后即直接输出二值指纹图像,有效减少了总体处理时间。后处理阶段对二值指纹图像进行细化,并修复细化后骨架线上的毛刺、粘连、桥、环等假特征结构。采用一种最近邻点方式抽取纹线骨架,满足了指纹细化的保持性、连接性、中轴性和快速性要求。在特征提取阶段,选择脊线端点和分歧点作为特征点,记录每一特征点的类别、位置和方向信息,从而得到特征点集(特征模板)。通常对同一枚指纹提取2—3个样本,分别对这些样本进行预处理、后处理和特征提取,根据特征点间的相互位置关系判断样本图像是否两两匹配,并由特征点被匹配的次数确定特征点的匹配权值。从样本图像中找出权值大于给定阈值的特征点,以这些特征为模板建立特征模板并存储在数据库中。对待匹配的指纹图像,经预处理、后处理和特征提取后,得到一个特征模板,该模板与指纹数据库中已有的模板进行比较,最终得到识别结果。2.1.2数字键盘通过键盘键入主键(工号)识别工人信息。采用4*4矩阵键盘,数字键组合代表工人工号,*代表置零,#号代表确认。2.1.3论证结果指纹识别:优点:实现方便、快捷、高效、安全的个人身份认证功能,满足人们易用性、方便性和舒适性的追求,整个模块具有体积小、功耗较低、应用灵活等;,缺点:系统要求硬件数据处理迅速、大容量存储器故导致成本高、软件开发复杂等问题。数字键盘:优点:电路简单,操作简单、方便,最重要的是物美价廉,依然能完成个人身份认证的工作;缺点:安全性、便携性不高。结论:综上所述,工号识别部分采用数字键盘。2.2计件部分功能:根据完成样品与检测样品记录计件数目;2.2.1红外对管硬件:利用对射式红外线计数器设计,指导思想是利用红外发光管发射红外线,红外接收管接收此红外线,并将其放大、整流形成高电平信号。当有物体挡住红外光时,接收管没有接收到红外信号,放大器将输出低电平,同时计数器计数这个低电平脉冲,并经译码驱动电路使数码管显示数值。这样就可统计物件的数量。计数范围可以扩展。红外光电反射式计数器电路原理框图如图6所示。555构成的多谐振荡器产生约330赫兹的方波信号,驱动红外发射管VD1发射红外线脉冲。当有物体阻挡时,红外线脉冲即被反射回来,由VD2接收并转换为电信号,因出现50赫兹灯光干扰,经高通滤波滤除,再经LM324构成的同相放大器放大,再经LM324构成的电压比较器整形为方波信号,包络检波后由LM324构成的电压比较器整形为幅值较大的信号,得到的方波信号经555构成的单稳态触发器延时整形,再经非门后得到的信号作为触发脉冲接到集成同步十进制计数器74LS160的CP端,计数由CD4511驱动的七段LED数码管显示。整个电路均使用5V直流稳压电源为各单元电路供电。图6红外光电反射式计数器电路原理框图红外检测电路:采用脉冲式主动红外线检测电路,由红外发射二极管VD1和红外接收二极管VD2等组成。VD1在多谐振荡器驱动下发射332Hz的方波脉冲调制的红外线脉冲。由于在结构上VD1与VD2平行安装,指向相同,因此VD2并不能直接接收到VD1发出的红外线脉冲。只有当手阻挡时,将VD1发出的红外线脉冲反射回去,VD2才能接收到。采用方波脉冲调制发射的红外信号,有利于提高检测电路的灵敏度和抗干扰能力,并能够降低发射电路的功耗。VD1需要限流电阻。VD2需要负载电阻。峰值检波电路及整形:峰值检波电路由二极管和低通滤波串联而成。整形电路为LM324构成的电压比较器,其作用是将整形电路输出的方波信号变成触发脉冲。峰值检波电路的要点是阻容元件的时间常数远小于输入信号的脉宽。完成样品与检测样品过程则需要两对红外对射管,例如:两对红外发射二极管分别为VD1、VD3,两对红外接收二极管分别为VD2、VD4,完成样品时,VD2比VD4先接收到红外线脉冲反射;检测样品时,VD4比VD2先接收到红外线脉冲反射。2.2.2按键开关硬件:通过按键接低电平,“0”表示检验到一件物品,“1”表示为检验到物品。2.2.3红外对管:优点:实现完成样品与检测样品记录计件数目的自动识别,减轻工人工作负担,具有体积小、重量轻、灵敏度高、隐蔽性好等;缺点:探测器在日常工作中,由于长期工作,因此不可避免地受到大气中粉尘、微生物以及雪、霜、雾的作用,长久以往,在探测器的外壁上往往会堆积一层粉尘样的硬壳,在比较潮湿的地方还会长出一层厚厚的藓苔,这些东西会阻碍红外射线的发射和接受,造成误报警,系统成本比较高、硬件电路复杂、调试复杂、反射感应距离有一定限制。键盘按键:优点:硬件电路简单,调试简单、控制方便、成本低;缺点:不能自动识别记录数目,需要工人按键才可完成。结论:综上所述,计件部分采用按键计数。2.3上位机下位机通信部分功能:以计算机为控制中心的数据监控自动化控制系统,使控制系统、监控系统可以充分利用计算机强大的数据处理能力和管理功能,实现对数据传输、处理、存储,从而简化生产管理过程,使企业管理系统更加完善、更加强大、更加完美;2.3.1无线蓝牙蓝牙技术的系统结构分为三大部分:底层硬件模块、中间协议层和高层应用。如图7所示:图7蓝牙技术系统结构图7蓝牙技术系统结构硬件:蓝牙硬件模块由蓝牙协议栈的的无线收发器、基带控制器和链路管理层组成。包括无线跳频(RF)、基带(BB)和链路管理(LM)。无线跳频层通过2.4GHz无需授权的ISM频段的微波,实现数据位流的过滤和传输,本层协议主要定义了蓝牙收发器在此频带正常工作所需要满足的条件。基带负责跳频以及蓝牙数据和信息帧的传输。链路管理负责连接、建立和拆除链路并进行安全控制。蓝牙技术结合了电路交换与分组交换的特点,可以进行异步数据通信。(蓝牙模块芯片)无线蓝牙数据传输流程如图8所示。图8点对点链接流程软件:中间协议层包括逻辑链路控制和适应协议、服务发现协议、串口仿真协议和电话通信协议。逻辑链路控制和适应协议具有完成数据拆装、控制服务质量和复用协议的功能,该层协议是其它各层协议实现的基础。服务发现协议层为上层应用程序提供一种机制来发现网络中可用的服务及其特性。串口仿真协议层具有仿真9针RS232串口的功能。主机控制接口层(HCI)是蓝牙协议中软硬件之间的接口,它提供了一个调用基带、链路管理、状态和控制寄存器等硬件的统一命令接口。蓝牙设备之间进行通信时,HCI以上的协议软件实体在主机上运行,而HCI以下的功能由蓝牙设备来完成,二者之间通过一个对两端透明的传输层进行交互。蓝牙模块的软件驱动技术包括硬件链路管理器驱动程序、主机控制接口(HOI)驱动程序。硬件链路管理器驱动程序与物理固件直接相连,提供USB/RS232或其他接口的驱动功能。链路管理器驱动程序实现了链路管理协议(LMP),负责处理底层链路控制与蓝牙基带接口,该固件支持点对点和点对多点的通信。HOI驱动程序根据HOI命令的各种数据及参数格式,对HOI事件数据包进行处理。HOI为主机提供了访问微处理器、链路管理器以及硬件状态和控制寄存器的各种命令接口。主机通过HOI驱动程序提供一系列命令控制蓝牙接口,蓝牙固件的HOI收到命令后,会产生事件返回给主机,用来指示接口的当前状态变化。主机和HCI之间共有以下3种类型数据。1.Hal命令包。从主机发向蓝牙的HOI。2.Hal事件包。从蓝牙的HOI发向主机。3.HOI数据包。可以从蓝牙的HOI发向主机,也可以从主机发向蓝牙的Hal。包括扩展同步连接导向数据和非实时的异步无连接数据。图9蓝牙软件程序流程图蓝牙软件使用BlueStack编程,完成初始化、连接等功能。蓝牙软件程序流程如图9所示。图9蓝牙软件程序流程图计算机与蓝牙设备采用异步串口通信,其由以下4个功能模块组成。1.初始化模块。初始化蓝牙芯片以及各状态变量,包括ΠFO、中断寄存器和传输波特率等。2.事务调度模块。根据蓝牙芯片返回的事件状态参数对系统的事务进行调度,跳转到返回事件处理模块中。3.返回事件处理模块;各个事件处理子程序分别对应不同事件的处。4.中断模块;负责数据包和事件包的接收和发送。2.3.2串口通信硬件:在工业控制系统中,各种数据的采集和执行机构的控制都是由下位机或探测站来完成。在分布式控制系统中大多采用单片机作为下位机来进行数据采集和现场控制。在这些应用中,单片机只是直接面向被控对象底层,而对采集到的数据进行进一步分析和处理的工作是由功能强大的主控PC机来完成的。因此,自动监控系统软件安装在上位机上,而通信程序作为自动监控系统软件的一部分也安装在上位机上,PC机和单片机之间就有着大量的数据交换。通常PC机和单片机之间的通信是通过串行总线RS-232实现的,为免去RS-485与RS-232的转化电路。因此采用一种以MAX232为核心的通信接口电路。该接口电路适用于由一台PC机与多个单片机串行通信的设计,其原理和方法同样适用于PC机与其它单片机之间的串行数据通信。其原理框图见图10。图10图10单片机与PC机通信原理框图串口通信中,起着重要作用的是RS-232通信接口电路。它是上位机和下位机之间信息传递的枢纽,一切数据的传输必需由它完成,上位机直接利用它的RS-232串行口,为此,采用了RS-232串行通信来接收或上传数据和指令。但RS-232信号的电平和单片机串口信号的电平不一致,必须进行二者之间的电平转换。在此电路中,采用MAX232实现TTL逻辑电平和RS-232电平之间的相互转换。MAX232由单一的+5V电源供电,只需配接5个高精度10μF/50V的电容即可完成电平转换。转换后的串行信号TXD、RXD直接与PC机的串行口连接。如此设计,既可发挥出PC机强大的计算和显示功能,又可以体现出单片机灵活的控制功能,有利于对现场信号的实时采集、处理和监控。

软件:VB提供了串行端口控件Mscomm方便应用程序实现串行通讯,该控件屏蔽了通信过程中的底层操作,程序员应用时只需设置、监视Mscomm控件的属性和事件即可完成对串行口的初始化和数据的输入、输出工作。汇编语言是一种执行效率高、可读性强的语言。为实现通讯正常,PC机与单片机约定如下:

波特率:9600bps;

信息格式:1个起始位,8位数据位,1个停止位,无奇偶校验位;

串行口操作模式:标准异步串行通信,串行口模式1;

传送方式:PC机采用查询方式接收数据,单片机采用中断方式接收信息。2.3.3论证结果无线蓝牙:优点:蓝牙工作在全球开放的2.4GHzISM(即工业、科学、医学)频段;使用跳频频谱扩展技术,把频带分成若干个跳频信道(hopchannel),在一次连接中,无线电收发器按一定的码序列不断地从一个信道“跳”到另一个信道;一台蓝牙设备可同时与其它七台蓝牙设备建立连接;数据传输速率可达1Mbit/s;低功耗、通讯安全性好;在有效范围内可越过障碍物进行连接,没有特别的通讯视角和方向要求;支持语音传输;组网简单方便;缺点:蓝牙是一种还没有完全成熟的技术,尽管前景诱人,但还有待于实际使用的严格检验,蓝牙的通讯速率也不是很高,在当今这个数据爆炸的时代,可能也会对它的发展有所影响。目前主流的软件和硬件平台均不提供对蓝牙的支持,这使得蓝牙的应用成本升高,普及难度增大,再加上ISM频段是一个开放频段,可能会受到诸如微波炉、无绳电话、科研仪器、工业或医疗设备的干扰。串口通信:优点:单片机具有体积小、价格低廉、可应用于恶劣工业环境;系统硬件电路简单,通信协议容易掌握,易学实用;缺点:不适用于远距离传输,对电缆的损耗大,故而要对电缆进行日常维护防止事故发生。结论:综上所述,上位机下位机通信部分采用串口通信。2.4系统总体设计模块图图11系统总体设计模块图系统功能简介:接入电源,液晶屏显示,第一行显示“JobID:”,第二行显示“Sum:Time:”;第一步的基础上,按动键盘“*”键时:液晶显示屏第一行显示“JobID:_”,下换线闪烁,提示可以输入工号;在第二步的基础上,按动键盘按键,输入工号,工人工号随机组合,最后按“#”键确认,进入计件环节。在第三步的基础上,如果工人工号输入错误,可直接按“*”键重新输入,再确认;在第四步的基础上,输入工号正确时:液晶第一行显示“JobID:*********”,液晶第二行显示“Sum:0000Time:00”;此时开始计件;在第五步的基础上,此后按动代表计件的按键时:液晶第二行“Sum:0000”的显示内容加1;Sum增加值随着按键次数增加,同时“Time:00”开始计算按键间隔时间;在第六步的基础上,若此后没有按键时:液晶第二行“Sum:****”不再增加,“Time:00”计数;若间断时间超过5s,蜂鸣器开始报警;在第七步的基础上,若再次按动计件按键时:报警消除,同时Sum加1;如果没有按动计件按键,报警持续,同时Time记录报警时间;在第八步的基础上,当工人完成计件时:再次按“*”键,清除当前数据,把数据传到上位机显示,下位工人可输入工号,开始工作。

3单元电路工作原理3.1键盘扫描本系统采用非编码键盘,CPU必须对所有按键进行监视,一旦发现有键按下,CPU通过程序加以识别,并转入相应键的处理程序实现该键被赋予的功能。硬件结构如图13所示:图13键盘硬件电路判断是否有键按下图13键盘硬件电路监视键盘是否按下,就是CPU将P1口置“11111110”,如果第一行有键按下,P1口高四位就不会再是原来的“1111”,此时只需检测P1口高位四位的电平变化,就可完成第一行键盘扫描过程。因此,将“0xfe”、“0xfd”、“0xfb”、“0xf7”,赋给P1口,在监视P1口高四位电平变化,就可完成键盘扫描过程。按键消抖硬件消抖:使用锁存器或者施密特触发器整波。软件消抖:使用延时程序。在按键时,被安键的簧片总会出现轻微抖动的现象,此抖动时间通常会持续10ms左右,因此CPU在按键抖动期间,扫描键盘必然会得到错误的行值和列值,最好的办法是检测有键按下时,延时20ms在进行键值对比。读取按键的行值和列值若CPU发现有键按下,则需获取按键的行值和列值。键值表如表1所示。表1键值对照表(4*4键盘)行值列值按键开关序号行值列值按键开关序号011111107S1011111018S5011110119S901110111OFF2011111015S6101110116S1010110111WARN3110111012S7110110113S1111010111+S1511101110ON/CS4111011010S811101011#S1211100111-S16第一行键盘扫描程序流程如图14所示,如果进行全盘扫描,则需将“0xfe”、“0xfd”、“0xfb”、“0xf7”,赋给P1口,在监视P1口高四位电平变化;如果进行部分扫描(有些行或者列按键不影响液晶显示)时,就可不必每行或者列都检测,简化程序。图14第一行键盘扫描流程图3.2液晶显示LCD1602显示原理:将液晶分子置于两片导电玻璃之间,靠两个电极间电场驱动,引起液晶分子扭曲向列的电场效应,以控制光源透射或者遮蔽功能,在电源开关之间产生明暗而将影像显示,如图15所示。图15液晶显示原理图本设计中只用液晶的写操作,如图16所示,液晶写数据(rs=1)、写命令(rs=0)操作时序图。图16液晶写操作时序图写命令指令用于液晶功能设置、清屏、显示开关控制、输入方式设置、数据写入地址设置等。3.3串口通信本设计串口通信采用RS232串口通信标准,不采用TTL逻辑电平,用以提高信号的抗干扰能力和增加传输距离。串口按位(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。本设计采用异步通信:串口通讯基本方式之一。串口通信过程原理如图17所示。图17串口发送数据、接收数据流程图串口发送数据时:键码值按ASCII码进入SBUF后,开始发送,将SBUF存入左移移位寄存器,按照先发送低位再发送高位进行顺序传送。串口接收数据时:按照先接收低位后接收高位的顺序进入右移移位寄存器,一次接收完后之后,移位寄存器的值存入SBUF,等待CPU使用。典型地,串口用于ASCII码字符的传输。通信使用3根线完成:地线,发送,接收。由于串口通信是异步的,端口能够在一根线上发送数据同时在另一根线上接收数据,通信中两个字符之间的时间间隔是不固定的,而在一个字符内各位的时间间隔是固定的。字符由起始位(startbit)、数据位(databit)、奇偶校验位(parity)和停止位(stopbit)组成。其他线用于握手,但是不是必须的。串口通信最重要的参数是波特率、起始位、数据位、停止位和奇偶校验。对于两个进行通行的端口,这些参数必须匹配:1.波特率:对于数据传输,双方必须对数据定时采用使用相同的波特率,此为衡量通信速度的参数。它表示每秒钟传送的bit的个数。我们提到的时钟周期就是指波特率,例如如果协议需要9600波特率,那么时钟是9600Hz。这意味着串口通信在数据线上的采样率为9600Hz。波特率和距离成反比。高波特率常常用于放置很近的仪器间的通信。2.起始位:由一位低电平表示一个字符的开始,接收方可用起始位使自己的接收时钟与数据同步。3.数据位:这是衡量通信中实际数据位的参数。当计算机发送一个信息包,实际的数据不会是8位的,标准的值是5、7和8位。例如,标准的ASCII码是0~127(7位)。扩展的ASCII码是0~255(8位)。如果数据使用简单的文本(标准ASCII码),那么每个数据包使用7位数据。每个包是指一个字节,包括开始/停止位,数据位和奇偶校验位。由于实际数据位取决于通信协议的选取(串口工作方式选择)。4.停止位:用于表示单个包的最后一位。典型的值为1,1.5和2位。由于数据是在传输线上定时的,并且每一个设备有其自己的时钟,很可能在通信中两台设备间出现了小小的不同步。因此停止位不仅仅是表示传输的结束,并且提供计算机校正时钟同步的机会。停止位的位数越多,不同时钟同步的容忍程度越大,但是数据传输率同时也越慢。5.奇偶校验位:在串口通信中一种简单的检错方式。有四种检错方式:偶、奇、高和低。当然没有校验位也是可以的。对于偶和奇校验的情况,串口会设置校验位(数据位后面的一位),用一个值确保传输的数据有偶数个或者奇数个逻辑高位。高位和低位不真正的检查数据,简单置位逻辑高或者逻辑低校验。这样使得接收设备能够知道一个位的状态,有机会判断是否有噪声干扰了通信或者是否传输和接收数据是否不同步。串口工作方式有四种,本设计采用串口工作方式1,一帧信息为10位。波特率设置9600。

4下位机电路实现4.1硬件仿真1.硬件仿真电路如图18所示:软件仿真硬件:用到了四行液晶显示,操作相当于两个LCD1602,同时还用到了虚拟终端来观测串口输出数据是否正确,4*4键盘中的等号相当于井号输入确认键,4*4键盘中的除号相当于关机键,4*4键盘中的乘号相当于设备工作异常报警键。多机串口通信过程:若要实现多机实时控制,PC机向单片机发送地址,各单片机检查是否PC机选择的是自己,如果选择自己,就将发送标志位置“1”,匹配下位机发送完数据后,发送标志位清零,这样保证了一段时间间隔内PC机只与一个单片机进行通信,可以防止接收到别的下位机发送的数据造成数据传输错误和混乱,而PC机需在短时间间隔内,不停的循环发送所有下位机的地址,并为保证其PC机采样过快,下位机还没来得及发送,它就选择了别的下位机,解决方法是可使单片机发送数据同时将此单片机地址也一起发送。图18硬件仿真图硬件仿真结果如图19所示:图19硬件仿真图结论:满足系统功能简述中的要求(见第14页),串口工作正常,N位数时,发送N位数据,发送接收数据对照表如表2所示。表2串口发送虚拟终端接收对照表串口发送虚拟终端接收串口发送虚拟终端接收0801812823834845856867878889894.2系统调试软件仿真调试:本设计采用的波特率与PC机一致,8为数据位,没有奇偶校验位,1位停止位。1.软件仿真时,为了观察发送数据情况,需将发送标志位置“1”,烧录程序时,再将其置为“0”。2.如果开始时,虚拟终端没法应,首先检查波特率、传输数据格式设置。如图20所示,进行虚拟终端设置,然后在仿真软件运行时,左键虚拟终端的“VirtualTerminal”,弹出“VirtualTerminal”显示界面,左键勾选“HexDisplayMode”设置虚拟终端结果显示模式即可。图20图20VirtualTerminal属性设置硬件调试:1.液晶不显示问题:由于液晶背光调节电阻设置不当,调节其滑动变阻器即可。2.串口工作调试:硬件搭建好后,先检查串口接地、发送、接收接口电路;使用现成的串口测试软件,测试串口发送数据是否正确;最后在用VB编写上位机软件,进行调试。结论:打开串口时,如果上位机发送内容不为单片机地址则下位机不发送数据,接收区不显示任何数据;打开串口时,如果上位机发送内容为单片机地址则下位机发送数据;在第二部的基础上,按键加时,发送数据在原来显示数据基础上加“1”;4.在第二部的基础上,按键减时,发送数据在原来显示数据基础上减“1”;5上位机软件实现5.1软件界面设计原则为了保证人机界面高效和易学易用,通常遵循以下四条原则:兼容性:即软件界面设计与用户的期望之间应达到匹配。包括用户兼容性、任务兼容性、产品兼容性和操作流程兼容性等。一致性:指软件界面的各同类界面(如对话框)的组成要素和具有相似性;简明性:指界面结构简洁明了,便于学习和操作;健全性:指界面须具有一定容错性(如提供可逆操作)和防护性。上位机的车间计件报表软件界面如图21所示(上位机软件开发由VB编程实现)。图21上位机的车间计件报表软件界面5.2基于VB的串口通信设计计算机串口通信技术在工程领域一直有着不可替代的作用,诸如仪器仪表都需要用串口并口进行数据采集与行为控制。MicrosoftCommunicationsControl(MSComm)是微软提供的简化Windows下串行通信编程的ActiveX控件,其实际上是WindowsAPI函数的有机集成,通过对此控件的属性和事件进行编程,我们即可发送和接收数据。5.3软件功能说明考虑到工作人员基本情况中的主键与端口号是配对的,所以本设计只完成了正确端口号与匹配下位机实时通信时的情况(多机通信可以通过判断选择地址的数值,改变工作人员基本情况以及工作情况中的内容)。1.由于本设计只制作了单个下位机,为免除麻烦提前将此下位机对应的工作人员基本情况、工作情况内容固化好,并且此内容是不能更改的;2.选择地址实为选择上位机与哪个下位机通信,由于制作了一个下位机,所以认为选择地址为默认的“0”时,才开始通信,故在输入不为“0”时,点击“开始”进行检测,弹出输入错误对话框,提示用户;3.当输入“选择地址”正确时,下位机传送数据给上位机,如果发送工件数目则在“实际完成”中显示并且认为设备工作正常,设备工作情况中的工作正常绿灯亮工作异常不亮;如果发送报警信号则设备工作异常,设备工作情况中的工作正常不亮工作异常红灯亮,此时完成任务仍显示设备异常前最后发送的工件数目;4.软件的菜单项设计如图22所示:此图为点击文件菜单项与点击帮助菜单项显示的上位机界面。如果打开记事本,操作员可手动输入记录的备注等情况;若点击保存则在"c:\report.txt",将工号、工作任务、姓名、实际完成及内容保存,并且每点击一次,记录就增多一条;若点击退出,显示关机动画;若点击帮助,显示帮助对话框界面。图22文件菜单项6设计结果下位机设计结果(如图23,,24所示):图23下位机工作于设备图24下位机工作于设备正常时上位机设计结果(如图25、26、27所示)图25上位机工作正常图26保存数据提示界面图27发送报警信号

7总结本设计总体满足系统功能简介(见第14页)。本设计的优点:1.完成点对点实时短距离通信,可以保存、处理工人工作数据以及实时监测设备工作情况,使生产车间的效率和安全有所提高;2.上位机界面友好,简单易学,发送接收数据简单;3.电路简单,成本低,工作稳定,无误差出现。本设计的缺点:1.由于工件加减需手动完成,故工人的工作量依然很大;2.由于利用串口通信,故需要传输线,造成车间布线复杂,而且为使电路简单采用的MAX232直接与PC机串口相连,使得接口的信号电平值较高,易损坏\o"技术资料:接口电路"接口电路的芯片,传输速率较低,接口使用一根信号线和一根信号返回线而构成共地的传输形式,这种共地传输容易产生共模干扰,所以抗噪声干扰性弱,传输距离受限。本设计的改进:1.可以做无线的数据传输系统;2.将工件加减按键换成红外对射管,自动检测工件数目;3.上位机循环发送需检测的下位机地址,下位机将数据地址信息传送上位机。

致谢··············

参考文献[1]白鹏,莫卫东.VB6.0高级编程技巧[M].西安:西安交通大学出版社,2002.[2]陈伟元,苏涛.单芯片微小型指纹识别系统设计与实现[J].计算机工程与应用,2010,46(25):61~63.[3]方旭明,何蓉.短距离无线与移动通信网络[M].北京:人民邮电出版社,2004.[4]范逸之,陈立元.VisualBasic与RS-232串行通讯控制[M].北京:清华大学出版社,2002.[5]龚沛曾,杨志强,陆慰民.VisualBasic程序设计教程.第三版[M].北京:高等教育出版社,2007.[6]胡小虹,李见为,刘元兵.基于DSP的指纹识别模块设计与实现[J].重庆大学学报,2004,27(9):26~28.[7]纪红.红外技术基础与应用[M].北京:科学出版社,1993.[8]KlausFinkenzeller.射频识别RFID技术[M].北京:电子工业出版社,2001.[9]李肇庆,韩涛.串行端口技术[M].北京:国防工业出版社,2006.[10]李江全,张丽,岑红蕾.VisualBasic串口通信测控应用技术实战详解[M].北京:人民邮电出社,2007.[11]李建忠.单片机原理及应用[M].西安:西安电子科技大学出版社,2002.[12]李朝青.PC机与单片机与DSP数据通信技术选编1[M].北京:北京航空航天大学出版社,2002.[13]林卓然.VisualBasic程序设计教程.第二版[M].北京:电子工业出版社,2007.[14]刘冬生,邹雪城.高频RFID读写器射频模拟前端的实现[J].半导体技术,2006,31(9):669-672.[15]王建校,杨建国.51系列单片机及C51程序设计[M].北京:科学出版社,2001.[16]萧秋水,文娟.Windows网络编程之VB篇[M].北京:清华大学出版社,2002.[17]徐建军,关宇,季晓衡.MCS-51单片机应用及接口技术.第一版[M].北京:人民邮电出版社,2003.

附录附录A:英语科技文献原文及翻译稿英文科技文献原文:TheGeneralSituationofAT89C51Chapter1TheapplicationofAT89C51Microcontrollersareusedinamultitudeofcommercialapplicationssuchasmodems,motor-controlsystems,airconditionercontrolsystems,automotiveengineandamongothers.Thehighprocessingspeedandenhancedperipheralsetofthesemicrocontrollersmakethemsuitableforsuchhigh-speedevent-basedapplications.However,thesecriticalapplicationdomainsalsorequirethatthesemicrocontrollersarehighlyreliable.Thehighreliabilityandlowmarketriskscanbeensuredbyarobusttestingprocessandapropertoolsenvironmentforthevalidationofthesemicrocontrollersbothatthecomponentandatthesystemlevel.IntelPlatformEngineeringdepartmentdevelopedanobject-orientedmulti-threadedtestenvironmentforthevalidationofitsAT89C51automotivemicrocontrollers.ThegoalsofthisenvironmentwasnotonlytoprovidearobusttestingenvironmentfortheAT89C51automotivemicrocontrollers,buttodevelopanenvironmentwhichcanbeeasilyextendedandreusedforthevalidationofseveralotherfuturemicrocontrollers.TheenvironmentwasdevelopedinconjunctionwithMicrosoftFoundationClasses(AT89C51).Thepaperdescribesthedesignandmechanismofthistestenvironment,itsinteractionswithvarioushardware/softwareenvironmentalcomponents,andhowtouseAT89C51.1.1IntroductionThe8-bitAT89C51CHMOSmicrocontrollersaredesignedtohandlehigh-speedcalculationsandfastinput/outputoperations.MCS51microcontrollersaretypicallyusedforhigh-speedeventcontrolsystems.Commercialapplicationsincludemodems,motor-controlsystems,printers,photocopiers,airconditionercontrolsystems,diskdrives,andmedicalinstruments.TheautomotiveindustryuseMCS51microcontrollersinengine-controlsystems,airbags,suspensionsystems,andantilockbrakingsystems(ABS).TheAT89C51isespeciallywellsuitedtoapplicationsthatbenefitfromitsprocessingspeedandenhancedon-chipperipheralfunctionsset,suchasautomotivepower-traincontrol,vehicledynamicsuspension,antilockbraking,andstabilitycontrolapplications.Becauseofthesecriticalapplications,themarketrequiresareliablecost-effectivecontrollerwithalowinterruptlatencyresponse,abilitytoservicethehighnumberoftimeandeventdrivenintegratedperipheralsneededinrealtimeapplications,andaCPUwithaboveaverageprocessingpowerinasinglepackage.Thefinancialandlegalriskofhavingdevicesthatoperateunpredictablyisveryhigh.Onceinthemarket,particularlyinmissioncriticalapplicationssuchasanautopilotoranti-lockbrakingsystem,mistakesarefinanciallyprohibitive.Redesigncostscanrunashighasa$500K,muchmoreifthefixmeans2backannotatingitacrossaproductfamilythatsharethesamecoreand/orperipheraldesignflaw.Inaddition,fieldreplacementsofcomponentsisextremelyexpensive,asthedevicesaretypicallysealedinmoduleswithatotalvalueseveraltimesthatofthecomponent.Tomitigatetheseproblems,itisessentialthatcomprehensivetestingofthecontrollersbecarriedoutatboththecomponentlevelandsystemlevelunderworstcaseenvironmentalandvoltageconditions.Thiscompleteandthoroughvalidationnecessitatesnotonlyawell-definedprocessbutalsoaproperenvironmentandtoolstofacilitateandexecutethemissionsuccessfully.IntelChandlerPlatformEngineeringgroupprovidespostsiliconsystemvalidation(SV)ofvariousmicro-controllersandprocessors.Thesystemvalidationprocesscanbebrokenintothreemajorparts.Thetypeofthedeviceanditsapplicationrequirementsdeterminewhichtypesoftestingareperformedonthedevice.1.2TheAT89C51providesthefollowingstandardfeatures:4KbytesofFlash,128bytesofRAM,32I/Olines,two16-bittimer/counters,afivevectortwo-levelinterruptarchitecture,afulldupleserialport,on-chiposcillatorandclockcircuitry.Inaddition,theAT89C51isdesignedwithstaticlogicforoperationdowntozerofrequencyandsupportstwosoftwareselectablepowersavingmodes.TheIdleModestopstheCPUwhileallowingtheRAM,timer/counters,serialportandinterruptsys-temtocontinuefunctioning.ThePower-downModesavestheRAMcontentsbutfreezestheoscillatordisablingallotherchipfunctionsuntilthenexthardwarereset.Figure1-2-1BlockDiagram1-3PinDescriptionVCCSupplyvoltage.GNDGround.Port0:Port0isan8-bitopen-drainbi-directionalI/Oport.Asanoutputport,eachpincansinkeightTTLinputs.When1sarewrittentoport0pins,thepinscanbeusedashighimpedanceinputs.Port0mayalsobeconfiguredtobethemultiplexedloworderaddress/databusduringaccessestoexternalprogramanddatamemory.InthismodeP0hasinternalpullups.Port0alsoreceivesthecodebytesduringFlashprogramming,andoutputsthecodebytesduringprogramverification.Externalpullupsarerequiredduringprogramverification.Port1:Port1isan8-bitbi-directionalI/Oportwithinternalpullups.ThePort1outputbufferscansink/sourcefourTTLinputs.When1sarewrittentoPort1pinstheyarepulledhighbytheinternalpullupsandcanbeusedasinputs.Asinputs,Port1pinsthatareexternallybeingpulledlowwillsourcecurrent(IIL)becauseoftheinternalpullups.Port1alsoreceivesthelow-orderaddressbytesduringFlashprogrammingandverification.Port2:Port2isan8-bitbi-directionalI/Oportwithinternalpullups.ThePort2outputbufferscansink/sourcefourTTLinputs.When1sarewrittentoPort2pinstheyarepulledhighbytheinternalpullupsandcanbeusedasinputs.Asinputs,Port2pinsthatareexternallybeingpulledlowwillsourcecurrent(IIL)becauseoftheinternalpullups.Port2emitsthehigh-orderaddressbyteduringfetchesfromexternalprogrammemoryandduringaccessestoPort2pinsthatareexternallybeingpulledlowwillsourcecurrent(IIL)becauseoftheinternalpullups.Port2emitsthehigh-orderaddressbyteduringfetchesfromexternalprogrammemoryandduringaccessestoexternaldatamemorythatuse16-bitaddresses(MOVX@DPTR).Inthisapplication,itusesstronginternalpull-upswhenemitting1s.Duringaccessestoexternaldatamemorythatuse8-bitaddresses(MOVX@RI),Port2emitsthecontentsoftheP2SpecialFunctionRegister.Port2alsoreceivesthehigh-orderaddressbitsandsomecontrolsignalsduringFlashprogrammingandverification.Port3:Port3isan8-bitbi-directionalI/Oportwithinternalpullups.ThePort3outputbufferscansink/sourcefourTTLinputs.When1sarewrittentoPort3pinstheyarepulledhighbytheinternalpullupsandcanbeusedasinputs.Asinputs,Port3pinsthatareexternallybeingpulledlowwillsourcecurrent(IIL)becauseofthepullups.Port3alsoservesthefunctionsofvariousspecialfeaturesofttheAT89C51aslistedbelow:RST:Resetinput.Ahighonthispinfortwomachinecycleswhiletheoscillatorisrunningresetsthedevice.ALE/PROG:AddressLatchEnableoutputpulseforlatchingthelowbyteoftheaddressduringaccessestoexternalmemory.Thispinisalsotheprogrampulseinput(PROG)duringFlashprogramming.InnormaloperationALEisemittedataconstantrateof1/6theoscillatorfrequency,andmaybeusedforexternaltimingorclockingpurposes.Note,however,thatoneALEpulseisskippedduringeachaccesstoexternalDataMemory.Ifdesired,ALEoperationcanbedisabledbysettingbit0ofSFRlocation8EH.Withthebitset,ALEisactiveonlyduringaMOVXorMOVCinstruction.Otherwise,thepinisweaklypulledhigh.SettingtheALE-disablebithasnoeffectifthemicrocontrollerisinexternalexecutionmode.PSEN:ProgramStoreEnableisthereadstrobetoexternalprogrammemory.WhentheAT89C51isexecutingcodefromexternalprogrammemory,PSENisactivatedtwiceeachmachinecycle,exceptthattwoPSENactivationsareskippedduringeachaccesstoexternaldatamemory.EA/VPP:ExternalAccessEnable.EAmust

温馨提示

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

评论

0/150

提交评论