基于XPE的实时智能CAN卡数据采集系统

来源 :电子世界 | 被引量 : 0次 | 上传用户:xuliangaihui
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘要】本文介绍了基于XPE的实时智能CAN卡数据采集系统的硬件和软件设计架构,可以实时地对工业现场数据进行采集分析,实现一个高性能、高可靠性的智能CAN模块,保障PC机与底层CAN总线上其他CAN节点可靠的实时通信、稳定的数据交换以及智能的命令控制。
  【关健词】XPE;实时;智能CAN卡;数据采集
  1.引言
  随着工业控制的迅速发展,工业控制所覆盖领域也越来越广,由于它们主要工作在复杂恶劣的环境中,就需要实时地对它们所处的工作环境进行采集处理以避免产生严重的后果。基于XPE的实时智能CAN卡系统架构可以实时可靠地实现数据采集传输。通过循环采集各个节点的数据从而实现各个节点的监控。
  Windows XP Embedded是一种嵌入式操作系统,可以以组件化的形式提供Windows操作系统的功能。它包含10,000多个独立的功能组件,提供了业内领先的可靠性、安全性和性能,并且具备最新的多媒体、Web浏览、电源管理及设置支持功能。Windows XP Embedded还集成了最新的嵌入式支持功能,具有:对安全和可伸缩网络的支持;得到增强的实时处理能力;更为优秀的性能表现;更为丰富的多媒体和Web浏览功能;与个人计算机、服务器、Web服务以及其它设备更为出色的互操作性;行业领先的可靠性、安全性和性能等优点。
  CAN是控制网络Control Area Network的简称,最早由德国BOSCH公司推出,用于汽车内部测量与执行部件之间的数据通信。控制域局域网为串行通信协议,能有效的支持具有很高安全等级的分布式实时控制系统。由于其极高的性能和可靠的可靠性,已广泛用于环境监测、现场控制、楼宇安防、交通工具等。其信号传输介质为双绞线,通信速率最高可达到1Mbps,可挂接设备最多110个。
  传统的CAN卡数据采集系统通过CAN控制器与收发器直接与PC机相连中,实现对信息的采集,这种方法操作简捷方便,任务单一,但加重了CPU的负载处理,利用率低;通过引入MCU可以实现分步式的处理,对采集到的信息先由MCU进行判决,若有效,再上行至PC机进行处理,否则不予响应。这种方式既加快了处理速度,强化了任务处理,同时减轻了PC机的负荷。
  2.系统硬件架构设计
  2.1 硬件框架图(如图1)
  2.2 硬件设计过程
  基于X86的架构,采用Intel E600系列处理器。作为嵌入式系统芯片的E600系列处理器在架构和开放接口方面具有独特优势,它采用标准的PCI Express作为处理器与芯片的接口,增强了灵活性,提供了完善的信息系统解决方案。
  PCI桥接芯片选取PLX公司的PCI9054。PCI9054是PLX公司推出的一种32位33MHz的PCI总线主控I/O加速器,它采用PLX在业界领先的数据流水线框架,包含DMA引擎,可编程的PCI起始器和目标数据传输模式以及PCI信息传输功能。PCI9054提供了三种物理总线接口:PCI总线接口,LOCAL总线接口及串行EPROM接口。LOCAL总线的数据宽度为32位,时钟频率可达到50MHZ并且支持数据预取功能。PCI9054的本地总线有M、C、J 3种工作模式,可通过模式选择引脚MODE[1:0]进行控制,C模式能够满足绝大多数的应用需求,而且C模式的本地总线操作时序最为简单,逻辑控制相对容易,其开发难度相对较低。在此系统中,我们采用C模式进行开发。PCI9054工作时需要一片配置芯片EEPROM,在PCI卡上电时,配置PCI9054。
  CAN控制器有两种工作模式,BasicCAN模式和PeliCAN模式,常用于工业环境中的区域网络的控制。在该系统中,数据控制口直接与MCU的IO口相连,并采用5V隔离电源;采用光耦隔离芯片以避免由于地环流的损坏,增强系统在恶劣环境中使用的可靠性;为提高系统的灵活性与数据的吞吐能力。
  FPGA是该系统的设计核心部分。由于总线仲裁在PCI9054与本地总线的接口设计中,需要进行逻辑控制,因此总线仲裁逻辑成为关键核心部分,本地总线的所有控制逻辑必须服从于总线仲裁逻辑。由于FPGA具有灵活的编程特点,在进行控制时,FPGA具有比双口RAM更灵活的数据存取控制。当驱动程序和MCU底层程序同时对同一地址数据区域进行读写访问时,就会产生冲突,采用FPGA既可以实现数据的共享存储,同时可以提高供访问仲裁功能,根据应用需求仲裁访问权归属到某一方,并通知另外一方此时无法访问该地址(如图2所示)。
  FPGA实现PCI9054与双口RAM的读写接口,同时将数据缓存,实现双口RAM功能。在FPGA内部开辟了两个双缓冲区RAM,每个缓冲区的大小为4KB,一个缓冲区用于接收来自PCI9054的数据,另一个缓冲区用于接收来自MCU的数据。双缓冲的方式可以有效的避免读写冲突。
  FPGA接收PCI9054端写入的数据,写入RAM1中对应的地址中;如果PCI9054写发送中断寄存器(T_INT,地址0x2000),FPGA将与MCU连接的INT信号置一个高电平,待MCU读取地址0x000时,FPGA自动将中断信号置为低电平(清中断);MCU读FPGA时,FPGA将MCU端需要读出的数据从RAM1中读出后,放到MCU数据线上,由MCU读走;
  FPGA接收MCU端写入数据时,FPGA将MCU端写入的数据,写入RAM2对应的地址中;如果MCU写发送接收寄存器(R_INT),则FPGA将与PCI9054连接的INT信号(LINT)置一个低电平,待PCI9054读取地址0x000或者地址0x800时,FPGA自动将中断信号置为高电平(清中断);PCI9054读PFGA时,FPGA将PCI9054端需要读出的数据从RAM2中读出后,放到PCI localbus数据线上,由PCI9054读走;   3.系统软件框架设计
  3.1 软件整体框图(如图3)
  3.2 驱动程序设计
  驱动程序支持应用程序通过调用API函数对FPGA芯片进行读写操作,驱动程序运行于XPE操作系统环境下,类型为WDM驱动。智能CAN模块的驱动程序为CAN.sys,支持对设备的打开/关闭、读写控制、即插即用、电源管理等。驱动程序内部封装了5个API函数,分别实现了:CAN卡激活功能;CAN卡关闭功能;CAN卡的初始化功能;通过从双口RAM的指定地址读取数据到上层应用的指定的存储空间;将上层应用传入的指令写入到双口RAM的指定地址。
  3.3 MCU底层程序
  MCU底层程序运行于MCU芯片中,从FPGA芯片中读取CAN通信指令,进行指令解析,实现相应CAN通信功能(如图4所示)。
  当上电启动后,开始芯片初始化,进行CAN芯片配置,然后循环查询接收和发送数据,有接收数据到来,刚进入到接收数据处理函数进行处理,否则继续查询,发送数据过程亦然。当有外部中断时,响应中断,进入中断处理程序,读取上位机的命令进行命令处理;系统定时器中断时,将清零看门狗定时器,同时使软定时器计数减1。中断的优先级为外中断高于定时器中断。
  3.4 FPGA流程设计
  如图5所示,PCI9054的从模式单周期读、写时序是设计的难点,开始状态为空闲状态,若Lads为0时且LW/R为1时,转到写状态;若Lads为0时且LW/R为0时,转到读准备状态;在写状态时,此时状态下要置信号READY为0,表示写数据有效,当Blast为0时,继续执行写的过程,当Blast为1时,PCI9054不再请求本地总线,则跳转至空闲状态;在读状态时,此时状态下要置信号READY为0,表示读数据有效,读使能信号有效,表示数据有效可以读取,当Blast为0时,继续准备读数据,当Blast为1时,表明读取完成,转至空闲状态。
  4.结束语
  通过基于XPE实时操作系统的智能CAN模块,保障了PC机与底层CAN总线上其他CAN节点可靠的实时通信、稳定的数据交换以及智能的命令控制。PC机通过使用该智能CAN模块,可以减少通过CAN总线进行大量数据传输时CPU的负荷,同时拥有高数据吞吐能力。将该CAN卡加予拓展,可以广泛的用于车载信息系统、数字安全监控、工业自动化等行业,实现可观的应用。
  参考文献
  [1]夏宇闻.数字系统设计-Verilog实现[M].北京:高等教育出版社,2006.
  [2]张帆,史彩成.Windows驱动开发技术详解[M].北京:电子工业出版社.
  [3]PLX Technology Inc.PCI9054 data book.
  [4]王黎明,夏立,邵英,闫晓玲.CAN现场总线系统的设计与应用[M].北京:电子工业出版社.
  [5]徐美荣,蔡铭,董金祥.基于实时操作系统Windows的CAN驱动设计与实现[J].
  [6]徐木水,刘金国.基于FPGA的CAN总线通信接口的设计[J].电子设计工程,2010,10(18).
  作者简介:
  吴舒辞,教授,博士生导师,研究方向:控制理论与工程。
  刘俞,中南林业科技大学计算机与信息工程学院硕士研究生在读,主要研究方向:智能检测与自动控制。
  夏利锋(1979—),男,湖南长沙人,硕士,主要从事智能测控系统、虚拟仪器的研究。
其他文献
Abstract:This paper presents a 10bit 5MS/s pipelined analog-to-digital converter(ADC)for single carrier power line communication transceiver.It’s a low-power method by using switched op amp technique,
期刊
【摘要】本文研究了射频识别系统的工作原理,并对射频识别系统的构成、数据传输原理、基本工作流程、系统的分类、编码和调制以及数据的完整性给出了较为详细的理论研究。并对非接触式IC卡与读写器的通讯过程和电磁工作原理进行了简单的描述。描述了非接触式IC卡的国际标准ISO/IEC 14443协议,通过协议能更好地理解卡片与读写器间的传输过程,有利于下文读卡器的硬件设计和MCU的主程序实现。最后,本文在射频理
期刊
【摘要】校企合作是高校进行创业实践教育的重要途径之一,独立学院与研究型本科院校及高职类院校因其办学层次定位和人才培养目标不同,校企合作的定位也明显不同。探索符合独立学院办学和人才培养定位的校企合作模式,有助于独立学院培养实践能力强、创新创业意识强的“两强”应用型人才。  【关键词】独立学院;校企合作;企业校园分公司  知识经济时代下,校企合作成为高校培育实践型创新创业人才的重要途径。目前,独立学院
期刊
【摘要】独立学院的办学特色决定了他必须提升可持续竞争力,纷纷将人才培养作为独立学院的发展战略,确立和强化了专业理论与生产实践紧密结合的新型独立学院本科教育理念。独立学院支持鼓励学生参加校外学科竞赛,大学生电子设计竞赛是教育部倡导的大学生学科竞赛之一,在学生中有着较高的认知度。本文就独立学院学生的特点,对独立学院的电子设计竞赛做了一定的实践和探索。  【关键词】独立学院;电子设计竞赛;实践和探索  
期刊
【摘要】文章以高职高专旅游电子商务课程为例,从选材原则及来源、分类、问题设置三个方面探讨了教学案例的前期准备。  【关键词】教学案例;前期准备;高职高专;旅游电子商务  旅游电子商务课程是高职高专旅游管理专业的专业选修课。随着社会和科技的发展,旅游电子商务时代已经来临,旅游电子商务课程的开设正是顺应时代发展潮流,为培养新型的旅游管理人才打下基础。旅游电子商务课程内容比较抽象难懂,为了使学生更容易理
期刊
【摘要】本文就职业院校计算机基础教学的现状进行了分析,通过对计算机应用技术(NIT)考试产生的背景、概念和特点的阐述,提出职业院校计算机基础教学改革的新思路——NIT教学法。说明在职业教育中实施计算机应用技术考试,有利于计算机基础教育明确定位、办出特色,有利于职业院校计算机基础教学改革,提高教学质量,促进师资队伍建设,提高毕业学生就业的竞争力。  【关键词】NIT;考试;实施;职业教育;教学改革 
期刊
【摘要】对江苏财经职业技术学院的在校大学生创业现状进行了调查统计,围绕该校学生创业现状、对创业的认识、对创业教育的看法以及创业过程中的障碍与需要进行统计分析,并针对其中的问题提出相对完善的对策体系,为高职院校在校大学生自主创业提供理论帮助和智力支持。  【关键词】高职院校;大学生;创业;建议  一、引言  当今就业形势严峻,竞争激烈,大学生就业难已成为当今社会经济发展的热点和难点问题。据不完全统计
期刊
【摘要】本文简要介绍GPON发展前景和原理、特点、技术应用,并通过实际案例介绍了FTTH在接入网中的具体应用。  【关键词】GPON;FTTB;FTTC;FTTH;原理;应用  GPON是光接入网中颇具应用前景的技术,它打破了运营商传统的宽带接入方案,在解决宽带接入问题上是一种经济的、面向未来多业务的用户接入技术。GPON技术是基于最新一代宽带无源光网络接入标准,具有高带宽,高效率,大覆盖范围,用
期刊
【摘要】TCON芯片负责液晶显示系统驱动电路的时序控制,与外部显示屏连接时承受巨大的ESD冲击。本文通过设计合理的TCON芯片内部ESD防护电路,提出一种新颖的在片式ESD防护结构,降低ESD冲击对核心电路的不良影响,并经流片测试,数据与防护理论预期基本相符。  【关键词】TCON芯片;ESD;防护  1.引言  近年来世界范围移动通信产业的发展日新月异,新技术新应用创新不断深入,特别随着3G的普
期刊
【摘要】首先对对DAM中波发射机技术特点进行了介绍,然后结合工作实践对TSD-10DAM中波广播发射机的使用维护和故障处理进行了详细阐述。  【关键词】DAM中波发射机;日常使用;维护;故障处理  1.引言  伴随着世界进入信息时代,广播事业得到了迅速发展,我国中波广播发射机设备已全面走向全固态数字化,原有电子管乙类板调发射机已被淘汰,取而代之的是全固态PDM和DAM中波广播发射机,特别是DAM数
期刊