0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

高手都是怎么写PLC自动程序的?

PLC技术圈 来源:PLC技术圈 2023-08-31 16:33 次阅读

第一种:辅助继电器的置位复位方法

这种方法是最原始最初级的写法,也是最简单的一种写法,比如第一步置位M0,M0接通后控制某个结果,结果实现后复位M0,再置位M1,依次进行l流程控制。这种写法通用所有的PLC

49f5702e-47c2-11ee-97a6-92fbcf53809c.jpg

第二种:使用步序编号的方法

使用整型变量作为步序编号,易于理解,便于维护。步序增减,跳转等操作方便,简单,易懂。复位操作时,仅需将变量值改为0。编程中需注意,当连续步序的条件同时为真时,步序号在一个PLC周期内连续增加,直至最后一条未导通步序指令,而由步序号触发的其它程序则未被执行。调试时容易漏掉此种情况。

4a0acabe-47c2-11ee-97a6-92fbcf53809c.png

第三种:GRAPH(顺序功能流程图语言,也称SFC)

这种方法跟我们的设备工艺流程图非常相似,也是最直观的一种程序,第一步干什么,什么条件又开始干第二步,看上去非常清楚。虽然程序表面看上去非常清楚明了,但编写项目程序实际的操作过程并不简单,要熟悉这种写法需要时间过程,而且这种方法并不通用所有的PLC(如西门子S7-1200不支持,仅S7-1500支持),还有就是对PLC性能要求高,也占用很大的工作存储器。

4a1e6e5c-47c2-11ee-97a6-92fbcf53809c.jpg

第四种:移位指令方法

这种方法是利用移位指令的移位原理实现步序的控制,比如欧姆龙的SFT指令,三菱的ROL、ROR等,西门子的移位指令也差不多。这种难点在于搞清移位指令的工作原理即可,也是通用所有PLC的编程。

第五种:DECO解码指令的方法

解码指令DECO:即将整数转换为Dword中对应的位置1,且当步序产生变化时,PLC必定会重新执行一个扫描周期,不会产生连续跳多个步续的情况。避免了程序中步序触发的指令没有被执行的情况。跳转和复位操作编写简单。如西门子S7-1200PLC可支持DWORD解码(32位),S7-1500可支持LWORD解码(64位)。

4a3df146-47c2-11ee-97a6-92fbcf53809c.png

第六种:工作和状态变量赋值的方法

这种方法是数据传送指令与比较指令相结合实现程序流程步序转换的,个人认为这种方法是最容易理解的,操作上也是最简单,建议初学者尝试使用,当然这种方式也是通用所有PLC的。设置两个变量字state word,work word。state word中的位作为步序标志,work word作为跳转目标步序标志。当前步序state word中步序位对应的条件满足时,触发work word中下一步对应的位。而后,在PLC顺序扫描至传送指令时,将work word的值赋值给state word,完成步序跳转。优点是没有置位和复位操作,同一时刻只有唯一的位置1,跳步时只用将对应的work word 中的位置1即可。复位时,将state word与work word清零,程序会自动将state word中第一位点亮。当步序大于16时,可改为DWORD或增加word的数量来增加步序。

4a454374-47c2-11ee-97a6-92fbcf53809c.jpg

4a5e7a88-47c2-11ee-97a6-92fbcf53809c.png

第七种:SCL编程的方法

越来越多的小型PLC都支持SCL语言,SCL是一种类似于PASCAL的高级编程语言,常用的FOR、IF、WHILE、CASE等程控语句组合起来能编写出很强大的算法和逻辑,用此写法的人也越来越多。用SCL设计自动程序主要就是结合CASE和IF语句,将Step作为程序号,如果存在比较长的分支或并行动作时需要有借助多个Step程序步,这里不做深究。

4a73b524-47c2-11ee-97a6-92fbcf53809c.png

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 继电器
    +关注

    关注

    132

    文章

    5152

    浏览量

    146846
  • plc
    plc
    +关注

    关注

    4989

    文章

    12629

    浏览量

    456761
  • 编程语言
    +关注

    关注

    9

    文章

    1893

    浏览量

    33783

原文标题:高手都是怎么写PLC自动程序的?

文章出处:【微信号:xue_PLC,微信公众号:PLC技术圈】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    PLC自动程序编程方法

    【导读】PLC自动步序的功能是控制设备按照事先设计好的工艺流程进行工作。PLC自动程序的流程编写也有好几种方法,下面就来做一个详细的阐述。
    发表于 06-28 09:47 1400次阅读
    <b class='flag-5'>PLC</b><b class='flag-5'>自动</b><b class='flag-5'>程序</b>编程方法

    用单片机PLC程序

    用单片机PLC程序用单片机PLC程序用单片机
    发表于 05-19 16:43

    关于STC89c52程序求助

    就没反应,然后单片机就自动运行内部原先已烧程序。在正常状态下单片机可以正常运行其内部已烧程序。请问各位
    发表于 11-15 21:21

    哪位高手帮我一下程序

    哪位高手帮我一下程序,跪求,很需要帮助,这个程序是这样的,60秒到60分钟的计时。应该怎么
    发表于 06-23 15:21

    基于PLC控制自动采样机的程序设计及应用

    基于PLC控制自动采样机的程序设计及应用.
    发表于 01-04 15:25 15次下载

    DSP C2000程序高手进阶

    DSP C2000程序高手进阶 PDF 版
    发表于 05-06 15:13 33次下载

    实用8T自动精密冲床_PLC程序

    三菱PLC(可编程逻辑控制器)编程实例项目例程:实用8T自动精密冲床三凌FXPLC程序
    发表于 12-10 14:14 18次下载

    PLC编程实例从菜鸟变高手

    PLC编程软件由系统程序和用户程序两部分组成。系统程序包括监控程序、编译程序、诊断
    发表于 09-19 15:50 11次下载
    <b class='flag-5'>PLC</b>编程实例从菜鸟变<b class='flag-5'>高手</b>

    基于DSP C2000程序高手进阶

    基于DSP C2000程序高手进阶
    发表于 10-12 14:37 10次下载
    基于DSP C2000<b class='flag-5'>程序</b>员<b class='flag-5'>高手</b>进阶

    DSP C2000程序员的高手进阶

    DSP C2000程序员的高手进阶
    发表于 10-16 13:16 20次下载
    DSP C2000<b class='flag-5'>程序</b>员的<b class='flag-5'>高手</b>进阶

    高手速成法:PLC故障排查实例讲解

    PLC故障分为软件故障和硬件故障,本文结合PLC系统现场故障处理实例,分享PLC故障维修经验,本文是PLC高手速成秘籍!!!
    的头像 发表于 10-11 16:45 4120次阅读

    自动模切机PLC程序(FX系列)

    三菱PLC(可编程逻辑控制器)编程实例项目例程-自动模切机PLC程序(FX系列)
    发表于 05-05 14:59 9次下载

    PLC程序编写方法探讨 PLC程序的质量衡量

    PLC程序的各位都是高手 因为需要懂得套路,也是思路,就平时常见的程序基本看过两种套路。 1、输出点用线圈输出,输出在
    的头像 发表于 12-28 17:06 760次阅读

    PLC自动程序的7种编程方法

    PLC自动程序的功能是控制设备按照设计的流程进行工作。PLC自动程序的流程编写也有好几种方法
    发表于 05-24 16:38 1.5w次阅读
    <b class='flag-5'>PLC</b><b class='flag-5'>自动</b>步<b class='flag-5'>程序</b>的7种编程方法

    电气高手PLC程序的技巧

    对于PLC程序的编写,我认为无须天马行空的标新立异,也无须花枝招展的炫弄技巧。只要在内容和质量这两方面把好关,具有正确性、可靠性、方便性、简洁性和可读性就是很好的程序
    的头像 发表于 07-25 15:54 598次阅读
    电气<b class='flag-5'>高手</b>写<b class='flag-5'>PLC</b><b class='flag-5'>程序</b>的技巧