解析 Rockwell L5X 文件
Parsing a Rockwell L5X file
我在机器自动化行业工作,广泛使用 PLC。我正在考虑一种方法来自动化部分逻辑创建,其中包含大量我试图摆脱的手动输入。 Rockwell 使用实际上是 XML 文件的 L5X 文件来进行程序和标签数据库的导入导出。
所以我的问题是
l5X 文件是相同的 XML 文件还是有区别?
我如何解析它编辑该文件中的数据?所以我可以批量编辑程序
考虑到我是编码世界的初学者,这样做会有什么挑战。
XML是一种可扩展的标记语言,这意味着它允许定义标记词汇和语法。 Rockwell 在 XML 中定义了 L5X 格式。这允许使用支持 XML 的工具和库来读取、操作和写入 L5X 文件。这是一个相当大的优势,为您提供了许多处理 L5X 文件的选项:XPath、XSLT、XML 多种语言的解析器,包括 Python.
通常会有一个 XML 模式(XSD、DTD、Relax NG、Schematron 等)文件来定义词汇表和语法并支持 L5X 文件的自动验证。不幸的是,Rockwell 在他们的 specification of the L5X format 中似乎已经放弃了这种便利,但可以根据他们的示例和基于自然语言的规范编写 XML 模式。
显然,拥有编程技能在这里将是一个巨大的优势,但由于 XML 是一种基于文本的语言,您可以想象在使用手动编辑、搜索和替换的文本编辑器中取得一些结果,和用户定义的宏(按复杂程度递增的顺序)。
我在机器自动化行业工作,广泛使用 PLC。我正在考虑一种方法来自动化部分逻辑创建,其中包含大量我试图摆脱的手动输入。 Rockwell 使用实际上是 XML 文件的 L5X 文件来进行程序和标签数据库的导入导出。 所以我的问题是 l5X 文件是相同的 XML 文件还是有区别? 我如何解析它编辑该文件中的数据?所以我可以批量编辑程序 考虑到我是编码世界的初学者,这样做会有什么挑战。
XML是一种可扩展的标记语言,这意味着它允许定义标记词汇和语法。 Rockwell 在 XML 中定义了 L5X 格式。这允许使用支持 XML 的工具和库来读取、操作和写入 L5X 文件。这是一个相当大的优势,为您提供了许多处理 L5X 文件的选项:XPath、XSLT、XML 多种语言的解析器,包括 Python.
通常会有一个 XML 模式(XSD、DTD、Relax NG、Schematron 等)文件来定义词汇表和语法并支持 L5X 文件的自动验证。不幸的是,Rockwell 在他们的 specification of the L5X format 中似乎已经放弃了这种便利,但可以根据他们的示例和基于自然语言的规范编写 XML 模式。
显然,拥有编程技能在这里将是一个巨大的优势,但由于 XML 是一种基于文本的语言,您可以想象在使用手动编辑、搜索和替换的文本编辑器中取得一些结果,和用户定义的宏(按复杂程度递增的顺序)。