线下实训
HOME
线下实训
正文内容
plc编程中M的编程 PLC的M究竟是什么,今天就来认识它
发布时间 : 2024-11-24
作者 : 小编
访问数量 : 23
扫码分享至微信

PLC的M究竟是什么,今天就来认识它

最近几天有某工友表示PLC编程中不用M和T。我发现大家有些观点有误,这段时间比较忙,但忍了很久,实在忍不住了,抽半天时间写篇文章。用不用先不说,首先得知道M和T究竟是什么?T有点特殊,先不谈,把M搞清楚了T就容易搞清楚。如果学过单片机或计算机原理或嵌入式等硬件课程的就不用看了,因为这是非常基础的概念,我今天不用电子技术的语言来说,所以语言会不太严谨,主要目的是用通俗易懂的语言让搞PLC的人听懂,请工友们手下留情不要把我脸打肿了。先说说我接触编程的过程,我是学硬件的,编程最先学的是51单片机和X86汇编,然后学C/C++,最后才学的PLC,编程掌握不好,即使到今天我也无法准确阐述什么是面向对象!先自己打脸,但这不影响我用PLC做项目。其实PLC是最像单片机的,完全就是单片机的硬件升级软件简化版本,扯远了!下图是西门子S7-200手册里关于存储器结构的介绍。左边这个RAM就是今天的主角。

下图是对数据存储器的定义:

下图来看数据存储区究竟有些啥,请注意看M区:

看了上图可能明白了,M存储区在数据存储区,数据存储区又在RAM中。RMA长啥样?

下图左上那个蜈蚣状的CY62256就是西门子S7-222CPU的RAM。

就是块集成电路,我还是看不懂!那就“拆”开给你看。下图就是内部结构:

没错,它就是一堆“房间”,32k字节。S7-222CPU使用了2k字节的存储空间,不管你是M还是T还是C,还是V,通通都在这里面。

那么如何在这一堆房间里访问找到我需要的那个她呢?看上图中A0---A14,这就是地址线,就是访问这些房间的地址,通过这些房间就能访问M、T、C、V等等。

那么M和V有什么区别吗?半毛区别都没有!除了把M区放到MCU高速缓存中的PLC结构,像西门子S7-200系列这样的都是放到一个存储芯片中的。

文章开头说过,T跟M还有点不一样。对的,因为有些PLC的有些T是由硬件产生的,那就是集成在MCU里的硬件定时器,比如西门子S7-300就有硬件定时器。那么C呢?C也有硬件计数器和软件计数器之分,硬件计数器同样是由集成在MCU里的硬件来完成的。当然,PLC已经做好了,把这些硬件T、C的数据都映射(复制)到RAM里了,我们直接访问RAM就可以了,不用关系那些硬件T和C。当然,如果你喜欢,PLC也是有指令让你能够直接访问这些硬件计数器的,比如台达就可以直接去读硬件计数器的当前值。

说了这么多如何证明M和V都是在一个芯片里呢?

那就是PLC提供了绝对地址访问功能,比如寄存器寻址,一个数据寄存器里存放的数据是一个地址数据,对的这个地址数据就是绝对地址,就是上图A0-----A14这个地址。再来看看国货之光汇川的PLC对存储空间的定义,下图:

这个就更清晰了,M和D有区别吗?半毛区别都没有!其实还是有区别的,唯一的区别就是M区能让我们很方便地进行位寻址。

那么不用M可以吗?当然可以!不过,既然M和D(V)没有区别,我们为什么不用?我也不知道!那么某工友说的所谓标准化编程究竟是什么呢?我没买过他的资料,厂家的手册难道不香吗?

从他的描述中,我的理解是,哪里是不用什么M、T,估计他宣扬的只是全部用局部变量,不用全局变量,这样程序在进行移植的时候不用关心存储空间的分配,直接交给编程软件的编译系统来完成。M也可以定义为局部变量呀!为什么不可以用?因为有些使用通用MCU的PLC,位寻址能力很弱,位寻址的时间比字寻址时间还长!

那么如何做到不用M呢?

很简单,你把V(D)数据地址当成一个M来使用就可以了。但大厂PLC使用的CUP都是自己设计的,保留了很强的位寻址和操纵能力。那么放弃使用M和T有实际意义吗?只要大厂还提供直接的位寻址和操纵能力,就没有必要放弃!特别是梯形图,天生的就非常适合位寻址,用M的编程方式。这么香干吗要放弃!

编程方法,三菱PLC中辅助继电器M的妙用

普通电路所使用的是一堆元器件,有交流接触器、中间继电器、热继电器、时间继电器等,那么为什么PLC一个就可以搞定呢?因为在PLC内部中有各种各样的 软元件,比如说辅助继电器(M)、定时器(T)、计数器(C)、高速计数器(C C235开始)、数据寄存器(D) 、其他,当然还有重要的输入继电器(X)和输出继电器(Y)。

PLC内部软元件

下面就介绍一下PLC内部软元件-辅助继电器M

关于辅助继电器(M),我们要了解其功能,在PLC中它的作用是内部的一个状态标志,在普通电路中就是中间继电器的角色,这么说是不是更好了解?

那么在一个PLC中到底有多少个这样的辅助继电器呢?

以三菱PLC FX3U为例

FX3U内部M点分布

在这款PLC中一共有辅助继电器8192点, 这些辅助继电器按照用途被分为了三种,分别为通用(一般)辅助继电器、保持辅助继电器、特殊辅助继电器。

通用(一般)辅助继电器

通用继电器也就是一般用的继电器,在FX系列PLC中,除了输入继电器(X)和输出继电器(Y)的元件号采用八进制地址编号外,其他软元件的元件号均采用十进制 。通用辅助继电器没有断电保持功能 ,如果在PLC运行时电源突然中断,输出继电器和通用辅助继电器将全部变为OFF,若电源再次接通,除了PLC运行时为ON状态以外,其余的均为OFF状态。

在这款PLC中从M0~M499共500点 ,普通辅助继电器无断电保持功能,具体使用方法,以下图为例,最经典的就是解决双线圈的问题,如果一般指令输出时,会引起结果错误, 而使用双线圈就可以解决这个问题。

普通辅助继电器

保持辅助继电器

某些控制系统要求记忆电源中断瞬时的状态 ,重新通电后需再现其状态,锁存辅助继电器可以用于这种场合。在电源中断时用锂电池保持RAM中的映像寄存器的内容 ,或将它们保存在EEPROM中,它们只是在PLC重新通电后的第一个扫描周期保持断电瞬时的状态。

在这款PLC中共有断电保持用辅助继电器M500~M1023(500点),M1024~M7679(6656点) ,为什么这款PLC有两种保持用辅助继电器呢?因为M500~M1023这500点 是可以通过编程软件进行设置变为普通继电器,而M1024~M7679 是不可以进行转换的,是专用辅助继电器!

也是以例子说明保持辅助继电器 的使用方法:

当触碰左限位X0,右驱动指令M500接通,如果突然停电,M500保持停电前状态,再次接通电源,仍然是右驱动状态 ,而一般辅助继电器,如M499就无法到达此要求。

断电保持辅助继电器

特殊辅助继电器

特殊辅助继电器它们用来表示PLC的某些状态,提供时钟脉冲和标志(如进位、借位标志等),设定PLC的运行方式,或者用于步进顺控、禁止中断、设定计数器等。

这款PLC中共有特殊辅助继电器M8000~M8511共512点 ,它们是预置好功能的控制继电器,同时PLC中还有特殊的数据寄存器(D),是和特殊辅助继电器辅助使用的,点数过多,功能表无法列举完全,举例说明!

如M8000~M8003,其中M8000、M8002是a点接通启动的继电器,而M8001和M8003是b点接通启动的继电器 ,下面是时序图,参照时序图是不是看得更明白

M8000在PLC RUN的情况下一直接通,也就是上电监控状态;

相反M8001是STOP状态下接通,断电监控状态。

M8002为初始脉冲接通a接点,在RUN状态下一个运行周期内ON ,一个周期过后停止,再次上电才能重新接通;

M8003为b接点接通,在PLC RUN状态下一个运行周期内OFF ,一个周期过后变为ON状态和M8002状态相反。

M8000~M8003特殊辅助继电器

以上就是三种PLC辅助继电器(M)的介绍以及使用方法,有疑问可以留言私信。

文/电气小行家

相关问答

plc里面m指令怎么用?

PLC(可编程逻辑控制器)的M指令是用来控制内部的继电器状态的。在使用M指令前,首先需要了解继电器的状态和作用,将需要控制的继电器连接到PLC的输入/输出端口...

plc里的m什么意思?

plc里的m的意思是状态寄存器。状态寄存器又名条件码寄存器,它是计算机系统的核心部件——运算器的一部分,状态寄存器用来存放两类信息:一类是体现当前指令执...

plc中m是什么意思?

PLC中M是Memory的英文缩写,指PLC内部存储器。它由一系列的存储单元组成,用来存储PLC运行时所需的数据和参数,如I/O信号、定时器、计数器、开关量等的状态信息...

三菱PLC字符M表示什么意思?

在三菱PLC中,字符M通常表示内部的继电器(Relay)或存储器(Memory)地址。M地址通常用于存储和控制程序中的逻辑状态,例如开关状态、计数器值、定时器值等。M...

台达b系列触摸屏宏里面$怎么和台达PLC里面的M连接啊?

1)plc编程软件通信设置里面双击directlinkusb,挑钩现在plc都有穿透功能,plc跟屏用线连接起来,usb插在屏上面,就可以通过屏穿透屏将plc程序传送...1)pl.....

西门子m和v指令区别?

西门子S7-200系列PLC中,M和V是两种重要的内部寄存器类型,它们在功能和使用上存在显著的差异:1.存储内容侧重点不同:V寄存器主要用于存储中间变量数据,如用...

西门子plc程序%M2678什么意思?

所有的plc中的,m点都是内部寄存器,比如西门子中的m10.0,他的地址就是m10.0,比如i6.0就是输入点的地址。你需要了解一下plc使用的常用的变量,如v1.0,m2.0,i...

plc编程指令m000什么时候用?

1:自锁保持输出功能是一个置位对应一个复位,而指令SET和RST是不需要一一对应的。例:一个程序中可以有一个SETY000,而可以有多个RSTY000。当然也可以有多个SET...

PLC中的M是寄存器又是中间继电器?

m1.0是计算机化的寄存器,一定要具象化了解你可以把这个控制系统用继电器模拟电路搭建一下再用plc程序比较,会发现m1.0可以模拟中间继电器之类的实体硬件,plc中...

PLC中的X、Y、M、S、T、C各代表什么意思?

没人回答那我就献丑啦X是plc中的输入,y是输出,m是辅助继电器,s是状态继电器(不是用在步进指令的时候s和m的用法相同),t是计时器,c是计数器没人回答那我就献...

 抓小三软件  2009快女 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

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

热线

188-0000-0000
专属服务热线

微信

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