首页 上一页 1 2 下一页 尾页

(已结束)2010-8-3-工控擂台-梯形图编程与SFC编程对比 点击:4251 | 回复:23



饶歌

    
  • 精华:4帖
  • 求助:0帖
  • 帖子:330帖 | 6019回
  • 年度积分:0
  • 历史总积分:23673
  • 注册:2010年2月20日
发表于:2010-08-03 09:54:42
楼主

请根据自己的经验简述:梯形图编程与SFC编程对比!

 

本周末结贴,三个最优回帖分别获得25MP、15MP、10MP!

MP介绍:gongkongMP即工控币,是中国工控网的用户积分与回馈系统的一个网络虚拟计价单位,类似于大家熟悉的QB,1个MP=1元人民币。

MP有什么用?兑换服务:以1个MP=1元来置换中国工控网的相关服务。 兑换现金:非积分获得的MP可兑换等值现金(满100MP后、用户可通过用户管理后台申请兑换)。




李财宏你好

  • 精华:0帖
  • 求助:0帖
  • 帖子:7帖 | 420回
  • 年度积分:2
  • 历史总积分:3934
  • 注册:2008年10月27日
发表于:2010-08-03 11:46:50
1楼

我觉得没有大的却别,你喜欢就行,是不是啊?

 

Hoteam

  • 精华:3帖
  • 求助:0帖
  • 帖子:336帖 | 23748回
  • 年度积分:0
  • 历史总积分:70347
  • 注册:2007年4月05日
发表于:2010-08-03 11:53:30
2楼
硬件软件都不同

工控十年

  • 精华:0帖
  • 求助:0帖
  • 帖子:11帖 | 76回
  • 年度积分:0
  • 历史总积分:311
  • 注册:2009年7月22日
发表于:2010-08-03 11:57:24
3楼
个人感觉梯形图编程更好,也是更符合PLC运行思想的编程方式。当然,SFC编程很简便,可以让你的程序易读性更强。但因为他的简便,牺牲了很多的自由性,使本来就有些局限的PLC编程更束手束脚。本身梯形图编程的门槛就很低,个人认为,相比之下,还是梯形图编程更好。

cwp020-辰辰

  • 精华:21帖
  • 求助:4帖
  • 帖子:44帖 | 1886回
  • 年度积分:0
  • 历史总积分:17077
  • 注册:2006年1月04日
发表于:2010-08-03 12:06:13
4楼

梯形图更直观一点,而且看起来条理比较清晰。SFC在编写并联然后再串的这种稍微复杂点的逻辑时,语言会相当烦琐。

SFC最适合的是顺序动作,但数据处理、报警甚至SFC的初始化等等很多功能用SFC并不方便。

ye_w

  • 精华:21帖
  • 求助:1帖
  • 帖子:69帖 | 5217回
  • 年度积分:0
  • 历史总积分:46739
  • 注册:2002年4月17日
发表于:2010-08-03 12:07:20
5楼

关键还是习惯。很多指令不能用梯形图表达,或者表达起来都会让人看不懂。

比如我现在已ST语言为主,一是软件支持,而是涉及到算法方面,ST相当简洁,如果使用LD,太复杂或者麻烦了。

顾龙慰

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 52回
  • 年度积分:0
  • 历史总积分:343
  • 注册:2010年6月08日
发表于:2010-08-03 12:29:01
6楼
我觉得梯形图更容易上手些,SFC比较难些,虽然看起来条理层次感都很好,但对于好多学习的人,梯形图好弄懂,我学了两年了,SFC有些还是不会边呢!

云锋

  • 精华:1帖
  • 求助:4帖
  • 帖子:252帖 | 5541回
  • 年度积分:0
  • 历史总积分:30376
  • 注册:2005年6月24日
发表于:2010-08-03 12:40:59
7楼
梯形图编程简单直观,只要有一定的电工基础知识,就能读懂程序或编写程序。应该是目前掌握和使用最多的编程方式,但较复杂程序需结合其他编程方式完成。SFC(流程图)编程根据工艺流程图来进行编写程序,在程序中可以很直观地看到设备的动作顺序,便于设备故障分析和处理。

浅醉闲眠

  • [版主]
  • 精华:3帖
  • 求助:3帖
  • 帖子:219帖 | 13148回
  • 年度积分:152
  • 历史总积分:116149
  • 注册:2002年6月21日
发表于:2010-08-03 12:46:19
8楼
梯形图编程方法简单,修改灵活方便,保留了继电器控制线路形象、直观的特点。要求编程人员对工艺过程掌握的透彻,程序运行必须符合工艺过程;SFC编程也很简单,但当逻辑控制比较复杂的情况下,需要在程序中使用多个SFC流程,增加编程的困难程度,不如梯形图灵活。用SFC编程的好处是编程人员不需要掌握工艺过程,也不需要对各工序之间的联锁等做过多的了解,只要了解各个工序简单的逻辑过程即可。总之,梯形图和SFC编程,各有优缺点,根据情况灵活运用,可以简化编程,提高效率。

老菜鸟

  • 精华:22帖
  • 求助:0帖
  • 帖子:301帖 | 8609回
  • 年度积分:0
  • 历史总积分:24924
  • 注册:2003年6月15日
发表于:2010-08-03 12:48:09
9楼

梯形图编程:

        梯形图(Ladder Diagram)编程语言是一种使用最多、最受工厂电气人员欢迎的编程语言。梯形图与继电器控制线路相类似,他们之间可以很容易的相互转化。只要知道继电控制线路或者梯形图之一,就可以容易的转化为另一种。

        梯形图编程适合广大工程技术人员的思维方式,特别是从接触继电控制线路开始起步的电气工程技术人员,他们可以直接在头脑里面构思梯形图,而不必先去构思继电控制线路再去转化为梯形图。因此被广大电气技术人员所接受。梯形图语言比较形象、直观,对于熟悉继电器表达方式的电器技术人员来说,不需要学习更深的计算机知识,极易被接受,因此在PLC编程语言中应用最广。

        梯形图是一种图形编程语言,是面向控制过程的一种“自然语言”,它延用继电器的触点、线圈、串联并联等术语和图形符号,同时也增加了一些继电器控制系统中没有的特殊功能,以便增强PLC的功能。

 

SFC编程:

        SFC即Sequential Function Chart,顺序功能图。又叫做状态转移图,它是描述控制系统的控制过程、功能和特性的一种图形,同时也是设计PLC顺序控制程序的一种有力工具。是PLC程序设计语言之一,简称为SFC图。由于其具有结构清晰、直观简便、易于阅读和维护等特点,在工业顺序控制场合中被广泛应用,目前主流的PLC都支持SFC编程。我国1986年颁布了功能图标价标准GB6988.6-86。

        SFC采用画工艺流程图的方式来编程,只要在工艺方框的输入和输出表上特定的符号即可。这对于工艺人员来说,可以不需要更多的电气知识,更加方便。

        SFC可以对一个控制过程进行控制,并显示该过程的状态。将用户的应用逻辑分成步和转换条件,来替代一个长的梯形图程序,对于控制过程而言,结果更为简单,直观明了。SFC属于推广的编程方式。

        状态转移图是一种用于描述顺序控制系统控制过程的图形,它由步、转换条件、有向线组成。每个状态(步)表示顺序工作的一个操作,需完成一个特定的动作。状态的转换(步进)需条件得到满足。与普通指令编程相比,使用步进指令不但可以直观地表示顺序操作的流程,而且可以减少指令程序的条数和容易被人们理解。每一状态提供三个功能:驱动负载、指定转换条件、置位新状态(同时转移源自动复位)。 根据步与步进展情况状态转移图有四种结构:
1.单序列。反映按顺序排列的步相继激活这样一种基本的进展情况。
2.选择序列。一个活动步之后紧接着有几个后续步可供选择的结构形式作为选样序列。选择序列的各个分支都有各自的转换条件。
3.并行序列。当转换的实现导致几个分支同时激活时,采用并行序列。其有向连线的水平部分用一双线表示。 
 4.跳步、重复和循环序列。在实际系统中经常采用跳步、重复和循环序列。这此序列实际都是选择序列的特殊形式。

老菜鸟

  • 精华:22帖
  • 求助:0帖
  • 帖子:301帖 | 8609回
  • 年度积分:0
  • 历史总积分:24924
  • 注册:2003年6月15日
发表于:2010-08-03 13:01:15
10楼

        梯形图和SFC之间,目前来说,各主流PLC还无法实现无缝转换。一个程序中可以采用梯形图编程,也可以采用SFC编程,还可以采用梯形图和SFC混合编程。但由于两者的结构、指令等多有不同,目前的PLC基本无法实现完美转换。

        梯形图的优点:对广大电气人员来说简单方便、直观明了。

        梯形图的缺点:不是在任何情况下都是最简单的;对于工艺方面的人员,不太容易理解。对于步进逻辑控制,需要增设状态存储器或者采用步进梯形图指令等,麻烦一些。

        SFC的优点:对工艺人员来说简单方便、直观明了。对于特定的比较严格的步进控制动作,非常方便。

        SFC的缺点:对于零散的、非步进逻辑的控制或者复杂些的控制,比较麻烦,例如模拟量的比较、PID的运算,存储器的值比较、中断的处理等等。它就发挥不出优点了,因为各步之间并没有什么逻辑关系可言,或者根本不相关。

        综合上述,笔者一般采用梯形图编程,对于逻辑关系很严格的步进逻辑控制笔者也不采用SFC编程,就多加点状态存储器或者采用步进的相关指令来实现。

Smile

  • [管理员]
  • 精华:114帖
  • 求助:50帖
  • 帖子:2786帖 | 22283回
  • 年度积分:284
  • 历史总积分:144015
  • 注册:2006年8月04日
发表于:2010-08-03 13:05:34
11楼

梯形图编程与SFC编程对比

1、梯形图程序特点,直观性比较强,出现问题易查询。符合绝大多数PLC编程人员的思维思路。不足是,程序编写量比较大,尤其是大工程、大项目的PLC控制。SFC程序可使程序结构清晰,易于阅读和维护,程序编写量相对小,大大减少系统设计时间。

2、无论梯形图程序,还是SFC程序都是IEC61131中规定的编程语言之一。一般说,梯形图的使用可能多一些。但因个人爱好,工程复杂程度,编城软件支持程度等因素的影响也不尽相同。

3、总之任何事物都一分为二看,既有缺点,也有优点。关键是怎样取长补短。

莫其麟

  • 精华:14帖
  • 求助:0帖
  • 帖子:120帖 | 5688回
  • 年度积分:0
  • 历史总积分:29157
  • 注册:2004年2月27日
发表于:2010-08-03 13:09:29
12楼

 

    我一直习惯于用梯形图,觉得梯形图灵活些,当然这也与不熟悉SFC有关;
    我对SFC,通常仅用来观察程序的结构(梯形图转SFC程序)。

   

 

abysmal

  • 精华:1帖
  • 求助:0帖
  • 帖子:12帖 | 2176回
  • 年度积分:6
  • 历史总积分:11194
  • 注册:2001年10月26日
发表于:2010-08-03 14:34:34
13楼
这么多高手都回答了,而且字数很多,我就不奢望MP了,只简单说说我的理解吧。

首先,对于大多数PLC而言,梯形图是基本(有例外,比如西门子S5系列)。早先的梯形图是可以直接对应到PLC的机器语言的。比方说串联的触点对应AND指令,并联则对应OR指令,等等。PLC的本质是计算机,因此底层的机器语言和采用相同类型CPU的计算机是一样的。梯形图的出现是为了便于电气工程师编写代码以取代难以维护和修改的硬件继电器回路。因此梯形图的语法(或者说外观)和继电器回路非常相似。

在IEC标准的5种语言中,SFC是个异类,因为它的执行方式和其他四种语言完全不同。SFC通过指针告诉CPU当前控制位于顺序的哪一步,CPU只执行当前步中的程序,并且判断进入下一步的条件。SFC支持复杂的顺序结构,支持多个指针以实现多个步骤的并发执行。

在PLC只用于逻辑控制的时代,是没有SFC的,所有的逻辑功能都通过梯形图实现。即使偶尔会碰到简单的顺序控制,用梯形图也能解决。即使目前也有很多小型PLC用于机器的顺序控制,而那些小型PLC并不支持SFC。我们的工程师用梯形图照样实现控制功能。但是当顺序控制变得越来越复杂的时候,用梯形图就会比较困难。这时候工程师会在纸上画出类似于SFC的控制流程图,然后照着纸上的SFC设计梯形图程序。

既然如此,为何不索性设计一种可以直接执行的流程图语言来代替工程师的工作呢?我想,早先没有SFC是因为:

1、90年代以前,CPU处理能力较弱。那时候的CPU处理机器语言指令绰绰有余,但是SFC是无法简单对应机器语言的,一旦它的编译效率不高,会给CPU带来大的负担,那时的CPU受不了

2、DOS时代和DOS之前的时代,计算机(编程器)图形编辑能力弱,设计一个好用的SFC编辑器是个不小的挑战

3、PLC的应用还主要局限在逻辑控制,对SFC的需求不高

实际上,SFC在PLC上的广泛出现是在90年代中期以后。

无论梯形图、语句表、功能图、还是高级语言,只要你愿意,都可以只用其中的一种来编写整个系统。但是SFC不行,它是顺序控制的宏观表示,而每个控制步骤的实现细节,需要别的语言来完成。

MRF21

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 5回
  • 年度积分:0
  • 历史总积分:6
  • 注册:2010年7月31日
发表于:2010-08-03 18:21:42
14楼
SFC大多用于顺序控制 用做顺序控制比梯形图要直观的多 哪一步哪一步 从哪里跳转到哪里 执行下一步的条件是什么 比梯形图直观的多  但话说回来 不用做顺序控制 有的项目并不是顺序控制的 硬把它放到顺序控制的模式下(SFC)会带来很多麻烦 那这个时候就要用梯形图了 按照逻辑规律进行编写 有效的控制

fuhuafeng72

  • 精华:2帖
  • 求助:234帖
  • 帖子:479帖 | 4472回
  • 年度积分:66
  • 历史总积分:31282
  • 注册:2008年6月06日
发表于:2010-08-03 20:56:30
15楼

我比较喜欢梯形图,感觉这样比较适合做电气控制的,流程图比较抽象对于电气控制系统而言!

勃龙工控

  • 精华:2帖
  • 求助:0帖
  • 帖子:45帖 | 2857回
  • 年度积分:0
  • 历史总积分:6383
  • 注册:2004年4月03日
发表于:2010-08-03 22:46:06
16楼
我看见SFC就感觉恶心!!!!

往事并不如烟

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 144回
  • 年度积分:0
  • 历史总积分:1646
  • 注册:2007年6月05日
发表于:2010-08-04 12:39:48
17楼

个人认为:对于结构性强,各功能处理相互独立、单一运行较适用SFC,对于顺序执行,交叉执行类还是梯形图方便。

莫子辰

  • 精华:1帖
  • 求助:11帖
  • 帖子:20帖 | 939回
  • 年度积分:0
  • 历史总积分:5186
  • 注册:2010年5月12日
发表于:2010-08-04 16:58:01
18楼

自己感觉还是梯形图好用,适合于初学者,要是不专注于一种PLC,梯形图是个很好的选择。

SFC编程难度有点提高,很难理解。

个人看法

听风说雨

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 5回
  • 年度积分:0
  • 历史总积分:14
  • 注册:2009年4月30日
发表于:2010-08-06 07:10:02
19楼
我认为梯形图是比较普遍的编程方式,但是SFC不行,它是顺序控制的宏观表示,而每个控制步骤的实现细节,需要别的语言来完成。

yipin

  • 精华:11帖
  • 求助:0帖
  • 帖子:754帖 | 9779回
  • 年度积分:0
  • 历史总积分:48262
  • 注册:2004年3月31日
发表于:2010-08-06 12:31:21
20楼
这和两方面有关系:一个是个人习惯;另一个是看使用哪款产品及设备的控制方式。我个人还是习惯于使用梯形图,优点大家都说的很全了,主要是体现在设备的运行方式上。因为我们用S7-200系列较多,功能也不是太复杂。模拟量不多,况且用梯形图编程也比较顺手,所以对梯形图很熟悉。对于SFC,我用的少,见别人用过。在S7-400上,程序很复杂。点有多,监控起来还是SFC方便一些。总之无论用那种方式编程,还是以自己的习惯为主。

热门招聘
相关主题

官方公众号

智造工程师
    首页 上一页 1 2 下一页 尾页