【Ethercat机器人控制系统开发】倍福Twincat入门教程

一. 简介

本人课题需要搭建一套高性能运动控制系统。在踩坑了很长一段时间后,最终选择基于Ethercat控制方案,写点东西记录一下,也分享给有需要的朋友。
内容可能会涉及,**低成本上手Twincat,伺服电机的配置与点动调试,PLC标准化语言IEC 61131-3编程基础,点到点运动程序编写,高级编程语言(C++,Python)ADS通讯,Matlab算法程序迁移。**有人看就坚持写

在这里插入图片描述

1. 倍福,Twincat与Ethercat简要介绍

1. 1 倍福Beckhoff简介

Beckhoff,即德国倍福自动化有限公司,1980年成立于德国,总部位于德国威尔市,主要从事工业自动化生产。
公司始终以基于PC的自动化新技术作为发展理念,主要产品有:工业PC、现场总线模块、驱动产品和TwinCAT自动化软件。

1. 2 Twincat简介

TwinCAT(The Windows Control and Automation Technology)是Beckhoff推出第一款基于PC的控制器。
TwinCAT 软件系统可将任何一个基于PC 的系统转换为一个带多PLC、NC、CNC 和机器人实时操作系统的实时控制系统。TwinCAT 具有以下几点优势:

  1. 仅需一个软件即可实现编程和配置
  2. 集成于 Visual Studio®,界面简单直观,好上手。
  3. 支持 IEC 61131-3 面向对象的扩展功能
  4. 极佳的兼容性:C/C++/Matlab®/Simulink® 作为实时应用程序的编程语言
  5. 支持多种工业总线:EthercatCanopenModbus(232,485)等等(ethercat之外的总线需要外加通信转换模块)。
  6. 简单好用的通信功能ADS通信可以支持与多种高级语言进行通信,

1. 3 Ethercat简介

EtherCAT(以太网控制自动化技术)是一个开放架构,以以太网为基础的现场总线系统,其名称的CAT为控制自动化技术(Control Automation Technology)字首的缩写。EtherCAT是确定性的工业以太网,最早是由德国的Beckhoff公司研发。Ethercat具有许多优点:
,一般的更新速率约为1–30kHz,但也可以使用较低的更新速率,以避免太频繁的直接内存存取影响主站个人电脑的运作。

  1. 高速:EtherCAT的通讯周期很短,可以成为高性能的分散式I/O系统:使用双绞线或光缆可以在30us内处理1000个分布式I/O信号,相当于在100Mbit/s的以太网传输125个字节的资料。读写一百个伺服轴的系统可以以10kHz的速率更新。
  2. 稳定精确:具有纳秒级别的同步性,资料同步时的通讯抖动量低。
  3. 拓扑结构灵活:EtherCAT网络最多可支持65,535个设备,而对拓扑结构没有限制。几乎无限数量的节点可以组成线型、树型、星型拓扑及任何拓扑的组合。
  4. 硬件成本低:Ethercat对于主站设备的需求仅为一个Intel网卡——而无需昂贵的接口卡或协处理器。

二. 学习资源

个人认为,相比于其他的高性能伺服系统,倍福Twincat是相对好入门许多的,这里推荐一些开放的学习资源。

  1. 官方网站(查询产品线和硬件资源)

  2. 倍福虚拟学院(官方教程网站,可用于入门和资源获取)

  3. 官方文档(百科全书)

  4. 《TwinCAT 3.1 从入门到精通》参考书在这里插入图片描述

  5. 另外,B站上有不少的自制和官方教程,感兴趣的小伙伴可以参考一下,搜索关键词“Twincat”。

    前期入门的同学建议花半小时把虚拟学院上关于Twincat的课程看一下。有条件的配合书,可以很快上手。

三. 低成本上手Twincat

虽然说Ethercat设备对硬件的需求不高,但是一般需要先凑齐一套PC+嵌入式主站+Ecat从站IO或者驱动器才可以如果开始正式学习。这对于对于未接触过的初学者或者仅仅想尝试一下的人来说还是有些难以接受。比如一个倍福的嵌入式工控机少说也要一万多,一个支持ecat的伺服驱动器的价格也普遍在2000-3000甚至更高。
因此为了能够低成本快速的上手Twincat,这里分享一个低成本的上手教程,实际效果的话,简单控制一些IO或者是低速的伺服是完全没问题的,但是一些对实时性要求比较高的场景比如多轴的运动控制还是建议上工控机。

1. PC作控制器+虚拟轴调试

第一部分内容:使用个人电脑编辑Twincat项目,并作为控制器运行程序控制虚拟轴。不需要任何硬件。

1. 1 前期准备

仅需要一台带网口的电脑。注意:

  1. CPU选择:Intel或者AMD都可以,但是推荐Intel,因为倍福是跟Intel进行了深入合作的,AMD的兼容性会差一些,实时性也比较差,但是前期学习或者仅作为编程上位机也没啥问题。本教程使用一台台式机,cpu型号为AMD-3700X
  2. v3.1.4024.12
  3. 笔记本电脑和台式机都可以,但是一定是带RJ45网口能直接插网线才行,USB网卡的实时性无法满足ethercat的高实时性需求,经常报错。
  4. 系统需求:WIN10或者WIN7

1. 2 软件安装

最新版下载地址:https://www.beckhoff.com.cn/zh-cn/products/automation/twincat/tc1xxx-twincat-3-base/tc1200.html
在这里插入图片描述
历史版本下载地址:https://tr.beckh off.com.cn/mod/page/view.php?id=2287
本教程使用的Twincat版本是v3.1.4024.12
在这里插入图片描述

第一次尝试的话其实下什么版本无所谓,下载下最新版就行了,但是如果之后正式使用的话还是尽量确定好一个版本,不要轻易变动,避免兼容性问题。

软件安装过程比较简单,参考虚拟学院教程,安装时间大约在3-5min。

注意:1:版本选择complete版 2:勾选XAE Shell,让软件在内置的VS2013中运行。

软件安装完成后会提示重启。

重启之后,桌面显示Twincat图标,就代表安装完成了。
在这里插入图片描述
通过任务栏图标里的TcXarShell打开软件。
在这里插入图片描述

1. 3 创建第一个Twincat工程

(1) 软件界面

在这里插入图片描述
可以看到软件界面还是熟悉的VisualStudio,比较友好。

(2) 新建项目


创建类型选择Twincat Projects,之后确定项目名称并选择安装位置。在这里插入图片描述
左侧为工程文件结构。注意右上角选择Local表示以本机为目标控制器。也就是将本机的CPU当成一个控制器,作为Ethercat主站。后续如果对嵌入式控制器进行编程则需要选择相应的控制器。

在这里插入图片描述

(3) CPU核心设置

首先双击Real-Time图标,进入CPU核心配置界面。点击Read from Target图标,可以看到自己的CPU核心
在这里插入图片描述
Intel CPU的电脑勾选Core 0即可
在这里插入图片描述

AMD电脑需要电机Set on target。由于amd的兼容性问题,twincat的程序不能直接像intel的cpu那样和Windows共享运行,强行运行会导致系统崩溃蓝屏(蓝了无数次)。因此需要把若干个cpu核心隔离出来,这里设置一个隔离核,之后重启电脑
在这里插入图片描述
重启电脑后,打开任务管理器,可以看到windows只能识别出逻辑核心了,其中一个核心仅供Twincat征用。
在这里插入图片描述
这里勾选隔离核作为默认核心,注意勾选掉所有的共享核启电脑后,打开任务管理器,可以看到windows只能识别出逻辑核心了,其中一个核心仅供Twincat征用。
在这里插入图片描述

(4) 激活配置

电机这个按钮,激活配置并运行。在这里插入图片描述
第一次激活需要激活码,之后每周都会出来一次,不用管,输入就完事了。
在这里插入图片描述在这里插入图片描述
之后win10系统的话会遇到这个报错,不要慌张,这是提示需要一个win10的补丁才可以激活。根据提示路径 C:\TwinCAT\3.1\System下找到 win8settick.bat 文件,以管理员权限(右键选择)执行一下,之后重启电脑。
在这里插入图片描述

之后可以看到软件下方的图标变绿,就说明系统进入运行模式了
在这里插入图片描述

任务栏的Twincat图标也变绿
在这里插入图片描述

VT-x报错解决办法 :https://tr.beckhoff.com.cn/mod/data/view.php?d=19&rid=281

  • 29
    点赞
  • 118
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值