单片机与PLC编程的区别,论SCL

已锁定

*他山之石*

  • 帖子

    35
  • 精华

    0
  • 被关注

    5

论坛等级:侠士

注册时间:2009-08-26

普通 普通 如何晋级?

单片机与PLC编程的区别,论SCL

5704

10

2013-11-30 15:28:27

引廖常初老师原话:  
有一个高校老师告诉我:“最近在评阅学生毕业论文中,发现一部分同学对PLC程序像单片机程序一样画了流程图,但是当系统存在模拟量控制环节时,所画的流程图又难以说明问题,很难画出与实际程序执行意义一样的总的程序流程图。考虑到PLC程序和单片机程序是不同的,单片机是逐行执行,而PLC则不同。”
  单片机与PLC的程序设计有很大的区别,单片机的全部程序都是用户设计的,PLC的程序包括系统程序(西门子称为操作系统)和用户程序。操作系统用来组织与具体的控制任务无关的所有的CPU功能。操作系统的任务包括处理启动过程,刷新输入/输出过程映像,调用用户程序,检测中断事件和调用中断组织块,检测和处理错误,管理存储器,以及处理通信任务等。PLC的很多功能,例如扫描工作方式、定时器功能和中断处理,是操作系统完成的。在画流程图时,应考虑这个问题。
  PLC的开关量控制系统的程序用顺序功能图来描述比较简洁。用流程图来描述PLC的用户程序原则上(个人认为并非原则,而是一定)也是可以的,但是应区分哪些功能是操作系统完成的,哪些是用户程序实现的。
  例如有人问是否需要用跳转指令来等待某个信号上升沿的出现,这是一种单片机编程的思维。PLC的扫描工作方式在每一扫描周期开始时读取全部的开关量输入,根据前后两个扫描周期同一输入点状态的变化来判断是否有上升沿出现。所以不需要用往回跳(为什么不能往后跳)的跳转指令来等待某个输入信号的出现。如果用这种方法来查询信号的状态变化,PLC不能干别的事情,因为它的全部精力都用在查询上了!而这种查询是在一个扫描周期内进行的,将使扫描周期变得很长,很容易造成监控定时器(看门狗)超时的错误。
在PLC的用户程序中,只需要用一条检测上升沿的指令就可以捕捉到脉冲信号的上升沿。如果要求快速响应,可以采用中断方式,在脉冲信号的上升沿由系统程序调用用户编写的中断程序。
括号内部分为我添加上的,请各位讨论!(个人认为并非原则,而是一定)(为什么不能往后跳)
单片机与PLC编程的区别,论SCL 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54623条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。