labview如何通过程序调用程序框图(十年工控Labview手把手)

课程回顾:

上节课,我们学习了,怎么创建一个Labview程序,通过著名的Hello,World!认识了Labview的编程环境,前面板,后面板,控件面板,函数面板等。这节课,咱们讲讲怎么让一个程序循环起来。

1. 循环的理解,C语言的Main函数,西门子PLC的OB1

Q:上节课讲的Hello,World!只能显示一次,我怎么能在线改变其控件的值!比如说,我不想显示Hello,World!了,我想显示,Hello,小明!行不行。

D:当然可以了,这个是程序最基本的功能了。

Q:但是,上一个例子只运行一次,就停止了,怎么去改变值呢?

D:那就只能让程序 “循环”起来了,一直让程序轮询。

Q:怎么理解?

D:学过PLC吗,学过C语言吗?

Q:那就好办了,就相当于PLC的主程序OB1,相当于C中的Main,只要程序不跳出来,主程序就一直在以一定的周期在循环。

D:能不能举个例子?

2. 一次函数的编写:y=3x 2

D:还是老办法,举个简单的例子,从例子中感受程序的用法。y=3x 2,咋们写一个函数,然后给x赋值,来计算y的值.

Q:先建一个程序是吧?

D:先建个程序,起个名字,就叫循环的学习_一次函数吧。

labview如何通过程序调用程序框图(十年工控Labview手把手)(1)

图1.创建VI并命名

Q:然后呢?

D:不卖关子了直接写,如图所示。在前面板,从拉出来一个数值显示控件,改名字为y值显示。再拉出一个数值输入控件,改名子为x轴输入值。

labview如何通过程序调用程序框图(十年工控Labview手把手)(2)

图2.数字输入控件和显示控件

Q:怎么改名字?

D:双击控件名字就可。非常方便吧。

Q:在PLC中,有整数,双整数,实数等之分,这个控件应该是实数才对吧?

D:是的,在Labview中也分,在下节课我会讲到,这节课,只知道,控件默认数据类型是DBL型就可以,双精度浮点数,差不多相当于PLC中的real。

Q:怎么看是什么数据类型?

D:最简单的方法。如下图。在这里,就可以看到是什么数据类型,而且可以改数据类型,非常的方便。

labview如何通过程序调用程序框图(十年工控Labview手把手)(3)

图3.怎么看数值控件的数据类型

D:接下来写函数,非常简单,一看就明白。Labview为G图形语言,实在是用起来简单。如图。

labview如何通过程序调用程序框图(十年工控Labview手把手)(4)

图4.一次函数的程序编写

Q:这么简单?

D:就是这么简单。接下来,给x赋值,求y的值,比如说x=10,则y=32.用程序计算看看。

labview如何通过程序调用程序框图(十年工控Labview手把手)(5)

图5.x赋值10

D:接下来运行一次看看。

labview如何通过程序调用程序框图(十年工控Labview手把手)(6)

图6.运行程序,x=10,y=32

Q:这只能赋一次值啊,我要怎么在线改变x呢?

D:接下来就需要加入循环了。

labview如何通过程序调用程序框图(十年工控Labview手把手)(7)

图7.让程序动起来,while循环

Q:看起来很怪,不太好理解。

D:还是那样,不用去刻意的理解,用多了就知道怎么用了。把函数放在循环里了,循环就以一定周期不断的读取,循环框里的值了。循环了多少次?可以在循环次数内读出来。

Q:怎么退出?

D:只要让停止条件为“真”就可以了

Q:运行起来试试。

labview如何通过程序调用程序框图(十年工控Labview手把手)(8)

图8.加入while循环的一次函数

D:这样就可以在线给x赋值了,在线很快的计算y的值。要退出的时候,点击停止按钮,给停止条件给个退出信号就可以了。这次是直观的感受一下,后期会几种讲各种结构。

Q:一般PLC的OB1有一定的循环周期,这个循环周期是多少呢?

D:问的好。这个程序是有点问题的,没有给循环设置周期,循环会以非常快的速度运行,占用电脑的运算。所以,在用到循环的时候,一般要指定循环周期。

labview如何通过程序调用程序框图(十年工控Labview手把手)(9)

图9.为while循环加上循环周期

D:加了一个时间延迟函数,赋值10,就是10ms让while循环一次。也就是没10ms,while执行一次循环框内的函数。还是那样,不用去可以的理解,知道这么用就好。

以后的教学中,会大量用到这个基本循环,见到了知道它就可以了。

今天的课就讲到这里。主要认识了一个Labview中最重要的结构——while循环。还有加固了上两节课的学习内容。学习了,怎么让程序刷新循环起来的方法。

下节课,一同学习数的数据类型。

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页