機(jī)械社區(qū)

 找回密碼
 注冊(cè)會(huì)員

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 26967|回復(fù): 86
打印 上一主題 下一主題

啃PLC才1年,每月有三四個(gè)工程的工作量,分享我的總結(jié)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
1#
發(fā)表于 2009-9-6 14:55:12 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
我并非專(zhuān)業(yè)出身,學(xué)電氣才1年,后由于興趣和形勢(shì)逼迫才啃PLC,到現(xiàn)在總共才三年,雖然底子薄點(diǎn),但一個(gè)月有三四個(gè)工程的工作量,實(shí)踐機(jī)會(huì)很多.  在這里我不敢談經(jīng)驗(yàn), 只是就我個(gè)人在這段時(shí)間走的彎路與大家分享.新人以為鑒:
0 m: m0 z; \$ E, N- C- c2 g+ k5 ]) o1 r) o, B
) a7 W7 P1 U& G1 g
1 接到工程的開(kāi)始不要忙于設(shè)計(jì)圖紙,應(yīng)該多和機(jī)械設(shè)計(jì)人員多交流,還有設(shè)備調(diào)試人員,拿到設(shè)備運(yùn)行的第一手資料,記住,你要最了解設(shè)備,包括生產(chǎn)出產(chǎn)品的工藝.6 v7 Z/ o9 Y4 e+ R3 f0 H
8 ]( e2 @. w9 {8 `) P4 L0 ~
1 h  P& z2 f% U" W# o; m7 x& I
2 繪制流程圖,這個(gè)圖紙只為自己使用,所以不用太規(guī)范,圖中應(yīng)包括設(shè)備的運(yùn)行過(guò)程,標(biāo)注注意事項(xiàng),對(duì)設(shè)備應(yīng)有總體規(guī)劃.5 x4 E& p" s0 C( q/ K
$ i* r4 T- F5 c- O

7 e0 x5 ~0 m& I$ w( g% ?3 用IO表格定義輸入輸出.5 W; g1 X2 g( ?& h+ P
0 \+ ^3 V5 O6 m& o+ h$ B3 G
8 M% S1 m  {. `2 ^  x
輸出:a.同一電壓等級(jí)的盡量靠近 b.不同頻率的應(yīng)單獨(dú)劃分.以上兩點(diǎn)便于配盤(pán)和現(xiàn)場(chǎng)抗干擾的方便. c.程序上順承關(guān)系的輸出應(yīng)盡量靠近以方便編程 d.留出10%的空點(diǎn)做備用(我是做非標(biāo)產(chǎn)品的,臨時(shí)該設(shè)備是常事,定型產(chǎn)品則不用), N, @- m8 B# }% L  x* S
7 L  H% s- u7 P  c" t
輸入:a.根據(jù)設(shè)備程序工藝分配觸摸屏輸入和控制板輸入,控制板輸入點(diǎn)定義時(shí)應(yīng)注意預(yù)留一個(gè)備用按鈕.4 f9 e* `6 Q6 q
7 Y  K  g* ], e2 T% o8 V7 {
編制變量表:變量表的編制應(yīng)合理規(guī)劃:最失敗的程序往往用到一個(gè)變量就隨便用.對(duì)于與外設(shè)有關(guān)聯(lián)的變量應(yīng)保持連續(xù)并把只讀,只寫(xiě),讀寫(xiě)型的合理分開(kāi),同一類(lèi)型的變量靠近.這樣有利于通訊的速度和程序的閱讀.5 M2 }( x: ?2 H

( \/ Z7 q3 I- F% I
. j" ^% ~; M8 H2 K, O0 W4 出圖:這個(gè)比較煩瑣.除了電氣圖,還應(yīng)有安裝圖.一定要規(guī)范配盤(pán).不然將來(lái)等你拿到控制盤(pán)時(shí)發(fā)現(xiàn)要改的太多.基礎(chǔ)圖,將基礎(chǔ)圖中附加電氣要求(其實(shí)主要是接地要求)
. L2 i$ B4 ?, Q" O9 n
7 R3 S1 l; S/ ~' }+ m$ E3 Z+ ]/ b! @- s
5 編程:我建議主程序不要寫(xiě)控制,而只有子程序的調(diào)用.子程序應(yīng)分類(lèi),初始化\手動(dòng)\單循環(huán)\自動(dòng)多循環(huán)\全局中間控制的\運(yùn)算的\報(bào)警的\復(fù)位程序,注意控制類(lèi)程序轉(zhuǎn)換時(shí)的復(fù)位.盡量的簡(jiǎn)化.
0 h0 v/ B& s/ y! j6 {9 Y
: ?9 s* J/ l/ E* r0 j  T" C5 R
# T- m8 p2 v6 F% }6 N: r* P
8 P- _) f, d" J+ `( n
就編程而言,其實(shí)是整個(gè)系統(tǒng)的實(shí)現(xiàn)部分。, K0 T7 M% G+ m7 W% \

+ m1 S% e8 Q6 Q7 n9 P, Z/ G
# E" Q2 T; u# O# A* X到此時(shí),工程已經(jīng)完成70%了,所以程序只占系統(tǒng)的20%(其余10%是編制使用說(shuō)明書(shū)、驗(yàn)收材料等用戶(hù)文件),但也是最費(fèi)我們氧氣的環(huán)節(jié),說(shuō)到缺氧說(shuō)點(diǎn)題外的,最近我正在編一臺(tái)設(shè)備其中包括4模入、1模出、變頻、3個(gè)HSC,定完程序框架一看,共用了10個(gè)子程序、11個(gè)中斷,呵呵。回來(lái)說(shuō)程序,我發(fā)現(xiàn)本論壇大多提到的是指令的應(yīng)用,其實(shí)程序的定義很廣,不是語(yǔ)句嚴(yán)謹(jǐn)就是好程序,還要結(jié)構(gòu)合理、系統(tǒng)化、易移植性、易擴(kuò)展性、安全性及冗余等等。; x9 c: L' {6 _! `

5 F# b! F$ f$ f6 V9 C
9 p; h: ~  {8 d7 u: b3 B$ m1、 程序結(jié)構(gòu)很重要,便于別人閱讀,把程序開(kāi)發(fā)人員的思路清楚的展現(xiàn)給他人,編程中避免數(shù)據(jù)的交叉、語(yǔ)句的跳轉(zhuǎn),此處并不是說(shuō)JUMP語(yǔ)句,而是順序分布,不要編程序網(wǎng),很多人(包括自己)會(huì)被網(wǎng)套住,要編成程序鏈,讓別人讀程序時(shí)有如扶著鋼鎖過(guò)橋的感覺(jué)。這也是我為什么喜歡用T型圖而不喜歡用語(yǔ)句,實(shí)踐證明用語(yǔ)句比T型圖出邏輯錯(cuò)誤的幾率高。
5 j. _6 N, I* I& @# `+ C6 P7 C! \0 K1 o

0 v) w3 h' P) h% I
" m, }; j: r0 I9 {  Y5 h2、 程序的系統(tǒng)化,把程序按功能劃分,即“塊”的理念,把一臺(tái)復(fù)雜的設(shè)備分成若干個(gè)塊,每個(gè)塊獨(dú)立實(shí)現(xiàn)其功能,孫子說(shuō)過(guò),敵人強(qiáng)大,我設(shè)法把他分散開(kāi),再逐一擊破。我從來(lái)不在主程序里寫(xiě)指令,全是調(diào)用,程序的樹(shù)型結(jié)構(gòu)在很多年前就被人認(rèn)可,樹(shù)干有若干分枝,枝上再分杈,如果你看見(jiàn)主樹(shù)干上長(zhǎng)滿(mǎn)樹(shù)葉和果實(shí)會(huì)不會(huì)覺(jué)得心堵?
5 ]' R7 C5 c  k3 N7 ]1 H
6 v7 C$ @, L  H+ U5 w4 c: u8 z. v: H# m( s4 O
1 K2 C( f2 x+ ]& b1 \& z4 y, p) D

* Z" j6 g$ D+ R  y+ {4 E3、 移植和擴(kuò)展,如果你搞過(guò)PC編程,這兩個(gè)詞肯定不生,移植是為了其它相同功能程序的調(diào)用,建議大家多做點(diǎn)庫(kù),擴(kuò)展性是為了設(shè)備有可能發(fā)生的二次改造或與其它設(shè)備的合作(并非通訊)而預(yù)先考慮的預(yù)留,當(dāng)然擴(kuò)展性更適合我們這些做非標(biāo)產(chǎn)品的,手指有點(diǎn)麻了。
, l$ f0 K- d% M# I$ T/ F) j( K
& ?# {9 |# c% a" P
3 r' `1 V: J0 V' R
* Y; M" @  x5 w, c1 t: k4、 安全性和冗余應(yīng)該放在一起說(shuō),安全性即穩(wěn)定性,好的系統(tǒng)不僅僅是處理復(fù)雜的運(yùn)行和運(yùn)算,首要是安全穩(wěn)定,能處理突發(fā)事故,和避免事故擴(kuò)大,這里我說(shuō)說(shuō)“千萬(wàn)不要用STOP指令”,停機(jī)后,你連事故都處理不了了,再上電可能就會(huì)擴(kuò)大事故。當(dāng)然小設(shè)備除外,我知道STOP的唯一用途就是,別人不給你設(shè)備款,就在他用了一段時(shí)間后STOP他的設(shè)備,呵呵。冗余,好象300或400有,我沒(méi)用過(guò),我這里說(shuō)的冗余是指軟件冗余程序,并不是硬件的,在不影響系統(tǒng)性能的情況下,系統(tǒng)中的冗余程序應(yīng)占總程序的50%~75%左右,當(dāng)然這也和系統(tǒng)的復(fù)雜程度有關(guān),我個(gè)人認(rèn)為冗余程序的定義是:在非正常工作情況下運(yùn)行,旨在發(fā)現(xiàn)處理故障及其它非正常狀況或數(shù)據(jù)的程序。沒(méi)有冗余就談不到完整。
+ `6 ]6 B/ \8 Q: s  v7 u, y+ c3 w2 J5 g
  c! m: E- D# n5 B" q* s  w1 m& w
再深白話(huà)就是系統(tǒng)的自檢測(cè)、自診斷、容錯(cuò)性和擬人模仿性了,下回和大家白話(huà)。8 b1 c6 S$ i" g9 X4 [5 V
# T) D; z+ U  I

  h& Y# `, M  l總之,如果你把面前的一堆廢鐵變成一個(gè)機(jī)器人,賦予他眼耳鼻舌口手及思想和靈魂,你會(huì)發(fā)現(xiàn)你就是造物主,生命在你指尖誕生。
" g( ?; g5 o- p& p& A  i1 x- L
回復(fù)

使用道具 舉報(bào)

2#
發(fā)表于 2009-9-6 15:37:28 | 只看該作者
這樣踏實(shí)鉆研的工程師,致敬!
3#
發(fā)表于 2009-9-6 15:42:56 | 只看該作者
嗯 實(shí)際干過(guò)東西了就感覺(jué)不一樣了 不是書(shū)本上的東西了
4#
發(fā)表于 2009-9-6 15:48:07 | 只看該作者
有機(jī)會(huì)動(dòng)手做,進(jìn)步會(huì)很快的
5#
發(fā)表于 2009-9-6 16:06:39 | 只看該作者
樓主編程水平很高啊,
! O" v* k. V. C2 I' i8 j看樓主說(shuō)敘,應(yīng)該是使用的西門(mén)子PLC,我熟悉歐姆龍PLC,以后多多交流,
6#
 樓主| 發(fā)表于 2009-9-6 16:29:36 | 只看該作者
樓主編程水平很高啊
6 m: S" A  G  G看樓主說(shuō)敘,應(yīng)該是使用的西門(mén)子PLC,我熟悉歐姆龍PLC,以后多多交流,
2 y  c+ i4 `+ t2 ~' R湘里狼 發(fā)表于 2009-9-6 16:06

# O2 Y; T/ C% o( t( T0 P沒(méi)錯(cuò)是西門(mén)子的,還要向您學(xué)習(xí)
" b9 b  `* \0 m  g0 Q也感謝各位!
7#
發(fā)表于 2009-9-6 16:57:55 | 只看該作者
有機(jī)會(huì)向您學(xué)習(xí)學(xué)習(xí)。。就是沒(méi)有多少機(jī)會(huì)接觸啊
8#
發(fā)表于 2009-9-6 17:33:02 | 只看該作者
留出10%的空點(diǎn)做備用,少了點(diǎn),除了修改程序,維修時(shí)燒點(diǎn)時(shí),都需要,30%好些,當(dāng)然,這些如果是外賣(mài)的設(shè)備另論。

點(diǎn)評(píng)

上學(xué)時(shí):《機(jī)電傳動(dòng)控制》里面就說(shuō)了,預(yù)留30%的點(diǎn)。所以我支持30%  發(fā)表于 2013-4-28 16:38
9#
發(fā)表于 2009-9-6 22:14:34 | 只看該作者
學(xué)習(xí)了!我用國(guó)產(chǎn)的PLC感覺(jué)很不錯(cuò)。謝謝樓主!
10#
發(fā)表于 2009-9-7 00:32:38 | 只看該作者
感謝分享 ,壇子里最需要就是樓主這樣的帖子。4 ?# S1 {6 K) i3 _
我也是用OMRON的,一直想試下西門(mén)子,到時(shí)候多指教。

本版積分規(guī)則

小黑屋|手機(jī)版|Archiver|機(jī)械社區(qū) ( 京ICP備10217105號(hào)-1,京ICP證050210號(hào),浙公網(wǎng)安備33038202004372號(hào) )

GMT+8, 2024-9-25 13:25 , Processed in 0.054225 second(s), 15 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回復(fù) 返回頂部 返回列表