《基于VC++的CAN卡数据采集系统设计.doc》由会员分享,可在线阅读,更多相关《基于VC++的CAN卡数据采集系统设计.doc(51页珍藏版)》请在三一办公上搜索。
1、题 目:基于VC+的CAN卡数据采集系统设计毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日期: 使用授权说明本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本
2、;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。作者签名: 日期: 年 月 日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的
3、规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作者签名:日期: 年 月 日导师签名: 日期: 年 月 日注 意 事 项1.设计(论文)的内容包括:1)封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要(300字左右)、关键词4)外文摘要、关键词 5)目次页(附件不统一编入)6)论文主体部分:引言(或绪论)、正文、结论7)参考文献8)致谢9)附录(对论文支持必要时)2.论文字数要求:理工类设计
4、(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。3.附件包括:任务书、开题报告、外文译文、译文原文(复印件)。4.文字、图表要求:1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画3)毕业论文须用A4单面打印,论文50页以上的双面打印4)图表应绘制于无格子的页面上5)软件工程类课题应有程序清单,并提供电子文档5.装订顺序1)设计(论文)2)附件:按照任务书、开题
5、报告、外文译文、译文原文(复印件)次序装订3)其它基于VC+的CAN卡数据采集系统设计摘 要长期以来,在复杂的工业控制现场领域中,一直是低速率和点对点的通信,无能力支持更高层次的现代化控制系统,为了解决这一难题,于是产生了现场总线控制系统。在现场总线控制系统中,以CAN总线控制系统应用最为广泛。本设计是基VC+ CAN通讯的数据采集,所采用的硬件设备是USBCAN-II智能CAN接口卡,PC可以通过 USB总线连接至CAN网络,构成实验室、工业控制、等CAN网络领域中数据采集。在本设计中,通过对CAN参数初始化,设备的启动、复位、连接等功能的实现, CAN协议的编写,结晶器数据采集系统的设计(
6、其中数据采集系统设计又包含了给定数据曲线和实时数据采集曲线的设计),PID算法,相关按钮的功能设置等来实现控制。关键词:CAN总线;VC+;数据采集;CAN协议;PIDThe CAN Card data acquisition system based on VC + +AbstractA long time, in the complex field of industrial control, communications has been a low rate and point-to-point, without the ability it supported the moderni
7、zation of higher level control system, in order to solve this problem, so fieldbus control system had appeared. Among the field bus control system, CAN bus control system was used more widely. The design is CAN communication data acquisition system based on VC + +, the hardware is USBCAN-II Intellig
8、ent CAN card, PC can be connected to the CAN network, constitute the laboratory, industrial control through the USB bus, it makes up laboratory and industrial Control data acquisition in the CAN field. In the design, the system was control through CAN parameters initialization, start-up, reset, conn
9、ections realization, writing CAN protocol, designing data acquisition system (Data Acquisition System contains a given curve data on real-time data acquisition curve), PID algorithm, setting button function and so on.Key words: CAN bus; control system; data acquisition; CAN protocol; PID目录摘 要IAbstra
10、ctII第一章 引言11.1 研究背景11.2 研究的意义2第二章 现场总线的可行性选择32.1 现场总线的分类32.1.1 基金会现场总线FF32.1.2 Loworks总线42.1.3 HART52.1.4 CAN总线(Controller Area Network)62.2 CAN总线的可行性6第三章 控制系统人机界面设计83.1 频率和振幅的设置83.2 CAN参数按钮的设置93.3 振动参数PID设计103.3.1 PID控制的原理和特点113.3.2 PID参数整定133.3.3 PID算法实现133.3.4 PID参数命令设置15第四章 基于VC+的现场总线CAN设计164.1
11、CAN函数库中的数据结构体定义164.2 CAN接口库函数194.3 CAN的初始化244.4 CAN数据发送设计254.5 CAN设备参数设计264.6 CAN设备连接功能的实现274.7 CAN启动和复位功能的实现284.8 CAN协议设计30第五章 数据采集设计365.1 CAN数据传输系统构成及工作原理365.2 CAN数据采集与数据通讯375.3 曲线设计38总结40参考文献41致谢43第一章 引言1.1 研究背景随着现代信息技术的飞速发展和传统工业改造的逐步实现,由计算机构成的数据采集与处理系统呈现出分散化、网络化、智能化的发展特征,同时系统的规模和复杂性也随之迅速增加。当需要监测
12、的系统规模比较大、监测目标比较分散、检测点比较多时,使用单一总线结构系统往往不能适应这些复杂情况的变化。同时,传统的多点数据采集与处理系统技术复杂性和成本相对较高,施工难度大,并且系统的可靠性和工作效率也是迫切需要解决的问题,因此,基于485总线的通讯模式,由于其通讯波特率低、可靠性差已不能适应工控领域的要求。所以需要建立一种结构简洁、造价低廉、检测点多、检测范围大、抗干扰能力强、智能判别和学习能力高的混合系统。处于信息时代的自动控制系统技术发展日新月异。智能化、数字化、信息化、网络化、微型化、分散化代表着当今工业控制系统发展的主流方向。为了使得测控单元之间的高速、可靠数据通讯是分布的,可以采
13、用现场总线。现场总线是代表工业控制系统顺应这一发展方向的新型技术,标志着计算机技术、信息技术在自动化领域应用的新阶段,为整个工业系统全数字化运行奠定了基础。它是一种在微机化测量控制设备间实现双向串行多节点的数字通信系统,又称为开放式、数字化、多点通信的底层控制网络。它综合了数字通信技术、计算机技术、自动控制技术、网络技术等多种技术手段,从根本上突破了传统的“点对点”式的模拟信号或数字模拟信号控制的局限性,把各个分散的测量控制设备转换为网络节点,以现场总线为纽带,把它们连接成为可以互相通信、沟通信息、共同完成控制任务的网络化控制系统。现场总线的数据通信具有较高的可靠性、实时性和灵活性。在现场总线
14、控制网络中,系统的各种设备通过多个节点连接到一根公共总线上,使得各个节点之间可以实现点对点的对等通讯和系统中信息资源的共享,同时大大减少了系统中的连接线。因此,现场总线为实现大规模智能分布和测控系统提供了理想的解决方案。现场总线技术的开发始于上个世纪80年代,由于微处理器和计算机性能的不断增强和价格的急剧下降,计算机与计算机网络系统得到飞速的发展,信息沟通联络的范围不断扩大。现场总线技术的出现和日益完善给分布式控制系统带来了一场革命,对分布式控制系统的测控单元而言,其意义不亚于网络之于PC机,工控界诸多权威人士预言,工控领域控制在二十一世纪将是现场总线的世界。1.2 研究的意义现场总线是连接智
15、能现场设备和自动化系统的数字式、双向传输、多分支结构的通信网络,它的关键标志是能支持双向、多节点、总线式的全数字通讯。目前使用的现场总线有:AnyBus,CAN ,Profibus,Fieldbus,WorldFIP,P-NET,LonWorks,INTERBUS,DNET,CNET,LIGHTBUS,MODBUS,CC-LINK。工业企业网是企业网中的一个重要分支,是指应用于工业领域的企业网,是工业企业的管理和信息基础设施。它是一种综合的集成技术,涉及到计算机技术、通信技术、多媒体技术、控制技术和现场总线技术等。在功能上,工业企业网的结构可分为信息网和控制网上下两层,信息网位于工业企业网的上
16、层,是企业数据共享和传输的载体;控制网位于工业企业网的下层,与信息网紧密地集成在一起,服从信息网的操作,同时又具有独立性和完整性。在实现上,信息网作为计算机网络,可以由流行的网络技术,如以太网、FDDI、ATM以及相应的广域网技术构建;控制网主要基于现场总线构建。由于现场总线控制系统适应了工业控制系统向分散化、网络化、智能化发展的方向,给自动化系统的最终用户带来更大的实惠和更多的方便,并促使自动化仪表、集散控制系统(DCS)、可编程控制器PLC产品面临体系结构和功能等方面的重大变革,导致工业自动化产品的又一次更新换代,因而现场总线在世界范围内已经成为自控技术的热点,被誉为跨世纪的自控新技术。第
17、二章 现场总线的可行性选择2.1 现场总线的分类现场总线作为自动化领域的通信技术对其开放性可互操作性的要求是显而易见的。制定统一标准是应用的迫切需求,也是发展现场总线这一技术的初衷。但是,由于现场总线已成为自控领域的热点,其开发工作收到了许多国家和企业集团的极大重视,据称现在开发出了一百多种现场总线,主要的种类有:PROFIBUS、LonWorks、HART、CAN、FF现场基金会总线等等,现场总线的标准多种样,长期以来一直没有得到统一。其实,最主要的原因是现场总线的标准的制定涉及国家、企业集团经济利益,这种斗争是非常激烈的。所以,现场总线国际标准中出现的多元化趋势至少在短期内难以到改观。2.
18、1.1 基金会现场总线FF基金会现场总线即Foundation Fieldbus(简称FF),是一种全数字、串行、双向通信协议,用于现场设备如变送器、控制器、执行器等的互连。它是存在于过程控制仪表间的一个局域网(LAN),以实现网内过程控制的分散化。与其他形式的总线相比,基金会现场总线是专门为适应自动化系统,特别是过程自动化系统在功能、环境、技术上的需要而专门设计的。在满足苛刻的使用环境、本质安全、危险场合、多变过程以及总线供电等方面,它都有完善的措施。另外,由于采用了标准功能块以及DDL设备描述技术,它能确保不同厂家的产品有很好的可互操作性和互换性。基金会现场总线是由现场总线基金会提供的一种
19、全新概念通信标准,自从1995年推出后便在过程自动化领域得到广泛支持。这是一种适用于精密复杂智能仪表功能性强的现场总线。现场总线基金会是非盈利的国际组织,它的技术目标不仅仅是信号的传送,而是新一代控制系统的结构,其宗旨是促进产生一个单一的国际现场总线标准。目前已有成员120多个世界上主要的自动化设备供应商,例如:AB、ABB、Bailey、Foxboro、Fisher-Rose-mount、Fuji Electric Group Schneider、Honeywell、Siemens AG、Yamatake、Yokogawa等都是基金会的董事会成员。许厂家都先后生产出符合FF技术标准的产品(H
20、l总线),其中有Fisher-Rose-mount、Smar、Honeywell Intellution、National、In-strument、Yamatake-Honeywell、Yokogawa和北京华控公司等。2.1.2 Loworks总线Lonworks总线是由美国Echelon公司于20世纪90年代初推出的现场总线,它采用ISO/OSI模型的全部7层通讯协议,这是在现场总线中唯一提供全部服务的现场总线,在工业控制系统中可同时应用在Sensor Bus、Device Bus、Field Bus等任何一层总线中。它除了具有上面说提到的现场总线的公共的特点外,另外,在一个Lonwork
21、s控制网络中,智能控制设备(节点)使用同一个通信协议与网络中的其它节点通信。每个节点都包含内置的智能来完成协议的监控功能。一个Lonworks控制网络可以有3个到30000个或更多的节点:传感器功能(温度、压力等)、执行器功能(开关、调节阀、变频驱动等)、操作接口(显示、人机界面等)、控制功能(新风机组、VAV等)。由于不需要像传统控制系统中的中央控制器,Lonworks分布式控制技术显示出很高的系统可靠性和系统响应,并且降低了系统的成本和运行费用。神经元芯片完成节点的事件处理,并通过多种介质把处理结果传递给网络上的其它节点。同时还采用面向对象的设计方法,通过网络变量把网络通信设计简化为参数设
22、置。支持双绞线、同轴电缆、光缆和红外线等多种通信介质和多种拓扑结构,并开发了本质安全防爆产品,被誉为通用控制网络。Lonworks的核心是神经元芯片(Neuron Chip),使用CMOS CLSI技术的神经元芯片使实现低成本的控制网络成为可能。神经元芯片是高度集成的内部含有3个8位的CPU:第一个CPU为介质访问控制处理器,处理LonTalk协议的第一层和第二层;Neuron芯片的编程语言为Neuron C,它是从ANSI C中派生出来的,并对ANSI C进行了删减和增补。Neuron芯片可以通过5个通信管脚与网络上的其它节点交换信息,也可以通过11个应用管脚与现场的传感器和执行器交换信息。
23、11个应用管脚具有34种应用操作模式,可以在不同的配置下为外部提供灵活的接口和芯片内部的计时器应用。第二个CPU为网络处理器,它实现LonTalk协议的第三层至第六层;第三个CPU为应用处理器,实现LonTalk协议的第七层,执行用户编写的代码及用户代码所调用的操作系统服务。神经元芯片实现了完整的Lonworks的LonTalk通信协议。2.1.3 HARTHART是Highway Addressable Remote Transdueer(可寻址远程传感器高速公路)的缩写。1986年由美国ROSEMOUNT公司开发的一套过渡性临时通讯协议。但目前受到了广泛承认,已成为事实上的国际标准。199
24、3年成立了HART通信基金会(HCF),世界上有70多个国家参加。1990年成立了用户集团(HUG),到1993年,己有70多个公司100多种系列产品(包括变送器、接口、安全栅、控制器和许多其他产品)投入市场。HART协议以国际标准化组织(ISO)开放性系统互连模型(ISO)为参照,使用ISO的1、2、7三层,即物理层、数据链路层、应用层。物理层采用基于Bell2O2通信标准的FSK技术,所以可以通过租用电话线进行通信。HART协议使用FSK技术在4-2mA过程测量模拟信号上叠加一个频率信号。逻辑1为1200Hz,逻辑0为2200Hz,波特率为1200bps。它成功地使模拟和数字双向信号能同时
25、进行而且互不干扰。因此在与智能化仪表通信时,还可使用模拟仪表、记录仪及模拟控制。在不对现场仪表进行改造的情况下,逐步实现数字性能(包括数字过程变量),是一种理想的方案。这是一个由模拟系统向数字系统过渡的协议。在应用层规定了3类使命,第一类是通用命令,这是所有设备都能理解、执行的命令;第二类是一般行为命令,它所提供的功能可以在许多现场设备中实现;第三类为特殊设备命令,以便在某些设备中实现特殊功能,这类命令可以允许开发此类设备的公司所独有。此外它还为用户提供统一的设备描述语言DDL。HART支持点对点、主从应答方式和多点广播方式。直接通信距离:有屏蔽双绞线单台设备3000m,而多台设备互相距离15
26、00m。只使用一个电源时,能连结15个智能化设备。LONWORKS的通信协议LONTALK协议遵循ISO/OSI参考模型,提供了OSI所定义的全部7层服务。是在现场总线中唯一提供全部服务的现场总线。LONWORKS的核心是Neuron(神经元)芯片,内含3个8位的CPU:第一个CPU为介CAN 是由德国公司在 80 年代初为了解决现代汽Bosch车中众多的传感器和执行装置之间的数据通信而开发的一种串行通信协议。2.1.4 CAN总线(Controller Area Network)CAN最初出现在80年代末的汽车工业中,由德国Bosch公司最先提出。当时由于消费者对于汽车功能的要求越来越多,而
27、这些功能的实现大多是基于电子操作的,这就使得电子装置之间的通讯越来越复杂。同时意味着需妥更多的连接信号线。提出以N总线的最初动机就是为了解决现代汽车中庞大的电子控制装置之间的通讯,减少不断增加的信号线。于是他们设计了一个单一的网络总线,所有的外围器件可以被挂接在该总线上。1993年CAN己成为国际标准ISO21898(高速应用)和ISO21519。低速应用CAN是一种多主站方式的串行通讯。总线基本设计规范要求有高的位速率高抗电磁干扰性,而且能够检测产生的任何错误。当信号传输距离达到10Km时CAN仍可提供高达50Kbit/S的数据传输速率。由于CAN总线具有很高的实时性能,因此CAN己经在汽车
28、工业、航空工业、工业控制安全防护等领域中得到了广泛应用。2.2 CAN总线的可行性CAN(ControllerArea Network)总线是现场总线的一种,它采用双线串行通信方式工作,检错能力强,可在高噪声干扰环境中使用最大通信速率1Mbps(最远通信距离 40m)。最远通信距离可达10km (最大通信速率 5Kbps)。CAN具有优先权和仲裁功能,多个控制模块通过CAN 控制器挂到CAN2bus 上,形成多主机局部网络。由于采用了许多新技术及独特的设计,CAN总线与一般的通讯总线相比,它的数据通讯具有突出的可靠性、实时性和灵活性。其特点可概括如下:第一CAN为多主方式工作,网络上任一节点均
29、可在任一时刻主动向网络上其他节点发送信息,而不分主从。第二,在报文标识符上,CAN上的节点分成不同的优先级,可满足不同的实时需要,优先级高的数据最多可在134s内得到传输。第三,CAN采用非破坏总线仲裁技术。当多个节点同时向总线发送信息发生冲突时,优先级较低的节点会主动的退出发送,而最高优先级的节点可不受影响的继续传输数据,从而大大节省了总线冲突仲裁时间。尤其是在网络负载很重的情况下,也不会出现网络瘫痪的情况(以太网则可能)。第四,CAN节点只需要通过对报文的标识符滤波即可实现点对点、一点对多点及全局广播等几种方式传送接收数据。第五,CAN的直接通信距离最远可达10km(速率5kbps以下);
30、通信速率最高可达1Mbps(此时通信距离最长为40m)。第六,CAN上的节点数取决于总线驱动电路,目前可达110个。在标准帧报文标识符有11位,而在扩展帧的报文标识符(29位)的个数几乎不受限制。报文采用短帧结构,传输时间短,受干扰概率低,保证了数据出错率极低。第七,CAN的每帧信息都有CRC校验及其他检错措施,具有极好的检错效果。第八,CAN通信介质可为双绞线、同轴电缆或光纤,选择灵活。第九,CAN节点在错误严重的情况下具有自动关闭输出功能,以使总线上其他节点的操作不受影响,有自动退出总线的功能。所以其可靠性和实时性远高于普通的通信技术。如 RS2485,BITBUS等。CAN及控制器局域网
31、络,CAN是到目前为止唯一有国际标准的现场总线CAN,具有十分优越的特点,低成本、高性能、高可靠性及独特的设计,CAN越来越受到人们的重视,因此,探讨一种实用的CAN 网络应用软件设计是一个有意义的研究课题。第三章 控制系统人机界面设计人机界面是指人和机在信息交换和功能上接触或互相影响的领域或称界面所说人机结合面,信息交换,功能接触或互相影响,指人和机器的硬接触和软接触,此结合面不仅包括点线面的直接接触,还包括远距离的信息传递与控制的作用空间。人机结合面是人机系统中的中心环节,主要由安全工程学的分支学科安全人机工程学去研究和提出解决的依据,并过安全工程设备工程学,安全管理工程学以及安全系统工程
32、学去研究具体的解决方法手段措施。在本设计中,人机界面是在VC环境下利用Buttong按钮和Edit编辑框设计而成,如图3.1所示。图3.1人机控制界面3.1 频率和振幅的设置 当控制器接收到监控计算机发送的波形参数设定信息后,发送响应命令,并准备接收控制器参数设定信息,见表3.1。表3.1数据信息:2个字节的波形的参数字节顺序位顺序内容说明第1字节幅值参数参数带1位小数,则放大10倍发送第2字节频率参数参数带1位小数,则放大10倍发送频率,振幅的设计分为两部分,一是对给定曲线的频率、振幅进行调节;二是对数据实时采集曲线的频率、振幅的显示。3.2 CAN参数按钮的设置CAN参数按钮设置是对CAN
33、的参数的隐藏和展开,目的是为了设计一个典型用户控制界面。代码如下:void CBiYeSheJiDlg:OnOnkuozhan() CString str; if(GetDlgItemText(IDC_kuozhan,str),str=隐藏参数设置);else SetDlgItemText(IDC_kuozhan,隐藏参数设置GetWindowRect(&rectSeparator); rectSmall.top =rectLarge.top; rectSmall.bottom = rectLarge.bottom; rectSmall.left=rectLarge.left; rectSma
34、ll.right =rectSeparator.right; if(str=隐藏参数设置) SetWindowPos(NULL,0,0,rectSmall.Width(),rectSmall.Height(),SWP_NOMOVE|SWP_NOZORDER); else SetWindowPos(NULL,0,0,rectLarge.Width(),rectLarge.Height(),SWP_NOMOVE|SWP_NOZORDER); 它利用了SetWindowPos函数,该函数改变一个子窗口,弹出式窗口式顶层窗口的尺寸,位置和Z序。子窗口,弹出式窗口,及顶层窗口根据它们在屏幕上出现的顺序排
35、序、顶层窗口设置的级别最高,并且被设置为Z序的第一个窗口。3.3 振动参数PID设计目前工业自动化水平已成为衡量各行各业现代化水平的一个重要标志。同时,控制理论的发展也经历了古典控制理论、现代控制理论和智能控制理论三个阶段。智能 控制的典型实例是模糊全自动洗衣机等。自动控制系统可分为开环控制系统和闭环控制系统。一个控制系统包括控制器、传感器、变送器、执行机构、输入输出接 口。控制器的输出经过输出接口、执行机构,加到被控系统上;控制系统的被控量,经过传感器,变送器,通过输入接口送到控制器。不同的控制系统,其传感器、 变送器、执行机构是不一样的。比如压力控制系统要采用压力传感器。电加热控制系统的传
36、感器是温度传感器。目前,PID控制及其控制器或智能PID控制器 (仪表)已经很多,产品已在工程实际中得到了广泛的应用,有各种各样的PID控制器产品,各大公司均开发了具有PID参数自整定功能的智能调节器 (intelligent regulator),其中PID控制器参数的自动调整是通过智能化调整或自校正、自适应算法来实现。有利用PID控制实现的压力、温度、流量、液位控制 器,能实现PID控制功能的可编程控制器(PLC),还有可实现PID控制的PC系统等等。 可编程控制器(PLC) 是利用其闭环控制模块来实现PID控制,而可编程控制器(PLC)可以直接与ControlNet相连,如Rockwel
37、l的PLC-5等。还有可以实现 PID控制功能的控制器,如Rockwell 的Logix产品系列,它可以直接与ControlNet相连,利用网络来实现其远程控制功能。3.3.1 PID控制的原理和特点 过程控制中,按偏差的比例(P)、积分(I)和微分(D)进行控制的PID控制器(亦称PID调节器)是应用最为广泛的一种自动控制器。它具有原理简单,易于实现,适用面广,控制参数相互独立,参数的选定比较简单等优点;而且在理论上可以证明,对于过程控制的典型对象“一阶滞后纯滞后”与“二阶滞后纯滞后”的控制对象,PID控制器是一种最优控制。PID调节规律是连续系统动态品质校正的一种有效方法,它的参数整定方式
38、简便,结构改变灵活(PI、PD)。PID控制器问世至今已有近70年历史,它以其结构简单、稳定性好、工作可靠、调整方便而成为工业控制的主要技术之一。当被控对象的结构和参数不能完全掌握,或得不到精确的数学模型时,控制理论的 其它技术难以采用时,系统控制器的结构和参数必须依靠经验和现场调试来确定,这时应用PID控制技术最为方便。即当我们不完全了解一个系统和被控对象,或不能通过有效的测量手段来获得系统参数时,最适合用PID控制技术。PID控制,实际中也有PI和PD控制。PID控制器就是根据系统的误差,利用比例、 积分、微分计算出控制量进行控制的。 1.比例(P)控制 比例控制是一种最简单的控制方式。就
39、是对偏差进行控制,偏差一旦产生,控制器立即就发生作用即调节控制输出,使被控量朝着减小偏差的方向变化,偏差减小的速度取决于比例系数Kp, Kp越大偏差减小的越快,但是很容易引起振荡,尤其是在迟滞环节比较大的情况下,Kp减小,发生振荡的可能性减小但是调节速度变慢。但单纯的比例控制存在静差不能消除的缺点。这里就需要积分控制。2.积分(I)控制 在积分控制中,控制器的输出与输入误差信号的积分成正比关系。对一个自动控制系统,如果在进入稳态后存在稳态误差,则称这个控制系统是有稳态误差的或简称有差系统(System with Steady-state Error)。为了消除稳态误差,在控制器中必须引入“积分
40、项”。积分项对误差取决于时间的积分,随着时间的增加,积分项会增大。这样,即便误差很小,积分项也会随着时间的增加而加大,它推动控制器的输出增大使稳态误差进一步减小,直到等于零。因此,比例+积分(PI)控制器,可以使系统在进入稳态后无稳态误差。 实质上就是对偏差累积进行控制,直至偏差为零。积分控制作用始终施加指向给定值的作用力,有利于消除静差,其效果不仅与偏差大小有关,而且还与偏差持续的时间有关。简单来说就是把偏差积累起来,一起算总帐。 3. 微分(D)控制 在微分控制中,控制器的输出与输入误差信号的微分(即误差的变化率)成正比关系。 自动控制系统在克服误差的调节过程中可能会出现振荡甚至失稳。其原
41、因是由于存在有较大惯性组件(环节)或有滞后(delay)组件,具有抑制误差的作用, 其变化总是落后于误差的变化。解决的办法是使抑制误差的作用的变化“超前”,即在误差接近零时,抑制误差的作用就应该是零。这就是说,在控制器中仅引入 “比例”项往往是不够的,比例项的作用仅是放大误差的幅值,而目前需要增加的是“微分项”,它能预测误差变化的趋势,这样,具有比例+微分的控制器,就能 够提前使抑制误差的控制作用等于零,甚至为负值,从而避免了被控量的严重超调。所以对有较大惯性或滞后的被控对象,比例+微分(PD)控制器能改善系统在 调节过程中的动态特性。也就是说它能敏感出误差的变化趋势,可在误差信号出现之前就起
42、到修正误差的作用,有利于提高输出响应的快速性,减小被控量的超调和增加系统的稳定性。但微分作用很容易放大高频噪声,降低系统的信噪比,从而使系统抑制干扰的能力下降。3.3.2 PID参数整定PID控制器的参数整定是控制系统设计的核心内容。它是根据被 控过程的特性确定PID控制器的比例系数、积分时间和微分时间的大小。PID控制器参数整定的方法很多,概括起来有两大类:一是理论计算整定法。它主要是 依据系统的数学模型,经过理论计算确定控制器参数。这种方法所得到的计算数据未必可以直接用,还必须通过工程实际进行调整和修改。二是工程整定方法,它主 要依赖工程经验,直接在控制系统的试验中进行,且方法简单、易于掌
43、握,在工程实际中被广泛采用。PID控制器参数的工程整定方法,主要有临界比例法、反应 曲线法和衰减法。两种方法各有其特点,其共同点都是通过试验,然后按照工程经验公式对控制器参数进行整定。但无论采用哪一种方法所得到的控制器参数,都需 要在实际运行中进行最后调整与完善。现在一般采用的是临界比例法。利用该方法进行PID控制器参数的整定步骤如下:(1)首先预选择一个足够短的采样周期让系统工作;(2)仅加入比例控制环节,直到系统对输入的阶跃响应出现临界振荡, 记下这时的比例放大系数和临界振荡周期;(3)在一定的控制度下通过公式计算得到PID控制器的参数。 3.3.3 PID算法实现控制点目前包含三种比较简
44、单的PID制算法,分别是:增量式算法,位置式算法,微分先行。增量式算法,可以选择的功能有: 1.滤波的选择可以对输入加一个前置滤波器,使得进入控制算法的给定值不突变,而是有一定惯性延迟的缓变量。 2.系统的动态过程加速在增量式算法中,比例项与积分项的符号有以下关系:如果被控量继续偏离给定值,则这两项符号相同,而当被控量向给定值方向变化时,则这两项的符号相反。 由于这一性质,当被控量接近给定值的时候,反号的比例作用阻碍了积分作用,因而避免了积分超调以及随之带来的振荡,这显然是有利于控制的。但如果被控量远未接近给定值,仅刚开始向给定值变化时,由于比例和积分反向,将会减慢控制过程。3. PID增量算
45、法的饱和作用及其抑制 在PID增量算法中,由于执行元件本身是机械或物理的积分储存单元,如果给定值发生突变时,由算法的比例部分和微分部分计算出的控制增量可能比较大,如果该值超过了执行元件所允许的最大限度,那么实际上执行的控制增量将时受到限制时的值,多余的部分将丢失,将使系统的动态过程变长,因此,需要采取一定的措施改善这种情况。纠正这种缺陷的方法是采用积累补偿法,当超出执行机构的执行能力时,将其多余部分积累起来,而一旦可能时,再补充执行。 对于位置式算法,可以选择的功能有:滤波、饱和作用抑制:微分先行PID算法:当控制系统的给定值发生阶跃时,微分作用将导致输出值大幅度变化,这样不利于生产的稳定操作
46、。所以对三者进行比较本,本设计选用增量式算法,增量型PID算法的程序设计,增量型PID算式为式51设所以有 (31)增量型PID运算子程序流程图3.2所示。图3.2增量型PID运算子程序流程图正作用时,E(k)=M(k)-P(k),反作用时则E(k)=R(k)-M(k)程序的其他部分不变。3.3.4 PID参数命令设置当控制器接收到上位机发送的PID参数后,设置相应参数,设置完成后发成功命令响应。见表3.1。表3.2数据信息:PID参数字节顺序位顺序内容说明第1,2字节P参数定点小数,第一字节整数部分,第二字节小数第3,4字节I参数定点小数,第一字节整数部分,第二字节小数第5,6字节D参数定点小数,第一字节整数部分,第二字节小数该数据信息为6字节的数据信息。主要体现PID参数在数据场中的字节顺序。第四章 基于VC+的现场总线CAN设计4.1 CAN函数库中的数据结构体定义结构体就是一个可以包含不同数据类型的一个结构