编辑: glay 2019-10-05
SV-DA ― A200 系――COD

201 系列交流 DESYS

17 年9月28 技术 流伺服驱 S 软PL

8 日 术指 驱动器 LC 指南 英威腾 SV-DA200 伺服 CODESYS 软PLC 技术指南 1? 目录 目录.

1?

1 硬件配置.2? 1.1 端子接线.2? 1.2 波特率设置 2? 1.3 注意事项.2?

2 软PLC 功能及架构.3? 2.1 软PLC 伺服具备的功能.3? 2.2 系统架构图 3? 2.3 PLC 功能的存储空间.4?

3 CoDeSys 软PLC 功能.5? 3.1 CoDeSys 软件安装 5? 3.2 库文件及设备描述文件安装 5? 3.3 新建 CoDeSys PLC 工程.1? 3.3 CoDeSys 控制 IO 输入/输出.5? 3.4 CoDeSys 控制模拟量输出.6? 3.5 CoDeSys 控制脉冲输出 6? 3.6 读取故障.7? 3.7 读取本地参数.7? 3.8 设置本地参数.9? 3.9 读取 CAN 节点参数 9? 3.10 设置 CAN 节点参数 10? 3.11 PDO 功能 11? 3.12 掉电参数保存功能 3? 3.13 通讯断线检测功能 3? 3.14 伺服报警或者断线保护 3? 3.15 PLC485 参数操作.3?

4 软PLC 功能块.5? 4.1 fbDAxxMAIN 5? 4.2 fbPower.6? 4.3 fbPosABS 6? 4.4 fbPosREL.7? 4.5 fbVelocity 7? 4.6 fbTorque.8? 4.7 fbHome 8?

5 伺服 CANopen 配置.10? 5.1 伺服设置.10? 5.2 CodeSys 功能块.11?

6 故障及诊断 14? 英威腾 SV-DA200 伺服 CODESYS 软PLC 技术指南 2?

1 硬件配置 1.1 端子接线 SV-DA200CoDeSys 伺服驱动器的 CN3 端子为通讯以及仿真器接口.CN3 为双 RJ45 插座,上下两个插座 的引脚排列顺序是相同的.如果需要用到全功能,需要将 CN3 网口的线都引出来分接到

485、CAN 等;

引脚示意图及功能表如下: CN3 端口功能表 引脚号 名称 功能 备注

1 CANGND 电源

485 为Modbus 从站和外接触 摸屏等通讯;

CAN 作为主站和 其他 DA200-E 型伺服通讯;

CoDeSys485 作为仿真器接口 和CoDesys 开发环境惊醒通讯 实现仿真下载功能.

2 485GND 电源地

3 CoDeSys485- CoDeSys485-

4 RS485+ RS485 数据线+

5 RS485- RS485 数据线-

6 CoDeSys485+ CoDeSys485+

7 CAN_L CAN 数据线-

8 CAN_H CAN 数据线+ 1.2 波特率设置 CAN 各种波特率以及对应的最大传输长度,如下表: 通讯波特率 通讯长度 1Mbit/s 25m 500kbit/s(默认) 100m 250kbit/s 250m 125kbit/s 500m 50kbit/s 1000m 20kbit/s 2500m 1.3 注意事项 1. CoDeSys CAN 没有内置终端电阻,带其他 CAN 伺服时需要外接一个或者两个终端电阻,一般在主站和 最后一个及节点外置;

2. CAN 波特率建议设置成 500bit/s,长度和抗干扰措施都比较合适. 3. 为避免干扰,CAN 连接线最好采用屏蔽双绞线. 英威腾 SV-DA200 伺服 CODESYS 软PLC 技术指南 3?

2 软PLC 功能及架构 2.1 软PLC 伺服具备的功能 1. 本机兼备 DA200 标准伺服的基本功能;

2. 可以通过

485 接口进行 PLC 程序的下载、断点仿真等;

3. 具有基本 PLC 逻辑控制以及定时器等基本功能,支持多种 PLC 编程语言;

4. 可以作为

485 从站和外界通讯,传递伺服本身参数以及 PLC 内部参数;

5. 可以作为 CAN 主站控制其他 DA200-E 型伺服以及读取其他节点参数;

6. 可以快速读取本机及其他伺服故障码,发现主机或者从机发生故障后可以让所有伺服自动停机保护;

7. 可以配置主站和从站的心跳时间,在发现断线情况下,主从伺服自动停机保护;

8. 可以通过读写功能块快速读写本机伺服的参数;

9. 可以通过功能块操作脉冲输出;

10. 可以通过功能块操作模拟量输出;

11. 可以通过添加 IO 设备读取 IO 输入状态以及控制 IO 输出;

12. 具有参数掉电保存区域.可以实现参数的保存;

13. 在PLC 程序出现问题导致伺服启动不了可以一键擦除 (按住 Mode 键启动) PLC 程序恢复伺服初始状态;

2.2 系统架构图 图1系统架构图 如上图: 1. PLC 开发人员通过 CoDeSys485 通讯编辑和仿真 PLC 软件;

2. 用户可以通过

485 从站接口通过触摸屏对伺服参数或者 PLC 参数进行读写;

3. 通过 CAN 总线,CoDeSys 伺服可以控制其他 DA200 CAN 型伺服. 英威腾 SV-DA200 伺服 CODESYS 软PLC 技术指南 4? 2.3 PLC 功能的存储空间 代码区域

131072 字节;

数据区总共

192512 字节;

IN 和OUT 变量区域

1280 字节;

其他变量区域

191232 字节;

掉电保存区域数据

400 字节. 英威腾 SV-DA200 伺服 CODESYS 软PLC 技术指南 5?

3 CoDeSys 软PLC 功能 3.1 CoDeSys 软件安装 从CoDeSys 官网或者其他途径选择安装 CoDeSys 的最新版本;

或者从下面链接下载: https://pan.baidu.com/s/1kVtAkcB 得到安装文件后直接按照默认设置安装;

3.2 库文件及设备描述文件安装 3.2.1 相关文件 DA200 CoDeSys 相关配置文件有以下几种: Gateway.cfg:CoDeSys 仿真通讯接口设置;

INVTServoLib.library:INVT 功能块;

INVTServoSoftPLC.devdesc.xm:INVT 软PLC 设备描述文件;

IoDrv_SHINVT.devdesc.xml:INVT IO 设备描述文件;

IoStandord3.5.5.0.projectrchive:标准的 3.5.50IO 库文件,运行 PLC 的必须库. DA200CodeSysLIB20170728.compiled-library:INVT 单轴伺服控制库. temp00.project:例子工程. 3.2.2 Gateway.cfg 使用 Gateway.cfg 内容如下: 英威腾 SV-DA200 伺服 CODESYS 软PLC 技术指南 6? 需要根据 CoDeSys 的串口号来更改文件中的串口号;

改完之后将这个新的 Gateway.cfg 替换 CoDeSys 原来的 Gateway,地址如下: 3.2.3 设备描述文件安装 打开 CoDeSys,Tools→Device Repository;

安装设备描述文件;

英威腾 SV-DA200 伺服 CODESYS 软PLC 技术指南 1? 3.2.4 库文件安装 打开 CoDeSys,Tools→Library Repository;

安装相关设备库文件;

注:其他库安装类似. 3.2.5 安装 IoStandord 库3.5.5.0 直接双击该文件会自动进行库文件的安装;

3.3 新建 CoDeSys PLC 工程 3.3.1 新建空工程 CoDeSys 菜单栏→File→New project;

选择新建空白工程;

英威腾 SV-DA200 伺服 CODESYS 软PLC 技术指南 2? 3.3.2 添加 PLC 设备 Device 窗口选择项目名右键→Add Device,从里列表中选择 invt plc;

3.3.3 添加 IO 设备 如果需要使用伺服的 IO 输入或者输出,需要添加该设备;

选中刚添加的 PLC 设备,右键→Add Device,从列表中选择 invt io 设备;

英威腾 SV-DA200 伺服 CODESYS 软PLC 技术指南 3? 配置 IO 设备的调用周期:选择 PLC,在Device→PLCSetting→Always update variables 中设置;

3.3.4 添加库文件 选择 Application→library manager 中Add library 添加 invt 的功能块库;

英威腾 SV-DA200 伺服 CODESYS 软PLC 技术指南 4? 3.3.5 设置工程断电保存 设置这个选项后程序才会下载到 Flash,否则则会运行在 ram,重启后程序会丢失;

3.3.6 添加代码 POU 并关联到任务 选择 Application,右键→Add object→pou;

添加好 pou 后,在task configuration 中Add object→add task;

按照图示设置 PLC 任务的循环周期,并在任务调用里添加刚才新增的 pou;

英威腾 SV-DA200 伺服 CODESYS 软PLC 技术指南 5? 3.3 CoDeSys 控制 IO 输入/输出 3.3.1 参数设置 需要用到开关量输出时需要将伺服对应的开关量功能设置为无效,然后通过开关量模块对开关量输出进行控 制,设置如下: 3.3.2 开关量输入 根据前面步骤 3.2.3 中添加 IO 设备后,在界面上会显示开关量输入和开关量输出;

开关量输入是只读的;

如下图对应

10 路输入:分别为 0-9;

英威腾 SV-DA200 伺服 CODESYS 软PLC 技术指南 6? 3.3.3 开关量输出 要控制某个开关量时只要往对应开关量输出位里面写值即可;

下图示例将开关量输出

1、

3、

5 置成高电平;

对应有没有设置成功可以在伺服上位机 ServoPlorer→工具→开关量配置里查看状态;

如下图: 3.4 CoDeSys 控制模拟量输出 3.4.1 参数设置 需要使用 CoDeSys 控制模拟量输出时首先得将模拟量输出参数功能选成无效;

3.4.2 功能块说明 输入参数: AIValue:模拟量输出值,单位(mV);

AiOutputIndex:模拟量输出通道号;

0 代表模拟量输出 1,1 代表模拟量输出 2. 3.5 CoDeSys 控制脉冲输出 3.5.1 参数设置 需要使用 CoDeSys 控制模拟量输出时首先得将分频输出来源改成 CoDeSys;

英威腾 SV-DA200 伺服 CODESYS 软PLC 技术指南 7? 3.5.2 功能块说明 输入参数: Mode-

0 代表以 Frequency 的频率输出 Distance 个脉冲;

-

1 代表一直输出固定频率的脉冲信号;

这种模式下 Distance 无效;

Frequency 代表脉冲输出的频率;

Distance 代表输出的脉冲个数;

Run 是触发信号,电平有效;

输出参数: Done 在走 mode0 走完固定脉冲后会置

1 代表执行完毕. 3.6 读取故障 3.6.1 功能块说明 输入参数: NodeID:CAN 从站节点号;

0-126;

0 代表读写本机故障,1-126 读取其他 CAN 节点故障;

输出参数: ErrorCode:高8位为故障主码,低8位为故障子码;

具体故障根据说明书来查找;

注意: 读取本机任何时刻产生的故障都能读取, 但从机故障读取只能读取主站和从站正常通讯建立后产生的故障;

如果想要完全可靠的读取从站故障,建议使用 SDO 功能读取 R0.99 当前故障. 3.7 读取本地参数 3.7.1 功能块说明 输入参数: Adress:CANopen 主索引+子索引;

DataType:数据类型;

16、

32、64 分别代表

16、

32、64 位参数;

输出参数: Value:读取的参数值;

Result:读取结果,0 代表读取成功;

其他值代表读取未成功;

英威腾 SV-DA200 伺服 CODESYS 软PLC 技术指南 8? 3.7.2 读取例子 读取参数需要知道参数的地址和数据类型,可以根据说明书查找也可以通过 ServoPlorer(4.14)详细参数窗 口查看;

如下图,双击点动速度,查看 CANopen 地址和数据类型;

伺服内部参数子索引都为 0. 功能块 Adress 填0x200500(0x2005+0x00);

DataType 填16(int16);

注意: 为了兼容不同数据类型, 将读取的值定义为了 LINT64 位数据, 用户需要根据自己需要进行数据类型转换. 英威腾 SV-DA200 伺服 CODESYS 软PLC 技术指南 9? 3.8 设置本地参数 3.8.1 功能块说明 输入参数: Value:参数的设置值;

Adress:CANopen 主索引+子索引;

DataType:数据类型;

16、32 分别代表

16、32 位参数;

输出参数: Result:设置结果,0 代表设置成功;

其他值代表设置未成功. 3.8.2 设置例子 读取参数需要知道参数的地址和数据类型,可以根据说明书查找也可以通过 ServoPlorer(4.14)详细参数窗 口查看;

如下图,双击点动速度,查看 CANopen 地址和数据类型;

伺服内部参数子索引都为 0. 功能块 Adress 填0x200500(0x2005+0x00);

DataType 填16(int16);

设置值填到 Value 中;

注意: 为了兼容不同数据类型, 将设置的值定义为了 LINT64 位数据, 用户需要根据自己需要进行数据类型转换. 3.9 读取 CAN 节点参数 3.9.1 功能块说明 通过 SDO 读取网络中各节点参数;

但当 NodeID 设置成

0 时代表读取本机参数;

英威腾 SV-DA200 伺服 CODESYS 软PLC 技术指南 10? SDO 读取本机参数和上面读取本机参数的区别:

1、SDO 读取的最大参数是

32 位数据;

本机读取的最大参数是

64 位数;

2、SDO 可以读取本机参数及 CIA301 及402 协议中的参数,如0x6061 控制模式反馈;

输入参数: Enable:读取触发开关,上升沿触发一次读取;

但当 NodeID 为0时该参数无效,即无需触发便会读取;

NodeID:CAN 从站节点号:0-126;

0 代表本机;

Index:CANopen 参数索引;

查看方式同上面的方法;

SubIndex:CANopen 子索引;

如果是伺服自定义参数子索引为 0;

如果是

301 或者

402 参数按照协议定义的索 引来设置;

DataType:数据类型;

16、

32、64 分别代表

16、

32、64 位参数;

输出参数: Value:读取的参数值;

Result:读取的结果;

0 代表读取成功;

其他书代表未成功;

注意: 为了兼容不同数据类型, 将设置的值定义为了 LINT64 位数据,........

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题