基于CAN总线的地铁屏蔽门系统设计 - 图文

更新时间:2024-04-27 20:03:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

基于CAN总线的地铁屏蔽门系统设计

第一章 绪论

1.1 课题研究的目的意义 1.2 地铁屏蔽门的发展现状 1.3 主要研究内容

第2章 基于CAN总线的监控系统总体设计 2.1 CAN总线技术

2.2 CAN总线在地铁屏蔽门系统中的设计 2.3 监控系统的总体设计 2.3.1 节点分配

2.3.2 监控系统的设计 第3章基于CAN总线节点硬件设计 3.1 节点总体设计 3.2 节点的硬件选型 3.2.1 CAN控制器

3.2.2 CAN收发器

第4章 基于CAN总线节点软件设计 4.1 SJA1000初始化子程序 4.2 报文发送子程序 4.3 报文接收子程序

第五章 两节点CAN通讯模拟调试实验 5.1 CAN通信模拟仿真的硬件组成

5.1.1 CAN通信单片机学习板部分

5.1.2 CAN通信CAN MINI通讯部分 5.2 CAN总线通讯模拟调试 第五章 总结 展望,不足,改进 附录

基于CAN总线的地铁屏蔽门系统设计

摘 要

随着科技的飞速发展,屏蔽门系统变得越来越复杂,人们对屏蔽门系统通讯的要求不

断提高,由于较之以往的通讯方式,更为及时,有效,CAN通讯成为最热门的通讯方式之一。

文详细介绍了CAN总线技术,并通过设计将CAN总线技术应用在实际的屏蔽门系统中,提出了设计实验的初步方案;紧接着对设计方案进行硬软件的详细介绍,并进行SJA1000等各部分工作模式的详细介绍,为随后的设计CAN通讯实验进行预设和说明,做了充分准备工作;最后提出了具体的实验的方案,对硬件进行初始化和测试,安装相应的软件,对单片机进行相应的软件的烧入,并通过实验验证完成在地铁屏蔽门背景下对CAN两节点通讯的模拟。

关键词:CAN总线 屏蔽门 节点通讯 单片机

The design of Platform Screen Door System based on CAN Bus

Abstract

With the development of technology, Platform Screen Door has been much more complex.Then people need better communication methods.Because of the validity,CAN becomes one of the most popular communition method.

The paper will introduce CAN Bus Technology in detail,design the CAN Bus Technology used in the actual PSD system and presented the preliminary program design experiments.Not only the details of the hardware and software ,but also SJA1000 and other detailed models are carried out.All above makes full preparations for default and description of subsequent CAN communication experiments. Finally the specific experimental program and test hardware are initialized,and the corresponding software are installed into the .And Metro Platform Screen Doors CAN simulated two-node communication are verified by experiments done in the context.

Key Words:CAN Bus ; PSD;Two-node communication; single chip microcomputer.

第一章 绪论

1.1课题研究的背景

随着我国经济健康快速的发展,我国的地铁建设事业也正处在高速发展和不断完善的过程中。地铁所具有的方便、准时、快捷的特点,使其成为人们日常生活中重要的交通工具之一,在城市交通中扮演着越来越重要的角色。 目前,全国有30多座城市有意向建设城市轨道交通,几乎所有的省会城市都有地铁建设计划。以上海市为例,上海拥有目前中国最发达的地铁系统,共有13条轨道交通线路,总通车里程达到300多公里。

地铁屏蔽门系统是一种专用于地铁站台的防护性系统,在地铁站台边缘与顶部之间竖起一排屏蔽门(Platform Screen Door,简称PSD),通过屏蔽门的控制系统与驱动机构,实现地铁列车的车门与该系统屏蔽门中的活动门之间的同步操作。列车未到站时,屏蔽门关闭,将候车旅客与轨道隔离开;在列车到站以后,屏蔽门的活动门与列车车门同步打开,乘客可以通过活动门直接出入列车车厢,为候车旅客提供了绝对的安全保障。

屏蔽门控制系统用于实现对地铁屏蔽门设备的精确控制与智能管理,是一个复杂的分布参数控制系统,该系统集通讯、机械、电子和控制等科学于一体,对信息传递速率、同步性、系统可靠性和电磁兼容性等方面的要求十分严格。

随着屏蔽门系统设备技术的日益成熟,它的优越性正逐渐地显现出来。概括起来地铁屏蔽门系统具有以下优点:

(1)可以有效避免一些安全事故的发生,并且保证列车不会因人为因素而延误,提高了列车的进站速度,为确保列车班次的准确性提供了有利条件,从而大大提高了整个地铁运营系统的可靠性,并为将来地铁实现无人驾驶创造了条件;

(2)减小了噪声以及活塞风对站台候车乘客的影响,降低了站台空气含尘量,改善了乘客候车环境,使城市形象得到提升;

(3)屏蔽门系统安装在站台边缘,将站台公共区与隧道轨行区完全屏蔽,减少站台区与轨行区之间冷热气流的交换,降低了环控系统的运营能耗;

(4)屏蔽门的设置还可以减少地铁车站站台的值班人数,大大节约了地铁运营的人力成本。

由此可见,为了减少能耗、降低运营费用、保证乘客候车安全、提高地铁服务水平和环境质量,在地铁线路上加装屏蔽门系统是非常必要的,因此屏蔽门系统的开发势在必行。

1.2国内外屏蔽门系统的发展现状

世界上最早的屏蔽门出现在20世纪60年代前苏联的列宁格勒(现圣彼得堡),当时一为了保证无侧站台的安全和观瞻,设计了一种利用区间隧道停车的车站,这就是地铁屏蔽门的雏形。1970年在法国里尔的全自动地铁的设计中为了保证自动行车的安全而装配了屏蔽门,1951年,日本东京地铁南北线上安装了半封闭式的站台安全门,它是一种结构简单、高度较低的玻璃隔墙和活动门,主要是为了把轨道与乘客隔离开,在保证了站台候车乘客的安全的同时也能起到一定的降低噪音的作用。

新加坡常年气候炎热,空调的运行费用在地铁运行成本中占了相当大的比重,为了减少空调的能源消耗,1987年新加坡的快铁交通一期和二期工程中首次采用了全封闭式的屏蔽门系统,这也是世界上最早的以节能为目的屏蔽门的地铁运行线路。屏蔽门的使用不仅保证了站台安全,而且带来了明显的节能效果(空调节能率达到了50%左右),其与站台内的建筑风格一致,整体感强,构筑了一个宁静、清新、现代的候车环境,给乘客留下了良好的印象。

随着社会不断前进,屏蔽门系统在地铁的应用近几年在世界各地得到迅猛发展。它的控制方式也是由最初的手动到简单线路再到复杂线路。现今,地铁屏蔽门系统已经发展到现场总线网络控制,走向了智能化、一体化、科学化。现场总线控制系统(FCS)是一个开放通信网络,也是一种全分布式控制系统。它作为智能设备的联系纽带,把挂接在总线上、作为网络节点的智能设备-屏蔽门单元连接为网络系统,并进一步构成自动化系统,实现基本控制、补偿计算、参数修改、报警、显示、监控、优化及控管一体化的综合自动化功能。这是一项集嵌入式系统、控制、计算机、数字通信、网络为一体的综合技术。这样的控制系统达到了屏蔽门的精确控制和使用性能的要求,可以无人参与实现了智能管理控制。

从目前地铁屏蔽门行业的实际情况来看,由于国外企业屏蔽门技术发展较早,使之在于国内企业的竞争中占据着先机和绝对的优势。国际上最早从事屏蔽门设计和制造的企业是英国的西屋(westhouse)公司, 该公司与瑞士卡巴(Kaba)公司、法国法维莱(Faiveley)公司和日本那博克(Nabco)公司一起,成为目前世界上最主要的4家屏蔽门生产厂家, 这四家公司所生产的屏蔽门产品约占国际屏蔽门市场总份额的90%。

英国的西屋和法国法维莱作为屏蔽门与安全门业务的业界领导者,己经安装或正在安装超过一万多扇屏蔽门,这其中有的是完整配套的站台门体,有的是会同此类站台门体中所有关键的PSD核心组件一同提供给客户。已经承建包括广州地铁一号线和五号线、天津滨海线、上海八号线和六号线、北京十号线等工程。

日本纳博克株式会社于 1956 年研制出了日本第一台自动门,揭开了日本自动门生产的第一幕。四十多年来,一直以其领先的技术、优良的品质、一流的服务屹立于日本乃至世界自动门领域的最前列。纳博克自动门现年产量6.5万台,日本自动门市场占有率在50%以上,世界自动门占有率在25%以上。

瑞士卡巴集团有超过145年的辉煌历史,被公认为全球安防行业和自动门领域中之领先企业,以提供高端优质产品而著称,业务活动遍及80多个国家和地区。 集团实行“全面通道控制”战略,是一家高度专业化的公司。拥有300多项技术专利,提供各种一体化解决方案。

随着我国经济健康快速的发展,我国的地铁建设事业也正处在高速发展和不断完善的过程中。与此同时,屏蔽门行业也逐步发展起来。地铁屏蔽门行业作为我国一个新兴的行业,虽然行业的技术发展较快,但是在行业标准、技术发展等方面仍然存在一定的问题。过去地铁屏蔽门系统技术主要垄断在英、日、法等国家的少数企业手中,随着我国企业在与国外企业竞争和合作中的接触,对不同结构形式的地铁安全屏蔽门系统进行了全面系统的探索和研究,屏蔽门控制方面的技术逐渐成熟。 例如09年由西门子标准传动部重点合作伙伴-上海嘉成轨道交通安全保障系统有限公司承建的上海地铁11号线屏蔽门系统。广州地铁二号线屏蔽门工程中标方就是广州澳的斯电梯有限公司与英国西屋公司,深圳方大集团于2000 年与法维莱公司开始合作之后, 双方共同成功承建了北京、天津、深圳、东北等屏蔽门重大工程项目;瑞士卡巴公司也与江苏金创集团合作在国内承接屏蔽门工程项目;日本那博克公司与重庆川仪集团也就屏蔽门项目进行着合作等。

1.3课题研究的目的和意义

现代屏蔽门系统包含了大量的电子控制系统,包括门体单元控制系统、电源、监控系统及手动控制系统等。随着电子系统以及电子电气设备的增加,传统的线束布线方式必然会导致线束长度增加且复杂,系统的可靠性降低、重量大幅增加、电气系统的制造、安装和维修的难度也随之加大。现场总线控制系统(FCS),是解决这类问题的最佳途径,因此本课题选用目前最流行CAN总线技术来实现对屏蔽门的控制。它是一种有效支持分布式控制或实时控制的串行通信网络,有着极高的安全性和可靠性。同时,在屏蔽门控制系统中引入CAN总线技术可以使得大量的数据信息在不同的电子单元内得到共享,大量的控制信号也可以得到实时交换,这样不仅提高了信号的利用率,而且增强了系统的稳定性与及时性。

我国目前在屏蔽门控制系统上应用CAN总线技术研究尚处于起步阶段,大量技术仍然

需要国外支持。现场总线系统代表了当今工业控制系统的发展方向, CAN是应用最为广泛的现场总线之一。将CAN总线应用到地铁屏蔽门控制系统中,解决了现有系统中的连线复杂、灵活性差、可靠性较低等问题,增强了系统的扩展性,降低了成本。通过研究CAN应用层协议CAN open并将其应用到系统中,有利于提高设备的标准化程度和互操作性。

在屏蔽门系统中,工控机是整个控制系统的核心,发挥着控制全局的作用。它的主要功能是接收传感器采集的数据,经过A/D转换,编码成报文,发送到CAN总线上其他需要这些数据的节点。工控机还负责接收、处理驾驶员的驾驶操作指令,并向各个节点控制器发送控制指令。同时采集各个控制单元的状态信息,并根据状态信息对整体目前的状况做出判断。而门控单元是CAN总线的节点,微控制器是门控的核心部件,它的性能直接影响了整个控制系统的控制效果。因此,开发设计门控节点的通讯模块是整个控制系统过程中主要任务,这也是本文研究的意义所在[1]。

1.4课题研究的主要内容

本文围绕门控节点的设计与CAN总线协议的实现,展开以下工作: 第一章: 对本研究课题,从实际运用方面查阅资料进行研究

第二章:综合实际,对CAN传输部分进行研究与分析,并实现初步设计。 第三章:对CAN传输硬件部分进行学习,并对硬件模拟部分进行分析设计 第四章:综合软件运用,对课题模拟进行调试,实现CAN的简单通讯。 第五章,总结不足,提出改进设想,对课题进行展望

第2章 基于CAN总线的屏蔽门系统总体设计

2.1 CAN总线技术

CAN(Control Area Network,控制器局域网)是德国Bosch公司于20世纪80年代提出的高速串行数据通信网络,最早应用于汽车内部通信,用于解决由汽车内部大量传感器、执行器等电子器件的应用所导致的线束问题,及各个电子器件之间数据交换问题。目前,CAN总线已被ISO国际标准组织制定为国际标准, 得到了 Motorola、Intel、Philips 等公司的支持。CAN总线具有通信速率高、可靠性好、抗干扰能力强、性价比较高等优点, 目前不仅应用于汽车电子,还广泛应用于航空、轮船、工业控制、建筑、自动化设备等诸多领域。CAN是当今自动化领域技术发展的热点之一,被誉为自动化领域的计算机局域网。它的出现为分布式控制系统实现各节点之间实时、可靠的数据通信提供了强有力的技术支持。

CAN与其它总线技术相比,在分布式控制系统中有明显的优越性: 1.网络各节点之间的数据通信实时性强

首先,CAN控制器工作于多主方式,网络中的各节点都可根据总线访问优先权(取决于报文标识符)采用无损结构的逐位仲裁的方式竞争向总线发送数据, 且CAN协议废除了站地址编码,而代之以对通信数据进行编码,这可使不同的节点同时接收到相同的数据,这些特点使得CAN总线构成的网络各节点之间的数据通信实时性强,并且容易构成冗余结构,提高系统的可靠性和系统的灵活性。

2.缩短了开发周期

CAN具有的完善的通信协议可由CAN控制器芯片及其接口芯片来实现,从而大大降低系统开发难度,缩短了开发周期。

3.已形成国际标准的现场总线

与其它现场总线比较而言,CAN总线是具有通信速率高、容易实现、且性价比高等诸多特点的一种已形成国际标准的现场总线。这些也是目前 CAN总线应用于众多领域,具有强劲的市场竞争力的重要原因。

2.1.1 CAN总线特点

CAN总线能够得到广泛的应用, 与CAN总线通信具有高度的可靠性、及时性和灵活性等特点是分不开的,它的主要特点如下:

1.CAN总线的通信方式极其灵活,它废除了传统的站地址编码形式, 采用多主的工作

方式,网络上的每一个节点都可以在总线空闲时主动向总线上其他一个或多个节点发送报文。

2.CAN总线节点传送到总线上的信息按照重要程度被分为不同的优先级, 每个报文都拥有自身的优先权,报文的优先权由标识符确定,标识符ID越小,优先权越高。 每个报文都具有CAN网络中唯一的标识符,这样可以满足不同的实时要求,提高了CAN通信的实时性。

3.CAN总线采用冲突检测载波监听多路访问方法, 通过非破坏性的总线仲裁技术解决总线访问冲突。在同一时间,如果有多个节点同时向CAN总线发送报文,总线出现访问冲突,这时总线会根据优先权进行仲裁,优先权低的节点主动退出发送,而优先权高的可以继续发送。只要总线处于空闲状态,就会将未发送的报文重新发送。从而减少了总线访问冲突的仲裁时间,避免了在网络负载很重的情况下造成的网络瘫痪现象。

4.CAN总线每一个节点在接到其他节点发送的报文后,首先对报文的标识符进行分析,判断该报文是否与自己相关,如果相关则处理;如果不相关,则忽略,大大提高了总线的反应速度。

5.CAN总线通过报文滤波即可实现点对点、一点对多点以及全局广播等多种形式发送/接收数据,无需专门的“调度”。

6.CAN总线的传输速率与通信距离相关,最高传输速率可达1Mbps(此时通信距离最长为40m),最长通信距离可达10km(此时传输速率低于5kbps)。

7.CAN总线上连接的节点数目取决于总线驱动电路, 在不改变应用层及其他节点的软硬件条件下,可以任意增加或者减少节点,目前总线上可以连接的节点最多可达110个。

8.CAN总线的标准帧(CAN2.0A)的报文标识符由11位二进制编码组成,可达2032个;扩展标准帧(CAN2.0B)的报文标识符由29位二进制编码组成,数量几乎不受限制。

9.CAN总线通信采用短帧格式,每帧的数据为0~ 8个字节,可以满足控制命令、工作状态及测试数据的一般要求。采用短帧通信不仅传输时间较短,而且可以提高抗干扰能力,减少误码率,提高了通信的可靠性。

10.CAN总线采用循环冗余码校验(CRC),每帧都具有CRC信息,节点在接收信息后,通过CRC校验来确定接收信息是否正确。 CAN总线通过循环冗余校验以及通过监视、位填充和报文格式检查等其他错误检测方式,保证通信数据的可靠性。

11.CAN总线可以采用多种通信介质,双绞线、同轴电缆或者光纤,目前普遍使用的是屏蔽双绞线,并有向光纤普及的趋势。

于监测DCU的运行状态及记录相关数据,也用于调试阶段和故障处理时控制系统运行。

图2-5 屏蔽门系统CAN总线控制图

图2-6 屏蔽门系统CAN总线模拟设计

根据实际应用中屏蔽门系统的复杂性,本论文对屏蔽门系统进行了简单设计,主要的内容是PSC中央接口盘和DCU门控单元的部分,总体设计如图2-6所示,从硬软件的角度全面分析并通过实验调试,达到了预期的效果,实现了CAN通讯,对CAN总线通信进行了模拟设计。

第3章 基于CAN总线节点硬件设计

本章具体介绍了基于CAN总线节点的硬件设计方案。包括CAN总线智能节点及其外围电路的设计,同时根据节点的设计要求对微处理器进行模块化设计,包括电源模块、模拟量输入模块以及开关量输入模块。

3.1节点总体设计

CAN总线系统中有两类节点:不带微控制器的非智能节点和带微控制器的智能节点。所谓的智能节点即由微控制器与CAN控制器组成。CAN总线节点的典型硬件结构由微控制器、CAN控制器及CAN收发器组成,通常有以下两种形式:一种是采用独立的CAN控制器,一种是采用非独立的CAN控制器,即微控制器上自带CAN控制器。CAN总线智能节点结构如图3.1所示。

图3-1 CAN总线智能节点结构

前者的优点是设计灵活具有很高的自由度,使用通用的单片机仿真器进行开发。后者的优点是硬件设计简单,结构稳定,但是通用性降低,需要专用的开发工具。在本设计中采用第一种设计方案即独立的CAN控制器设计方案。

3.2硬件选型

系统硬件主要包括工控机、CAN-RS232模块和门控节点三大部分组成。本模拟系统工控计算机选择 PC 机替代,其优点是:PC 机便于实现人机界面,很容易联网监控,便于统一调度和管理。选用PC机,还可以充分利用先用软件工具和开发环境。

在该系统中主要是为实现CAN总线的远程通信,设计中没有数据采集、执行控制机构等硬件部分。 硬件设计包括电平转换、微处理器、CAN控制器、CAN总线收发器,为了提高系统的抗干扰能力,在CAN控制器和CAN收发器之间增加了光电隔离电路 ,以及外围电路,扩展电路设计等。

3.2.1电平转换

EIA-RS232C被定义为一种在低速串行通信中增加通信距离的单端标准。RS232采取不平衡传输方式,即所谓单端通信。典型的RS232信号是在正负电平之间摆动,在发送数据时,发送端驱动器输出正电平为+5 V~+15 V,负电平为-15 V~-5 V。当无数据传输时,线上为TTL电平,从开始传输数据到结束,线上电平从TTL电平到RS232电平再返回到TTL电平。接收器典型的工作电平为+3 V~+12 V与-12 V~-3 V。因此,为了能够同计算机接口或终端的TTL器件连接,必须在EIA-RS-232C与TTL电路之间进行电平和逻辑关系的变换。因此,RS-232C所有的输出、输入信号都要分别经过电平转换器,进行电平转换后才能送到连接器上去或从连接器上送进来。此处选用的电平转换芯片是MAX3232。

图3-2电平转换硬件设计原理

PC机的信号通过串口(COM)到达DB9座子与该智能节点相连,通过双向电平转换芯片MAX3232,把RS232信号电平转化为单片机可以处理的电平。通过微控制器的串口连入该智能节点。RS232总线数据的接收和发送由微处理器完成,并且微处理器负责实现协议控制与数据转换。

在地铁屏蔽门实际应用中,一个门控单元即作为一个节点,以中央接口盘为中心,对各个部分实行通讯,如图2-4所展示的那样,门控单元(DCU)与中央接口盘(PSC)采用的是CAN现场总线连接,图中标为虚线;就地借口盘与(PSL)与上述两者的分别连接采用的是硬线连接,采用的是实线。

本课题研究为门控单元和中央接口之间的CAN通讯传输,并进行设计模拟。 设计由于采取的是CAN通讯,所以模拟采用两个节点,分别为学习板和CANMINI,分别模拟的是实际通讯中的中央接口盘和门控单元。以电脑做为接收传输媒介,进行CAN通讯。

图3-3 模拟总体接线图

硬件选择为STC单片机,SJA1000控制器和TJA1050总线收发器。总体分布作用图如图3-2。

PC机串口RS232 电源 DCDC隔离 CAN-H CAN-L 电平转换 微处理器 CAN控制器 光电隔离 CAN收发器

图3-4总体分布作用图

3.2.1 CAN 控制器

控制器选用的是目前应用最为广泛的SJA 1000独立CAN控制器。

SJA1000是一种独立的CAN控制器,主要用于移动目标和一般工业环境中的区域网络控制。它是Philips半导体公司PCA82C200 CAN 控制器(BasicCAN)的替代产品,而且它增加了一种新的操作模式——PeliCAN,这种模式支持具有很多新特性的CAN 2.0B协议。

图3-5控制器收发应用图

SJA1000各部分功能说明: CAN 控制模块: 1.接口管理逻辑IML

接口管理逻辑解释来自CPU 的命令控制CAN 寄存器的寻址向主控制器提供中断信息和状态信息。

2.发送缓冲器TXB

发送缓冲器是CPU 和BSP 位流处理器之间的接口能够存储发送到CAN 网络上的完整信息缓冲器长13 个字节由CPU 写入BSP 读出。 3.接收缓冲器RXB RXFIFO

接收缓冲器是验收滤波器和CPU 之间的接口用来储存从CAN 总线上接收和接收的信息接收缓冲器RXB 13 个字节作为接收FIFO RXFIFO 长64 字节的一个窗口可被CPU 访问 CPU 在此FIFO 的支持下可以在处理信息的时候接收其它信息。 4.验收滤波器ACF

验收滤波器把它其中的数据和接收的识别码的内容相比较以决定是否接收信息在纯粹的接收测试中,所有的信息都保存在RXFIFO中。 5.位流处理器BSP

位流处理器是一个在发送缓冲器RXFIFO和CAN总线之间控制数据流的程序装置它还在CAN 总线上执行错误检测仲裁填充和错误处理。 6. 位时序逻辑BTL

位时序逻辑监视串口的CAN 总线和处理与总线有关的位时序它在信息开头弱势-支配的总线传输时同步CAN 总线位流硬同步接收信息时再次同步下一次传送软同步BTL 还提供了可编程的时间段来补偿传播延迟时间相位转换例如由于振荡漂移和定义采样点和一位时间内的采样次数。 7.错误管理逻辑EML

EML 负责传送层模块的错误管制它接收BSP 的出错报告通知BSP 和IML 进行错误统计。

SJA1000 在软件和引脚上都是与它的前一款PCA82C200独立控制器兼容的在此基础上它增加了很多新的功能为了实现软件兼容SJA1000,增加修改了两种模式: ??1. BasicCAN 模式与PCA82C200 兼容 ??2. PeliCAN 模式扩展特性

工作模式通过时钟分频寄存器中的CAN 模式位来选择复位默认模式是Basic CAN 模式。主要是为了软件上的兼容性,在Basic CAN 模式中SJA1000 模仿PCA82C200 独立控制器绝大部分的功能作用。

同步模式:在SJA1000 的控制寄存器中没有SYNC 位在PCA82C200 中是CR.6 位同步只有在CAN 总线上弱势-支配控制的转换时才有可能发生写这一位是没有任何影响的为了与现有软件兼容读取。这一位时是可以把以前写入的值读出的对触发电路无影响

时钟分频寄存器:时钟分频寄存器用来选择CAN 工作模式Basic CAN /Peli CAN 它使用从PCA82C200 保留下来的,使内部RX 输入比较器旁路这样在使用外部传送电路时可以减少内部延时。

接收缓冲器:PCA82C200 中双接收缓冲器的概念被Peli CAN 中的接收FIFO 所代替这对软件除了会增加数据溢出的可能性之外不会产生应用上的影响在数据溢出之前缓冲器可以接收两条以上信息最多64 字节。

CAN 2.0B:SJA1000 被设计为全面支持CAN 2.0B 协议,这就意味着在处理扩展帧信息的同时扩展振荡器的误差被修正了,在Basic CAN 模式下只可以发送和接收标准帧信息11 字节长的识别码,如果此时检测到CAN 总线上,有扩展帧的信息如果信息正确也会被允许,且给出一个确认信号但没有接收中断产生。

Basic CAN 和Peli CAN 模式的区别:在Peli CAN 模式下SJA1000 有一个含很多新功能的重组寄存器SJA1000 包含了设计在PCA82C200中的所有位及一些新功能位Peli CAN 模式支持CAN 2.0B 协议规定的所有功能29 字节的识别码。

SJA1000 的主要新功能:

1.标准帧和扩展帧信息的接收和传送 2. 接收FIFO 64 字节

3. 在标准和扩展格式中都有单/双验收滤波器含屏蔽和代码寄存器 4.读/写访问的错误计数器 5.可编程的错误限制报警 6. 最近一次的误码寄存器

7.对每一个CAN 总线错误的错误中断 8. 仲裁丢失中断以及详细的位位置 9. 一次性发送当错误或仲裁丢失时不重发 10.只听模式CAN 总线监听无应答无错误标志 11.支持热插无干扰软件驱动位速检测 12. 硬件禁止CLKOUT 输出

BasicCAN 地址表:SJA1000 是一种I/O 设备基于内存编址的微控制器双设备的独立操作,是通过象RAM 一样的片内寄存器修正来实现的。

SJA1000 的地址区包括控制段和信息缓冲区控制段在初始化载入是可被编程来配置通讯参数的例如位时序微控制器也是通过这个段来控制CAN 总线上的通讯的在初始化时CLKOUT 信号可以被微控制器编程指定一个值。应发送的信息会被写入发送缓冲器,成功接收信息后微控制器从接收缓冲器中读取接收的信息,然后释放空间以做下一步应用。 微控制器和SJA1000 之间状态控制和命令信号的交换都是在控制段中完成。

初始载入后寄存器的验收代码验收屏蔽总线定时寄存器0 和1 以及输出控制就不能改变了只有控制寄存器的复位位被置高时才可以访问这些寄存器。在以下两种不同的模式中访问寄存器是不同的: ??1. 复位模式 ??2. 工作模式 3.2.2 CAN收发器

图3-6 CAN收发器PCA82C250原理图

收发器采用的是较为基础的PCA82C250收发器。PCA82C250收发器是协议控制器和物理传输线路之间的接口,其额定电源电压是12V。

图3-7 CAN收发器应用举例

CAN控制器通过串行数据输出线(TX )和串行数据输入线(RX )连接到收发器,收发器通过有差动发送和接收功能的两个总线终端CANH 和CANL ,连接到总线电缆输入(Rs ),用于模式控制参考电压输出VREF 的输出电压是额定VCC 的0.5 倍,其中收发器的额定电源电压是5V。

图3-8 根据ISO 11898 的额定总线电平

CAN控制器输出一个串行的发送数据流到收发器的TxD ,引脚内部的上拉功能将TxD 输入设置成逻辑高电平,也就是说总线输出驱动器默认是被动的在隐性状态中,见图3-8,CANH 和CANL 输入通过典型内部阻抗是17k 的接收器输入网络,偏置到2.5V 的额定电压。另外,如果TxD 是逻辑低电平总线的输出级,将被激活在总线电缆上产生一个显性的信号电平, 输出驱动器由一个源输出级和一个下拉输出级组成,CANH 连接到源输出级,CANL 连接到下拉输出级,在显性状态中CAN_H 的额定电压是3.5V, CAN_L 是1.5V。

PCA82C250共有三种不同的工作模式模式控制通过Rs 控制引脚提供: 第一种模式是高速模式它支持最大的总线速度和或长度。

第二种是斜率模式当使用非屏蔽的总线电缆时可以考虑使用这种模式这种模式的输出转换速度可减少电磁辐射

第三种是准备模式。这种模式在电池供电的应用要求系统功率消耗非常低的应用中非常有用,在准备模式中传输一个报文就可以将系统激活,图3-6 是收发器在准备模式和普通工作模式间切换的例子。

第4章 基于CAN总线节点软件设计

4.1 SJA1000初始化子程序

SJA1000 的初始化只有在复位模式下才可以进行,初始化主要包括工作方式的设置,接收滤波方式的设置。接收屏蔽寄存器AMR 和接收代码寄存器ACR 的设置波特率参数设置和中断允许寄存器IER 的设置等,在完成SJA1000 的初始化设置以后SJA1000 就可以回到工作状态进行正常的通信任务。

SJA1000 初始化的51 汇编源程序程序中,寄存器符号表示的是SJA1000 相应寄存器占用的片外存贮器地址。这些符号可在程序的头部用伪指令EQU 进行定义后。

为保证CAN总线正常通信,就必须对CAN控制器进行合理正确的初始化设置。CAN控制器SJA1000必须在上电或者硬件复位后,才能进行CAN通信的初始化设置。在微控制器操作期间,SJA1000可能会向微控制器发送软件复位请求,在接到微控制器发送的低电平的复位脉冲之后SJA1000进入复位模式才可能会被重新初始化。上电后,微控制器首先完成自己的复位程序,然后进入SJA1000的设置程序,在设置SJA1000之前,微控制器通过读复位模式/请求标志来检查SJA1000是否进入复位模式,确认SJA1000已经进入复位模

式后,才能重新配置寄存器信息。

图4-1 SJA1000初始化程序流程图

CAN控制器SJA1000的初始化主要任务就是对时钟分频寄存器(CDR)、验收代码寄存器(ACR)、验收屏蔽寄存器(AMR)、总线定时寄存器(BTR0、BTR1)、输出控制寄存器(OCR)等寄存器进行配置,从而确定CAN控制器的工作方式。当初始化结束之后,各寄存器的数值便不能改变了,CAN控制器进入工作模式,SJA1000按照设置的工作方式进行工作。只有SJA1000再次请求复位,进入下一次的初始化过程,寄存器的内容才有可能被更改。SJA1000的初始化程序流程图如图4-1所示。

4.2 报文发送子程序

发送子程序负责节点报文的发送发送时用户只需将待发送的数据按特定格式组合成一帧报文送入SJA1000 发送缓存区中,然后启动SJA1000 发送即可,当然在往SJA1000 发送缓存区送报文之前,必须先作一些判断,如下文程序所示发送程序分发送远程帧和数据帧两种远程帧无数据场。

CAN总线的报文传输由CAN控制器SJA1000独自完成。CAN控制器SJA1000需要先将要发送的报文写入发送缓冲器,然后将命令寄存器的发送请求位TR置1,开始发送报文。SJA1000报文发送子程序流程图如图4.2所示。

图4-2 报文发送子程序流程图

为了确保报文的顺利发送,在发送之前,SJA1000首先读状态寄存器的TBS位是否为1来确定发送缓冲器是否被释放。如果发送缓冲器被释放,才能将报文写入发送缓冲器,然后将命令寄存器的发送请求位TR置1,准备开始发送报文。否则将发送临时存储报文,设置下一个报文标志,同时比较现有报文与发送缓冲器中的报文优先级,如果现有的报文优先级较高,则设置命令寄存器中止发送位AT为1,中止目前正在发送的报文,转而发送优先级更高的报文。如果优先级比较低,保持等待,在等待目前报文发送的过程中,微控制器锁定发送缓冲器,不断查询状态寄存器直到发送缓冲器被释放。在设置发送请求位之后,SJA1000根据状态寄存器判断总线是否空闲,如果总线空闲开始发送报文,如果总线非空闲,可以选择等待直到总线空闲时,重新发送报文,也可以取消发送。在报文发送之后,SJA1000会根据总线反馈信号,判断报文是否发送成功,如果报文发送成功,则将发送请求位TR置0,结束报文发送。如果报文发送出现错误,则将状态寄存器错误位置1,错误计数器加1。然后判断是否由于失去仲裁导致发送失败,如果并没有失去仲裁则可以选择重新发送或者取消,终止发送。发送子程序如图4-2。

4.3 报文接收子程序

接收子程序负责节点报文的接收以及其它情况处理,接收子程序比发送子程序要复杂一些,因为在处理接收报文的过程中同时要对诸如总线脱离错误报警接收溢出等情况进行处理。SJA1000 报文的接收主要有两种方式,中断接收方式和查询接收方式。如果对通信的实时性要求不是很强,采用查询接收方式。两种接收方式编程的思路基本相同,下面仅以查询方式接收报文为例对接收子程序作一个说明。

CAN总线的报文接收由CAN控制器SJA1000独立完成。SJA1000将收到的报文放在接收缓冲器中,然后由微控制器将报文存储在本地的报文存储器中,并对报文进行SJA1000的报文的接收有两种方式:中断接收方式与查询接收方式。中断接收方式SJA1000每传来一个报文会产生一个中断,然后SJA1000开始接收报文。而查询方式即SJA1000不断查询状态寄存器的状态位标志来进行接收控制。报文的接收过程是被动的,而且报文接收的时间是随机的,因此为了提高CAN总线的工作效率与系统的稳定性,在本设计中采用中断接收方式。

当CAN控制器SJA1000收到从总线上传来的报文后,首先验收滤波器验证其标识符,检验其标识符是否满足接收条件。此时如果状态寄存器的接收缓冲器状态位RBS为0,表示接收缓冲器为空,经过验收滤波器的报文便被存入接收缓冲器中,同时接收缓冲器状态位RBS被置为1。否则表示接收缓冲器没有足够空间接收报文,SJA1000产生溢出错误,状态寄存器数据溢出状态位DOS被置为1,产生溢出中断。

报文被存入接收缓冲器后,SJA1000向微控制器发送接收中断请求,微控制器将报文从接收缓冲器中读取出来,存入本地报文存储器中。微控制器首先读取接收报文的首字节,以判断是否为远程请求帧,如果为远程帧则发送请求的数据,同时将命令寄存器的释放接收缓冲器标志位RRB置为1,释放接收缓冲器。如果接收的报文为数据帧,则继续读取接收报文,知道将全部数据读取,最后将命令寄存器的释放接收缓冲器标志位RRB置为1释放接收缓冲器。报文接收结束。报文接收子程序流程图如图4-3所示。

图4-3 报文接收子程序流程图

第五章 CAN总线通讯模拟实验

5.1 CAN通信模拟仿真的硬件组成

3-7两点通讯连接

在现实屏蔽门系统应用中,CAN 总线传输用于中央接口与门控单元,即单个的屏蔽门之间的信息传送。

在本课题的仿真实验中,采用的是两点通讯,即学习板与CANMINI之间的通讯,来模拟中央接口与门控的通讯。 5.1.1 CAN通信单片机学习板部分

单片机学习板使用的是YH51-Ⅲ学习板,模拟实际CAN地铁屏蔽门中的中央接口部分。

YH51-III是一款CAN、USB、RS232、RS485多总线学习开发板,单片机采用51内核单片机,程序可通过串口直接下载到单片机调试,CAN控制器采用了在现场总线种应用最为广泛的SJA1000,USB芯片采用内置USB协议固件的CH372。

图3-8 YH51-Ⅲ学习板

5.1.1 CAN通信CANMINI通讯部分

图3-9 CANMINI实物对比图

CANMINI是一个小型的通讯芯片,主要在模拟实验中作为门控单元。

CanMini是一块CAN到232的微型转换板,兼容CAN1.0和CAN2.0AB协议,串口波特率最高可达115200BPS数据吞吐量大,可以和任何CAN总线设备连接实现CAN到232的转换,配合相应的调试软件可以方便地分析监视CAN总线上的数据。

5.2 CAN总线通讯模拟调试

本课题的模拟是模拟地铁屏蔽门和中央接口的通讯,实质上是2节点之间的CAN总线

通讯,实现两个CAN设备之间的数据双向传输。

实际通讯中,可将一串数字指令输入监控电脑,将指令输出到门控系统,同时,门控系统也可将其相应的状态用数字串发送回中央控制。两个数字为一组传递讯息,比如,可令第一个数组作为开关门的状态,00为正在开门,01为开门,10为正在关门,11为关门;第二组数组为硬件连接有效验证, 当为11时有效, 否则无效; 第二组数组为软件有效,数组为11时有效,否则无效; 第三组数组为开始关闭所有门, 数组为11时候开始关闭,否则不关;第四组数组为11时开启所有门,否则不开。 利用数组的信息的传递,来确认控制门的开关,从而实现地铁屏蔽门的CAN通讯传输。

在本实验中利用YH51-III和CanMini之间通过CAN总线相互通讯,为了更好地,更方便地发送和监视对方发送的数据,YH51-III和CanMini双方收发的数据均通过调试软件YuhangDebugTools来完成。

实验模拟总的来说如图4-4所示,CAN MINI和YH51学习板之间实用通讯线连接,两者再分别与电脑连接进行监控和供电,并通过电脑实现USB转232通讯,来实现整体系统的传输。

实验一共需要两根USB转232串口线,一根USB连接线,CANMINI和学习板,以及笔记本电脑和相应的硬件驱动和调试软件。

图4-4 实验模拟总图

实验模拟具体步骤及附图说明: 1.安装串口驱动

在刚购入的串口线在电脑是无法直接使用,须先安装相应的驱动。 将驱动的安装盘插入光驱,进行安装

图4-5 完成串口线安装

分别安装两根USB转串口线之后,就可以正常使用接线了 2.给学习板输入程序

将学习板与电脑用USN转232接口线连接,给学习板输入程序,使用的软件是STC_ISP_V479,步骤如下:

图4-6安装界面

打开界面后,在步骤一里打开选中实验模拟所使用的单片机型号STC10F08。

图4-7 STC_ISP_V479安装步骤1

在步骤2里,将所输入的程序文件选中,

图4-8 STC_ISP_V479安装步骤2

在步骤3里,选择争取的学习板连接的电脑接口号,具体哪个接口,查看设备管理器里的串口设备,找到COM对应的号数。

步骤4所有选项不做改变,采取默认设置。

图4-9 STC_ISP_V479安装步骤4

对于步骤5,先点击DOWNLOAD,在步骤5下方的窗口会提示须连接电源,再用USB连接学习板和电脑,给电脑供电,等数秒钟,会出现文字提示如下:

图4-10 连接硬件

此时,说明文件输入成功,连接初始结束。 3.硬件接线

使用4根小导线,通过四个接线柱连接CAN MINI和学习板,并拧好,相应的接线名

称对好,仔细检查避免出错,将学习板上的+5,GND,CAH,CAL分别和CANMINI的+5,GND,CANH,CANL正确连接,否则会将CAN MINI烧毁。

图4-11 硬件实物图

4.连接串口线

拔掉USB电源线,用两条串口线把YH51-III学习板和CAN MINI分别连接到电脑的两个串口, USB线连接到YH51-III学习板和电脑USB口,连接好后再连接USB线给学习板通电,此时YH51-III学习板的LED1处于闪烁状态表明程序已运行,LED2常亮表明

CAN芯片自检成功(否则CAN芯片自检失败,无法通讯)。CAN MINI的LED也处于闪烁状态,如果异常,此时应检查YH51-III是否烧错了程序。 5.软件调试

硬件连接都正常后接下来进行软件调试。软件调试使用的软件是YuhangDebugTools软件。

使用调试软件之前必须先安装Microsoft.NET Framework2.0软件,然后再安装USB

驱动HidComInst,网络上找到上述两个软件并安装成功之后,便可使用调试软件。 打开两次调试软件YuhangDebugTools之后,两个界面分别模拟学习板和CAN MINI的监控现实界面。

图4-12 软件界面图

运行两个YuhangDebugTools调试软件,调试界面均默认为CAN-232调试界面,选择连接CAN MINI的串口号,波特率设选择115200,设置好后点击 “连接CAN MINI” 如果串口打开成功调试软件CAN控制部分由禁止变为使能并弹出一个窗口提示波特率。另一个软件连接YH51-III学习板,选择对应的串口号,波特率设置为9600,CAN波特率均默认为250K,然后点击 “连接CAN MINI”,实际上是连接YH51-III学习板。 6.两节点CAN通讯

连接完成之后,就可以进行通讯了,两个界面分别代表学习板和CAN MINI,在其中

一个界面输入一串数字,另一个界面会输出相应的数字,并以两个数字为一组进行分开。以此作为模拟实际应用中,地铁屏蔽门与中央接口的CAN通讯。

图4-13 软件通讯界面

第五章 总 结

本文对地铁屏蔽门系统的背景下的CAN通讯,做了如下的研究:

(1) 通过大量的调研工作,对屏蔽门发展特点和发展方向进行了总结,通过对屏蔽门发展意义和发展现状,进行了大量的研究。

(2)查阅专业书籍,通过对CAN通讯的学习,综合实际,对CAN传输部分进行研究与分析,并设计方案和思路。

(3)通过具体而深刻的对CAN传输硬件部分的学习,综合软件运用,对课题模拟进行调试模拟,实现两节点的通讯实验的具体操作。

本文主要从屏蔽门应用的角度,对CAN总线进行系统的研究。从硬软件的角度全面分析并通过实验调试,达到了预期的效果,实现了CAN通讯,对CAN总线进行了模拟。

在实验中,还是存在一些不足,需要改进。比如本文中的通讯,尽在两点进行了CAN通讯,只是对屏蔽门系统进行了初步的点对点的模拟。而实际应用中,CAN通讯为一个整体系统,是以中央接口这一个点,从而连接一个接线网络。如何将点对点的通讯转换升级成一点对一个网络系统的通讯,需要更为精密的通讯设备和更为强大的功能软件,实现网络通讯。

致 谢

时光飞逝,在我论文完成之际,也是我即将告别大学生活、告别朝夕相处的老师和同学之时。四年虽短,却使我经历了不少事,期间的很多人都是我应该深表谢意的。

首先感谢学校学院领导老师们对我的栽培和教诲。

其次感谢李丽娟老师,在完成论文的过程之中,李老师给予了我很大的支持和协助。当我需要帮忙的时候,她都鼎力相助,跟她的讨论就能使我思路豁然开朗。我的论文工作自始至终都是在李老师全面、具体、悉心的指导下进行的。李老师严谨的治学、勤恳的工作以及对教育事业的孜孜不倦,都给我留下了深刻的印象,谨此向李老师致以衷心的感谢和崇高的敬意。

再次感谢师兄、同学们的帮助!

在四年的学习生活过程中,得到学院许多老师的关怀和帮助,还有很多在学习和生活中帮助过我的同学,在此向他们致以真诚的感谢!

参考文献:

[1] 王光旭.基于CAN总线实现DSP与ARM通信[J].中国科技信息,2010,(11):101~102. [2] 尹盼春.地铁屏蔽门控制系统设计[D].南京:南京理工大学,2010.

[3]谭力铭.基于CAN总线的车载网络传感器协议的发展与应用[J].国外电子测量技术,2009,(11):26~29.

[4]王巍.基于CAN总线的车身网络设计[D].长春:吉林大学,2006. [5]吴金国.基于CAN总线的智能仪表的研究[D].上海:东华大学,2007.

[6]徐振东.基于CAN总线的可燃性气体监控系统的研究与设计[D].长春:吉林大学,2007. [7]耿方新.CAN总线控制器的研究与设计[D].北京:北京交通大学,2010. [8]熊晨阳.基于CAN总线的智能卡系统的研究和开发[D].济南:山东大学,2005. [9]吴文珍.基于CAN总线的智能检测仪的研究与设计[D].大庆:大庆石油学院,2006. [10]唐浩波.基于CAN总线技术的辐射检测系统的研制[D].成都:成都理工大学,2010.

[11]陈昕静.基于CAN总线分布式电机故障诊断系统平台的研究与实现[D].无锡:江南大学,2007. [12]曹万科.CAN协议车载网络若干关键理论研究[D].东北大学,2007. [13]王举有.基于CAN总线的汽车电子集中驱动单元设计[D].吉林大学,2010. [14]张海春.基于CAN总线的嵌入式控制器[J].微计算机信息,2009,(9):48-50. [15]代爱妮.基于CAN现场总线的测控网络研究[D].青岛:青岛大学,2005. [16]王珩.浅谈地铁门电气控制系统[J].地铁与轻轨,2003,(5):52-56. [17]杨丽杰.地铁屏蔽门系统技术浅谈[J].铁道机车车辆,2002,(2):29-31.

[18] 张新波,孙泽,罗峰.使用CANoe对车身控制器局域网络仿真的研究[J].江苏大学学报(自然科学版),2003,24(5):36-39.

[19]李鹏.地铁屏蔽门可控风口数值模拟研究[D].成都:西南交通大学,2010.

[20] 马海波. 基于CAN 总线的列车综合管理系统[ J]. 中国铁路, 2008( 6) : 32.

[21] 高青松. 基于CAN总线的列车无线同步控制数据采集系统计算机测量与制,2008,16( 3):333.

[22]李积英. 基于AT90CAN128. 单片机CAN. 总线实现方案的研究[ J]. 兰州交通大学学报( 自然科学版) , 2007(2) : 32-34.

[23] 刘维弋. 基于CAN 总线的通信系统的设计与实现[ J]. 计算机技术与发展, 2007( 12): 207-208.

[24]饶运涛,邹继军,王进宏,郑勇芸.现场总线cAN原理与应用技术.第2版.北京.北京航空航天大学出版社2007.

[25]陈绍双.基于CAN总线的车载网络信息平台的设计与研究[D].杭州:浙江大学,2007. [26]梁永波.地铁屏蔽门控制系统介绍[J].科技资讯,2009,(19):69.

[27]Hui Guo,Ying Jiang.Application Layer Definition and analyses of Controller Area Network Bus for Wire Harness Assembly Machine.Control and Automation.2006.10-11

[28]Steve Corrigan.Introduction to the Controller Area Network Bus for Wire Harness Assembly Machine.Control and Automation.2006.10-11

[29]RI Davis,A Burns,RJ Bril,JJ Lukkien.Controller AreaNetwork (CAN) schedulabilit analysis.Real-Time System.2007.Volume35.239-272.

[30]M van Osch,SA Smolka.Finite-state analysis of the CAN bus protocol.High Assurence Systems Engineering.2001.

初始化子程序: CANINI:

MOV DPTR,#MOD MOV A,#09H MOVX @DPTR,A

MOV DPTR,#CDR MOV A,#88H MOVX @DPTR,A

MOV DPTR,#IER MOV A,#0DH MOVX @DPTR,A

MOV DPTR,#AMR MOV R6,#4

MOV R0,#DAMR AMR : MOV A,@R0

MOVX @DPTR,A INC DPTR DJNZ R6,AMR

附 录

SJA1000 进行初始化.

PeliCAN 模式关闭时钟输出CLKOUT

RAM 中的首址 ;方式寄存器;进入复位模式对;时钟分频寄存器;选择;中断允许寄存器;开放发送中断超载中断和错误警告中断;接收屏蔽寄存器;接收屏蔽寄存器内容在片内

;接收屏蔽寄存器赋初值

本文来源:https://www.bwwdw.com/article/yocg.html

Top