J1939 转 CANopen-ADFweb网关转换器-广州信裕物联网
作者:邹武艺手机185-020-77899 邮箱805191985@qq.com
1、配置说明:
“J1939转CANopen网关”可实现J1939网络与CANopen网络之间的通信。
您需要在电脑上安装Compositor SW67150软件,以便执行以下操作:
定义J1939参数;
定义CANopen参数;
定义服务数据对象(SDO);
定义传输过程数据对象(TPDO);
定义接收过程数据对象(RPDO);
定义可从CANopen读取的J1939帧;
定义可从CANopen写入的J1939帧。
2、新项目 / 打开项目:
点击“新项目”按钮会创建一个文件夹,该文件夹包含整个设备的配置信息。
设备配置信息也可以进行导入和导出操作:
若要克隆可编程 J1939 至 CANopen 网关的配置,以便以相同方式配置另一台设备,则必须保留该文件夹及其所有内容。
若要克隆一个项目以获得该项目的不同版本,只需将项目文件夹复制一份并赋予新名称,然后点击“打开项目”按钮打开新文件夹即可。
当创建新项目或打开现有项目时,将能够访问软件的各个配置部分:
设置通信;
接收 J1939;
发送 J1939;
定义 SDO(服务数据对象);
定义 TPDO(传输过程数据对象);
定义 RPDO(接收过程数据对象);
设置 SDO 客户端;
设置节点守护;
EDS 文件。
3、通信设置
本部分定义了两条总线(J1939 和 CANopen)的基本通信参数。
在 SW67150 主窗口(图 2)中按下“设置通信”按钮后,将弹出“设置通信”窗口(图 3):
• 在“波特率”字段中,定义两条总线的速率;
• 在“数据超时时间”字段中输入一个时间值,当超过该时间后,数据将不可靠,在 CANopen 寄存器中将显示“FFFF”;
• 如果勾选“点对点”字段,则仅考虑 PGN 字段,而不考虑 ID 设备字段;
• 如果勾选“启动时设置为运行状态”字段,当设备开启时,它将进入运行模式;否则将进入预运行模式;
• 如果勾选“启动时启动网络”字段,当设备开启时,它将使网络上所有节点进入运行模式;
• 在“延迟”字段中输入一个时间值,该时间表示网关在发送启动消息前等待的秒数;
• 在“ID 设备”字段中,定义 CANopen 地址;
• 在“TPDO”字段中,选择发送 PDO 的方式。可以选择仅在数据字节发生变化时发送 PDO(“数据变化时发送”),也可以选择以毫秒为间隔周期性发送 PDO(“周期性发送”);
• 在“节点守护”字段中,可以启用节点守护功能,用于检查 CANopen 设备的状态(“启用节点守护”)。可以将这些 CANopen 设备的状态周期性地直接发送到 J1939 网络(“将状态发送到 J1939 网络”以及“每隔多少毫秒发送帧”)。更多信息请参见第 16 页;
• 在“SDO 客户端”字段中,可以激活从 J1939 命令发送 SDO 客户端请求的功能(“启用 SDO 客户端”)。可以设置该 SDO 请求的最大超时时间,以十分之一毫秒为单位(“SDO 超时时间(十分之一毫秒)”)。更多信息请参见第 14 页。
4、接收J1939数据:
从SW67212主窗口(图2)点击“接收J1939”按钮后,将弹出“接收J1939帧”窗口(图4)。
在正确的情况下:
• 在“PGN”字段中输入您要从CANopen读取的数据的PGN(在J1939协议中,PGN是一个标识符);
• 在“设备ID”字段中输入传输该帧的J1939设备的ID;
• 如果勾选了“删除”字段,当CANopen端的“超时数据”到期时,可以读取“0xFF”。这将表示该寄存器不可靠;
• 在“助记符”字段中定义该帧的描述。
5、定义SDO(步骤3):
在SW67150主窗口的“步骤3”中,按下“定义SDO”按钮(图2),将弹出“接收J1939帧信息SDO”窗口(图5):
• 在“关联”字段中,有PGN和ID_DEV,您需要将其插入到列表(接收J1939)中;
• 在“SDO”字段中,包含SDO帧;
• 在“SDO索引”字段中,是SDO的地址;
• 在“SDO子索引”字段中,是SDO的子索引;
• 在“SDO维度”字段中,可以选择SDO的维度;
• 根据SDO的维度,可以从J1939帧中输入一到四个字节的数据,然后可以将J1939字节映射到SDO字节上;
• 使用“删除、新建、修改、复制、粘贴”按钮,可以删除、添加、修改、复制和粘贴SDO;
• 使用“导出或导入”按钮,可以导出或导入现有项目。
例如:
点击PGN,为SDO插入有效的索引、子索引和维度,然后选择J1939帧中哪些字节映射到SDO字节上,最后点击“新建”按钮创建一个新的SDO。此时,在“SDO”字段中将显示SDO的名称(第一个SDO命名为IND SDO 0,第二个命名为IND SDO 1,第三个命名为IND SDO 2,依此类推)。
领取专属 10元无门槛券
私享最新 技术干货