毕业设计(论文)基于单片机的自动计数与装箱控制系统设计.doc

上传人:laozhun 文档编号:3981071 上传时间:2023-03-30 格式:DOC 页数:39 大小:601.50KB
返回 下载 相关 举报
毕业设计(论文)基于单片机的自动计数与装箱控制系统设计.doc_第1页
第1页 / 共39页
毕业设计(论文)基于单片机的自动计数与装箱控制系统设计.doc_第2页
第2页 / 共39页
毕业设计(论文)基于单片机的自动计数与装箱控制系统设计.doc_第3页
第3页 / 共39页
毕业设计(论文)基于单片机的自动计数与装箱控制系统设计.doc_第4页
第4页 / 共39页
毕业设计(论文)基于单片机的自动计数与装箱控制系统设计.doc_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《毕业设计(论文)基于单片机的自动计数与装箱控制系统设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于单片机的自动计数与装箱控制系统设计.doc(39页珍藏版)》请在三一办公上搜索。

1、摘 要随着经济的发展、人类的需要,现在的工厂和车间每天都要生产数以万计的产品。在过去还可依赖人工纸笔计数,现在由于数量庞大加上生产速度之快这种人工计数的方式已无法达到良好的实时性与准确性。因此自动计数系统已成为现今工业生产不可或缺的一部分。然而一个优良的自动计数系统必须拥有良好的数据采集方式和完善的控制系统。本课题即基于单片机的产品自动计数系统数据采集与控制设计也就应运而生。本论文研究如何利用单片机研制自动计数系统,实现数据的采集以及整个计数系统的控制。主要利用光电传感器、电容式传感器、电感式传感器针对不同的产品进行数据采集,保证数据采集的实时性与准确性。在控制设计上,采用集散控制系统方式。由

2、一台PC机和三台单片机构成,PC机用于“集中管理”,单片机用于“分散控制”,PC机与单片机之间通过通讯接口进行数据通讯。另外对系统进行了优化,比如对信号的放大、波形的变换和整形,系统抗干扰能力的增强,电源和系统复位部分的改善设计。此自动计数系统弥补了传统计数系统的不足,能够针对不同的产品进行计数,并能同时控制多条生产线,具有高效、实时、准确、抗干扰等特点。能够广泛的应用于工厂、车间,实现计数过程的自动化,大大提高了生产效率,能为企业带来更高的效益。关键词:单片机 数据采集 光电传感器 集散控制系统Abstract Along with economic development, human n

3、eeds, factories and workshops daily production of tens of thousands of products. In the past could count on artificial brushes, Due to the huge volume production with such a fast speed manual counting is not the way to achieve good accuracy with the real-time . Therefore automatic counting systems a

4、re now industrial production integral part. However, a good automatic counting systems must have good data collection methods and improve the control system. Based on the issues that SCM products automatic counting systems - data acquisition and control design also emerged. This paper studies the us

5、e of MCU automatic counting systems development, data collection and the entire counting system control. Mainly use photoelectric sensors, capacitive sensors, inductive sensors for different products for data collection, guarantee real-time data acquisition and accuracy. In control design, using dis

6、tributed control system mode. From a PC and the Big Three microprocessor, PC for the centralized management, microcontroller for decentralized control, PC and through communication between the microcontroller interface for data communications. In addition, the system has been optimized, such as the

7、amplification of the signal waveform in the transformation and in particular, the systems anti-jamming capability, Power and reset part of the system to improve the design.This automated counting system to make up for the traditional counting system inadequate to cover different products count, and

8、at the same time control over production lines, with real-time, accurate and interference characteristics. Can be widely applied in factories, workshops, achieving counting process automation, greatly increasing the efficiency of production, Enterprises can bring higher efficiency. Keywords: SCM Dat

9、a acquisition Photoelectric sensors Distributed Control System 目 录 摘要IABSTRACTII绪论1 1 总体设计21.1 系统设计方案论证21.1.1 数据采集方案论证21.1.2 控制方式方案论证61.2 总体设计及其工作原理61.2.1 工作原理61.2.2 主要功能71.3 本章小结82 硬件设计92.1 单片机硬件设计92.1.1 单片机的选择92.1.2 单片机时钟电路的设计102.1.3 单片机复位电路的设计102.1.4 单片机系统抗干扰电路的设计122.2 数据采集部分硬件设计132.2.1 用电感式接近开关采

10、集金属产品132.2.2 用电容式接近开关采集非金属产品142.2.3 用光电传感器采集产品152.3 本章小结173 软件设计183.1 语言简介183.1.1 VISUAL BASIC语言183.1.2 汇编语言183.2 PC机的软件设计193.3 单片机的软件设计203.4 软件抗干扰技术213.5 本章小结234 PC机与单片机串行通信244.1 通信方案244.2 本章小结255 系统调试和改进265.1 引言265.2 系统的调试与故障排除265.3 系统的特点与应用265.3.1 系统的实际效果265.3.2 系统所具有的特点275.3.3 系统的适用范围275.4 系统的改进

11、与展望275.5 本章小节27结论28致谢29附录一 系统硬件图31附录二 系统程序32绪 论本章首先论述一下自动计数系统的发展背景同时简要介绍国内外关于这方面的研究发展情况与未来的发展趋势,然后论述一下研究的目的和意义。由于科技的发展,生产操作的自动化在各个领域都得以普及和推广。自动计数系统更是许多工业生产厂不可或缺的一部分。而一个优良的自动计数系统必须拥有良好的数据采集方式和完善的控制系统。因为只有拥有良好的数据采集方式才能保证数据的实时性与准确性,拥有完善的控制系统才能保证整个操作过程有条理且高效率的运作。现如今由于器件的多样性,国内外数据采集的方式和应用也多种多样。常见的有利用A/D芯

12、片模数转换的原理采集例如电压、电流、温度、压力等模拟量;利用编码器将几何位移量转换成脉冲或数字量的原理采集例如角度、速度等物理量;利用电感式接近开关电涡流效应来检测金属物品的通过;利用电容式接近开关电容介电常数变化的原理来检测物体的通过;利用光电传感器光束是否被遮挡来检测物体的有或无。在控制设计上,则由原来的计算机多级控制系统发展为集散控制系统。未来,随着相关领域新技术与新器件的出现,数据采集会向实时性更强、灵敏度更高的方向发展。控制方式则会趋向于性能更加优越、结构更加简单的方向前行。本课题的内容是自动计数系统数据采集与控制设计部分的研制,是集数据采集、远程控制于一体的智能系统,是为适应生产的

13、自动化发展而提出的,有着良好的经济价值和社会意义。1 总体设计1.1 系统设计方案论证1.1.1 数据采集方案论证在数据采集的方式上常见的有利用A/D(模数转换)芯片、编码器、电感式接近开关、电容式接近开关、光电传感器采集数据。 A/D(模数转换)芯片采集数据A/D芯片是一种将电压、电流等模拟量转换成数字量的器件。A/D转换方式有逐次逼近式和双斜积分式。常见的逐次逼近式A/D转换器有8位分辨率的ADC0809,12位分辨率的AD574;常见的双斜积分式A/D转换器有3位半的MC14433,4位半的ICL7135。利用A/D芯片采集模拟量数据简单快捷,可广泛的应用于配电厂、机房等地。然而由于其采

14、集对象往往是电压、电流、温度、压力、流量和速度等物理量,此处针对本课题研究的生产线上物品的统计就不合适了 。 编码器采集数据编码器是一种将几何位移量转换成脉冲或数字量的传感器,编码器的种类有旋转型编码器、光电型编码器。利用编码器采集数据的优点是精度高、测量范围广,缺点是抗干扰能力差。而且编码器较适用于角度的测量,速度的计算,在此处也不合适。 电感式接近开关采集数据电感式接近开关属于一种有开关量输出的位置传感器,它由LC高频振荡器和放大处理电路组成,利用金属物体在接近这个能产生电磁场的振荡感应头时,使物体内部产生涡流。这个涡流反作用于接近开关,使接近开关振荡能力衰减,内部电路的参数发生变化,由此

15、识别出有无金属物体接近,进而控制开关的通或断。其结构如图11所示。图11 电感式接近开关利用这个接近开关可以实现本课题对物品的采集,然而电感式接近开关所能检测的物体必须是金属物体。因此可以用它专门检测金属产品生产线上的物品。 电容式接近开关采集数据电容式接近开关亦属于一种具有开关量输出的位置传感器,它的测量头通常是构成电容器的一个极板,而另一个极板是物体的本身,当物体移向接近开关时,物体和接近开关的介电常数发生变化,使得和测量头相连的电路状态也随之发生变化,由此便可控制开关的接通和关断。其结构如图12所示。 图12 电容式接近开关这种接近开关的检测物体,并不限于金属导体,也可以是绝缘的液体或粉

16、状物体,在检测较低介电常数的物体时,可以顺时针调节多圈电位器(位于开关后部)来增加感应灵敏度,一般调节电位器使电容式的接近开关在0.7-0.8Sn的位置动作。利用这个接近开关可以实现本课题对物品的采集,电容式接近开关所能检测的物体不限于金属物体。因此可以用它来检测另一条生产线上的非金属物品。 光电传感器采集数据光电传感器是利用被检测物体对光束的遮光或反射,由同步回路选通而检测物体的有无,其物体不限于金属,对所有能反射光线的物体均可检测。根据检测方式的不同,可分为 漫反射式光电开关:漫反射光电开关是一种集发射器和接收器于一体的传感器,当有被检测物体经过时,将光电开关发射器发射的足够量的光线反射到

17、接收器,于是光电开关就产生了开关信号。其结构如图13所示。 图13 漫反射式光电开关当被检测物体的表面光亮或其反光率极高时,漫反射式的光电开关是首选的检测模式。 镜反射式光电开关: 镜反射式光电开关亦是集发射器与接收器于一体,光电开关发射器发出的光线经过反射镜,反射回接收器,当被检测物体经过且完全阻断光线时,光电开关就产生了检测开关信号。其结构如图14所示。 图14 镜反射式光电开关 对射式光电开关:对射式光电开关包含在结构上相互分离且光轴相对放置的发射器和接收器,发射器发出的光线直接进入接收器。当被检测物体经过发射器和接收器之间且阻断光线时,光电开关就产生了开关信号。当检测物体是不透明时,对

18、射式光电开关是最可靠的检测模式。其结构如图15所示。 图15 对射式光电开关 槽式光电开关:槽式光电开关通常是标准的U字型结构,其发射器和接收器分别位于U型槽的两边,并形成一光轴,当被检测物体经过U型槽且阻断光轴时,光电开关就产生了检测到的开关量信号。槽式光电开关比较安全可靠的适合检测高速变化,分辨透明与半透明物体。其结构如图16所示。图16 槽式光电开关 光纤式光电开关光纤式光电开关采用塑料或玻璃光纤传感器来引导光线,以实现被检测物体不在相近区域的检测。通常光纤传感器分为对射式和漫反射式。其结构如图17所示。图17 光纤式光电开关光电传感器的优点是光电器件响应快,结构简单,使用方便,可以实现

19、非接触测量,具有较高的可靠性和可行性。光电传感器的采集对象不局限于金属,对其他物体均可检测,而且检测距离是接近开关不能相比的,因此, 此方案可取,可选用光电传感器作为其中一条生产线上对物品数量的采集。1.1.2 控制方式方案论证在控制设计上,则有计算机多级控制系统和集散控制系统可选。计算机多级控制系统由直接数字控制系统(DDC)、计算机监督控制系统(SCC)和管理信息系统(MIS)三级组成。DDC直接控制生产过程,实施多种控制功能;SCC指挥直接数字控制系统工作;MIS主要进行计划和调度,指挥监督控制系统工作。然而这种控制方式存在一些问题,具有局限性。集散控制系统是由多台下位机分别控制生产过程

20、中的多个控制回路,同时又可集中获取数据和集中管理的自动控制系统。在集散控制系统中,当管理级出现故障时,过程控制级仍有独立的控制能力,个别控制回路出现故障也不会影响全局。相对集中的管理方式有利于实现功能标准化的模块化设计,与计算机多级控制相比,集散控制系统在结构上更加灵活,布局更加合理,成本更低。因此,本课题采用集散控制系统,是由一台PC机和三台单片机组成的二层结构模式。第一级为下位机,直接面对控制对象完成实时控制,由MCS-51系列的8051单片机扩展而成,安装在工业现场。第二级为上位机,用于集中管理,选用IBM-PC,安装在控制室。PC机与单片机之间通过通讯接口进行数据通讯。1.2 总体设计

21、及其工作原理本课题所研制的自动计数系统总体设计构想是希望开发出的产品能实现对一个车间内三条生产线上生产出的不同类型产品进行计数:用电感式接近开关对金属产品进行计数,用电容式接近开关对非金属产品进行计数,用光电传感器对各种类型产品进行计数。力求此计数系统结构简单、处理快捷、成本低、具备可行性,工厂车间能够实际的投入生产运行中。1.2.1 工作原理车间系统上电后,三个单片机运行各自的程序。当电感式接近开关所在的生产线上有金属产品靠近时,由于涡流效应,产生低电平,该信号经处理后传给单片机T0端,该单片机进行一次计数。当电容式接近开关所在的生产线上有非金属产品靠近时,由于介电常数的变化,产生低电平,信

22、号处理后传给单片机T0端,该单片机进行一次计数。当光电传感器所在的生产线有物件通过时,挡在了发射器和接收器之间,传感器将会输出一个低电平,而当没有物体挡在中间时则输出为高电平,从而形成一个脉冲。信号经由放大、整形后传给单片机,使单片机进行一次计数操作。PC机通过通讯接口与单片机进行数据通讯,控制方式为集散式。PC机用于集中管理,主要负责定时向下位机发送呼叫指令,并对接收到的应答信号做近一步的处理;三台单片机则用于分散控制,它们分别对三条生产线进行监测计数控制,并将计数的结果发送给上位机。系统原理框图如图18所示。图18 系统原理框图1.2.2 主要功能此计数系统能够快速准确的统计车间内三条生产

23、线上产品的日产量,并且对于不同类型的产品采用不同的器件采集数据。反应快、不易受干扰。采用集散控制系统,各单片机完成分散控制,PC机进行集中管理,可靠性好,结构灵活,布局合理,成本较低。1.3 本章小结本章主要对本课题的系统设计方案进行了论证,在众多方案中从性能、结构、可行性方面进行比较,最终选出最合理的方案。然后就选定的设计方案做出总体构想,并且阐明了系统的工作原理及主要功能。2 硬件设计2.1 单片机硬件设计首先一个计数系统要选择合适的单片机,其次就是单片机的电路设计。它包括时钟电路、复位电路和抗干扰电路的设计。2.1.1 单片机的选择单片机的弱点是运算速度较慢。在要求响应速度快、实时性强、

24、控制量多的应用场合,单个单片机难以胜任,此时虽然也可以选用高速微处理器如DSP等,但综合考虑性能价格比和开发的难易程度,在运行速度更快、功能更强大、实时性更高、受控执行机构更多、任务更复杂、人机界面更完善、地域跨度更广等应用场合,多单片机系统显示出优越性。MCS51系列单片机是8位机的代表,在我国有广泛的应用市场。基于以上考虑,本课题选用8051芯片,8051单片机是Intel公司MCS51系列的一种,是目前工业检测领域应用最广泛的一种。8051单片机逻辑符号如图21所示。图21 8051单片机逻辑符号 主电源引脚Vcc和Vss 时钟电路引脚XTAL1和XTAL2 控制信号引脚 输入/输出(I

25、/O)引脚2.1.2 单片机时钟电路的设计单片机虽然有内部振荡电路,但要形成时钟,必须在外部附加电路。通常有两种方式:内部时钟方式和外部时钟方式。此处选用内部时钟方式,8051单片机内部有一个用于构成振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。在XTAL1和XTAL2两端跨接一个片外石英晶体就构成了稳定的自激振荡器。外接石英晶体时,接入电容C1和C2有利于振荡器起振,对频率有微调作用,电容C1和C2的值常选择为30PF。振荡频率由石英晶体的谐振频率确定,此处振荡频率是12MHz。电路如图22所示。图22 8051的内部时钟电路 在具体连接安装时,石英晶体

26、和电容应尽可能靠近单片机芯片安装,以减少寄生电容,更好地保护振荡器稳定可靠地工作。2.1.3 单片机复位电路的设计51系列单片机之所以能得到广泛的应用,其中一个重要的因素是其稳定性能好。因此系统稳定性对于单片机来说是至关重要的。但是,任何控制系统也无法保证绝对稳定安全,所以当单片机出现系统故障如程序跑飞时,能够及时检测到错误并且及时复位,使控制系统恢复正常控制状态是必要的。 因此在安全性能要求很高的测控系统中就要避免程序跑飞导致系统失控的情况,这样就要用到复位电路。51单片机复位引脚RST通过一个斯密特触发器与复位电路相连。斯密特触发器用来抑制噪声,其输出在每个机器周期的S5P2由复位电路采样

27、一次。只要在RST引脚保持至少2个机器周期的高电平,就可实现单片机复位。在RST端出现高电平后的第2个周期,执行内部复位,以后每个周期重复一次,直至RST端变低。在本课题中采用X5045芯片来实现复位控制,它把上电复位、看门狗定时器、电压监控和E2PROM四种常用功能组合在单个芯片里,以降低系统成本、节约电路板空间。其看门狗定时器和电源电压监控功能可对系统起到保护作用;5128位的E2PROM可用来存储单片机系统的重要数据。X5045共8个引脚,其中WP是写保护输入引脚,只有WP为高电平时才可以向E2PROM 写数据;RST为复位输出引脚,复位时输出高电平;SI为串行输入引脚,SO为串行输出引

28、脚,SCK为串行时钟引脚,CS/WDI为片选输入/看门狗复位输入引脚。SI、SO、SCK和 CS 均可以和单片机任何一个I/O引脚相连。X5045与单片机的连接图如图23所示。图23 X5045与单片机的连接看门狗定时器的作用是通过监视WDI输入来监视单片机的工作状态来决定是否激活。由于单片机必须周期性的触发CS/WDI引脚以避免RESET信号激活而使电路复位,所以CS/WDI引脚必须在看门狗超时时间终止之前受到由高至低信号的触发。而当单片机程序出现跑飞等不正常的工作状态时,X5045就会及时检测到这一情况并且通过RESET输出复位信号,控制单片机复位。 2.1.4 单片机系统抗干扰电路的设计

29、工业生产中的干扰一般都以脉冲形式进入单片机,干扰窜入系统的渠道主要有三条,即供电系统;过程通道;空间磁场。通常防护措施如下: 供电系统在单片机系统中,最严重的干扰来源为电源的污染,且现在的单片机系统,大都使用市电(220V,50Hz),在工业现场中,由于生产负荷的变化,如大的电机的启、停,强电继电器的通、断等,往往造成电源电压的波动,严重时直接影响单片机的正常工作。因此为了防止从电源系统引入干扰和确保单片机的正常工作,必须采取相应的措施。一是要将单片机的供电与大功率的用电设备的电源分开,最好单独供电;二是添加一个低通滤波器。在交流220V进线处,设置一个低通滤波器,它对50Hz的市电影响很小,

30、而对频率很高的干扰波具有很强的抑制力。滤波器要加屏蔽外壳,并使其接地良好;进线端与出线端要严格分开,以防止感应和辐射耦合。电源变压器的初级绕组和次级绕组需分别加屏蔽层,初、次级间再加屏蔽层,且初级的屏蔽层接交流电网的零线,次级屏蔽层和初、次级间的屏蔽层接至直流地端。电路如图24所示。图24 对交流电源的滤波和屏蔽 输入输出通道输入输出通道是单片机与传感器、单片机与上位机以及单片机与执行机构之间的信息传送的路径。在系统中,传输线上的信息多为脉冲波和较弱的测量信号电压,在长线传输时会产生衰减、延时、畸变。信号隔离是抵抗外界干扰的必要而有效的措施,常采用光电隔离器使系统与各种传感器、开关、执行机构从

31、电气上隔离开来,阻挡外界的共模电压和外界串入的电磁干扰,从而保证单片机的工作环境,使整个系统正常运行。 本课题采用6N137光电隔离器,其结构原理图如图25所示。图25 6N137结构原理图 其输入端配置发光源,输出端配置发光器,因而输入和输出在电气上是完全隔离的,这样使夹杂在输入端的各种干扰脉冲都被挡在输入回路的一侧。 屏蔽和接地在工业生产的现场难免有电磁干扰会窜入单片机,影响系统工作。为了防止电磁干扰从空间侵入,需用钢板做机壳将单片机系统屏蔽起来,再将外壳接地。2.2 数据采集部分硬件设计针对一个车间内三条生产线上生产出的不同类型的产品,采用不同的器件进行数据采集:用电感式接近开关对金属产

32、品进行计数,用电容式接近开关对非金属产品进行计数,用光电传感器对各种类型产品进行计数。2.2.1 用电感式接近开关采集金属产品电感式接近开关和单片机组成的金属产品计数部分硬件原理图如图26所示。 图26 电感式接近开关检测金属物品原理图工作流程如下:当金属物体在接近电感式接近开关能产生电磁场的振荡感应头时,使物体内部产生涡流。这个涡流反作用于接近开关,使接近开关振荡能力衰减,内部电路的参数发生变化,输出的信号经过整形检波、信号处理后加到单片机的输入端,从而进行一次计数。电感式接近开关的优点是无接触,无压力、无火花、迅速发出电气指令,准确反应出运动机构的位置和行程,即使用于一般的控制,其定位精度

33、、操作频率、使用寿命、安装调整的方便性和对恶劣环境的适用能力都是其他普通开关无法比拟的。2.2.2 用电容式接近开关采集非金属产品电容式接近开关和单片机组成的非金属产品计数部分硬件原理如图27所示。图27 电容式接近开关检测非金属物品原理图工作流程如下:当非金属物体移向电容式接近开关时,物体和接近开关的介电常数发生变化,使得和测量头相连的电路状态也随之发生变化,输出的信号经过信号处理后加到单片机的输入端,从而进行一次计数。2.2.3 用光电传感器采集产品由于光电传感器的分类品种繁多,选择一个合适的传感器是首要的任务,其次是对信号放大、波形变换和波形整形。 光电传感器的选择可选用由高发射功率红外

34、光电二极管和高灵敏度光敏晶体管组成的直射式光电传感器。其内部电路如图28所示。图28 内部电路示意图采用这种红外光电传感器,进行非接触式检测。当有物体挡在红外光电发光二极管和高灵敏度的光电晶体管之间时,传感器将会输出一个低电平,而当没有物体挡在中间时则输出为高电平,从而形成一个脉冲。 信号放大、波形变换和波形整形电路设计对待测信号进行放大的目的是降低对待测信号的幅度要求;波形变换和波形整形电路则用来将放大的信号转换成可与单片机相连的信号。原理如图29所示。图29 电路设计原理图 信号预处理电路信号预处理电路如图210所示。图210 信号预处理电路系统的信号预处理电路由二级电路构成,第一级是由开

35、关三极管组成的零偏置放大器,采用开关三极管可以保证放大器具有良好的高频响应。当输入信号为零或负电压时,三极管截止,电路输出高电平;而当输入信号为正电压时,三极管导通,此时输出电压随着输入电压的上升而下降。由于放大器的放大功能降低了对待测信号的幅度要求,因此,系统能对任意大于0.5V的正弦波和脉冲信号进行测量。预处理电路的第二级采用带施密特触发器的反相器DM74LS14来把放大器生成的单相脉冲转换成与COMS电平相兼容的方波信号,同时将输出信号加到单片机的P3.4口上。 脉冲整形利用施密特触发器状态转换过程中的正反馈作用,可以把边沿变化缓慢的周期性信号变换为边沿很陡的矩形脉冲信号。输入的信号只要

36、幅度大于VT+,即可在施密特触发器的输出端得到同等频率的矩形脉冲信号。从传感器得到的矩形脉冲经传输后往往发生波形畸变。当传输线上的电容较大时,波形的上升沿将明显变坏;当传输线较长,而且接受端的阻抗与传输线的阻抗不匹配时,在波形的上升沿和下降沿将产生振荡现象;当其他脉冲信号通过导线间的分布电容或公共电源线叠加到矩形脉冲信号时,信号上将出现附加的噪声。无论出现上述的那一种情况,都可以通过用施密特反相触发器整形而得到比较理想的矩形脉冲波形。2.3 本章小结本章详细介绍了自动计数系统的硬件设计,包括单片机的硬件设计:时钟电路、复位电路和抗干扰电路;数据采集部分硬件设计:电感式接近开关采集数据电路、电容

37、式接近开关采集数据电路、光电传感器采集数据电路。详细阐明了设计所依据的原理和各功能模块的具体实现方案,并仔细分析了各模块所用芯片的结构特点及工作原理。3 软件设计3.1 语言简介本课题采用集散控制系统,是由一台PC机和三台单片机组成的二层结构模式。第一级为下位机,直接面对控制对象完成实时控制,由MCS-51系列的8051单片机扩展而成,安装在工业现场。第二级为上位机,用于集中管理,选用IBM-PC,安装在控制室。PC机与单片机之间通过通讯接口进行数据通讯,PC机每天定时与各单片机通信一次,以便了解各车间当天的产品数量。PC机程序采用VISUAL BASIC语言,单片机程序采用汇编语言。3.1.

38、1 VISUAL BASIC语言Visual Basic,简称VB。“Visual”指的是采用可视化的开发图形用户界面(GUI)的方法,一般不需要编写大量代码去描述界面元素的外观和位置,而只要把需要的控件拖放到屏幕上的相应位置即可;“Basic”指的是BASIC语言,因为VB是在原有的BASIC语言的基础上发展起来的,至今包含了数百条语句、函数及关键词,其中很多和 Windows GUI 有直接关系。Visual Basic,是Microsoft公司推出的一种Windows应用程序开发工具。是当今世界上使用最广泛的编程语言之一,它也被公认为是编程效率最高的一种编程方法。无论是开发功能强大、性能

39、可靠的商务软件,还是编写能处理实际问题的实用小程序,VB都是最快速、最简便的方法。3.1.2 汇编语言汇编语言是一种符号语言。在汇编语言中,指令用助记符表示,地址、操作数可用标号、符号地址及字符等形式来描述。汇编语言有以下特点: 指令容易理解、记忆,用汇编语言编写的程序可读性好。 汇编语言指令与机器语言指令一一对应,用它编写的程序能最有效地利用存储空间。 指令直接访问CPU的寄存器、存储单元和I/O端口,可以充分发挥CPU的功能,满足实时控制的要求。3.2 PC机的软件设计PC机用于集中管理,主要负责定时向下位机发送呼叫指令,并对接收到的应答信号做近一步的处理,即是将下位机送来的TH0和TL0

40、这16位二进制数转换为十进制,这样就得到生产线当天的产品数量。 PC机程序流程图如图31所示。 图31 PC机程序流程图用Visual Basic语言编写的具体程序见附录(2)的PC机程序。3.3 单片机的软件设计三台单片机用于分散控制,它们分别对三条生产线进行监测计数控制,并将计数的结果发送给上位机。三台单片机分别命名为1,2,3。以单片机1为例。假定各个车间每天的产品数量不会超过65535,则每台单片机可用计数器0的方式1对产品记数。在同PC机通信时,先传送TH0,后传送TL0。从机平时对监控对象进行数据采集,当上位机向下位机发送呼叫指令时,每台下位机都中断接受并判断,地址不相符的下位机中

41、断返回;反之则把本机地址及其状态作为应答信号发送给上位机。单片机程序流程图如图32所示。图32 单片机程序流程图用汇编语言编写的具体程序见附录(2)的单片机程序。3.4 软件抗干扰技术这里研究的软件抗干扰技术是针对工程实践中,程序运行混乱时使程序重入正轨的方法。 指令冗余CPU取指令过程是先取操作码,再取操作数。当PC受干扰出现错误,程序便脱离正常轨道“乱飞”,当乱飞到某双字节指令,若取指令时刻落在操作数上,误将操作数当作操作码,程序将出错。若“飞” 到了三字节指令,出错机率更大。 在关键地方人为插入一些单字节指令,或将有效单字节指令重写称为指令冗余。通常是在双字节指令和三字节指令后插入两个字

42、节以上的NOP。这样即使乱飞程序飞到操作数上,由于空操作指令NOP的存在,避免了后面的指令被当作操作数执行,程序自动纳入正轨。 此外,对系统流向起重要作用的指令如RET、 RETI、LCALL、LJMP、JC等指令之前插入两条NOP,也可将乱飞程序纳入正轨,确保这些重要指令的执行。 拦截技术所谓拦截,是指将乱飞的程序引向指定位置,再进行出错处理。通常用软件陷阱来拦截乱飞的程序。因此先要合理设计陷阱,其次要将陷阱安排在适当的位置。 软件陷阱的设计 当乱飞程序进入非程序区,冗余指令便无法起作用。通过软件陷阱,拦截乱飞程序,将其引向指定位置,再进行出错处理。软件陷阱是指用来将捕获的乱飞程序引向复位入

43、口地址0000H的指令。通常在EPROM中非程序区填入以下指令作为软件陷阱: NOP NOP LJMP 0000H 其机器码为0000020000 陷阱的安排 通常在程序中未使用的EPROM空间填0000020000。最后一条应填入020000,当乱飞程序 落到此区,即可自动入轨。在用户程序区各模块之间的空余单元也可填入陷阱指令。当使用的中断因干扰而开放时,在对应的中断服务程序中设置软件陷阱,能及时捕获错误的中断。如某应用系统虽未用到外部中断1,外部中断1的中断服务程序可为如下形式: NOP NOP RETI 返回指令可用“RETI”,也可用“LJMP 0000H”。如果故障诊断程序与系统自恢

44、复程序的设计可靠、完善,用“LJMP 0000H”作返回指令可直接进入故障诊断程序,尽早地处理故障并恢复程序的运行。 考虑到程序存贮器的容量,软件陷阱一般1K空间有2-3个就可以进行有效拦截。 软件“看门狗”技术 若失控的程序进入“死循环”,通常采用“看门狗”技术使程序脱离“死循环”。通过不断检测程序循环运行时间,若发现程序循环时间超过最大循环运行时间,则认为系统陷入“死循环”,需进行出错处理。 “看门狗”技术可由硬件实现,也可由软件实现。 在工业应用中,严重的干扰有时会破坏中断方式控制字,关闭中断。则系统无法定时“喂狗”,硬件看门狗电路失效。而软件看门狗可有效地解决这类问题。 在实际应用中,

45、采用环形中断监视系统。用定时器T0监视定时器T1,用定时器T1监视主程序,主程序监视定时器T0。采用这种环形结构的软件“看门狗”具有良好的抗干扰性能,大大提高了系统可靠性。对于需经常使用T1定时器进行串口通讯的测控系统,则定时器T1不能进行中断,可改由串口中断进行监控。这种软件“看门狗”监视原理是:在主程序、T0中断服务程序、T1中断服务程序中各设一运行观测变量,假设为MWatch、T0Watch 、T1Watch,主程序每循环一次,MWatch加,同样T0、T1中断服务程序执行一次,T0Watch、 T1Watch加。在T0中断服务程序中通过检测T1Watch的变化情况判定T1运行是否正常,在T1中断服务程序中检测MWatch的变化情况判定主程序是否正常运行,在主程序中通过检测T0Watch的变化情况判别T0是否正常工作。若检测到某观测变量变化不正常,比如应当加1而未加1,则转到出错处理程序作排除故障处理。3.5 本章小结本章分析了课题采用的VISUAL BASIC语言与汇编语言的优点,并且重点阐明了基于硬件系统的软件设计,包括PC机的程序流程图、单片机的程序流程图。最后采用了一些软件抗干扰技术,增加了系统的可靠性。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号