粉丝143获赞876

大家好,欢迎收看由三亿电子工作室推出的 level view 每日一练系列视频教程。第一步,每天十分钟,一个小项目,三十天成为 level view 高手! 学习本课程的前提是你已经有一定的 level view 基础知识,如果你是一个 level view 零基础小白的话,建议你入门之后再学习本课程,入门之后学习本课程的效果是最佳的。那么如何入门 level view 呢? 强烈建议大家观看一下有三亿电子工作室推出的基于实践的 level view 零基础入门视频教程这一门课基于实践的 level view 零基础入门视频教程 方向明确,适合零基础和初学者,针对性强。整个教程将用项目与实践的方法带领大家零基础入门 level view, 通过教大家用不同的方法编写一款计算器软件 来彻底学会和掌握 level view。 整个教程共十几节,十七节课,二百一十分钟,差不多三个小时就能够学完一天入门入门之后靠的是项目和实践,只有在不断实践中才能够成为 level view 大牛。 所以说零基础入门教程配合每日一练教程,可以让你轻松地从一个 level view 零基础小白快速成长为一个 level view 高手。扫一扫此二维码,或直接在浏览器内直接输入 vlog, 点一 ctrl 点 com 斜杠淘宝获取三亿电子工作室官方淘宝店铺,在淘宝店铺内可购买相应的 level view 零基础入门视频教程。 好,下面呢,开始我们每日一练教程的第一期项目的讲解。由于是啊第一期,所以说我们第一期的这个小项目呢,是非常简单的,项目的要求呢是使用 level v 有模拟一个温度采集系统,要求呢有停止按键, 我们在这个项目中学习到的知识点呢,有 vow 循环的用法,随机数的用法和拨星图表的用法,下面呢我带领大家来实现一下这一个简单的小项目,我们打开 level view 之后呢,新建一个 vr, 新建 vi 之后呢,我们在这个程序框图面板啊来实现我们这个小项目, 他的要求是什么呢?使用莱博 v 有模拟温度采集系统,那么这个模拟的这个温度怎么来的呢?我们这用的是一个随机数的用法,随机数,我们右键在这个 函数面板里啊,我们在这个数值数值这个地方呢,有一个随机数,这个随机数的这个函数,我们利用这个随机数的函数啊来模拟这个温度的采集,模拟这个温度的采集, 那么这个随机数运行一次呢,他就会产生一个零到一之间的一个随机的一个数值,随机的一个数值, 那么我们运行一次呢,他就只能采集一次,采集一次,那么我们怎么让他连续的运行呢?连续的运行呢?我们就在外面啊,放一个哇尔循环, 放一个哇耳循环,大家注意啊,右键结构,哇耳循环,哇耳循环,按住左键拖动,左键拖动,这样呢就形成了一个哇耳循环,一个哇耳循环, 那么弯绕循环怎么停止呢?他是不是要求有停止按键啊?那么我整个采集系统不能停止不了,对不对?我们就在这个地方呢,给他加一个停止按键,说右键右键 创建输入空间,创建输入空间,大家注意啊,我再倒回去,大家看一下,说右键这个地方呢,创建输 入空间,创建输入空间,这样呢就形成了这样的一个停止按钮,停止按钮,停止按钮,好,这样呢,我们的 wifi 循环已经建好了,随机数呢也放上了,那么我们采集的数值放到哪个地方呢? 放到哪个地方呢?我们可以啊,在前面吧啊放几个空间,我们在这个图形这个地方呢,放一个波形图表,大家注意啊,放一个波形图表,右键图形波形图表,我们放一个波形图表, 放上波星图表之后呢,然后我们把产生的随机数啊放连接到这个波星图表上来,这样呢就说利用外循环每循环一次呢,产生一个随机数,把随机数产生的 内容呢放到波星图表上去,我们这样呢可以运行一次看一下,你看看这样呢是不是就把随机数产生的值呢放到了波星图表上来呀,对不对?放到了波星图表上来, 这呢还有一个问题,就说我们这个采集的数值,你看是不是太快了呀?太快了,这个时候怎么办呢?我们可以给外循环呢加一个延时,加一个延时,我们在这个定时这个地方呢加一个等待,等待,然后呢右键 创建一个长量,等待的时间是多少呢?我们设一百,一百呢就是一百毫秒,也就说我挖耳循环循环一次呢就延时一百毫秒,大家可以再看一下这个效果,你看这样是不是采集的这个,呃,波形,采集的这波形是不是就比较缓慢了? 这样呢就符合一个正常的一个现象,对不对?这还有一个问题,我们采集的值呢,是零到一之间的一个数值,零到一之间的一个数值, 零到一之间的这个数值是不是不符合我们平常的这个温度的这样的一个要求啊?要求对不对? 比方说不可能采集的一个温度都是零到一之间的一个数值,对不对?所以说我们在这呢给这个随机数啊,乘以一个一百,乘以一个一百,我们在这个数值 数值乘以我们这样呢,把它这样连上,连上之后呢?乘多少啊?乘一百,我们乘个一百。乘一百之后呢,我们把乘的这个结果呀连接到这个波星图标 表上来,拨星图表上来,这样呢就连上来了,连上来之后我们再看一下效果,再看一下效果,你看看是不是采集的数值呢?就变成零到一百之间了,是不是到零到一百之间了?零到一百之间,好,这样呢,我们 彩接完了之后呢,我们可以再放上一个一个这样显示的空间,让他更加漂亮点。我们在这个竖着这呢,选一个温度计,选一个温度计, 放到他的这右边了,就让他在两个组件里显示,两个组件里显示,我们放大一点,然后呢把采集的数值啊再连接到温度计上来, 再连接到温度计上来,这样呢我们运行一下,然后我们把这个停止啊放到这下面来,这下面来,然后我们再调节一下我们的这个面板,再调 接一下面板,好,这样呢,调节完了之后呢,我们再运行一下,看一下效果,好,运行一下,你看看这是采集的一个模拟采集的一个温度系统,我们点停止呢,你看整个程序呢就停止了,我们再点运行,然后他就开始运行,再点停止他就停止了, 好到这呢我们就把这个项目啊实现了,非常简单,非常简单。 完成之后呢,我们可以把我们写完的程序啊保存一下,点文件,文件保存,保存之后呢,我们可以给他起一个名字,起一个名字,比方说我们放的这一个 每日一练第一期的这个文件假象,我们给他起个名字叫第一期,第一期,然后点确定,点确定 好,到这呢就整个程序都完成了,完成了,然后呢完成之后呢我们这呢给大家留了一个小作业,留了一个小作业就说呢我们采集的实现的这个程序啊,采集的温度呢都是政治,都是政治。 我们留这个客户习题呢,就是在原有程序基础上啊实现正负温度的模拟采集,正负温度的模拟采集,我们这呢可以看一下我们采集的这个程序啊,采集的这个程序 我们打开,打开之后我们运行一下,大家可以看一下我们采集的温度是为零到一百度之间啊,那么在现实中呢,可能穿在负的温度,负的温度,咱们留的客户习题的要求呢,就说你实现的这个程序呢,也要实现正负之间温度的 一个模拟采集,模拟采集,我们这呢给大家留一个课后作业,大家呢在下面呢实现一下,在下面实现一下 本课程的原码和这个课后习题的原码呢,可以通过扫一扫此二维码或直接在浏览器中呢输入 blog 点一 ctrl 点 com 斜杠原码来获取整个整个视频教程的相应的原码地址。原码 在课程的最后呢,我们做一个小广告,三一电子工作室,专注于 level view 教育培训,专业的值得信赖。 我们还推出了来波 vivo 与串口通讯、来波 vivo 与网口通讯、来波 vivo 与数据采集、来波 vivo 与数据存储、来波 vivo 与数据报表等系列的来波 vivo 视频教程。如果大家感兴趣的话呢,可以到我们的淘宝店铺购买我们 的视频教程,通过此方式呢获取我们的淘宝店铺地址。如果大家不购买的话呢,也没有关系啊,送大家一个价值十元的视频教程,通过此方式呢来获取。好,谢谢大家!

很多人刚开始学莱伯威的时候不知道该怎么入手,今天我结合自己的经验讲一下怎么快速入门莱伯威欧。 相比于通过看书系统的学习一门软件,我更推荐先学会软件的基本用法,然后开始实践,在实践中边学边用,用到什么功能就学习什么功能,这样可以节省我们宝贵的时间去学习真正有用的知识。希望大家能够在看完这个视频后就可以直接进入实践了。 接下来进入正题。首先打开 live vivo 软件,你会看到这样一个界面,这里需要说明一下,很 很多编程语言编程时都是先建一个项目,也就是这里后缀为点儿而为 pioj 的文件。但是莱伯威尔的程序文件,也就是后缀为点 vi 的文件是可以单独运行调试的,对于初学者只使用 vi 就够了,等后面熟悉了再用项目。我们可以在菜单栏点击文件,然后点击新建 vi, 即可创建一个 vi。 一个 vi 包含两个窗口,一个是前面版,一个是程序框图。 前面版相当于是 gy, 是用来制作软件界面的。程序框图相当于是文本编辑器,用来编辑整个程序的算法。 我们先看前面吧,在前面版点击鼠标,右键会弹出一个空键的窗口,这里有很多 love 封装好的模块供我们使用,例如数值空间、波尔空间、自负串与路径空间等等。 把鼠标放在数值空间上,会弹出数值空间窗口,这里需要说明来标 vivo 的空间分为输入空间和输出空间两类,输出空间又叫显示空间,数值空间窗口中包含了多种数值 输入和显示样式,我们点击数值输入空间,然后在前面版适当的位置点击一下鼠标,数值输入空间就被放在了前面版中。使用同样的方法,可以在前面版放置一个数值显示空间,当然如果有需要,可以放置不同样式的输入和显示空间。 接下来我们再看一下布尔空间,布尔空间中有不同样式的开关和指示灯,我们也在前面板上放置几个布尔空间。 接下来我们再放几个自伏串与路径相关空间, 我们再放几个有代表性的空间,例如数组空间,错 表格空间,还有图表相关空间等,我们还可以放几个装饰用的空间。 数组空间和醋空间里面是需要放置内容的,具体的使用可以学习相关内容。 这些空间还有不同的样式,例如银色的系统的,经典的 logo, 提供了非常丰富的空间供我们使用。 love you 提供的空间不仅多,我们在每个空间上右键还可以对一个空间进行非常多的操作,这里就不详细介绍了,大家可以在用到的时候摸索。有这么多的空间和方法,大家肯定可以做出理想的界面。

嗨,大家好,我是钟晓妍。今天上一期继续和大家聊一聊 labe bill, 作为公控人,本人也非常喜欢 labe bill, 感觉用 nife bill 像是拼图游戏,什么代码都是浮云,楼梯通就 ok 了。话不多说,先给大家示范一个简单又好玩的 双击六六六清洁 vi, 弹出两个窗口,一个是前面把,一个是后面把。右击创建一个灯和开关, 来到后面把进行连线,我们再来前面把逆行,你看一开一关,灯就一亮一面。接下来我们建立几个数字,两个是输入,一个是输出, 来到后面吧增加一个加号空间进行连线, 我们设置的数字是六六六加八八八,点击运行看答案立马出来。怎么样,好玩吗?接下来我们进入正题,聊一聊什么是甜甜宝,什么是程序。 前面把用于用户交互拖放空键,后面把用于程序宽图函数编程, 这只是开胃小菜。接下来给几个中年科技实际工程项目的案例给大家看看。 好的,这次的 lubry 就分享到这里,下期更多 lubry 等着你来解密,关注读研,让检测设备更快、更准、更稳!

想成为 live wave 高手吗?赶快来一小时课堂吧,你想要的绝招秘籍都有,一小时课堂,你成为 live wave 高手的必经之路。大家好,欢迎收看有三亿电子工作室推出的 level view 零基础入门视频教程最门课。 今天我们讲一下第九节数据类型中的数组和促。我们在编程的时候啊,有的时候需要将相互关联的一组数据啊结合在一起,可以更方便的处理。在 level view 中,我们使用数组和促来将相互关联的数据集合在一起。 数组呢是将相同类型的数据集合在一个数据结构中,而醋呢,是将多种类型的数据集合在一个数据结构中。大家注意一下区别, 数组啊,他其中的所有的元素啊,都是相同类型的。而醋呢,这样说的是多种类型,既可以是相同类型的,也可以呢是不同类型的。 我们首先讲数组,然后呢再讲促数组啊,我们准备讲三个知识点,第一个呢就是数组的创建, 第二个呢就是与数组相关的一些函数,第三个呢就是数组与方循环。我们切换到桌面上来,双击打开 levelview, 我们首先啊带领大家建立一个新的数组, 我们单击文件,点击新建 vi。 这个数组呢跟我们前面讲的数据类型啊,都是类似的,他也分这个数组空间跟这个数组常量。我们首先啊在前面版啊,建立一个数组空间, 创建一个新的数组呢,共分两步,大家注意一下我的操作,我们右键在这个数据容器这个地方,数据容器这个地方,我们选择这个数组, 选择这个数组单击一下,然后呢放到我们的前面板上去,大家注意一下,这个呢是创建数组的第一步, 第二步呢我们就需要指定数组的数据类型了,比方说我们要建立一个数值类型的数组,我们就右键 在数值这个地方啊,选一个数值类型的空间,比方说我们选择这个数值输入空间,选择一个数值输入空间,我们选择一下他,大家注意一下我的操作,我们把这个数值输入空间啊给他放到这个刚才第一步创建的这个 数组里来,大家注意一下,我们拖动进来,然后呢单击一下鼠标左键,这样呢我们就创建了一个数数值类型的数组,数值类型的数组,那么这个数组是一个输入空间呢?还是一个显示空间啊?大家想一想,他呢是一个 输入空间,为什么呀?因为我们刚才选的这个数值空间呢,它是一个输入空间,如果说我想创建一个数组的显示空间怎么办呀?我们就右键,然后数据容器 再放一个数组,然后右键在数值这个地方啊,我就不选数值输入空间了,我选择一个数值显示空间,然后呢给他放到这里面来,单击一下鼠标左键,大家注意一下,我创建的第二个数组呢,就变成了一个显示类型的数组了, 第一个数字呢是一个输入类型的数组,这个呢是数值类型数组的创建,字符串类型数组的创建呢也是类似的,我们右键选择数据,数据容器选择数组,然后第二步右键, 我们在字符串这个地方选择一个字符串的空间,然后呢给它放进来,这样呢我们就创建了一个字符串型的输入数组,我们右键数据容器再放一个数组,然后右键 字符串,这样呢我们选一个字符串显示空间,这样呢我们就创建了一个字符串显示类型的数组。 好,这个呢就是数组的创建,它呢共分两步,正好啊跟咱们 ppt 中的这段画啊对应上,数组啊是将相同类型的数据啊集合在一个数据结构中。 咱们创建数组的时候啊,第一步呢创建的就是一个数组类型的一个数据结构,第二步呢就是指定这个数组的这个数据类型,数据类型 我们给这个数组啊指定了数据类型之后啊,这个数据类型本身的一些特性啊,这个数组呢他就拥有了。 比方说咱们说的这个数值类型的这个数组。咱们前面是不是给大家讲过数值类型啊,他呢又分整数跟这个小数,我们可以通过右键这个表示法,这个地方啊 给大家来指定,它是一个整数,还小数,默认的呢,是一个双精度浮点型的一个小数,比方说我们选成 i 三十二呢,这样呢就变成了一个长整形,我们可以右键表示法呢, 比方说选成这个 u 十六,就是无符号双字节整形。你看看这个数值类型的一些特性呢,这个数组啊也是拥有的,因为呢数组啊就是把一些相同的数据类型集合在一起嘛,所以说这个数据类型本身的一些特性啊, 这个数组呢也是拥有的。当然这个数组的这个输入空间呢,也可以转换成显示空间,我们右键,你看大家注意一下,转换为显示空间,这个呢右键,然后显示空间可以转换为输入空间,都是呢可以相互转换的, 这个呀是在前面版建立一个数组空间的一个步骤,下面我们再说一下在程序框图面板建立一个数组常量的这个过程啊,他这个建立数组常量的这个步骤啊,跟在前面版 建立数组空卷的步骤啊,都是非常类似的,也是分两步,第一步呢,我们首先放一个数组的这样的一个结构体,我们右键在数组这个地方啊,这呢有一个数组长量,我们放一下这个数组长量,这样呢我们就放了一个数组类型的一个结构体, 但是啊我们没有指定数据类型,我们需要在第二步啊,给他指定数据类型,我们右键,比方说我们要给他指定一个啊整形的一个数组吧,我们就放一个整形的长量,放一个整形的长量,我们给他啊放进来,大家注意一下,我们放进来,这样呢就 哦创建了一个整形的一个数组,如果说要创建一个浮电类型的数组的话啊,过程啊是类似的,买右键数组呢,放一个数组常量,然后右键 第二步啊,给他放一指定成一个小数类型的,就是浮点类型的一个啊,类型我们选这个啊,数值 dbl 就是双精度浮点型的这个数值常量,我们给他放进来,这样呢他就变成了一个浮点型的一个数组。 当然啊对于字符串类型的数组呢,也是类似的,右键我们放一个数组长量,然后右键呢的字符串这个地方放一个字符串的长量给他拖进来, 这样呢我们就创建了一个字符串类型的数组,比方说我们再创建一个布尔类型的数组吧,我们右键然后数组放一个数组常亮,右键呢在布尔这个地方, 我们选择一个布尔的长量,然后呢给他拖进来,这样呢我们就放创建了一个布尔类型的一个数组,非常简单, 这个数组长量跟这个数组空间之间啊,也是可以相互转换的,跟我们前面讲的呀,都是类似的,都是类似的,比方说我们这个数组长量,我们选中一下他,大家注意啊,我们选中一下他右键右键 转换为输入空间,这样呢大家可以看一下,就转换成了一个空间,然后我也可以右键再给他转换为常量,这样呢又转换回来了,又转换回来了,这些啊都是类似的,右键转换为这个显示空间吧,大家可以看一下,就转换成了一个显示空间, 我也可以呢,右键再转化为常量,转化为常量。好,这个呢就是数组的创建过程,下面啊我们再研究一下我们创建的这个数组,我们就看一下我们第一个创建的这个整形 数组吧,这个数组啊大家可以看一下他这个数组呢是分两部分的,左侧的这一部分啊,叫做数组所引,右侧的这一部分呢叫做数组元素。 我们默认的创建的这个数组啊,叫做一尾数组,叫做一尾数组,就是说这个数组缩印这个地方啊,只有一个的话叫做一尾数组,叫做一尾数组, 如果说你想创建一个二位数组的话怎么办呢?我们就把这个数组锁印啊,大家注意一下,我们把我们的鼠标啊放到数组锁印这个地方,他出现八个小点的时候啊,我们选中这这个点,这个点往下拉一下, 这个数组所演出现两个的时候啊,就叫做二位数组,我们再往下拉一下,出现三个的时候呢,叫做三位数组,叫做三位数组,我们给他倒回去,先看 下这个一位数组啊,我们再看一下这个数组元素,默认的呢,他是显示一个数组元素的,那么我们怎么让他显示多个数组元素呢?我们,嗯跟操作这个数组所演是类似的,我们把鼠标啊放到这个地方来, 出现八个小点的时候啊,我们选中其中的一个小点,给他拉一下,大家可以看一下,这样呢我们就给他拉出来了五个数组元素,当然啊,一位数组呢,可以横着拉,也可以啊竖着拉,比方说我们这个数组, 这个数组我们放到这个地方来,出现八个小点,我们往下拉,往下拉,大家可以看一下,横着拉,竖着拉都是可以的,都是可以的,我们在拉这个数组的时候啊,有一个需要注意的地方,大家可以看一下,我把鼠标啊放到这里面来,你看出现这样的两个 小点,你这样拉的呢,是调整的这个数组元素的这个大小,不是呢,给他往外扩展这个数组元素的数量,只有这个小点啊,处于整个这个数组的外边框的时候啊,我们才能够给他拉,大家注意一下,你看 这样呢就出现两个小点,出于整个数组的这个外边框的时候,我们才能拉。如果说只是出现在某个数组元素的边框的话,大家注意一下,这种情况, 我们调整的呢就是这其中的这一个元素的这样的一个大小,大家注意一下,你看这样呢也是类似的,如果说我们的这个小点啊,出现在某个元素的外边框的话, 我们调整的呢就是这其中的这个元素的大小,如果说这个点处于整个数组的外边框的话,那么我们 调整的呢才是这个数组元素的数量。好,这个呢是一维数组的情况,这个一维数组啊,你只能够选择这个左右了,或者是上下了,上下了都是一样的,大家注意一下,如果说 你选择了这个上下拉的话,他上下只出来一个小点,左右就没了,如果说你选择左右拉的话,他就只有左右出现这样的两个小点,大家注意一下,那么下面我们再看一下这个二位数组的情况,我们在这个数组锁印这个地方啊,给他拉出来两个,这样呢就是一个二位数组, 除夕这个二位数组呢不仅能够这个左右拉,而且呢左右拉了之后啊还能够上下拉,为什么会出现这样的一个情况呢?就是因为人家二位数组呢,是一个二位的二位的,大家 注意一下,我直接这个鼠标出现这样的一个形状的情况下,我直接往这个一拉,直接呢就能够拉出来这样的一个二维的数组。 好,这个呢就是数组的一个调节,我们在编程的过程中,可以根据我们的这个需要啊,调节一下这个数组展示的这个数组的数量,方便我们使用。 还有一个需要注意的地方呢,就是我们先建立的这个数组啊,大家注意一下,里面呢这些东西啊,都是一个灰色的, 这个灰色的呀,表示啊,这个数组里面的元素啊,都是空的,也说一个元素都没有,就没有被初始化。那么我们怎么在这个数组里给他输入数据呢?我们就双击一下直接输就可以,比如说我们输入一二三,你看我们输入数据的地方啊, 就不是灰色的了,不是灰色的了。这种情况呢,表示数组里啊有三个元素,后面的这三个灰色的部分啊,他是没有元素的。 对于这个字符串数字呢,也是类似的,比方说我们输入 a, a, b, b, 呃, c, c, d, d 吧,这样呢,我们这个数组里啊,就有四个元素,而这些灰色的部分呢,代表是没有元素的,就是没有被初始化。二位数组呢也是一样的,我们说一二三 四五六,然后七八九吧,七八九。好,这样呢,我们的二位数组里啊,就有九个元素了,有九个元素,而这些灰色的部分呢,是没有任何元素的,就是没有被初始化。 在这个程序空图面板的操作呀,跟在这个前面板的操作也是也是类似的,大家注意一下,你看一位数组都是可以这样操作的,大家注意一下,如果说我们想创建一个二位数组的话,这样呢就给他拉成两个,然后大家注意一下,你看我们一拉呢,这样呢就出来了一个 二尾的数组操作过程啊,都是类似的,我们啊也可以直接在这里面输入这个数据,比方说一二三吧,啊,五八五六九,呃,零 三四吧,我随便输几个,大家注意一下,你看呢?这样呢,我们就输入了九个元素,九个元素在这我们可以给大家出一个小问题,大家可以看一下这个数组长量,我们 我们在这里面输入了九个元素。如果说我们在编程的过程中,这个需要里面输入一百个元素的时候,我们怎么办呀?我们总不能把这个东西给他拉成这个一百个这么长,挨个往里输,对不对?那这个时候怎么办呢?我们拉成一百个是不是太长了, 太长了,然后我们的这个程序框从面板看着是不是非常的不美观呀?这个时候我们怎么办呢?这个时候我们的这个数组锁引啊就起作用了,这个数组锁引的这个数字代表什么意思呢? 他代表的啊就是我们数组最左边的这个元素在数组中所处的位置,比方说我们这个一啊,现在就是处于数组中这个第零个的位置上,第零个的位置上啊,第零个的 位置上,如果说我们调节一下这个数组缩影大小,我们通过这个箭头调节,比方说你看我调到一的话,说明这个二啊,他是位于这个数组中这个第一个位置上,我们再调一下,你看这个三呢,他就处于这个数组中的第二个位置上, 我们这个数组啊是从零开始的,大家注意一下,你看我再调一下,你看这一,这个一呢,他又出来了,出来了,大家可以看一下,你看看见变化了没有?这个数组所引啊,就是用来调节这个数组这个显示的这个位置的,大家注意一下,你看看 我们可以这样调,如果说你想输入一百个的话,那么我们就可以这样给他调过来,我们然后再往里面输就可以了,再往里面输就可以了,你看看再往里面随便输,随便输,然后呢比方输完了之后,然后 再可以再往上这样调,然后呢再往上输就可以了,这样呢就非常简单了,如果说我们数组里有很多个元素的话,我们不能够一下显示出来的话,我们可以通过调整这个数组所演,来观看某一个特定位置的这个元素的 啊数据,比方说我们想看第九个吧,就是位置九的这个数据,我们写成九,然后你看第九个的这个位置的数据呢,就是五,就是五好,这个呢就是数组所引的这个作用。 约二位数组这个数组所演呢,也是类似的,它的意思呢就是我们这个数组最左上角的这个元素出于数组中的第几行第几列,比方说这个一啊,就是出于数组中的第零行第零列,比方说我们这 那输入这个,你看一说明,这个五啊,是处于这个元素中的第一行第一列,然后这个九呢,就是处于数组中的这个第三行第三列。你看我们可以调到这个,从这个 最猝死的位置可以看一下,这个九是不是又处于这个第三行第三列上来啊?这个呢就是数组所引的这样的一个作用,如果说你再往上调,他就没数了,对不对?没数了,因为这些地方呢,都是 位位初始化的一些地方,所以说你就看不到数了,看不到数了,你看这个地方呢,我们可以调节一下。好,这个呢就是我们给大家讲的第一个知识点,数组的创建。下面呢我们再说一下这个第二个知识点,与数组相关的这个函数。我们 在这个地方啊,只是简单的给大家讲两个与数组相关的函数,一个呢就是计算数组的大小,另外一个呢就是所引数组。我们这个讲解的思路呢,实际上是跟我们前面讲的其他的数据类型啊,是类似的, 因为啊与数组相当干的函数,大家可以看一下,是有很多很多的,我们在课上啊,不能够一一的给大家讲解, 我们只能够挑几个典型的呢给大家讲解一下,其余的呢得靠大家在课下自己 结合着帮助说明自己学习一下。我们首先讲第一个函数,就是计算数组的大小,比方说我们这一个数组,我们这个数组里有多少个元素啊?这个数组大小是多大呀?对不对?我们想计算一下,这个时候呢,我们就需要使用到与数组相关的 结函数了,我们到数组这个地方,第一个函数呢就是数组大小的这个函数,他呀是能够计算这个数组大小的,比方说我们放的这个地方,来我们的数组啊,连过来,我们右键 创建显示空间,大家可以看一下,我们运行一下,我们一运行,大家可以看一下,我们这个数组啊是大小呢是十七,大小是十七, 对于二位数组也是能够计算的,比方说我们要计算这个数组四的这个大小吧。 啊?我们怎么办呢?我们首先啊右键数组选择一下这个数组大小的函数,哎,大家都看,哎,这个数组四啊,是一个显示空间,我给他连不过来,对不对?那这个时候怎么办?我们前面是不是给大家讲 啊,就得用到我们的右键大法了,我们选中他右键创建属性节点值,创建属性节点值,我们创建一个,然后呢给他连过来就可以了,连过来之后我们右键 创建显示空间,创建显示空间,大家注意一下,大家注意一下我们这个二维数组的大小啊,它的结果呢是一个一维的数组,是一个一维的数组, 为什么会出现这样的一个情况啊?是因为我们二位数组的大小,它是有两个指的,有几行几列,对不对? 我肯定得用两个字表示,我用两个字表示的话,我就放到了一个一维数组里去,所以说我这一维数组里啊是有两个元素的,我们可以运行一下,运行一下,大家可以看一下他只出现了一个三,对不对?我往下 拉一下,往下拉一下,大家可以看一下数组里是不是只有两个元素啊?啊?到了第三个元素他就变成灰的了,有三三这两个元素,说明啊是有三行三列的,如果说我继续往下输几个 一一一一二二吧,我那么我再运行一下的话,大家可以看一下它代表的呢是有四行三列,四行三列四三,好,这个呢就是二位数组的这个大小的计算, 下面我们再说一下数组的所演,如果说我们在编程的过程中啊,想把这个一为数组里的这个六啊,这个元素 给他拿出来,我们要使用一下,那么我们这个时候需要怎么办呢?我们这个时候啊,就要用到我们的这个数组所引这个函数了,就是所引数组的这个函数,我们放过来, 把我们要缩影的数组啊,给他连到这个这个地方来,第一个输入上来,我们要缩影这个六的话,那么他处于这个数组中的哪个位置呢?我们数组中的元素啊,是从零开始的零 一二三四,他处于数组的第四个位置上,所以说我们这个缩影这个地方啊,右键创建常量,我们需要输入一个四,大家需要注意的地方呢,就是数组中元素的位置是从零开始的,然后我们右键 创建显示空间,我们可以运行一下,可以看看我们运行,你看缩印出来的是不是就是六啊?如果说想缩印这个九的话,那我们把这个四改成五就可以了,我们运行一下,你看呢这个结果就是九,对不对?好,这个呢是一位数字的缩印,对于二位数 的缩影啊,都是类似的,比方说我们要缩影一下这个数组四吧,我们右键数组缩影数组,大家注意一下啊,大家注意一下我们放的这个缩影,数组的函数默认的这个缩影的这个地方只有一个,对不对? 如果说我们把这个地方连到二位数组上的话,大家注意一下变化,你看我一连到二位数组这个地方呢,就变成了俩了,为什么呀? 因为我们要缩引二位数组中的某个元次,得需要两个参数,对不对?我们需要指定要缩引这个数组中的哪几行哪几列才行,哪几行哪几列才行。如果说我们想缩引这个八的话, 那么他是不是处于这个第二行第一列啊?从零开始的,零一二第二行,零一第二列,所以说我们这个地方呢,就输入常量第二行 第一列,右键创建窗帘第一列,然后呢右键创建显示空间,然后我们运行一下,可以看一下 我们已运行,这个是不是就是八呀?好,这个呢就是二位数组的一个锁眼,唯一需要注意的一个地方呢,就是我们这个锁眼的这个这个这个这个位置啊,是从零开始的,是从零开始的啊,零一二,然后这样的。 好,这个呢就是数组所引这个函数的使用,当然啊,与数组相关的一些函数啊,是有很多很多的,大家可以看一下, 我们这个地方啊,就不带大家一一讲解了,我们前面也说了,大家需要在底下结合着帮助啊,自己学习研究一下这些剩余的函数。好,这个呢是第二个知识点的讲解,下面我们再说第 三个指示点,数组与方循环啊,这个方循环啊,我们在前面的课程中啊,专门的给大家讲到过我们右键结构这个地方啊,可以放一个方循环 啊,大家注意一下,我们放上这个方循环的时候,这个地方就报错了,对不对?为什么会报错啊?是因为我们这个方循环所上角的这个 n 啊,没有给他复直对不对?你只有给他复直了才能知道循环几次对不对?我们只有给他复直的时候,大家注意一下,比如说右键创业常亮 数个一吧,循环一次,这样呢,他就不会报错了。也就是说这个 n 的次数啊,你是必须得指定的。但是啊,有一个特殊的情况,如果说我们的这个方循环遇到了我们的数组的话,遇到了我们的数组的话,这个 n 啊是可以不用指定的,可以不用 指定的,比方说我们这个数组这个数组,然后我们可以右键吧右键给他转换为这个输入空间这个数组,我们把我们的这个数组啊连到这个佛循环上来,大家注意一下,我们给他连过来单击确定,你看 我们只要一连过来,这个箭头是不是就可以正常运行了,也就他就不报错了。为什么呀?因为我们这个数组啊,连过来之后, 可以给这个否循环,就默认的给他指定了运行的次数了。那么这种情况下这个否循环运行几次呢?他运行的次数啊,就是我们这个数组中元素的数量, 比方说我们这个数组中有三个元素的话,那么这个佛旋缓按就会运行三次。运行三次,我们可以验证一下我们这个运行次数啊,给他显示一下右 键创建显示空间,创建显示空间,那么我运行一下,我一运行,你看这个地方就变成了二,为什么是二?因为我们的 i 是从零开始的,零一二正好运行了三次, 这个数组连到方循环上的时候啊,他不但默认指定了这个方循环的次数,而且呀,这个方循环运行的时候啊,还能够把数组中的元素啊给缩引出来,缩引出来 也就是这个风循环运行一次呢,就锁引一个元素,运行一次就锁引一个元素,你看他这个地方呢,会运行三次,就会把这个一二三呀挨个给锁引出来 们这个地方可以右键创建显示空间,创建显示空间,然后这个地方我们可以加个延时,让大家看的清楚一点,比方说我们右键 拖延床量,写个写个一百吧,写个一千吧,也就说啊一秒运行一次,大家注意一下这个数字二的变化,数字二的变化 门一运行大家可以看一下一二三,大家注意一下是不是正好把这个挨个给锁印出来了,比方说我这样的可以给他改改,比方说二二四四 八八吧,八八,然后运行一下,你看这呢就是二二四四八八,正好运行了三次,把我们数组里的三个元素啊挨个给锁印出来了, 这个呢就是数组碰到方循环的时候,一个比较有意思的特性,比较有意思的特性,大家一定要掌握这个功能,大家在编程的过程中啊啊利用这个小技巧啊,可能会省很大的功, 会省很大的功夫,这样呢还有一个比较有意思的特性啊,就是我们的这个否循环啊,还能够自动的生成数组,生成数组,比方说我们这样右键,然后呢 放一个方循环,放一个方循环,比方说我们循环多少次呢?比方说循环五次吧,循环五次,我们在这个循环里啊可以产生一个随机数,我们在这里面放一个随机数,放一个随机数, 那么这个方循环,循环五次会产生五个随机数,我们可以把这个随机数啊给他连到这个方循环的这个 啊,最右侧来,最右侧来,然后我们单击一下确定,单击一下确定,这样呢他就会自动生成一个包含五个元素的一个数组,我们右键创建 显示空间,大家可以看一下,这样呢就是自动生成了这样的一个数组,自动生成了一个数组,我们这个地方可以运行一下,我们运行一下,你看我们运行完了之后,可以看一下这个数组五,这个数组五,我们给他拉的宽一点,然后往下拉一下, 大家可以看一下是不是自动生成了包含五个元素的数组啊?这五个元素呢就是我们在运行的过程中产生的这个随机数,产生的这个随机数我们可以给他拉一下,拉一下,让大家再看一下这个运行的过程,运行的过程啊,运行的过程, 我们先整理一下这个地方吧,我们选中他用小扫把让他整理的漂亮一点,然后小扫把,好,这样呢我们给他拉过来,这样我们的程序框图啊,就看着简 结很多了,看这简洁很多。然后呢我们在这个地方可以运行一下,运行一下,我们可以看一下,你看我们一运行这边的这五个数是不是就变了呀?是不是就变了?我们可以再运行一下,你看 这这里面的五个数是不是又变了,为什么又变了?是因为我们这个随机数呢,是一个随机变化的。好,这个呢就是令方循环呀,产生一个数组, 好的,这样呢,我们就把数组的内容啊给大家讲完了,讲完了之后啊,我们可以把我们的这个程序文件啊保存一下,然后我们点保存,比方说存到桌面上,我们叫做 啊第九节吧,第九节,然后杠数组,数组,然后单击确定,单击确定,好,这样呢有一个 小技巧啊,我们再给大家说一下,再给大家说一下,比方说我们这里面的这些输入空间,这些输入空间,我们在这里面不是有一些输入了一些值吗?输入了一些值,比方说这个数组,这个数组,然后这个数组 这两个是不是都是输入空间啊?我们竖的直,如果说我们这个时候啊,这个时候我们给他关闭掉,用我们保存一下,关闭掉,我们下次再打开的时候可以大家可以看一下,我们是不是刚才的这些值都没了呀?这些值都没了呀?为什么都没了呀? 是因为我们没有保存住,比方说我们这儿输入二二四四八八八八,然后呢这儿呢输入 a、 a、 b、 b, 然后 c、 c、 d、 d, 如果说我们想下次再打开 的时候,想让这些输入空间里我们输入的这些值,还有我们这个时候怎么办呢?我们就可以选中它右键,然后数据操作, 当前值设为默认值,设为默认值之后啊,我们下次再打开的时候,这个值还有这个值,还有我们这个也是一样,右键数据操作,当前值设为默认值,然后我们保存一下,关闭它。 如果说我们再打开的时候,大家可以看一下二二四四八八是不是还有啊? aabbccdd 也还有,对不对? 当然啊对于这个显示空间来讲也是类似的,比方说我们在这里面输入一二三四五六七八九吧,幺幺幺幺二二,然后我们输入完了之后可以右键然后数据操作,当前值设为默认值,关闭之后, 然后保存之后关闭再打开,你看这个纸呢他就有了,他就有了。好,这个呢就是一个呃,把这个空间里的纸啊保存住的一个小技巧。 好,这个呢就是数组的全部内容,下面我们再讲醋,醋呢我们也是准备分三部分来讲,我们首先讲这个醋的创建,我们切换到桌面上来,然后我们新建一个 vi, 这个醋啊也是可以在前面板创建一个空间,也可以呢在程序空土面板创建一个醋床量。我们首先啊在前面板啊给大家创建一个醋的空间, 创建醋啊是分两步,跟创建数组的过程啊非常类似,第一步呢就是首先创建一个醋的数据结构,第二步呢就是往这个醋 的数据结构里啊放相同或不同的数据类型就可以了。所以说我们首先第一步右键在数据容器这个地方啊,选择一下,这个醋,我们放到前面板上来,这样的我们就在前面板啊放了一个醋的数据结构, 下面我们进行。第二步往这个醋的数据结构里啊放不同的或者是相同的数据类型,我们右键我们首先啊放一个数值类型的这样的一个元素吧,我们给它放进来。 好,这样的醋里啊就包含了一个元素,他的类型呢是树脂类型的,我们可以啊把这个醋啊给他拉的大一点,这样呢看着会清晰一些。下面呢我们再往里面多添加几个元素,我们右键比方说我们再放一个树脂类型的元素吧, 啊,当然他可以,这个醋呢跟这个数组的不同呢,就是这个醋啊,可以放不同的这样的一个数据类型,我们刚才不是放了两个数值类型的这样的元素吗?我们 第三个呢,比方放一个不同类型的,我们放一个圆形指示灯吧,他是一个 b 类型的,大家可以看一下,这样呢是也是完全没有问题的。那右键比方说再放一个字串类型的,大家可以看一下,我们的这个醋里呢就包含了四个元素,四种数据,三种数据类型。 好,这个呢就是促的创建,共分两步,还是非常简单的,我们刚才创建的这个促呢是一个输入空间,我们也可以给他转换为显示空间,跟前面我们学习其他的空间的操作步骤啊,都是一样的,我们右键转换为显示空间 也可以呢,右键再给他转换为输入空间,我们也可以在前面吧操作选中他右键转换为显示空间,右键转换为输入空间,都是可以相互来回转换的, 这呢有一个需要注意的地方,就是如果说我们这个醋啊是一个输入空间的话,那我们醋里的元素呢都是输入空间,如果说我们这个醋是一个显示空间的话,那我们醋里的元素呢都是显示空间, 也就是说我们醋里元素的这个输入输出类型啊,是跟这个醋的输入输出类型是完全相同的, 我们为什么要强调这个指示点呢?是因为啊,这有一个比较有意思的现象,我们在创建促的过程中啊,这个促是一个输入空间还是一个显示空间的?他是有啊 往这个醋里放的第一个元素的输入输出类型来决定的。下面我们给大家演示一下,大家看一眼就明白了。我们右键我们首先放一个醋的结构体,创的一个醋的结构体, 那么我们新创建的这个醋,他是一个输入空间还是一个显示空间的?他是有啊往这个醋里放的第一个元素来决定的。比方说我们放一个 一个元素啊,放一个输入空架,就是字符串的输入空架,你看我们放上去之后,大家可以看一下这个醋,醋二呢就是一个输入类型的一个空架,输入类型的一个醋, 我再创建一个醋,右键我再放一个醋的这样的一个数据结构啊,我们这个地方呢,我们就在第一个元素啊,就放一个显示类型的元素,我右键我放一个字符串显示空间啊,给他放进来,大家 可以看一下我们新创建的这个促三,他呢就是一个显示空间,也就是说我们创建的这个促啊,他的输入输出类型呢,是由我们放进去的第一个元素的输入输出类型而决定的。 一旦一个醋的输入输出类型决定了之后啊,你再往这个醋里放其他元素的话,其他元素的输入输出类型啊,就无所谓了, 因为这个醋啊会自动的把你放的这个元素的输出输出类型啊,转化为跟他的输入输出类型保持一致, 比方说我们这个醋二啊,是一个输出类型的醋,那么我如果说往这个醋里放显示类型的空间的话,比方说放一个字符串显示空间啊,放进来的话,大家注意一下,你看我这个字符串二啊,就自动的转化为这样的一个输出空间。为, 怎么会自动转换为输出空间?是因为我这个醋呢,就是一个输出类型的,你给我往里面放这个显示类型的这样的元素的话,我就自动的 给你转换成跟我这个醋的输入输出类型保持一致,保持一致。比方说咱这个醋三呢,是一个显示类型的醋,对不对?显示类型的醋, 如果说我往里面放这个数值输入空间的话,他要自动的就把这个数值输入空间给我转换成一个显示类型的数值空间。 好,这个呢是一个非常有意思的小知识点,大家需要了解一下。这个呢就是我们在前面版创建速控件的过程,下面我们再说在这个程序框图面板啊,创建促长量的过程,在程序框图面板创建一个促长量,跟在 前面版创建一个醋控件的过程啊,非常类似啊,都是呢分两步,第一步啊,首先放一个醋的结构体,我们右键在醋类与变体这个地方啊,我们放一个这样的一个醋常量,这个呢就是一个醋的结构,醋的结构 们放了醋的结构之后啊,第二步呢,就是往这个醋的结构里啊,放相同的或者是不同的数据类型就可以了,我们右键比方说我们放一个数值类型的元素,我们在右键再放一个浮点类型的元素,右键呢可以再放一个磁浮串类型的元素, 这样的我们就创建了一个促长量,里面呢包含三个元素,三种数据类型。我们手动创建的这个促长量啊,可能看着不太整齐,不太漂亮,我们可以给他排列一下,我们啊把这个鼠标啊全 全部给他选中一下右键,右键,然后这有一个自动调整大小,提供了三种排列的方式,第一个呢是调整为匹配大小,你看呢就排列成这样了,我们可以再右键再右键,然后呢选择水平排列,就是这样的,再右键呢我们 把鼠标啊放到这个最外的边框里来,右键,然后自动调整大小,垂直排练呢就排练成这样。 好,这个呢就是促长量的创建,当然啊这个促长量跟这个促空间之间啊,也是可以相互转换的,跟我们前面讲的其他的空间的长量之间啊,都是类似的,比方说我们右键可以转换为这个输入空间,也可以呢右键 转化为常量,都是可以相互转换的,我们这样呢就不过多的进行一个啊讲解了。好到这呢,我们就把醋的创 建的这个知识点给大家讲完了,实际上在促创建的过程中呢,我们还需要注意促理元素的顺序以及促理元素的名字。我们这样呢没给大家讲是因为啊,我们在讲第二个支点促函数的时候啊,会用到这两个小的支点,我们在用到的时候啊再给大家讲,这样呢印象啊会比较深一些。 下面呢我们讲醋的第二个知识点,与醋相关的函数。在正式开讲之前呢,我们首先回顾一下醋的定义, 醋呢是将多种类型的数据啊集成在一个数据结构中,换另外一种说法呢,就是醋是将多种类型的数据啊给捆绑在一起, 形成了一个整体,形成了一个新的数据类型,就叫做醋。也就说醋本质上啊,就是将多种不同的数据类型给他捆起来了,捆起来之后作为一个整体对外宣称呢是一个数据类型。 醋的本质呢,重点就在捆绑这两个字,就是将不同的这个数据类型啊给捆绑在一起。所以说与醋相关的函数啊,主要有两类,一类呢就是对元素进行一个捆绑,形成一个新的醋。 另外一类呢就是对醋进行一个解除捆绑的操作,解除捆绑之后呢,我们就能够得到醋里的这些元素。 我们首先讲醋的解除捆绑,然后呢再讲醋的捆绑,我们切换到我们的程序中来,如果说我们想对一个醋进行解除捆绑的话, 获取这个醋里的元素的话,我们应该使用哪个函数呢?我们右键在醋类于变体这个地方啊啊,这样呢有一个解除捆绑的这样的一个函数,解除捆绑的 一个函数,我们放到我们的程序框图面板中来,然后呢把我们的醋啊连到这个函数上来就可以了。门连过来之后,大家可以看一下,这个函数呢,就自动形成了四个输出的这样的东西,这四个输出呢就分别 对应着这醋里的四个元素,这醋里的四个元素,比方说我们右键创建显示空间,我们呢分别给他显示一下,右键创建显示空间,右键 创建显示空间,大家可以注意一下我们安给解除捆绑之后得到的这四个元素的数据类型,大家可以看一下是不是跟我们刚才创建这个醋的时候,这四个元素的数据类型是完全一致的呀?比方说我们在这里面随便写点 这个数字吧,一二三四五六,布尔呢?给他织成处走不出来呢,给他随便写一个,我们写上之后我们运行一下,大家可以看一下我们解除捆绑之后是不是就得到了这个处理的元素啊,对应的值呢,我们也能够得到。 好,这个呢就是醋的解除捆绑,我们在使用这个醋的解除捆绑的时候啊,有一个需要注意的地方,就是这个醋里元素的顺序,大家可以看一下我们解除捆绑的时候,他解除捆绑得到这个元素的顺序啊, 是按照我们创建这个醋的时候往里面放的这个元素的顺序,我们当时创建这个醋的时候啊,是先放的这个数值,再放的这个数值二,然后再放的这个布尔,再放的这个字符串。所以说你在解除捆绑的时候啊, 也是按照这个顺序啊,给解除出来的就先得到的是数值的值,再得到的就是数值二的值,再得到的就是波尔的值,再得到就是字符串的值 啊,那么如果说我促创建完了之后,这个顺序啊就已经定了,那么我想调整一下啊,这个 醋里的这个顺序怎么办呢?也是可以调整的,怎么调整啊?我们右键我们先选中这个醋,然后呢右键 右键之后啊,我们点击这个重排,重排醋中的空间,重排醋中的空间,我们这样啊就可以重新排列这个醋里元素的顺序, 这里面右侧的这个数字啊,零一二三就是处理本来的这个顺序,这个左侧的这个数字呢就是我们要设置的这个 顺序,比方说我们布尔的这个元素啊,我们给他排到第一位,给他设置成零的话,那么我们在这里面输入零就可以了,输入零, 输入零之后呢,我们单击一下这个布尔这个地方,单击一下,你看呢他就变成零了,如果说想把这个字符串这个地方给他设置成第二个顺序,那么给他设置成一就可以了,我们在这里面呢输入一,然后单击一下, 这样呢这个步啊就变得啊第零个顺序了,然后这个字符串呢就变到第一个顺序,数值呢变得第二个顺序,然后数值二呢变到第三个顺序,我们单击一下确定,这样啊,我们就把这个醋的这个顺序啊给他重新排了, 重新排了之后呢,这样呢就报错了,为什么呀?因为我们这个顺序重新排了,所以说我们在解除捆绑的时候啊,得到的这个 元素的顺序他也排了,第一个呢就变成了布尔类型的,第二个就变成字符串类型的第三个,第四个呢就变成了这样的一个浮电类型的了,所以说我们把这些断线啊给他删除掉,重新连一下就可以了,重新连一下,我们第一个呢是布尔类型的 布尔类型的,然后第二个呢是一个支付串类型的,我们这给他重新连一下。第三个,第四个呢就是不是浮电类型的,浮电类型的,我们这样给他连上就可以了,连上之后我们再运行一下,大家可以看一下还是原来的纸,还是原来的味道,对不对? 好。这个呢就是醋的解除捆绑,我们在使用这个函数的时候啊,发现这个函数呢不太灵活,这个函数默认的就是把你醋里所有的元素啊给你提取出来。如, 如果说你醋里有四个元素,那么我就给你把这四个元素提取出来。如果说你醋里有一百个元素,那么我就把这一百个元素给你提取出来,但是这样使用的话 就不太好了,对不对?因为我在编程的过程中并不一定要把处理所有的元素提取出来,我想把其中的一个或某几个给提取出来就可以了啊,没有必要都给我搞出来,你都给我搞出来之后呢?我的程序啊看着比较乱, 那有没有更好的方法就是按照需要提取这个醋里的元素呢?哎,是有的,我们这个时候呢就需要用到这个函数的升级版了,我们右键在这个地方,醋类于变体,这个地方啊, 这呢有一个按名称解除捆绑,大家注意一下,他那叫解除捆绑,这个呢叫做按名称解除捆绑,按名称解除捆绑 啊,就是这个解除捆绑的升级版,他的功能啊更加强大。我们注意一下,我们把我们的醋啊给连到这个按名称解除捆绑上来,他的这个是啥意思呢?他呀他会按照这个醋里元素的名字啊,来给你解除捆绑,比方说 我想把刺这个醋里刺夫串的这个元素啊给提取出来,那么我们连上之后单把这个鼠标啊放到这个地方来,大家注意放到这个地方来,变成这个小手的时候啊,我们单击一下鼠标左键, 我们选择一下处理的这个字符串,这样呢我们就能够把字符串这个元素啊给提取出来了,我们右键创建显示空间,我们运行一下,大家可以看一下是不是就得到了这个字符串里的这个值啊?大家注意一下,也就是说我按名称解除鲲鹏啊,可以 根据我的需要获取这个处理的元素,我想获取哪一个就获取哪一个,没有必要一股劲的全部得到。如果说我想获取这里面的两个元素的话,就是字符串跟这个数字二的话,我们怎么办呢? 我们这地方给他拉一下就可以拉一下,然后呢把小鼠标放到这个地方来,单击一下鼠标左键,我选择一下数值二,数值二,然后呢我们右键创建显示空间,创建显示空间, 我再运行一下,再运行一下,你看是不是就得到了这个数值二的值啊?四五六。 好,这个呢就是对促按名称解除捆绑,他比单纯的这个解除捆绑这个函数啊,使用起来呢会灵活很多,我们在编程过程中啊,一般呢就使用这个按名称解除捆绑这个函数啊,到这也有一个 需要注意的地方,就是这个元素的名字,因为我们是按照名称解除捆绑,所以说我们在 哎解除官网的时候啊,就需要注意这个醋的名字了,注意这个醋的名字了,比方说我们这个叫字符串,我们重新给他起个名字,叫做 a a a 吧,我们重新起了名字之后,大家注意一下这个地方啊,也对应的这个名字啊会产生变化。 对于醋元素的名字啊,我们这呢多说一下,他分这个前面版醋空间跟后面版这个醋产量两种情况。 我们首先说这个前面版的醋控件,默认情况下,这个醋控件里的这些元素的名字啊都是有的,大家注意一下,你看我们新创建的这个醋,其中的每个元素呢,他都是有名字的,这个醋元素的名字啊,就是指这个 促元素的这个标签,我们可以把这个名字给他隐藏掉,我们选中他右键,然后显示像呢把这个标签给他勾掉,这样呢他的这个元素的名字就没了,就说他的名字呢就是他的标签, 我们大家注意一下,我们可以给他隐藏掉,也可以呢给他显示出来,然后呢显示样把这标签显示出来就可以了,这个呢就是这个前面板触控这的情况,这个还是非常简单,有一个特别需要注意的地方呢,就是这个啊程序框图面板的这个促长量, 我们新建的这个粗长梁啊,默认的它里面的这个元素啊是没有名字的,他是没有名字的,比方说我们右键选择一下这个按名称解除捆绑,我们给他连过来,连过来之后大家可以看一下,这呢就报错了,我们运行一下,他就说啊 这个促元素呢没有命名,为什么?是因为我们这个粗长两的的元素啊?他没有名字,你还想呢?按名称解除宽绑,他实现不了啊,对不对?我都没有名字,你怎么按名称给我解除宽绑啊?所以说他就报错了, 这个时候我们怎么办呢?我们可以右选中它右键,然后显示项呢,把这个标签啊给它显示出来,大家可以看一下,显示出来之后啊,里面是空的,啥都没有,我们可以给它起个名字,比方说我们起个名字它叫 abc, 你看 起了 a、 b、 c 之后呢,这呢就出来了,这个 a b c 上面的这个浮电型呢,我们也可以进行一个同样的操作,右键然后显示像呢,这个标签给他显示出来,我们给他写个名字叫做,呃, c v b 吧,我随便写了这个名字,然后最上面这个整形呢,也可以显示像,标签 出来之后,我们写个个 h 勾吧,随便写一个,然后大家注意一下,我们给他起了名字之后,按名称解除捆绑之后这个名字就有了,这个名字就有了。如果说你这样看着比较难看的话,我们可以右键显示像呢,把这个标签啊给他 隐藏掉,我们右键显示像,把标签给他去掉,然后这也是右键显示像呢,把标签给他去掉,这样呢就看着比较漂亮一些。我们给他标签起了名字之后,大家注意一下,你看我们就可以使用按名称解除官方这个函数了。 好,这个呢就是醋元素名字的这个一个小的知识点,大家在使用这个醋的按名称解除捆绑的时候啊,需要特别注意一下这个醋元素的名字啊,他醋元素的名字啊就是指醋元素的这个 标签,我们默认的这个醋控件啊,就前面买的这个醋控件啊,这个醋元素呢都是有名字的,这个新建的这个醋产量呢,有的时候他默认的是没有醋名字的,如果说你想使用到这个醋元素的名字的话,就需要啊单独再给他起个名字。 好,这个呢就是醋的解除捆绑,下面我们再说醋的捆绑,这个醋的捆绑啊非常简单,它的作用呢就是把一些相同的或者是不同的数据类型的元素啊,给它捆绑到一起,形成一个新的醋,我们右键 在醋类于便体这个地方啊,这个呢就是醋的捆绑函数,我们给它放到程序框图面板中来,然后呢我们在前面板啊可以放几个相同的或者是不同类型的元素,我们右键比方说我们 放一个树脂类型的一个元素,我们再放一个树脂类型的元素,我们呀也可以再放一个字符串类型的元素,这样呢我们就可以把这三个不同类型的元素啊给他捆绑到一起,形成一个新的醋, 我们把数字四呢给他连到这来,把数字五啊给他连到这来,哎哎,你看他默认的呢只有两个输入,我们可以往下拉一下,根据我们的需要啊,拿出来不同的数量,我们这个地方呢有三个元素,所以说我们就 拉出三个来就可以了,我们给他连上去,连上去之后呢,我们就可以利用这个醋的捆绑函数啊,把这三个元素呢捆绑成一个新的醋,我们右键然后创建显示空间,这样啊我们就把这三个元素给他捆绑,形成了一个新的醋,比方说我们可以在这里面 输入一些数值,比方说一二三四吧,字符串里我们输入随便输入一个,我们运行一下,大家可以看一下。 好,这个呢就是醋的捆绑这个函数的作用,他除了形成一个新的醋这个作用之外啊,他还有另外的一个作用,就是修改一个现成的醋,比方说我们这个醋二, 这里面呢有两个字符串类型的元素,我们可以啊在这里面呢给他输入一些 数据,输入一些数据,我们想修改啊这个醋啊里的某个元素或者某几个元素的值的话,那么这个时候怎么办呢?我们也可以使用醋的捆绑,比方说我们把这个醋啊给拉过来,然后右键我们再放一个这个醋的捆绑的函数, 我们把要修改的这个素啊给他连接到这这个上面来,连接到上面来,我们这样连上来,你看我们连上来之后,这个素二里不是有两个元素吗?他自动对应的啊,这个地方呢就出来了两个这样的支付串类型的,输入我们右键,比方说创建常亮吧, 我们想把第一个字符串里的这个一二三呀,我们给它改成四五六,给它改成四五六,然后我们右键 创建显示空间,创建显示空间我们可以运行一下,可以运行一下,我们对比一下,我们让这两个给挨到一起,我们可以给他对比一下,我们运行一下, 我们运行,大家可以看一下是不是这个一二三就改成四五六了,这个字符串二呢没有更改,如果说也想把这个字符串二这 个元素啊给他更改的话,那么我们这呢就右键创建常亮,比方说我们给他改成 aabbcc 吧,我们运行一下,大家可以看一下是不是这个醋里的两个元素都给他更改完了。 好,这个呢就是醋的捆绑函数的第二个作用,修改一个现成的醋,这个醋的捆绑啊,跟这个醋的解除捆绑是类似的,我们醋的解除捆绑呢,有一个按名称解除捆绑, 所以说对应的我们促的捆绑这个函数啊,也有一个对应的按名称捆绑这样的一个函数,我们右键 在醋类与遍体这个地方啊,这个呢是醋的捆绑,这个就是醋的按名称捆绑,按名称捆绑啊,醋的按名称捆绑啊,跟这个醋的捆绑的作用啊是类似的,但是 他使用起来呢会方便一些,会方便一些,比方说我们这个初三,他呢是一个显示空间,我们可以右键给他转换为输入空间, 我们呀啊给修改一下这个醋三里的内容,我们给他连到按名称捆绑上来,大家可以看一下啊,如果说我们想修改醋三里的这个字符串的话,那么我们就 哦把鼠标啊放到这个地方来,变成小手形状的时候,单击下鼠标左键,我们选中这个字符串就可以。想修改这个数值的内容的话,那么我们就呃选中这个数值就可以。比方说我们这右键创建常亮,我们输入个一二三吧, 我们右键按创建显示空间创建显示空间。好,这个呢就是这个促三的一个修改的结果,我们可以运行一下,可以看一下运行呢,大家可以看一下 数值里的这个元素是不是就改成一二三了,从这是不可以看出来,这个醋的按名称捆绑来修改这个醋类元素的话啊,比这个单纯的醋的捆绑这个函数是不是会更加方便清晰一些呀? 当然啊,这个醋的按名称捆绑这个函数啊,他是不能够哦形成一个新的醋的,也就说他不能够把这些不同的或相同的数据元素啊,形成一个新的醋 啊,这个非常容易理解啊,我们形成一个新的错,是一个从无到有的过程,就说我没有错,形成了一个新的错, 而我这个醋的按名称解除捆绑的,我的前提条件是啊,我得有一个醋,醋里的元素得有名字,我才能够实现我的功能,对不对?所以说呢,他就实现不了形成一个新的醋的这样的一个 作用。总结一下呢,就是我们醋的捆绑这个函数啊,有两个作用,一个呢是形成一个新的醋,另外一个是修改醋里的元素,而我们这个按名称捆绑这个函数呢,只有一个作用,就是修改醋里的元素。 好,这个呢就是我们要讲的第二个指示点,与促相关的函数。下面我们再讲第三个指示点,错误促与条件结构。 那么什么是错误醋呢?它首先本质上来讲啊,肯定是一个醋,这个醋里呢有三个元素, 一个呢是一个 boy 类型的值,叫做状态,它的名字。另外一个呢是一个数值类型的,它的名字呢叫做代码。另外一个就是 ziftry 类型的,叫做元,这个错误速啊,主要是用来指示我们 level 相关的函数在运行过程 中有没有错误的啊,如果说没有错误的话,那我们处理这个状态这个值啊,就是处就是一个小对勾的状态,如果说有错误的话,那么我们的这个状态这个值啊,就是一个小红叉,就是 false 的一个状态。有错误的话,这个代码跟这个圆这个地方啊,会有相应的内容, 这个代码呢就是指示的是错误的代码,这个圆呢就是对错误进行的一个解释说明。 下面啊我们就给大家演示一下这个错误处的使用。我们切换到我们的程序框图中来, 大家可以看一下我们 labor vivi 的这些函数。对于这些比较简单的函数啊,比方说像加减乘除啊,我们刚才讲的这些促相关的函数啊,只要它的这些输入啊,我们给它输入的数据类型啊,我们 给他搞对了连线没有问题,也就说没有语法错误的话,他肯定啊就不会有错误的产生,对不对?比方说这个加法,他要求数值类型的,那么我给他数的是数值类型的话,那么他运行起来啊,肯定就不会出错,因为这些函数啊特别简单。 但是啊,对于你这些 library 的这些复杂的函数,我们这可以比给大家举一个例子,比方说这个 写入文本文件的这个函数,这个函这个函数的作用啊,就是像我们的一个 t x t 里写入相关的一些数据,所以说它起码得有两个输入,第一个呢,就是说你这个 t x t 位于哪个地方?就是这个路径的这个地方,我们可以右键 创建输入空间,我们在这里面呢输入我们的这个啊, tst 的路径,第二个呢,就 是要像这个 txc 里写入的内容,对不对?就是第二个输入,我们可以右键创建常亮,比方说我们写个一二三吧,一二三。好,这样呢,我们只要把这两个输入给他连上去之后,大家可以看一下,他就没有语法错误了,这个地方是可以运行的,可以运行的, 这样我们可以运行一下,试一下,大家可以看一下,你看我们一运行呢,他就报错了啊,为什么会报错啊?是因为我们前面版这个路径这个地方啊,是没有给他输入任何东西的,虽然他从渔网上来讲啊,没有错误,没有错误, 但是你在运行的过程中,如果说他认为这些输入的这些数词啊,不符合他的要求的话,他就有可能会产生报错。所以说对于这种复杂的函数,即使在没有语法错误的情况下, 他在运行的时候啊,也有可能会产生错误。那么他这个错误怎么指示呢?就是通过这个错误输出来指示的,这个错误输出啊,就是一个错误错,我们可以右键 创建显示空间,创建显示空间,我们放到这来,大家可以看一下,这个呢就是一个错误错,错误错我们运行一下,你看我们这没有输入这个地方啊,他就报错了,报错了错误代码呢是幺四三零这个圆啊,就是进行对应的一个指示, 一个错误的说明。如果说我们这个路径这个地方啊,比方说我选择一下桌面的这个一点七 t, 我们运行一下,你看呢?他就没有报错了,是因为我们的这个这些输入啊,是符合这个函数要求的,如果说不符合他的函数要求,他就会报错,如果说我们这个地 可以再给他删除掉一下,我们一运行,你看他就又报错了,好,这个呢,就是错误处, 这个错误处的作用啊,在编程过程中啊,还是非常大的,因为我们在编程过程中如果遇到错误的话,就需要进行一些特殊的处理,对不对?进行一些特殊的处理,所以说呢,我们不能够紧紧的给他显示出来就完事了,对不对?你不能说遇到错误显示一下就可以了, 那么我得需要进行一些特殊的处理啊,如果说我运行过程中遇到错误了,我要进行怎么怎么样的一个处理,比方说记录一下日志啊,把我这个错误的状态给他记下来呀, 啊,以共后面的这个程序员分析,对不对啊?那么我们这个时候应该怎么处理呢?一种比较笨的方法啊,就是把我们这个错误处理的这个状态呀,给他提取出来。提取出来 怎么提取呢?就是用到了我们刚才讲的这个醋的按名称解除捆绑,我们右键在这个地方啊,选择一下按名称解除捆绑,我们把这个状态给提取出来,我们提取的呢就是 status 的这个值, status 啊,就是对应着这个醋里的这个状态的值和值。 如果说这个 stages 变成处的话,变成处的话,那么说明遇到了错误,如果说没有不是处的话就是 force, 那么说明我们的这个函数啊是没有错误的,这个地方我们可以 放一个条件结构,如果说这个值是真的话,说明我们遇到了错误,我们这个地方就简单的演示一下,比方说我们放一个字符串的显示空间,我们放到这个地方来,右键创建常亮,写个遇到错误了, 遇到错误了,我们这样呢就简单的演示一下,比方说我们运行,你看呢,这样呢就显示遇到错误了,遇到错误了啊,如果说我们右键创建属性节点值,然后我们放到假的分支里来,假的分支呢就是没有错误,我们给它转换为写入 右键创建常亮,比方说没有错误,没有错误,我们这个地方呢在运行下,你看这是遇到错误了,如果说我把路径啊给他选对了,我再运行一下,你看这呢就显示啊没有错误。 好,这个呢就是错误处的一个比较常用的一种处理方式,但是啊,这种把错误处理的这个状态提取出来进行判断的这种方式啊,是一种比较笨的方法啊,我们这有 有一个比较简单的方法,我们的这个错误处啊是可以直接连接到我们的条件结构上来的,我们右键我们这啊选择一个条件结构,你看如果说我们把我们的错误处啊直接连过来,会产生一个什么样的现象, 大家可以看一下他呀,很智能,很智能,就是说跟你列了两个分支,有错误跟没有错误,没有错误呢,就是一个绿色的,大家可以看一下啊,有错误的话呢,就是一个红色的,就是一个红色的,大家可以看一下我们的这个 ppt, 这个呢就是一个 条件结构的一个帮助说明,它里面说了这个条件结构的这个条件选择器啊,是可以输入这个错误处的,是可以输入这个错误处的,人家 libo vivo 啊,很智能,针对你这种常用的情况啊,你就别这么费事了, 还得提取出这个状态来,我直接就支持你这个错误处啊,连接到我的条件结构上来,这 呢我们也可以简单的给大家演示一下,我们复制一下我们的这个字符串,复制一下我们的这个字符串,然后呢我们切换到我们的程序框图面板中来,我们比方说这啊是不是有错误吗?然后我们右键创建常亮啊,有错误,有错误。然后呢右键 创建属性节点直直,然后呢我们给他放到没有错误的这个分这里来,然后右键全部转换为写入,然后右键 创建常亮,没有错误。好到这呢我们的程序啊就写完了,我们可以运行一下,大家注意一下这种情况是不是有路径他就没有错误啊?我们呢可以运行一下,运行一下, 你看那都是没有错误,我们把路径给他删除掉,我们再运行一下,你看这个呢就是有错误,显示的就是有错误。好,这个呢就是我们要讲的这个错误处的这个小的知识点, 当他遇到条件结构的时候啊,这个条件结构呢会自动的生成两个分支,一个呢是无错误的分支,另一个呢是有错误的分支。 好,到这呢我们就把这个第九节课的内容啊给大家讲完了,我们讲完了之后啊,我们可以把我们的程序啊保存一下, 对于这些相关的输入,如果说你想保存住的话,我们刚才讲数组的时候啊,也给大家讲了,我们可以右键按数据操作,当前值设为默认值。这样我们按再关闭,再打开的时候啊,这个值呢还能保存住,比方说这些值数据操作,当前值设为默认值, 右键数据操作,这个当前值设为默认值。我这样呢就不在课上给大家一一的进行操作了。 然后我们点击文件保存,比方说我们保存到桌面上,给他起个名字叫做第九节促吧,第九节促,然后单击确定。好到这呢,我们就把第九节课的内容啊给大家讲完了,下面我们再说一下第九节课的课后习题, 这三个习题呢都是与数组相关的,第一个呢要求用两种方法呀实现两个数组相加。第二个呢是要求使用放循环创建一个二位数组。 第三个呢就是数组的一个小练习,其中啊有五个小题。第一步呢就是产生五十个随机数,这个随机数的范围呢是零到十之间。第二步呢就是找 出这五十个随机数的最大值,最小值以及平均值。第三步呢是找出这五十个随机数的中位数。第四步呢就是提取第十到二十个中的十一个数据。第五个呢就是对这五十个随机数啊进行一个排序。 好,这个呢就是我们课后习题的内容,大家可以看看在底下能不能够做出来,做不出来的话可以到我们的一小时课堂初级教程里看一下课后习题的视频讲解, 课程的最后送大家一些免费的福利,欢迎大家关注我们的淘宝店铺,只要进入店铺就有奖,进入店铺后留言免费教程,赠送您一份来波 vivo 原创视频教程, 关注淘宝店铺之后还有奖,关注之后留言免费源码,再赠送您一份莱博威欧的项目源码。 淘宝店铺获取方式呢,有三种,一种呢是关注我们的官方微信公众号一小时课堂点 点这个自主购买里面有一个淘宝购买就可以顺利的进入我们的淘宝店铺。第二种方式呢,直接用手机扫一扫此二维码也可以获取我们的淘宝店铺, 当然你也可以直接在浏览器中输入这一个地址获取得到我们的淘宝店铺。进入淘宝店铺之后给客服留言就可以获得对应的免费的教程以及源码。 我们的淘宝店铺出售的都是 libovio 的原创视频教程,都是原创,都是精品,好教程不怕看。进入淘宝店铺之后您不要着急购买试看,满意了再购买。我们所有的 libovio 原创视频教程都可以在我们的官方 在线教育网站一小时课堂上进行免费的试看。进入一小时课堂的方式呢,有一有几种,一种呢是关注微信公众号一小时课堂,关注之后呢点这个在线课堂就可以进入了。 另一种方式是直接用手机扫一扫,扫二维码进入,或者是直接在你的浏览器中输入一小时点 net 也可以进入我们的在线教育网站, 欢迎大家关注收藏一下我们的一小时课堂,里面的 level 原创视频教程是经常更新的哟!好,谢谢大家。

今天总结一下放循环的用法。放循环函数位于函数选版的结构中,点击下放循环图标,然后将鼠标在程序框图中拖动,拖动到一个合适的大小,松开鼠标即可将放循环放置在程序框图中。 如果想要改变放循环的大小,也可以通过按住 ctrl 键同时在放循环中拖动鼠标来实现。 我们在使用 c 语言写 fo 循环时,要包括三个基本要素,初始设定,如爱等于零。循环条件,如爱小 a 十、更新表达式,如爱加加。 而来吧 vivo 循环结构中的爱已经实现了初始设定值,爱等于零和更新表达是爱加加的逻辑,也就是爱从零开始循环。一次加一,我们只需要再按上设定循环总数 数就可以实现。或循环设定循环总数 n 和循环技术 i 的数据类型都是有符号三十二位整形,有符号三十二位整形是计算机默认的数据类型,相比无符号三十二位整形处理速度更快。 由 n 的数据类型决定了负循环的最大循环次数就是二的三十一次方。我们将循环总数 n 设为十,然后将循环技术二连接到负循环的边框上,这时边框上会出现一个隧道符号, 我们在这个隧道符号上鼠标右键可以看到隧道模式分为最终值、缩影和链接三种。当前选择的是缩影,我们再将按连到边框上并选择最终值。接下来 我们用按创建一个含有两个相同元素的数组, 并且将数组连接到放循环的边框上,分别选择为最终值、缩影和链接。 最后将这五个输出分别增加一个显示空间, 并给这五个显示空间改一下标题, 重新排列向前面版的空间 运行一下程序,看看效果。通过前面版的运行结果可以看出,最终值输出的是付循环,最后一次循环计算得到的值 缩影是将放循环每次运行的结果作为一个元素组成一个数组,数值经过缩影输出的是一维数组,一维数组经过缩影输出的是二维数组。链接只能用于处理。数组 是将每次放循环运行的值连成一个数组,他改变的是数组的长度,不改变为数。 我们在隧道上点击鼠标右键,在隧道模式中,除了三种模式之外,还可以选择条件。我们为每个隧道添加一个条件, 然后增加一个偶数判断条件,也就是将二除以二去于等于零的判断,并将判断结果连到条件接线端, 运行下程序看结果。通过结果可以看出,最终值锁影和链接中只输出了偶数,也就是说,条件接线端可以控制当前 fo 循环的值是否输出。

大家好,今天来给大家演示一下我们用 nebula 做的一个通用视觉软件,那么这是它的界面,我们重新开始吧, 开始运行,那么这里面有一个加密狗以及硬件绑定的试用期的一个设置。 那么启动之后呢,首先会对 io 卡进行初始化以及注册状态的读取, 那么接下来我们看这些菜单,首先我们需要登录系统, 登录成功之后呢,首先新建一个系统,二零二三幺零幺八杠二, 那么这些是我们, 嗯开机运行, 这是我们已经有的这个加载过的这个模型做过的几种,我们做一个简单的例子, 那么首先我们做一个条件结构,然后开始, 那么这个开始呢?它可以可以把它设置为初始化为 ok, 也就是所有的这个后面的操作都是要在开始为 ok 的情况下才会去执行。 那么接下来是仿真一个图片,整些图片,我们选一下,找一个 这个目录啊, 选一张图,在这个图的界上,假设我们要去检测这个圆,这个圆,这个圆,三个圆心的终点以及这个卡尺,那这个间间距, 那我们可以用这种思路,首先我们要做一个定位,做一个模板,免费 创建一个模板, 我们以这个区域为模板啊,来创建 学习完模板,然后如果我们不设置这个区域,就默认以这个整个画面 为目标,嗯,这里面我们由于考虑到速度,这里面的模板匹配的方法用的是精度比较低,但是速度比较快的 n w 自带了, 我们要求至少要检测到一个,所以我们给他做一个限制,如果没有检测到一个啊,或者检测到多个,那么他都是 n g 的,那么另外我们还可以对他的位置角度 进行一个限定, ok, 那么接下来呢,我们再建立一个坐标系,这坐标系大家应该都比较熟悉,我们在做检测的时候,特别做测量的时候,这个坐标系是一定要有的, 那么接下来是检测员,在这个坐标系的基础上,我们来检测员从内到外, 从内到外, 那么要求至少要检测到一个圆, 然后继续检测其他的原, 从头到尾,这里写反了,这个字写反了, 这个也是要求要检测到一个圆, 这个我们要设置调用这个坐标器, 看看这里啊,要钓 这个坐标 c 一,那么最后一个我们做一个卡尺, 同样呢也是要调用这个坐标系,那么卡尺我们可以选择不同的方向,另外我们可以选选择显示哪些结果,那么这个卡尺我们给它做一个限制, 你说它的值,它的这个间隙是二十四啊,二十四,我们设置一个范围,我们认为它是 ok 的范围, ok, 那么在接下来我们看看 我们对 这个结果汇总,这里就需要用到逻辑运算,我们将这几个步骤的一个是模板匹配, 然后是原检测一二三卡尺, 那么这几个都是一个与的关系啊,与的关系就必须要满足这些都满足为 pass, 那么它的结果才是 ok, 那么相当于对我们这些步骤的结果进行了个汇总,那么接下来我们来设置这个 检测状态,检测状态是属于这个相机,最终它的结果是 o k s n g 啊,就是说我们要去统计它,汇总它 啊,那我们是以这个最终的逻辑运算的结果为结果,对吧?那逻辑运算就会是 ok, 他就是 ok。 那么有个前提条件,我们可以设置假设,说我是,呃,有一个 假设,说我是彩图成功了之后我才统计,才是算一次,对吧?可以选择 ok。 那么接下来的部分呢?我们做一个显示这个结构的显示啊,首先我们显示一个 ok 和 n g 啊,那可以,我们可以定义它显示在这些坐标上面,也就是我们某些操作的坐标上面, 也可以手动选择一个位置。然后 我们需要显示的是它的一个 结果啊,也就是我们这里逻辑运算的结果, 可以大一点试试。 可以。然后再显示一下我们的凉绿 数量啊,显示这个,在这里显示数量啊,显示两率 百分比,点一啊,三点一百分比啊,后面再加上一个百分号, 你这个字小一点, 然后再显示一个数量, 摆放个 d 啊,摆放啊,三 d, 在它的上面的部分 显示它的数量,然后再 在左边我们显示一下这个卡尺的结果,我们看卡在这个卡尺的结果 间隙 三点 摆放点 e f 单位 p i x 像素啊,像素 这个文字我们可以背景,我们可以把它设置为,哎,看看 啊,文字设置为绿色, 也可以再显示啊,显示 这个,你说我们在显示一个圆心,我们在哪个地方?在这个圆的第一个圆圆心,我们显示坐标 x 百分号,四点一, f y 百分号, 复制一下 啊,不行,这个要分开 原检测一的中心点 x 的坐标,对吧? 啊?再显示它的外坐标, 嗯,这个 y 我们在它的这上拼一个 十看看,哎,不对,他的下面偏移 三十吧。啊,这样子, 那么这个机种就做完了,今天我们来运行一下,可以先运行一次看看效果啊,那么这些都有, 我们这个快捷键是按下 f 十就运行一次,那么我们也可以设置这个相机, 我们是按每个相机来设置的,这个相机连续运行,我们看看 啊,这样有点有点快,看不太清楚,可以再加一个延时, 延时一秒保存,然后连续运行。 它这里面有有这个图,它的定位模板原理的位置是有问题的, 嗯,那这个模板匹配同时,那么这种 就把它判定为 n g, 判定为 n g 之后它的量率就会有变化, 那么这是今天我们给大家演示的这一个历程啊。啊,对,刚才这个间隙啊,这个颜色 ok 和 ng 的颜色它是有区别的 啊,那么那么这就是由 nebul ninvision 所编写的一个通用软件,嗯,今天的演示就到此结束,谢谢大家。



大家好,今天来给大家介绍一个比较综合一点的测试案例, 那么这个测试程序呢,主要是针对 fct, 呃这一类的一个测试设备进行了一个开发,那这个程序可以直接 呃拿到你 fct 的车项目去做,稍加修改就可以应用了。那这里面用用到我们之前讲过的一些技术 啊,自定义的空间,然后支持一面板的一个放大缩小啊,动态加载 vi, 静态加载 vi。 那么首先呢,这一部分的一个空间呢,是我们自定义的, 然后这部分内容呢是几种类型选择,呃可以根据你不同的几种来选择不同的一个配置文件啊。这边呢是一个单个循环周期的一个测试时间 啊,这个功能呢是 festop, 就是呃我其中有一个测试项目,测试失败以后,确定他是否停止还是继续测试, 那这个区域呢,是显示一个整体的一个 pass 或者是 fl, 下面呢是一个信息统计, 那一般来讲呢,我们嗯 cc 的测试设备的话,那这不用去也工具栏,然后这也不用去信息提示栏啊,甚至包括上面这一部分去是可以公用的。也就是说我们不同的项目,这一部分的呃空间 是不用变化的,那我们唯一要关注的是,呃中间这一部测试项目,不同的产品,它的测试项目呃有所差别,那我们需要改变的是这一步内容,这样的话,呃采用这样的一个结构的话,就可以大大的缩短了我们一个项目的开发周期。 那么下面我们来看一下整个程序的一个结构,那程序的结构也很简单,那首先呢主界面是用一个状态机来实现的, 第一步是加载一个空间的引用,把空间的引用呢传递到我的,呃,内里面,方便后面的其他函数的调用。那传递进去以后呢,他会跳转到一个爱豆里 里面,耳朵里面是一个试电结构,试电结构的话用来检测界面上按钮的一些操作,来响应按钮的操作。 那么点击了以后啊,启动停止配置,那点击了以后呢,他会跳到相应的一个分支, 呃,比如说这个配置分支的话,他跳到肯 fake 里面以后,他会静态的方式启动一个,呃,肯菲格的 vip, 那是这样的一个界面 启动以后就可以配置相应的一个参数,那么整个程序的一个核心呢?嗯,是在这边,丹丹尼克克就是动态对 vi, 那么这个动态对应 vr 的方式呢?我们前面也有讲过啊,这里面是直接调用了一个。 那采用这种方式的一个好处是,呃,我们每一次只需要根据不同的一个项目修改开始的 x 这个里面的一个测试功能,那界面的话,我们,呃不需要过多的去处理它, 只需要把开始 x 这个功能啊开发完成,那这个程序基本上就完成的差不多了,所以这样呢,可以大大的收减了我们一个开发时间。 那这个探索的话,我们是放到这个特斯特克拉斯里面,那每一次你根据不同的项目,然后去修改它, 就修改它,根据不同的设计项目修改修改呃这个测试分支,然后 然后这里面的话会自动的更新一些进度条,然后把测试的一个实际的测试值传递到前面版的一个栏位里面,然后会存储相应的 logo, 包括后面的一个统计数据。 这边的话,呃,拍到里面是一个面板,面板的话就是你, 呃,比如说用户管理,然后唱出配置,包括一些报表,那么你可以做一个统一的一个模板, 不同的项目的话他可以兼容。那这个地方,嗯,你在开发的过程中,那基本上也不需要做太大的一个改变。 ok, ok, 我们来 运行一下,看一下实际的一个效果啊,运行以后整个界面是这样,那么正常来讲,我们点击启动以后,他会调用泰式的 x 启动泰式 iphone 来启动这个测试序列,启动以后,那他会把结果更新了啊,这个表格当中,因为我们这个泰式的 iphone 包含了一些硬件的信息,我现在 这个电脑上没有装,那大家知道这个意思就可以了。那我们来看一下配置,我这个配置的话是做了一个虚拟的一个配置,我点击以后,那你可以在里面配置他的一些信息, 配置好了以后可以直接保存,然后点击关闭。那么这个时候我们来看一下,我们点击配置一个对话框以后,会弹出这个配置的页面,那前面版的话我们也可以去操作他,那这就是静态 vr 的一个好处。 现在我们把这个配置页面的话关掉,关掉的话我们再点击一下,点击一下啊,现在点退出按钮或者点击叉都可以把 停掉, 那么这样的一个 啊测试架构呢?嗯,基本上就讲解完了,那么今天的这个 s t 的这个测试程序框架就给大家介绍到这里 啊,给大家提供一个呃,参考的一个思路,也不一定非要按照我的这个设计方法去实现你的项目开发,实际的开发过程中会遇到各种各样的问题,那么大家可以根据自己的一个产品的实际的测试需求 做相应的调整。

今天我们介绍川口号搜索子程序,在自动化测试当中,如果使用的川口,那么电脑的川口号和设备的川口号要配得上, 那么电脑上有很多串口号,如果说你配对不对,那么他是设备是不会工作,但我们最好的方法就是让他自动搜索这里,我就做了一个自动搜索串口的指程序。我们先来演示一下, 这我们这里运行的时候,我们搜索到一个创可设备,而这里创可输出这里什么都没有,但是因为我们在我们的电脑上呢,现在 没有插其他设备,只有一个,嗯,本身电脑自带的有看不完,那么现在我插入一个蓝牙的一个嗯单果, 到现在已经看到我们有这个电脑上已经有科目七有这个单国的嗯连接的创可号,那么我们现在再运行一下, 你发现我们收到两个设备,而当看不起,他就已经显示到这里了,那这是怎么做到的呢?我们直接看 这个后面的程序框图,因为时间有限,那我就介绍快一点他整个窗口和搜索的实用设计思路很简单,首先我 发送这条指令,然后他就会把电脑上所有的串口呢全部搜索出来,搜索出来之后,我们通过一个呃佛循环,把这个嗯全部重新每一个去配置, 配置完之后呢,我们就看他的返回数,如果他有返回数,那就证明这两个配置成功,那么就把他这个配置的创可号,嗯直接复制到这个输出的这个短口, 如果没有的话,那么就重新再搜索搜索,直到搜索完成,如果都没有,那么他显示那就是没有窗口号,那么生我们也 不需要把所有的一个个的全部去收,如果只要我收,收到之后呢,只要我这个穿口号如果收到,我就可以在这里立马把这个货循环提前停止,所以就是这样的一个嗯,过程,那么 这个命令非常重要的,就这两点,我们首先要用支付串发送这条命令,这个指令,这个指令大家看一下,他是他的属性是正常显示的,所以这里我们在发送指令的时候呢,这个地方是很重要,一定要选对 啊,然后呢就选择微撒搜索这个,嗯,这个图标,这个图标在哪里呢?我们点右键,在仪器 io 这里有一个微撒,里面还 一个高级微商,在下面就一个微商查找资源就是这一个,然后按照我这个图上配置就就可以。然后收,收到之后呢我们这里有,这里有个收到的设备数量,他会在这里返回 有多少个?如果你一个他就返回一,如果有十个他返回十,我们现在是两个,那么收到之后我们就把他用这个佛循环, 首先把这个打开这个窗口,然后呢把窗口的这个设备的名称列出来,然后像这个名称有没有不重要了,我们只是 用来参考了,嗯,调试使用的啊,这个窗口的号是很重要的,然后我们通过这个窗口号, 我们来看看这个,嗯,书主里面到底有多大,有多少个,然后再用这一个活性化把它一个个的去做出来。然后我们 先四,从第一个开始收收到的一个四,然后我们要说一个 come 口,然后呢比如我四个第一,然后把它转换成这个数字, 再转换成文本。然后比如说一,他这里两个支付创追到一起,他就变成 come, 一,如果是二呢,他就变成 com, 二,做这个的目的呢,就是到了这个微商,嗯,资源这里呢,到时候 我们他的前面,他这里就是就会一科目一,科目二这么一路路,嗯,加上去,加上去之后, 然后我们这里对镜台进行一个配置,配置的话我们可以这个可以用默认的,比如我现在这里是用蓝牙,是幺幺五二零零,比如我也可以配置九千六,这是最最常用的。配置好之后呢,我们就写一条指定, 写一条指令进去,写条指令这里要做一个等待,嗯,这个很重要,一定要有一个等待时间,我这里设置两百毫秒,你也可以设置长一点或者是更短一点,根据自己的设备来定。 设置好之后呢,这里我们就有个窗口,嗯,自己返回的自己数,那么这个返回的自己数,我们用它来判断有没有搜索到,如果这个没有窗口,窗口也匹配不对, 那么返回自己说他就是零,所以说当他不等于零的时候呢,我们就知道他已经收到了。那收到之后我们就把这个串口号,为啥志愿名输出这里呢?他就会把这个号啊一路这么串过来,全部都 显示的,为啥这样输出就在这个位置,然后呢我们就 就发一个真的命令,然后结束掉这个循环,然后就把这个微闪关掉它。 但这里还有一个错误清楚程序这些东西呢,只是为了防止一些意外,之后我们就把那些错误清除掉就行了,这里需要特别介绍的就是在哪里啊?就是写入指令,这里, 这里呢这个属性,这里我们也要看看这个小指令的属性,我们双击他进入这里, 因为我现在用的是一个蓝牙的一个灯光,所以蓝牙大家经常会发送的是 at 或者是其他的 at 指令,嗯,然后 这里是正常显示,但如果你用的设备不是蓝牙的,打个比方是一个其他的别墅仪表,他很多都是用十六进字的,那你这里选十六进字, 而不要选正常的,然后把那个指令你需要的指令随便选一条写到这里就可以了,然后你点击他,嗯,就可以。我们现在基本上就已经配置好了,那么现在我们来运, 现在我们看到这里没有搜索到,那么我现在看看这个窗口啊,过来当我这里是有的,但是为什么没收到呢?我们在 看我刚才把这个创口号改成九千六了,因为蓝牙我这个是应该是幺幺五二零零,和他两个配置是不一样的, 再试一下,你看现在就已经搜索到了,所以说在配置窗口的时候呢,是根据你的设备来来配置 这个,有时候我说九千六也能收到,这个要看我用的什么设备啊,所以这这个东西呢,具体使用了什么设备就做一些小小的修改就可以了, 整个设计流程就这么简单。

这个视频接着讲程序框图,上个视频用到了连续运行,这个连续运行一般是调试的时候会用到。如果我们想在程序中循环执行逻辑,可以通过循环函数来完成。 在程序框图中,点击鼠标右键会弹出函数窗口,我们在程序框图中使用的函数都在这里。 将鼠标放在结构图标上,会弹出结构窗口,这里有 fo 循环、 y 循环、条件结构等。点击 y 循环,这时鼠标发生了变化。在程序框图窗口中按住鼠标拖动, 将需要放在外耳循环中的图标都框住,松开鼠标,这样就把这部分逻辑放在了外耳循环中,当然也可以向外耳循环中拖入逻辑或拖出逻辑。这时运行图标 提示出现了错误,点击一下运行图标,弹出错误列表,提示外要循环的条件,接线端未连线,也就说没有给外要循环设置停止条件。我们在外要循环右下角的循环条件上,点击鼠标右键, 然后点击创建输入空间,出现了一个停止图标,双击这个停止图标定位到了前面版的停止空间,这说明可以通过程序框图在前面版增加空间,这时运行图标显示正常 错误列表,提示没有错误,关闭错误列表,点击运行图标,程序循环执行,改下输入值,运行正确,点击停止按钮,停止程序。 v 二循环只是程序框图众多函数中的一个,接下来我们再讲几个函数。当前 v 二循环是以尽可能快的速度运行的,会占用比较大的电脑资源。 当前我们的程序并不需要运行这么快,可以在每次外循环中加入一个延时操作,类似于其他编程语言中的底内函数。在程序框图,点击鼠标右键,将鼠标放在定时图标上,我们先选择等待毫秒这个函数, 这函数就是起到延时的作用,也就是运行完上面的逻辑后,延时一定的时间,运行下这个程序,看看效果, 程序运行没有问题。这个等待毫秒的函数虽然时间 现了当前的功能,但是他有个问题,就是不知道每次 y 循环需要多长时间,因为 y 循环中其他逻辑的执行时间是不知道的。这时可以使用定时函数中的等待下一个整数倍毫秒函数。这函数类似于单片机中的定时器, 就是 y 循环每隔一定的时间运行一次,即 y 循环每次运行的时间是固定的,踏单位也是好秒。通过这个例子可以看出,会简单使用 y 循环还是比较容易的,但是要想熟练使用,需要不断的学习摸索。 另外这个外要循环左下角有一个标志 i 的蓝色框,这个 i 就是外要循环的运行次数,有时我们会用到,我们可以加个观测量看一下。通过这个观测量的数据类型可以看出,这是一个有 符号的三十二位整数。你可能会好奇,循环次数不可能是复数,这个 i 为什么不用无符号三十二位整数,这样能够表示更多的循环次数,这是因为有符号三十二位是计算机系统默认的数据类型, 相对于无符号数,他的运行速度更快。 vr 循环作为最基本的循环结构,首先要考虑的是他的运行速度, 掌握莱德威欧基本用法比较容易,但是真想弄透还是要花很多精力的,因为需要知道的细节非常多。莱德威欧入门的视频就讲到这,希望大家已经知道了莱德威欧的基本用法,接下来可以通过实力进行学习。

一个好的测试软件,不光要那个测试稳定,还要做的那个调试知道哪里能控制到哪里便于维护。看一下我做的那个新的调试界面, 这是设置喜好,所有的喜好参数设置设置 this is the 这边这边 啊啊, 你和他要不要 快点 成功?之前 我是 好冷。

仪器到手了,软件没有如何保存数据,导出波行,还要自动测试?废话不多说,直接上狠货!本期视频纳米软件隆重为你推荐三款可以轻松进行仪器控制和自动控制的测试软件,每款软件都能直戳你的痛点。 诞生于一九八六年的图形编程语言 lab view, 至今已经整整三十六个年头了,在编程语言历史长河中,已经算是爷爷辈的老牌古董。一九八四年的苹果化时代的图形化电脑 macintosh 的发布,引发了 lab view 的缔造者们的创新想法,要为测试工程师开发一款图形化的编程语言, 免去学习 vb 或者 c 文本语言开发痛苦,他们成功了引领了潮流。多年的开发语言残酷厮杀,成为测试测控领域的龙头开发语言,开创了一个崭新的图形化编程的新时代,并缔造了 ni 公司庞大的商业帝国。但是 从二零二零年开始,美国频频砍下软件断工的屠刀,华为的一代软件被断工是第一刀。紧接着哈工大、国防科大等理工类院校的 mataleb 软件也被美国断工。随后,在线 ui 设计软件 faker man 也宣布向华为、大江、海康、威视等企业以及大量的科研单位断工, 刀刀见血。为了应对这种威胁,我们除了发展和支持国产软件之外,并没有其他的道路可以选择。 是德科技 tisite 推出了全新图形化配置测试编程环境 bench view 软件,其目标并不是挑战 lab view 的测控语言的霸主地位,而是结合自己的硬件,提供便捷的圆形测试与验证功能。 基本功能如下,为仪器配置最常用的控制功能和测量,同时显示多项测量结果,只需点击几下, 便可轻松记录并导出数据和截图,实现更快分析。无需熟悉仪器编程知识,即可快速创建自动测试序列,获得更深入的仪器控制和测量解决方案。 ate cloud 平台是纳米软件自主研发的国产测试测量软件,被称为中国人自己的 lab view, 是目前国内最受欢迎的测试和测量软件。采用零代码文字语言拖拽编程, 可视化构建测试模型,支持子项目多层嵌套,分解复杂的业务逻辑、鼠标拖拽、结点和连线,可视化构建测试方案。 用户仅需知道测试流程,即可快速搭建。可远程测试。可视化报告设计功能,一键快速导出测试报告,支持大数据分析、图表导出等高级 功能。可视化修改,通过数据编码复制粘贴的快捷方式,可以实现报告数据的快速更新,测试数据能够以数值、表格、图表等形式自动插入报告。 本期狠货放送到此结束!以上软件的下载链接放在评论区了,请小伙伴们自取食用。


最近我们正在市场一款新产品,刚好需要一套测试字据,在接下来的几期,我将向大家介绍一下这套测试字句的具体制作过程, 就当是一次测试机的设计实力。 今天我将跟大家介绍一下这个测试的总的规划以及需要考虑的一些问题。 这就是我们要测的这个产品。这个上面这一块是一个 led 控制的,嗯,六版,这个是一个 wifi 模块,这是一个分六版 wifi 模块和这个。嗯,这个横流板我们有现有的测试字据,所以说不需要在额外做了,我们要做的就是这个分流板的测试字据。 整个分流板在生产过程当中是由十六块平板组成的,所以我们在测试的具体要求是这样的,他最好这从这个效率考虑了,最好一次性的把整个平板都测完。 第二呢要用气动测试。第三次,嗯,要有一些必要的保护功能,比如说我因为这个产品是在呃半成品测试,所以说有很多意想不到的问题,所以说一定要有保护功能。第四呢就是说测试数据 要保存到这个本地硬盘上面,但这一时也是一个可选项,会根据实际情况来做。第四呢是测试真做实可范的,有方便扩张 同类产品的测试,在未来如果有同类的,我们只需要更换这个测试真座和压板就可以了,整个测试机就可以共用。 接下来就是测试机的体积内要越小越好,以方便在生产线安排。那这个分流板的原理图是这样的, 左右两块是两路,他们是同时限同等功能,所以我介绍一路就可以了,整个 分流板的主要就是由这里输入一个控制信号,由外翻模块发出的,然后控制这个模式管导通, 当这个导通和截止,当这个模式管导通的时候,那么这一路灯将会被短路,所以说他就不亮,那么只有下面这这一路亮,当这个截止的时候呢,这一路这两路都会亮, 所以整个原理是挺简单的,那我们要实现的方法是这样,嗯, 就是我们主要是通过 wifi 来控制一个控制信号,所以说我们 要模拟一个控制信号,在这前两段,嗯,我们回到这个电路图来看,所以说控制方法我是模拟一个信号,比如说三点三伏或者五伏在这里, 然后呢他控制这个管道通,那我们需要在这一路上面我们需要采集这个电电压,这监控这端的电压就可以了, 那模拟信号呢,我可以通过一个继电器来试驾。那第二呢又是由于出于成本考虑呢?我们就是还是通过检测电压来实现。而且在整个线路当中, 大家看到在这个线路当中他有几个电压,这里是四百伏的一个电压,这里是十四点五到二十四伏的一个电压,所以这个电压是产品本身需要的供电电压, 我们在测试的过程当中,我们需要额外给他们供电。那么实现的方法就是我从这个四百伏通过几个电阻把它呃串联起来,然后分压得到这个是四点五至二十四伏 啊,再分一部分得到一个呃五伏左右的一个电压,然后我通过一点一个继电器在这里来切换它就可以实现了。 那么我们在生产过程中可能会出现的一些问题是,因为是半成品测试, 所以在生产过程中呢,经常会出现短路、开路或者是原器件损坏等现象,那么嗯,主要的问题是在短路过程当中,因为这个是四百伏的输入,所以说在短路的时候呢,他就比较大的电流, 那么很容易烧毁这个设备和这个嗯,产品,所以说我们需要把这个加一些保护电路啊,或者是穿一个保护灯泡,这里在整个回路当中,那么因为是又是 整体出整个平板测试,所以呢我们就必须对每一块产品要进行一个保护,如果每一个产品都穿一个保护灯泡呢?那我们总共十六个产品, 那么要穿十六个保护灯保,整个体积就会变得哎,很庞大,又达不到那个体积,越越越小越好这个要求。 那考虑到这一点呢,我们这里就大概设计了这么一个控制板测试机的控制板的一个原理处 大概就是这样的,那么这是一个产品的,那么这四百伏进来之后呢,我穿一个宝灯泡,然后通过几个电阻分压得到了这个 嗯,十四到二十四伏的这么一个供电电压,然后再得到一个控制电压,那么在这里就监控的信号这里也通过两个电阻取样,哪怕用仪表一个电压表就可以读到了,那我们可以通过多路来实现的, 这个应该是比较简单的,那么现在主要的一个实现难度就是说他要求一次性要测十十六个产品同时测,要完成测试,那么我们 一次册呢,我就需要三十二度采用,这样就变得比较复杂,那么至少要找一个三十二度的电压电压表来采用它, 那么实际上,嗯,三十二度电压表再加十六个产品的接线,再加上这个供电的接线,总共算下来差不多有 有九十多根线,所以说线路是结线是比较复杂,那么我们还是考虑到另外一个方法,送过一次性可以车四个为主, 然后测到之后呢就分布切换,这样效率可能会降低一点,但是整个测试呢,仪表就不用那么多,只需要一个八路的一个仪表就可以完成了。 现在要说的基本上今天大概就介绍这名戏,接下来呢还有一些比较,嗯, 比较多了一些细节需要考虑,所以说当我们差不多定型了之后呢,我会再跟大家介绍,今天就介绍到这里,谢谢。

从事虚拟仪器的朋友们经常会用到一款软件叫 love you, 那我手里一款呢? love you 宝典,他是啊涵盖了工程师十五年的工程经验,以及配置了七百多个 v i 案例,供大家去参考学习。那我们下一个视频会给大家演示 love you 去操作的。那 love you 是什么呢? love you 是一个类似于 c 语言的图形化编程语言的软件。那啊,我们这条视频如果满一百个人点赞的话,我们会从中 抽选啊,随意抽选一个啊优秀的观众,然后我们去送这本书啊。