CANopenTraining讲义P1.P2培训目标:1.认知CANopen应用层通讯协议;2.了解CANopen数据链路层和物理层通讯协议;3.熟悉STBDIO产品;4.学会使用M340+STB组建简单的现场总线系统;5.学会解决基本的现场总线问题。培训对象:硬件工程师2,3,4软件工程师1,2,3,4产品验证工程师1,2,3,4系统验证工程师1,2,3,4,5L3技术支持工程师1,2,3,4,5P3前言现场总线在工业自动化的应用场合P4现场总线对工业自动化的帮助1.工业=〉自动化更高效2.OEM客户=〉设备更简单3.ENDUSER客户=〉过程更可靠P5施耐德电气现场总线CANopen在OEM产品中的应用画图人机接口,控制柜,机器。P6施耐德电气现场总线CANopen在ENDUSER产品中的应用画图人机接口,中央控室,现场控制室,现场信号,执行器。P7M340CANopen应用P8内容P9OEM基本解决方案画图控制单元的组成,机器的应用行业,传统的应用,现场总线的应用。P10施耐德电气OEM基于M340现场总线解决方案P11建立一个M340CANopen应用P12现场总线的硬件连接1.RS485信号,信号地。2.节点,干缆线,分支线,分支器,终端电阻。P13主站配置1.Bus参数2.Input和Output字占PLC定位变量资源配置画图PDO,SDOP14选择从站设备P15从站设备配置1.PDO2.ErrorControl=SDO3.Bootup=SDO4.ObjectDictionary=SDO5.Configuration=SDOP16应用程序编制1.PDO实时交换数据2.SDO参数修改P17STBDIO产品介绍P18内容P19STB概述1.NIM2.PDM3.IOmodules4.Island5.NetworkP20典型STB应用图P21NIM通讯接口种类P22STBDIO系统的构成P23STBBUS安装P24NIMP25Base1.logicpower2.sensor,actuatorpower3.auto-addressing4.communication5.basetypeP26STBXBA1000P27STB组装例子P28STB扩展1.EOSSTBXBE1000,11002.BOSSTBXBE1200,1300P29STB扩展组装例子P30STB扩展CANopen设备STBXBE2100P31Advantys介绍1.Configuration2.IOImageoverview3.ExportDCFP32STB项目配置流程P33CANopenP34内容1.物理层2.数据链路层3.应用层P35CAN历史1.汽车电子应用2.CANinAutomation=CAL=新的子协议CANopen是基于CAL的高层协议。CANopen是基于CAN的模板系列,1993年起,由bosch公司领导的一个欧洲机构在Esprit工程中研究出一个协议原型,由此发展成为CANopen规范。1995年,CANopen规范移交给CiA,一个国际用户和制造者的组织,由其进行维护与发展。3.CANopenDS-301应用层协议4.第一个应用环境简单模型与解决方案独立CAN控制器SJA1000+单片机89C51带CAN控制器的单片机LPC2000系列ARM7CAN收发器82C250,TJA1040,TJA1050画图P36ISO模型画图应用层CAL.CANopenSAEJ1939SDSDeviceNetP37网络描述P38简单的总线拓扑P39菊花链拓扑P40带有TAP的拓扑P41带全电源的拓扑P42带部分电源的拓扑P43分支电源拓扑P44供电TAP图P45电缆长度和波特率关系P46施耐德电气CANopen电缆产品P47施耐德电气CANopenTAP和Connector产品P48CANopenIP20Pin脚定义P49CANopenIP67Pin脚定义P50数据链路层1.数据2.远程3.错误4.过载P51数据数据frame将数据从发送器传输到接收器。RTR位必须为显性。1.Frame起始一个显性位2.仲裁域11位标识符和RTR位组成3.控制域4位表示数据长度(0~8字节)4.数据域(长度可以为0)5.CRC6.应答域7.Frame结尾P52远程总线单元发出远程frame,请求发送具有同一标识符的数据frame。作为某数据接收器的站,通过发送远程frame可以启动其资源节点传送它们各自的数据。RTR位必须为隐性。P53广播数据CAN节点只需要对报文的标识符滤波即可实现点对点、一点对多点及全局广播等几种方式传送接收数据。P54远程数据P55总线监听CAN采用非破坏总线仲裁技术当多个节点同时向总线发送信息出现冲突时,优先级较低的节点会主动地退出发送,而最高优先级的节点可不受影响地继续传输数据,从而大大节省了总线冲突冲裁时间。尤其是在网络负载很重的情况下,也不会出现网络瘫痪情况(以太网则可能)。CAN总线上用”显性”和”隐性”两个互补的逻辑值表示”0”和”1”。当在总线上出现同时发送显性和隐性位时,其结果是总线数值为显性(即”0”与”1”的结果为”0”)。P56数据处理规约P57设备模型P58通讯模型P59通讯服务类型P60COB-ID表广播一对一P61对象字典P62通讯对象部分P63厂商对象部分P64应用对象部分P65~71PDO1.过程数据对象(ProcessDataObject)特点:数据隐性交换无需确认服务(写PDO)应用于过程数据(实时)2.PDO有2种使用类型:数据发送(TPDO)影响总线负载数据接收(RPDO)不影响总线负载3.PDO通讯模型:生产者/消费者协议写PDO生产者消费者请求指示数据指示指示写PDO读PDO4.PDO数据结构:PDOCANDataFrameSOFArbitr.fieldCtrlfieldDatafieldCRCACKEOF1bitCOB-ID12/32bitsDatalength6bits0~8bytes16bits2bits7bitsTPDOObjectMappingNameIndexSub-IndexContentMeaningDeviceType1000000010192TypeandProfileComm.Object,RPDO_1180005No.ofentries1182COB-ID2FFTransm.Type332Inhibittimer564EventtimerMapp.Object,RPDO_11A0001No.ofentries160410010Dataobject_1ATV31_Drive6041statusDrivestatusreg.RPDOObjectMappingNameIndexSub-IndexContentMeaningDeviceType1000000010192TypeandProfileComm.Object,RPDO_1140003No.ofentries1202COB-ID2FFTransm.Type332InhibittimerMapp.Object,RPDO_1160001No.ofentries生产者消费者请求指示数据远程发送请求确认响应读PDO指示指示指示请求请求160400010Dataobject_1ATV31_Drive6040cmdDrivecmdreg.5.传输模式:非周期同步传输周期同步传输事件驱动传输6.触发模式:a)事件和时间触发-传输PDO条件,Profile中定义的事件,或者event-time事件定时器。-TT=254,255,异步传输。b)远程请求触发-传输PDO条件,RTR远程发送请求。-TT=253,异步传输。c)同步对象触发-传输PDO条件,SYNC对象。-TT=1~240,同步周期传输。*c)同步对象和a)事件组合触发条件TT=0,同步非周期传输。*c)同步对象和b)远程请求组合触发条件TT=252,同步传输。*为防止a)事件类型触发条件过于频繁,传输PDO占据大量总线负载,加入inhibit-time抑制时间PDO属性来避免传输PDO过于频繁。SYNC对象同步PDO事件驱动PDO同步窗口长度同步窗口长度tP72~80SDO1.服务数据对象(ServiceDataObject)特点:数据显性交换需确认服务应用于参数数据(配置)2.SDO通讯模型:客户/服务器协议3.SDO数据结构:SDOCANDataFrameSOFArbitr.fieldCtrlfieldDatafieldCRCACKEOF1bitCOB-ID12/32bitsDatalength6bits0~8bytes16bits2bits7bitsSDOCANDataFrame中的数据域HeadIndexSub-IndexDataUpload-8wordsHead-2bytesccs-bit5~7clientcommand=2(010)scs-bit5~7servercommand=2(010)x-bit4无用n-bit2~3e=1,s=1时有效,数据个数=4-ne-bit1传输类型s-bit0数据个数标志Client40IndexSub-IndexData01000000Server42IndexSub-IndexData01000010Server客户服务器请求指示数据客户/服务器通信确认响应数据43IndexSub-IndexData01000011Server47IndexSub-IndexData01000111Server4BIndexSub-IndexData01001011Server4FIndexSub-IndexData01001111Download-8wordsHead-2bytesccs-bit5~7clientcommand=1(001)scs-bit5~7servercommand=3(011)x-bit4无用n-bit2~3e=1,s=1时有效,数据个数=4-ne-bit1传输类型s-bit0数据个数标志Client22IndexSub-IndexData00100010Client23IndexSub-IndexData00100011Client27IndexSub-IndexData00100111Client2BIndexSub-IndexData00101011Client2FIndexSub-IndexData00101111Server60IndexSub-IndexData01100000Abort-8wordsServer80IndexSub-IndexData10000000P81~P86NMT启动node停止nodeNode进入预操作模式Node复位Node通讯复位错误控制,Nodeguarding错误控制,HeartbeatNMT状态和通讯对象P87~P88EMCYP89~P90SYNCP91~P92TIME