PLC应用包生成方法、PLC应用包运行方法及相关装置制造方法及图纸

技术编号:35192033 阅读:19 留言:0更新日期:2022-10-12 18:13
本申请公开了一种PLC应用包生成方法、PLC应用包运行方法及相关装置,包括:获取用户指定的伺服驱动,以及输入的待创建的轴对象的轴相关参数;使用轴相关参数生成轴配置相关代码,轴配置相关代码用于创建轴对象和伺服驱动对象;将PLC应用用户代码和轴配置相关代码均编译为WebAssembly目标代码,PLC应用用户代码为使用PLCOpen运动控制功能库中的运动控制功能块编码得到的;将编译得到的该WebAssembly目标代码,与PLCOpen运动控制功能库和指定的伺服驱动,链接成WebAssembly模块,PLCOpen运动控制功能库和指定的伺服驱动的代码格式为WebAssembly代码;生成包含WebAssembly模块的PLC应用包。采用该方案,可以利用基于WebAssembly的伺服驱动,实现对伺服电机的有效控制。效控制。效控制。

【技术实现步骤摘要】
PLC应用包生成方法、PLC应用包运行方法及相关装置


[0001]本申请涉及工业控制
和计算机
,尤其涉及一种PLC应用包生成方法、PLC应用包运行方法及相关装置。

技术介绍

[0002]运动控制(MC)是自动化的一个分支,它使用通称为伺服机构的一些设备如液压泵,线性执行机或者是电机来控制机器的位置或速度。在CNC机床,机械臂等系统中,采用了大量运动控制系统。
[0003]运动控制系统又可以分为单轴,多轴。多轴系统通常是同步多轴控制。集中控制运动系统的多轴控制是依靠处理器/PLC的软硬件来实现同步运动控制的。伺服驱动器没有自主控制的能力,它们只能接受PLC设备发来的控制命令。
[0004]运动控制的执行依赖系统中的伺服电机。每个伺服电机提供一个可控制的旋转的轴。一些PLC产品可以支持不同厂商提供的伺服产品,则需要一种称作“伺服驱动”的中间软件层,帮助标准化的PLCopen的运动功能块实现对不同伺服电机类型的对接。

技术实现思路

[0005]本申请实施例提供一种PLC应用包生成方法、PLC应用包运行方法及相关装置,用以提供一种基于WebAssembly的伺服驱动的实现方案。
[0006]本申请实施例提供一种PLC应用包生成方法,包括:
[0007]获取用户指定的伺服驱动,以及输入的待创建的轴对象的轴相关参数;
[0008]使用所述轴相关参数生成轴配置相关代码,所述轴配置相关代码用于创建轴对象和伺服驱动对象;
[0009]将PLC应用用户代码和所述轴配置相关代码均编译为WebAssembly目标代码,所述PLC应用用户代码为使用PLCOpen运动控制功能库中的运动控制功能块编码得到的;
[0010]将编译得到的该WebAssembly目标代码,与PLCOpen运动控制功能库和指定的所述伺服驱动,链接成WebAssembly模块,所述PLCOpen运动控制功能库和指定的所述伺服驱动的代码格式为WebAssembly代码;
[0011]生成包含所述WebAssembly模块的PLC应用包。
[0012]进一步的,所述将编译得到的该WebAssembly目标代码,与PLCOpen运动控制功能库和指定的所述伺服驱动,链接成WebAssembly模块,包括:
[0013]将编译得到的该WebAssembly目标代码,与PLCOpen运动控制功能库、指定的所述伺服驱动和伺服开发基础库,链接成WebAssembly模块,所述伺服开发基础库的代码格式为WebAssembly代码。
[0014]进一步的,指定的所述伺服驱动包括:设备描述文件,所述设备描述文件中包含伺服电机的寄存器的IO内存使用信息;
[0015]在所述生成包含所述WebAssembly模块的PLC应用包之前,还包括:
[0016]基于所述设备描述文件中包含的寄存器在PLC上的IO内存映射使用信息,生成轴IO内存映射表;
[0017]生成包含所述轴IO内存映射表的IO内存映射文件;
[0018]所述生成包含所述WebAssembly模块的PLC应用包,包括:
[0019]生成包含所述WebAssembly模块和所述IO内存映射文件的PLC应用包。
[0020]进一步的,在所述生成包含所述WebAssembly模块的PLC应用包之前,还包括:
[0021]生成包含所述轴相关参数的轴配置文件;
[0022]所述生成包含所述WebAssembly模块的PLC应用包,包括:
[0023]生成包含所述WebAssembly模块和所述轴配置文件的PLC应用包,其中,所述轴配置文件用于在所述PLC应用包被加载并运行的过程中,设置伺服驱动对象的运动控制参数。
[0024]进一步的,指定的所述伺服驱动包括:设备描述文件,库接口描述文件和对伺服驱动代码编译得到的WebAssembly目标代码,其中:
[0025]所述设备描述文件中包含伺服电机类型的描述信息,每种伺服电机类型的伺服电机的寄存器信息,以及该伺服电机的寄存器在PLC上的IO内存映射使用信息;
[0026]所述库接口描述文件包含属性字段,所述属性字段用于说明所述伺服驱动作为PLC库具有伺服驱动的属性。
[0027]进一步的,指定的所述伺服驱动至少提供如下配置管理接口之一:
[0028]接口INT10,用于创建伺服驱动对象;
[0029]接口INT20,用于设置伺服驱动对象的运动控制参数;
[0030]接口INT30,用于设置伺服驱动对象的轴IO内存映射表的相关参数;
[0031]接口INT40,用于初始化伺服驱动对象;
[0032]指定的所述伺服驱动至少提供如下运动控制功能接口之一:
[0033]接口INT100,用于设置和获取伺服电机的加电状态;
[0034]接口INT110,用于设置和获取伺服电机的位置状态;
[0035]接口INT120,用于设置和获取伺服电机的速度状态;
[0036]接口INT130,作为伺服驱动对象的周期任务执行入口,用于从PLC的IO内存区域中获取伺服电机的最新状态数据,以及将需要发送给伺服电机的控制指令缓存到所述IO内存区域中。
[0037]进一步的,所述PLCOpen运动控制功能库提供至少如下运动控制功能接口:
[0038]接口INT300,用于创建一个轴对象;
[0039]接口INT310,用于遍历所有的轴对象,依次调用轴对象的伺服驱动对象的接口INT130。
[0040]进一步的,所述伺服开发基础库提供如下功能接口:
[0041]接口INT200,用于获取在PLC上的IO内存区域的起始地址。
[0042]进一步的,所述轴配置相关代码包括:
[0043]用于定义PLCOpen轴类型的全局变量,该全局变量使用轴对象的名称作为变量名称;
[0044]轴初始化函数,所述轴初始化函数包含以下内容:
[0045]通过调用所述PLCOpen运动控制功能库提供的接口INT300,创建一个轴对象,并赋
值到该全局变量;
[0046]通过调用轴对象对应的伺服驱动提供的接口INT10,创建一个驱动类型的伺服驱动对象,并将该伺服驱动对象添加到轴对象中;
[0047]针对伺服驱动对象调用接口INT20,接口INT30和接口INT40,用于配置伺服驱动对象的运动控制参数和轴IO内存映射表的相关参数。
[0048]本申请实施例还提供一种PLC应用包运行方法,所述PLC应用包为上述任一PLC应用包生成方法生成的,包括:
[0049]加载所述PLC应用包中的所述WebAssembly模块;
[0050]通过调用所述WebAssembly模块中的所述轴配置相关代码,创建轴对象和伺服驱动对象,并将创建的该伺服驱动对象添加到该轴对象中;
[0051]规划所述本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种PLC应用包生成方法,其特征在于,包括:获取用户指定的伺服驱动,以及输入的待创建的轴对象的轴相关参数;使用所述轴相关参数生成轴配置相关代码,所述轴配置相关代码用于创建轴对象和伺服驱动对象;将PLC应用用户代码和所述轴配置相关代码均编译为WebAssembly目标代码,所述PLC应用用户代码为使用PLCOpen运动控制功能库中的运动控制功能块编码得到的;将编译得到的该WebAssembly目标代码,与PLCOpen运动控制功能库和指定的所述伺服驱动,链接成WebAssembly模块,所述PLCOpen运动控制功能库和指定的所述伺服驱动的代码格式为WebAssembly代码;生成包含所述WebAssembly模块的PLC应用包。2.如权利要求1所述的方法,其特征在于,所述将编译得到的该WebAssembly目标代码,与PLCOpen运动控制功能库和指定的所述伺服驱动,链接成WebAssembly模块,包括:将编译得到的该WebAssembly目标代码,与PLCOpen运动控制功能库、指定的所述伺服驱动和伺服开发基础库,链接成WebAssembly模块,所述伺服开发基础库的代码格式为WebAssembly代码。3.如权利要求1所述的方法,其特征在于,指定的所述伺服驱动包括:设备描述文件,所述设备描述文件中包含伺服电机的寄存器的IO内存使用信息;在所述生成包含所述WebAssembly模块的PLC应用包之前,还包括:基于所述设备描述文件中包含的寄存器在PLC上的IO内存映射使用信息,生成轴IO内存映射表;生成包含所述轴IO内存映射表的IO内存映射文件;所述生成包含所述WebAssembly模块的PLC应用包,包括:生成包含所述WebAssembly模块和所述IO内存映射文件的PLC应用包。4.如权利要求1所述的方法,其特征在于,在所述生成包含所述WebAssembly模块的PLC应用包之前,还包括:生成包含所述轴相关参数的轴配置文件;所述生成包含所述WebAssembly模块的PLC应用包,包括:生成包含所述WebAssembly模块和所述轴配置文件的PLC应用包,其中,所述轴配置文件用于在所述PLC应用包被加载并运行的过程中,设置伺服驱动对象的运动控制参数。5.如权利要求1所述的方法,其特征在于,指定的所述伺服驱动包括:设备描述文件,库接口描述文件和对伺服驱动代码编译得到的WebAssembly目标代码,其中:所述设备描述文件中包含伺服电机类型的描述信息,每种伺服电机类型的伺服电机的寄存器信息,以及该伺服电机的寄存器在PLC上的IO内存映射使用信息;所述库接口描述文件包含属性字段,所述属性字段用于说明所述伺服驱动作为PLC库具有伺服驱动的属性。6.如权利要...

【专利技术属性】
技术研发人员:王观嵘
申请(专利权)人:北京万昇智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1