Codesys 连接 EtherCAT 总线伺服

本文内容是根据参考视频做的笔记:

  • EtherCAT Master 控制:https://www.bilibili.com/video/BV1L14y1t7ks/
  • EtherCAT Master Motion 控制:https://www.bilibili.com/video/BV16P411j71E/

EtherCAT 总线简单介绍

CODESYS控制器与伺服EtherCAT通讯(上) - CODESYS控制器与伺服EtherCAT通讯(上) @00-30.34 1718088299873.png

  • 从站站号:如果使用扫描,则根据接线顺序决定(如第一个连接的从站,站号=1)

CODESYS控制器与伺服EtherCAT通讯(上) - CODESYS控制器与伺服EtherCAT通讯(上) @01-37.81 1718088367340.png

  • EtherCAT Master:使用伺服进行控制,PLC 只发送控制指令
  • EtherCAT Manager:PLC 进行轨迹控制

EtherCAT Master 配置

安装对应伺服的描述文件(XML 格式)

CODESYS控制器与伺服EtherCAT通讯(上) - CODESYS控制器与伺服EtherCAT通讯(上) @03-20.86 1718088481548.png
CODESYS控制器与伺服EtherCAT通讯(上) - CODESYS控制器与伺服EtherCAT通讯(上) @03-37.94 1718088523839.png

添加主站

项目,右键 --> 添加设备
CODESYS控制器与伺服EtherCAT通讯(上) - CODESYS控制器与伺服EtherCAT通讯(上) @04-00.76 1718088584468.png
EtherCAT --> 主站,选择对应的模式
CODESYS控制器与伺服EtherCAT通讯(上) - CODESYS控制器与伺服EtherCAT通讯(上) @04-09.09 1718088632014.png
注意:这里的 Master 和 Master SoftMotion 与 Master 和 Motion 模式完全不是同一概念

  • Master = 通用的 EtherCAT 主站
  • Master SoftMotion = 经过优化的专用于运动控制的 EtherCAT 主站

Master 和 Motion 模式

  • EtherCAT Master:伺服内部控制运动轨迹,PLC 只下发控制指令
    PLC 的 MC 运动控制功能块不能用,只能使用伺服自带的功能
  • EtherCAT Motion:PLC 进行轨迹控制,伺服相当于一个变频器,不做路径控制
    可在 PLC 中使用 MC 运动控制功能块,实现独立于伺服厂家的运动控制

主站配置

主站(PLC)EtherCAT 通信扫描周期

轴的控制周期(EtherCAT 通讯 TASK 的循环周期)
轴的控制周期 = EtherCAT 通讯 TASK 的循环周期
image.png
image.png

接到主站(PLC)

将上面的 CodeSYS 项目配置好路由,使其能正常连接到 PLC。略

配置主站(PLC)通讯使用的网口

双击添加的设备,进入配置界面,点击【通用】tab 下的【浏览】
CODESYS控制器与伺服EtherCAT通讯(上) - CODESYS控制器与伺服EtherCAT通讯(上) @06-16.40 1718089092640.png
弹窗显示 PLC 拥有的网口。选择设备对应的接口,完成配置。
具体选哪个接口要根据 PLC 设备说明书、实际使用的接口来定
CODESYS控制器与伺服EtherCAT通讯(上) - CODESYS控制器与伺服EtherCAT通讯(上) @06-18.45 1718089166081.png

项目中的设备配置

在主站下添加伺服设备

在刚才添加的主站,右键 --> 添加设备
CODESYS控制器与伺服EtherCAT通讯(上) - CODESYS控制器与伺服EtherCAT通讯(上) @06-45.30 1718089786036.png
在弹窗中,找到对应的设备,点击【添加设备】
添加一个设备后,窗口不会关闭,如果要添加多个设备,则多次点【添加设备】即可
CODESYS控制器与伺服EtherCAT通讯(上) - CODESYS控制器与伺服EtherCAT通讯(上) @07-04.35 1718089866045.png

通用配置

  1. 启用专家配置
  2. 使能分布式时钟、使能 Sync0
  3. 其他配置保持默认

image.png

配置 PDO(配置要传输的模版)

PDO = 此设备单次传输的最小数据单位

  1. 单个 PDO 有最大长度限制
  2. PDO 分为:输入、输出、邮箱输入、邮箱输出
    1. 输入、输出 PDO = 周期性传输的数据。通常是当前的实时状态值、控制指令
    2. 邮箱 PDO = 非周期性传输的数据,用于特殊的指令控制等场合
  3. 一个设备同一时间只能传输一个输入 PDO、一个输出 PDO。但在这里可配置多个 PDO 以供切换

窗口各部分的含义

  • 同步管理器:当前配置的所有 PDO 包含的各种类型的数据数量
  • PDO List:所有 PDO 的列表
  • PDO 内容:每个 PDO 实际包含的数据,以寄存器来显示。寄存器由伺服的 XML 文件定义

CODESYS控制器与伺服EtherCAT通讯(上) - CODESYS控制器与伺服EtherCAT通讯(上) @07-46.95 1718090794575.png

  • 默认有一些 XML 预先定义的 PDO
  • 也可以添加自己需要的内容、PDO
    在【PDO 内容】点击【添加】,在弹窗中可选择要添加的内容
    CODESYS控制器与伺服EtherCAT通讯(上) - CODESYS控制器与伺服EtherCAT通讯(上) @08-00.89 1718090892096.png
  • 注意1:PDO 是区分输入、输出的。需要监控的数据则输入输出都要配置。
  • 注意2:一个设备同一时间只能传输一个输入 PDO、一个输出 PDO。运行时可通过软件切换控制每次获取的 PDO 是哪些

启用 PDO(选择真正传输的使用哪个模版)

实际传输只能配置一个输入 PDO 和一个输出 PDO。勾选哪个,哪个就启用,其余的就没法启用了
CODESYS控制器与伺服EtherCAT通讯(上) - CODESYS控制器与伺服EtherCAT通讯(上) @08-25.15 1718091181792.png

(可选)添加启动参数

CODESYS控制器与伺服EtherCAT通讯(上) - CODESYS控制器与伺服EtherCAT通讯(上) @08-35.69 1718091161523.png

配置PLC变量与 PDO 数据的映射

image.png
PLC 使用 PDO 数据的方法

  1. 直接操作绝对变量:绝对变量地址以 % 开头,地址系统自动分配的
  2. 这里新建变量名,到时引用这里的变量
  3. (推荐)点击【变量】格上的【…】,关联到项目内其他程序、变量表中的变量

循环刷新数据

【EtherCAT IO映射】页面,右下角下拉框,选择【使能2】
image.png

  • 使能1:优先使用自定义的任务,如果自定义任务没有配置刷新这些 IO 映射的点的任务,再用 EtherCAT 通信任务来做变量同步
  • 使能2:直接使用 EtherCAT 通信任务来做变量同步

EtherCAT Master Motion 配置

配置为 Motion 类型后,相当于使用 PLC 而不是伺服来实现运动控制,PLC 此时兼有运动控制器的功能

  • 可使用 CodeSys 提供的运动控制指令库,实现更强大的运动控制,如虚轴控制、多轴联动等
  • 这种运动控制的程序,不绑定伺服的功能,运动控制与伺服厂家、型号无关,提高了灵活度

CODESYS控制器与伺服EtherCAT通讯(下) - CODESYS控制器与伺服EtherCAT通讯(下) @00-43.51 1718092257346.png

添加主站

同 Master 添加主站,但要选 SoftMotion
主站配置、设备添加、设备配置同 Master 配置,这里省略
CODESYS控制器与伺服EtherCAT通讯(上) - CODESYS控制器与伺服EtherCAT通讯(上) @04-09.09 1718088632014.png
注意:这里的 Master 和 Master SoftMotion 与 Master 和 Motion 模式完全不是同一概念

  • Master = 通用的 EtherCAT 主站
  • Master SoftMotion = 经过优化的专用于运动控制的 EtherCAT 主站

Master 和 Motion 模式

  • EtherCAT Master:伺服内部控制运动轨迹,PLC 只下发控制指令
    PLC 的 MC 运动控制功能块不能用,只能使用伺服自带的功能
  • EtherCAT Motion:PLC 进行轨迹控制,伺服相当于一个变频器,不做路径控制
    可在 PLC 中使用 MC 运动控制功能块,实现独立于伺服厂家的运动控制

设备添加 Motion 轴

在原设备下,右键 --> 添加 CiA402 轴。此轴的控制就使用 Motion 模式进行控制了,由 PLC 进行轨迹规划和运动控制。PLC 兼做运动控制器
CODESYS控制器与伺服EtherCAT通讯(下) - CODESYS控制器与伺服EtherCAT通讯(下) @01-19.33 1718093441228.png
image.png

轴配置

通用配置

CODESYS控制器与伺服EtherCAT通讯(下) - CODESYS控制器与伺服EtherCAT通讯(下) @01-56.23 1718092527318.png

设置轴类型

image.png

设置轴的缩放

image.png

设置轴对象名称(轴号)

对应 MC 指令中指定的轴号
image.png

伺服配置

注意:根据不同厂商的要求,这里的配置不同

  1. 步科 Kinco
    1. 开启 KEBA 模式
    2. 开启 EtherCAT 同步式时钟功能、配置同步时钟周期
  2. 禾川 HCFA
    http://class.hcfa.cn/pluginfile.php/4849/mod_resource/content/0/Beckhoff%E5%92%8CX3T%E8%B0%83%E8%AF%95%E6%89%8B%E5%86%8C.pdf
    1. 配置伺服模式 = 7 (CANopen / EtherCAT 模式),从站地址 = 1
    2. PLC 通过 EtherCAT 下发启动参数

PLC 运控程序编写

添加编程库 MC3 Lib

编写相关指令

CODESYS控制器与伺服EtherCAT通讯(下) - CODESYS控制器与伺服EtherCAT通讯(下) @09-45.33 1718096208328.png
注意:Axis = 轴号 = 在伺服配置中设置的轴对象名称

将相关程序段加入 EtherCAT 任务中

将使用 MC 运控指令的程序段加入到 EtherCAT 主站自动生成的 TASK 中
这里将 ECAction 程序段添加到 EtherCAT_Task 任务中
image.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/372523.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

跟《经济学人》学英文:2024年6月29日这期 A new lab and a new paper reignite an old AI debate

A new lab and a new paper reignite an old AI debate Two duelling visions of the technological future 对技术未来的两个对立的愿景 reignite:美 [ˌriɪɡˈnaɪt] 重新点燃;重新激起 duel:美 [ˈduːəl] 决斗;对决&…

基于考研题库小程序V2.0实现倒计时功能板块和超时判错功能

V2.0 需求沟通 需求分析 计时模块 3.1.1、功能描述←计时模块用于做题过程中对每一题的作答进行30秒倒计时,超时直接判错,同时将总用时显示在界面上;记录每次做题的总用时。 3.1.2、接口描述←与判定模块的接口为超时判定,若单题用时超过 …

使用selenium定位input标签下的下拉框

先来看一下页面效果&#xff1a;是一个可输入的下拉列表 再来看一下下拉框的实现方式&#xff1a; 是用<ul>和<li>方式来实现的下拉框&#xff0c;不是select类型的&#xff0c;所以不能用传统的select定位方法。 在着手定位元素前一定一定要先弄清楚下拉列表…

STM32学习历程(day5)

EXTI外部中断 中断 中断就是在主程序运行过程中 出现了特定的中断触发条件&#xff08;中断源&#xff09;&#xff0c;CPU会暂停当前的程序&#xff0c;去处理中断程序 处理完会返回被暂停的位置 继续运行原来的程序。 中断优先级 当有多个中断源同时申请中断时 CPU会根据…

深度学习-数学基础(四)

深度学习数学基础 数学基础线性代数-标量和向量线性代数-向量运算向量加和向量内积向量夹角余弦值 线性代数-矩阵矩阵加法矩阵乘法矩阵点乘矩阵计算的其他内容 人工智能-矩阵的操作矩阵转置&#xff08;transpose&#xff09;矩阵与向量的转化 线性代数-张量&#xff08;tensor…

香港优才计划多少分获批成功率高?一文看懂各分数段获批情况!

有留意香港优才计划的朋友&#xff0c;应该都了解过&#xff0c;申请优才计划采用打分制&#xff0c;得分多少与最终获批有密不可分的关系。但有一点要提前清楚&#xff0c;申请优才不是得分越高就一定能获批&#xff0c;也不是得分低就一定没希望。 香港优才计划能否获批成功…

仿写SpringMVC

1.创建简单的注解 1.1 Controller package com.heaboy.annotation;import java.lang.annotation.*;Documented Retention(RetentionPolicy.RUNTIME) Target(ElementType.TYPE) public interface Controller { } 1.2 RequestMapping package com.heaboy.annotation;import …

官宣定档!2025深圳电子展,开启全球招展工作

随着科技的飞速发展&#xff0c;电子信息产业已成为推动全球经济的重要力量。深圳&#xff0c;作为中国的硅谷&#xff0c;一直以来都是电子信息产业的前沿阵地。2025年&#xff0c;深圳电子展暨深圳国际电子信息博览会再次定档于4月份在深圳会展中心盛大召开&#xff0c;这不仅…

10元 DIY 一个柔性灯丝氛围灯

之前TikTok上特别火的线性氛围灯Augelight刚出来的时候一度卖到80多美金&#xff0c;国内1688也能到400多人民币。 随着各路国内厂商和DIY创客的跟进&#xff0c;功能变多的同时价格一路下滑&#xff0c;虽然有的质感的确感人&#xff0c;但是便宜啊。 甚至关注的up有把成本搞到…

python集成Bartender实现二维码打印

本文摘录于&#xff1a;https://blog.csdn.net/mynameisJW/article/details/105500773只是做学习备份之用&#xff0c;绝无抄袭之意&#xff0c;有疑惑请联系本人&#xff01; 这里上传我优化了一下的代码:https://download.csdn.net/download/chengdong1314/89522026 我这里弄…

Dungeonborne卡顿延迟怎么办?这样降低Dungeonborne延迟

Dungeonborne将第一人称的动作的即时性和经典的西幻RPG职业设计深度结合&#xff0c;带来无与伦比的游戏体验。玩家在游戏中扮演一位从神秘地牢中醒来的勇士&#xff0c;他必须面对各种未知的敌人和挑战&#xff0c;逐渐揭开自己的身世之谜。在这个充满魔法和奇迹的世界里&…

阶段三:项目开发---民航功能模块实现:任务18:指挥航空公司架次与延误率占比

任务描述 内 容&#xff1a;在前面的“使用Spark清洗统计业务数据并保存到数据库”任务中&#xff0c;已经通过Spark Streaming 清洗程序&#xff0c;将Kafka中Topic为“task_Aftn”的报文数据&#xff0c;经过数据清洗后&#xff0c;保存到了MySQL数据库中&#xff1b;本节任…

基于单片机的空调控制器的设计

摘 要 &#xff1a; 以单片机为核心的空调控制器因其体积小 、 成本低 、 功能强 、 简便易行而得到广泛应用 。 本设计通过 &#xff21;&#xff34;&#xff18;&#xff19;&#xff33;&#xff15;&#xff12; 控制&#xff24;&#xff33;&#xff11;&#xff18;&a…

【uniapp-ios】App端与webview端相互通信的方法以及注意事项

前言 在开发中&#xff0c;使用uniapp开发的项目开发效率是极高的&#xff0c;使用一套代码就能够同时在多端上线&#xff0c;像笔者之前写过的使用Flutter端和webview端之间的相互通信方法和问题&#xff0c;这种方式本质上实际上是h5和h5之间的通信&#xff0c;网上有非常多…

深度学习-基础网络组件介绍(六)

深度学习基础网络组件介绍 网络组件网络结构-全连接层激活函数常见激活函数-Sigmoid常见激活函数-tanh常见激活函数-Relu常见激活函数-Gelu常见激活函数-Softmax 损失函数损失函数-均方差损失函数-交叉熵&#xff08;Cross Entropy&#xff09; 网络组件 **释义&#xff1a;**…

基于docker的prometheus+grafana+altermanager+prometheus-webhook-dingtalk钉钉报警

一、各软件功能简介 prometheus&#xff1a;Prometheus(是由go语言(golang)开发)是一套开源的监控&报警&时间序列数 据库的组合。主要优点&#xff1a;外部依赖安装使用超简单、系统集成 多等 grafana&#xff1a;Grafana 是一款采用 go 语言编写的开源应用&#xff0…

电脑如何进行屏幕录制?快来看看这3种方法

在数字化浪潮席卷而来的今天&#xff0c;屏幕录制已不再是简单的视频记录&#xff0c;它演变成了一种表达、传播与创新的工具。传统的屏幕录制方法虽然经典简单&#xff0c;但已逐渐无法满足现代人对效率、品质和创意的追求。 所以&#xff0c;在这个充满变革与创新的时代&…

新能源汽车充电站远程监控系统S275钡铼技术无线RTU

新能源汽车充电站的远程监控系统在现代城市基础设施中扮演着至关重要的角色&#xff0c;而钡铼技术的S275无线RTU作为一款先进的物联网数据监测采集控制短信报警终端&#xff0c;为充电站的安全运行和高效管理提供了强大的技术支持。 技术特点和功能 钡铼S275采用了基于UCOSI…

上位机图像处理和嵌入式模块部署(mcu项目2:串口日志记录器)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 淘宝上面有一个商品蛮好玩的&#xff0c;那就是日志记录器。说是记录器&#xff0c;其实就是一个模块&#xff0c;这个模块的输入是一个ttl串口&am…

基于Java+SpringMvc+Vue技术的智慧校园系统设计与实现

博主介绍&#xff1a;硕士研究生&#xff0c;专注于信息化技术领域开发与管理&#xff0c;会使用java、标准c/c等开发语言&#xff0c;以及毕业项目实战✌ 从事基于java BS架构、CS架构、c/c 编程工作近16年&#xff0c;拥有近12年的管理工作经验&#xff0c;拥有较丰富的技术架…