本系列文章旨在帮助读者对虹科KPA Automation体系进行一个简要的理解,并且能使用MoDK进行快速的上手操作,包括:虹科KPA
Automation、虹科KPA MoDK简介,虹科KPA MoDK的运行环境搭建与例程测试。本文档搭建的虹科KPA
MoDK运行环境,是基于Win10,并且是以C/C++为开发语言进行的。若您有任何疑问,欢迎您评论、私信或联系support@hkaco.com,虹科工程师将给您专业的解答。

虹科KPA Automation是一个自动化解决方案开发平台,适用于工厂自动化和过程控制应用。经过前文的相关介绍和运行环境的搭建,本部分将进行部分官方例程的测试,包括EtherCAT从站(结合MDK)、Vrep机器人仿真平台、Simulation(纯文字仿真)。

本篇推文将展示部分官方例程的测试。以下例程分别对应了MoDK可以控制的3类对象:EtherCAT从站(结合MDK)、Vrep机器人仿真平台、Simulation(纯文字仿真)。最后一个例程通过Motion Configuration Utility中的设置,实现了对实际电机以及Vrep中仿真机器人的同时控制。

1. Move_relative (EtherCAT & CiA402)

该例程的测试效果是控制一个物理电机轴进行3次相关运动,需要我们外接一个EtherCAT从站伺服和电机进行现象观察,笔者的测试环境中,选择的是maxsine的伺服。


例程测试的步骤如下:

①在虹科KPA Studio中进行网络组态

打开虹科KPA Studio,导入maxsine伺服ESI文件。当虹科KPA MRT安装完毕后,可用作本地EtherCAT Master与Studio进行连接。将maxsine伺服拖动至Master的位置,即实现了从站的挂载,也完成了网络组态。

②进行轴的配置,并导出配置文件

接下来在Motion Configuration Utility中将轴与伺服电机进行对接,并导出网络组态与轴配置文件,然后进行电机轴与伺服的绑定,并导出相关文件。

③修改程序源代码的部分参数

例程通过读取网络配置文件和轴配置文件进行MoDK运行环境的初始化,其读取的文件名是通过宏进行设定的。可以通过修改宏来适应文件名。另外,我们还需要修改ecatm虹科KPA15_helper.c中的选用网卡编号,使得本地Master能够通过正确的网卡进行从站伺服的控制。

以上配置完成后,点击“ctrl+F5”,即可运行程序观察现象。

2. Move_path (Vrep)

该例程不仅体现了虹科KPA MoDK的另一种被控对象(Vrep),并且也体现了另一种轴实例的初始化方式——源代码配置,即通过直接在程序中添加源码以到达修改轴配置参数的目的。相比上一个例程中的“界面配置+源码导入”的环境初始化方式,这种配置方式无疑会更加繁琐,而且会增加源代码的代码量。但是在此部分代码完成后,再次修改轴配置参数的步骤可以直接在代码中进行,而另一种环境初始化方式则仍需要重新配置生成ini文件。

例程测试的步骤如下:

①在VREP中打开官方提供的三轴线性机器人模型

虹科MoDK提供了一个Vrep三轴线性机器人模型,在开发包的samples文件夹下,安装Vrep后,双击即可在Vrep中打开模型

②在代码中修改VREP的端口参数

虹科MoDK提供的Vrep模型使用3.04.00版本的Vrep开发,而目前在官网上下载的Vrep版本已经到达了3.5.0。不过这并不需要用户进行太多的适配操作,新版本的vrep会向下兼容旧版本vrep的模型。

③观察控制现象

修改完成后,即可进行例程测试,点击ctrl+F5,切换至VREP窗口,即可观察到机器人末端按照预定的轨迹点进行运动。用户也可以使用自己的算法生成所需要的轨迹在此demo中进行测试

3.Simulation_move_absolute (Simulation)

此例程为纯文字仿真,不需要进行额外的操作。MoDK在虹科KPA运行环境内创建了虚拟轴句柄,simulation即对这些虚拟轴句柄进行虚拟化运动,反映在读取的各轴位置、速度值发生变化。

切换启动项目,按下ctrl+F5,即可开始仿真。

4. Move_complex_drawing (EtherCAT & CiA402 + Vrep)

对于可控制的三种被控对象,虹科MoDK可以同时控制其中任意两种,此部分选取EtherCAT伺服电机+Vrep机器人模型这两种比较直观的被控对象进行测试。测试控制的对象是三个maxsine的EtherCAT伺服电机,加上Vrep中的三轴线性机器人模型。
例程测试的步骤如下:

①在虹科KPA Studio中进行网络组态

此部分操作与第1个例程Move_relative (EtherCAT & CiA402)的操作基本相同,可参照前文进行。

②打开Vrep中的三轴线性机器人模型,并将轴与伺服电机进行对接

留意此处线性机器人模型的名称,后续会使用到。并且注意到,机器人的axis1使用y轴坐标表示,axis2使用x轴坐标表示。而代码的逻辑是按照x、y的顺序进行扫描的。因此在初始化配置的时候需要留意轴的编号指定,即将编号1(x轴)指定到axis2,编号2(y轴)指定到axis1。

③修改V-REP参数和通用参数,并克隆电机轴

将参数修改为所需的参数,完成电机轴参数配置后克隆电机轴,然后只需要为克隆出来的电机轴绑定伺服、设定Vrep机器人模型的轴编号、修改Vrep端口号即可。
导出文件,修改源代码部分参数后按下“ctrl+F5”,即可看到控制现象:Vrep中的机器人模型进行圆周运动,EtherCAT伺服也在带动电机进行运动。

总结

  1. 观察MoDK的例程代码,可以发现其程序编写遵循一个比较规整的三步走模式:声明变量→创建实例→函数调用,轴控制循环则采用状态机的方式实现。但这种PLC的编程方式虽然用起来的思路比较明确,但是代码量看起来会相当庞大,可维护性相对较差。
  2. 因而MoDK最好的使用方式,仍是结合虹科Straton使用PLC语言进行开发。虹科Straton拥有独立的变量编辑器,并且PLC功能块创建与调用本身就是一体化的,可以极大减少开发的工作量,程序的维护也变得直观与简单起来。

因篇幅限制,例程测试示例未能一一详细展开。若有疑问,欢迎发邮件到support@hkaco.com联系我们的技术工程师。

虹科Automation softPLC | 虹科KPA MoDK运行环境与搭建步骤(3)——MoDK例程测试相关推荐

  1. 虹科Automation softPLC | 虹科KPA MoDK运行环境与搭建步骤(2)——MoDK运行环境搭建

    本系列文章旨在帮助读者对虹科KPA Automation体系进行一个简要的理解,并且能使用MoDK进行快速的上手操作,包括:虹科KPA Automation.虹科KPA MoDK简介,虹科KPA Mo ...

  2. 虹科教您 | KPA Automation softPLC入门操作指南(1)

    KPA Automation softPLC是为Linux.Xenomai.INtime.Windows等实时操作系统开发PLC的编程环境,十分适合需要使用IEC61131-3和PLCopen标准的控 ...

  3. 【Python】递归绘制科赫曲线及科赫雪花及转换成可执行文件打包

    科赫曲线 ----------- 绘制科赫曲线 import turtle def koch(size, n):if n == 0:turtle.fd(size)else:for angle in [ ...

  4. python学习笔记 第五章(科赫雪花与科赫曲线)

    科赫曲线,也叫做雪花曲线.是一种分形几何,分形几何是一种迭代的几何图形,广泛存在于自然界中. 科赫曲线是一种迭代的图形,所以我们是可以利用python中的迭代法来绘制. 我们先考虑如何实现迭代. 首先 ...

  5. 【C语言】——C语言实现科赫雪花及科赫曲线

    1.题目描述: (1) 科赫雪花和科赫曲线 科赫曲线(Koch curve)是一个简单的分形(fractal)图形 给定一直线线段,把它等分三段,加入一个等边三角形,以三段的中间一段为底对齐,再去除该 ...

  6. 通辽市科区人才,科区就业和人才公共服务中心

    日常称呼:科区人才(科区人才交流培训中心) 地点:新世纪大酒店路南,华通市场二楼 官方(我打电话问过的哦) 全名:通辽市科尔沁区就业和人才公共服务中心 电话:(0475)8250817 地点:通辽市科 ...

  7. 【虹科案例】虹科数字化仪在激光雷达大气研究中的应用

    01 莱布尼茨研究所使用激光雷达进行大气研究 图 1:在 Kühlungsborn 的 IAP 办公室测试各种激光器 大气研究使用脉冲激光束通过测量大气中 100 公里高度的多普勒频移和反向散射光来测 ...

  8. 虹科物联网设备安全分析与防护平台——更智能的工业通信协议黑盒模糊测试

    工业控制系统 (ICS) 可能成为大型工业企业的重大漏洞.攻击者如果发现系统中的漏洞,可以将其作为攻击向量,也可以将其用于受攻击网络中的横向运动,在不同系统之间传播攻击. 传统上,连接工业控制系统的计 ...

  9. 【虹科案例】虹科数字化仪在氢燃料电池测试中的应用

    ​ 改进氢燃料电池技术的应用 ​ ZBT 用于移动应用的两种不同燃料电池 氢燃料电池将在减少碳排放方面发挥重要作用,特别是在汽车.重型卡车和公共汽车等移动应用中.唯一的排放物是水蒸气,燃料是丰富的氢气 ...

最新文章

  1. mysql+实例夯住的监控_Nagios 里面监控MySQL 监控事务夯住(RUNNING)报警通知
  2. 集群IPtables转发与防火墙
  3. python从文件夹中提取指定文件_使用Python实现从各个子文件夹中复制指定文件的方法...
  4. [Andriod设计模式之旅]——Builder模式
  5. amazon alexa 大陆安装调试
  6. 人体的神经系统图 分布,人神经系统分布图高清
  7. 关于人工智能数据标注学习
  8. 优锘科技:渲染引擎T3D:WebGL端数字孪生应用最优解
  9. 斯坦福大学公开课:iOS8开发 第一课:课务,iOS8概述学习笔记
  10. 脑袋里是浆糊时的c++程序
  11. php snappy,php – 使用Knp Snappy生成pdf文件时出现错误字符
  12. 华为防火墙基础自学系列 | IKE介绍
  13. Linux系统如何分区
  14. 一代少年黑客菜霸的传奇,曾调戏天涯吊打腾讯
  15. Seq2Seq模型及Attention机制
  16. np.log1p()取对数符合正态分布
  17. android 拍摄视频后返回九宫格,抖音九宫格不同视频怎么拍 九个不同的视频在一个画面播放...
  18. SVN+SSH协议工作方式全解析,以Sourceforge为例讲解如何在Windows下配置TortoiseSVN和Su
  19. 日加满:践行企业责任 公益暖心之旅
  20. AWS 中文入门开发教学 25- 高可用性设计 - 建立 ALB 负载均衡

热门文章

  1. 热搜第一除了本科生月均5千工资,还告诉了我们什么?
  2. 无参考图像评价指标NIQE——自然图像质量
  3. windows无法连接到打印机_打印机无法连接怎么办
  4. 计算机鼠标由传感器来监视,2020年人教版九年级物理全册:16.4“变阻器”过关检测练习题D卷...
  5. Java之JDK环境的安装与配置
  6. Vue中components几个组件
  7. C语言bound函数,C++中lower_bound函数和upper_bound函数
  8. upperbound找不到_关于lower_bound( )和upper_bound( )的常见用法
  9. (No operations allowed after connection closed.).Possibly consider using a shorter maxLifetime value
  10. October 2007