[发明专利]按照IEC61131-3标准的将梯形图语言编译成指令表语言的方法无效
申请号: | 200810062554.9 | 申请日: | 2008-06-24 |
公开(公告)号: | CN101369234A | 公开(公告)日: | 2009-02-18 |
发明(设计)人: | 严义;章航平 | 申请(专利权)人: | 杭州电子科技大学 |
主分类号: | G06F9/45 | 分类号: | G06F9/45;G05B19/05 |
代理公司: | 杭州求是专利事务所有限公司 | 代理人: | 周烽 |
地址: | 310018浙江省*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 按照 iec61131 标准 梯形 语言 译成 指令 表语 方法 | ||
1.一种将符合IEC 61131-3标准的梯形图语言编译成指令表语言的方法,其特征在于,包括如下步骤:
(1)利用有向图来表达梯形图中每个梯级的拓扑结构,形成一个有向图的集合。
(2)若某个有向图具有n个输出线圈节点,则将该有向图进行拆分为n个子有向图,其中,n大于1。
(3)根据有向图中节点之间的串并联关系,将每个有向图转化为二叉分解树。对该二叉分解树进行后序遍历,得到遍历结果符合“从上到下,从左到右”的梯形图到指令表翻译原则。
(4)依后序遍历的顺序,计算二叉分解树中规约节点的指令表,根节点的指令表就是其有向图的指令表。
2.如权利要求1所述的方法,其特征在于,所述步骤(1)中,将梯形图中的母线,触点,线圈,功能块及函数等分别抽象为了有向图中的母线节点、触点节点、线圈节点、功能块节点,并将它们之间的连接抽象为了有向图中的边。
3.如权利要求1所述的方法,其特征在于,所述步骤(1)中,将梯形图中‘工字型’及‘∏字型’连接抽象为两个虚拟节点之间的连接。
4.如权利要求1所述的方法,其特征在于,所述步骤(2)中中包括步骤:
(i)从有向图G的某一起点开始,利用深度优先遍历算法遍历到某一终点,将遍历经过的节点及边组成一个图Gi,放入列表LG当中。
(ii)将遍历经过的边从G中删除。
(iii)将G中出入度为零的节点删除。
(iv)重复以上过程,直到G变为空。
(v)若在LG当中存在两个图Gi及Gj,且Gi的起始节点与终止节点都存在Gj当中,则执行步骤(VI)、(VII)、(VIII);否则跳到步骤(IX)。
(vi)将Gi与Gj在Gi的起始节点及终止节点处并联连接,产生新图G。
(vii)将Gi、Gj从LG当中删除,并将G放入到LG当中。
(viii)返回步骤(V)。
(ix)若LG中有一个图Gi其起始节点的类型不是母线节点,我们设该起始节点为v,则执行如下步骤;否则结束。
(x)在LG中找到另一个包含v节点的图Gj,开辟一个辅助变量,并将该辅助变量标识在Gj的这个v节点的后面。
(xi)用一个触点节点代替Gi中的起始节点,且该触点节点的名称为步骤(x)中开辟的辅助变量。
5.如权利要求1所述的方法,其特征在于,由所述步骤(3)中得到的二叉分解树,其具有以下的特征:
(i)二叉树叶子节点都是有向图中的节点,中间节点都是规约节点,用来表示左右节点之间的连接关系。
(ii)规约节点的种类分为逻辑规约节点及功能块规约节点,它们的定义分别如下:
(a)若某个规约节点v是逻辑规约节点,则在以v为根节点的子树中,没有一个叶子节点是功能块节点。
(b)若某个规约节点v是功能块规约节点,则在以v为根节点的子树中,至少有一个叶子节点是功能块节点。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州电子科技大学,未经杭州电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810062554.9/1.html,转载请声明来源钻瓜专利网。