PLC编程时常用的5个编程技术方法
PLC 的编程方法大体上有 5 种:经验法、解析法、图解法、技巧法及计算机辅助设计法。
(1)经验法 :
运用已掌握的成功设计经验,结合实际的情况,选择与实际情况类似的一个或若干个成功的程序,或具有一些典型功能的标准程序作为“样机”,对“样机”逐一修改,直至满足新的任务要求。在工作过程中,应多收集与积累这些“样机”,从而不断丰富自己的经验。
(2)解析法 :
PLC用于逻辑控制的编程方法可根据组合逻辑或时序逻辑的理论,并运用相应的解析方法,对其进行逻辑关系的求解。然后,再根据求解的结果,或画成梯形图,或直接编写指令表。解析法比较严密,可以运用一定的标准,使程序优化与算法化,并可避免编程的盲目性,是一种比较有效的方法。
(3)图解法:
图解法是靠画图进行PLC程序设计。
常见的主要有3种方法:梯形图法、波形图法及流程图法 。
梯形图法 是最基本的方法。无论是经验法,还是解析法,若用梯形图编写PLC程序,就要用到梯形图法。
波形图法 很适合于时序控制电路。它先把对应信号的波形画出,再根据时间用逻辑关系去组合,就可以很容易地把电路设计出来。
流程图法 是用框图来表示PLC程序的执行过程及输入条件与输出间的关系。在步进控制中,用它进行设计是很方便的。
(4)技巧法
技巧法是在经验法及解析法的基础上,运用技巧进行编程,以提高进行编程的质量。巧妙地使用PLC所提供的多种功能指令进行编程,是对已有经验的“升华”,做到熟能生巧,实现创造性的编程。
(5)计算机辅助设计
PLC可通过上位连接单元与微型计算机连接,并运用微型机进行联机辅助编程。计算机辅助编程,应有相应的软件做支持。现有的编程软件可把梯形图翻译成指令表。编程时,可先在计算机屏幕上设计梯形图,然后再将该梯形图转换成对应的指令表。这种编程软件有现成的,例如,日本三菱公司的MEDOC和GPP等
总结以上5种编程方法是不能截然分开的。如经验法、解析法、技巧法都要用到图解法,而技巧法又是经验法的升华。
通过示例来聊聊PLC编程思路
当我们在刚开始学习PLC时,可以通过一些简单的功能要求示例来进行自己编程仿真,要抓住功能要求中的一些细节来进行编程。
今天给大家带来的就是一个比较简单的机床滑台与主轴正反转控制的示例,通过这个示例来熟悉SCL编程的控制语句的使用和计数指令的调用问题。
首先,功能要求,示意图如下图所示:
功能要求:
当按下启动按钮,滑台前进,同时主轴正转,滑台前进到前极限SQ1,自动反转,如此反复,要求滑台每反复运动一个循环,主轴方向改变一次。当按下停止按钮,滑台和主轴都停止。
对功能要求进行分析:
1、按下启动,滑台前进,主轴正转,
2、当滑台到达前极限SQ1,滑台后退,主轴正转。
3、当滑台到达后极限SQ2,滑台前进,主轴反转。
4、当滑台再次到达前极限SQ1,滑台后退,主轴反转。
5、当滑台再次到达后极限SQ2,滑台前进,主轴正转。
通过上述对功能要求的分解,我们可以知道滑台的前进和后退,需要使用两个限位进行切换。
但是主轴的正转和反转的切换是靠后退极限进行切换,当第一到达SQ2时,主轴由正转切换至反转,当第二次到达SQ2时,主轴由反转切换至正转。所以,对主轴的方向转换我们可以使用计数的指令来实现,计数为1,则为正转,计数为2则为反转。
通过上面的这些对功能要求的分析,相信大家对本示例的编程应该有了一定的思路了吧。
下面对编程进行介绍和仿真:
首先我们还是建立一个FB,并对FB的接口变量进行一个定义:
下面对程序进行一个编程:
这里就是完全按照功能分析来进行的一个编程,这里用到了控制语句和计数指令的使用,(不熟悉控制语句和指令调用的可以参见我的专栏)
下面在OB1中调用FB,并进行仿真:
本例的源代码如下:大家可以在西门子博途中进行模拟仿真,当然了也可以关注我的专栏,我会将我做的示例做好示例库,分享给大家。
#SQ2_counter.CTU(CU := #SQ2,
PV := 2,
R := #stop);
IF #start AND NOT #stop AND NOT #SQ1 THEN
#PLAT_forward := 1;
#spindle_forward := 1;
ELSIF #stop THEN
#PLAT_forward := 0;
#PLAT_backward := 0;
#spindle_forward := 0;
#spindle_backward := 0;
END_IF;
IF #PLAT_forward AND #SQ1 THEN
#PLAT_forward := 0;
#PLAT_backward := 1;
END_IF;
IF #PLAT_backward AND #SQ2 THEN
#PLAT_backward := 0;
#PLAT_forward := 1;
END_IF;
IF #SQ2_counter.CV = 1 THEN
#spindle_forward := 0;
#spindle_backward := 1;
ELSIF
#SQ2_counter.CV = 2 THEN
#spindle_backward := 0;
#spindle_forward := 1;
END_IF;
相关问答
PLC编程技巧和思路?
以下是PLC编程技巧和思路:简单性:使PLC程序尽可能简单。简单的含义就是尽可能的使用标准化的程序框架,尽可能使用简单的指令。要想程序简单,从大的方面讲,...
plc编程思路?
PLC编程首先需要明确需求,然后对各个功能模块进行分析和设计,确定输入信号、输出信号和中间变量,并采用相应的编程语言进行程序编写。在编程过程中,需要不断...
plc编程思路技巧?
常用的PLC编程方法有经验法、解析法、图解法。经验法:即是运用自己的或别人的经验进行设计,设计前选择与设计要求相类似的成功的例子,并进行修改,增删部分功...
西门子plc编程思路?
一、西门子plc编程思路基本的硬件知识编程之前,需要了解一些基本的硬件知识,最好从硬件的选型和画图入手,等把输入输出的类型,模拟量的选型等搞清楚之后,再...
plc编程算法和技巧?
PLC(可编程逻辑控制器)编程的算法和技巧可以帮助提高程序的效率和可靠性。以下是一些常用的PLC编程算法和技巧:1.状态机:使用状态机的概念来设计程序,将系...
plc模块化编程思路?
PLC模块化编程的思路大致如下:1.确定系统的功能要求及功能模块,分析系统的功能单元,确定输入信号与输出信号;2.分析功能模块可以针对输入信号进行不同方...
plc编程逻辑怎么练?
首先需要掌握PLC编程基础知识,包括PLC的硬件组成、编程语言、指令集等。其次,可以通过实践来提高编程能力,例如通过模拟实际场景进行编程...要练习PLC编程逻...
plc编程步骤方法?
常用的PLC编程方法有经验法、解析法、图解法。经验法:即是运用自己的或别人的经验进行设计,设计前选择与设计要求相类似的成功的例子,并进行修改,增删部分功...
如何学习PLC?
如何学习PLC我来分享一下之前自己学习PLC的经历。读书的时候没有接触过PLC实物,看看书了解了一下梯形图。但具体怎么样,系统架构和工作原理怎样都不懂。后来参...
plc编程入门教程?
步骤/方式2星--三角起动主线路图设计出来以后,就可以把实物接触器线路接好,等待备用。步骤/方式3星--三角起动PLC接线图设计,把I/O点标号做好,以免接线的...