问答题
阅读以下关于CAN现场总线嵌入式监控系统的技术说明,根据要求回答问题1至问题5。
[说明]
某自动化仪表企业正在研究使用现场总线网络构成自动监测系统的可行性,打算采用 CAN(Controller Area Network,控制器局域网络)总线作为底层网络构件系统。该企业试验用的数据采集与监测系统的网络结构如图6-10所示。
问答题
[问题1]
CAN总线能够使用光纤和(1)等多种传输媒体。总线信号以差分电压传送,两条信号线分别为CAN_H和CAN_L。静态时这两条信号线均为2.5 V,此状态表示(2),也可以称之为“隐性”。CAN_H比CAN_L高,表示逻辑“0”(或称为“显性”),此时,通常电压值为CAN_H=3.5 V,CAN_L=1.5 V。当“显性”位和“隐性”位同时发送时,最后总线数据将为(3)。
【正确答案】
【答案解析】双绞线 (2)逻辑“1” (3)“显性”或“逻辑0” 这是一道要求读者掌握CAN总线传输媒体和逻辑电子的基本常识题。本题的解答思路如下; ①由题干关键信息“系统主控机与网络节点采用双绞线连接”可知,双绞线是CAN总线常用的传输媒体之一。因此(1)空缺处可填入“双绞线”等内容。 ②由题干关键信息“CAN_H比CAN_L高,表示逻辑‘0’”可知,在数字电路中与逻辑“0”信号相对应的是逻辑“1”信号;再者“显性”与“隐性”也是一对相对的词语,因此可推理出(2)空缺处需填入内容是“逻辑‘1’”。 ③当“显性”位和“隐性”位同时发送时,最后总线数据将为“显性”。正是这一特性为 CAN总线的仲裁奠定了基础。因此(3)空缺处可填入“显性”或“逻辑0”等内容。
问答题
[问题2]
CAN现场总线具有如下基本特征:
①CAN总线是一种多主方式的串行通信总线,当CAN信号传输距离在40 m以内时,其最高通信速率为1 Mb/s,当信号传输距离在10 km以内时,CAN总线仍可提供 50kb/s的数据传输速率。网络上节点的数目主要取决于总线驱动电路,目前可达110个节点。
②通信的灵活性。CAN总线允许采用多主方式工作,网上任一节点均可在任何时刻主动向网上其他节点发送信息(不分主从),无需站地址等节点信息。事实上,通信取决于报文标识符进行(在CAN2.0A标准中规定了2032种报文标识符),采用报文滤波即可实现点到点、一点到多点或者全广播等多种方式通信,无需专门调度。
③通信的实时性。CAN网络上节点的信息可分为不同的优先级,从而能满足不同的实时性要求。
④通信的可靠性。CAN采用了非破坏性的总线仲裁技术,当多个节点同时向总线发送信息时,优先级较低的节点会主动退出发送,具有相对最高优先级的节点可以不受影响地继续传输数据,从而大大节省了总线仲裁时间,特别是在网络负荷很重的情况下也不会引起网络瘫痪。另一方面,CAN协议规定了采用短帧结构(比如一个数据帧内有效数据为8个字节),帧传输时间短,抗电磁干扰能力强。每帧内有CRC校验及其他校验措施(适用于位数小于127位的帧)。当节点发现严重错误时,能自动关闭输出,使其他节点操作不受影响。
基于以上基本特征,请估算具有最高优先权的数据帧最快可在多长时间内获得传输权限。请在150字以内简要说明理由并列出计算过程。
【正确答案】
【答案解析】由于仅有12个网络节点且最大节点间的距离小于35 m,故数据传输速率取1 Mb/s。数据桢长度取127位,再加上传输的标识或起止位,则最小数据帧长为134位。具有最高优先权的数据帧最快可在134μs时间内获得传输权限 这是一道要求读者根据CAN总线的传输特性、帧的结构来估算数据帧等待传输时间的分析计算题。本题的解答思路如下: ①由题干关键信息“图6-10所示的网络结构中有12个网络节点”和“系统主控机与网络节点采用双绞线连接,实验时最大节点间的距离小于35 m”,而试题中已给出“当 CAN信号传输距离在40m以内时,其最高通信速率为1 Mb/s”,而且“网络上节点的数目主要取决于总线驱动电路,目前可达110个节点”等信息间接可推理出,在数据帧等待传输时间估算过程中数据传输速率可取1 Mb/s。 ②试题中关键信息“每帧内有CRC校验及其他校验措施(适用于位数小于127位的桢)”可推理出,在数据帧等待传输时间估算过程中数据帧长度可取127位。再加上传输的标识或起止位,则最小数据帧长为134位。 ③CAN最高通信速率为1 Mb/s,传送1 bit用时1μs,那么传送一帧134位的数据需用时134/μs。 ④因为CAN总线网络上节点信息允许分成不同的优先级,从而可以满足不同的实时需求。“具有最高优先权的数据”是指该数据帧在最坏情况下获得的传输权限。由于CAN总线刚开始传输一个帧,就要把这个帧传完,才能使下一个最高优先级的数据帧获得传输的机会。 ⑤由以上分析可知,具有最高优先权的数据帧最快可在134/μs时间内获得传输权限 (CAN2.0A的规范)。
问答题
[问题3]
在图6-11所示的电路图中,MCP2510芯片组成的CAN控制器和TJA1050芯片所组成的电路各有何作用。
【正确答案】
【答案解析】MCP2510芯片组成的CAN控制器主要完成时序逻辑转换等工作,负责CAN通信协议的执行,承担网络通信控制任务 TJA1050芯片所组成的电路正是CAN总线收发器,它是CAN控制器与物理总线之间的接口电路,实现TTL电平到CAN总线电平特性的转换 这是一道要求读者掌握CAN总线接口电路作用的理解分析题。本题的解答思路如下; ①在图6-11所示的电路图中,MCP2510芯片组成的CAN控制器主要完成时序逻辑转换等工作,负责CAN通信协议的执行,承担网络通信控制任务。 ②通常嵌入式微处理器电路的I/O电平是TTL电子,而CAN控制器采用的是CAN总线电子,要在电气特性上满足CAN总线标准,还需要一个转换芯片(通常称之为CAN总线的物理层芯片),用它来实现TTL电子到CAN总线电子特性的转换。图6-11所示的电路图中TJAl050芯片所组成的电路正是CAN总线收发器,它是CAN控制器与物理总线之间的接口电路。
问答题
[问题4]
MCP2510和TJA1050连接的两个信号都是单向信号。在图6-11所示的电路图中, MCP2510芯片输入信号即RXCAN高电平的范围Vih是2~4.3 V。这并不能满足5 V逻辑的TJA1050芯片的输出电平,因此需要进行I/O接口电路的电平转换。在图6-1l所示的电路图中,电阻SR10、SR11的阻值在选择时需要考虑哪些因素?
【正确答案】
【答案解析】需要考虑TJA1050芯片输出信号的驱动能力和MCP2510的 RXCAN管脚的输入阻抗等两个关键因素 这是一道要求读者掌握电子转换I/O接口电路元器件参数选择的分析题。本题的解答思路如下: ①在图6-11所示的电路图中,MCP2510芯片组成的CAN控制器使用的是3.3V电压供电,而TJA1050芯片组成的CAN总线收发器使用的是5.0 V电压供电。 ②试题中给出的关键信息“MCP2510和TJA1050连接的两个信号都是单向信号”间接告知,在图6-11所示的电路图中,对于MCP2510来说,TXCAN是输出信号, RXCAN是输入信号,只需要单向满足I/O接口的电气特性即可。 ③试题中已给出在3.3 V电压供电情况下,MCP2510芯片输入信号即RXCAN高电平的范围Vih是2~4.3 V。这并不能满足5 V逻辑的TJA1050芯片的输出电平,因此需要进行I/O接口电路的电子转换。在图6-11所示的电路图中,采用电阻分压(电阻SR10、 SR11)的方法实现单向的电子转换。 ④在图6-11所示的电路图中,分压电阻SRl0、SR11的阻值选择需要考虑TJA1050芯片输出信号的驱动能力和MCP2510的RXCAN管脚的输入阻抗两个关键因素。 TJA1050芯片最多可以输出15 mA的电流,这足以驱动电阻RS11+RS10=10 kΩ+ 20 kΩ=30 kΩ。MCP2510芯片的输入电流ILI不会超过5 μA。 ⑤另外说明一点,在图6-11所示的电路图中,TJA1l050为5 V供电时,输入高电平 Vih范围是2~5.3 V。而3.3 V供电的MCP2510输山的TXCAN信号高电平Voh的最小值为2.6 V,因此MCP2510输出的TXCAN信号电平可以满足TJA1050的输入电子的要求。
问答题
[问题5]
在图6-10所示的网络结构中,每一个网络节点相对于CAN控制器而言,有一个隐含的CAN总线接口通信模块,上电后能自动完成接口的初始化工作,并进入通信监测工作状态。请在150字以内简要列出每一个网络节点中至少还应当包括哪些功能模块。
【正确答案】
【答案解析】数据采集功能模块 数据信息发送功能、命令参数接收模块 内部数据预处理功能模块 这是一道要求读者掌握CAN网络中作为现场采集的网络节点软件功能模块设计的综合分析题。本题的解答思路如下: ①仔细阅读试题信息可知,在图6-10所示的网络结构中,每一个网络节点中至少包括了接口初始化功能模块。 ②由题干中关键信息“图6-10所示的网络结构中有12个网络节点,每一节点都通过传感器采集现场的有关数据”可知,现场采集的网络节点的首要功能就是数据采集。因此,每一个网络节点中必须有一个“数据采集”功能模块。 ③由题干中关键信息“系统主控机……可以向网络节点发送命令”可推理出,每一个网络节点中必须有一个与之相对应的“参数、命令接收模块”。同理由“系统主控机……接受节点数据”可知,每一个网络节点必须根据系统主控的命令,主动地把采集到的数据、节点的工作状态以及相关的响应信息等经过CAN总线传输给系统主控机。因此,每一个网络节点中必须有一个“主动发送”功能模块。 ④通常一个嵌入式CAN网络节点必须支持CAN2.0B协议规定——标准CAN总线数据帧格式和扩展数据帧格式。在数据传输之前,每一个网络节点必须先对采集到的数据,或者内部的状态信息作一些初步的处理,从而保证符合CAN总线中帧格式的要求。因此,在每一个网络节点中必须有一个数据帧预处理模块。