第7章现场总线智能节点的开发

上传人:夏** 文档编号:504976446 上传时间:2022-09-26 格式:DOC 页数:7 大小:161KB
返回 下载 相关 举报
第7章现场总线智能节点的开发_第1页
第1页 / 共7页
第7章现场总线智能节点的开发_第2页
第2页 / 共7页
第7章现场总线智能节点的开发_第3页
第3页 / 共7页
第7章现场总线智能节点的开发_第4页
第4页 / 共7页
第7章现场总线智能节点的开发_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《第7章现场总线智能节点的开发》由会员分享,可在线阅读,更多相关《第7章现场总线智能节点的开发(7页珍藏版)》请在金锄头文库上搜索。

1、第七章 现场总线智能节点的开发71节点类型节点是网络上信息的接收和发送站。在CAN总线系统中,共有两种类型的节点: 1.不带微处理器的非智能节点; 2.带微处理器的智能节点。 非智能节点:由一片多功能CAN控制器(如P82C150)构成,并能够完成一定功能(如数据采集)。智能节点:由微处理器和CAN控制器组成。 有两者合二为一的,如单片机芯片P8xC591和DSP2407A等,可靠性高; 也有两者是独立的,在设计和使用时的灵活性强,使用较广泛。 根据所处位置,可分为现场节点和和相关的通信卡 现场节点:传感器、变送器、执行器等 通信卡:PC机上的通信节点,如PC104 CAN 卡、ISA CAN

2、 卡、PCI CAN卡等72一个实际节点的开发下面以一个A/D智能变送器为例,来讨论现场总线智能节点的开发。(1)通用智能变送器CANAD1208概述如图是节点CANAD1208的工作原理框图 图8:智能变送器CANAD1208的工作原理图图中8路模拟量信号可以是0-10v电压、热电偶信号、热电阻,模拟量信号经过输入信号调理电路(信号转换、放大、滤波等)转换为0-5v电压信号送至串行A/D输入端,单片机根据串行A/D控制字按照一定的时序获取各路模拟量的转换量对应的数字量,系统根据各个信号的特点,将数字量转换为对应的实际的参量(如热电偶、热电阻转换为温度,电压信号转化为010v电压),一般来说,

3、节点与其他节点通信时传输的是这个用数字量表示的实际参量值由于节点本身具有微处理器,所以可以进行故障自诊断和对系统进行初步的诊断结果,系统通信数据可以包括这些诊断信息。(2)CAN 协议现场总线接口电路设计为了满足实时控制和降低成本,CAN协议的现场总线采用了符合七层基准参考模型的物理层、数据链路层和应用层三层网络结构,网络的物理层和数据链路层的功能是有接口器件完成的,而应用层的功能则由微处理器来完成的。物理层和数据链路层的设计包括硬件电路和通信协议两部分。如图是的现场总线的接口电路。 图9:CANAD1208现场总线接口电路图中89C52是网络节点的微处理器,SJA1000是由PHILIPS公

4、司提供的控制器,可完成总线的物理层和数据链路层的所有功能。包括为实现高性能串行网络通信所必须的所有硬件。P82C250是控制器和物理总线间的接口,它可以提供对总线的差动发送能力和对控制器的差动接收能力,与11898标准完全兼容。图中SJA1000与P82C250采用光电耦合器件连接,具有电流隔离的作用。DIP拨码开关用来设置网络节点的节点地址和通信速率,其中低位是节点地址();高位是通信速率,数值可设置k1Mz的通信速率。为了实现对网络节点及总线的完善管理,保证系统的可靠性和健壮性,CAN通信协议规定了4种不同用途的网络通信帧,即数据帧、远程帧、错误指示帧和超载帧。CAN通信协议的实现,包括各

5、种通信帧的组织和发送,均是由集成在CAN通信控制器SJA1000中的电路实现的,因此系统的软件开发主要集中在应用层协议及软件的设计上。(3)应用层协议CAN协议现场总线遵循OSI模型,按照OSI基准模型, CAN总线网络结构分为3层:物理层,数据链路层和应用层。其中物理层,数据链路层由CAN接口器件完成,应用层由微处理器完成。 CAN技术规范2.0A和2.0B以及国际标准ISO11898是设计CAN现场总线产品的基依据。国内北京三兴达公司公布了HilionA, HilionB基于主从式结构的数据链路层以上的协议。采用主从式通信控制方式,即命令应答式,由主节点向现场节点发命令,现场节点收到命令后

6、返回应答数据。为了保证通信的实时性,发送命令或数据和接收现场节点返回数据均在中断服务程序中完成的,并且是在不同的中断服务程序中完成的,发送命令或数据是在定时中断服务程序中完成的,而接收现场节点返回数据是在通信接收中断中完成的。由于发送和接收是分开的,所以在返回的数据中,应包括源数据的节点地址。发送报文和回收报文格式见见图示报文中,标识符为目的节点地址,数据长度是数据帧中数据的字节长度,数据帧中的节点地址是数据源的节点地址,当主节点点向从节点发送命令时,数据帧中的节点地址应是源节点即主机地址。如果是发送命令取数据,则数据帧第3个至8个字节无数据;若是主机向节点发送数据,则数据帧第3个至8个字节为

7、发送数据。在回收报文中,标识符为目的节点地址与0x80相或的结果值;如果是主机向节点发送数据,则回收报文中数据帧第3个至8个字节无数据,若是主机向节点发命令取数据,则数据帧第3个至8个字节为返回数据。回收报文其它与发送报文相同。标识符数据长度节点地址0至6个字节数据数据帧命令值标识符数据长度节点地址0至6个字节数据数据帧命令值发送报文格式回收报文格式 图7:主从系统中CAN协议发送和回收报文格式(支持多主方式)(4)应用层软件的设计应用层软件的核心部分是CPU和CAN通信控制器SJA1000之间的数据接收和发送程序,即CPU要把待发数据发送给CAN通信控制器,而后由通信控制器发到总线上;而当C

8、AN控制器从总线上接收到数据后,需要CPU把数据从那里取走。CPU 可以通过外设访问指令对它们进行读写操作。在系统上电之时,CPU需要对有关控制寄存器写入相应的控制字,以完成对CAN控制器的初始化,之后CPU即可通过CAN控制器向物理总线发送和接收数据。CANAD1208节点有两种工作方式:多主工作方式和主从工作方式。在多主工作方式时,发送数据是在节点的定时中断完成的,每隔一定时间(可由节点设置,时间是定时中断周期的整数倍)向其它节点发送从现场检测的经过校验的测试数据。而接收数据则是由中断1(参见图九)的中断服务程序完成的,在CAN控制器的接收数据缓存器满时,CAN控制器会向CPU发出中断请求

9、,在中断打开的情况下,自动执行相应的中断服务程序。由图七可知,CAN协议现场总线的数据包是8个字节,这8个字节的数据场的组织按源节点地址(一个字节)+命令字(一个字节)+数据(06个字节)。在接收中断服务程序中,根据接收到的命令给出相应的响应。响应的数据发送在中断服务程序中完成的。在主从式现场总线控制系统中,定时中断中不进行发送数据的任务,数据的接收和发送均由接收中断完成的,根据接收到的主机命令发送相应的数据。节点如有报警信息,随时由主程序向其它节点发送故障信息。图八是节点CAN 控制器的初始化程序框图,图九是主从方式下的接收中断服务程序框图。 以下是一个初始化程序的实例(用C51编写).其中

10、SJA1000CTRL是SJA1000控制器的控制 段寄存器的首地址。void Init_sja1000(char lBaud0,char lBaud1,char node_addr) reentrant IE=0; /关中断 SJA1000CS=0; /片选 PBYTESJA1000CTRL =0x41; /向控制寄存器写控制字 PBYTESJA1000CTRL+4 =node_addr; /向验收寄存器写接收码 PBYTESJA1000CTRL+5 =0x00; /向接收屏蔽寄存器写接收屏蔽码 PBYTESJA1000CTRL+6 =lBaud0; /向总线定时寄存器写数据 PBYTESJA1000CTRL+7 =lBaud1; PBYTESJA1000CTRL+8 =0x1a; /向输出控制寄存器写控制字 PBYTESJA1000CTRL =0x1a; /开放相应的中断 SJA1000CS=1; /片选禁止 IE=0x86; /开中断 图10是节点CAN 控制器的初始化程序框图 图11是主从方式下的接收中断服务程序框图。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号