软件与硬件环境
matlab:2017b,编译环境是vs2013
twincat:3.1.4024.22
驱动器:maxon
电机:maxon
力传感器的数据采集卡:宇立SRI-8126
主机系统:Win10 专业版
主机与从机都是i7-6700的cpu
xml文件生成
(以下步骤是在硬件接线已经完成情况下进行)
首先在twincat中新建twincat projects
扫描设备
选择twincat NC任务
这里可以先选择否
在IO-Device里可以看到硬件配置已经添加进来了
(Drive1-6是电机驱动器,Box7和Box8是两个数据采集卡)
现在去最顶部System-Tasks中新建任务,注意一定要选择Twincat Task with Image.
在新建的task中新建input项。
一般数据类型选择DINT就行。
随后双击新建的input项,在出现的Variable页面中点击linked to按钮。
将我们新建的的这个input随便链接到一个驱动器的输入上(主要是为了建立关联),注意不要链接错位置,要链接到IO上而不是NC task的Axis里。
修改任务周期,使我们新建的task的任务周期和NC task的SAF和SVB任务周期一致。
现在可以去生成xml文件了,双击左侧I/O中的Device 3,在界面中选择ethercat页面,选择导出configuration file,保存到一个位置即可。
Simulink中的配置
在matlab中新建simulink文件,在library中依次选择Simulink Real-Time→EtherCat→EtherCat Init模块。
双击拖入的Init模块,点击browse选择刚刚生成的xml文件,PCI Bus记得改成与从机一致。
点击configuration parameters,主要有两个地方要改:
然后这里记得改成external。
随后就可以看看有没有问题了,拖进一个PDO Receive模块,比如这里选择六轴力传感器绕x轴的扭矩,
然后连上一个scope(这里忘了截图了),编译模型,连接从机,开始运行,看看输出是否正确。
基本的配置就这些了,写的比较随意,如果有遗漏或者错误的地方,欢迎大家指出,也欢迎大家一起讨论,共同进步。
也欢迎大家去看我的知乎,账号在图上了。