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点数,IO余量)程序设计需要先要规划(数据寄存器,中间继电器分配,IO分配),程序结构框架,单元功能实现,整体程序调试...根软...
plc自动程序编写思路?
plc自动程序的编写思路:1、确定程序的总体结构将系统的程序按工作方式和功能分成若干部份,如:公共程序、手动程序、自动程序等部份。确定了系统程序的结构形...
plc编程逻辑怎么练?
首先需要掌握PLC编程基础知识,包括PLC的硬件组成、编程语言、指令集等。其次,可以通过实践来提高编程能力,例如通过模拟实际场景进行编程...要练习PLC编程逻...
PlC的程序怎么编写?
编写PLC程序需要遵循一定的步骤。首先,需要进行需求分析,确定系统的功能和操作流程。然后,根据需求设计程序结构,包括输入输出模块的配置和信号处理逻辑。...
plc万能编程法?
PLC是一种可编程逻辑控制器,通常用于自动化控制系统。万能编程法是指一种通用的PLC编程方法,它可以适用于不同品牌和型号的PLC,并且可以在不同的控制系统...
plc基本编程模式?
PLC编程有五种标准化编程语言:顺序功能图(SFC)、梯形图(LD)、功能模块图(FBD)三种图形化语言和语句表(IL)、结构文本(ST)两种文本语言。最常用的是梯...PLC...
怎么才能快速学会plc编程?
结合我的工作,来说说学习PLC编程的心得:1、具备一定的电工基础:掌握传感器、气动元件、液压元件、电机等低压电气元件的使用及电气控制原理...结合我的工作,来...
怎样提高PLC编程能力?
怎样提高PLC编程能力?所谓“天下文章一大抄”,想要提高PLC的编程能力,除了基础知识掌握以外,最有有效直接的方法,就是多去看看别人的程序,或者别的公司的...怎...
西门子1200plc编程思路框架?
1.西门子1200PLC编程思路框架是需要有一定的时间和经验积累的。2.首先需要明确PLC编程的目的和需求,然后根据具体的控制任务,设计出相应的程序框架。在编程...