PLC最全编程算法,不收藏就亏大了!
1、开关量也称逻辑量,指仅有两个取值,0或1、ON或OFF。它是最常用的控制,对它进行控制是PLC的优势,也是PLC最基本的应用。
开关量控制的目的是,根据开关量的当前输入组合与历史的输入顺序,使PLC产生相应的开关量输出,以使系统能按一定的顺序工作。所以,有时也称其为顺序控制。
而顺序控制又分为手动、半自动或自动。而采用的控制原则有分散、集中与混合控制三种。
2、模拟量是指一些连续变化的物理量,如电压、电流、压力、速度、流量等。
PLC是由继电控制引入微处理技术后发展而来的,可方便及可靠地用于开关量控制。由于模拟量可转换成数字量,数字量只是多位的开关量,故经转换后的模拟量,PLC也完全可以可靠的进行处理控制。
由于连续的生产过程常有模拟量,所以模拟量控制有时也称过程控制。
模拟量多是非电量,而PLC只能处理数字量、电量。所有要实现它们之间的转换要有传感器,把模拟量转换成数电量。如果这一电量不是标准的,还要经过变送器,把非标准的电量变成标准的电信号,如4—20mA、1—5V、0—10V等等。
同时还要有模拟量输入单元(A/D),把这些标准的电信号变换成数字信号;模拟量输出单元(D/A),以把PLC处理后的数字量变换成模拟量——标准的电信号。
所以标准电信号、数字量之间的转换就要用到各种运算。这就需要搞清楚模拟量单元的分辨率以及标准的电信号。例如:
PLC模拟单元的分辨率是1/32767,对应的标准电量是0—10V,所要检测的是温度值0—100℃。那么0—32767对应0—100℃的温度值。然后计算出1℃所对应的数字量是327.67。如果想把温度值精确到0.1℃,把327.67/10即可。
模拟量控制包括:反馈控制、前馈控制、比例控制、模糊控制等。这些都是PLC内部数字量的计算过程。
3、 脉冲量是其取值总是不断的在0(低电平)和1(高电平)之间交替变化的数字量。每秒钟脉冲交替变化的次数称为频率。
PLC脉冲量的控制目的主要是位置控制、运动控制、轨迹控制等。例如:脉冲数在角度控制中的应用。步进电机驱动器的细分是每圈10000,要求步进电机旋转90度。那么所要动作的脉冲数值=10000/(360/90)=2500。
PLC编程算法(2)——模拟量的计算
1、 -10—10V。-10V—10V的电压时,在6000分辨率时被转换为F448—0BB8Hex(-3000—3000);12000分辨率时被转换为E890—1770Hex(-6000—6000)。
2、 0—10V。0—10V的电压时,在12000分辨率时被转换为0—1770Hex(0—6000);12000分辨率时被转换为0—2EE0Hex(0—12000)。
3、 0—20mA。0—20mA的电流时,在6000分辨率时被转换为0—1770Hex(0—6000);12000分辨率时被转换为0—2EE0Hex(0—12000)。
4、 4—20mA。4—20mA的电流时,在6000分辨率时被转换为0—1770Hex(0—6000);12000分辨率时被转换为0—2EE0Hex(0—12000)。
以上仅做简单的介绍,不同的PLC有不同的分辨率,并且您所测量物理量实现的量程不一样。计算结果可能有一定的差异。
注:模拟输入的配线的要求
1、使用屏蔽双绞线,但不连接屏蔽层。 2、当一个输入不使用的时候,将V IN 和COM端子短接。
3、模拟信号线与电源线隔离 (AC 电源线,高压线等)。
4、当电源线上有干扰时,在输入部分和电源单元之间安装一个虑波器。
5、确认正确的接线后,首先给CPU单元上电,然后再给负载上电。
6、断电时先切断负载的电源,然后再切断CPU的电源。
PLC编程算法(3)——脉冲量的计算
脉冲量的控制多用于步进电机、伺服电机的角度控制、距离控制、位置控制等。以下是以步进电机为例来说明各控制方式。
1、 步进电机的角度控制。首先要明确步进电机的细分数,然后确定步进电机转一圈所需要的总脉冲数。计算“角度百分比=设定角度/360°(即一圈)”“角度动作脉冲数=一圈总脉冲数*角度百分比。”
公式为:
角度动作脉冲数=一圈总脉冲数*(设定角度/360°)。
2、 步进电机的距离控制。首先明确步进电机转一圈所需要的总脉冲数。然后确定步进电机滚轮直径,计算滚轮周长。计算每一脉冲运行距离。最后计算设定距离所要运行的脉冲数。
公式为:
设定距离脉冲数=设定距离/[(滚轮直径*3.14)/一圈总脉冲数]
3、 步进电机的位置控制就是角度控制与距离控制的综合。
以上只是简单的分析步进电机的控制方式,可能与实际有出入,仅供各位同仁参考。
伺服电机的动作与步进电机的一样,但要考虑伺服电机的内部电子齿轮比与伺服电机的减速比。
小编整理了PLC资料大全,有需要的小伙伴可以分享收藏领取哦!
仅为部分资料展示,关注并私信【plc】即可免费领取以上所有资料~
免责声明:本文转自网络,版权归原作者所有,如涉及作品版权问题,请及时与我们联系删除,谢谢!
如何获取 电气热门资料?
操作指引如下!
PLC编程练习题
本文以下是PLC编程初学者,练习题目,
学会以下课题,基本已经可以独立编写逻辑控制程序了;
1、按起动按钮,接触器KM工作15秒钟,KM停止。 2、按起动按钮,延时15秒钟接触器KM才工作,按停止按钮KM方可停止。 3、按起动按钮,延时15秒钟接触器KM1才工作,KM1工作20秒钟停止后,接触器KM2工作;按停止按钮KM2方可停止。 4、按起动按钮,延时15秒钟接触器KM1才工作,KM1工作20秒钟停止后,接触器KM2工作,也使KM2工作20秒钟停止,延时15秒钟后,使KM1再次起动运行;按停止按钮使任意在运行的接触器停止。 5、按起动按钮,延时15秒钟接触器KM1才工作,KM1工作20秒钟停止后,延时15秒钟后,接触器KM2工作,也使KM2工作20秒钟停止,延时15秒钟后,使KM1再次起动运行;这样反复循环3次后停止;按停止按钮使任意在运行的接触器停止。 6、启动按钮X1,停止按钮X2,输出Y0的单回路控制程序。 7、编写一个M0=1后,延时15秒接通Y2,M0从1变0,延时18秒断开Y2。 8、用一个输入点(X3),控制一盏灯(Y1)。按3次灯亮,按3次灯灭。 9、正反转程序。正转启动:X10,反转启动:X11,停止按钮:X12;正向接触器Y3,反向接触器:Y4。 10、星-三角启动程序。启动按钮:X13,停止按钮:X14。主接触器:Y5,星:Y6,三角:Y7。 11、编写双联开关的程序。开关,X4,X5;灯Y1 12、设计一个按钮控制正反转的程序,即按一下正转,再按一下反转。 13题、 1、按X002,Y001点亮,延时5秒钟后Y002点亮,Y001熄灭。 2、在Y002亮的前提下,延时10秒钟后按X003三次后,Y003点亮,Y002关闭。 3、在上面按X003最后一次,Y002灯关闭的同时,计数器开始按每秒1次计数,且每秒Y004闪亮1次,计数15次后全部熄灭,并可以重复开始的动作。 14、设计一个单按钮控制两台电动机顺序启动的程序,即按一下电动机M1启动,再按一下电动机M2启动;当按下停止按钮时,两台电动机同时停止。 15题、 1、按X001按钮,Y001延时2秒钟后点亮,再延时3秒钟后,Y002点亮。 2、在Y002亮的前提下,按X002,进行10秒钟延时,在这10秒时间内,按X003五次(10秒钟外操作无效),Y003点亮。 3、在Y003点亮后,计数器开始按每秒1次计数,且每秒钟Y004闪亮一次,计数15次后,灯Y004点亮,按X000灯全部熄灭。 16、设计一个报警程序,当报警信号成立时,实现报警,要求如下:蜂鸣器鸣叫,警灯闪烁,闪烁为亮2S,灭1S,警灯闪烁15次后,自动结束报警。 17题、 1、按X000,Y000点亮,延时5秒钟后Y001点亮, Y000熄灭。 2、在Y001亮的前提下,按X001,Y002闪亮(闪亮周期为1秒钟),延时4秒钟后,Y001,Y002全部关闭。 3、在上面灯全部关闭的同时,计数器开始按每秒1次进行计数, Y003也按每秒1次闪亮(闪亮时间为0.6秒),计数10次后,Y004点亮,Y003关闭,按X002,灯全部熄灭。 18、设计一个报警程序,当报警信号成立时,实现报警,要求如下:蜂鸣器鸣叫,频率为2HZ;警灯以1HZ的频率闪烁;10S钟后,若没有按下复位按钮,则蜂鸣器鸣叫频率变为5HZ,警灯以10HZ的频率闪烁。当按下复位按钮后,停止报警。 19题、 1、按X001,Y002点亮,延时4秒钟后Y003点亮,再延时3秒钟Y004点亮。 2、在Y004亮的前提下,按X002,Y005以周期为1S闪亮4次后,Y002、Y003、Y004、Y005全部关闭。 3、在上面灯全部关闭的同时,Y006、Y007交替点亮(每只灯间隔为0.5秒);按X003,Y006、Y007熄灭,Y000点亮,按X003,灯全部熄灭。 20、设计一个报警程序,当报警信号成立时,实现报警,要求如下:蜂鸣器鸣叫,为一长音(响2S),一短音(响0.5S);警灯以1HZ的频率闪烁,当按下复位按钮后,停止报警。 21题、 1、按X001,Y001延时5秒钟后点亮,再延时5秒钟后Y002也点亮。 2、在Y002亮的前提下,按X002,Y003点亮,并进行10秒钟延时,在这10秒时间内,按X003三次(10秒钟外操作无效),Y004点亮。 3、在Y004点亮后,计数器开始按每秒1次计数,且每秒钟Y005闪亮一次,计数15次后Y006点亮,Y005关闭,按X004,灯全部熄灭。 22、设计一个两台电动机顺序控制程序,即按下启动动按钮,M1启动,延时3S后,M2自行启动;按下停止按钮,M2停止,延时3S后,M1自动停止;若按下急钮,电动机立即停止。 23题、 1、按X000,Y000点亮,延时4秒钟后,Y001点亮。 2、在以上条件下,延时10秒钟后,按X001三次,Y002点亮,Y000,Y001灯关闭。 3、在上述Y000、Y001灯关闭的同时,计数器开始按每秒1次进行计数, 且每秒钟Y003闪亮一次,计数10次后,灯全部熄灭。
相关问答
PLCST语句编程for语句的一个小问题J:=101;FORI:=1TO100BY2DO...
[最佳回答]每一次循环,变量I+2呗,直到I>100时,for循环结束
西门子PLC中程序=的含义?
您好,在西门子PLC中,程序=表示将程序中的一个值(可以是数字、字符串、布尔值等)赋给一个变量。例如,程序a=5将数字5赋给变量a。这是一种基本的编程语句,用...
PLCX000=X0吗,同理X001=X1吗,是为了编程方便,打一个X0,电脑出来的就是X000?
前段标识X代表PLC的实际输入点,Y代表实际输出点,这些都与PLC输入输出的面板指示灯对应,比如,输入点的第一个点有信号输出,面板指示灯X0亮,则程序内部的X0点...
欧姆龙plc编程指令>=SL怎么用?
在欧姆龙PLC编程中,">=SL"是一个比较指令,用于比较两个数值的大小。它的作用是判断一个数值是否大于或等于另一个数值。使用该指令时,需要将要比较的两个数值...
施耐德编程%mw399:=10是什么意思?
赋值语句,含义是把10赋给地址为%MW399;在施耐德PLC编程中,直接引用地址相当于默认该地址作为一个整数型变量。%MW是施耐德模拟量输出模块和中间寄存器地址的表...
plc程序怎么指定输入的参数加一?
在PLC(可编程逻辑控制器)程序中,要将输入的参数加1,您可以按照以下步骤进行:1.创建一个变量:首先,在PLC程序中创建一个变量,用于存储输入参数和加1后的...在...
欧姆龙plc时间比较指令=d怎么赋值?
欧姆龙=d是双精度浮点比较指令,不支持直接赋值。只能比较地址。跟时间没有关系。需要赋值的话需要先赋值到某个比如DM地址,再指定dm地址进行比较。可编程逻...
西门子200PLC编程软件中符号表的注释为何有些是1有些是空白?...
西门子200PLC编程软件中符号表的注释为何有些是1有些是空白?求解谢谢!和符号表的作用是什么啊?举报主板芯片组Intel3人讨论8780次围观关注问题写回答讨...
西门子PLC编程中,触点指令中的>=B>B等等都是什么意思?
你好,在西门子PLC编程中,触点指令中的>=B、>B等等是比较运算符,用于比较两个操作数的大小关系,并根据比较结果返回一个布尔值(True或False)。->=B表示大...
库卡机器人怎么写浮点数给plc?
库卡机器人(KUKARobot)和PLC(可编程逻辑控制器)通常用于自动化系统。确保机器人和PLC之间的数据传输正确是至关重要的。浮点数通常是指带小数点的数字,如3...