CAN通信使用说明本文档主要介绍,CAN通信的使用方法。
关键词:KV ASER、CANMOON、CANA(CANOPEN)、CANB(CAN2)。
1.K V ASER的作用及使用方法KV ASER是一种USB转CAN的编程电缆, 电缆上的USB口与本地计算机上的USB口相接,电缆上的CAN口和控制器CAN口连接。
通过电缆我们可以把本地计算机上编写好的程序下载到控制器中。
可通过KV ASER编程电缆监视控制器程序运行状况,在线调试程序。
KV ASER驱动的安装:使用KV ASER时,需要在计算机上安装驱动程序。
打开Kvaser_Drivers软件包。
里面有关于KV ASER的各种安装软件。
这里我们选择安装Drivers和CANKing(用于设置和监视CAN通信有关的参数)即可。
一般安装时,先安装Drivers再安装CANKing。
安装Drivers时这里需要说明下,对于计算机使用不同的操作系统需要安装相应的驱动程序。
安装程序分为XP、98。
用户根据自己使用的操作系统选择安装即可。
安装CANKing只需要打开软件包,双击执行下面程序即可。
2.C ANMOON的作用及使用方法CANMOON是用做配置EPEC类控制器CAN总线网络接点及监控通信参数的软件。
CAN总线中接点的ID号、主从关系、通信速率等参数均在此软件中设置。
我们现在使用最新版本的CANMOON版本为1.8版.注:在使用CANMOON进行参数配置时,我们必须先做一些工作.CANMOON软件包需要系统动态链接库文件的支持,我们必须将此文件复制拷贝到window操作系统的SYSTEM32目录中,这样我们才能打开CANMOOM软件,否则我们将无法打开CANMOON软件。
配置文件在打开CANMOON1.8软件包如下图所示:拷贝配置文件到SYSTEM32中,我们便能使用CANMOON软件。
鼠标双击上图所示的CANMOON.EXE.进入运行程序.主界面如下图所示:窗口画面由工具栏(左上)、功能按钮(下底)、状态显示窗口(左部分为命令码窗口,右半部分为数据显示窗口)等部分组成。
工具栏CanSettings:在这里我们设置CAN总线通信速率,通信驱动的类型等。
一般CAN通信波特率我们选择250KBps,驱动使用Kvaser。
这里我们使用默认值即可。
Tools:这里可以组态设置关于节点的参数;读输入、输出过程映象区及中间过程映象区数据,修改输出及中间过程映象区数据;扫描总线上节点;下载、上载控制器参数数据等功能。
框图中的节点号为当面需要配置修改参数的节点号,我们才能进入模块配置对话要知道我们需要配置修改的PLC的节点号,我们可以选择Scan nodes按钮先对联机的在CAN总线上的PLC进行节点扫描。
扫描结果显示在主窗口右边。
本例子总线上有两个节点1号和4号。
在ID号栏中填写节点号后,我们可以对总线上节点进行重新配置。
模块配置窗口如下:在此栏中我们可以从新设置本PLC在总线上节点的ID号、终端电阻的有无、通信速率、主从配置、通信过载处理方式等。
依据系统设计要求,依次填入数值,OK保存,断电后重新上电,新的配置参数生效,这时新的节点号及其相关参数被写入当前的PLC中。
(此处只需要设置Node ID,波特率,节点的主从状态,其他参数不需要设置。
)点击Tools下拉菜单中Read input memory或Read output memory我们可以读取输入、输出存储区的数据。
此数据为当前控制器中存储器中的数据,我们可以再次监视对应输入、输出区的数值。
点击Tools下拉菜单中Change parameter values、Change output memory、Change memory area我们改变参数值、输出存储区数据值、记忆区值。
这里对于我们调试程序,赋值有用。
在地址中填写需要修改的地址区,赋值栏里输入需要修改的值。
点击Change value 新值便赋值给你说想要赋值的地址。
点击Tools下拉菜单中Scan nodes,可对总线上的节点进行扫描。
扫描出的节点号结果显示在右半窗口中。
这和主画面上的Scan nodes按钮功能一样。
点击Tools下拉菜单中Downlaod,可将用户配置参数导入到当前节点的PLC中。
点击Tools下拉菜单中Uplaod,可将当前节点的PLC配置参数如出到本地计算机,这样有利于我们保存、分析参数。
点击Tools下拉菜单中Canopen object tool,我们可以监视、设置和通信块相关的参数。
Save:我们可以保存我们预设参数值到当前的PLC中。
其中可以选择保存所有参数值、通信参数值、出厂参数值等到当前PLC中。
Clear:我们可以清除在当前的PLC中参数值。
其中可以选择删除通信参数值、应用参数、应用等。
Help:查看CANMOON软件版本号。
状态显示窗口状态窗口在主窗口的正中间,分为左右两个部分。
右边显示执行的各种代码指令,左边显示控总线连接状态、节点号、参数数据等各种状态信息。
按键区按键区分布在住窗口的下部,点击响应的按钮可以执行相应的功能。
Clear Screen:清屏按键,清空状态显示窗口中的所有内容。
Params:参数显示按键,显示当前节点PLC里中间存储器参数数值。
Scan nodes:节点扫描按键,联机状态下扫描连接在总线上的所有节点。
扫描结果显示在状态显示窗口中。
StartremoteNodes:启动远程节点按键,StopremoteNodes:停止远程节点按键,EnterPreOperational:进入预操作按键,ResetALLNodes:复位所有节点按键,对总线上所有节点进行复位操作。
Online:在线按键,使计算机连接到控制器上。
Offline:离线按键,使计算机与控制器脱离连接。
Send Can Msg:发送指令按键,在发送指令框中编辑指令然后发送到控制器中,实施一些操作。
CAN通信每个操作都是一条指令,通过发送相应的指令我们可以实施各种操作。
比如,存储器复位、存储器清空、查看存储器中的数据等。
3.C ANOPEN通信一、物理层C A N o p e n物理层遵循 I S O11898标准.默认传输速率为 250k b i t/s;二、C A N o p e n使用标准的C A N桢,有11位标识符,0-8b y t e s有效数据。
I D L E N D0D1D2D3D4D5D6D711 b i t 8b i t8b i t8b i t8b i t8b i t8b i t8b i t8b i t8b i tC A N M e s s a g e=C A N F r a m e三、C A N总线串行数据传输C A N分为C A N2.0A和C A N2.0B两种硬件标准,C A N2.0A有11位标识符,而C A N2.0B有11位和29位两种标识符。
C A N O p e n遵循的是C A N2.0A标准,有11位标识符。
四、主从关系每一个 C A N o p e n设备都有一个接点号,C A N o p e n网络有一个主接点,可以有多个从接点。
C A N o p e n主接点的作用为:激活网络;停止网络;隔离错误接点E P E C系统的主从由 C A N m o o n设置。
E P E C系统C A N o p e n主接点的作用是激活网络。
C A N o p e n系统所有接点由 I D号标识。
I D号 范围1..127, 即C A N o p e n网络最多可以有127不同的接点。
五、P D O协议P D O=P r o c e s s D a t a O b j e c t,即C A N信息。
C A N o p e n设备之间通过PD O传递信息。
P D O所传输的是工作数据。
P D O(t x)(T r a n s m i t P D O)发送者 (C A N o p e n n o d e)发送信息到 C A N总线上,而接受者根据需要从C A N总线读取信息。
通讯方式为一点对多点。
类似以太网络的广播通讯。
六、S D O协议S D O=S e r v i c e D a t a O b j e c tS D O所传输的是服务数据。
S D O客户机发送需求信息到S D O服务器,S D O服务器发送应答信息回S D O客户机。
通讯方式为点对点。
有两种基本的S D O服务,下载S D O(写)和上传S D O(读).下载 S D O用于客户机改变服务器里的目标值,上传 S D O用于客户机读取服务器里的目标值.S D O传输可以并不只是一问一答,可以传输更多的报文,叫 S D O块服务。
针对E P E C产品,其s d o使用报文格式及功能如下:(1).I W读取600+I D,8,40,2,20,地址,0,0,0,0读取成功返回580+I D,8,4B,2,20,地址,D_L,D_H,0,0(2).Q W读取600+I D,8,40,3,20,地址,0,0,0,0读取成功返回580+I D,8,4B,3,20,地址,D_L,D_H,0,0读取Q X的方法:先将其对应的Q W收下来,在进行数据处理后得到它的值(3).Q W修改600+I D,8,2B,3,20,地址,D_L,D_H,0,0读取成功返回580+I D,8,60,3,20,地址,0,0,0,0修改Q X的方法:,和修改Q W方法一致。
(4).M W读取600+I D,8,40,0,20,地址,0,0,0,0读取成功返回580+I D,8,4B,2,20,地址,D_L,D_H,0,0(5).M W修改600+I D,8,2B,0,20,地址,D_L,D_H,0,0读取成功返回580+I D,8,60,0,20,地址,0,0,0,0(6).清空控制程序600+I D号,8,23,10,10,04,6b,69,6c,6c注:以上的“D_L,D_H”分别代表一个U I N T数据类型的低位和高位。
“地址”代表需要修改的数据值所对应的地址。
七、预定义连接设置最基本的预定义连接设置表示系统不用另外的设置就可通讯,下表所示为C A N接点的报文I D号,由11位二进制数组成,高4位为功能代码,低7位为接点的I D号。
E P E C中的报文I D表示。
n o d e I D1n o d e I D2n o d e I D3n o d e I D15 P D O1(t x)0x1810x1820x1830x18FP D O2(t x)0x2810x2820x2830x28FP D O3(t x)0x3810x3820x3830x38FP D O4(t x)0x4810x4820x4830x48F八、C A N O P E N在E P E C3G I E C模块中的应用系统设计必须对网络接点I D进行配置,选择一个接点作为主接点,在每个接点写C A N O P E N 的初始化代码,所有数据必须用输入输出映象区进行分配。