课程中心
HOME
课程中心
正文内容
码 plc编程 「PLC编程与应用」你知道什么是格雷码?
发布时间 : 2024-10-06
作者 : 小编
访问数量 : 23
扫码分享至微信

「PLC编程与应用」你知道什么是格雷码?

定位控制是自动控制的一个重要内容。如何精确地进行位置控制在许多领域里面有着广泛的引用,例如机器人运动,数控机床的加工,医疗机械和伺服传动控制系统等。

编码器是一种把角位移或者是直线位移转换成电信号(脉冲信号)的装置。按照其工作原理,可分为增量式和绝对式两种。增量式编码器是将位移产生周期性的电信号,再把这个电信号转换成计数脉冲,用计数脉冲的个数来表示位移的大小,而绝对式编码器则是用一个确定的二进制码来表示其位置,其位置和二进制码的关系是用一个码盘来传送的。

下图为一个仅作说明的三位纯二进制码的码盘示意图

一组固定的光电二极管用于检测码盘径向一列单元的反射光,每个单元根据其明暗的不同输出相对于二进制数1或者0的信号电压,当码盘旋转时,输出一系列的三位二进制数,每转一圈,有八个二进制数从000~111每一个二进制数表示转动的确定位置(角位移量)。图中是以纯二进制编码来设计码盘的。但是这种编码方式在码盘转至某些边界时,编码器输出便出现了问题。

例如:当转盘转至001到010边界时(如图所示)这里有两个编码改变,如果码盘刚好转到理论上的边界位置,编码器输出多少?由于是在边界,001和010都是可以接受的编码。然后由于机械装配的不完美,左边的光电二极管在边界两边都是0,不会产生异议,而中间和左边的光电二极管则可能会是“1”或者“0”假定中间是1左边也是1,则编码器就会输出011,这是与编码盘所转到的位置010不相同的编码,同理。输出也可能是000,这也是一个错码。通常在任何边界只要是一个以上的数位发生变化时都可能产生此类问题,最坏的情况是三位数位都发生变化的边界如000~111边界和011~100边界,错码的机率极高。因此,纯二进制编码是不能作为编码器的编码的。

格雷码解决了这个问题。下图为一格雷码编制的码盘。

与上面纯二进制码相比,格雷码的特点是:任何相邻的码组之间只有一位数位变化。这就大大的减少了由一个码组转换到相邻码组时在边界上所产生的错码的可能。因此,格雷码是一种错误少的编码方式,属于可靠性编码,而且格雷码与其所对应的角位移量是绝对唯一的,所以采样格雷码的编码器又称为绝对式旋转编码器。这种光电编码器已经越来越广泛的应用于各种工业系统中的角度,长度测量和定位控制中。

格雷码是无权码,每一位码没有确定的大小,因此不能直接进行比较大小和算术运算,要利用格雷码进行定位,还必须经过码制转换,变成纯二进制码,再由上位机读取和运算。

但是格雷码的编制还是有规律的,它的规律是:最后一位的顺序为01、10、01…,倒数第二位为0011,1100,0011…,倒数第三位为00001111,11110000,00001111,……倒数第四位为0000000011111111,1111111100000000,…..;,等以此类推。

下面是四位编制的格雷码对照表

往期优秀文章回顾:

变频器、伺服故障查询,PLC案例、资料和免费视频,就你不知道~

指令表(IL)、梯形图(LD)都是PLC 的常用编程语言?图文详解

PLC 是一种工业控制计算机,其软件必然是通过编程语言来编辑的。

目前 PLC 常用的编程语言有梯形图、指令语句表和顺序功能图。功能块图和结构文本高级语言则存在于某些PLC中。

一、指令表(IL)

指令语句表也叫助记符或列表,是基于字母符号的一种语言,类似于计算机的汇编语言。

这种编程语言是用一系列操作指令组成的 语句表将控制流程描述出来,并通过编程器或者编程软件送到PLC中去,指令语句表是由若干条语句组成的程序,语句是程序的最小单元。一个操作功能是由一条或若干条语句来完成的。PLC的操作指令系统比计算机的汇编语言简单很多。但表达形式类似。也是由地址、操作码和操作数三部分组成,关于FX2N的具体操作指令待讲解程序编制时再作介绍。

下图为—指令表程序(FX2N PLC)

若果把指令表的逻辑关系写成逻辑表达式则为:

Y0=(X0+Y0)* X1

不同品牌的PLC其指令表的形式是相同的,但是指令的符号表示,各编程元件表示则相差很大。

指令表编程语言是最基本的程序设计语言。它具有容易记忆便于操作的特点,它可以用最简单的编程工具—手持编程器进行编程。它与其他语言多有一一对应的关系,而且,一些其他语言无法表达的程序用它都可以进行表达。它的缺点是阅读困难,其中的操作功能很难一眼看出,不便于工控人员之间进行交流和沟通

早期,在编程软件普及前一般都是先用梯形图设计程序,然后再手工编译成指令表程序,最后用手持编程器将程序送入PLC。现在,编程软件已经普及,在编程软件上,我们只要编好梯形图程序,软件会自动编译成指令表程序。所以,我们今后重点是梯形图编程语言的学习和编程软件的操作。对指令表编程语言则不作进一步讲解。但是,PLC的各种操作指令的学习则是必不可少的编程基础。

二、梯形图(LD)

梯形图编程语言习惯上叫梯形图。其源自继电控制系统电气原理图的形式,也可以说,梯形图是在电气控制原理图上对常用的继电器,接触器等逻辑控制基础上简化了符号演变而来的,

由于PLC在结构上,工作原理都和继电器控制系统截然不同,因而他们之间必定存在着许多差异。初学者可以通过继电器控制电路图切入梯形图,但一旦入了门,则必须完全离开继电控制电路图

下图为根据指令表这一节中的指令表程序所画出的梯形图,其功能和指令表程序一样,但理解却容易多了,电工师傅们一看就知道,这是一个电动机起、保、停控制程序

和指令表编程语言一样,尽管都是梯形图,但各个厂家PLC对梯形图的画法还是有差别的。对最基本的逻辑控制指令差别并不大,但对功能指令(实现数据操作的指令)的表达上差别非常大。这也是为什么学习三菱PLC后再学习西门子S7-300/400,很多人感到不好学的原因之一。

梯形图语言优点非常特出,形象、直观、易学、实用,电气人员容易接受,是目前所有PLC都具备的编程语言,也是用的最多的一种PLC编程语言。

(未完待续,下一节内容为顺序功能图、功能快图、结构文本),电工小琦原创,未经授权不得转载,违者必究!

往期优秀文章回顾:

电气工程师的PLC基础应用实例:S7-200 SMART如何实现喷泉控制?

相关问答

plc程序指令表怎么写?

PLC程序指令表是一种用于编写PLC程序的表格,它包含了各种指令和操作码。在PLC程序指令表中,每个指令或操作码都与一个特定的功能相关联,并且需要指定输入和输...

plc的编码器编程方式?

1.以下是plc编码器编程的方式。2.在使用编码器进行位置检测时,需要对编码器进行初始化和配置,并将其与PLC进行连接。具体的编程方法可以参考西门子PLC编程...

台达plc编程中校验码怎么算?

MODRDS1S2N指令S1即上面K1,变频器的地址S2即上面的H2101,读取数据的地址N即上面的K6,读取数据的长度,规定K1≤N≤K6,K6意思是连续读取H2101,H2102......

plc报警程序怎么编写?

编写PLC报警程序需要考虑以下几个步骤:定义报警条件:首先需要确定哪些条件会触发报警,例如某个设备的温度超过设定值、某个传感器的读数异常等。设计报警逻...

plc怎么写加密程序?

打开samartPLC编程软件找到文件菜单点击打开2在文件菜单中选择项目点击打开3然后勾选对项目加密保护4输入两次相同密码进行加密保护。5退出程序再次登录时...

plc编程是什么?

PLC编程是一种用于数字计算操作的电子系统,专为工业环境应用而设计。它使用可编程存储器,存储用于执行逻辑运算,顺序控制,定时,计数和算术运算等操作的指令...

欧姆龙plc程序写入过程?

1、打开相关主页,通过菜单栏选择在线窗口来点击PLC写入这一项。2、下一步来到一个新的界面,需要选择相关文件并点击执行按钮。3、这个时候会弹出是否执行PLC...

步进驱动器怎么用plc程序编写出来.怎么编程?

步进控制方式可以使用脉冲+方向,现在就以脉冲+方向控制方式介绍一下接线。以EH2的Y0口(晶体管输出型PLC)作为脉冲输出口,Y1作为方向输出口,台达PLC输出口是...

买了一个plc自己不会编程怎么办?

可以从两个方面考虑第一种;直接找会plc编程的师傅来帮你完成你自己想要的程序。第二种;可以自己学习编程语言。根据自己买的这个PLC的型号,安装对应的编程软...

plc用c语言怎么进行编程?

你好,PLC(可编程逻辑控制器)可以使用多种编程语言进行编程,其中包括C语言。以下是使用C语言编程PLC的一般步骤:1.确定PLC型号和规格:PLC有多种型号和规格...

 赵又廷 高圆圆 搜索  老甲a明星赛 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部