PLC的3大重点编程算法,电气人都该掌握
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编程算法(二)——模拟量的计算
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编程算法(三)——脉冲量的计算
脉冲量的控制多用于步进电机、伺服电机的角度控制、距离控制、位置控制等。以下是以步进电机为例来说明各控制方式。
1、步进电机的角度控制。首先要明确步进电机的细分数,然后确定步进电机转一圈所需要的总脉冲数。计算“角度百分比=设定角度/360°(即一圈)”“角度动作脉冲数=一圈总脉冲数*角度百分比。”
公式为:角度动作脉冲数=一圈总脉冲数*(设定角度/360°)。
2、步进电机的距离控制。首先明确步进电机转一圈所需要的总脉冲数。然后确定步进电机滚轮直径,计算滚轮周长。计算每一脉冲运行距离。最后计算设定距离所要运行的脉冲数。
公式为:设定距离脉冲数=设定距离/[(滚轮直径*3.14)/一圈总脉冲数]
3、步进电机的位置控制就是角度控制与距离控制的综合。
以上只是简单的分析步进电机的控制方式,可能与实际有出入,仅供各位同仁参考。
伺服电机的动作与步进电机的一样,但要考虑伺服电机的内部电子齿轮比与伺服电机的减速比。
PLC中重要的三个点:开关量、模拟量、脉冲量。只在搞清楚三者之间的关系,对于掌握PLC就不会有太大的问题。
学好PLC必须掌握的三个典型程序实例!
一、控制输出程序
1.等效控制输出
输出仅取决于控制输入现状态。
2.长效控制输出
控制输出不完全取决于输入的现状态,还与输入的历史有关。输入对输出有长效作用。
3.短效控制输出
它的控制输出也不完全取决于输入的现状态。其输入对输出仅有短暂的作用,故称短效输出。
二、单按钮起停程序
1.单按钮即时起、停程序
a)OMRON PLC; b)三菱PLC;
c、d)西门子PLC;
e)和利时PLC; f)AB PLC
下图所示程序也具有同样的功能。只是这里用的是触点先并后串。脉冲信号用微分指令生成。
<第1例>
<第2例>
<第3例>
<第3例续>
2.单按钮短按起、长按(超过1s)停程序
上述单按钮起、保、停梯形图程序,是起、是停,容易“糊涂”。其实,完全可使用按钮按下不同的时间,去区分是起还是停。
3.单按钮长按(超过1s)起、短按停程序
a – OMRON PLC程序;b – 三菱work2 软件PLC 程序
c – 施耐德Unity Pro XL软件PLC程序;d – 西门子ST7软件PLC 程序
三、求公因数程序
求公因数欧几里得的这个算法,如用表达式表达,则是:
a)OMRON PLC; b)西门子PLC; c)三菱PLC;d)和利时PLC
求两个整数的公因数子程序
子程序,用以实现上述花括弧内的算法。
a)OMRON PLC; b)西门子PLC; c)三菱PLC; d)和利时PLC
求两个整数的公因数主程序
主程序,用以实现上述花括弧外的算法。
结语
弄清以上问题不是本文的重点哦~从中能对PLC程序有较具体的认识,那就很棒了。为编程做准备,根据问题再去学习相关算法,在算法实例化中进一步熟悉基础知识。如此反复循环,不断提高,将使你的编程进入新的境界!
相关问答
plc程序中的步怎么计算?
在PLC程序中,步是指一系列的操作步骤或指令,用于完成特定的任务。步的计算通常取决于程序的复杂度和功能需求。在编写PLC程序时,要先确定需要执行的操作步骤,...
三菱PLC检测两个相邻脉冲之间的时间然后计算测速程序怎么写?
一个脉冲不好算,如果算一段时间里的脉冲是不是会更好呢?时间短一点可以更接近瞬间转速。可以试试SPD指令:1.对于测速,主要用于三菱PLC的SPD指令(测速),该...
求助:可否用PLC程序计算流量累计值?
可以的,首先需要把瞬时流量采集到plc中来,然后在中断中调用累计程序,例如累计流量=(瞬时流量+累计流量)/3600这个是流量单位是xx/h的,如果是xx/分钟的话就是...
西门子plc伺服控制实例?
以下是一个基于西门子PLC的伺服控制实例:假设我们需要使用PLC来控制一个伺服电机,让它以不同的速度运行。1.系统硬件配置我们需要一个增量式编码器(Increm...
基恩士PLC编程的问题,计算除法时,有小数该怎样处理?
我有时的做法是把被除数倍乘放大。在基恩士,应该用到临时数据存储器TM00,TM01。在手册描述中“余数存入TM01”.仔细看看编程手册,在软件上模拟一下。我有时...
plc编码器测速计算公式?
速度测量方法用定时中断测前一次计数和本次计数差值,乘以定时中断的频率,再除以编码器分辨率就是转速了。假如本次中断计数器计数值是vd4,上次计数值是vd0,...
plc编程时间计算公式?
在PLC编程中,计算编程时间的公式是根据以下几个因素来确定的:1.程序规模:程序规模指的是PLC中所编写的逻辑代码行数或指令数量。通常情况下,程序规模越大,...
plc程序运算错误与硬件有关吗?
严格的说PLC程序运算错误和硬件是没有关系的,但是程序的编写是要充分的考虑硬件的特性,才能保证程序的正确运行!我说两个简单的例子:1,就是你参考一个旧的P...
plc怎么计算实时速度?
plc速度的计算方法。用定时中断测前一次计数和本次计数差值,乘以定时中断的频率,再除以编码器分辨率就是转速了。假如本次中断计数器计数值是vd4,上次计数值...
三菱PLC计算1+100的值结果存在D1?
1.是的,结果存在D1。2.这是因为在三菱PLC中,可以使用指令进行数值计算,并将结果存储在特定的数据寄存器中。在这种情况下,可以使用加法指令将1和100相加,...