CAN总线基础PengYang-CAN总线的起源随着汽车工业的发展,出于对安全性、舒适性、方便性、低公害、低成本的要求,各种各样的电子控制系统不断地发展。CAN总线基础-CAN总线的起源这些电子控制系统之间简单的线控连接,又影响了汽车工业的发展。传统的节点通讯方式CAN总线基础-CAN总线的起源CAN总线技术的应用,可以很好地解决这些问题,并推动着汽车电子的进一步发展。CAN总线通讯方式CAN总线基础-车载网络的构想CAN总线基础-CAN的应用示例CAN总线基础-什么是CAN?CAN是ControllerAreaNetwork的缩写(以下称为CAN),是德国Bosch公司为解决现代汽车中众多控制单元、测试仪器之间的实时数据交换而开发的一种串行通信协议。CAN总线基础-CAN总线拓扑图CAN总线基础-CAN总线的特点——多主控制在总线空闲时,所有的单元都可开始发送消息(多主控制)。最先访问总线的单元可获得发送权(采用CSMA/CA方式)。多个单元同时开始发送时,发送高优先级ID消息的单元可获得发送权。CSMA/CA:CarrierSenseMultipleAccess/CollisionAvoidance多路径载波侦听/冲突处理——消息的发送在CAN协议中,所有的消息都以固定的格式发送。总线空闲时,所有与总线相连的单元都可以开始发送新消息。两个以上的单元同时开始发送消息时,根据标识符(Identifier以下称为ID)决定优先级。ID并不是表示发送的目的地址,而是表示访问总线的消息的优先级。两个以上的单元同时开始发送消息时,对各消息ID的每个位进行逐个仲裁比较。仲裁获胜(被判定为优先级最高)的单元可继续发送消息,仲裁失利的单元则立刻停止发送而进行接收工作。ID值越小的优先级别就越高。有广播/多点传播能力。CAN总线基础-CAN总线的特点——系统的柔软性与总线相连的单元没有类似于“地址”的信息。因此在总线上增加单元时,连接在总线上的其它单元的软硬件及应用层都不需要改变。节点数量不受协议限制,节点容易连接或断开。——通信速度根据整个网络的规模,可设定适合的通信速度。在同一网络中,所有单元必须设定成统一的通信速度。即使有一个单元的通信速度与其它的不一样,此单元也会输出错误信号,妨碍整个网络的通信。不同网络间则可以有不同的通信速度。不同通信速度的子网之间的通信可以通过网关来切换。CAN总线基础——远程数据请求——错误处理错误检测功能/错误通知功能/错误恢复功能。所有的单元都可以检测错误(错误检测功能)。检测出错误的单元会立即同时通知其他所有单元(错误通知功能)。正在发送消息的单元一旦检测出错误,会强制结束当前的发送。强制结束发送的单元会不断反复地重新发送此消息直到成功发送为止(错误恢复功能)。-CAN总线的特点CAN总线基础可通过发送“遥控帧”请求其他单元发送数据。诊断功能就属远程数据。——故障封闭CAN可以判断出错误的类型是总线上暂时的数据错误(如外部噪声等)还是持续的数据错误(如单元内部故障、驱动器故障、断线等)。由此功能,当总线上发生持续数据错误时,可将引起此故障的单元从总线上隔离出去。——连接CAN总线是可同时连接多个单元的总线。可连接的单元总数理论上是没有限制的,但实际上可连接的单元数受总线上的时间延迟及电气负载的限制。降低通信速度可连接的单元数增加提高通信速度则可连接的单元数减少。-CAN总线的特点CAN总线基础-CAN总线的特点CAN总线基础——鲁棒性●CAN可以工作在非常恶劣的环境下,它的强大的错误检测机制可以保证检测到任何传输错误。●ISO11898标准“建议”接口芯片应设计成即使在下述条件仍然能够通讯:两条线中的一条被切断其中一条线对电源短路其中一条线对地短路!Bosch曾计算过以2000小时/年使用时间、500kbps速率、25%的总线负载率每1000年才漏检一个错误。-CAN总线的特点CAN总线基础——CAN差分信号驱动设计对于电磁干扰(EMI)是不敏感的-CAN总线的应用CAN总线基础CAN收发器和控制IC典型的应用硬件电路架构:——帧格式帧起始:它标志数据帧和远程帧的起始,由一个单独的“显性”位组成。只在总线空闲时,才允许站开始发送(信号)。所有的节点必须同步于首先开始发送信息的站的帧起始前沿。实际应用使用的为仲裁场和数据场。仲裁场中包含了消息的ID和数据长度,数据场为需要传输的各信号的状态数据。差分信号驱动差分信号驱动差分信号驱动差分信号驱动-CAN总线的应用CAN总线基础——CAN工作原理●在CAN总线上传输的数据报文包含发送节点和接收节点的部分信息。●每个报文的内容通过标识符识别,标识符在网络中是唯一的。▪标识符描述了数据的含义。▪某些特定的应用对标识符功能分配进行了标准化。●报文可以被所有节点同时接收。●可以进行相关性报文过滤,如果相关,就进行报文处理。-CAN总线的应用CAN总线基础主要窗口介绍仿真设置窗口测量设置窗口跟踪窗口图形窗口写窗口数据窗口统计窗口总线统计窗口-CANoe窗口与功能模块介绍主要窗口介绍仿真设置窗口-CANoe窗口与功能模块介绍主要窗口介绍仿真设置窗口仿真设置的配置配置CAN卡增加节点总线切换删除节点-CANoe窗口与功能模块介绍主要窗口介绍仿真设置窗口仿真设置窗口的布局-CANoe窗口与功能模块介绍主要窗口介绍仿真设置窗口仿真的操作模式:-RealBus-SimulatedBus动画因子和CAPL调试-Slavemode-CANoe窗口与功能模块介绍主要窗口介绍测量设置窗口作用:显示数据流图配置评估模块增加分析功能模块控制数据流-CANoe窗口与功能模块介绍CANoe的应用主要窗口介绍测量设置窗口配置功能:插入模块配置模块复制或移动模块改变显示模式-CANoe窗口与功能模块介绍CANoe的应用主要窗口介绍测量设置窗口配置功能:插入模块配置模块复制或移动模块改变显示模式-CANoe窗口与功能模块介绍CANoe的应用主要窗口介绍跟踪窗口图形窗口写窗口数据窗口统计窗口总线统计窗口评估窗口基于消息基于信号系统信息-CANoe窗口与功能模块介绍主要窗口介绍跟踪窗口-以文本方式显示消息-按列来显示不同内容-多种显示介面-CANoe窗口与功能模块介绍主要窗口介绍跟踪窗口-跟踪窗口的标准配置按时间顺序输出按时间顺序输出,周期更新固定位置输出,周期更新固定位置输出,周期更新-CANoe窗口与功能模块介绍主要窗口介绍跟踪窗口-跟踪窗口的列配置自由配置跟踪窗口的列自定义列并非所有的列都会有信息显示-CANoe窗口与功能模块介绍主要窗口介绍跟踪窗口-跟踪窗口的工具条选项-CANoe窗口与功能模块介绍主要窗口介绍图形窗口-CANoe窗口与功能模块介绍主要窗口介绍图形窗口-选择信号-CANoe窗口与功能模块介绍CANoe的应用主要窗口介绍图形窗口-信号响应曲线的类型LineStepsHorDots-测量点信号的输出模式PixelFull-CANoe窗口与功能模块介绍CANoe的应用主要窗口介绍图形窗口-测量过程中信号曲线显示设置测量开始Don'tchangeaxisSettimeaxisto:xxxsecondSettimeaxisto:xxxsecondandgetstoredscalings测量结束Fittimeaxis-CANoe窗口与功能模块介绍CANoe的应用主要窗口介绍写窗口-系统信息的输出-CAPL输出窗口-CANoe窗口与功能模块介绍CANoe的应用主要窗口介绍数据窗口-以数据形式显示信号按原始值显示按物理量显示Bar图显示-信号显示位置可以任意拖曳、组合-CANoe窗口与功能模块介绍CANoe的应用主要窗口介绍数据窗口-数据窗口的信号配置增加/删除信号定义新的信号描述修改已有的信号描述-CANoe窗口与功能模块介绍CANoe的应用主要窗口介绍数据窗口-设置数据窗口中信号值的显示格式PhysicalDecimalHexadecimalBinaryBarC-Style-CANoe窗口与功能模块介绍CANoe的应用主要窗口介绍统计窗口-分析消息频率-统计报告-直方条功能-CANoe窗口与功能模块介绍CANoe的应用主要窗口介绍统计窗口显示设置-统计方式消息时间间隔消息发生频率-颜色标识-窗口视图StandardTabView-图形缩放-CANoe窗口与功能模块介绍CANoe的应用主要窗口介绍统计窗口统计报告的输出-统计报告在写窗口输出,包括:消息数量平均时间间隔标准偏差最大/最小间隔-激活报告输出自动输出命令输出-CANoe窗口与功能模块介绍CANoe的应用主要窗口介绍总线统计窗口-显示硬件统计信息:总线负载峰值负载总线速率数据帧数量远程帧数量错误帧数量过载帧数量CAN控制器状态-总线统计的激活-CANoe窗口与功能模块介绍CANoe的应用附加功能模块与过滤器-CANoe窗口与功能模块介绍CANoe的应用附加功能模块与过滤器发生器模块-可指定发送列表-可指定触发条件-配置可保存为文件-可单次或周期性触发-CANoe窗口与功能模块介绍CANoe的应用附加功能模块与过滤器发生器模块-触发条件,可组合指定按键触发时间周期触发指定消息ID触发-触发方式单次触发周期性触发-CANoe窗口与功能模块介绍CANoe的应用附加功能模块与过滤器发生器模块-配置发送列表消息IDDLC数据字节CAN控制器通道-CANoe窗口与功能模块介绍CANoe的应用附加功能模块与过滤器发生器模块物理信号值的输入-可使用消息符号名来定义发送列表-消息中的数据字节也可以通过物理信号值来指定-信号值是离散的,所指定的物理信号值会自动园整倒最接近的离散值-CANoe窗口与功能模块介绍CANoe的应用附加功能模块与过滤器发生器模块使用函数发生器生成发送列表-按照信号响应曲线自动生成发送列表梯形方形三角形锯齿形常数-CANoe窗口与功能模块介绍CANoe的应用附加功能模块与过滤器交互发生器消息模块-产生和发送信息-在测量过程中在线配置,交互发送消息-可作为网关-CANoe窗口与功能模块介绍CANoe的应用附加功能模块与过滤器交互发生器消息模块配置对话框:-两种显示方式消息发送列表消息信号列表-两种消息配置方式消息符号名自定义消息ID-CANoe窗口与功能模块介绍CANoe的应用附加功能模块与过滤器交互发生器消息模块触发条件的设置:-交互式触发-按键触发-时间周期触发-CANoe窗口与功能模块介绍CANoe的应用附加功能模块与过滤器交互发生器消息模块快捷键-CANoe窗口与功能模块介绍CANoe的应用附加功能模块与过滤器交互发生器消息模块如何用作网关-CANoe窗口与功能模块介绍CANoe的应用附加功能模块与过滤器回放模块-离线回放-在线回放-回放CAN消息与环境变量-单次与周期性回放-选择性回放-指定回放时间按-CANoe窗口与功能模块介绍CANoe的应用附加功能模块与过滤器回放模块-配置-CANoe窗口与功能模块介绍CANoe的应用附加功能模块与过滤器过滤器模块-类型:PF通过滤器SF阻过滤器-过滤的消息类型消息ID错误帧网络节点属性-CANoe窗口与功能模块介绍CANoe的应用附加功能模块与过滤器通道过滤器模块-完全阻断或通过某个通道的所有消息-在测量设置数据流图中的显示方式:小方块图案标识阻断通道为断开的红线通过通道为绿线-CANoe窗口与功能模块介绍CANoe的应用附加功能模块与过滤器仿真设置中的CAPL节点常用操作:-插入CAPL节点-激活CAPL节点-配置CAPL节点-打开CAPLBrower-选择CAPL的程序-断开CAPL节点-编译CAPL节点-CANoe窗口与功能模块介绍CANoe的应用附加功能模块与过滤器测量设置中的CAPL节点常用操作:-插入CAPL节点-激活CAPL节点-配置CAPL节点-打开CAPLB