本发明专利技术公开一种PMW格式文件中PLC指令存储规律的解读及转换方法,包括:分析基本顺控指令的存储格式及编码,得出基本顺控指令存储结构及编码规律;结合基本顺控指令的储存结构,获取功能指令及步进梯形指令的存储格式及编码规律;得到转换算法;利用指令的存储、编码规律及转换算法,遍历PMW文件,将PMW文件中的二进制编码转换成ASCII码,存入成文本文件。本发明专利技术能够实现将二进制编码转化成ASCII码,并存入通用格式文本文件。解读PMW文件的存储格式及编码规律,得出PMW文件中PLC指令的存储算法,利用该算法实现转换。此方法的实现有利用其它PLC开发平台实现对PMW文件的兼容,提升PMW文件的可读性。
【技术实现步骤摘要】
本专利技术涉及一种对计算机程序文件中的存储内容进行解读及转换的方法,属于自动控制领域;具体来说是对PMW格式文件中PLC指令的存储规律进行解读,并将PMW格式文件转换成通用的文件格式。
技术介绍
一直以来,可编程逻辑控制器(Programmable Logic Controller, PLC)在自动控制领域都起着不可替代的作用,它为生产自动化提供了可靠的技术保障。现有的PLC产品种类繁多,如:欧姆龙、三菱、KEYENCE、松下、西门子等;但是它们在产品的体系结构等方面没有统一的标准,这就大大的制约了 PLC的发展。它们的体系结构相对封闭,各个PLC厂家生产的硬件体系互不兼容;不同品牌的PLC所需要的PLC程序开发环境互不相同,甚者相同品牌的不同系列的PLC所需要的开发环境都不一样。在编程语言和指令系统方面也存在很大的不同,当用户选择了一种PLC产品后,必须选择与其相应的控制规程,并且学习特定的编程语言。正是由于各类PLC存在的各种差异,在一种PLC程序开发平台下开发的PLC程序保存为特定格式的程序文件无法被其它开发平台识别,如:三菱开发软件FXGP-WIN-C生成的PMW格式文件无法被欧姆龙的CX-Programmer软件打开。如果能获知某种PLC程序文件的存储格式将有利于实现其它软件对该类PLC文件的兼容。PMW格式文件是由三菱PLC程序开发软件生成的PLC程序文件。对PMW文件中PLC指令的存储规律的解读将有助于其它PLC开发及PLC仿真软件对其实现兼容,如:虚拟PLC仿真平台软件能够直接读取并运行该类文件。
技术实现思路
针对上面的问题,本专利技术提出了一种PMW格式文件的解读和转换方法,该方法在分析了 PMW文件中PLC指令存储规律的基础上对其进行解读并将其转换成通用的文件格式。为了实现上述目的,本专利技术采用以下的技术方案:一种PMW格式文件中PLC指令存储规律的解读及转换方法,包括如下步骤:S1.对已有基本顺控指令在PMW文件中的存储格式及编码进行分析,得出基本顺控指令存储结构及编码规律;S2.结合基本顺控指令的储存结构,获取功能指令及步进梯形指令的存储格式及编码规律;得到编码转译成指令的转换算法;S3.利用指令的存储、编码规律及转换算法,遍历PMW文件,将PMW文件中的二进制编码转换成相应的ASCII码,并存入成文本文件。优选的,所述基本顺控指令是指PLC指令编程语言中的基本指令,应用基本指令能够实现PLC的大部分控制功能。其中的基本指令是指PLC指令编程语言中应用最多的基本指令,如:LD、AND、OR、OUT等,应用该类指令能够实现PLC的大部分控制功能。 所述PMW文件中的存储格式指在PLC程序中的指令信息以怎样的数据结构存放在PMW文件中,所述编码为指令以二进制编码的形式存放到数据结构单元中,所述的二进制编码为指令在PMW文件中的存在方式。优选的,所述功能指令能够实现某种特定的运算或者控制功能,所述步进梯形指令使得PLC程序实现步进控制,程序分段执行。所述功能指令及步进梯形指令为PLC指令语言中相对复杂的两类,功能指令能够实现某种特定的运算或者控制功能,如实现传送(MOV等)、比较(CMP、ZCP等)、移位(SFTR等)功能。所述步进梯形指令使得PLC程序实现步进控制,程序分段执行。优选的,所述步骤S2结合基本顺控指令的储存结构,通过枚举、推断、归纳、总结的方式获取功能指令及步进梯形指令的存储格式及编码规律;得到编码转译成指令的转换算法;所述枚举是依次根据不同的指令相同的操作数,相同指令不同的操作数类型,相同指令不同的操作数编号获取其相应的二进制编码,将二进制编码转换成十六进制存放到指令编码数据表格中;所述推断是根据指令编码数据表格中编码,推断可能存在的储存编码规律,并验证推断;所述归纳、总结是结合上述推断和指令编码表格,针对不同的指令相同的操作数,相同指令不同的操作数类型,相同指令不同的操作数等情况,分析出不同指令所占据的字节长度、不同指令名/不同操作数/不同操作数编号对应的二进制编码。其中不同指令所占据的字节长度包括:双字节、四字节、六字节、多字节,对于功能指令,每个指令名占据两个字节,每个操作数占据四个字节。不同指令名、不同操作数、不同操作数编号对应的二进制编码,如:SFTR指令对应0x8400,X类型元件对应0x04,编号12 (X类型)对应0x10。优选的,所述步骤S2的编码转译成指令的转换算法是将PMW文件中的二进制编码转换得到对应的PLC指令。所述遍历PMW文件就是读取整个PMW文件提取出PLC指令的储存信息,除去没用的编码。所述二进制编码转换成相应的ASCII码是将提取出的PLC存储编码,根据PLC指令数据结构储存的特点及转译算法得到指令的ASCII码形式。与现有技术相比,本专利技术的有益效果为:能够实现将二进制编码转化成ASCII码,并存入通用格式文本文件。解读PMW文件的存储格式及编码规律,得出PMW文件中PLC指令的存储算法,利用该算法实现转换。此方法的实现有利用其它PLC开发平台实现对PMW文件的兼容,提升PMW文件的可读性。附图说明图1为PMW格式文件中PLC指令存储规律的分析流程图。图2为功能指令(以SFTR指令为例)在PMW文件中的存储编码获取流程图。图3为SFTR指令的存储格式。图4为ZRST指令的存储格式。图5为PMW格式文件的转换流程图。具体实施例方式下面结合附图对本专利技术做进一步描述,但本专利技术的实施方式并不限于此。如图1所示,分析PLC各类指令在PMW格式文件中的存储格式及编码规律的步骤包括:对已有PLC的基本顺控指令在PMW文件中的存储特点进行分析,得到基本指令的存储规律。 以上所述的已有PLC的基本顺控指令在PMW文件中的存储特点,是可以从现有相关文献中找到的PLC基本指令的存储信息,其中包含了 PLC不同的基本指令在PMW文件中的编码及储存格式。以LD指令编码及储存格式分析为例,通过改变指令操作数的类型及编号,统计对应的十六进制编码如表I。表ILD指令的存储结构(十六进制编码)本文档来自技高网...
【技术保护点】
一种PMW格式文件中PLC指令存储规律的解读及转换方法,其特征在于,包括以下步骤:S1.对已有基本顺控指令在PMW文件中的存储格式及编码进行分析,得出基本顺控指令存储结构及编码规律;S2.结合基本顺控指令的储存结构,获取功能指令及步进梯形指令的存储格式及编码规律;得到编码转译成指令的转换算法;S3.利用指令的存储、编码规律及转换算法,遍历PMW文件,将PMW文件中的二进制编码转换成相应的ASCII码,并存入成文本文件。
【技术特征摘要】
1.一种PMW格式文件中PLC指令存储规律的解读及转换方法,其特征在于,包括以下步骤: 51.对已有基本顺控指令在PMW文件中的存储格式及编码进行分析,得出基本顺控指令存储结构及编码规律; 52.结合基本顺控指令的储存结构,获取功能指令及步进梯形指令的存储格式及编码规律;得到编码转译成指令的转换算法; 53.利用指令的存储、编码规律及转换算法,遍历PMW文件,将PMW文件中的二进制编码转换成相应的ASCII码,并存入成文本文件。2.根据权利要求1所述的PMW格式文件中PLC指令存储规律的解读及转换方法,其特征在于,所述基本顺控指令是指PLC指令编程语言中的基本指令,应用基本指令能够实现PLC的大部分控制功能。3.根据权利要求1所述的PMW格式文件中PLC指令存储规律的解读及转换方法,其特征在于,所述功能指令能够实现某种特定的运算或者控制功能,所述步进梯形指令使得PLC程序实现步进控制,程序分段执行。4.根据权利要求1所述的PMW格式文...
【专利技术属性】
技术研发人员:何汉武,胡兆勇,李涛涛,
申请(专利权)人:广东工业大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。