发电机状态监测仪中CAN适配卡的设计方案

发布者:喜悦的38号最新更新时间:2011-08-09 关键字:适配卡  IDT7132  双口RAM  SJA1000 手机看文章 扫描二维码
随时随地手机看文章

CAN(Controller Area Network)控制局域网络是一种串行通信网络。它采用了许多新技术和独特的设计,因而使其在可靠性、实时性和灵活性方面具有突出的优点。这些卓越的性能使CAN总线得以在全球范围内一直保持高速发展。考虑到CAN总线的成长性及许多单片机中集成有CAN总线控制器,且CAN总线专用控制器IC术易从市场上得到,因此,在笔者设计的发电机状态监测仪中采用CAN总线技术。

1 CAN总线系统的组成模式

基于现场总线的发电机状态监测仪由智能数据采集模块、工控机(IPC)、CAN总线三部分组成。其系统结构如图1所示。每个模块通过CAN总线与一台工控机系统。工控机的主要功能是对智能数据采集模块的参数进行设置,并通过现场总线网络实时获取智能数据采集模块的数据,如发电机事件记录、故障录波;监测数据的实时显示、趋势分析、异常报警和完成报表输出等功能。CAN总线部分主要是由CAN总线适配卡、通讯介质以及相应的通讯软件构成。

2 CAN智能适配卡的硬件结构

CAN总线的卓越性能为发电机状态监测系统的高速数据通讯提供了保障,但很多工业PC机并不带有CAN总线接口,为了在IPC上扩展CAN总线的监控和管理功能,笔者设计了一块适配卡插队IPC的扩展插槽内,以完成CAN接口与IPC的扩展功能。

CAN总线PC适配卡的硬件电路如图2所示,它主要包括89C52单片机(内含8K E2PROM、256字节RAM)、地址译码与中断信号控制逻辑电路EPM7128S、共享存储器双口RAM(IDT7132)、CAN控制器SJA1000芯片和光电隔离电路(6N137)以及CAN驱动器82C520等部分组成。

要实现PC机和CAN控制器之间的数据传送,必须在PC机和适与卡上的MPC之间建立起双向的数据交换通道。通过ISA总线实现单片机系统与主机之间交换数据有以下两种实现方法:一是静态数据传送,这种方法采用并行接口器件(如8255)或锁存器(如74LS373)等构成一字节深度的FIFO。该方法较为简单,但一次传输的数据量小,因而只适应数据量小、速度要求不高的场合;二是共用单片机系统外部数据存储器。此时可直接采用集成双端口RAM或在通用RAM加上一些控制逻辑组成双口RAM电路。集成双口RAM是一种性能优良的快速快通器件,适用于多CPU分布式系统及高速数字系统中。它提供了两路完全独立的端口,每个端口都有完整的地址、数据和控制线。对器件的使用者而言,它与一般RAM并无大的区别,只有在两边同时读写同一地址单元时,才发生争用现象。利用双口RAM提供指示信号,采用适当的通信规则就可避免争用,以实现快速数据的交换。集成双口RAM不仅易于实现,而且价格也不高。CAN信号传输采用短帧结构(8个字节),适配卡对双口RAM的容量要求并不大,故可选用IDT7130、IDT7132、IDT71231等。本文选用2k×8位的带忙信号BUSY的IDT7132。CAN通信控制器选用Philips公司生产的能支持CAN2.0B协议并与82C200完全兼容的SJA1000,如把它视为存储器映射的寄存器,则易于与89C52接口。为增强CAN总线的差动发送和接收能力,本设计采用了CAN总线收发接口电路82C250。在SJA1000与从机的82C250之间接入光电耦合器可增强系统的抗干扰能力。光耦可采用高速光耦6N137。光耦两侧应用采用DC-DC隔离电源,可选用力源公司生产的PS250DC5D5S。[page]

3 伸裁方式

双口RAM通信方式的关键是处理好争用现象,避免因此而产生的读写错误。IDT7132能够提供硬件判优方式,并可利用BUSY引脚的信号来提高系统的灵活性。在图2的硬件电路中,由于IDT7132内含硬件判优电路且两边端口都有BUSY引脚。因此为两端口争用同一地址单元时,其片内硬件电路可根据两边的地址、片选以及读写信号到达选后顺序来裁决哪个端口有使用权。

由此可知,BUSY信号可直接至支持插入等待时序的CPU如80C196的READY引脚,而无需软件支持。在本卡中,由于89C52没有READY信号,因而在89C52发出读写IDT7132命令时将锁存BUSYR信号,而只需读P1.6口的值就可判断刚才对IDT7132读写时是否存在冲突。当P1.6的值为1时,刚才询门不存在冲突;当1.6的值为0时,刚才询问存在冲公安厅。此时要重发读写IDT7132的命令。由于ISA总线没有READY信号,也没有通用的I/O引脚,因而可将来自IDT7132的BUSYL信号接至数据线的最低位D0。但因为除了查询BUSYL引脚电平时外,BUSYL不应接到D0,因而应采用三态门74L125。BUSYL接三态门的输入端,三态门输出端接ISA总线数据线D0位,其门控信号由A9~A5产生,故将占用ISA总线一个I/O端口。设计时应该选用一个空闲的端口号,这里选用330H(双口RAM侧,PC机则需换码),即将A9~A5译码为11001.具体电路如图3所示。

4 适配卡的软件设计

适配卡主要用来承担上位计算机和CAN节点之间的数据转发任务,其软件设计也包括两部分:第一部分是PC机端的应用程序接口(API)函数,负责完成PC机端与双口RAM之间的通信,该部分可以采用可视化的编程工具如C++Builder编写。PC机端软件功能主要包括向适配卡上的双口RAM发送控制命令、数据命令和请求数据命令,还将接收到的数据进行后处理(如,显示、报表等);第二部分是卡上单片机端的程序设计,负责单片机与双口RAM以主导CAN控制器之间的通信,该部分可以采用汇编语言ASM51或Franklin C51编写.软件设计的主要任务是向CAN控制器转发来自PC机的命令,并由CAN控制器进一步转发至CAN节点;同时,将CAN控制器接收的来自CAN节点的数据、状态信息送到双口RAM。

5 需要说明的问题

CAN的协议规范(CAN Specification 2.0A/B)只是一个低层的规范。因而还需要一个高层/应用层的协议,CAN的能力是由高层协议来选定和限制的。目前国际上CAN的应用层协议很多,如DeviceNet、CANopen、CANKingdom等,但用户可以定制更简单的应用层协议。应用层协议的任务一方面是对将要发送的数据进行分类、拆卸、合并,并确定发送对象,然后根据CAN的数据链路层协议规范填写CAN的各个信息帧。另一方面是解释接收到的数据的具体含义并对其进行相应的处理。

 

关键字:适配卡  IDT7132  双口RAM  SJA1000 引用地址:发电机状态监测仪中CAN适配卡的设计方案

上一篇:基于ADS1252的数据采集模块设计
下一篇:利用USB2.0技术的高速双路数据采集系统

推荐阅读最新更新时间:2024-03-30 22:17

RS232通信网络与CAN总线通信网络互联设计
    目前工业设备之间的通信很多采用RS232接口,但由于RS232通信距离短(根据EAT/TAI-232标准,仅为15 m)、接口易损,而且只能进行点到点通信,不能直接组成多点通信网络。为了延长RS232的通信距离,并将RS232节点组成通信网络,目前广泛使用RS232/RS485信号转换器。但是,由于RS485通信本身的局限性,在实际应用中存在许多不足:总线效率低、系统的实时性差、通信的可靠性低、网络工程调试复杂、传输距离不理想、单总线可挂接的节点少、应用不灵活等。     基于CAN通信的优越性,本文介绍一种可以将RS232通信网络转换成CAN通信网络的方法,以更好地解决用户建立远程通信网络的问题。 1 CAN总线
[嵌入式]
SJA1000+C51
#include CANBUS.H //-------------------------------------define variable------------------------------------ unsigned char receive_counter = 0; unsigned char alc = 1; unsigned char ecc = 1; /************************************************************************ *函数原型: bit CAN_CREATE_COMMUNATION(void) *参数说明: 无 *返回值
[单片机]
基于CAN总线控制器SJA1000的自动络筒机通信系统方案
  1、 引言   随着纺织工业技术进步,纺织机械日益趋向成套化、自动化和系统化。自动络筒机是纺织工业上档次的关键设备,起着承上启下、改善纱线性能的重要作用,它是纺部的整理设备和织部的准备设备,机电气一体化,自动化程度高,速度快,生产效率高。自动络筒机是一种具有高速、高产、高效、高质和高自动化功能,并综合了最新机械、电子、材料、仪表及计算机信息处理和控制等技术的机电一体化产品。自动络筒机的出现,从根本上改变了普通络筒机的面貌,其生产的筒子卷装大,络纱速度高,对纱线的络纱全过程自动化控制程度和劳动生产率高,从而成为机械、电子、气动、仪表和计算机信息处理相结合的高新技术产品。自动络筒机是科技含量最高的纺织机械设备,有“纺织机械皇冠上的
[嵌入式]
基于SJA1000的CAN总线系统节点仿真平台的实现
   引言   控制器局域网(CoNtrollerAreaNetwork,CAN),是德国Bosch公司为汽车的监控系统而设计的总线式串行通信网络,它具有良好的组网灵活性、开放性、扩展性和兼容性,它的抗干扰、自诊断、自监控和纠错能力强,可靠性高,它的协议模型结构简单,实时性好,性价比高,便于开发,它是目前唯一有国际标准的现场总线,它的应用范围已经远远超出汽车监控系统,它适用于许多领域中分布式自动控制系统,如:工业过程控制和自动化,智能结构和分布管理等,成为很有推广普及应用潜力的现场总线。   为便于CAN总线在不同领域的推广普及应用,研制一种通用的CAN总线系统基本组成单元――节点的仿真平台,通过仿真使研究开发CAN总线系统的
[测试测量]
基于<font color='red'>SJA1000</font>的CAN总线系统节点仿真平台的实现
CAN总线智能适配卡的设计
摘要:采用P80C592FFA作为CAN控制芯片,使用CY7C0944PV-AC作为双端口存储器,并使用PCA82C250作为CAN控制器接口芯片,设计了CAN总线智能适配卡,提高了CAN总线适配卡的传输能力。针对CAN总线在特殊环境下容易受到外界干扰的弱点,使用6N137进行信号隔离,使该适配卡达到了本安型标准。 关键词:CAN总线 智能适配卡 信号隔离 CAN(Controller Area Network)总线最初是由德国BOSCH公司为汽车检测与控制系统而设计的。由于其显著的特点,其应用范围越来越广,已扩大到过程控制、机械工业、纺织机械、农用机械、机器人、数控机床、医疗器械及传感器等领域。目前,在国际上CAN总线已经
[传感技术]
STC89C52+SJA1000自收发程序记录
项目中需要使用到CAN控制器SJA1000芯片,使用的主控芯片是ARM9,但是在ARM9上怎么调试也不通,不得已,只好先测试下51系列的单片机上是否可以和此芯片协同工作,需要排除芯片的问题,但是发现当你不太了解一个新芯片的时候,若要操作该芯片,而你又没啥经验,是需要费很大的功夫的。所以把过程详细的记录下来,以备复习。关键还是得仔细看芯片数据手册。 使用到的芯片和资料详细列出如下: 1. 主控芯片(STC89C52RC),CAN控制器(SJA1000T),CAN收发器(PCA82C250)似乎PCA82C251更好些 2. 下载对应的芯片手册,以及SJA1000独立的CAN控制器应用指南.pdf。 部分电路图:
[单片机]
SJA1000控制器在多电机综合保护器中的应用
SJA1000控制器在多电机综合保护器中的应用 在矿井下生产作业时,良好通风是保证安全生产的关键。常用的通风设备一局部通风机用于调节井下通风状况,调控瓦斯浓度。风机中的电机和其他电机一样,在运行过程中因为负载、电网及电机本身等因素常出现过载、缺相、短路等故障,影响其正常运行,从而影响矿井的正常通风。为了适应矿井生产需求,综合多方面因素及项目要求,研制一台多电机综合保护器,采用AT89C52单片机对煤矿井下多台电机的故障实现综合保护。 综合保护器掌握的矿井环境及电机运行状况信息传送到地面监控中心,同时地面监控中心可以发送控制指令控制地下电机综合保护器。通讯方面,由于CAN总线与一般通讯总线相比.具有较好的可靠性、实时性和
[模拟电子]
<font color='red'>SJA1000</font>控制器在多电机综合保护器中的应用
基于PIC单片机通信适配卡设计
  CAN总线-控制器局部网(CAN)国际标准(ISO11898)。CAN总线与一般的通信总线相比,它的数据通信具有突出的可靠性、实时性和灵活性。   其特点可概括如下:CAN为多主方式工作。在报文标识符上,各节点分成不同的优先级。采用非破坏总线仲裁技术。只需通过对报文的标识符滤波即可实现点对点、一点对多点方式传送接收数据。直接通信距离最远可达零10km(速率5kbps以下);通信速率最高可达到1Mbps(此时通讯距离最长为40m)。CAN上的节点数主要取决于总线驱动电路,目前可达110个。报文采用短帧结构,传输时间短,受到干扰的概率低。每帧信息都有CRC校验及其他检错措施,具有极好的检错效果。通信介质可为双绞线、同轴电缆或光纤
[单片机]
基于PIC单片机通信<font color='red'>适配卡</font>设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新测试测量文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved