ImageVerifierCode 换一换
格式:DOC , 页数:5 ,大小:51KB ,
资源ID:1611062      下载积分:10 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-1611062.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于CAN总线的水下航行器的设计.doc)为本站会员(gs****r)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

基于CAN总线的水下航行器的设计.doc

1、基于 CAN 总线的水下航行器的设计摘 要为满足水下航行器对实时数据的通信和控制的要求,设计CAN总线通信,实现基于 CAN总线的水下航行器的控制系统,将水下航行器分为若干个系统,对应不同的 CAN总线节点,用 CAN总线构成多主站分布式控制系统,实现水下航行器的实时通信。试验表明,该总线结构可以使系统更加精简,扩展性强,指令相应速度快,通信性能得到进一步的增强。 关键词CAN 总线 水下航行器 节点 中图分类号:TH56 文献标识码:A 文章编号:1009-914X(2015)16-0228-01 1.引言 水下航行器是一种具有自适应能力,实现对各控制器及执行机构的控制,并根据传感器的信号、

2、控制器反馈信息以及环境的变化而做出规划和决策。主要有集中式和分布式控制,考虑到可扩展性、安全性、模块化和分舱断等特点,分布式系统使用较为普遍,由于 CAN总线的低成本、总线利用率高、数据传输距离远、高效的数据传输速率、可根据数据报文的 ID决定接收或屏蔽报文、可靠地错误处理和检测机制、自动重发、节点在错误严重的情况下具有自动退出总线的功能等特点,我们在基于 CAN总线下对水下航行器进行设计并控制,并通过实物调试与试验,具有稳定性和可靠性。 2.系统结构 水下航行器通讯系统主要由 GPS、惯性导航系统、方向舵、电机、升降舵、潜浮系统、电源管理系统、状态记录系统、深度计组成,各个系统为 CAN总线

3、一个节点,如图 1所示。在 CAN总线首尾接上各接上 120欧姆电阻作为匹配电阻。 3.数据传输 Can 总线上数据传输的数据主要有航行控制命令和各控制器的状态信息。数据的传输只要分为三类: 1.主控制器不断地在总线上轮询发送各个控制器的查询信息,各控制器根据发送的指令信息返回状态信息。 2.主控制器根据实时的状态信息,求出下一时刻的位置信息,对各控制器发送航行控制指令,使水下航行器按照规定的轨迹进行航行。 3.主控制器根据各控制器返回的状态信息来判断是否出现紧急情况,并根据事件的轻重缓急来进行处理。如打舵上浮、吹除上浮。 4.设计 设计主要分为硬件和软件两个方面,主要对主控制器进行设计,主控

4、制器与各控制器之间通过 CANH、CANL 进行连接,根据通信协议要求进行实时通信。 4.1 硬件 主控制器由 M4060CPU模块,通过 PC/104/PCI总线实现对DETH、ADT-800 以及 A3-CSD的扩展,实现相互之间的控制与数据传输,利用精密电阻完成电流信号到电压信号的转换,使电流信号能被系统采集,另外 DC-DC模块实现对外部电源 24V到系统 5V电源的隔离与转换,并配有相应的保护与滤波电路,从而形成一个完成的数据采集与控制系统。 A3-CSD 为串口、CAN 通信集成扩展板卡,CAN 总线控制芯片为飞利浦研发的 SJA1000,集成在 PC/104通讯卡上。 内部结构图

5、入图 2所示: 4.2 软件 软件模块的核心为初始化,数据发送和数据接收。 4.2.1 初始化 初始化过程首先配置 SJA1000的工作状态,加载驱动后通过调用Can_Init函数进行初始化,初始化包括工作模式、滤波方式、通讯波特率、中断使能、接收码等,负责创建接收任务。 4.2.2 数据发送 发送数据模式负责将待发送的数据写入 SJA1000芯片,同时检测发送的结果。首先构造发送报文数据结构 Can_TPacket_t,然后通过调用Can_SendMsg函数发送报文。 4.2.3 数据接收 数据接收模块负责将 SJA1000芯片接收到的数据,读入软件缓冲区。数据接收模块包括中断服务和接收任务

6、。中断服务程序属于典型的结构,读取中断状态,根据中断状态分别处理中断。由于 SJA1000芯片接收FIFO状态寄存器与中断状态寄存器关联,即 FIFO只有为空,中断状态才会清空,导致必须在中断服务程序中将 FIFO中的数据全部读入软件FIFO。当中断处理完毕,中断服务程序触发信号量通知接收任务工作。首先在安装的回调函数中调用 Can_IsFifoEmpty查询 Can的 FIFO状态,若 FIFO中有数据调用 Can_ReadMsg读取 Can报文。 主控制器不断的向各控制器发送查询指令,各控制器根据帧 ID号判断是否做出响应,如表 4所示。 试验表明,CAN 总线实时通信系统,能满足系统各部

7、分的信息交换,保证系统的正常工作,而总线系统的优点使对系统数据通信的监控更加有效、及时,CAN 总线诊断协议的合理应用有利于系统的实时通信故障诊断与分析,系统易于增加新的 CAN节点,有利于系统功能的扩充和升级。5.结论 本文介绍了基于 CAN总线的分布式通信机制,将 CAN总线应用于水下航行器,构成了多主站的分布式控制系统,取代以往的集中式控制系统。该总线结构可以使水下航行器通信线缆得到有效的精简,并能使整机系统获得较好的通信性能。 参考文献 1 刘卫东,高立娥等.基于 CAN总线的自主水下航行器内部通信与仿真J.系统仿真学报,2007,19(6):1320-1322. 2 史久根.CAN 现场总线系统设计技术M.北京:国防工业出版社,2004. 3 黄时?纾?刘健,王国权.AUV 内部通讯总线设计J.机器人.2004,26(4):342-345. 4 韩进军,唐红卫.CAN 总线实时性研究及改进J.计算机测试与控制,2005,13(11):90-92.

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。