CN111880466A - 上位机向可编程逻辑控制器传输数据的方法 - Google Patents
上位机向可编程逻辑控制器传输数据的方法 Download PDFInfo
- Publication number
- CN111880466A CN111880466A CN202010740784.7A CN202010740784A CN111880466A CN 111880466 A CN111880466 A CN 111880466A CN 202010740784 A CN202010740784 A CN 202010740784A CN 111880466 A CN111880466 A CN 111880466A
- Authority
- CN
- China
- Prior art keywords
- data
- programmable logic
- upper computer
- logic controller
- software program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000004891 communication Methods 0.000 claims abstract description 22
- 230000006870 function Effects 0.000 claims abstract description 13
- 230000005540 biological transmission Effects 0.000 description 11
- 230000007246 mechanism Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
- G05B19/056—Programming the PLC
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/10—Plc systems
- G05B2219/13—Plc programming
- G05B2219/13004—Programming the plc
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Programmable Controllers (AREA)
Abstract
上位机向可编程逻辑控制器传输数据的方法,包括以下步骤:上位机通过基于C#语言编写的软件程序与可编程逻辑控制器建立TCP通信连接;上位机通过软件程序范围读取存储于上位机中的EXCEL文件内的数据;以及上位机通过软件程序将EXCEL文件内的每个sheet表单内的数据单独分封为一个数据包,每个数据包调用一次Socket的send()函数传输给可编程逻辑控制器。借助本发明提供的上位机向可编程逻辑控制器传输EXCEL文件数据的方法,上位机能够高效快速地向可编程逻辑控制器传输EXCEL文件数据。
Description
技术领域
本发明涉及一种数据传输方法,尤其是一种上位机向可编程逻辑控制器传输数据的方法。
背景技术
在自动控制系统中经常需要通过上位机向可编程逻辑控制器传输EXCEL文件数据,例如向运动控制器发送用于构造CAM曲线的点位数据。随着控制精度的提高,运动控制器所需的CAM曲线数量以及点位数据的数量急速增涨。上位机在通过基于VB.NET编写的软件程序传输EXCEL文件数据的方式耗费时间过长,不能满足客户的需求。
发明内容
本发明的目的是提供一种上位机向可编程逻辑控制器传输数据的方法,使上位机能够高效快速地向可编程逻辑控制器传输EXCEL文件数据。
本发明提供了一种上位机向可编程逻辑控制器传输数据的方法,包括以下步骤:
上位机通过基于C#语言编写的软件程序与可编程逻辑控制器建立TCP通信连接;
上位机通过软件程序范围读取存储于上位机中的EXCEL文件内的数据;以及
上位机通过软件程序将EXCEL文件内的每个sheet表单内的数据单独分封为一个数据包,每个数据包调用一次Socket的send()函数传输给可编程逻辑控制器。
本发明提供的上位机向可编程逻辑控制器传输数据的方法,上位机通过采用C#语言编写的软件程序范围读取EXCEL文件内的数据,相比之前逐个单元格读取的方式,节省了大量读取数据的时间。另外,软件程序在传输数据时采用自定义的协议分封数据包,充分利用传输机制,提高传输效率。借此,发明提供的上位机向可编程逻辑控制器传输EXCEL文件数据的方法使上位机能够高效快速地向可编程逻辑控制器传输EXCEL文件数据。
在上位机向可编程逻辑控制器传输数据的方法的再一种示意性实施方式中,软件程序作为客户端与作为服务器的可编程逻辑控制器建立通信连接。
在上位机向可编程逻辑控制器传输数据的方法的又一种示意性实施方式中,软件程序通过读取xml格式的配置文件来配置建立TCP通信的通信参数,软件程序还通过读取配置文件来配置读取并传输的EXCEL文件的文件参数。借此便于使用和维护。
在上位机向可编程逻辑控制器传输数据的方法的另一种示意性实施方式中,通信参数包括可编程逻辑控制器的名称、IP地址、端口号以及存储目标。
在上位机向可编程逻辑控制器传输数据的方法的另一种示意性实施方式中,文件参数包括EXCEL文件的位置路径、最大可编程逻辑控制器数量、最大sheet表单数量及最大单元格数量。
在上位机向可编程逻辑控制器传输数据的方法的另一种示意性实施方式中,软件程序还根据逻辑判断代码在读取配置文件失败时、建立TCP通信连接失败时、读取EXCEL文件失败时、读取EXCEL文件内sheet表单数量超过最大值时、读取sheet表单内单元格数量超过最大值时和传输数据包失败时生成提示界面。方便用户应对传输过程中的异常状况。
在上位机向可编程逻辑控制器传输数据的方法的另一种示意性实施方式中,每个sheet表单内的数据单独分封的数据包包括表头段及数据段。表头段包括当前发送的sheet表单的序号、程序读取的Excel文件内sheet表单的数量和当前发送的sheet表单的所有数据长度。当前发送的sheet表单的序号占用一个字节位,程序读取的Excel文件内sheet表单的数量占用一个字节位,当前发送的sheet表单的所有数据长度占用四个字节位。数据段包括当前发送的sheet表单的全部单元格内的数据,每个单元格内的数据构造一个字符串变量,各字符串变量转化后占用八个字节位。服务端可以更加明确和安全地对数据进行解析。
在上位机向可编程逻辑控制器传输数据的方法的另一种示意性实施方式中,软件程序的代码中定义有用于扩展的抽象父类及接口。借此使软件程序具备较好的可扩展性。
附图说明
以下附图仅对本发明做示意性说明和解释,并不限定本发明的范围。
图1为上位机向可编程逻辑控制器传输数据的方法的一种示意性实施方式的流程图。
图2为数据包的结构示意图。
图3为软件程序的程序代码的树形结构图。
标号说明
10 表头段
20 数据段
具体实施方式
为了对发明的技术特征、目的和效果有更加清楚的理解,现对照附图说明本发明的具体实施方式,在各图中相同的标号表示结构相同或结构相似但功能相同的部件。
在本文中,“示意性”表示“充当实例、例子或说明”,不应将在本文中被描述为“示意性”的任何图示、实施方式解释为一种更优选的或更具优点的技术方案。
为使图面简洁,各图中只示意性地表示出了与本发明相关的部分,它们并不代表其作为产品的实际结构。
图1为上位机向可编程逻辑控制器传输数据的方法的一种示意性实施方式的流程图。参照图1,上位机向可编程逻辑控制器传输数据的方法,包括以下步骤:
S10:上位机通过基于C#语言编写的软件程序与可编程逻辑控制器建立TCP通信连接。其中,软件程序作为客户端与作为服务器的可编程逻辑控制器建立通信连接,软件程序用于设置建立通信连接时的可编程逻辑控制器的名称、IP地址、端口号等参数。
S20:上位机通过软件程序范围读取存储于上位机中的EXCEL文件内的数据。由于软件程序采用C#语言编写,比较目前采用VB.NET编写的软件程序,在读取EXCEL文件数据时可以在定义好读取范围后整体读取多个单元格内的数据,代替目前采用VB.NET编写的软件程序的逐个单元格读取数据的方式。
S30:上位机通过软件程序将EXCEL文件内的每个sheet表单内的数据单独分封为一个数据包,每个数据包调用一次Socket的send()函数传输给可编程逻辑控制器。目前使用的传输方式中,通常每个sheet表单内的单元格的数据分为数组,每组调用一次Socket的send()函数传输给可编程逻辑控制器,调用send()函数的次数多,不能充分利用传输机制。与之相比,在步骤S30中,每个sheet表单内的数据单独分封为一个数据包并调用一次Socket的send()函数,充分利用传输机制,提高了传输效率。
图2为数据包的结构示意图。参照图2,每个sheet表单内的数据单独分封的数据包包括表头段10及数据段20。表头段10包括当前发送的sheet表单的序号(对应图中SheetSequence)、程序读取的Excel文件内sheet表单的数量(对应图中Total Sheet Number)和当前发送的sheet表单的所有数据长度(对应图中Sheet Length)。当前发送的sheet表单的序号占用一个字节位,程序读取的Excel文件内sheet表单的数量占用一个字节位,当前发送的sheet表单的所有数据长度占用四个字节位。数据段20包括当前发送的sheet表单的全部单元格内的数据,每个单元格内的数据构造一个字符串变量,各字符串变量转化后占用八个字节位。采用上述清晰的应用层数据格式,作为服务器的可编程逻辑控制器可以更加明确和安全地对数据进行解析。
本发明提供的上位机向可编程逻辑控制器传输数据的方法,上位机通过采用C#语言编写的软件程序范围读取EXCEL文件内的数据,相比之前逐个单元格读取的方式,节省了大量读取数据的时间。另外,软件程序在传输数据时采用自定义的协议分封数据包,充分利用传输机制,提高传输效率。借此,发明提供的上位机向可编程逻辑控制器传输EXCEL文件数据的方法使上位机能够高效快速地向可编程逻辑控制器传输EXCEL文件数据。
图2为软件程序的程序代码的树形结构图。参照图3,在示意性实施方式中,软件程序通过读取xml格式的配置文件来配置建立TCP通信的通信参数,软件程序还通过读取配置文件来配置读取并传输的EXCEL文件的文件参数。以下为配置文件的代码示例:
参照以上代码并结合图2,配置文件的根节点为configuration节点。根节点下分为simotionList和customConfiguration两个子节点。simotionList用于配置建立TCP通信的通信参数,通信参数包括可编程逻辑控制器的名称、IP地址、端口号以及存储目标等信息。customConfiguration节点用于读取并传输的EXCEL文件的文件参数,包括EXCEL文件的位置路径、最大可编程逻辑控制器数量、最大sheet表单数量及最大单元格数量等信息。程序中定义相应的实体类来承载对应的配置文件的节点信息。通过采用xml格式的配置文件,当用户有需求上的更改时,不用修改具体的代码,只需修改相应的配置文件即可完成新的配置。减少对源代码的修改,使得维护上更加方便,不需要懂代码技术就可以进行维护。
在示意性实施方式中,参照图2,软件程序的代码中定义有用于扩展的抽象父类Abthread.cs及接口Form1.cs,定义方法便于与其他程序对接,使软件程序具备较好的可扩展性。
在示意性实施方式中,软件程序还根据逻辑判断代码在读取配置文件失败时、建立TCP通信连接失败时、读取EXCEL文件失败时、读取EXCEL文件内sheet表单数量超过最大值时、读取sheet表单内单元格数量超过最大值时和传输数据包失败时生成提示界面。例如在程序界面显示对应出错信息的提示图标,并且同时在上位机中打开对应出错信息的文件所在的目录。软件程序通过上述功能建立异常处理机制,方便用户应对传输过程中的异常状况。
应当理解,虽然本说明书是按照各个实施例描述的,但并非每个实施例仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施例的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方案或变更,如特征的组合、分割或重复,均应包含在本发明的保护范围之内。
Claims (8)
1.上位机向可编程逻辑控制器传输数据的方法,所述数据为EXCEL文件数据,其特征在于,该方法包括以下步骤:
上位机通过基于C#语言编写的软件程序与可编程逻辑控制器建立TCP通信连接;
上位机通过所述软件程序范围读取存储于上位机中的EXCEL文件内的数据;以及
上位机通过所述软件程序将EXCEL文件内的每个sheet表单内的数据单独分封为一个数据包,每个所述数据包调用一次Socket的send()函数传输给可编程逻辑控制器。
2.如权利要求1所述的上位机向可编程逻辑控制器传输数据的方法,其中,所述软件程序作为客户端与作为服务器的所述可编程逻辑控制器建立通信连接。
3.如权利要求2所述的上位机向可编程逻辑控制器传输数据的方法,其中,所述软件程序通过读取xml格式的配置文件来配置建立TCP通信的通信参数,所述软件程序还通过读取所述配置文件来配置读取并传输的EXCEL文件的文件参数。
4.如权利要求3所述的上位机向可编程逻辑控制器传输数据的方法,其中,所述通信参数包括可编程逻辑控制器的名称、IP地址、端口号以及存储目标。
5.如权利要求4所述的上位机向可编程逻辑控制器传输数据的方法,其中,所述文件参数包括EXCEL文件的位置路径、最大可编程逻辑控制器数量、最大sheet表单数量及最大单元格数量。
6.如权利要求5所述的上位机向可编程逻辑控制器传输数据的方法,其中,所述软件程序还根据逻辑判断代码在读取所述配置文件失败时、建立TCP通信连接失败时、读取EXCEL文件失败时、读取EXCEL文件内sheet表单数量超过最大值时、读取sheet表单内单元格数量超过最大值时和传输所述数据包失败时生成提示界面。
7.如权利要求1所述的上位机向可编程逻辑控制器传输数据的方法,其中,每个sheet表单内的数据单独分封的所述数据包包括:
表头段(10),其包括:
当前发送的sheet表单的序号,其占用一个字节位,
程序读取的Excel文件内sheet表单的数量,其占用一个字节位,和
当前发送的sheet表单的所有数据长度,其占用四个字节位;及
数据段(20),其包括当前发送的sheet表单的全部单元格内的数据,每个单元格内的数据构造一个字符串变量,各所述字符串变量转化后占用八个字节位。
8.如权利要求1所述的上位机向可编程逻辑控制器传输数据的方法,其中,所述软件程序的代码中定义有用于扩展的抽象父类及接口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010740784.7A CN111880466B (zh) | 2020-07-28 | 2020-07-28 | 上位机向可编程逻辑控制器传输数据的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010740784.7A CN111880466B (zh) | 2020-07-28 | 2020-07-28 | 上位机向可编程逻辑控制器传输数据的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111880466A true CN111880466A (zh) | 2020-11-03 |
CN111880466B CN111880466B (zh) | 2024-03-15 |
Family
ID=73201899
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010740784.7A Active CN111880466B (zh) | 2020-07-28 | 2020-07-28 | 上位机向可编程逻辑控制器传输数据的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111880466B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112802527A (zh) * | 2021-04-14 | 2021-05-14 | 上海灵动微电子股份有限公司 | 嵌入式闪存高速编程的实现方法、嵌入式闪存的编程系统 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7761782B1 (en) * | 2004-10-26 | 2010-07-20 | Xsb, Inc. | User programmable deductive spreadsheet apparatus which supports solutions to circular definitions |
CN102411310A (zh) * | 2011-07-29 | 2012-04-11 | 奇瑞汽车股份有限公司 | 一种汽车动力电池的模拟方法和装置 |
JP2014106720A (ja) * | 2012-11-27 | 2014-06-09 | Toshiba Mitsubishi-Electric Industrial System Corp | プログラマブルコントローラの試験装置 |
CN104263960A (zh) * | 2014-09-23 | 2015-01-07 | 北京矿冶研究总院 | 金湿法冶金置换过程中置换率和金泥品位的在线预测方法 |
CN204392275U (zh) * | 2015-01-08 | 2015-06-10 | 广州市地下铁道总公司 | 一种具有以太网接口的mvb总线数据侦听系统 |
CN104850041A (zh) * | 2015-04-21 | 2015-08-19 | 沈阳化工大学 | 一种输油过程能耗分析系统 |
CN206224176U (zh) * | 2016-09-14 | 2017-06-06 | 天津理工大学 | 一种基于振弦传感器的数据采集与传输系统 |
CN107784139A (zh) * | 2016-08-26 | 2018-03-09 | 沈阳鼓风机集团自动控制系统工程有限公司 | 压缩机控制系统电气原理图自动生成方法 |
CN108756962A (zh) * | 2018-05-04 | 2018-11-06 | 西安科技大学 | 一种基于mvc设计模式的液压支架监测方法及系统 |
CN110738029A (zh) * | 2018-12-29 | 2020-01-31 | 威海光威精密机械有限公司 | 复合材料铺层数据导入方法 |
-
2020
- 2020-07-28 CN CN202010740784.7A patent/CN111880466B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7761782B1 (en) * | 2004-10-26 | 2010-07-20 | Xsb, Inc. | User programmable deductive spreadsheet apparatus which supports solutions to circular definitions |
CN102411310A (zh) * | 2011-07-29 | 2012-04-11 | 奇瑞汽车股份有限公司 | 一种汽车动力电池的模拟方法和装置 |
JP2014106720A (ja) * | 2012-11-27 | 2014-06-09 | Toshiba Mitsubishi-Electric Industrial System Corp | プログラマブルコントローラの試験装置 |
CN104263960A (zh) * | 2014-09-23 | 2015-01-07 | 北京矿冶研究总院 | 金湿法冶金置换过程中置换率和金泥品位的在线预测方法 |
CN204392275U (zh) * | 2015-01-08 | 2015-06-10 | 广州市地下铁道总公司 | 一种具有以太网接口的mvb总线数据侦听系统 |
CN104850041A (zh) * | 2015-04-21 | 2015-08-19 | 沈阳化工大学 | 一种输油过程能耗分析系统 |
CN107784139A (zh) * | 2016-08-26 | 2018-03-09 | 沈阳鼓风机集团自动控制系统工程有限公司 | 压缩机控制系统电气原理图自动生成方法 |
CN206224176U (zh) * | 2016-09-14 | 2017-06-06 | 天津理工大学 | 一种基于振弦传感器的数据采集与传输系统 |
CN108756962A (zh) * | 2018-05-04 | 2018-11-06 | 西安科技大学 | 一种基于mvc设计模式的液压支架监测方法及系统 |
CN110738029A (zh) * | 2018-12-29 | 2020-01-31 | 威海光威精密机械有限公司 | 复合材料铺层数据导入方法 |
Non-Patent Citations (1)
Title |
---|
ELEGANTHEDGEHOG: "(原创)使用C#开发高性能PLC上位机监控系统服务器应用程序", Retrieved from the Internet <URL:https://blog.csdn.net/qq_45534034/article/details/106127840?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522168249161216800192239943%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=168249161216800192239943&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-24-106127840-null-null.142^v86^insert_down1,239^v2^insert_chatgpt&utm_term=plc%20%E4%B8%8A%E4%BD%8D%E6%9C%BA%20C%23%20tcp%20socket&spm=1018.2226.3001.4187> * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112802527A (zh) * | 2021-04-14 | 2021-05-14 | 上海灵动微电子股份有限公司 | 嵌入式闪存高速编程的实现方法、嵌入式闪存的编程系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111880466B (zh) | 2024-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9667699B2 (en) | Method for transmitting data via a CANopen bus | |
CN111083161A (zh) | 数据传输的处理方法及装置、物联网设备 | |
CN106230826A (zh) | 应用系统接口协议自动解析装置 | |
CN102802139A (zh) | 一种物联网网关数据适配系统及方法 | |
CN110943853A (zh) | 传输方法 | |
EP3803578A1 (en) | Dynamic data transport between enterprise and business computing systems | |
EP2571224A1 (en) | Method for processing messages on m2m platform and m2m platform system | |
CN110266702A (zh) | 基于XML的Wireshark用协议解析方法 | |
CN107222458A (zh) | 一种兼容Modbus协议的BACnet协议栈的数据处理方法及系统 | |
CN107025115B (zh) | 一种适配多种接口采集的方法 | |
CN111880466B (zh) | 上位机向可编程逻辑控制器传输数据的方法 | |
CN111885174B (zh) | 一种非相同网段的节点的处理方法及系统 | |
CN112035135A (zh) | 从站设备的固件程序更新方法、设备和存储介质 | |
CN206922784U (zh) | 智能网关 | |
CN112235316A (zh) | 一种仪器集成的数据通信方法 | |
CN115002236B (zh) | 一种数据协议可视化配置的边缘软网关 | |
CN109951458A (zh) | 一种应用于模拟ICP环境的RapidIO/FC协议转换系统及方法 | |
CN115604070A (zh) | 基于mctp协议的消息传输方法、装置、设备及介质 | |
CN114095312A (zh) | 一种软件定义的多协议融合LoRa网关装置及实现方法 | |
CN107608679A (zh) | 一种通过Socket高效烧写机顶盒数据的方法 | |
CN114760285A (zh) | 一种物联网传感器配置和控制方法及系统 | |
CN100364285C (zh) | 一种逻辑仿真方法 | |
CN105722116A (zh) | 一种工业无线传感器网络的重配置方法 | |
CN100389583C (zh) | 一种命令传送方法 | |
CN116235485B (zh) | 用于进行数据传输的网络 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |