搜档网
当前位置:搜档网 › can节点设计

can节点设计

can节点设计
can节点设计

课程设计

课程名称车载总线题目名称

学生学院

专业班级

学号

学生姓名

指导教师

20 年月日

摘要:通过iCAN协议,设计单片机对SJA1000连接,进行控制收发器TJA1050的收发,通过iCAN-4050数字I/O产品进行流水灯输出试验。

关键词:CAN总线、SJAl000、TJA1050、AT89C52

1 引言

CAN(Controller Area Network)是控制器局域网,主要用于各种设备检测及控制的现场总线。CAN总线是德国BOSCH公司20世纪80年代初为解决汽车中众多控制与测试仪器间的数据交换而开发的串行数据通信协议。这是一种多主总线,无论是在高速网络还是在低成本的节点系统,应用都很广泛。由于采用了许多新技术及独特的设计,与一般的通信总线相比,CAN总线的数据通信具有突出的可靠性、实时性和灵活性,其主要特点如下:

●通信方式灵活,可以多主方式工作,网络上任意一个节点均可以在任意时刻主动向网络上的其他节点发送信息,不分主从。

●CAN节点只需对报文的标识符滤波即可实现点对点、点对多点及全局广播方式发送和接收数据,其节点可分成不同的优先级,节点的优先级可通过报文标识符进行设置,优先级高的数据最多可在134μs内传输,可以满足不同的实时要求。

●CAN总线通信格式采用短帧格式,每帧字节数量多为8个字节,可满足一般工业领域中控制命令、工作状态及测试数据的要求,同时,8个字节不会占用总线时间过长,保证了通信的实时性。

●采用非破坏性总线仲裁技术,当多个节点同时向总线发送信息出现冲突时,优先级低的节点会主动退出数据发送,而优先级高的节点可不受影响地继续传输数据,大大节省了总线冲突仲裁时间,在网络重载的情况下也不会出现网络瘫痪。

●直接通信距离最大可达10 km (速率在5 kb/s以下),最高通信速率可达1 Mb/s (此时距离最长为40 m);节点数可达110个,通信介质可以是双绞线、同轴电缆或光导纤维。

●CAN总线采用CRC检验并可提供相应的错误处理功能,保证数据通信的可靠性,其节点在错误严重的情况下具有自动关闭输出功能,使总线上其他节点的操作不受影响。

2 CAN总线系统结构

由于CAN总线采用多主方式工作,所以具有与DCS(分布式控制系统)不一样的拓扑结构。其控制系统由计算机和智能节点组成,如图1所示。该系统最大的特点是所有的节点都能以平等的地位挂接在总线上。1个总线节点通常至少包括3部分:控制节点任务的单片机、总线控制器及总线驱动器。本文主要介绍CAN总线智能节点的简单设计。智能节点由89C5l 型单片机、SJA1000型总线控制器、82C250型总线驱动器及PC构成。在实际应用中可以连接不同的传感器件,完成数据的采集和传输。

3 硬件电路设计

协议控制器向收发器的TxD 引脚输出一个串行的数据流收发器的内部上拉功能将TxD 引脚置为逻辑

高电平即总线输出驱动器在开路时是无源的在隐性状态中见图2.3 CANH 和CANL 输入通过典型内

部阻抗为25k 的接收器连接入网络偏置到Vcc/2 的电平电压另外如果TxD 是逻辑低电平将激活

总线的输出级并在总线上产生一个显性信号电平见图2.3 输出驱动CANH 由Vcc 提供一个源输出

而CANL 则向GND 提供一个下拉输出图2.2 用TJA1050 方框图作为一个例子

如果没有总线节点发送一个显性位则总线处于隐性状态如果一个或多个总线节点发送一个显性位

总线就会覆盖隐性状态而进入显性状态线与特性

接收器比较器将差动的总线信号转换成逻辑电平信号并在RxD 输出总线协议控制器将接收到的串

行数据流译码接收器比较器总是激活的即当总线节点发送一个报文时它同时监控总线这个功能可

以用于支持CAN 的非破坏性逐位仲裁策略

典型的总线采用一对双绞线考虑到ISO11898 中定义的线性拓扑结构总线两端都端接一个120

的额定电阻这就要求总线额定负载是60 终端电阻和电缆阻抗的紧密匹配确保了数据信号不会在总线的两

端反射

整个系统电源采用+5V电源输入,上电复位芯片(CA T810L)可保证上电时正确的启动系统。微处理器采用PHILIPS的P89C52单片机,该系列单片机是80C51微控制器的派生器件,采用先进的CMOS工艺制造,指令系统与80C51完全相同。CAN控制器采用PHILIPS的SJ A1000,SJA1000是一款独立的控制器,用于汽车和一般工业环境中的控制器局域网络。它是PHILIPS半导体PCA82C200 CAN控制器(BasicCAN)的替代产品。而且,它增加了一种

新的工作模式(PeliCAN),这种模式支持具有很多新特性的CAN 2.0B协议,是目前市面上用的最广的一款CAN控制器。该电路中采用了隔离CAN收发器模块,以确保在CAN总线遭受严重干扰时控制器能够正常运行

CAN总线接口设计 :

4 软件设计

在软件编写之前需先确定SJA1000的基地址及复位引脚,然后正确的初始化SJA1000,填写要发送的CAN报文,使能发送请求,即可进行CAN自发自收实验。本例程仅为简单的自发自收CAN报文程序,如图 1.5所示为操作SJA1000自发自收流程图,其中加阴影框内是必需的初始化部分。

程序的总体流程图:

SJA1000c 初始化

传输框图:

中断接受框图:

4.1 网络通信规则

CAN总线为多主工作方式,网络上任一节点均可在任意时刻主动向网络上其他节点发送

信息而不分主从,通信方式灵活。为禁止总线冲突,CAN总线采用非破坏性总线仲裁技术,根据需要将各个节点设定为不同的优先级,并以标识符ID标定,其值越小,优先级越高。总线的节点之间可以进行实时相互通信,当1个节点需要接收另1个节点的数据时,只需把其代码寄存器的内容设置成和另1节点的标识符一致即可。如果对于标识符和其代码寄存器的内容设置不一致,则节点所发的数据不予理会。

4.2 SJAl000的工作模式设置

SJAl000有二种工作模式:复位模式和工作模式。在复位模式下可对接收代码、接收屏蔽、总线时序寄存器O和1及输出控制寄存器进行设置。一般在CAN初始化时完成对以上寄存器的设置,当CAN进入工作模式后,它们的值就不再变化。在工作模式下可进行数据的发送和接收。特别要注意的是:当硬件复位或控制器掉线时会自动进入复位模式,这样就不能

进行正常的CAN通信,这就要求对复位位进行监控。当发生硬件复位或控制器掉线而进入复位模式时,要求把复位位置为0并进入工作模式,这样CAN就能进行正常发送和接收。

4.3 基于C语言的软件编程

//main函数:

void main(void)

{

//CPU初始化

SJA_CS = 0; //CAN总线片选有效

SJA_RST = 0; //软件复位SJA1000

delaynms(3);

SJA_RST = 1; //a low voltage make it reset

TJA_CS = 0; //打开TJA1050 s pin

//---------mcu中断部分设置--------

IT0 = 0;//外部中断0电平触发

EX0 = 1;//打开外部中断0

EA = 1; //打开总中断

//-----------------

//------CAN初始化-----

SJA_CS = 1;//片选无效,进入设置内容的操作

CAN_init( ); //SJA1000初始化

_nop_();

_nop_();

CAN_TXD();

while(1)

{ TBSR6 = 0xfe;

CAN_TXD1();

TBSR6 = 0xfd;

CAN_TXD1();

TBSR6 = 0xfb;

CAN_TXD1();

TBSR6 = 0xf7;

CAN_TXD1();

TBSR6 = 0xef;

CAN_TXD1();

TBSR6 = 0xdf;

CAN_TXD1();

TBSR6 = 0xbf;

CAN_TXD1();

TBSR6 = 0x7f;

CAN_TXD1();

}

}

//SJA1000初始化:

void CAN_init( void )

{//SJA1000 的初始化

uchar Judge;

uchar ACRR[4];

uchar AMRR[4];

ACRR[0] = 0x00;

ACRR[1] = 0x07;

ACRR[2] = 0x09;

ACRR[3] = 0x03;//接收代码寄存器,节点1

AMRR[0] = 0x00;

AMRR[1] = 0X00;

AMRR[2] = 0x00;

AMRR[3] = 0x03;//接收屏蔽寄存器。全部接收主机发送的信息do

{ MODR = 0x01;

Judge = MODR ;

}while( !(Judge & 0x01) );

// .0=1---reset MODRe,进入复位模式,以便设置相应的寄存器

//防止未进入复位模式,重复写入

//----------复位模式下的设置---------------

/*1. 时钟分频寄存器设置*/

CDR = 0xc8;

// CDR.3=1--时钟关闭, .7=0---basic CAN, .7=1---Peli CAN,旁路输入比较器,//只有RX1起作用,TX1 管脚14 输出模式,

/*2.总线定时寄存器*/

BTR0 = 0x00;//总线波特率选择,总线定时寄存器。

BTR1 = 0x1c;//总线波特率设定,500kb/s

/*3. 关CAN中断*/

IER = 0x01;// .0=1--接收中断使能; .1=0--关闭发送中断使能

/*4.输出控制寄存器*/

OCR = 0x1a;// 配置输出控制寄存器(本来是aa)

CMR = 0x04;//释放接收缓冲器

/*5.验收码寄存器和验收屏蔽寄存器*/

ACR = ACRR[0];

ACR1 = ACRR[1];

ACR2 = ACRR[2];

ACR3 = ACRR[3];//初始化标示码

AMR = AMRR[0];

AMR1 = AMRR[1];

AMR2 = AMRR[2];

AMR3 = AMRR[3];//初始化掩码

//-------------------------------------

do

{

MODR = 0x10;

Judge = MODR;

}while( !(Judge & 0x10) ); //确保进入自接收模式,AFM = 0.

SJA_CS = 0; //片选有效,SJA开始工作

}//SJA1000 的初始化

连接函数:

void CAN_TXD( void )

{

uchar Judge;

uchar TX_buffer[ N_can ] ;//N_can=13,1/4/8

//初始化标示码信息

/*1Byte 帧信息*/ // addr TX_buffer[0] = 0x83;// 1000 0011 .7=0扩展帧;.6=0数据帧; .3=1数据长度16D /*4Byte 标识符字*/

TX_buffer[1] = 0x00;//本节点地址ID.28 - ID.21 17D

TX_buffer[2] = 0x01;// ID.20 - ID.13 18D TX_buffer[3] = 0x27;// ID.12 - ID.5 19D

TX_buffer[4] = 0xb8;// ID.4 - ID.0 XXX 20D

//初始化标示码信息

//初始化发送数据单元

/*3byte data*/

TX_buffer[5] = 0x00; // Data.0

TX_buffer[6] = 0x00; // Data.1

TX_buffer[7] = 0x00; // Data.2

// TX_buffer[8] = 0x44;//

// TX_buffer[9] = 0x55;//

// TX_buffer[10] = 0x66;//

// TX_buffer[11] = 0x77;//

// TX_buffer[12] = 0x88;//

EA = 0; //关中断

CMR = 0x0C; //清除数据溢出状态位和释放接收缓冲器

do{

Judge = SR;

}while( Judge & 0x10 ); //SR.4=1 正在接收,等待

do{

Judge = SR;

}while(!(Judge & 0x08)); //SR.3=0,发送请求未处理完,等待do{

Judge = SR;

}while(!(Judge & 0x04)); //SR.2=0,发送缓冲器被锁。等待//---------加载发送的数据------发送缓冲寄存器-------------

TBSR = TX_buffer[0];

TBSR1 = TX_buffer[1];

TBSR2 = TX_buffer[2];

TBSR3 = TX_buffer[3];

TBSR4 = TX_buffer[4];

TBSR5 = TX_buffer[5];

TBSR6 = TX_buffer[6];

TBSR7 = TX_buffer[7]; //16- 23

// TBSR8 = TX_buffer[8];

// TBSR9 = TX_buffer[9];

// TBSR10 = TX_buffer[10];

// TBSR11 = TX_buffer[11];

// TBSR12 = TX_buffer[12]; //28

//---------------------------

EA = 1; //打开中断

CMR = 0x01;//置位发送接收请求

//-----判断是否被发送了-----

Judge = SR;

Judge = SR & 0x04;

while(!(Judge == 0x04))Blink1();

Blink();

}

发送函数:

void CAN_TXD1( void )

{

uchar Judge;

uchar TX_buffer[ N_can ] ;

//初始化标示码头信息

TX_buffer[0] = 0x82;//.7=0扩展帧;.6=0数据帧; .3=1数据长度1000 0010 ??

TX_buffer[1] = 0x00;//本节点地址

TX_buffer[2] = 0x01;//

TX_buffer[3] = 0x09;//

TX_buffer[4] = 0x03;//

//初始化标示码头信息

//初始化发送数据单元

TX_buffer[5] = 0x00;

// TX_buffer[6] = 0x22;

// TX_buffer[7] = 0x33;

// TX_buffer[8] = 0x44;//

// TX_buffer[9] = 0x55;//

// TX_buffer[10] = 0x66;//

// TX_buffer[11] = 0x77;//

// TX_buffer[12] = 0x88;//

//----------------------------

EA = 0; //关中断

CMR = 0x0C; //清除数据溢出状态位和释放接收缓冲器

do{

Judge = SR;

}while( Judge & 0x10 ); //SR.4=1 正在接收,等

do{

Judge = SR;

}while(!(Judge & 0x08)); //SR.3=0,发送请求未处理完,等待do{

Judge = SR;

}while(!(Judge & 0x04)); //SR.2=0,发送缓冲器被锁。等待

//---------加载发送的数据-------------------

TBSR = TX_buffer[0];

TBSR1 = TX_buffer[1];

TBSR2 = TX_buffer[2];

TBSR3 = TX_buffer[3];

TBSR4 = TX_buffer[4];

TBSR5 = TX_buffer[5];

// TBSR6 = TX_buffer[6];

// TBSR7 = TX_buffer[7];

// TBSR8 = TX_buffer[8];

// TBSR9 = TX_buffer[9];

// TBSR10 = TX_buffer[10];

// TBSR11 = TX_buffer[11];

// TBSR12 = TX_buffer[12];

//---------------------------

EA = 1; //打开中断

CMR = 0x01;//置位发送接收请求

//-------判断是否被发送了-----

Judge = SR;

Judge = SR & 0x04;

while(!(Judge == 0x04))Blink1();

Blink1();

}

5 结束语

通过本次CAN总线的开发试验,我掌握了CAN总线智能节点的设计,并在实践中进行了应用。通过实验证明,CAN总线具有以下优点:组网自由,扩展性强;自动错误界定,简化了通信的操作;可根据数据内容确定优先权,解决通信的实时性问题。此外,CAN网络已在众多工业控制系统中应用,尤其在传输速率较高而且对实时性及可靠性要求高的场合,CAN总线将有广阔的应用前景。

CAN总线系统智能节点设计

https://www.sodocs.net/doc/da869295.html, CAN总线系统智能节点设计 作者:邹继军饶运涛 信息工程系 华东地质学院 摘要:CAN总线上的节点是网络上的信息接收和发送站;智能节点能通过编程设置工作方式、ID地址、波特率等参数。它主要由单片机和可编程的CAN通信控制器组成。本文介绍这类节点的硬件设计和软件设计;其中软件设计包括SJA1000的初始化、发送和接收等应用中的最基本的模块子程序。 关键词:总线节点CAN 控制器 引言: CAN (Controller Area Network)总线,又称控制器局域网,是Bosch公司在现代汽车技术中领先推出的一种多主机局部网,由于其卓越的性能、极高的可靠性、独特灵活的设计和低廉的价格,现已广泛应用于工业现场控制、智能大厦、小区安防、交通工具、医疗仪器、环境监控等众多领域。CAN已被公认为几种最有前途的现场总线之一。CAN总线规范已被ISO国际标准组织制订为国际标准,CAN 协议也是建立在国际标准组织的开放系统互连参考模型基础上的,主要工作在数据链路层和物理层。用户可在其基础上开发适合系统实际需要的应用层通信协议,但由于CAN总线极高的可靠性,从而使应用层通信协议得以大大简化。 CAN总线与其他几种现场总线比较而言,是最容易实现、价格最为低廉的一种,但其性能并不比其他现场总线差。这也是目前CAN总线在众多领域被广泛采用的原因。节点是网络上信息的接收和发送站,所谓智能节点是由微处理器和可编程的CAN控制芯片组成,它们有两者合二为一的,如芯片P8XC592,也有如本文介绍的,独立的通信控制芯片与单片机接口,后者的优点是比较灵活。当然,也

基于的CAN总线智能传感器节点设计精修订

基于的C A N总线智能传感器节点设计 SANY标准化小组 #QS8QHH-HHGX8Q8-GNHHJ8-HHMHGN#

基于82527的CAN总线智能传感器节点设计 摘要:介绍一种以8051微控制器和82527独立CAN总线控制器为核心组成的CAN总线智能传感器节点的设计方法,并给出其硬件原理图和初始化程序。 关键词:CAN总线 82527 单片机数据采集智能节点 引言 CAN(Controller Area Network,控制局域网)属于工业现场总线,是德国Bosch公司20世纪80年代初作为解决现代汽车中众多的控制与测试仪器间的数据交换而开发的一种通信协议。1993年11月,ISO正式颁布了高速通信控制局域网(CAN)的国际标准(ISO11898)。CAN总线系统中现场数据的采集由传感器完成,目前,带有CAN总线接口的传感器种类还不多,价格也较贵。本文给出一种由8051单片机和82527独立CAN总线控制器为核心构成的智能节点电路,在普通传感器基础上形成可接收8路模拟量输入和智能传感器节点。

1 独立CAN总线控制器82527介绍 82527是Intel公司生产的独立CAN总线控制器,可通过并行总线与Intel和Motrorola的控制器接口;支持CAN规程标准,具有接收和发送功能并可完成报文滤波。82527采用CHMOS 5V工艺制造,44脚PLCC封装,使用温度为-44~+125℃,其引脚的排列和定义参见参考文献[1]。 (1)82527的时钟信号 82527的运行由2种时钟控制:系统时钟SCLK和寄存器时钟MCLK。SCLK 由外部晶振获得,MCLK对SCLK分频获得。CAN总线的位定时依据SCLK的频率,而MCLK为寄存器操作提供时钟。SCLK频率可以等于外部晶振XTAL,也可以是其频率的1/2;MCLK的频率可以等于SCLK或是其频率的1/2。系统复位后的默认设置是SCLK=XTAL/2,MCLK=SCLK/2。 (2)82527的工作模式 82527有5种工作模式:Intel方式8位分时复用模式;Intel方式16位分时复用模式;串行接口模式;非Intel方式8位分时复用模式;8位非分时复用模式。本文应用Intel方式8位分时复用模式,此时82527的30和44脚接地。

基于CAN总线智能节点设计

基于CAN总线智能节点设计 The design of intelligent nodes Based on CAN Bus 李光忠1,吴士涛2 LI GUANG-ZHONG,WU SHI-TAO (1. 山东农业大学信息科学与工程学院,山东 泰安 271018; 2. 山东科技大学,山东 泰安 271000) (1. College of Information Science and Engineering, Shandong Agriculture University,Taian 271018 China;2. Shandong University of Science and Technology,Taian 271000 China) 摘要:CAN总线是一种应用极为普及的现场总线。文中提出了一种CAN总线通信接口的设计方案。CAN总线智能节点用单片机AT89S52和SJA1000控制器为核心组成。分别从硬件电路设计和SJA1000软件初始化、发送、接收设计方面进行了分析,实现了相应的网络控制功能,具有较高的实用性。 关键词:CAN总线,智能节点,系统设计 中图分类号:TP336 文献标识码:B Abstract:Can-Bus is popular as a field Bus.In this paper,a new modern CAN-bus communication interface is designed. Intelligent node of CAN-bus is mainly made up of MCU AT89S52 and SJA1000 controller.The hardware principle and the programming methods for initialization,transmitting and receiving modules of SJA1000 are introduced.The design can perform the control function.It is a practical design. Key words:CAN Bus,Intelligent node,system design 0 引言 CAN是控制器局域网络(Controller Area Network)的简称,是一种有效支持分布式控制或实时控制的串行通信网络。CAN总线作为智能设备的联系纽带,把挂在总线上作为网络节点的智能设备连接为网络系统,并进一步构成自动化系统,实现基本控制的综合自动化系统。本文给出了一种基于AT89S52和SJA1000的CAN总线智能节点设计方案,并对软硬件设计进行了相应的说明。 1 系统硬件设计 智能节点能够通过监测设备采集的现场数据,并根据接收到的命令或者主动将数据发送到CAN总线。通过事先设置验收码和验收屏蔽码可以控制智能节点从总线上接收数据或命令。 CAN总线系统智能节点硬件电路由3部分构成:微控制器AT89S52、独立CAN通信控制器SJA1000和CAN总线驱动器82C250。 微处理器AT89S52负责SJA1000的初始化,通过控制SJA1000实现数据的接受和发送等通信任务。SJA1000作为独立CAN总线控制器具有完成CAN高性能通信协议所要求的全部必要特性。使用简单总线连接的SJA1000可完成物理层和数据链路层的所有功能。其硬件与软件设计包括与基本CAN工作模式(BasicCAN)兼容,同时它新增加的增强CAN工作模式(PeliCAN)可以支持CAN 2.0A及CAN 2.0B协议。CAN总线收发器PCA82C250提供协议控制器和物理传输线路之间的接口。它可以用高达1Mb/s的速率在两条有差动电压的总线电线上传输数据。 硬件电路如图1所示。

汽车CAN总线系统智能节点的设计

汽车ECU电路分析 ECU电路解析 正如在本章开始时我们讲到的,不同厂商的汽车电脑在功能上不是完全相同的,但结构组成和要紧功能是差不多一样的,因此我们以有代表性的BOSCH MOTRONIC系统为例进行ECU的电路分析。 1、BOSCH MOTRONIC系统结构图 BOSCH MOTRONIC系统在电子燃油喷射系统中极具代表性,国内生产的大部分车型采纳的差不多上BOSCH电子喷射系统。图5.11为MOTRONIC系统框图,在此图中介绍了曲型电子燃油喷射系统的组成,各部分的联系情况,关于更好的了解电脑的工作过程,以至于分析故障与维修差不多上大有关心的。 图11 Motronic系统框图 1-燃油箱;2-燃油泵;3-燃油滤清器;4-燃油压力调节器;5-燃油脉动衰减器;6-电子操纵单元;7-分电器;8-喷油嘴;9-冷起动喷油嘴;10-节气门;11-节气门开关门;12-空气流量计;13-氧传感器;14-热敏开关;15-水温传感器;16-辅助空气阀;17-曲轴位置传感器;18-主继电器;19-燃油泵继电器

在图11中,电子操纵单元作为电控发动机的核心部分,由一8位/16位单片微机、集成电路和相关电子元件组成,英文表示为Electric control unit简称ECU。其作用是接收各种传感器送来的信息,以它们进行运算、处理、推断后再发出指令信号,经输出电路进行功率放大后驱动想应的执行单元,从而实现对发动机的各种工况的操纵。那个地点提级的ECU是各种操纵单元的统称,ECM/PCM则是发机操纵模组或动力操纵模组的缩写,是包含于ECU范围之内的。 2、BOSCH MOTRONIC1.3电路分析 汽车电子操纵单元(ECU),不论是BOSCH的MOTRONIC,福特的EEC IV、V,通用的P4、P6等,其最终的目的只有一个,让发动机工作的更出色,表现为动力更强劲,噪声小,污染低。这是针对发动机系统而言,其他系统也是一样,每个系统都有自己的目标,这就看起来是电视机一样,世界各国生产的电视机,不管是哪个厂家的,差不多上要以接收电视节目为目的。基于如此一种认识,我们能够把ECU抽样化的分成几个部分,见图12所示。

汽车CAN总线系统智能节点的设计

汽车ECU电路分析ECU电路解析 正如在本章开始时我们讲到的,不同厂商的汽车电脑在功能上不是完全相同的,但结构组成和主要功能是基本一样的,因此我们以有代表性的BOSCHMOTRONIC系统为例进行ECU的电路分析。 1、BOSCH MOTRONIC系统结构图 BOSCH MOTRONIC系统在电子燃油喷射系统中极具代表性,国内生产的大部分车型采用的都是BOSCH电子喷射系统。图5.11为MOTRONIC系统框图,在此图中介绍了曲型电子燃油喷射系统的组成,各部分的联系情况,对于更好的了解电脑的工作过程,以至于分析故障与维修都是大有帮助的。 图11Motronic系统框图 1-燃油箱;2-燃油泵;3-燃油滤清器;4-燃油压力调节器;5-燃油脉动衰减器;6-电子控制单元;7-分电器;8-喷油嘴;9-冷起动喷油嘴;10-节气门;11-节气门开关门;12-空气流量计;13-氧传感器;14-热敏开关;15-水温传感器;16-辅助空气阀;17-曲轴位置传感器;18-主继电器;19-燃油泵继电器在图11中,电子控制单元作为电控发动机的核心部分,由一8位/16位单片微机、集成电路和相关电子元件组成,英文表示为Electric control unit 简称ECU。其作用是接收各种传感器送来的信息,以它们进行运算、处理、判断后再发出指令信号,经输出电路进行功率放大后驱动想应的执行单元,从而实现对发动机的各种工况的控制。这里提级的ECU是各种控制单元的统称,ECM/PCM则是发机控制模组或动力控制模组的缩写,是包含于ECU范围之内的。 2、BOSCH MOTRONIC1.3电路分析 汽车电子控制单元(ECU),不论是BOSCH的MOTRONIC,福特的EEC IV、V,通用的P4、P6等,其最终的目的只有一个,让发动机工作的更出色,表现为动力更强劲,噪声小,污染低。这是针对发动机系统而言,其他系统也是一样,每个系统都有自己的目标,这就好像是电视机一样,世界各国生产的电视机,无论是哪个厂家的,都是要以接收电视节目为目的。基于这样一种认识,我们可以把

整车CAN通信设计规范

文件编号: TKC/JS(S)-EV17 文件版本号: 0/A版 安徽天康特种车辆装备有限公司 整车CAN通信设计规范 编制: 审核: 批准: 发布日期:2014年12月22日实施日期:2014年12月22日安徽天康特种车辆装备有限公司

目录

前言 为使本公司整车CAN总线通信设计规范化,参考国际标准化组织协议以及国内外汽车总线总体设计的技术要求,结合本公司物流车开发车型的实际应用环境,编制本整车CAN总线通讯设计规范。本规范满足公司快速发展的需要,并将在实践中进一步提高完善。 本规范由安徽天康特种车辆装备有限公司技术部提出。 本规范由安徽天康特种车辆装备有限公司技术部批准。 本规范主要起草人:李劲松、查德国、和进军 本规范于2015年01月首次发布。

整车CAN通信设计规范 一、说明 范围 本规范规定了安徽天康特种车辆装备有限公司(以下简称“天康”)生产的纯电动汽车CAN通信设计规范。 本规范适用于安徽天康特种车辆装备有限公司设计开发的纯电动汽车的CAN总线通信设计。 如果本标准与其它标准或规范不一致,则按照如下方式处理: 与SAE J1939不一致,遵照本标准执行; 与ECU技术规范不一致,遵照ECU技术规范执行 规范性引用文件 下列文件中的条款通过本规范的引用成为本规范的条款。凡是注日期的引用文件,其随后的修改单(不包括勘误的内容)或修订版均不适用于本规范。凡是不注日期的引用文件,其最新版本适用于本规范。 表 1 参考文档 术语和缩写 表 2 缩写

二、物理层 本节详细规定了物理层的需求 相关标准 所有ECU应遵从标准、或者中的相关规定. 物理介质 CAN传输线束应该满足表3描述的参数和如下的条件: CAN线束采用非屏蔽双绞线; CAN_H和CAN_L应该被保护屏蔽包裹,如果天康允许,可以使用不带保护层的CAN 线束; 绞线率:13~58twist/m。 表 3 物理介质参数

CAN总线智能传感器节点设计

基于82527的CAN总线智能传感器节点设计 摘要:介绍一种以8051微操纵器和82527独立CAN总线操纵器为核心组成的CAN总线智能传感器节点的设计方法,并给出其硬件原理图和初始化程序。 关键词:CAN总线 82527 单片机数据采集智能节点引言 CAN(Controller Area Network,操纵局域网)属于工业现场总线,是德国Bosch公司20世纪80年代初作为解决现代汽车

中众多的操纵与测试仪器间的数据交换而开发的一种通信协议。1993年11月,ISO正式颁布了高速通信操纵局域网(CAN)的国际标准(ISO11898)。CAN总线系统中现场数据的采集由传感器完成,目前,带有CAN总线接口的传感器种类还不多,价格也较贵。本文给出一种由8051单片机和82527独立CAN总线操纵器为核心构成的智能节点电路,在一般传感器基础上形成可接收8路模拟量输入和智能传感器节点。 1 独立CAN总线操纵器82527介绍 82527是Intel公司生产的独立CAN总线操纵器,可通过并行总线与Intel和Motrorola的操纵器接口;支持CAN规程2.0B 标准,具有接收和发送功能并可完成报文滤波。82527采纳CHMOS

5V工艺制造,44脚PLCC封装,使用温度为-44~+125℃,其引脚的排列和定义参见参考文献[1]。 (1)82527的时钟信号 82527的运行由2种时钟操纵:系统时钟SCLK和寄存器时钟MCLK。SCLK由外部晶振获得,MCLK对SCLK分频获得。CAN总线的位定时依据SCLK的频率,而MCLK为寄存器操作提供时钟。SCLK频率能够等于外部晶振XTAL,也能够是其频率的1/2;MCLK 的频率能够等于SCLK或是其频率的1/2。系统复位后的默认设置是SCLK=XTAL/2,MCLK=SCLK/2。 (2)82527的工作模式 82527有5种工作模式:Intel方式8位分时复用模式;Intel 方式16位分时复用模式;串行接口模式;非Intel方式8位分时复用模式;8位非分时复用模式。本文应用Intel方式8位分时复用模式,现在82527的30和44脚接地。 3 / 27

基于SJA1000的CAN节点设计v1.0

基于SJA1000的CAN节点设计 文件信息 类别内容 关键词 SJA1000,CTM系列隔离CAN收发器 基于SJA1000的CAN节点设计 摘要 https://www.sodocs.net/doc/da869295.html,

修订历史 版本日期原因Rev X1 2006-12-13 内部制定初稿 Rev 1.0 2006-12-15 第一次发布

目录 1. 基于SJA1000的CAN节点设计 (3) 1.1 硬件设计电路 (3) 1.1.1收发器隔离电路设计 (3) 1.1.2 CAN总线接口设计 (4) 1.2 软件设计 (5) 程序清单1.1 定义片选地址 (5) 程序清单1.2 初始化SJA1000 (5) 程序清单1.3 发送报文 (6) 2. 应用实例 (7) 3. 声明 (1)

1.基于SJA1000的CAN节点设计 1.1 硬件设计电路 CAN总线是一种最有前途的现场总线,因其优异性能而在工业控制、汽车电子、安防等方面得到广泛应用。设计CAN-bus通讯接口是很重要的一个环节,设备的正确运行与其密切相关。如图 1.1给出了一个实际的CAN-bus通讯单元电路图,电路结构为:MCU(P89C52)+CAN控制器(SJA1000)+隔离CAN收发器(CTM Module)。 图 1.1 CAN-bus通讯单元原理图 如图 1.1所示,整个系统电源采用+5V电源输入,上电复位芯片(CAT810L)可保证上电时正确的启动系统。微处理器采用PHILIPS的P89C52单片机,该系列单片机是80C51微控制器的派生器件,采用先进的CMOS工艺制造,指令系统与80C51完全相同。CAN控制器采用PHILIPS的SJA1000,SJA1000是一款独立的控制器,用于汽车和一般工业环境中的控制器局域网络。它是PHILIPS半导体PCA82C200 CAN控制器(BasicCAN)的替代产品。而且,它增加了一种新的工作模式(PeliCAN),这种模式支持具有很多新特性的CAN 2.0B 协议,是目前市面上用的最广的一款CAN控制器。该电路中采用了隔离CAN收发器模块,以确保在CAN总线遭受严重干扰时控制器能够正常运行,该模块介绍见以下1.1.1节收发器隔离电路设计: 1.1.1 收发器隔离电路设计 1.1.1.1 常规设计 图 1.2 常规设计方案

CAN智能节点的设计.

CAN智能节点的设计 摘要:CAN总线是一种流行的实时性现场总线,文中提出了一种基于MSP430单片机,并以MCP2510为CAN控制器的智能节点设计方案,该方案利用MSP430通过标准SPI接口可实现对MCP2510的控制,并能够完全实现CAN总线规范。 关键词:CAN智能节点;MSP430;MCP2510;数据通信 1引言 CAN总线是控制器局域网(ControllerAreaNet-work)总线的简称,它属于现场总线范畴,是一种能有效支持分布式控制或实时控制的串行通信网络,它可将挂接在现场总线上作为网络节点的智能设备连接成网络系统,并进一步构成自动化系统,从而实现基本的控制、补偿、计算、参数修改、报警、显示、监控、优化及控管一体化的综合自动化功能。 CAN总线智能节点在分布式控制系统中起着承上启下的作用。它位于传感器和执行机构所在的现场,一方面和上位机(PC或者工控机)进行通信,以完成数据交换;另一方面又可根据系统的需要对现场的执行机构或者传感器进行控制和数据采集。它常常将一些简单的过程控制程序放在底层模块中,从而减少了通信量,提高了系统控制的实时性。因此,智能化模块设计在CAN系统中有着十分重要的作用。 本文将给出一种用MSP430单片机和MCP2510CAN控制器组成的总线智能节点的设计方案(见图1),该方案中的单片机和CAN控制器通过标准的SPI接口进行通信,因此,该节点能够完成对被控器件的数据采集上报,并接受上位机的命令,进而进行解析以完成对执行机构的控制。为了调试简单,本方案作了一些改动:一是使MCP2510工作在环回模式,也就是数据由发送缓存直接发送到接收缓存,由于不经过CAN收发器和CAN总线,而只是使用了它的一个发送缓存和一个接收缓存,因而方便了调试;二是把被控器件的数据采集和对执行机构的控制部分略去,而这些功能在以后可以方便地添加,这样,在实际使用时,只要对程序稍作修改就可应用。 2硬件设计 本设计的整个接口模块主要由两部分组成:CAN控制器MCP2510和微控制器MSP430。图2所示是该智能节点的部分电路硬件原理图。下面对主要部分功能作一介绍。 2.1MSP430F1232简介 MSP430系列微控制器是TI公司推出的功能强大的超低功耗16位微处理器。它集成了丰富的片上外围资源,因而开发方式十分简便,可以用C语言编写出效率很高的程序。所选MSP430F1232的工作电压为

can节点设计

课程设计 课程名称车载总线题目名称 学生学院 专业班级 学号 学生姓名 指导教师 20 年月日

摘要:通过iCAN协议,设计单片机对SJA1000连接,进行控制收发器TJA1050的收发,通过iCAN-4050数字I/O产品进行流水灯输出试验。 关键词:CAN总线、SJAl000、TJA1050、AT89C52 1 引言 CAN(Controller Area Network)是控制器局域网,主要用于各种设备检测及控制的现场总线。CAN总线是德国BOSCH公司20世纪80年代初为解决汽车中众多控制与测试仪器间的数据交换而开发的串行数据通信协议。这是一种多主总线,无论是在高速网络还是在低成本的节点系统,应用都很广泛。由于采用了许多新技术及独特的设计,与一般的通信总线相比,CAN总线的数据通信具有突出的可靠性、实时性和灵活性,其主要特点如下: ●通信方式灵活,可以多主方式工作,网络上任意一个节点均可以在任意时刻主动向网络上的其他节点发送信息,不分主从。 ●CAN节点只需对报文的标识符滤波即可实现点对点、点对多点及全局广播方式发送和接收数据,其节点可分成不同的优先级,节点的优先级可通过报文标识符进行设置,优先级高的数据最多可在134μs内传输,可以满足不同的实时要求。 ●CAN总线通信格式采用短帧格式,每帧字节数量多为8个字节,可满足一般工业领域中控制命令、工作状态及测试数据的要求,同时,8个字节不会占用总线时间过长,保证了通信的实时性。 ●采用非破坏性总线仲裁技术,当多个节点同时向总线发送信息出现冲突时,优先级低的节点会主动退出数据发送,而优先级高的节点可不受影响地继续传输数据,大大节省了总线冲突仲裁时间,在网络重载的情况下也不会出现网络瘫痪。 ●直接通信距离最大可达10 km (速率在5 kb/s以下),最高通信速率可达1 Mb/s (此时距离最长为40 m);节点数可达110个,通信介质可以是双绞线、同轴电缆或光导纤维。 ●CAN总线采用CRC检验并可提供相应的错误处理功能,保证数据通信的可靠性,其节点在错误严重的情况下具有自动关闭输出功能,使总线上其他节点的操作不受影响。

相关主题