嵌入式可编程控制器的梯形图编辑软件设计方法

文档序号:6435394阅读:183来源:国知局
专利名称:嵌入式可编程控制器的梯形图编辑软件设计方法
嵌入式可编程控制器的梯形图编辑软件设计方法技术领域
本发明具体涉及一种嵌入式可编程控制器的梯形图编辑软件的设计方法,属控制系统及电子技术领域。
背景技术
长期以来,PLC始终处于工业控制自动化领域的主战场,为各种各样的自动化控制设备提供非常可靠的控制方案。随着工业的发展,可编程控制器在工业控制中的应用越来越广泛,对可编程控制器的要求也越来越高,因此开发新型的可编程控制器是未来的发展趋势。
目前我国使用的PLC大部分来自于日本及欧美一些国家,国外PLC主要被西门子公司、A-B公司、施耐德公司、三菱公司、欧姆龙公司所垄断,PLC的核心技术一直掌握在这些国家及一些大型的外国公司手中。近些年,我国通过引进这些国家的技术进行消化吸收, 进行仿制,使我国的PLC产品有了一定的发展,目前小型的PLC已经批量生产,中型的PLC 也已经有了成品,大型的PLC目前还在研究中。有的产品不仅供应国内市场,还有的产品还出口。在PLC应用方面,我国是很活跃的,应用的行业也很广。
目前有许多工业用自动控制产品、机电一体化产品开始转向以计算机为平台的控制方式。德国工业界最新推出了以计算机为平台的软PLC。软PLC实际利用软件来实现传统PLC的功能。软PLC的特点是
(1)基于工业计算机的柔性可编程逻辑控制技术,可以充分利用最新计算机的高速、大容量、丰富功能及各种软件资源。
(2)软PLC是开放可编程逻辑控制器,在实时控制、网络控制和分级控制领域可获得广泛的应用。
(3)软PLC是实时多任务操作系统,能提供强有力的指令,更加快速的扫描和安全的操作。
(4)开放的结构容易连接到I/O模块、PID模块、运动控制模块和装置、网络。
软PLC最大的优势是具备柔性扩展能力,用户可以选择不同厂家生产的各种硬件产品,充分利用每一软件的最佳特性,组成最佳的控制系统。同时与硬件的连接也十分方便。有很多的I/O卡可以直接连接到软PLC计算机总线上。从而在软、硬件两方面可以达到工控机和PLC性能的完美结合,方便了性能扩展和人机交流,是PLC未来的一大发展趋势。
到目前为止,我国的嵌入式可编程控制器已经有了很大的发展,武汉理工大学、北京工业大学、南京航天航空大学等著名学府在嵌入式可编程控制器的研究方面已经取得了一定的成绩。此外,黄石的科威自控公司已经成功的开发了以8051单片机为硬件平台的嵌入式可编程控制器,有了自主知识产权,产品已经进入市场销售。
我国对PLC有巨大的市场需求,但是我国使用的PLC基本上都是国外的产品。随着工业的发展,新型和智能的可编程控制器必然是未来的发展趋势。开发自主的嵌入式可编程控制器不仅可以适应将来PLC的发展趋势,而且对我国打破国外垄断也有一定的意义。
软PLC利用软件来实现传统PLC的功能,是PLC技术发展的最新趋势。但是目前嵌入式可编程控制器整体的设计还处于初步阶段,在理论研究和工程应用方面都有待于进一步完善。要开发研制出一种成熟的产品,还有很长的路要走,主要体现在以下几个方面
1、如何将上位机梯形图转换成功的指令表转换为下位机能够识别的语言。
2、继续完善梯形图向指令表语言转换的算法的优化。
3、提高编辑器中梯形图指令的检错能力。
4、能够设计一套面对上位机编辑器的独立的下载工具,使转换的代码能够下载到下位机中运行。发明内容
梯形图是PLC最基本的,最形象化的编程语言,对于熟悉继电器的操作人员来说非常的方便。因此,本发明设计的嵌入式可编程控制器的梯形图编程语言仍然是梯形图,只不过要将梯形图语言转换成嵌入式下位机所能够识别的语言。本发明的目的在于根据现有技术存在的缺陷提供一种嵌入式可编程控制器的梯形图编辑软件设计方法。
本发明嵌入式可编程控制器的梯形图编辑软件设计方法,其特征在于包括如下步骤
步骤一元件库的设计;
步骤二梯形图的绘制;
步骤三元件属性的修改及删除;
步骤四语法检查
首先,要检测每个梯形图有没有是输出线圈或者执行线圈,如果没有,则报错;其次检查是否有短路、断路情况的发生顺次检查两相邻并联线间的支路是否有直线直接相连,可以通过扫描两个并联线之间是否有元件来判断,如果有元件则证明不是短路,如果元件的个数为零则就是短路,将扫描过的元件都进行记录,在检查扫描过程结束后如果发现还有未扫描到的元件,则就证明该元件所在的支路为断路;
步骤五梯形图转化成指令表
采用以“二叉树”为中心的方法来实现梯形图到指令表的转换;
步骤六指令表转换成梯形图。
步骤五所述二叉树的建立方法包括如下步骤
第1步,首先确定扫描的方向,如果是从左到右的扫描,则分别记下元件的流入节点和流出节点的链表值;如果是从上到下的扫描,则将先扫描到的元件的流出节点和后扫描到的元件的流入节点记为一个值。判断扫描的方式是,判断先扫描到的元件的流出节点的纵坐标和下一个要扫描的元件的流入节点的纵坐标是否相同,如果相同是从上到下的扫描方向,否则,则是从左到右的扫描方式;
第2步,若假如第一个节点流入节点链表和第二个节点的流入节点链表相同,第一个节点流出节点链表和第二个节点的流出节点链表相同,则两个节点是或的关系,建立 OR节点,建立一棵小的二叉树,两个元件分别为左右子树,先扫描到的为左子树;如果有多个元件并联,则按照先后顺序前两个元件并联后,并联结果和第三个元件并联,建立二叉树,以此类推;
第3步,第一个节点的流入节点链表和第二个节点的流出节点链表相同,则两个节点是与的关系,建立AND节点,建立一棵小的二叉树,两个元件分别为左右子树,先扫描到的为左子树。如果有多个元件串联,则按照先后顺序前两个元件串联后,串联结果和第三个元件串联,建立二叉树,以此类推;
第4步,建立的AND节点和OR节点,也可以根据此原理和其它元件建立新的逻辑关系,建立新的二叉树,以此类推,将梯形图转换成二叉树。
第5步将二叉树转换成指令表语言。
在建立二叉树的时候,串联块和并联块都作为数据保存到链表中,在实现树到指令集的转换过程中,采用后序遍历法对树进行遍历,将二叉树转换成指令表语言,也就是先访问树的左子树,然后依次后序遍历右子树和根结点。
将指令表转换成梯形图时,在确认无语法和逻辑错误的情况下,首先要对指令表进行扫描,具体的实现步骤如下
1)在确定语法没有错误的情况下,扫描指令表读取到LD或是LDN指令的时候, 申请一个节点建立二叉树,首个节点作为二叉树的左子树,同时根据指令以及步骤5中经扫描后保存在链表中的元件数据修改二叉树的节点数据;
2)如果读取到AND或是AND NOT指令时,就是列增加指令,此时要求申请两个新的节点,一个作为二叉树的父节点,另一个作为二叉树的右子树,然后根据当前指令以及步骤 5中经扫描后保存在链表中的元件数据修改新二叉树各节点数据;
3)如果读取到OR或是OR NOT指令时,就是行增加指令,此时同样要求申请两个新的节点,一个作为二叉树的父节点,另一个作为二叉树的右子树,然后根据当前指令以及步骤5中经扫描后保存在链表中的元件数据修改新二叉树各节点数据;
4)如果读取到ALD指令或者是OLD指令,此时要求申请一新节点作为父节点,把当前二叉树和前一二叉树合并,形成一新的二叉树,其中前一个二叉树为左节点,当前二叉树为右节点,然后根据当前指令以及步骤5中经扫描后保存在链表中的元件数据修改新二叉树各节点数据;
5)当逻辑块与单个节点进行操作时,单个节点相当于我们读到了 LD指令,要作为左子树;当多个逻辑块与单个节点进行操作时,我们要将单个节点和首个逻辑块进行操作, 然后依次与其他逻辑块进行操作,然后根据当前指令以及步骤5中经扫描后保存在链表中的元件数据修改新二叉树各节点数据;
6)重复上述的建树方法,直到读到OUT指令,然后根据当前指令以及步骤5中经扫描后保存在链表中的元件数据修改新二叉树各节点数据,可以将指令表语言转换成二叉树;
7)采用后序遍历法,将二叉树转换成梯形图。
本发明给出了嵌入式可编程控制器(PLC)梯形图指令的解释方法,提出了按照梯形图中“能流”的方向来扫描梯形图从而来建立二叉树的方法。以二叉树为中心,实现了 PLC用户控制程序的梯形图形式与指令表形式之间的转换,及指令表语言转换为二叉树的方法,完成了以二叉树为中心的梯形图和指令表的相互转换。最后在Windows平台下应用 VC++6. 0开发了嵌入式可编程控制器的一套编辑器,该编辑器可以实现梯形图绘制、梯形图语言与指令表语言相互转换等功能。开发的梯形图编辑软件,其功能包括用户界面、梯形图编辑模块、梯形图向指令表的转换模块等。该软件支持以鼠标拖拉方式绘制梯形图元件,支持梯形图元件的插入、删除等操作,支持对梯形图中的元件属性的更改,支持编辑梯形图过程中遇到语法、词法错误时提示错误,等。


图1元件绘制流程;
图2行的绘制流程;
图3语法检查流程;
图4建立二叉树的流程图5梯形图与指令表转换方式。
具体实施方式
下面结合附图对本发明的实施例做详细的说明。
程序主界面
主界面主要由标题栏、菜单栏、工具条栏、状态栏、梯形图绘图区、指令代码/错误显示区等部分组成。
1、标题栏,用于显示正在使用的软件的名称和正在编辑的文件的名称。
2、菜单栏,容纳了所有能够使用的软件功能的选项。如对文件的处理(包括新建、 打开、关闭、保存、另存为、属性和退出等)、编辑(包括剪切、粘贴和复制)、查找等。
3、工具条栏,通常用于放置需要经常使用的软件功能选项。包括常用的编辑功能、 常用梯形图元件和连接线,以及程序运行的功能等。
4、梯形图绘图区,用于绘制PLC梯形图程序。
5、指令表显示区,用于显示指令表语言。
6、指令代码/错误显示区,用于显示PLC程序编译后的结果,方便使用者了解程序的问题所在。
元件库的设计
要描述一个元件,主要是描述它的各种属性,在软件当中主要是体现图形属性和物理属性。图形属性是指工程师使用梯形图编程软件将元件画在计算机屏幕上,形成梯形图,当以元件图形将元件画在计算机屏幕上时,描述该元件的坐标、大小等属性就被称为元件的图形属性。物理属性就是指元件的名称、注释等属性。
梯形图中元件的属性可以用一个四元组表示(元件类型,所在位置,名称)。其中,元件类型表示元件的种别,如水平连线、常开触点、常闭触点、常开线圈、定时器、计数器等;为了表示元件的所在位置,可以将整个梯形图看成一个平面,再将这个平面划分成一个网格矩阵,使用元件在网格矩阵中的行列就可以表示;名称也是元件的一个必要属性,它代表了 PLC硬件中的具体地址,如10. 0表示PLC硬件的第0个触点。
利用面向对象的概念,将元件的属性表示为一个CLdsymbol类,在编译器中编制梯形图程序时,梯形图元件的信息已经记录在相应的类结构中,它们是元件所在行列位置、元件的符号、元件对应的变量等。
梯形图的绘制
梯形图编辑只需清楚地表达各个图形单元及图形单元间的联系即可。梯形图中的梯级、行和元件都是由各自的类生成的实体对象,它们之间通过链表取得联系。在绘制梯形图的过程中,主要是通过创建新的梯级对象、行对象和元件对象并将其地址指针插入相应的链表中或者改变已经存在的元件对象的属性。在梯形图编辑过程中,主要是元件、行、梯级的绘制和编辑。
1、元件的绘制
元件是组成梯形图的最小单位,行和梯级的绘制都包含了元件的绘制。通过改变已经存在的元件对象的属性来实现元件的绘制。其流程如图1所示。
2、行的绘制
绘制行的设计思想就是生成一个行对象,再根据梯形图上指定的插入位置将该行对象的地址指针插入相应的梯级链表中,其流程如图2所示。
3、梯级的绘制
绘制梯级的设计思想和绘制行的设计思想相同,实现方法类似。
元件属性的修改及删除
刚画出来的元件,它的各项属性一般并不能完全满足要求,需对其进行修改。采用传统的属性设置对话框的形式来设置各个元件的属性值。双击元件,就会显示一个对话框, 对话框中显示用户可以修改的值。用户修改完毕后,点击“确定”关闭对话框,用户新输入的值将会显示在梯形图上,即用户新输入的值代替了原来的元件属性。
元件的删除就是选中元件,利用工具栏里的删除键或者是键盘里的DEL键来完成。
语法检查
在进行梯形图向指令表转换之前,要确保所编写的梯形图没有不符合规范的问题。如果有,可能在编译的过程中会给出错误信息。因此在向指令表转换之前,要进行语法检查。
根据梯形图编辑的特点,首先,要检测每个梯形图有没有输出线圈或者执行线圈, 如果没有,则报错。其次检查是否有短路、断路情况。短路的情况就是两并联线之间存在着直线直接相连的情况。检查的时候就是顺次检查两相邻并联线间的支路是否有直线直接相连,可以通过扫描两个并联线之间是否有元件来判断。如果有元件则证明不是短路,如果元件的个数为零则就是短路。至于断路,可以将扫描过的元件都进行记录,在检查扫描过程结束后如果发现还有未扫描到的元件,则就证明该元件所在的支路为断路。
在完成语法检查之后,可以进行下一步的工作,即梯形图向指令表转化过程,这过程中包括梯形图到树的转变、由树产生指令表语言等几个步骤,流程图如图3所示。
梯形图转化成指令表
梯形图作为一种图形化语言,在编写梯形图程序的过程中只是存储了行与行、元件与元件之间的位置顺序以及每个元件自身的属性,元件之间的逻辑关系并没有被存储, 这是梯形图的转换过程中必须解决的一个难题。本发明采用以“二叉树”为中心的方法来实现梯形图到指令表的转换。
梯形图被访问时是有规则的,一般是从母线开始从左到右,从上到下,因此在建立二叉树的时候有一定的规律将梯形图的每个元素看成是二叉树的结点,由梯形图每个梯级的第一个元素开始扫描,扫描完成后将每个梯级建立一棵二叉树。根据梯形图与二叉树结构的相似性,将输出作为根结点,其他元素就好像是二叉树的分支。需要注意的是,由于存在块的串联或并联,必须将元素间的逻辑关系也表示为二叉树的结点。这样,通过扫描整个梯形图可以将所有的元素都利用逻辑关系关联起来。那么每个梯形图网络都可以表示成一棵二叉树,而整个PLC用户程序就是一系列二叉树的有序排列,也就是二叉树森林。
本发明给出了一种根据梯形图“能流”的方向来扫描梯形图,然后通过梯形图中元素的流入节点和流出节点之间的位置逻辑关系来建立二叉树的方法,如图4所示。
扫描梯形图的顺序按照从左到右,从上到下的顺序,就获取了各个元件的流入节点和流出节点,并将这些数据存在堆栈中。当进行扫描时,当某个元件的流出节点和某个元件的流入节点相同时,记为一个值,就为后面并联块的实现提供了方便。具体算法如下
第1步,首先确定扫描的方向,如果是从左到右的扫描,则分别记下元件的流入节点和流出节点的链表值;如果是从上到下的扫描,则将先扫描到的元件的流出节点和后扫描到的元件的流入节点记为一个值。判断扫描的方式是,判断先扫描到的元件的流出节点的纵坐标和下一个要扫描的元件的流入节点的纵坐标是否相同,如果相同是从上到下的扫描方向,否则,则是从左到右的扫描方式。
第2步,若假如第一个节点流入节点链表和第二个节点的流入节点链表相同,第一个节点流出节点链表和第二个节点的流出节点链表相同,则两个节点是或的关系,建立 OR节点,建立一棵小的二叉树,两个元件分别为左右子树,先扫描到的为左子树。如果有多个元件并联,则按照先后顺序前两个元件并联后,并联结果和第三个元件并联,建立二叉树,其他的以此类推。
第3步,第一个节点的流入节点链表和第二个节点的流出节点链表相同,则两个节点是与的关系,建立AND节点,建立一棵小的二叉树,两个元件分别为左右子树,先扫描到的为左子树。如果有多个元件串联,则按照先后顺序前两个元件串联后,串联结果和第三个元件串联,建立二叉树,其他的以此类推。
第4步,建立的AND节点和OR节点,也可以根据此原理和其它元件建立新的逻辑关系,建立新的二叉树,以此类推,将梯形图转换成二叉树。
第5步将二叉树转换成指令表语言。
在建立二叉树的时候,串联块和并联块都作为数据保存到链表中了。因此,在实现树到指令集的转换过程中,本发明采用后序遍历法对树进行遍历,将二叉树转换成指令表语言,也就是先访问树的左子树,然后依次后序遍历右子树和根结点。
指令表转换成梯形图
从指令表程序转换为梯形图程序是梯形图程序到指令表程序转换的逆过程。因此,上述以二叉树为中心的转换算法同样适用于指令表程序到梯形图程序的转换,如图5 所示。
由指令表程序转换为梯形图程序,需要处理的问题是通过对PLC指令表的分析, 找出其内部逻辑关系,进而得到输出元件的逻辑状态,从而实现指令表到梯形图的转换。对于指令表和梯形图来说,二者之间的区别在于梯形图是一维表示,而指令代码是二维表示。
将指令表转换成梯形图时,在确认无语法和逻辑错误的情况下,首先要对指令表进行扫描。具体的实现步骤如下9
1、在确定语法没有错误的情况下,扫描指令表。读取到LD或是LDN指令的时候, 申请一个节点建立二叉树,首个节点作为二叉树的左子树,同时根据指令修改二叉树的节点数据。一般讲来,转换适应服从一些规则,如与母线相连的一般是LD或是LDN指令。
2、如果读取到AND或是AND NOT指令时,就是列增加指令,此时要求申请两个新的节点,一个作为二叉树的父节点,另一个作为二叉树的右子树,然后根据当前指令修改新二叉树各节点数据。
3、如果读取到OR或是OR NOT指令时,就是行增加指令,此时同样要求申请两个新的节点,一个作为二叉树的父节点,另一个作为二叉树的右子树,然后根据当前指令修改新二叉树各节点数据。
4、如果读取到ALD指令或者是OLD指令,此时要求申请一新节点作为父节点,把当前二叉树和前一二叉树合并,形成一新的二叉树,其中前一个二叉树为左节点,当前二叉树为右节点,然后根据当前指令修改新二叉树各节点数据。
5、当逻辑块与单个节点进行操作时,单个节点相当于我们读到了 LD指令,要作为左子树;当多个逻辑块与单个节点进行操作时,我们要将单个节点和首个逻辑块进行操作, 然后依次与其他逻辑块进行操作,然后根据当前指令修改新二叉树各节点数据。
6、重复上述的建树方法,直到读到OUT指令,然后根据当前指令修改新二叉树各节点数据,可以将指令表语言转换成二叉树。
7、采用后序遍历算法,将二叉树转换成梯形图。
权利要求
1.一种嵌入式可编程控制器的梯形图编辑软件设计方法,其特征在于包括如下步骤 步骤一元件库的设计;步骤二 梯形图的绘制; 步骤三元件属性的修改及删除; 步骤四语法检查首先,要检测每个梯形图有没有是输出线圈或者执行线圈,如果没有,则报错;其次检查是否有短路、断路情况的发生顺次检查两相邻并联线间的支路是否有直线直接相连,可以通过扫描两个并联线之间是否有元件来判断,如果有元件则证明不是短路,如果元件的个数为零则就是短路,将扫描过的元件都进行记录,在检查扫描过程结束后如果发现还有未扫描到的元件,则就证明该元件所在的支路为断路; 步骤五梯形图转化成指令表采用以“二叉树”为中心的方法来实现梯形图到指令表的转换; 步骤六指令表转换成梯形图。
2.根据权利要求1所述的嵌入式可编程控制器的梯形图编辑软件设计方法,其特征在于步骤五所述二叉树的建立方法包括如下步骤第1步,首先确定扫描的方向,如果是从左到右的扫描,则分别记下元件的流入节点和流出节点的链表值;如果是从上到下的扫描,则将先扫描到的元件的流出节点和后扫描到的元件的流入节点记为一个值。判断扫描的方式是,判断先扫描到的元件的流出节点的纵坐标和下一个要扫描的元件的流入节点的纵坐标是否相同,如果相同是从上到下的扫描方向,否则,则是从左到右的扫描方式;第2步,若假如第一个节点流入节点链表和第二个节点的流入节点链表相同,第一个节点流出节点链表和第二个节点的流出节点链表相同,则两个节点是或的关系,建立OR节点,建立一棵小的二叉树,两个元件分别为左右子树,先扫描到的为左子树;如果有多个元件并联,则按照先后顺序前两个元件并联后,并联结果和第三个元件并联,建立二叉树,以此类推;第3步,第一个节点的流入节点链表和第二个节点的流出节点链表相同,则两个节点是与的关系,建立AND节点,建立一棵小的二叉树,两个元件分别为左右子树,先扫描到的为左子树。如果有多个元件串联,则按照先后顺序前两个元件串联后,串联结果和第三个元件串联,建立二叉树,以此类推;第4步,建立的AND节点和OR节点,也可以根据此原理和其它元件建立新的逻辑关系, 建立新的二叉树,以此类推,将梯形图转换成二叉树。 第5步将二叉树转换成指令表语言。
3.根据权利要求2所述的嵌入式可编程控制器的梯形图编辑软件设计方法,其特征在于在建立二叉树的时候,串联块和并联块都作为数据保存到链表中,在实现树到指令集的转换过程中,采用后序遍历法对树进行遍历,将二叉树转换成指令表语言,也就是先访问树的左子树,然后依次后序遍历右子树和根结点。
4.根据权利要求1所述的嵌入式可编程控制器的梯形图编辑软件设计方法,其特征在于将指令表转换成梯形图时,在确认无语法和逻辑错误的情况下,首先要对指令表进行扫描,具体的实现步骤如下1)在确定语法没有错误的情况下,扫描指令表读取到LD或是LDN指令的时候,申请一个节点建立二叉树,首个节点作为二叉树的左子树,同时根据指令以及步骤5中经扫描后保存在链表中的元件数据修改二叉树的节点数据;2)如果读取到AND或是ANDNOT指令时,就是列增加指令,此时要求申请两个新的节点,一个作为二叉树的父节点,另一个作为二叉树的右子树,然后根据当前指令以及步骤5 中经扫描后保存在链表中的元件数据修改新二叉树各节点数据;3)如果读取到OR或是ORNOT指令时,就是行增加指令,此时同样要求申请两个新的节点,一个作为二叉树的父节点,另一个作为二叉树的右子树,然后根据当前指令以及步骤 5中经扫描后保存在链表中的元件数据修改新二叉树各节点数据;4)如果读取到ALD指令或者是OLD指令,此时要求申请一新节点作为父节点,把当前二叉树和前一二叉树合并,形成一新的二叉树,其中前一个二叉树为左节点,当前二叉树为右节点,然后根据当前指令以及步骤5中经扫描后保存在链表中的元件数据修改新二叉树各节点数据;5)当逻辑块与单个节点进行操作时,单个节点相当于我们读到了LD指令,要作为左子树;当多个逻辑块与单个节点进行操作时,我们要将单个节点和首个逻辑块进行操作,然后依次与其他逻辑块进行操作,然后根据当前指令以及步骤5中经扫描后保存在链表中的元件数据修改新二叉树各节点数据;6)重复上述的建树方法,直到读到OUT指令,然后根据当前指令以及步骤5中经扫描后保存在链表中的元件数据修改新二叉树各节点数据,可以将指令表语言转换成二叉树;7)采用后序遍历法,将二叉树转换成梯形图。
全文摘要
本发明给出了一种嵌入式可编程控制器的梯形图编辑软件设计方法,提出了按照梯形图中“能流”的方向来扫描梯形图从而来建立二叉树的方法。本发明以二叉树为中心,实现了PLC用户控制程序的梯形图形式与指令表形式之间的转换,及指令表语言转换为二叉树的方法,完成了以二叉树为中心的梯形图和指令表的相互转换。最后在Windows平台下应用VC++6.0开发了嵌入式可编程控制器的一套编辑器,该编辑器可以实现梯形图绘制、梯形图语言与指令表语言相互转换等功能。
文档编号G06F17/50GK102508654SQ201110308100
公开日2012年6月20日 申请日期2011年10月11日 优先权日2011年10月11日
发明者刘维亭, 常艳超, 张冰, 朱志宇, 秦冲, 袁文华, 赵强, 魏海峰 申请人:江苏科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1