粉丝29.3万获赞114.2万

大家好,我是曹公,这个视频呢,我们来讲一下模拟量输出的一个实力,咱们上节课呢,讲了这个 p l c 啊,如何控制模拟量,然后呢我们再重复一下啊,啊,尤其是强调一下咱们如何做这个模拟量的输出啊,比如说这里是一个 p l c 啊,它,我这个 plc 呢,它有两路模拟量输出,对吧?两路模拟量输出,然后这儿呢有一个 a g n d, 这个是个公共端啊,这个呢叫 a o 零,这个呢叫 a o 一,对吧?两路啊,独立的。 然后怎么去控制咱们的模拟量呢啊?我上节课讲了哈,我们这个是零到四千,就是说你想 控制某一路的模拟量啊,你要把这个零到四千的数值啊,去复制给对应的数据计算器啊,对应的我这个 p l c 呢啊,第零路模拟量数数呢是八二八零, d 八二八零,然后第一路呢就是 d 八二八幺 啊,也就是说你把零到四千的数值复制给它啊,你就控制了这个 a o 零的一个输出电压啊,复制给它啊,你就控制了 a o e 的一个输出电压 啊,是这样子的,然后零到四千啊,咱们这个 p l c 呢,会把它转化成零到十伏的一个模拟量输出啊,是这样子的,咱们今天呢要做一个 什么样的一个小案例呢?就是通过 p l c 的模拟量来输出,控制变频器的转速啊,比如说我们有这么一个小案例啊,通过模拟量的零到十伏输出, 然后呢控制变频器的转数是零到五十赫兹, 可以吧?啊,就是通过我们零到十伏啊,就控制变频器零到五十赫兹去转, 这个时候啊,比如说我们这个例子呢,就按照 a o 零这个通道,我们使用 a o 零这个通道,这个时候呢,我们就要给这个八二八零啊,去负值就可以了啊,给它什么值,它就输出一个什么样的电压啊,也就是说什么呢?零到四千的一个数值, 咱们的 p l c 呢,会出出一个零到十伏,然后呢它代表的呢就是零到五十赫兹,那么我们可以算出来什么呢?咱们算出来每赫兹啊,需要多少数值?就是四千除以五十 是什么呢?八十对吧?就是相当于我们的数值里边是八十,代表他的一赫兹每赫兹啊,是八十,那零点一赫兹呢啊,就是八,对吧?零点一赫兹就是八嘛, 对吧?啊,我们记住这个八十哈每赫兹啊,需要八十啊,这么一个数就可以了。好,那么我们应该怎么接线呢啊?怎么接线呢啊?接线呢?其实需要接两根线, 比如说这是 p l c 啊,这是变频器,有一根 a o 零啊,这个是 d 零通道的输出模拟量输出,然后接到这个变频器呢啊,输入端, a i 啊,输入端啊,它的输出接它的输入,然后呢还有一根叫公共端,对吧? a g n d 啊,有一个公共端,要有个参考嘛,要不然的话 啊,这一个模拟量,这一个领导师傅是针对谁的?领导师傅啊,就是对应于咱们的公共端啊,领导师傅是这样一个信号,所以说对于我们这个案例来讲呢啊,要接两根线 啊,要接两根线。好,接下来呢,我们就讲一下啊, p l c 的一个实际程序的一个讲解 啊,操作一下,这个呢就是我们的一个 p l c 程序啊,我们给大家讲一下啊,稍微的讲一下啊, m 八千。首先我说一下 m 八千,我们之前讲过 m 八千到 m 八五幺幺啊,对应的呢是特殊继电器, 它每一个继电器呢都有特殊的功能,然后这个 m 八千是什么意思呢?只要 p l c 运行, m 八千就是一, 只要 p l c 不运行安,八千就是零啊,就是它是一个 p l c 运行的这么一个啊,继电器啊,运行就是一,不运行就是零。 好,所以说呢,当我们运行 plc 程程序的时候呢,这个是长通的啊,一直导通啊,只要是我们程序里边写上了这个 m 八千了,就代表 啊,这儿是一直通的啊,就这意思,因为你如果直营听听图的话,这 m 八千肯定就是一嘛, 对吧?一直通,然后呢这个程序呢,每一个周期呢,都会执行啊,这三行,对吧?看看第一行干了什么啊?第一行是把这个地灵里边的数值啊,咱们地灵咱们待会就通过强制好吧,强制强制一个什么呢?就是多少赫兹 啊,给他一个浮点数,多少赫兹,比如说啊,零点一赫兹,零点二赫兹啊,一点五赫兹啊,都可以随意去设置 啊,我们刚才不是说了吗,每赫兹啊对应的咱们的那个数值来说,模拟量的数值来说是八十啊,怎么算的呢?就是四千除以五十赫兹, 对吧?因为因为五十赫兹对应四千嘛,我每赫兹呢就相当于八十,所以说呢,我把咱们要设置的一个赫兹的一个数值呢,乘以一个八十啊,然后放到这个第二和第三啊里面来 啊,然后呢这一个里边的数值呢,就是咱们要设置到啊八二八零里面的一个值啊,八二八零就直接控制模拟量的输出口了,对吧?然后呢把这个值算好之后 啊,如果说我们的范围是零到五十的话,这个 d 零输入零到五十的话,那么这样呢,肯定是零到四千,对吧?然后呢 再经过中间一步啊,这个指令是干嘛呢?是把这个第二和第三啊这里边放的这个啊浮点数把它转化成整 啊,因为八二八零呢,他是一个整数的一个存储器,必须把它换成整数啊,在这里呢他可能存的是什么呢啊?四千点零啊,对吧?或者是啊三 三千一百二十三啊,点五啊,这都有可能,我们呢要把它转化成一个整数啊,通过这个指令把它转化成一个整数,放在第四计算器里面, 然后呢咱再把这个第四啊,把它放到这个八二八零的,传送到八二八零的这个计算器里面啊,这样的话呢,这个实际的模拟量输出就会根据八二八零里面的值啊,去有一个对应的电压输出。 好,咱们现在呢就把这一个程序啊下载到 plc 里面去, 打到监控模式。 好,大家看啊,现在我们 d 零的这个浮点数呢是零,对吧?所以说 d 二乘出来也是零,然后经过这一个啊整数浮点数转化呢啊,也是零啊,这里还是零,对吧?这个时候呢,咱们看一下啊, 这个时候呢我们去量一下,看到吗?这个是我万用表,对吧?现在打到一个电压模式啊,电压档,我量一下对应的这个 a o 的输出,好吧, a o 零的一个输出,我看看是多少,因为现在咱们八二八零,大家看这里吗?这个八二八零, 现在这里是零,对吧?八二八零是零的话,那咱们的输出呢?应该也是个零服,对吧?也是个零服,咱们去量一下啊,那个把这个万用表呢拨到这个直流电压档, 然后呢?这个要去找一下啊,这里要去找一下,找什么呢?就是找这个 a o 零和 a g n d, 对吧?在这里要找一下哪个段子 a o 零和 a g n d。 好,我找到了啊,这个是 a o 零啊,这个是 a g n d, 我量一下啊,大家看一下。 好,大家看一下啊,我现在量的这个 a o 零和 a g n d 啊,咱们现在给这个八二八零,给的是数值零,然后量出来呢是九毫伏,对吧?零点零零九伏, 九毫伏啊,咱们模拟量呢都是有偏差的,有误差的,对吧?这个误差呢很小啊,完全可以接受。好,现在这个量出来的电压啊,是基本上没问题,对吧?好,咱们现在呢再强制一下啊, 咱们比如说现在先强制零到五十赫兹,对吧?我们先给他个五十,先让他五十赫兹,大家注意啊,这个福这里要一定要是这个数据类型 flow 啊,咱们先给个五十点零零啊,五十点零啊,这输五十也一样啊,设置好看,按照我们这个计算,是不是他应该输出一个四千, 对吧?输出四千的话,我们再看量一下这里哈,正常来讲的话应该是个十伏,对吧?我们看看输多少啊, 看了吗? 十点零一,哎,还算 ok 哈,还算 ok, 对吧?有个十毫伏的一个偏差啊,没问题啊, ok, 好,我们呢再测试别的啊,再测试别的,比如说我一赫兹 啊,别有一赫兹了啊,咱来点别的吧,来个五赫兹吧,五赫兹的话, 五赫兹的话应该是一幅吧,对不对?五十赫兹是十幅,那五赫兹就是一幅啊,咱们量一下啊,看看怎么样 量一下,哎,看吧,一点零零九,一点零一零,对吧?差不多就是九毫伏的一个偏差啊,还是不错的,还是不错啊,跟我们,跟我们想象的,跟我们推,跟我们测算的基本一致啊,有一个几毫伏的偏差属于正常, 对吧?然后我们再给个多少伏呢?再给个多少赫兹呢?给个啊,五点五吧,我们来个五点五好不好? 五点五,五点五,看看这是多少啊?啊?一点一啊,对啊,正好基本上一样,一点一,五点五的话就是跟五的话,就就乘以一个一点一呗, 是吧?乘以个一点一啊,就是他这电压呢,也是一点一啊,正常啊,对了, 是吧?大家能理解吗?各位啊,如果说咱们啊真的去接一个变频器的话,是不是只需要在程序里边给这个地灵给他复制就可以了? 咱们给地零复值,对吧?然后呢根据咱们这个程序呢,它就会自动算出来一个值,给到这个八二八零,然后呢就对应的自动的咱们那个模拟量输出呢,就对应一个 零到十伏的电压,咱们变频器呢,接收到这个电压之后啊,前提是咱们变频器也是对应的设置零到十伏,对应零到五十赫兹,然后呢咱们变频器接收到这个电压信号之后呢,它就会啊根据这个电压信号来输出一个对应的一个频率, 对吧?这样的话呢,就实现了我们 p、 l、 c 里面对于变频器的一个模拟量控制,其实本质上来讲,其实本质上来讲呢,就是给八二八零去负值啊,怎么计算出来一个?根据咱们的频率 啊,计算出来一个数值给到八二八零就可以了,对吧?啊?这个程序呢,大家可以在啊课后去练习一下啊,研究研究,体会体会这个过程。好,这个视频呢,我们就到这里。

这里的五条程序是四 a、 d 模拟量模块的控制程序。 第一条程序是设置四个通道为电压输出,凸是写入的指令项,模拟量模块写入数据 k 一是模块一,为什么是 da 模拟量模块是 模块仪的编号,在前面的视频有讲解, k 零四 b f、 m 零号存储器 h 零,它是十六进字数 h 零零零零 四个零。 k 一是代表写入一个数据, 那么这条指令写入四 dm 能量模块,它就是设置 四个通道,全部为电压输出。我们看一下四 d、 a 模拟量模块的手册。首先我们找到 b f、 n 存储器的说明,这里就是缓冲存储器 b f m 零号。 b f m 存储器,它是设置四个通道的输出模式,默认值是 h, 四个零就是我们程 器上的 h 零,它是十六进制。 b f m 零号存储器的详细说明。 b f m 零号存储器是设置输出模式。 十六进字数 h, 它后面会有四个数,那么第一个位数代表的是通道一。 每个通道它可以设置三种模式,一、二、三三种模式。 如果你设置成零,那么他就是电压输出模式,负十伏到十伏,我们看这边第一个微 数,他对应的是同道一,第二个位数对应的是同道二,第三个位数对应的是同道三,第四个位数对应的是同道四。 那么 h 四个零就是代表四个通道,它都是设置成电压输出。我们举个例子,比如你这里的数是 h 零零零幺,第一个一 代表的就是通道一,他现在的是电流输出模式,四毫安到二十毫安,通道一就设置成了电流输出, 然后通道二他的值是零,那么还是电压输出模式,通道三也是电压输出模式,通道四也是电压输出模式。再举一个例子,现在是 h 二幺零零, 那么通道一是电压输出模式,通道二也是电压输出模式,通道三呢, 它的值是一,那么它就是电流输出模式四到二十毫安,那么通道四它的值是 二,它的是电流输出模式零到二十毫安。所以我们程序上面的 h 零就是 h 零零零零, 通道一、通道二、通道三、通道四全部设置成为电压输出 负十到十伏,它输出的电压就设置成了负十到十伏。我们注意看一下 这里的说明,出厂默认值是 h 四个零,如果你新买到的四点 a 模拟量模块,它的默认值就是 h 四个零,那么它就是四个通道的是电压输出模式。 那么如果你拿到的是一块二手的是 dm 模拟量模块,那么你就要自己去 重新设置一下 bfm 零号存储器,把它的输出模式设置成你所需要的。

上一个视频我们设置了四 ad 模拟量模块的四个通道,全部为电压输出,现在我们要设置通道一,输出五伏的电压,使用凸写入指令。 k e 是模块一,就是是 d a 模拟量模块, k e 是 b f m 一号存储器, 我们看一下一号存储器它是什么?我们打开四 da 的用户手册,这个手册我们可以在三菱电机自动化的官方网站下载,我们找到 b f m 一号到 四号存储器的说明。 b f m 一号缓冲存储器,它是通道一的输出数据,出此值是零。 b f m 二号存储器,它对应通道二的输出数据。 我们只要往 b f m 存储器写入数据, 从负的两千到正的两千, 把这个范围的数据输入缓冲存储器,它就会输出负的十伏,你知道 正的十伏的电压,下面的 b f m 三号,它对应的是通道三的输出数据, b f m 四号对应的是通道四的输出。我们看程序,这是 b f m 一号存储器,对应的就是通道一, 我们现在给他的数字是 k, 一千就是实际质数的一千,对应的电压是五伏, 那么把一千的数写入 b f m 一号存储器,那么它输出的电压就会是五 伏。为什么一千的数字量对应的电压是五伏呢? 这里的计算我们前面的视频也有讲解,中间的这个点,它的数是零,这个点的数是两千,正的两千,这边是负的两千, 正的两千,对应的值就是正的十伏电压,那么在它的中间点一千, 对应的数据是电压的中间点五伏,所以我们输入一千的数字量, 那么它的输出值就是五伏,如果你的输入值是两千,那么它的输出电压就会是十伏, 那么你输入负的两千,那么它的输出电量就是负的十伏。 这里的计算过程我们前面的视频也有讲解,所以我们的程序里 输入一千这个数,它的电压就是五伏。再看下面这条程序,这里的是 b、 f、 m 二号缓冲存储器,输入的数字量是两千,那么它输出的电压就是十伏, 没有看图,两千的数字量对应的电压就是十伏。再看第三条程序, b、 f、 m 三号存储器对应的就是通道三,我们用的是存储器 d 六十, d 六十里面的数现在是零,所以通道三输出的电压就是零。只要我们往 第六十里面写入数据,它的范围就是负的两千 到朕的两千。 因为我们从上面已经设置了四个通道,它的电 压范围是负十伏到正的十伏,所以数字量的范围就是负两千到正两千。下面的 k 四又是 b、 f、 m 四号存储器,对应的是通道四,通道四用的是 d 六十二存储器,它的数值也是 零,所以通道是他输出的电压也是零伏。他的程序编写过程就是先设置 通道是输出电压还是电流,就是选择他的输出模式,然后给你需要的通道设置数字量,然后他就会输出你所需要的电压。




大家好,我是曹公,这个视频呢,我们来讲一下模拟量输入的一个简单实力分析。 首先呢我们这个案例呢,是使用的咱们的可变电阻器啊,来做了一个简单的一个小案例啊,主要给大家讲解一下这个模拟量输入的一个使用方法啊,使用方法 啊,咱们上节课呢,也讲了,咱们模拟量啊,应该怎么去控制啊?其实就是不同的通道啊,对应有不同的一个啊,计算器对吧,我们读计算器里面的值啊,就通过运算就能算出来咱们到底是多少伏的一个信号, 对吧?啊,这个呢是一个模拟量到数值的一个转化啊,咱们这个可变电阻器是个什么东西呢?大家应 该啊,滑动变阻器啊,也叫滑动变阻器啊,就是一个电阻,然后呢给他接一个电压,对吧?比如说十伏啊,十伏这类零伏,然后呢 这里是连在一起的啊,通过旋转这个东西让它变动啊,然后呢 他这里的电压啊就会变化,对吧?分得的电压就会变化啊,这个就是咱们可变电阻器的一个基本原理啊,基本原理啊,咱们这个案例呢,就通过这个可变电阻器来模拟一个模拟量输入的信号, 怎么接线呢?怎么接线呢?我们这一个案例呢使用的是啥呢啊?使用的是模拟量的输出,模拟量的输出啊,给他供电啊 啊,给它供电,供个十伏,这里呢是基因地,基因地啊,接到零伏,对吧?或者叫 a 基因地吧啊,模拟的基因地啊,这个呢是 a o 零, 是模拟量输出,给他个十分供电啊,然后呢模拟量输入呢,还接到这里来啊,这里是 ai, 这个是我们 p l c 版的模拟量输入口,然后呢随着我们去转动这个旋钮,滑动变速器,对吧?它的 b 电压呢,会在零伏和十伏之间, 对吧?啊?变化啊,变化,所以说呢,我们就根据这一个东西呢,来模拟一个模拟量的输入啊,零到四伏的一个模拟量的输入,但是这种做法呢,其实也有缺点啊,也有缺点,因为它主抗不是很匹配 啊,所以说误差会偏大一点,误差会偏大一点啊,不过不影响我们理解这个模拟量的一个功能啊,模拟量输入的功能。好,我们接下来呢就看一下这个程序 啊,给大家看一下啊,这个是我们的滑动变速器,对吧?一共接了三根线啊,一根呢是 a 进行 d 啊,是参考点,还一个呢是 ao 零啊,还有一个呢是 ai 零啊,模拟量的一个输入的和一个输出的这个输出的为,为什么接过来呢? 咱们是主要是让这个输出啊,咱给他强制付一个十伏啊,让他能输出十伏,然后呢我这样子再去调这个滑动变速器的话呢,这个对于这个输入来讲呢,就是一个零到十伏的一个变化的信号 啊,就是为了这个原因。好,我们先看一下这个程序啊,先讲一下 m 八千啊,一直早通, 然后这个八二六零是什么东西呢?八二六零是咱们接线的 a i 零这个模拟量输入通道,对吧?他对应的一个特殊数据计存器啊,他会把零到十伏的一个模拟量电压啊,线性转化为 零到四千的一个数值啊,八二六零里边就有这个零到四千的数数值,对吧?咱们先把这个数值啊,先传送到地灵里面去 啊,然后呢第二步呢,咱们这个 d 零啊,把它转化成一个辅点数,为什么要转化成辅点数呢?因为我们之前不是算过了吗?如果是零到十辅啊,对应零到四千的话,那么的话呢,它每一个数值对应 呢是二点五毫伏,怎么算呢?就是十伏除以四千吗? 这就看出来每一个每一个一啊对应的一个电压值嘛,啊,十毫伏啊,十伏换成了毫伏,就是 就是一万毫伏,一万毫伏除以四千啊,就是二点五毫伏,二点五毫伏,也就是说咱们啊,通过 把这一个转化出来的一个数值,跟这个二点五毫伏相乘啊,就知道这个输入的是多少毫伏的一个电压了, 对吧?大家看啊,首先八二八零啊,八二六零里面的值啊,传送到 d 零零 b 零呢,再转换成小数,因为我们接下来就跟二点五这种小数这种浮点数进行相乘,所以说一定要把这个零到四千这个值呢,转化成一个啊,零到四千点零的这么一个浮点数啊,占用两个 啊,数据计算器,对吧?第二和第三啊,转化好之后呢,再把它乘以一个二点五,对吧?乘以二点五, 然后第四这边是个什么呢?是个 ai 零的一个电压信号了,只不过它显示的是一个毫辅啊,多少毫辅, 如果说我们想让他显示多少伏呢,就再给他除以一个一千,除个一千啊,这个第六这类显示呢,就是对应的 ai 零这个端子的一个啊,福特为单位的一个数值了,一个电压值, 对吧?啊?咱们这个案例呢,就是把一个叫什么呢?叫咱们模拟了一个输入信号啊,把它转化成咱们的一个豪服的一个信号,豪服的一个数值看一下啊,还有就是一个福特的数值,看一下, 对吧?如果咱们是一个别的,比如说压力传感器的输入信号呢?啊?你这里要做不同的处理,对吧?这里要做不同的处理啊,要把它转化成一个,比如说把为单位的一个信号 啊,也是很容易的,对吧?咱们以后还会有更复杂的案例啊,模拟章的案例还会有更复杂的啊,在这里呢,咱们主要是为了让大家感受一下这一个 啊,感受一下最基本的这个原理啊,所以说没有把这个案例做的很复杂啊,咱们先学习学习更底层的东西,对吧?把基础先打牢,它 以后的话呢会有更加复杂的案例啊,给大家讲解啊,这个程序呢就是这样子啊,它主要呢就是把咱们的一个, 把咱们的一个实际的一个电压啊,转化成一个电压数值啊,放在咱们的 plc 程序里面啊,一个计算机里面。好,我们来把这个程序下进去, 打到监视模式。好,然后呢我们第一步要做啥呢?我们第一步哈,我们先把咱们的那个模拟量输出给它,复制一个四千,让它输出十伏, 对吧?咱们主要先把这个事做好啊,给那个八二八零,八二八零对应的是 a o 零嘛?啊,我们先给他个四千,让他输出十伏啊,这样子的话呢,那个输出的地方就输出十伏的一个电源了。好,大家看 我呢,现在是拧到最底了,现在的话呢,我猜测这个模拟量的输入的话,应该是个零伏左右。零伏左右,看一下啊, 模拟量的输入通道零,咱们看看现在是多少啊?啊?现在确实是零,对吧?零服 灵符,然后咱们这个转化出来呢,是十二,看到了吗?十一到十二跳动啊,这个呢是一个正常的一个偏差啊,这个是正常的一个误差啊,没有关系,模拟量呢本身就容易有误差, 对吧?这个只能说把误差尽量减小啊,这个有误差是正常的。好,我们现在呢,我来拧一下这个东西啊,咱拧一下,然后电压呢?给到那个模拟量输入口的电压呢?会渐渐的增加的,对吧?我们让他增加到一千左右啊,一千左右, 好,现在是一千,对吧?一千的话他应该对应的是二点五伏,对吧?应该是对应的二点五伏,我们实际测量一下, 大家看了吗?二点四八九啊,跟这个二点五伏差十毫伏,对吧?啊?基本一致啊,二点五伏,然后大家看,如果说我们这个通道这里啊,给了一个二点五伏的时候,大家看这里经过咱们刚才的那个程序的一个运算 啊,这个第六这里看到了吗?这里是不是显示一个二点五伏啊?二点五,然后呢这个第四这里呢显示了一个毫伏,对吧?两千五百毫伏, 是吧?好,我们再接着拧一下啊,拧一下,拧到哪里呢?拧到两千左右吧,两千左右,两千左右,大家看 两千左右啊,然后两千左右呢,他应该对应的就是五伏嘛,这个 d 六这里就显示的是五伏哈,我们再看一下这边啊,再看一下这边, 看了吗?是不是?是不是我们测量万用表测量这里是五伏,给了一个模拟量五伏的输入信号,然后呢啊,他转化 画出来是两千的一个数值啊,然后呢又经过我们这个程序的运算,把它显示成一个五幅这个例子,我们是不是通过这个例子的话就能够非常深刻的去理解 啊?咱们的模拟量的输入啊,他不同的电压啊,怎么转化成这个零到四千的一个数值, 对吧?啊,这一个过程呢,它是 p l c 自己做好的啊,我们只是把这个值给取出来就可以了,把这个值取出来之后呢,我们要知道啊,怎么样根据这个值去换算出来它实际的电压,然后呢进而换算出来 啊,他比如说是压力传感器,对吧?他对应的一个压力值啊,或者流量传感器啊,对应的流量值啊,这个呢就是我们软件里面做一些数数学处理就可以了啊,这个东西呢 还比较好理解,对吧?其实我这个板子哈,我这个板子模拟量的一个使用的非常简单啊,他每一个模拟量的每一个模拟量通道都对应一个啊,看这里啊, 那么每一个模拟量通道无论是输入还是输出都对应一个什么呢?特殊数据计算器啊,只需要去操控这个特殊数据计算器,就可以控制对应的模拟量的一个输入和输出了。如果是原装的三菱的话啊,你如果加那个扩展模块的话, 用起来会复杂一些啊,会复杂一些啊,我这个呢就相对简单一点啊,但是大家最重要的是理解什么呢?是理解啊,这个零到十伏线性转化为一个数数值的时候啊, 你要能够理解就行啊,这个用法说实话还不是说最关键的啊,最关键的是要理解这个模拟量跟咱们程序里边的数字量数值是怎么样去关联起来的。 好吧啊,大家呢自己去练习一下这个案例。好,这个视频呢,我们就到这里。