倍福TwinCAT(贝福Beckhoff)应用教程12.1 TwinCAT控制松下伺服 连接和试运行
首先是用松下伺服自带的软件可以测试运行(驱动器,电机都连接好,然后用USB线连接到松下伺服驱动器的X1口),打开调试软件会自动提示连接到伺服

一般需要对驱动器清除绝对值编码器数据(驱动器可能报错40错误),写入驱动器参数值等等,这里不再详细说明如何改参数之类的(可以参考我对松下伺服驱动器的文档),我把对应的参数文件放到了项目中,这里只演示了传入参数文件

然后就可以使用松下自带的软件测试运行,能够正常运行说明驱动器参数,接线都没有问题。相反如果用伺服自带的软件走不起来,就没有必要用TWINCAT控制,需要先解决伺服驱动器的报错

新建一个TWINCAT项目,右击IO下的Devices,执行scan(如果你的scan不可用,请在桌面右下角将TWINCAT切换到config模式),然后所有弹出窗口都选择是(最好保持工控机联网状态,会弹出来一个窗口询问是否使用在线的XML文件描述,如果联网了可以使用最新的XML文件,这样扫描出来的驱动器就都是正常图标,如果你扫描出来的硬件和XML文件描述不一致,后续会有其他古怪的问题)

如果知道驱动器型号,也可以自己从松下官网下载对应的XML文件并放到指定目录
http://industrial.panasonic.cn/ea/products/motors-compressors/fa-motors/ac-servo-motors

如果你已经连接了新的设备,但是在TWINCAT中无法找到这个设备,请确认在TWINCAT软件点击安装网卡驱动(TWINCAT-Show Realtime Ethercat Compatibel Devices,然后选中某个设备,点击Install,他会从Incompatible device变成 Installed and ready to use devices),网线连接了PC和驱动器,对应的本地连接也会变成连通的状态

此时不新建任何PLC程序,直接点击激活配置,让TWINCAT切换到运行模式

注意,当你换了硬件(换了网卡),需要修改项目的默认绑定的网卡(直接点击激活配置会报错),选中Device,然后点击Search,然后找到对应的网卡(可以打开网络看哪个网口实际连着硬件)

点击驱动器的图标,然后在Name一栏往下翻到Modes of operation,右击执行Online Write,写入数值8,并对Driver2也做同样的操作(数值写8是为了让驱动器进入位置模式,如果不写上电会报错,后续会在PLC中自动绑定变量,暂时先这样做)

点击Axis 1,TWINCAT已经自动将他和我们扫描出来的Driver1绑定,点击Set,All即可伺服上使能,然后点击F2和F3的按钮即可发现电机转了

如果按F1或者F4的快速点动,可能会报错(Error一栏出现了0x4550的错误),按下F8可以清除错误(这里的报错是TWINCAT的软件报错,驱动器是否报错还要去看驱动器的LED是否有错,如果驱动器报错是无法通过这种方式解决的,必须用伺服自带的软件清除错误,可能还需要重启伺服)

此外我们需要知道这个错误代码的含义,查询贝福的帮助文档(在TWINCAT的NC Error Codes中列举了0x40-0x4B的所有可能,我们可以定位到0x4550,发现是跟随误差的问题)

点击Axis1的Prameter页面,把Monitoring的几个TRUE都改成FALSE,不检测跟随误差(改完之后点击左上角的激活配置,即可把新的参数写入,Online Value一栏就会变成新的设定值,对Axis2也做同样的操作),再次执行快速点动就不会有问题了

其实还没有结束,可以修改轴的单位为度(如果是模组可以改成mm)

修改编码器分辨率(这个问题很重要,决定了你要求电机转动一圈电机实际上转几圈),选中每个轴的Enc,然后在Parameter中修改Scaling Factor Numerator(默认值是0.0001)

分辨率一般有如下几种可能(17位或者20位,那么对应的分辨率值就是360/2^17 , 360/2^20这样得出来的),只要你改完之后让电机转动360度实际上也是就说明正确了,否则也不会差一点点,会差10度以上,可以区分的出来。

更多教学视频和资料下载,欢迎关注以下信息:
我的优酷空间:
http://i.youku.com/acetaohai123

我的在线论坛:
http://csrobot.gz01.bdysite.com/

问题交流:
QQ:910358960
倍福TwinCAT(贝福Beckhoff)应用教程12.1 TwinCAT控制松下伺服 连接和试运行的更多相关文章
- 倍福TwinCAT(贝福Beckhoff)应用教程12.3 TwinCAT控制松下伺服 NC进阶
在前面一节,我们简单介绍了通过PLC+HMI实现完整控制松下伺服的上使能-运动,采集位置,速度等功能,这里我们会大量简化用到的贝福功能块(为了更加实用).首先依然是对单个轴的封装,我们之前的做法,例如 ...
- 倍福TwinCAT(贝福Beckhoff)应用教程12.2 TwinCAT控制松下伺服 NC初步
在前面我们已经学会了使用贝福自带的调试软件完成试运行,接下来是使用TWINCAT PLC实现这个功能,右击PLC添加一个PLC项目 在VISUs上右击添加一个HMI人机界面 目前PLC程序和人 ...
- 倍福TwinCAT(贝福Beckhoff)基础教程1.2 TwinCAT安装配置
由于TC2和TC3都有可能用到,个人推荐都安装,但是注意必须是先安装的TwinCAT2,然后安装TwinCAT3,如果反了可能两个都没法用(打开TcSwitchRuntime提示Both TwinCA ...
- 倍福TwinCAT(贝福Beckhoff)基础教程1.1 TwinCAT背景知识
本节附件中有很多PPT介绍贝福TwinCAT和EtherCAT的相关技术,在此只做简单说明. 简单总结:EtherCAT就是一种总线技术,具有速度快,稳定性高,布线简单等优点,详细可以参考下面这个PP ...
- 倍福TwinCAT(贝福Beckhoff)应用教程13.1 TwinCAT控制松下伺服 NC高级
本节主要演示了使用自定义函数实现电机的运动(梯形曲线和S曲线都有实现),这里的JOG+和JOG-,针对单个关节实现了PTP的运动(跟贝福的MoveAbsolute功能块实现效果一致),在此没有介绍运动 ...
- 倍福TwinCAT(贝福Beckhoff)应用教程11.1 TwinCAT应用小程序1 如何读写数字量模拟量输入输出(DI,DO,AI,AO)
常见的模拟量模块(还有更高端和更低端的,使用方法都一样) EL3054和EL4024(4路模拟量输入和输出模块) 常见的数字量模块(还有更高端和更低端的,使用方法都一样) EL1809和EL280 ...
- 倍福TwinCAT(贝福Beckhoff)基础教程6.1 TwinCAT如何与高级语言通讯
因为使用TwinCAT的人用途不同,重视点就不同.如果用来代替传统PLC+HMI做项目的,很少会需要用到跟高级语言通讯,但是如果是用来做运动控制平台如做机器人运动控制器的,就肯定会用到.不管是否用得上 ...
- 倍福TwinCAT(贝福Beckhoff)基础教程5.1 TwinCAT如何执行系统命令
TwinCAT提供了一系列的执行Windows系统命令的方法 Name 描述 NT_Shutdown 关机操作系统 NT_AbortShutdown 取消关机操作系统命令 NT_Reboot 重启操作 ...
- 倍福TwinCAT(贝福Beckhoff)基础教程5.1 TwinCAT-3 读写注册表
读写注册表和读写文件一样,里面涉及的输入类型比较复杂,需要参考官方范例 sSubKey是指注册表的路径 sValName是指注册表要写入的名值对的名称 eValType是一个枚举类型(而且不是什么常规 ...
随机推荐
- 移动开发之css3实现背景渐变效果
前段时间由于手机项目需要实现一个背景渐变功能, 开始是想切个小背景图平铺下, 后来想到css3可以实现,如是用下面的代码就实现了. .sec_case_list li span{ backgro ...
- python特有的协程
#转载请联系 什么是协程呢? 线程包含在进程里面,协程包含在线程里面.协程也是和进程.线程一样,可以实现多任务.协程的切换开销比线程更小,不需要保存和恢复线程的状态.最通俗易懂的说法就是,协程是就是一 ...
- MYECLIPSE中快速解决项目的错误的方法
Use the IDE's help as follows:- Right mouse click on the error in the 'Problems' view- Select the 'Q ...
- AVR单片机中的EEPROM
1.EEPROM介绍 Electrically Erasable Programmable Read Only Memory 电气可拭除可编程只读存储器 发展过程:ROM – > PROM –& ...
- sublime text3中使用Emmet部分标签无法闭合
转载自:http://geek100.com/2490/ 不过很早就发现br,input, img在sublime text中是没有闭合标签 / 的. 我一般都是手动补上的, 今天突然想起这个问题, ...
- codeforces Round 442 B Nikita and string【前缀和+暴力枚举分界点/线性DP】
B. Nikita and string time limit per test 2 seconds memory limit per test 256 megabytes input standar ...
- HDU 2044 一只小蜜蜂(递归)
一只小蜜蜂... Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Su ...
- 哦这。。!C语言scanf输入的坑爹之处
一. 今天闲来无事,跑去A题,本想3sA了poj1004,结果搞了10分钟,最令人困惑的问题就是为什么定义了double类型的变量,但是用scanf输入的时候标识符用%f的话,输入并不能完成,也就是说 ...
- 洛谷P2419 [USACO08JAN]牛大赛Cow Contest
对于一个能够确定名次的点,可以注意到,对于该点,入度和出度的数量加起来等于N-1(这样还是不够准确的确切的说是,能够到达这个点的数量和这个点能够到达的数量的和 floyd不仅可以求两个点之间的最短路径 ...
- CentOS 7安装tensorflow 1.6
pip3 install tensorflow-gpu==1.6 1.6 依赖于cuda 9.0 cuDNN 7,并且前提需要下载和安装nvidia驱动. 安装驱动 nvidia 驱动地址: http ...