逻辑控制器的调试方法技术

技术编号:14167884 阅读:126 留言:0更新日期:2016-12-12 14:55
逻辑控制器的调试方法,包括在逻辑控制器的西门子编程框架下编写一个C语言控制程序(P1),且C语言控制程序(P1)包括至少一个程序变量;基于西门子的TIA-Portal工程软件平台,编写一个使得平台控制程序(P2)连接于C语言控制程序(P1)的接口函数(P3),接口函数(P3)能够读取程序变量且由控制程序生成一个对应于程序变量的数据文件;在逻辑控制器中定义一个能够被远程访问的网络服务器界面,网络服务器界面能够连接至TIA-Portal工程软件平台以读取数据文件,且网络服务器界面能够显示C语言控制程序(P1)的运行情况。

【技术实现步骤摘要】

本专利技术涉及一种程序调试方法,以监控程序中变量的状态,尤其涉及一种逻辑控制器的程序调试方法。
技术介绍
C语言是一种通用的、过程式的编程语言,目前已应用于逻辑控制器中控制程序的开发,且由C语言变形的逻辑控制器控制程序具有高效、灵活、功能丰富、表达力强和较高的可移植性的特点。专利技术人已知的逻辑控制器中,C语言编写的控制程序在运行时需打包成.so文件,无法对文件内的程序变量进行观测,亦无法对程序变量进行数据记录。当前对C语言编写的控制程序无法精确地调试,只能凭借编程工程师对于程序的熟悉程度,判断程序的运行结果,然后修改程序,这种方法大大浪费的工程调试时间,且无法精确判断问题点。
技术实现思路
本专利技术的目的是提供一种逻辑控制器的调试方法,以便于监测C语言编写的控制程序中的程序变量。本专利技术的一个方面提供了一种逻辑控制器的调试方法,其中逻辑控制器中运行有一个基于西门子的TIA-Portal工程软件平台的控制程序。调试方法包括在逻辑控制器的西门子编程框架下编写一个C语言控制程序,且C语言程序包括至少一个程序变量;基于西门子的TIA-Portal工程软件平台,编写一个使得控制程序连接于C语言控制程序的接口函数,接口函数能够读取程序变量且由控制程序生成一个对应于程序变量的数据文件;在逻辑控制器中定义一个能够被远程访问的网络服务器界面,网络服务器界面能够连接至TIA-Portal工程软件平台以读取数据文件,且网络服务器界面能够显示C语言控制程序的运行情况。使用逻辑控制器的调试方法,用户不需对西门子编程有特殊的培训,只需简单编写接口函数既能实现对C语言控制程序的调试监控。通过网络服务器界面监控C语言控制程序的运行,能够实现多个逻辑控制器的协同工作。在C语言控制程序的调试中,不需要获得C语言控制程序的源程序即可查看程序变量的状态。在逻辑控制器的调试方法的再一种示意性的实施方式中,C语言控制程序在Eclipse编程环境下开发,且接口函数由西门子的SCL语言编写。在逻辑控制器的调试方法的另一种示意性的实施方式中,运行情况包括C语言控制程序的程序运行时间、C语言控制程序的函数身份信息、程序变量的数值、和经过函数运算后函数变量的返回值。在逻辑控制器的调试方法的又一种示意性的实施方式中,网络服务器界面设置有一个第一触发按钮,当访问网络服务器界面的一个远程终端触发第一触发按钮时,调试信息以文本文件的形式下载至远程终端。上述方式能够方便远程终端监控C语言控制程序的运行在逻辑控制器的调试方法的又一种示意性的实施方式中,通过接口函数,控制程序能够读取程序变量中的全局变量,并记录全局变量在复数个C语言控制程序的程序循环周期中的变量值,且生成一个用于存储这些变量值的监控文本文件。在逻辑控制器的调试方法的又一种示意性的实施方式中,接口函数能够生成与全局变量相对应的复数个地址信息,且平台控制程序通过地址索引的方式由地址信息读取全局变量的变量值。在逻辑控制器的调试方法的又一种示意性的实施方式中,平台控制程序包括一个数据记录函数,数据记录函数通过地址索引的方式由地址信息读取全局变量的变量值。在逻辑控制器的调试方法的又一种示意性的实施方式中,网络服务器界面设置有一个第二触发按钮,当访问网络服务器界面的一个远程终端触发第二触发按钮时,控制程序读取全局变量的变量值并生成监控文本文件。在逻辑控制器的调试方法的又一种示意性的实施方式中,平台控制程序包括一个能够连接于C语言控制程序中数据记录函数的历史记录函数,历史记录函数能够记录C语言控制程序中全局变量在多个C语言控制程序的程序循环周期中的变量值。在逻辑控制器的调试方法的又一种示意性的实施方式中,平台控制程序能够通过西门子的TIA-Portal工程软件平台自带的Trace功能函数记录C语言控制程序中全局变量在多个C语言控制程序的程序循环周期中的变量值。附图说明以下附图仅对本专利技术做示意性说明和解释,并不限定本专利技术的范围。图1用于说明逻辑控制器的调试方法的功能架构。图2显示了逻辑控制器的调试方法的流程。图3用于说明逻辑控制器的调试方法另一种示意性实施方式的功能框架。标识说明10 工作存储区20 装载存储区30 访问存储区40 远程终端50 互联网60 SCL语言环境62 地址数据库70 C语言环境72 数据缓存区P1 C语言控制程序P2 控制程序P3 接口函数F1 数据记录函数F2 历史记录函数F3 数据函数。具体实施方式为了对专利技术的技术特征、目的和效果有更加清楚的理解,现对照附图说明本专利技术的具体实施方式,在各图中相同的标号表示相同的部分。在本文中,“示意性”表示“充当实例、例子或说明”,不应将在本文中被描述为“示意性”的任何图示、实施方式解释为一种更优选的或更具优点的技术方案。为使图面简洁,各图中的只示意性地表示出了与本专利技术相关的部分,它们并不代表其作为产品的实际结构。另外,以使图面简洁便于理解,在有些图中具有相同结构或功能的部件,仅示意性地绘示了其中的一个,或仅标出了其中的一个。在本文中,“一个”不仅表示“仅此一个”,也可以表示“多于一个”的情形。在本文中,“第一”、“第二”等仅用于彼此的区分,而非表示它们的重要程度及顺序、以及互为存在的前提等。图1用于说明逻辑控制器的调试方法的功能架构。如图1所示,逻辑控制器的系统平台包括一个工作存储区10、一个装载存储区20、和一个访问存储区30。由C语言编写的逻辑控制器的C语言控制程序P1,以及基于西门子的TIA-Portal工程软件平台的逻辑控制器的平台控制程序P2运行于工作存储区10。其中,C语言控制程序P1是在西门子定义的编程框架下编写。在逻辑控制器的调试方
法一种示意性实施方式中,C语言控制程序P1是在西门子的Eclipse编程环境的框架下编写开发,从而使得C语言控制程序具有与西门子编程环境连接的接口。接口函数P3是基于西门子的TIA-Portal工程软件平台的框架下由SCL语言编写开发的。平台控制程序P2和C语言控制程序P1之间通过接口函数P3实现数据交换。C语言控制程序P1和平台控制程序P2在运行中所生成的数据存储于装载存储区20。访问存储区30中存储有一个网络服务器(web server)界面,它能够被远程终端40远程访问。图2显示了逻辑控制器的调试方法的流程。参见图2和图1,逻辑控制器的调试方法包括如下流程。在步骤S10中,在西门子编程框架下,具体而言,基于西门子的Eclipse编程环境,使用C语言编写用于实现逻辑控制器控制的C语言控制程序P1。西门子编程框架的具体结构和要求可参见西门子全集成自动化软件平台的帮助文档。而后进入步骤S20。为了实现逻辑控制器的控制功能,C语言控制程序P1中涉及了多个程序变量,且这些程序变量的部分为全局变量。在步骤S20中,基于西门子的TIA-Portal工程软件平台,使用SCL语言编写一个接口函数P3。接口函数P3使得C语言控制程序P1连接于平台控制程序P2,使得平台控制程序P2能够通过接口函数P3读取C语言控制程序P1的程序变量。另外,平台控制程序P2获取到C语言控制程序P1中程序变量的数值和参数后能够生成一个数据文件,且这个数据文件中存储有C语言控制程序P1中程序变量的数值和本文档来自技高网
...
逻辑控制器的调试方法

【技术保护点】
逻辑控制器的调试方法,其中所述逻辑控制器中运行有一个基于西门子的TIA‑Portal工程软件平台的平台控制程序(P2),所述调试方法包括:在所述逻辑控制器的西门子编程框架下编写一个C语言控制程序(P1),且所述C语言控制程序(P1)包括至少一个程序变量;基于西门子的TIA‑Portal工程软件平台,编写一个使得所述平台控制程序(P2)连接于所述C语言控制程序的(P1)接口函数(P3),所述接口函数(P3)能够读取所述程序变量且由所述平台控制程序(P2)生成一个对应于所述程序变量的数据文件;和在所述逻辑控制器中定义一个能够被远程访问的网络服务器界面,所述网络服务器界面能够连接至所述平台控制程序(P2)以读取所述数据文件,且所述网络服务器界面能够显示所述C语言控制程序(P1)的运行情况。

【技术特征摘要】
1.逻辑控制器的调试方法,其中所述逻辑控制器中运行有一个基于西门子的TIA-Portal工程软件平台的平台控制程序(P2),所述调试方法包括:在所述逻辑控制器的西门子编程框架下编写一个C语言控制程序(P1),且所述C语言控制程序(P1)包括至少一个程序变量;基于西门子的TIA-Portal工程软件平台,编写一个使得所述平台控制程序(P2)连接于所述C语言控制程序的(P1)接口函数(P3),所述接口函数(P3)能够读取所述程序变量且由所述平台控制程序(P2)生成一个对应于所述程序变量的数据文件;和在所述逻辑控制器中定义一个能够被远程访问的网络服务器界面,所述网络服务器界面能够连接至所述平台控制程序(P2)以读取所述数据文件,且所述网络服务器界面能够显示所述C语言控制程序(P1)的运行情况。2.如权利要求1所述的逻辑控制器的调试方法,其中所述C语言控制程序(P1)在Eclipse编程环境下开发,且所述接口函数(P3)由西门子的SCL语言编写。3.如权利要求1所述的逻辑控制器的调试方法,其中所述运行情况包括所述C语言控制程序(P1)的程序运行时间、所述C语言控制程序(P1)的函数身份信息、所述程序变量的数值、和经过函数运算后所述函数变量的返回值。4.如权利要求1所述的逻辑控制器的调试方法,其中所述网络服务器界面设置有一个第一触发按钮,当访问所述网络服务器界面的一个远程终端触发所述第一触发按钮时,所述调试信息以文本文件的形式下载至所述远程终端。5.如权利要求1所述的逻辑控制器的调试方法,其中通过所述接口函数(P3...

【专利技术属性】
技术研发人员:刘胜玉隋振利王迥波
申请(专利权)人:西门子工厂自动化工程有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1