版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
精品文档-下载后可编辑CAN总线隔离器的设计与应用-设计应用1引言
CAN(ControllerAreaNetwork),即控制器局域网,是应用广泛的现场总线之一,CAN总线以其实时性强,可靠性高,结构简单,互操作性好,价格低廉等优点,可应用于高速网络和低成本的线路网络。这里提出一种CAN总线隔离器的通讯系统,将其应用于某飞行器到地面的通讯网络,实现飞行器和地面的速度隔离,从而使飞行器和地面之间能够稳定实时通信。该系统设计在分析CAN总线2.0B协议的基础上,采用结构化方法独立设计飞行器和地面双方的通信协议。底层模块的硬件设计是以C8051F040高速型单片机为,其内部集成CAN协议控制器,因而只需增加CAN收发器就可实现CAN智能节点设计,比传统的由单片机与CAN协议控制器共同组成的CAN节点更简单,可靠,易操作。而CAN总线应用层协议由用户自行定义编写,使其更符合该系统设计要求。目前整个系统运行良好,性能稳定,通信冗余度好,符合工业现场使用要求。
2基于C8051F040的CAN智能节点设计
图1是基于C8051F040的CAN总线硬件接口原理电路图。通过C8051F040内部所集成的CAN控制器,为了增强系统的抗十扰能力,在CAN控制器与TJA1040之间接入光电耦合器6N137,从而实现TJA1040与外界CAN通信。事实上,集成收发器TJA1040本身具有瞬间抗干扰能力,可保护总线,降低射频干扰,以实现热保护功能。因此,在干扰不严重的廊用场合,无需增加光电隔离,使得系统达到通信速率或距离。如果使用光电隔离器,应尽量选用高速光电隔离器,以减少CAN总线有效回路信号传输的延时时间。由于CAN隔离器需通过CAN总线采集输入输出模块的数据信息,干扰较大,为了系统的稳定可靠性,需加光电隔离器。通过CAN2.0B兼容CAN2.0A协议的连接通讯测试,光电耦合器6N137上升时间为30ns(典型值),隔离电压为3000V,其支持频率值超过30MHz。
为实现系统的稳定可靠性,该系统设计采用冗余设计,利用双通道光耦HCPL2631隔离并产生控制信号,控制两个单刀双掷开关MAX4635,从而实现CAN智能节点的切换。
3CAN总线隔离器设计
该系统设计的CAN总线隔离主要由发送和接收两部分组成。发送和接收部分都由数据指令配置、数据处理和数据传输3个单元组成,如图2所示。其中发送部分:上位机指令配置完后,通过FPGA传输给单片机,单片机利用自身所带的CAN总线,经隔离处理后到达总线驱动器,然后通过CAN总线输出数据。而接收部分正好相反。该系统设计将飞行器速度设置为500kHz,地面速度设置为50km/s,从而更好模拟飞行器和地面的通信。
4隔离器收发双方通信协议
总线隔离器分为飞行器高速接口和地面低速接口两部分,要求隔离器能通过所有地面上行到飞行器的数据。本系统CAN总线采用主从方式,所有总线数据统一采用数据帧,不用远程帧,数据长度为8字节,为0字节。根据数据链路层协议,仲裁场标准标识符共11位(ID1O~ID0),系统通过标识符确定数据传输的优先级。本协议规定,ID除表示优先级外,还是数据接收目的节点、数据发送源节点与数据类型。具体说明11位ID:ID[1](ID的0~3位)为数据接收目的节点;ID[2](ID的4~7位)为数据发送的源节点;ID[3](ID的8~10位)为数据类型。
本协议中,飞行器系统和地面系统都有3个节点,节点编号和ID号如表1所示。
5CAN隔离器的软件设计
5.1CAN总线初始化
CAN总线初始化包括:I/O的配置、外部晶体振荡器的配置、CAN总线的开闭、发送和接收初始化。初始化程序如下:
voidinitial_can(unsignedcharMsgNum,unsignedlintid)
{SFRPAGE=CONFIG_PAGE;
5.2发送和接收程序
CAN报文发送是由CAN控制器自动完成,用户只需根据接收到的数据帧的识别符,将对应的数据转移到发送缓冲寄存器,然后将此报文对象的编码写入命令请求寄存器启动发送即可,而发送由硬件完成。这里使用定时更新发送报文对象中的数据,发送数据由控制器自动完成,当收到一个数据帧时,可将具有相同识别符的数据帧发送出去。其发送程序代码如下:
CAN报文的接收与发送相同,由CAN控制器自动完成,接收程序只需从接收缓存器中读取所接收的数据,再进行相应处理。其方法与发送程序基本一致,这里不再赘述。
6关键技术设计分析
6.1冗余设计
工业控制现场状况复杂,因外力所致的电缆接触故障率远远高于节点的故障率,一旦电缆发生故障,总线就会失去通信能力,并导致系统瘫痪,对工控系统的健壮性构成威胁。解决这一故障简单、有效的办法是对故障率较高的物理介质进行冗余设计。即使用2条总线电缆、2个CAN总线收发器,但只用1个总线控制器。仲裁电路自动监测总线状态,并自适应选择正常的电缆完成通信任务。发生电缆故障时,设备自动报警,提醒工作人员进行检修。检修过程中,设备使用备用电缆继续工作。电缆冗余设计可实现与通常的CAN总线通讯系统代码级兼容。仲裁电路设置于总线控制器与2个总线收发器之间,监测CAN总线电缆状态,实现自适应切换和报警。设备向其他节点发送报文时,总线控制器向2条总线同时发送相同的报文;而接收报文时,仲裁电路在无电缆故障时,一直使用总线1(主总线)进行报文接收。如果总线2(从总线)出现故障,故障监测电路就向主控计算机发出中断信号报故障,同时处于正常状态的总线1仍承担正常通讯任务;如果总线1出现故障,故障监测电路在向主控计算机发出中断信号的同时,自动切换成总线2,以保证设备正常工作。总线切换动作只会出现在正在使用的电缆发生故障时,这样可提高通讯的稳定性,降低应答失败的几率。
6.2接收数据时ID不滤波的实现
在CAN总线的接收过程中,一般实现的都是发送ID和接收ID相匹配的方式,也就是说在接收方要进行接收,而ID滤波,而本设计实现任意接收方式,只要有数据就开始接收不进行ID号的滤波,这样可更好进行测试,例如某个设备所携带的ID号,由于各种原因与接收方所接收的ID不匹配,这样就可判断出所发设备可能收到干扰,或者所发设备自身出现了问题。这种ID号不过滤的方法主要通过对接收设备的命令请求寄存器、消息掩码寄存器、仲裁寄存器、消息控制寄存器和命令掩码寄存器的设置来实现。其实现程序如下:
7结论
本文提出一种CAN总线隔离器的实现方案。利用具有CAN总线控制器的C8051F系列单片机实现了CAN智能节点,增加CAN节点的冗余设计,提高通讯的稳定性,降低应答失败的几
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度智能化企业自愿解除劳动合同模板及操作指南
- 二手车交易中的诚信体系建设考核试卷
- 农业节水技术研发考核试卷
- 供应链案例分析与启示考核试卷
- 宠物医院宠物医疗援助基金申请考核试卷
- 课程设计总结gps
- 阅读课程设计初中
- 高温炉课程设计
- 车辆防盗系统课程设计
- 饮品商业插画课程设计
- 《新生儿预防接种》课件
- 小学五年级上册数学寒假作业每日一练
- DB1303T382-2024 创伤性休克患者护理指南
- 2024年03月内蒙古中国银行内蒙古分行春季校园招考笔试历年参考题库附带答案详解
- 2024-2025学年华东师大新版八年级上册数学期末复习试卷(含详解)
- 《道路车辆 48V供电电压的电气及电子部件 电性能要求和试验方法》文本以及编制说明
- 2024年新高考I卷数学高考试卷(原卷+答案)
- 十八项医疗核心制度考试题与答案
- 2024年鄂尔多斯市国资产投资控股集团限公司招聘管理单位遴选500模拟题附带答案详解
- 篝火晚会流程
- 船形乌头提取工艺优化
评论
0/150
提交评论