PLC编程需要养成良好的编程习惯

发布者:ArtisticSoul最新更新时间:2022-03-10 来源: elecfans关键字:PLC编程  编程习惯  指令 手机看文章 扫描二维码
随时随地手机看文章

  每个人编程都会有不同的习惯和特点,不能强求一致。但是一些好的习惯还是应该为大多数人所遵循。一是理顺逻辑关系、时序关系,编制程序框图;二是合理分配主程序、子程序和中断程序;三是合理分配寄存器,编制寄存器符号表。


  plc编程更接近于单片机,或者说PLC就是模块化的单片机。因此PLC的很多操作都是直接针对寄存器的,如果在程序中出现不合理的寄存器地址重叠,一定会出现不可预想的后果。编制寄存器符号表不仅可以避免上述问题(MicroWin会有问题提示),而且可以使程序具备更好的可读性。这和VB中定义变量有异曲同工之处。


  VB编程中关注的是事件,不强调主程序和子程序的观念,因为VB主程序的工作是由PC的操作系统完成的。PLC则不然。PLC程序是以主程序为主干的,CPU不断的循环执行主程序,只有触发条件成立时才会调用子程序或中断程序。即子程序和中断程序所执行的任务不是全时需要的。如果把这些任务都放在主程序中会无端增加主程序的工作量,降低程序的效率。这点和单片机的编程思路是一致的。子程序的使用可以使整个程序的逻辑更清晰。而且子程序可以分开编写、调试,最后“安装”到主程序上。这样你可以一个一个解决问题。


  plc编程,无论是LAD,抑或STL,都不如VB那么直观、有趣,更不如CAD那么形象。但比单片机的汇编语言的可视性强多了。对于初学者,LAD(梯形图)的编程相对直观,更容易上手。


  最后,PLC提供了丰富的指令、模块,比单片机方便了很多。但是初学者编程时应尽量先使用简单的指令达到目的。尽管看上去有点土,却不失为一个入门的好途径,且对你理解那些较为复杂的指令会有帮助。具备了一定经验后,应该考虑掌握复杂指令的应用,以及程序的优化。


关键字:PLC编程  编程习惯  指令 引用地址:PLC编程需要养成良好的编程习惯

上一篇:降低PLC高速计数器计数误差的方法
下一篇:西门子S7-200PLC集成有高速计数功能

推荐阅读最新更新时间:2024-11-17 13:18

汇编指令-CMP、TEQ
cmp:(compare)指令进行比较两个操作数的大小   格式: cmp oprd1,oprd2   比较oprd1和oprd2操作数,然后通过助记符来实现想要的判断。 teq: (test equal)测试相等,该指令通常用于比较操作数1和操作数2是否相等。   格式: teq oprd1,oprd2   TEQ指令用于把一个寄存器的内容和另一个寄存器的内容或立即数进行按位的异或运算,并根据运算结果更新CPSR中条件标志位的值。该指令通常用于比较操作数1和操作数2是否相等。(EOR指令也是实现异或运算,只是不更新CPSR)    cmp和teq助记符如下 cmp使用实例实例1: CMP R0, R1 ;
[单片机]
汇编<font color='red'>指令</font>-CMP、TEQ
PLC梯型图的工作方式 和PLC指令表如何转换
  PLC梯型图是一种用于编程可编程逻辑控制器(PLC)的图形语言。通常,PLC梯型图使用逻辑门和状态转换的符号,例如与门,或门,非门,输入,输出等。此图形语言适用于逻辑控制应用程序的编写,例如在工厂里自动化流程控制的控制台中。通过创建适当的逻辑控制程序,PLC梯型图可以帮助传感器,执行器和其他电子设备之间实现可靠的通信和协调。   PLC梯形图由逻辑控制器(PLC)控制,它使用类似于电路图的图形表示方法来描述自动化控制系统中的逻辑和操作。PLC梯形图是一种常用的控制程序设计形式,可用于监控和控制工业系统中的各种设备和机械操作。它可以实现简单的控制逻辑,例如门的开关,到高级的控制任务,例如生产线的自动化控制。PLC梯形图的工作
[嵌入式]
ARM汇编教程(3): ARM指令
ARM与Thumb ARM 处理器有两种主要的运行状态,ARM 和 Thumb。这些状态与特权级别无关。例如,以 SVC 模式运行的代码可以是 ARM 或 Thumb。这两种状态的主要区别在于指令集,ARM 状态下的指令始终是 32 位的,而 Thumb 状态下的指令是 16 位的(但也可以是 32 位的)。 ARM 版本的调用约定非常混乱,并非所有 ARM 版本都支持相同的 Thumb 指令集。在某些时候,ARM 引入了增强的 Thumb 指令集(Thumbv2),它允许 32 位 Thumb 指令甚至条件执行,这在之前的版本中是不可能的。为了在 Thumb 状态下使用条件执行,引入了“it”指令。然而,这条指令在后来的版本
[单片机]
4种栈结构和对应的ARM指令后缀
ARM的8种指令后缀: ia(increase after)先传输,再地址+4 ib(increase before)先地址+4,再传输 da(decrease after)先传输,再地址-4 db(decrease before)先地址-4,再传输 fd(full decrease)满递减堆栈 ed(empty decrease)空递减堆栈 fa(full add) 满递增堆栈 ea(empty add)空递增堆栈 例如: stmia sp, {r0 - r12} 将r0存入sp指向的内存处(假设为0x30001000);然后地址+4(即指向0x30001004),将r1存入该地址;然后地址再+4(指向0x30001008)
[单片机]
RoHS指令6种有害物质的检测方法简介
  要求2006年7月1日开始,电子电气设备中禁止使用铅、汞、六价铬、镉和多溴联苯(PBB)、多溴二苯醚(PBDE);其中镉限量指标 100PPm(0.01%),另五种限量l000ppm(0.1%)。企业出口欧盟的产品都需符合以上的限量要求,并且要展示相应的证明文件,不符合要求的产品将会被拒绝进入欧盟市场。下文介绍RoHS指令6种有害物质的检测方法。 11、X射线荧光光谱法 ① 适用范围: 塑料部件、金属部件、电子元件中铅、汞、镉、总铬、溴的筛选测试 ② 技术特点: 一次性快速定性分析样品中的铅、汞、镉、铬、溴元素。对均质样品无须制样,可进行无损测试。 X荧光光谱仪 2、傅立叶红外光谱法 ① 适用范围:对聚
[焦点新闻]
STM32:如何用JLINK ULINK JTAG 查看 KEIL /MDK 某条指令执行时间
方法一: 为了保证在MDK中读取正确的程序运行时间,必须对仿真器的跟踪项进行设置。 以ULink2为例: (1)在工程的“ Option for Target ..”目标选项界面中,选择标签“Debug”,进行调试设置界面,选择使用“Cortex-M3-ULIK2”作为仿真器,然后点击右侧的“Settings”按键,进入ULINK设置界面。 (2)点击标签“Trace”进入跟踪设置界面,将“Core Clock:”右侧的编辑区输入你的CPU的频率,例如你的实际CPU运行频率为72MHz。 (3)“Core Clock”的值决定MDK以什么频率来计算指令周期,因为“Core Clock”的默认值为10MHz,
[单片机]
STM32:如何用JLINK ULINK JTAG 查看 KEIL /MDK 某条<font color='red'>指令</font>执行时间
多核与多执行绪的嵌入式系统解决方案
在嵌入式装置中建置多核心(包含同质或异质)以及多执行绪技术,的确能带来诸多效益,尤其是改进系统效能方面最为明显。 尽管RISC嵌入式技术所面临的挑战越来越多,但是在维持以往嵌入式软件资源兼容性的前提之下,能够改善其未来适用性,并且有效提升新系统的效能表现,使其不失为良好的解决方案。 应用决定多核或多绪 多核心与多执行绪在效能表现上有其帮助,但是效能与这些技术的内建其实并没有绝对关系,会造成这样的原因主要是应用环境的需求。以手机为例,整合于手机内的SoC芯片虽然是属于多核心架构的一环,但是手机采用的SoC芯片多为应用处理器,其整合的核心并非完全属于同性质架构,同质多核心在嵌入式系统实际应用上的案例其实非常少。 而多执行绪处理器
[嵌入式]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved