
一、设备安装
1.设备尺寸(GCAN-IO-4055图纸)
设备外形尺寸:(长,含接线端子)122mm * (宽)70mm * (高)25mm,其示意图如图 2.1 所示。

图 2.1 GCAN-4055 外形尺寸
2.接口定义及功能
GCAN-4055模块集成一路 DC9-30V电源接口、1路标准CANopen接口、8路开关量输入接口、8路开关量输出接口。GCAN-4055模块电源接口、8路开关量输入接口位置如图2.2所示,接口定义如表2.2所示。

图 2.2 电源及 8 路开关量输入接口位置

表 2.2 电源及 8 路开关量输入接口定义
GCAN-4055模块CAN-bus通道,由1个4 Pin插拔式接线端子引出,可以用于连接1个CAN-bus网络或者CAN-bus接口的设备。GCAN-4055模块CAN-bus接口、8路开关量输出接口位置如图2.3所示,接口定义如表2.3所示。

图 2.3 CAN-bus 接口、8 路开关量输出接口位置

表 2.3 CAN-bus 接口、8 路开关量输出接口定义
GCAN-4055模块拨码开关如图2.4所示,GCAN-4055模块拨码开关最左侧为复位按键,默认在下方,为调试接口,请不要拨动。复位按键右侧7位为节点号设置开关。最右侧4位为波特率设置开关。左侧为高位,右侧为低位。

图 2.4 GCAN-4055 模块拨码开关
二、设备使用
1.电源连接
GCAN-4055 模块支持工业现场常见的+9-30V DC 直流电源。为保证模块可靠工作,建议您使用+12V 或+24V 的 DC 直流稳压电源。
GCAN-4055 模块电源提供反接保护,可防止用户因电源接线错误损坏模块。
2.与 CAN-bus 连接
GCAN-4055模块接入CAN总线连接方式为将CAN_H连CAN_H,CAN_L连CAN_L即可建立通信。
CAN-bus网络采用直线拓扑结构,总线最远的2个终端需要安装120Ω的终端电阻;如果节点数目大于2,中间节点不需要安装120Ω的终端电阻。对于分支连接,其长度不应超过3米。CAN-bus总线的连接如图3.1所示。

图 3.1 CAN-bus 网络的拓扑结构
请注意:CAN-bus 电缆可以使用普通双绞线、屏蔽双绞线。理论最大通信距离主要取决于总线波特率,最大总线长度和波特率关系详见表 3.1。若通讯距离超过 1km,应保证线的截面积大于Φ1.0mm2,具体规格应根据距离而定,常规是随距离的加长而适当加大。

表 3.1 波特率与最大总线长度参照表
3.CAN 总线终端电阻
为了增强CAN通讯的可靠性,消除CAN总线终端信号反射干扰,CAN总线网络最远的两个端点通常要加入终端匹配电阻,如图3.2所示。终端匹配电阻的值由传输电缆的特性阻抗所决定。例如双绞线的特性阻抗为120Ω,则总线上的两个端点也应集成120Ω终端电阻。如果网络上其他节点使用不同的收发器,则终端电阻须另外计算。

图 3.2 GCAN-4055 与其他 CAN 节点设备连接
请注意:GCAN-4055模块内部未集成120Ω终端电阻。如果节点数目大于2,中间节点不需要安装120Ω的终端电阻。需要使用时,将电阻两端分别接入CAN_H、CAN_L即可,如图3.2所示。
4.系统状态指示灯
GCAN-4055模块具有1个PWR指示灯、1个SYS指示灯、1个CAN指示灯来指示设备的运行状态。这3个指示灯的具体指示功能及状态如表3.2所示。

表 3.2 GCAN-4055 模块指示灯状态
三、配置说明
用户可使用模块上方的拨码开关自行设定 GCAN-4055 模块的参数,以满足实际应用场合的需要。GCAN-4055 模块的配置,包括模块的节点号和波特率两部分。
请注意:通过拨码开关改变 GCAN-4055 模块的参数之后,需要重新对模块上电之后,新的参数才会生效。
1.CAN 节点号配置
如图 4.1 所示,拨码开关的每个位拨向“ON“位置时,该位为“1”,如果拨向“OFF”位置,则该位为“0”。 拨码开关的 2-8 位用于设定模块的节点号(MAC ID),第八位为最低位,第二位为最高位,模块的节点号(MAC ID)是各位对应的十进制值之和,通过拨码开关设定模块的节点号(MAC ID)的有效范围为0~127。
请注意:拨码开关第一位为配置拨码,默认为 OFF(下方),请不要拨动。

图 4.1 CAN 节点号配置说明
2.CAN 波特率配置
右侧拨码开关的 1-4 位用于设定模块的波特率,第一位为低位,第四位为高位。波特率与开关设置对应值如下表 4.2 所示。

图 4.2 CAN 波特率配置说明
四、通讯报文格式
本章将使用广成科技 USBCAN-II Pro 模块及 ECANTools 软件可以进行 CAN总线数据的接收与发送。软件附带的 CANopen 主站功能可以帮助调试 CANopen从站,非常的方便实用。
使用广成科技的 USBCAN 总线分析仪可模拟 CAN 总线通信设备,进行GCAN-4055 模块的通讯测试。USBCAN 总线分析仪是一种直观的 CAN 总线调试分析工具,使用该设备可以通过电脑监控、模拟 CAN 数据收发,是从事 总线行业的工程师必备的工具。
1.节点状态
GCAN-4055 模块满足标准 CANopen CiA 301 协议,是标准的 CANopen 从站设备。GCAN-4055 启动后将主动发出一帧数据给主站,帧 ID 为 0x700+Node ID。
例如:通过拨码开关设置 GCAN-4055 的 Node ID 为 1(以下节点号均为 1),则 USBCAN-II Pro 作为主站设备可接收到一条节点状态数据,帧 ID 为 0x701,帧数据为 0x7F,默认循环时间为 1s(对象字典 0x100C,节点守护时间)。如图5.1 所示,使用 GCANTools 软件可以收到这条数据。
启动数据中,帧数据的第一个字节为节点状态值(Node state values)。当该值为 0x04 时,说明节点处于停止状态;当该值为 0x05 时,说明节点处于操作状态;当该值为 0x7F 时,说明节点处于预操作状态。

图 5.1 启动命令监控界面
2.NMT 命令
GCAN-4055 模块接收由主站发出的操作指令,帧 ID 为 0x000,DLC 为 2,帧数据第一个字节为命令符,第二个字节为节点号(若为 00 则控制全部节点)。
例如:GCAN-4055 的 Node ID 为 1,命令 GCAN-4055 为进入操作状态(01),则 NMT 命令帧 ID 为 0x000,帧数据为 0x01,0x01。该命令也可由 GCANTools软件的 CANopen 插件发出。


图 5.2 NMT 命令发送界面
使用 GCANTools 软件命令 GCAN-4055 进入操作状态的步骤是:①将从站节点号填入 ID 后面的文本框中,②点击添加从站按钮,③打开节点左侧的+号,并点击“NMT”,④选择“Start Remote Node”(默认),点击下方的“NMT”按钮。如图 5.3 所示,发送后可在 GCANTools 监控界面中查看到 NMT 命令,且发送完NMT 命令后,节点状态变为 0x05(操作状态)。

图 5.3 NMT 命令监控界面
3.PDO 命令
GCAN-4055 模块采用 PDO(Process Data Object,过程数据对象)对数字量信号进行采集或输出。其中,TPDO1 用于表示数字量输入及数字量输出目前的状态,RPDO1 用于改变(写入)数字量输出的状态。
数字量输入和数字量输出的状态均各由一个字节来表示,DI_7 和 DO_7 在高位,DI_0 和 DO_0 在低位。
如需要设置 GCAN-4055 模块数字量输出的状态,需接收 RPDO1 命令(由主站发出的),帧 ID 为 0x200+Node ID,数据长度为 1,帧数据第一个字节为需要设置的数字量输出状态。
例如,GCAN-4055 模块节点号设为 1。若需要设置 DO_3 状态为 1,其余 DO状态均为 0,则 RPDO1 命令的帧 ID 为 0x201,数据长度(DLC)为 1,帧数据为 0x08。

如图 5.4 所示,在 ECANTools 软件的 CANopen 插件中,点击左侧的“PDO”,之后选取右侧的“RXPDO(主发送)”,在 RXPDO1 中修改数据为 08,点击发送即可控制 DO_3 的状态为 1。如图 5.5,回到收发界面(Receive/Transmit)可以看到 USBCAN-II Pro 发出的 RPDO1 命令(帧 ID 为 0x201)。
GCAN-4055 的 TPDO 传输模式可配置,默认为触发模式,在此模式下只有当 DI 发生变化时,GCAN-4055 模块才会发出 TPDO 数据。
如图 5.6 所示,GCAN-4055 模块在发出 TPDO1 数据时,帧 ID 为 0x180+NodeID,数据长度为 1,帧数据第一个字节为目前的数字量输入状态。

图 5.4 PDO 命令发送界面

图 5.5 RXPDO 命令监控界面
例如,GCAN-4055 模块节点号设为 1。此时 DO_3 状态为 1,其余 DO 状态均为 0。则 CAN 总线一端显示的 DO 状态数据为 08。

图 5.6 TXPDO 命令监控界面
例如,GCAN-4055 模块节点号设为 1。此时 DI_2 状态为 1,其余 DI 状态均为 0。则 CAN 总线一端显示的 DI 状态数据为 04。

4.SDO 命令
GCAN-4055 模块可通过发送 SDO 命令写参数,修改 TPDO 的传输类型。该传输类型的数据位于对象字典索引 0x1800、子索引 0x02,数据类型 Unsigned8。数据为 0xFF 时为触发模式,数据为 0xFE 时为循环模式。
触发模式:指只有在 DI 或 DO 状态发生变化时,代表 DI 和 DO 状态的 TPDO才会发送。
循环模式:指 GCAN-4055 每间隔一段时间就会发出 TPDO 数据。
需要在 GCAN-4055 处于预操作状态(0x7F)时,发送 SDO 命令读写参数。将默认的触发模式切换为循环模式的具体修改步骤如下:①若 GCAN-4055 不处于预操作状态,将 GCAN-4055 重新上电,进入 GCANTools 软件的 CANopen 插件,点击 NMT,选择 Enter Pre-operational State,之后点击 NMT 按钮,使设备进入预操作状态,②在 CANopen 界面中,点击左侧的“SDO”,③点击“SDO下载(写参数)”,④在索引、子索引等位置依次输入 0x1800、0x02、Unsigned8、0xFE、十六进制,如图 5.7 所示,之后点击 Send 按钮。若下方 SDO 应答区收到如图 5.7 的数据则说明通信正常。

图 5.7 SDO 命令发送界面 A
发送 SDO 命令后,在 CANopen 插件中点击 NMT,切换到 NMT 界面。选择Start Remote Node,之后点击 NMT 按钮,使设备进入操作状态,并循环发送TPDO 指令。数据如图 5.8 所示,帧 ID 为 0x601 的数据为 Client-to-server SDO数据,帧 ID 为 0x581 的数据为 Server-to-client SDO 数据。从图 5.8 中可看出,TPDO 数据的发送周期为 100ms。您还可以使用同样的方法,将 TPDO 的传输类型修改为触发模式。

图 5.8 SDO 命令监控界面 A
您可以通过发送 SDO 命令来对 TPDO 数据的截止时间(发送周期)进行修改。具体的修改步骤如下:①在 CANopen 插件中点击 NMT,切换到 NMT 界面。选择 Enter Pre-operational State,之后点击 NMT 按钮,使设备进入预操作状态,TPDO 指令停止发送,②在 ECANTools 软件的 CANopen 界面中,点击左侧的“SDO”,③点击“SDO 下载(写参数)”,④在索引、子索引等位置依次输入0x2000、0x01、Unsigned8、200、十进制,如图 5.9 所示,之后点击 Send 按钮。若下方 SDO 应答区收到如图 5.10 的数据则说明通信正常。
请注意:0x2000 代表对象字典中的索引,0x01 为子索引,Unsigned8 表示 8 位无符号字符,200表示循环时间为 200ms,十进制表示输入的数字为十进制。

图 5.9 SDO 命令发送界面 B
如图 5.10 所示,在 NMT 界面选择 Start Remote Node,使设备进入操作状态,TPDO 的截止时间(发送周期)此时已修改为 200ms。使用同样的方法,您还可以对节点守护时间进行修改。

图 5.10 SDO 命令监控界面 B
五、GCAN-4055 对象字典
参考用户手册20页:GCAN-4055 CANopen接口DIDO数据采集模块用户手册