[CodeSys] CODESYS总线伺服控制建立方法与具体实现流程

[复制链接]
查看47788 | 回复0 | 2024-9-11 09:49:05 | 显示全部楼层 |阅读模式
欢迎大家积极投稿“EtherCAT总线生态拓展”,内容包括但不限于自动化技术与市场,欢迎大家来搞各个科技领域,另有自动化技术微信交流群欢迎大家加入,管理员微信1845635074     

1.启动CODESYS,导入设备XML

单击标题栏的“工具→设备存储库”,弹出的界面单击“安装”,选择文件目录下的设备描述文件XML打开,载入设备存储库。









2.3新建工程,测试PC与CODESYS控制器链接状态

单击标题栏的“文件→新建工程”或者“基本操作下新建工程...”,然后设备选择“ASL1200 Motion Controller”,编程语言根据自身需要选择进行创建工程。











2.3.1添加设备:总线控制器(主站)

进入工程后,在左侧找到导航栏,右击“Device”,选择“添加设备”,弹出如下的界面,

选择“现场总线”→“Ethercat”→“主站”→“Ethercat Master Softmotion”,单击“添加设备”进行添加。





在左侧导航栏里可以看到多出了刚刚添加的设备



双击左侧导航栏中的“EtherCAT_Master_SoftMotion(EtherCAT_Master_SoftMotion)”,可以对主站进行相应的参数设置,如下图。



2.3.2添加设备:总线驱动器(EtherCAT从站)

主站添加完毕,接下来添加从站(前提是已经有伺服驱动器通过超五类网线和控制器正常连接)。

两种方式:

1、首先设备存储库安装从站厂家提供的设备描述XML文件,再右击左侧导航栏中的主站EtherCAT_Master_SoftMotion →“添加设备”选择需要从站。



2、双击“Device”,在右侧通讯设置里点击“扫描网络”,在弹出的窗口选择显视出的设备,确认连接,连接正常的情况如下图所示为激活状态。(前提PC和控制器配置为同一网段)





然后右击左侧导航栏中的主站EtherCAT_Master_SoftMotion →“扫描设备”(通过网关,添加在线设备,前提是电脑已连接上控制器)





在从站与控制器连接正确的情况下,在弹出的窗口中会显现从站设备名称,单击“复制设备到工程”中,完成添加从站。

在左侧导航栏里可以看到多出了刚刚添加的从站设备



给从站驱动器添加运动控制轴,如下图所示。



给刚刚添加的轴进行重命名,对于弹出的窗口,直接按确定就行:

SM_Drive_GenericDSP402(SM_Drive_GenericDSP402)修改为Axis_0

如下图所示:





2.3.3 配置主站MAC地址

上边步骤添加伺服设备后,通过在线菜单-登录,软件里主站报红色错误,需要进行主站MAC地址配置,并且软件底部显示红色错误。



双击选择EtherCAT_Master_SoftMotion或右键-编辑对象,打开如下



单击上图中“浏览...”弹出下图界面选择网络适配器gem0一行对应的本地连接,然后重新编译后,红色错误消失



选项展开,将“自动重启从站”勾选



2.3.4配置EtherCAT从站

双击TSV_HL伺服,在右边的界面下图中,勾选专家设置,并设置分布式时钟为DC for synchronization,取消检查供应商ID和检查产品ID。





检查驱动器的启动参数SDO



接下来还需要对电机的参数进行设置,双击导航栏中的“Axis_0”,导航栏右侧弹出参数设置界面

“softmotion驱动:基本的”相关参数参考如下界面:




No.

名称

说明

默认

1

轴的类型与限制

虚拟模式:

如果本软件运动轴作为虚拟伺服轴使用的,则复选

无复选

模数:如果对控制对象没有限制(旋转体等),请选择

有限制

有限:如果对控制对象有限制(往复运动等),请选择

2

软件限制

设置软件可动作的范围

无复选

3

模数设置

这是位置数据的上限值(单位u)。当超过该值时回0。可以将大于模数值的值指定为目标位置,但作为当前位置读出的数据,模数值为上限值。

360.0

4

软件错误反应

指定超出软件限制时的减速度。

有复选

5

动态限制

使用CNC功能时,指定用SMC_ControlAxisBy*命令给定的速度、加速度、减速度限制。


6

位置的滞后监视

指定位置偏差(滞后)监视

非激活

7

速度斜坡类型

指定速度加速的类型。

Trapezoid:梯形(固定加速率)

Sin2:S字

Quadratic:二次曲线

Quadratic(smooth):二次曲线(平滑)

Trapezoid:梯形

8

标识

ID:这是各轴固有的编号。用于通过PLC日志的错误信息对轴进行识别

0





No.

名称

说明

1

电机类型


2

Invert direction

复选本项目,电机与指定方向的相反方向旋转

3

Increments <=> motor turns

增量<=>电机转

指定电机每转1圈的编码脉冲数。

例:电机为17bit编码,则

Increments :16#20000、motor turns : 1

例:电机为20bit编码,则

Increments :16#100000、motor turns : 1

4

motor turns <=> gear output tums

电机转动<=>齿轮输出转

指定电机的齿轮减速比。

例:电机减速比为50,则

motor turns :50、 gear output tums:1

5

gear output turns <=> units in application

减速机输出转<=>应用的单元

旋转:

指定齿轮转1圈,对应360度。

gear output turns:1、 units in application:360

指定齿轮每转1圈,工件的移动距离。

线性:

例:齿轮转1圈,工件移动1mm(对应丝杆导程),则

gear output turns:1、 units in application:1

6

Automatic mapping

自动映射

指定是否自动映射经软件运动处理的轴的变量。如果使用ADV,则复选。
2.3.5 编程示例

点击 POU程序,从右边工具栏拉出运算块到编程栏,输入 MC_Power 使能指令,确认后,弹出声明,可对名称、类型、对象进行编辑,具体看实际需要。




添加MC_Jog 功能块,设置两个功能块的参数



2.4 任务配置设置

CODESYS中的可以对任务的优先级进行设置,一共可以设 32 个级别(0 到 31 之间的一个数字,0 是最高优先级,31 是最低优先级)。当一个程序在执行时,优先级高的任务优先于优先级任务低的任务,高优先级任务0能中断同一资源中较低优先级的程序执行,使较低优先级程序执行被放缓。

任务优先级的分配原理:

EtherCAT_task : 优先级设为0 ,并且不要修改任务名称,切记,间隔时间不能低于1ms。

*优先级1为控制器操作系统使用,大家不要使用。

其他优先级可以设定为3或者以上,间隔时间为16ms以上,不要低于16ms,太低不利于电脑IEC,或者上位机的通讯。







2.5登录下载程序,并启动执行

点击在线-登录将程序下载到控制器



点击启动(F5)



当左侧目录栏主站、从站、轴都呈现绿色为登录成功



然后双击下图中的Axis_0(SM_Drive_GenericDSP402),显示如下,可以查看当前电机的在线位置、速度、加速度、扭矩。



MC_Power 功能块 Enable、bRegulatoron写入 TRUE,MC_Jog 的 JogForward 写入TRUE,点击调试菜单-写入值(Ctrl+F7),驱动器使能并且开始正转。






本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则