CAN总线仿真环境的构建及在教学中的应用[权威资料]_第1页
CAN总线仿真环境的构建及在教学中的应用[权威资料]_第2页
CAN总线仿真环境的构建及在教学中的应用[权威资料]_第3页
CAN总线仿真环境的构建及在教学中的应用[权威资料]_第4页
CAN总线仿真环境的构建及在教学中的应用[权威资料]_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

CAN 总线仿真环境的构建及在教学中的应用 本文档格式为 WORD,感谢你的阅读。 摘 要: 首先对 CAN 总线通讯协议进行分析,然后对嵌入式硬件仿真环境 SkyEye 的结构进行详细的研究,利用SkyEye 构建了 CAN 总线通讯仿真环境。为了评估所设计的CAN 仿真节点的性能,对 CAN 节点进行了仿真实验。仿真实验表明,我们所设计的 CAN 节点不仅能正确实现节点间的数据通信,还能达到较高的 CAN 网络通信速率。最后阐述了在计算机实践课教学中的应用。 关键 词: CAN 总线; SkyEye; 仿真; 计算机实践课教学 TP311 文献标志码: A 1006-8228( 2014) 06-44-03 0 引言 由于在汽车工业的快速发展过程中,需要安装在汽车上的电子设备不继增加,因此点对点连接这些汽车电子设备的专用电子线路迅速膨胀,连接起来更加复杂和繁琐。为进一步提高系统的可靠性和故障诊断能力,将连接线路进行简化,使数据资源在各电控单元之间进行共享更加方便,汽车网络总线技术就是有效解决这个问题的方法 1-2。 在车载网络通信中, 由于 CAN 总线具有布线简单、典型的总线型结构、能够有效地节约布线和维护成本、性能稳定可靠、实时性与抗干扰能力强、传输的距离远等一系列优点,因此在现代工业控制中应用广泛。由于 CAN 总线通信网络的设计有很多参数需要设置,而 CAN 总线工作性能直接受到这些参数设定的影响,但是在没有辅助工具帮助的情况下,参数的有效设定只能凭汽车工程师的经验和不断地尝试摸索。因此,需要有合适的工具和可行的方法对 CAN 总线网络进行有效的仿真和评估,从而提高汽车工程师设计 CAN 总线网络以及在评估 CAN 总线网络性能方面的效率 4。 1 CAN 总线协议分析 为了能实现对 CAN 总线网络的仿真,非常有必要对 CAN总线通讯协议进行深入研究。须建立起任意两个或多个 CAN设备之间的兼容性,这是 CAN 总线通讯协议定义的目的。 CAN 总线具有以下特性 5: 报文的优先权; 保证延迟时间; 设置灵活; 系统内数据的一致性( System Wide Data Consistency); 多主机(对等); 错误检测和错误标定; 当总线处于空闲时,能够自动将破坏的报文重新传输; 能够将网络节点的永久性错误和暂时性错误区分开,并且可以将 CAN 的错误节点自动关闭。 CAN 的 ISO/OSI 参考模型的分层结构如图 1 所示 6。 从其参考模型的分层结构可以看出, CAN 通讯协议的结构划分为两层:数据链路层( Data Link Layer)与物理层( Physical Layer)。在 CAN 中,为了解决不同通信节点之间进行消息传输时的电气属性,物理层为所有通信节点共享使用。 2 嵌入式硬件仿真环境 SkyEye 的结构 利用仿真软件来对嵌入式系统的各种硬件进行模拟,开发人员不需要利用开发板,直接在仿真环境中运行嵌入式系统,实现嵌入式软件的开发、调试、运行,能够大大提高开发速度并降低开发成本。 SkyEye 是一个开源软件项目,中文名字为 “ 天目 ”7 ,能够在通用的 Windows 操作系统和Linux 操作平台上对目前主流的嵌入式开发板及外部设备进行软件仿真,实现一个可扩展的硬件模拟框架,使系统软件能够在仿真平台上运行。 SkyEye 软件的核心在于目标模拟模块,操作系统与系统软件在 SkyEye 仿真环境中运行时可以使人根本意识不到是在一个计算机的虚拟系统上运行。 SkyEye目前在教学、科研等众多领域都得到了广泛应用。 目前 SkyEye 的最新版本已经完全和原先的GDB/ARMulator 分离,并对原先的 GDB/ARMulator 进行了全面的扩充和改变 8。总体上分为四个模块仓库: 体系结构模块仓库( Architecture Module Repository); 外设模块仓库( Device Module Repository); 接口模块仓库( Interface Module Repository); 功能模块仓库( Function Module Repository)。 SkyEye 仿真环境结构如图 2 所示 9。 3 软件仿真平台的构建和实现 为了实现对 CAN 总线通讯协议进行仿真,我们需要在不具备硬件环境的条件下来构建软件仿真平台。通过这个软件仿真平台,能够一目了然地观察到 CAN 总线的数据正常发送、接收、处理和总线的仲裁,以及错误节点的故障界定等运行过程。 SkyEye 仿真平台还可以运行自定义的 CAN 总线应用层协议 10。 构建软件仿真实验平台的主要步骤为:第一步,在电脑的操作系统里安装虚拟计算机软件 VMware Workstation;第二步,打开虚拟计算机软件 VMware Workstation,将红帽子 Ylmf Linux Y1.5 系统直接安装在虚拟环境中;第三步,打开 Linux 操作系统,在 Linux 环境中将 SkyEye 仿真软件进行安装。程序采用 Microsoft VC 实现,采用的实验环境为Dell Inspiron 15R-5537 笔记本, 2.30GHz 主频,内存 4GB,100Mbps 的网络带宽 2。 仿真 CAN 总线发送和接收数据的具体实验步骤如下。 用超级用户登录红帽子 Linux 系统。 打开一个终端。 切换到 /dev/shm/目录: cd /dev/shm/。 创建目录 can_vbus: mkdir can_vbus。 更改目录 can_vbus 的访问权限为 0666: chmod 0666 can_vbus。 切换到用户根目录: cd /home/lh1111/。 进入 CAN 目录: cd CAN/。 进入 Sja1000-vcan 目录: cd Sja1000-vcan。 进入 vcanbus 目录: cd vcanbus。 运行 vcanbus 程序: ./vcanbus。 打开另外一个终端。 切换到用户根目录: cd /home/lh1111/。 进入 asp 目录: cd asp。 因为 SkyEye 已经被安装在 /bin 目录下,所以运行SkyEye 的命令为: skyeye -e asp -c skyeye.conf( -e 选项表示要执行的目标文件, -c 选项表示配置文件),这时可以在终端上看到显示信息(该窗口表示的是发送节点)如图 3所示。 按上述步骤所设计的仿真方案,我们可以利用 SkyEye软件仿真平台较为 真实地模拟出汽车类 CAN 网络应用程序开发的环境和过程。 4 实验结果分析 四种传输速率下的测试平均时间如图 5 所示。从图 5可以直观地看出:它是一个从高到低的平均传输时间,考虑系统负载方面,负载越大,则系统运行越慢。最左边的矩形表示:在 200ms 的传输速度下,相比其他三种传输速度下的延迟时间要高得多,系统的负载是最高的,也就是说系统的反应时间就越长。当传输速率达到 500ms 以后,传输延迟时间开始趋于平均,这说明系统的负载(即运行负荷)没有那么大了。从以上仿真实验可以看出,通过 SkyEye 硬件 模拟平台对 CAN 通讯协议进行仿真,我们所设计的 CAN 节点不但在节点间的数据通信上是正确的,而且 CAN 通信网络也能达到较高的传输速率。实验结果表明,所设计的仿真方案是有效和可行的。 5 在计算机实践课教学中的应用 目前各高校在计算机实践课教学,特别是实验室建设方面都有很大投入,但是由于各种原因,比如学生人数多、实验室教学任务繁重,而有些实验需要移除计算机还原卡等保护工具,从而导致实验室维护起来困难。在实际的计算机实践课教学过程中,造成了部分实验由于缺少实验环境而无法按要求实现,这是影响教学 质量提高的一个瓶颈。因此创建可行的实验环境就显得尤其重要。仿真环境的构建,即利用虚拟机技术就可以很好地解决这个问题。通过安装虚拟机软件,在原有的计算机硬件设备配置不变的前提下,构建SkyEye 软件仿真平台,虚拟计算机、网络设备等,可以轻松地构建虚拟的计算机网络实验环境。目前虚拟机技术在我校实验室中得到了推广应用,在 “ 操作系统 ” 和 “ 计算机网络 ” 课程的教学过程中,使用虚拟机技术构建仿真实验环境进行实践课的教学,取得了较好的教学效果,有助于教学质量的提高。 6 结束语 为了方便 CAN 总线网络应 用的开发,需要有可行的方法和合适工具对 CAN 总线网络进行有效而快速的仿真和评估。本文研究的目的在于开发一套基于 SkyEye 的 CAN 总线通信协议仿真工具,借助于 SkeEye 虚拟机的功能,并加入 CAN网络协议的支持,用于 CAN 总线应用的分析和评估。仿真实验表明,该方案是有效、可行的。在目前的计算机实践课教学中,使用虚拟机技术构建仿真实验环境进行实践课的教学,可以充分利用实验室的资源,取得良好的教学效果,提高教学质量。 参考文献: 1 姚竹亭,吴立新,潘宏侠等 .基于 CAN 总线的车辆控制系统 设计与实现 J.火力与指挥控制, 2009.34( 6):138-140 2 刘辉 .基于 SkyEye 的 CAN 网络节点的仿真研究 D.湖南大学湖南大学硕士论文, 2012: 1-20 3 才红玉 .基于 CAN 总线的车载网络通信软件的研究与实现 D.西南交通大学西南交通大学硕士论文, 2010: 1-2 4 Luis M P, Francisco V.Reliable Real-Time Communication inCAN NetworksJ. IEEE Trans.on Computers, 2003.52( 12): 1594-1607 5 Witkowski T, Blanc N, Kroening D, et al.Model CheckingConcurrent Linux Device DriversC. In: Proc of the 22nd IEEE/ACM international conference on Automated software engineering.Atlanta, 2007.501-504 6 汪瞳 .CAN 总线网络仿真系统开发 D.哈尔滨工程大学哈尔滨工程大学硕士论文, 2007: 3-15 7 尹文超,陈渝,康烁等 .SkyEye 模拟器的 LCD 及TouchScreen 模拟模块的设计、实现与验证 J.计算机科学,2005.32( 6): 189-192 8 邓小武,李森林,胡萍 .SkyEye 开源软件在嵌入式系统仿真中的应用研究 J.电脑与电信, 2012.7: 32-34 9 Lee O, Jung S C, Ahn H C, et al. APROV: Another Program Verifier for Embedded Linux Device DriversC. In: Proc of 10th International Conference on Advanced Communication Technology.Korea, 2008: 105-109 10 Wang A P, Hsu H H. Remote Monitoring and Control via the Intelligem Database Gateway for the CAN-based WheelchairC.IEEE International Conference on Networking.Sensing and Control, 2009.1: 445-450 11 王邦继,刘庆想,李相强等 .CAN 总线应用层协议的研究与实现 J.计算机工程与应用, 2011.47( 20): 14-16 12 夏继强,薛利强,满庆丰等 .时间触发 CAN 总线实时性分析及评估方法 J.北京航空航天大学学报, 2012.38( 2): 1-6 文档资料: CAN 总线仿真环境的构建及在教学中的应用 完整下载 完整阅读 全文下载 全文阅读 免费阅读及下载 阅读相关文档 :基于 Android 和网页解析的教务系统设计与实现 基于移动平台的校园资讯系统设计与实现 基于身份的数字签名方案研究 系统可靠性技术在智能手机 Message 开发过程中的应用研究 云环境下的一种并行任务划分方法研究 语音自动断句及外语视听教学资源的同步整合 基于 UDP协

温馨提示

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

评论

0/150

提交评论