(检测技术与自动化装置专业论文)基于fpga的plc扩展总线的研究.pdf_第1页
(检测技术与自动化装置专业论文)基于fpga的plc扩展总线的研究.pdf_第2页
(检测技术与自动化装置专业论文)基于fpga的plc扩展总线的研究.pdf_第3页
(检测技术与自动化装置专业论文)基于fpga的plc扩展总线的研究.pdf_第4页
(检测技术与自动化装置专业论文)基于fpga的plc扩展总线的研究.pdf_第5页
已阅读5页,还剩55页未读 继续免费阅读

(检测技术与自动化装置专业论文)基于fpga的plc扩展总线的研究.pdf.pdf 免费下载

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

文档简介

摘要 摘要 在自动化控制领域,p l c 是一种重要的控制设备。随着技术的不断发展,工业 控制对p l c 的性能要求越来越高。因此,设计出一个连接p l c 本体c p u 与扩展模 块的实时、可靠、稳定的通信系统,显得尤为重要。本文重点研究了基于f p g a 的 p l c 扩展总线传输系统,提出了设计方案并进行了设计与验证。 论文首先给出了p l c 扩展总线设计的标准,并对几种总线技术进行了比较, 以得出设计自定义的扩展总线的必要性。然后,根据标准,在扩展总线的方案选择、 芯片选择、结构设计等方面进行了详细的对比分析,最后给出了扩展总线的物理层 与协议,并进行设计与实现。 该扩展总线是为满足p l c 特定应用需求,自己定义物理层和协议而设计的主 从式、一点对多点的、轮询访问的总线系统。利用这一设计的网络,一个p l c 本体 c p u 模块连接并控制多个i o 模块,极大的扩展p l c 的控制能力与性能。 试验结果表明,该总线具有成本低、速率高、可靠性好、易于扩展等优点,对 增强p l c 的性能和市场竞争力,具有重要的意义。 关键字:p l c ;扩展总线;f p g a a b s t r a ( 玎 a bs t r a c t i nt h ea u t o m a t i o nf i e l d ,p l ci s i m p o r t a n te q u i p m e n tf o rc o n t r 0 1 w i t ht h eg r e a t l y d e v e l o p m e n to ft e c h n o l o g y , t h ep l c u s e di ni n d u s t r i a lr e q u i r e sb e t t e rp e r f o r m a n c e a sa r e s u l t ,t h ed e s i g nap l cc o m m u n i c a t i o ns y s t e mw h i c hi sc o n n e c tt h eb o d yc p um o d u l e t oe x t e n d sm o d u l et ok e e pt h es i g n a lc o m m u n i c a t i o nt ob er e a l - t i m e ,r e l i a b l ea n ds t a b l ei s p a r t i c u l a r l yi m p o r t a n t t h i sa r t i c l ef o c u s e so nt h e p l ce x p a n s i o nb u st r a n s m i s s i o n s y s t e mb a s e do nf p g a ,g i v e st h ed e s i g ns o l u t i o na s s n dt h e nv e r i f i e si t f i r s to fa l l ,t h et h e s i sg a v et h es t a n d a r do fd e s i g n i n gt h ep l ce x p a n s i o nb u s ,a n d c o m p a r e dt os e v e r a lb u st e c h n o l o g i e s t oc o m et ot h ee s s e n t i a l i t yo fd e s i g n i n gt h e e x p a n s i o nb u sb yo u r s e l f t h e n ,a c c o r d i n g t ot h es t a n d a r d s ,w ed i dad e t a i l e d c o m p a r a t i v ea n a l y s i s f o r t h ee x p a n s i o nb u si np r o g r a m ss o l u t i o n , c h i ps e l e c t i o n , s t r u c t u r a ld e s i g n ,a n ds oo n , g a v et h ee x p a n s i o nb u sw i t ht h ep h y s i c a ll a y e ra n dp r o t o c o l , a n d d i dt h ed e s i g na n de x p e r i m e n t a t i o n t h ee x p a n s i o nb u s ,w h i c hh a st h ed e f i n i t i o no fo w np h y s i c a ll a y e ra n dp r o t o c o l ,i s t om e e tt h es p e c i f i ca p p l i c a t i o no fp l c i ti sam a s t e r - s l a v e ,p o i n t t o m u l t i p o i n t ,v i s i t i n g t h ep o l l i n gs y s t e mb u s w i t ht h en e t w o r k , ab o d ym o d u l eo fp l cc o u l dc o n t r o lan u m b e r o fi om o d u l e s i ti sag r e a te x p a n s i o nf o r t h ep l c sc o n t r o la n dp e r f o r m a n c e t h er e s u l t ss h o wt h a tt h ee x p a n s i o nb u sh a st h ea d v a n t a g e so fl o w - c o s t ,h i g h - s p e e d , r e l i a b i l i t ya n de t c i ti so fg r e a ts i g n i f i c a n c ei ne n h a n c i n gt h ep l c sp e r f o r m a n c ea n d m a r k e tc o m p e t i t i v e n e s s k e y w o r d s :p l c ,e x p a n s i o nb u s ,f p g a i i 学位论文版权使用授权书 本人完全了解北京信息科技大学关于收集、保存、使用学位论文的 规定,同意如下各项内容:按照学校要求提交学位论文的e p , 神j 本和电子 版本;学校有权保存学位论文的印刷本和电子版,并采用影印、缩印、 扫描、数字化或其它手段保存论文;学校有权提供目录检索以及提供本 学位论文全文或者部分的阅览服务;学校有权按有关规定向中国科学技 术信息研究所等国家有关部门或者机构送交论文的复印件和电子版;在 不以赢利为目的的前提下,学校可以适当复制论文的部分或全部内容用 于学术活动。 学位论文作者签名:考名皂 栌月侈日 经指导教师同意,本学位论文属于保密,在年解密后适用本授 权书。( 注:论文属公开论文的,作者及导师本处不签字) 指导教师签名:学位论文作者签名: 年月 日年 月日 硕士学位论文原创性声明 本人郑重声明:所呈交的论文题目为基于f p g a 的p l c 扩展总线的研 究学位论文,是本人在导师指导下,进行研究工作所取得的成果。尽我 所知,除文中已经注明引用的内容外,本学位论文的研究成果不包含任 何他人创作的、已公开发表或者没有公开发表的作品的内容。对本论文 所涉及的研究工作做出贡献的其他个人和集体,均已在文中以明确方式 标明。本学位论文原创性声明的法律责任由本人承担。 作者签字:京使 砂舜月j 日 第1 章引言 1 1 p l c 简介 1 1 1p l c 的发展 第1 章引言 可编程序控制器的英文为p r o g r a m m a b l ec o n t r o l l e r ,在二十实际七十至八十年 代一直简称为p c t l l 。由于到9 0 年代,个人计算机发展起来,也简称为p c ;加之可 编程序的概念所涵盖的范围太大,所以美国a b 公司首次将可编程序控制器定名为 可编程序逻辑控制器( p l c ,p r o g r a m m a b l el o g i cc o n t r o l l e r ) ,为了方便,仍简称 p l c 为可编程序控制器。有人把可编程序控制器组成的系统称为p c s 可编程序控制 系统,强调可编程序控制器生产厂商向人们提供的已是完整的系统了。 p l c 的定义有许多种。国际电工委员会( i e c ) 对p l c 的定义是:可编程控制器 是一种数字运算操作的电子系统,专为在工业环境下应用而设计。它采用可编程序的 存贮器,用来在其内部存贮执行逻辑运算、顺序控制、定时、计数和算术运算等操作 的指令,并通过数字的、模拟的输入和输出,控制各种类型的机械或生产过程。可编 程序控制器及其有关设备,都应按易于与工业控制系统形成一个整体,易于扩充其功 能的原则设计。 上世纪8 0 年代至9 0 年代中期,是p l c 发展最快的时期,年增长率一直保持为 3 0 - 4 0 。在这时期,p l c 在处理模拟量能力、数字运算能力、人机接口能力和网络 能力得到大幅度提高,p l c 逐渐进入过程控制领域,在某些应用上取代了在过程控制 领域处于统治地位的d c s 系统。 p l c 具有通用性强、使用方便、适应面广、可靠性高、抗干扰能力强、编程简 单等特点。p l c 在工业自动化控制特别是顺序控制中的地位,在可预见的将来,是 无法取代的。 1 1 2p l c 的构成 从结构上分,p l c 分为固定式和组合式( 模块式) 两种。固定式p l c 包括c p u 板、i o 板、显示面板、内存块、电源等,这些元素组合成一个不可拆卸的整体。 模块式p l c 包括c p u 模块、v o 模块、内存、电源模块、底板或机架,这些模块可 以按照一定规则组合配置。 1 第1 苹引言 c p u 是p l c 的核心,起神经中枢的作用,每套p l c 至少有一个c p u ,它按p l c 的 系统程序赋予的功能接收并存贮用户程序和数据,用扫描的方式采集由现场输入装置 送来的状态或数据,并存入规定的寄存器中,同时,诊断电源和p l c 内部电路的工作 状态和编程过程中的语法错误等。进入运行后,从用户程序存贮器中逐条读取指令, 经分析后再按指令规定的任务产生相应的控制信号,去指挥有关的控制电路。 c p u 主要由运算器、控制器、寄存器及实现它们之间联系的数据、控制及状态 总线构成,c p u 单元还包括外围芯片、总线接口及有关电路。内存主要用于存储程序 及数据,是p l c 不可缺少的组成单元。 c p u 的控制器控制c p u 工作,由它读取指令、解释指令及执行指令。但工作节 奏由震荡信号控制。运算器用于进行数字或逻辑运算,在控制器指挥下工作。寄存器 参与运算,并存储运算的中间结果,它也是在控制器指挥下工作。 c p u 速度和内存容量是p l c 的重要参数,它们决定着p l c 的工作速度,i o 数量及软件容量等,因此限制着控制规模。 p l c 与电气回路的接口,是通过输入输出部分( i o ) 完成的。i o 模块集成了p l c 的i o 电路,其输入暂存器反映输入信号状态,输出点反映输出锁存器状态。输入模 块将电信号变换成数字信号进入p l c 系统,输出模块相反。i o 分为开关量输入( d i ) , 开关量输出( d o ) ,模拟量输入( a i ) ,模拟量输出( a o ) 等模块。 开关量是指只有开和关( 或1 和0 ) 两种状态的信号,模拟量是指连续变化的量。 常用的i o 分类如下: 开关量:按电压水平分,有2 2 0 v a c 、11 0 v a c 、2 4 v d c ,按隔离方式分,有继 电器隔离和晶体管隔离。 模拟量:按信号类型分,有电流型( 4 2 0 m a ,0 2 0 m a ) 、电压型( o 1 0 v ,0 5 v , 1 0 1 0 v ) 等,按精度分,有1 2 b i t ,1 4 b i t ,1 6 b i t 等。 除了上述通用i o 外,还有特殊i o 模块,如热电阻、热电偶、脉冲等模块。 按i o 点数确定模块规格及数量,i o 模块可多可少,但其最大数受c p u 所能 管理的基本配置的能力,即受最大的底板或机架槽数限制。 1 1 3p l c 的通信联网 依靠先进的工业网络技术可以迅速有效地收集、传送生产和管理数据。因此, 网络在自动化系统集成工程中的重要性越来越显著,甚至有人提出了“网络就是控制 器 1 2 1 的观点说法。 p l c 具有通信联网的功能,它使p l c 本体c p u 与i o 模块之间、p l c 与p l c 之间、 p l c 与上位计算机以及其他智能设备之间能够交换信息,形成一个统一的整体,实现 2 第1 章引言 分散集中控制。多数p l c 具有r s 2 3 2 接口,还有一些内置有支持各自通信协议的接口。 p l c 的通信,还未实现互操作性,i e c 规定了多种现场总线标准,p l c 各厂家均 有采用。 对于个自动化工程( 特别是中大规模控制系统) 来讲,选择网络非常重要的。 首先,网络必须是开放的,以方便不同设备的集成及未来系统规模的扩展;其次, 针对不同网络层次的传输性能要求,选择网络的形式,这必须在较深入地了解该网 络标准的协议、机制的前提下进行;再次,综合考虑系统成本、设备兼容性、现场 环境适用性等具体问题,确定不同层次所使用的网络标准。 本文主要研究p l c 本体c p u 与i o 模块之间的数据通信。利用这一设计的网 络,使得一个p l c 本体c p u 模块连接并控制多个i o 模块,极大的扩展了p l c 的 控制能力,降低了单位点数的成本。 1 2 课题的背景与意义 1 2 1 课题的背景 本文课题来源于北京凯迪恩自动化技术有限公司的预研项目,是该公司中型 p l c 产品预研项目中的一个重要课题。 1 2 2 课题的研究意义 由于p l c 人机联系处理模拟能力和网络方面功能的进步,挤占了一部分d c s 的市 场( 过程控制) 并逐渐垄断了污水处理等行业。目前全世界有2 0 0 多厂家生产3 0 0 多品 种p l c 产品,主要应用在汽车、粮食加工、化学制药、金属矿山、纸浆造纸等行业。 国内p l c 生产厂约三十家,但没有形成颇具规模的生产能力和名牌产品,还 有一部分是以仿制、来件组装或“贴牌”方式生产,可以说p l c 在我国未形成制造 产业。目前国内p l c 的市场份额大部分被西门子、施耐德、欧姆龙等国外大企业所 占有【3 】。大力发展国产p l c ,使国产p l c 在自动化领域有着重要的市场份额,具有 很重要经济意义和战略意义。 目前,凯迪恩公司的k 3 系列小型一体化国产p l c ,得到了市场的广泛认可, 在p l c 市场竞争中占有了一席之地。然而,作为个不断发展的自动化行业,必须 不断的改进已有技术,不断推出新技术和新产品,才能保证企业的不断发展。 公司现在的扩展总线采用的c a n 总线技术,由于c a n 总线的速率上限是 1 m b t 4 1 ,极大的限制了数据传输速率;为了提高总线传输速率,使得扩展总线具有 3 第1 章引言 更高的实时性、能连接更多的模块,设计出一种新的扩展总线显得尤为必要。 本文主要研究p l c 本体c p u 与i o 模块之间的数据通信。利用这一设计的网 络,使得一个p l c 本体c p u 模块连接并控制多个i o 模块,极大的扩展p l c 的控 制能力,降低单位点数的成本。 1 3 本文所做的主要工作 1 3 1 研究的主要问题 本课题最终要解决的问题是找到一个速度、可靠性、价格最优化的扩展总线技 术并实现。那么,为了达到这样的目的,我们需要研究以下几个方面的问题: 一、选择扩展总线方案 首先,我们对目前已经存在的、优势显而易见的、有过一定应用的总线技术从 各个角度进行全方面的比较,包括通信总线技术的冗余纠错能力,抗干扰能力,总 线速率,稳定性,响应的延时程度等等,都是决定我们选择哪种总线技术来进行重 点研究的首要标准。 在研究这一问题时,我们先是研究、总结出了适合于p l c 扩展总线技术的一 般标准;接着又探讨出了p l c 扩展总线的具体定义;然后我们将那些己经应用于或 可以应用的总线技术进行了周详的对比;最后挑选出我们希望得到的满足要求的高 速通信的总线技术。 二、掌握扩展总线的协议 然后,当我们通过查阅大量的相关资料,按照一定的比较策略,对从相应渠道 获得的一些精准可靠的数字进行了反反复复的研究分析,最终找到一种最为适合我 们的应用需求,能够满足p l c 特定要求的高速通信的总线技术后,我们对支持该技 术的相关协议,以及应用该协议研发产品的相关资料等,进行了认真的学习、研究, 了解、掌握了该协议的层次体系结构,数据包的识别、错误校验、恢复机制,如何 判断并处理链路中失效的模块,如何保证高可靠性等。 三、设计代码,仿真研究 其次,当我们对该通信总线技术的相关协议有了一定的了解后,再根据我们的 应用需求,对要开发的代码进行模块的划分,对各模块的功能,输入输出端口,模 块间的相互关联信号等进行了尽可能全面的定义。当然,随着日后代码开发编写地 不断深入,这部分内容难免会进行相应的改动。接着,我们就对该高速通信总线技 术的最核心模块一一发送和接收功能模块由简单到复杂的过程进行代码的开发工 作,当最基本的功能可以实现时,我们在此基础上再加入控制字符,c r c 校验【5 1 、 4 第1 牵引言 错误恢复的机制等等。然后,我们利用软件的测试工具,查看代码综合、实现后的 仿真波形,以此来判断代码编写的正确与否,不断进行完善。 四、硬件设备验证 最后,我们将开发好的h d l 代码下载到e p m 5 7 0 开发板上,c 代码下载到周 立功的e a s y a r m 开发板上,通过示波器、逻辑分析仪等工具,验证代码的正确性 和稳定性。 1 3 2 关键技术与难点 随着微电子技术和计算机技术的发展,总线技术也在不断地发展和完善,从而 使得能够满足p l c 一点对多点数据传输的总线技术也是种类繁多,各具特色。我们 如何在众多的总线中选择一种性价比最高,能够在最大程度上满足我们需求的总线 技术呢? 我们应该以怎样的标准来评判和筛选这些已经存在的各种各样的总线技 术? 这是我们首当其冲需要解决的问题。 其次,当我们选择好一种总线技术准备进行研究时,我们在软件方面又该选择 何种开发、测试工具,对代码进行编写和验证呢? 在开发代码的过程中,我们该怎 样进行模块的划分,以怎样的顺序着手编写代码当代码编写完成并进行软件仿真、 测试后,我们又该选择何种硬件工具,何种开发板将代码下载并得以实现呢? 如何 使得我们的测试、实现环境和实际情况最为接近呢? 以上这些都是我们在进行本次毕业设计时,应该想到而且也会遇到的问题,其 中总线的选择是最根本的问题,代码开发过程中模块的划分、软件的仿真、测试是 最难点的问题。我们只有将这些问题都逐一解决,才能保证此次毕业设计的顺利完 成。 1 3 3 解决途径与方法 对于第一个问题,我们收集了大量的数据和信息,力求确保这些参考文献真实 可靠的前提下,我们以一定的标准来评判哪些总线技术具有最优的性能价格比。 根据一些已经存在的总线标准和我们的需求,制定了一个在p l c 扩展总线选 择的一般原则,即该总线协议所采用芯片是否价格便宜、可规模化生产,其实时性、 容错性、可维护性是否符合要求等等。 接着,我们就根据上面给出的p l c 扩展总线选择的一般原则,以及公司p l c 应用所特定的数据量的大小、传输速度的各项要求,对目前采用较多的各项总线技 术进行了详细的分析和比较。当我们确定好一种总线技术来研究时,我们对芯片的 5 第1 章引言 选择进行了细致的分析对比,然后我们选择了a l t e r a 公司的q u a r t u si i 和a d s i 2 作为软件代码的开发工具;采用硬件编程语言v e r i l o g h d l l 6 1 和高级语言c 作为编程 语言,同时选择q u a r t u si i 自带的仿真工具对编写的代码进行各种级别的仿真、测 试。 最后,我们利用一周立功的s m a r t a r m 2 2 1 0 t 7 1 、e a s y a r m 2 3 1 0 、e p m 5 7 0 t 8 】等 开发板实现系统通信平台的构建与实验验证。 1 4 本文的组织结构 第一章:引言 本章中首先介绍了p l c 的背景相关知识,以及本课题的背景及其研究意义。 然后,对本人所做的主要工作进行了详尽的阐述,主要包括研究的主要内容、特色 与创新、关键技术与难点以及解决的途径和方法。 第二章:扩展总线技术 本章中首先介绍了总线的基本概念,给出了选择扩展总线标准的一般原则,然 后按照该原则对常见的几种p l c 的扩展总线技术进行了分析比较。 第三章:扩展总线的结构设计 本章通过对比,详细介绍了扩展总线芯片的选择、扩展总线物理结构的设计、 模块内部物理结构的设计。 第四章:扩展总线的协议 本章中介绍了扩展总线的协议,首先介绍了模块子地址的上电配置方法,然后 介绍了数据传输的帧结构,并简要介绍了所采用的c r c 校验;最后详细介绍了扩 展总线系统数据传输的模式。 第五章:扩展总线系统f p g a 的开发 本章中首先介绍了验证该总线系统时所需的综合、仿真工具。然后,分别介绍 了f p g a 设计中的各个功能模块,并给出了最终的时序仿真波形图。 第六章:c p u 模块软件的设计 本章首先简要介绍了开发软件的选择,然后详细介绍了本体c p u 和扩展c p u 程序的设计方法以及程序设计流程框图。 第七章:扩展总线的实验验证 本章中首先介绍了该总线系统硬件环境中所使用a r m 实验开发板和f p g a 开 发板,然后介绍了该扩展总线的整体验证的方法以及验证结果。 第八章:结论 本章中首先对该总线系统的主要性能进行了评价,总结了设计过程中的经验、 6 第1 章引言 教训,明确自身存在的不足并找出改进的方向和方法。然后,对该总线系统的下一 步发展提出了大胆的规划和展望,“并结合总线协议中的具体标准将其功能更加完 善。 7 第2 章扩展总线技术 第2 章扩展总线技术 2 1 总线的基本概念 总线,简单地说,就是用来传送信息代码的公共通道。由于其应用的领域很是 广泛,所以从不同的角度和着重点出发,对总线存在着多种不同的分类和比较的方 法【9 l 。而且根据不同领域的特殊需求,各种总线都有其相应的特点和优势。但无论 哪种总线,无论应用在何种领域,都要求总线具有高可靠性,也就是总线要有完善 的服务机制,保证总线运行中的稳定、安全。同时,大多数的总线还需要较高的带 宽,保证传输中的速率。当然,稳定性和高带宽,很多情况下都不能兼得,这就需 要研究人员找到一个平衡点,最大限度得满足两者得需求。 2 2 扩展总线的选择标准 用于工业控制的p l c 的扩展总线,必须要很高的性能;为了p l c 产品在市场 具有竞争力,还需要该总线具有价格优势。 在介绍选择标准之前,先提出一个重要的概念捆描时间。当p l c 系统上电 之后,本体模块对各个扩展模块进行相应的配置;然后,本体模块循环的对每个扩 展模块进行读写操作。本体模块对各个扩展模块分别读写操作一遍所用的时间叫做 扫描时间。为了提高p l c 的实时性,我们需要减小扫描时间;而为了减小扫描时间, 一个重要的方法就是提高数据传输速率。 根据以上需求,此处制定了p l c 扩展总线选择的一般原则。 一、稳定性 p l c 运用子工业控制中,在工业现场必须要长期运行,如果p l c 的突然停止 工作,将会对工业生产造成极为重大的经济损失,甚至会引起灾难。因此,保证p l c 的长时间可靠运行,其稳定性显得很重要。 二、可靠性 因为p l c 控制的特殊性,所选择总线方案必须有高的可靠性,以保证数据与 命令的正确传输,才能保证模块进行相应的正确的响应与操作,如果数据传输错误 并被p l c 模块执行,那么就出现了控制的误操作,也可能会造成很严重的后果。 三、实时性 好的扩展总线必须具有小的扫描时间,保证传输的可靠延迟。 四、性价比高 8 第2 章扩展总线技术 作为市场化的商品,为了在市场竞争中取胜,必须有高的性价比。如果产品很 好,但是价格太贵,也是不能抢占市场份额,该技术也就会被市场所淘汰。 五、可扩展性 为了保证产品与技术的更新换代,所选用的通信总线技术必须具有良好的可扩 展性。 2 3 几种总线技术的比较 2 3 1c a n 总线 c a n 属于现场总线的范畴【1 0 l ,它是一种有效支持分布式控制或实时控制的串 行通信网络。c a n 总线有如下基本特点: 废除传统的站地址编码,代之以对通信数据块进行编码,可以多主方式工 作; 采用非破坏性仲裁技术,当两个节点同时向网络上传送数据时,优先级低 的节点主动停止数据发送,而优先级高的节点可不受影响继续传输数据, 有效避免了总线冲突: 采用短帧结构,每一帧的有效字节数为8 个,数据传输时问短,受干扰的 概率低,重新发送的时间短; 每帧数据都有c r c 校验及其他检错措施,保证了数据传输的高可靠性,适 于在高干扰环境下使用; 节点在错误严重的情况下,具有自动关闭总线的功能,切断它与总线的联 系,以使总线上其他操作不受影响; 可以点对点,一对多及广播集中方式传送和接受数据。 虽然c a n 总线具有众多的优点,c a n 的高性能和可靠性已被认同【1 1 1 ,并被 广泛地应用于工业自动化、船舶、医疗设备、工业设备等方面。然而,在p l c 的扩 展总线中,其优点并不能完全的发挥,同时还有着其缺陷。 首先,p l c 的扩展总线是主从模式的,每次的数据传输都是由主模块发起,从 模块被动响应。因此,c a n 总线的多主工作方式在扩展总线中无法发挥出来。扩展 总线的主从模式特点也决定了总线中不会有总线冲突,因此c a n 总线的非破坏性 仲裁技术无法起作用。 其次,c a n 采用的是短帧结构,该结构有其上述的优点,但是这也是其缺点【l2 1 。 由于工业控制中经常是只需要对一个特定的扩展模块发送少量字节的命令或者数 据,而c a n 总线的每一帧数据都必须包含5 个字节的协议字节( c a n 2 0 b 协议) , 9 。第2 章扩展总线技术 这就导致了数据传输效率,可能只有2 0 的效率,即使按每帧8 个字节的数据量, 其传输效率也只有6 2 。因此,c a n 总线的帧结构使扩展总线的数据传输效率很 低【1 3 】。 第三,c a n 总线的最大速率是1 m b s ,这一速度无法满足众多模块所要求的高 实时性。目前凯迪恩用的c a n 总线,当接1 6 个扩展模块的时候,扫描时间约为 2 0 m s ,考虑中型p l c 的扩展模块更快更多,这一扫描时间会更大,不能满足工业 控制的实时性需求。 综上可知,c a n 总线用于p l c 的扩展总线,并不是个很好的选择。 2 3 2s p l 总线 同步外设接d ( s p i ) 是由摩托罗拉公司开发的全双工同步串行总线。s p i ( s e r i a l p e r i p h e r a li n t e r f a c e ) 是一种串行同步通讯协测1 4 】,由一个主设备和一个或多个从设 备组成,主设备启动一个与从设备的同步通讯,从而完成数据的交换。s p i 接口是 在c p u 和外围低速器件之间进行同步串行数据传输,在主器件的移位脉冲下,数 据按位传输,高位在前,地位在后,为全双工通信,数据传输速度总体来说比i 2 c 总 线要快,速度可达到几m b p s 。 s p i 接口如图2 1 所示,是以主从方式工作的,这种模式通常有一个主器件和 一个或多个从器件,其接口包括以下四种信号: ( 1 ) s i 一主器件数据输出,从器件数据输入; ( 2 ) s o 一主器件数据输入,从器件数据输出; ( 3 ) s c k 一时钟信号,由主器件产生: ( 4 ) s s 一从器件使能信号,由主器件控制。 图2 1s p i 总线结构图 1 0 第2 章扩展总线技术 从上面可以看出,s p i 有其固有的优点: 一一? 成本低。现在主流的m c u 都带有s p i 接口,不用额外的芯片。 二、主从模式,这与p l c 的扩展总线相符合。 三、速度较高,相对于c a n 的1 m b s ,许多m c u 自带的s p i 口具有更快的 速率,比如凯迪恩公司用的c 1 6 4c i 就带有最高可配置为6 2 5m b s 的s p i 接口。 然而,s p i 作为扩展总线,也有其局限性。表现在以下几点: 首先,s p i 需要片选信号线s s ,每个从模块就需要占用主模块的一个用作s s 的管脚,这就极大的限制了从模块的数量。因此,s p i 总线适合于只有少量从模块 的p l c 系统。对于凯迪恩公司的1 6 个甚至更多的扩展模块,s p i 总线显示是不适 合的。 其次,m c u 自带的s p i 接口数据传输速率虽然相对于c a n 总线有很大的提高, 但是仍然是一个局限。在迸一步提高扫描时间方面,存在着不太容易扩展的问题。 第三、s p i 没有应答机制确认是否接收到数据。当传输距离比较远的时候,信 号容易出现干扰和误判,s p i 没有应答机制确认是否接收到数据,这使得s p i 的实 时性和可靠性大打折扣。 综上可知,s p i 总线也不是一个好的扩展总线方案。 2 3 3 通用异步串口 通用异步串口即u a r t 。u a r t 是一种通用串行数据总线,用于异步通信,是 几乎所有微控制器和微处理器都有的串口。该总线双向通信,可以实现全双工传输 和接收。 u a r t 首先将接收到的并行数据转换成串行数据来传输。消息帧从一个低位起 始位开始,后面是7 个或8 个数据位,一个可用的奇偶位和一个或几个高位停止位 【”】。接收器发现开始位时它就知道数据准备发送,并尝试与发送器时钟频率同步。 如果选择了奇偶,u a r t 就在数据位后面加上奇偶位。奇偶位可用来帮助错误校验。 在接收过程中,u a r t 从消息帧中去掉起始位和结束位,对进来的字节进行奇 偶校验,并将数据字节从串行转换成并行。u a r t 也产生额外的信号来指示发送和 接收的状态。例如,如果产生一个奇偶错误,u a r t 就置位奇偶标志。 数据传输可以首先从最低有效位( l s b ) 开始。然而,有些u a r t 允许灵活选择 先发送最低有效位或最高有效位( m s b ) t 1 6 1 。 微控制器中的u a r t 传送数据的速度范围为每秒几百位到1 5 m b 。例如,嵌入 在e l a n s c 5 2 0 微控制器中的高速u a r t 通信的速度可以达1 11 5 2 m b p s 。u a r t 波特 率还受发送和接收线对距离( 线长度) 的影响。 第2 章扩展总线技术 图2 2 是利用u a r t 实现扩展通信的示意图。图中i b 和t x 分别是一个u a r t 口的数据发送端和接收端。 图2 2u a r t 实现扩展总线的示意图 虽然u a r t 具有通用性强、设计简单、成本低的优点,但是由于u a r t 一次 只能传输一个字节,且传输速率上限受到了很大的限制,无法满足设计需要。 2 3 4l2 c 总线接口 1 2 c ( i n t o - r - - i n t e g r a t e , dc i r c u i t ) 总线是一种由p h i l i p s 公司开发的两线式串行总 线,用于连接微控制器及其外围设备【l7 1 。1 2 c 总线产生于在8 0 年代,最初为音频和 视频设备开发,如今主要在服务器管理中使用,其中包括单个组件状态的通信。例 如管理员可对各个组件进行查询,以管理系统的配置或掌握组件的功能状态,如电 源和系统风扇。可随时监控内存、硬盘、网络、系统温度等多个参数,增加了系统 的安全性,方便了管理。 1 2 c 总线是由数据线s d a 和时钟s c l 构成的串行总线,可发送和接收数据。 在c p u 与被控i c 之间、i c 与i c 之间进行双向传送,最高传送速率i o o k b p s 。各种 被控制电路均并联在这条总线上,但就像电话机一样只有拨通各自的号码才能工 作,所以每个电路和模块都有唯一的地址,在信息的传输过程中,i 2 c 总线上并接 的每一模块电路既是主控器( 或被控器) ,又是发送器( 或接收器) ,这取决于它所 要完成的功能。c p u 发出的控制信号分为地址码和控制量两部分,地址码用来选址, 即接通需要控制的电路,确定控制的种类;控制量决定该调整的类别( 如对比度、 亮度等) 及需要调整的量。这样,各控制电路虽然挂在同一条总线上,却彼此独立, 互不相关。 1 2 c 总线在传送数据过程中共有三种类型信号【池】,它们分别是:开始信号、 结束信号和应答信号。 开始信号:s c l 为高电平时,s d a 由高电平向低电平跳变,开始传送数据。 结束信号:s c l 为高电平时,s d a 由低电平向高电平跳变,结束传送数据。 1 2 第2 章扩展总线技术 应答信号:接收数据的i c 在接收到8 b i t 数据后,向发送数据的i c 发出特定的 低电平脉冲,表示已收到数据。c p u 向受控单元发出一个信号后,等待受控单元发 出个应答信号,c p u 接收到应答信号后,根据实际情况作出是否继续传递信号的 判断。若未收到应答信号,由判断为受控单元出现故障。 这些信号中,起始信号是必需的,结束信号和应答信号,都可以不要。 目前有很多半导体集成电路上都集成了1 2 c 接口。带有1 2 c 接口的单片机有: c y g n a l 的c 8 0 5 lf o x x 系列,p h i l i p s p 8 7 l p c 7 x x 系列,m i c r o c h i p 的 p i c l 6 c 6 x x 系列等。很多外围器件如存储器、监控芯片等也提供1 2 c 接口 1 2 c 总线是一种用于i c 器件之间连接的双向二线制总线,所谓总线它上面可 以挂多个器件,并且通过两根线连接,占用空间非常的小,总线的长度可长达2 5 英尺,并且能够以1 0 k b p s 的最大传输速率支持4 个组件。它的另一优点是多主控, 只要能够进行接收和发送的设备都可以成为主控制器,当然多个主控不能同一时间 工作。 。目前有很多半导体集成电路上都集成了1 2 c 接i s 。带有1 2 c 接口的单片机有: c y g n a l 的c 8 0 5 1 f o x x 系列,p h i l i p s p 8 7 l p c 7 x x 系列,m i c r o c h i p 的 p i c l 6 c 6 x x 系列等。很多外围器件如存储器、监控芯片等也提供1 2 c 接口。 图2 3 是1 2 c 总线结构的示意图。1 2 c 总线最主要的优点是其简单性和有效性。 但是标准器件集成的1 2 c 总线都是符合1 2 c 总线的标准规定,该总线接口的最高速 度只有4 0 0 k b p s t l 9 】。这一速率无法满足我们需要设计的扩展总线的需求。 图2 31 2 c 总线结构图 2 3 5 自定义的扩展总线 该扩展总线方案按照p l c 的具体要求,自己选定物理层和接口芯片,自定定 1 3 第2 章扩展总线技术 义数据传输协议,克服现有总线技术在p l c 实际应用中的缺点,因而有如下要求: 物理连接简单,有独立的用于通讯控制的同步脉冲; 最大可扩展到3 1 个扩展模块; 可靠性,协议要求读写安全,能够检查数据完整性; 传输速率,要求有效的传输波特率在1 0 m b s 以上; 低成本。 以上要求是c a n 、s p i 、u a r t 、1 2 c 等总线接口结束都无法满足的。因此设计 一种自己定义物理层和协议层的扩展总线,是实现p l c 扩展总线的最佳方案。 2 4 本章小结 本章中首先介绍了总线技术的基本概念,随后,根据p l c 扩展总线的实际需 求,提出了p l c 扩展总线选择的一般原则。随后对现在常用的几种扩展总线进行的 详细的对比分析。并最终确定、选择自定义协议的扩展总线技术进行深入的研究以 及开发验证。 1 4 第3 章扩展总线的结构设计 第3 章扩展总线的结构设计 3 1接口芯片的选择 由于我们要设计的是自定义协议的高速扩展总线系统,因此硬件的选择要适合 “自定义”的特点。随着电子设计自动化( e d a ) 的不断发展i n ,f p g a c p l d 技术 【2 l 】已经成为了一种成熟的e d a 技术。f p g a c p l d 因为其编程灵活、集成度高、设 计开发周期短、适用范围宽、开发工具先进、设计制造成本低、对设计者的硬件经 验要求低、标准产品无需测试、保密性强、价格大众化等特点,可实现较大规模的 电路设计,因此被广泛应用于产品的原型设计和产品生产( 一般在1 0 ,0 0 0 件以下) 之 中。几乎所有应用中小规模通用数字集成电路的场合均可应用f p g a c p l d 器件。 3 1 1f p g a c p l d 技术 c p l d ( c o m p l e xp r o g r a m m a b l el o g i cd e v i c e ) 是c o m p l e xp l d 的简称,一种 较p l d 为复杂的逻辑元件。c p l d 2 2 】是一种用户根据各自需要而自行构造逻辑功能 的数字集成电路。其基本设计方法是借助集成开发软件平台,用原理图、硬件描述 语言等方法,生成相应的目标文件,通过下载电缆( “在系统”编程) 将代码传送到 目标芯片中,实现设计的数字系统。 发展历史及应用领域: 2 0 世纪7 0 年代,最早的可编程逻辑器件一p l d 诞生了。其输出结构是可编程 的逻辑宏单元,因为它的硬件结构设计可由软件完成( 相当于房子盖好后人工设计 局部室内结构) ,因而它的设计比纯硬件的数字电路具有很强的灵活性,但其过于 简单的结构也使它们只能实现规模较小的电路。为弥补p l d 只能设计小规模电路 这一缺陷,2 0 世纪8 0 年代中期,推出了复杂可编程逻辑器件c p l d 。目前应用已 深入网络、仪器仪表、汽车电子、数控机床、航天测控设备等方面。 器件特点: 它具有编程灵活、集成度高、设计开发周期短、适用范围宽、开发工具先进、 设计制造成本低、对设计者的硬件经验要求低、标准产品无需测试、保密性强、价 格大众化等特点,可实现较大规模的电路设计,因此被广泛应用于产品的原型设计 和产品生产( 一般在1 0 ,0 0 0 件以下) 之中。几乎所有应用中小规模通用数字集成电路 的场合均可应用c p l d 器件。c p l d 器件己成为电子产品不可缺少的组成部分,它 的设计和应用成为电子工程师必备的一种技能。 1 5 第3 章扩展总线的结构设计 f p g a 是英文f i e l d - - p r o g r a m m a b l eg a t ea r r a y 的缩写,即现场可编程门阵列, 它是在p a l 、g a l 、。c p l d 等可编程器件的基础上进一步发展的产物。它是作为专 用集成电路( a s i c ) 领域中的一种半定制电路而出现的,既解决了定制电路的不足, 又克服了原有可编程器件门电路数有限的缺点。, f p g a 采用了逻辑单元阵列l c a ( l o g i c c e l l a r r a y ) 这样一个新概念,内部包 括可配置逻辑模块c l b ( c o n f i g u r a b l el o g i cb l o c k ) 、输出输入模块l o b ( i n p u to u t p u t b l o c k ) 和内部连线( i n t e r c o n n e c t ) 三个部分。 f p g c p l d 的基本特点主要有: 1 ) 采用f p g a 设计a s i c 电路,用户不需要投片生产,就能得到合用的芯片。 2 ) f p g a 可做其它全定制或半定制a s i c 电路的中试样片。 3 ) f p g a 内部有丰富的触发器和i 0 引脚。 4 ) f p g a 是a s i c 电路中设计周期最短、开发费用最低、风险最小的器件之一。 5 ) f p g a 采用高速c h m o s 工艺,功耗低,可以与c m o s 、t t l 电平兼容。 可以说,f p g a c p l d 芯片是小批量系统提高系统集成度、可靠性的最佳选择 之一。 目前f p g a c p l d 的品种很多,有x i l i n x 的x c 系列、1 r i 公司的t p c 系列、 a l t e r a 公司的f i e x 系列等。 目前,大多数f p g a 是由存放在片内r a m 中的程序来设置其工作状态的,因 此,工作时需要对片内的r a m 进行编程。用户可以根据不同的配置模式,采用不 同的编程方式。而c p l d 是基于f l a s h 结构的,上电即可运行,不用每次上电都 重新配置。 加电时,f p g a 芯片将e p r o m 中数据读入片内编程r a m 中,配置完成后, f p g a 进入工作状态。掉电后,f p g a 恢复成白片,内部逻辑关系消失,因此,f p g a 能够反复使用。f p g a 的编程无须专用的f p g a 编程器,只须用通用的e p r o m 、 p r o m 编程器即可。当需要修改f p g a 功能时,只需换一片e p r o m 即可。这样, 同一片f p

温馨提示

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

评论

0/150

提交评论