第一篇:plc編程學習總結
1:PLC編程語言有5種,即順序功能圖(SFC),梯形圖(STL),功能塊圖,指令表,和結構文本。其中順序功能圖(SFC)是最容易理解的,按照時間的先后順序執行。然后轉換成梯形圖,因為梯形圖是PLC普遍采用的編程語言。不過SFC轉換梯形圖是很簡單的。
2:就好比是開關在合上時兩觸點接觸的一瞬間繼電器就有動作了,這叫上升沿。
下降沿就好比開關兩觸點始終保持接觸時,繼電器沒有動作,只有開關兩點斷開時的瞬間繼電器才動作。
第二篇:PLC編程心得
即使是同一個項目,同一個人,要他重新寫一次,也會與原來的不同,我只是看別人的一種思路,是怎樣把程序去組織好,如何規范合理分配好元件,我看簡單也不一定好,我的編程習慣是要求流程要清晰,即使多花點步數也好。所以我現在一般都不用一個梯形圖完成,而是用SFC去編排組織梯形圖的執行順序,這樣就不用擔心什么互鎖連鎖的問題,我現在在編寫的程序我估計在18000步左右,若是用單一的梯形圖來編,我估計對以后的維護和修改會做成很大的困難。
現在工控制軟件大部份是可以破解,但如果不想別看懂的程序的話,把里面最好不放常數,全部是數據寄存器,多用一些功能指令,拿出點技術來,要把哭程序寫少而精,不要多而雜。我不鼓歡太亂的程序。如果你把技巧都定上去啦,相信不是一般的高手都沒辦法看懂,那樣別人是服了你的技術,而不是服你的亂!我一向都不怕別人看程序,我也不喜歡看別人程序,這就是這的風格!單一!寧可少而精,不可多而雜
上是高手啊,我公司有一臺設備的PLC程序真的不放常數,全部是數據寄存器,下載下來的程序在另外一臺PLC就不能使用!
我們公司有幾臺設備都是意大利進口的,都是幾千萬的設備,老外的程序都沒見有常數,應用了好多數據塊,一般的工程師都看不懂的
第三篇:學習PLC編程的入門建議
學習PLC編程的入門建議
1、編程需要堅強的毅力和足夠的耐心
人各有所長。有些人把編程看作一項冗長而枯燥的工作;有些人把編程看作一項趣味的智力游戲。如果你是前者,強烈建議你遠離這份工作。畢竟編程工作是對人的毅力和耐心的挑戰。我所在實驗室中,很多學生看到我編程序就會驚訝于我面對這一堆堆符號所表現出的專注。其實,這是興趣使然。興趣使我具備了足夠的毅力和耐心。經過無數次失敗后,當看到一個個符號按我的思路整齊的排列,PLC按我的要求有條不紊的運行時,興趣得到了極大的滿足,如同打通了一個游戲的關口。所以,我告訴這些學生:你們看到的是一堆枯燥怪異的符號,我看到的卻是一群熱情奔放的舞者,而我則是她們的導演。
2、編程需要敢于實踐的信心
我曾經教過一個學生學AutoCAD,我對她的唯一要求就是實踐。我告訴她:你隨便怎么操作,大不了一張圖重畫;最壞的結果是系統崩潰,沒關系,系統重做,再來;只要電腦沒被砸了,怎么都行。兩年后,我再看到她做的CAD圖紙,也自嘆不如。
同樣道理,只有不斷地在PLC上運行這些指令,觀察運行的結果,才能弄清PLC指令的作用。很多初學者對PLC一臉的迷茫,往往是出于一種畏懼,擔心損壞設備。而這些畏懼是沒有任何道理的。仔細的閱讀手冊是非常重要的,但是僅靠讀書是成不了一個工程師的。更何況手冊上的內容并非面面俱到。我在接觸到那些不熟悉的指令時,喜歡單獨編一個小程序,讓PLC運行。然后逐個修改條件,觀察運行的結果(MicroWin為用戶提供了非常好的監控手段),反過來再重新理解手冊的描述,這樣就可以非常直觀的理解這些指令的作用和使用方法。不必擔心自己寫的程序會有什么問題,會影響PLC的正常工作。程序有沒有問題,只有讓PLC運行了才能發現。而發現問題并解決問題就是對自己能力的提高。撇開硬件操作不談,單就軟件來說,我還真沒有遇到過由于軟件問題而損壞PLC的事。在這里不必擔心繼電器電路接錯線可能造成的后果。所以,大膽的實踐是PLC編程的必由之路。
當然,大膽實踐并不是野蠻操作,而是必須遵循必要的規范。還有一個要注意的,在程序未經可靠性證實之前,千萬不要掛接負載,以免造成不必要的損失。數字量的輸出有LED顯示;而模擬量處理可以采用一些硬件或軟件模擬手段來解決。
3、編程需要有縝密的邏輯思維
編程本身就是一種邏輯思維過程。在高級語言中,使用最多的是ifthenelse、select這些條件判別語句,這就是邏輯中的因果關系。PLC程序就是由這些因果關系組成的:判別條件是否成立,進而決定執行相應的指令。最初的PLC是用來替代繼電器邏輯電路的,所以繼承了繼電器電路以觸點作為觸發條件的描述方式。在PLC中,以虛擬觸點代替了繼電器的金屬觸點,而繼電器電路所表達的邏輯關系還是被完整的保留下來。即使引入了繼電器電路難以勝任的數值處理過程,PLC從根本上還是在執行一個個因果關系。所以,理順對象的各個事件之間的邏輯關系,是編程之前必須精心做好的準備工作。我在接到一項任務后,第一件事就是整理出一份邏輯關系圖,與用戶反復商討,取得用戶的認可,然后才真正進入程序的編寫過程。
4、不可或缺的相關知識
PLC的程序是直接作用于對象的具體工藝過程,那么對對象具體工藝過程的理解是非常重要的的。我在與用戶的交流過程中,會用我所掌握的UnitOperation的知識分析用戶的工藝過程,協助用戶整理過程控制中的各個邏輯關系,甚至包括各種儀表、硬件的配置。這得益于我原本所學的專業。當然,不能要求所有搞PLC程序的工程師都有我這樣的經歷。但是有兩門知識卻是不可或缺的:一是過程儀表的硬件知識,包括傳感器、變送器(二次儀表)和PLC本身,這是構建控制系統的基礎;二是過程控制理論,包括各種控制模型的原理和應用,其中最重要的是二位調節和PID調節模型。PID調節是目前用得最廣泛的過程控
制手段,且變化多端。學習PID最好的方法就是讀書。幾乎所有講解過程控制的書籍都有關于PID的內容,多讀基本相關的書籍對理解PID是很有益處的。我發現不少網友在進入PLC領域時,缺乏這些相關知識。這并不可怕;可怕的是當事者不能靜下心來彌補知識的缺陷。我們不要怪罪學校沒有教授這些內容,而是要注重自己如何去學習這些知識。工作中遇到的許多問題是學校里沒講過的,這不能成為我們拒絕工作的理由,而應該以積極的態度去應對這些問題。我的體會是,為了解決工作中的問題而學習的知識,比課堂上學的東西更容易記住。
5、養成良好的編程習慣
每個人編程都會有不同的習慣和特點,不能強求一致。但是一些好的習慣還是應該為大多數人所遵循。一是理順邏輯關系、時序關系,編制程序框圖;二是合理分配主程序、子程序和中斷程序;三是合理分配寄存器,編制寄存器符號表。
PLC編程更接近于單片機,或者說PLC就是模塊化的單片機。因此PLC的很多操作都是直接針對寄存器的,如果在程序中出現不合理的寄存器地址重疊,一定會出現不可預想的后果。編制寄存器符號表不僅可以避免上述問題(MicroWin會有問題提示),而且可以使程序具備更好的可讀性。這和VB中定義變量有異曲同工之處。
VB編程中關注的是事件,不強調主程序和子程序的觀念,因為VB主程序的工作是由PC的操作系統完成的。PLC則不然。PLC程序是以主程序為主干的,CPU不斷的循環執行主程序,只有觸發條件成立時才會調用子程序或中斷程序。即子程序和中斷程序所執行的任務不是全時需要的。如果把這些任務都放在主程序中會無端增加主程序的工作量,降低程序的效率。這點和單片機的編程思路是一致的。子程序的使用可以使整個程序的邏輯更清晰。而且子程序可以分開編寫、調試,最后“安裝”到主程序上。這樣你可以一個一個解決問題。
PLC編程,無論是LAD,抑或STL,都不如VB那么直觀、有趣,更不如CAD那么形象。但比單片機的匯編語言的可視性強多了。對于初學者,LAD(梯形圖)的編程相對直觀,更容易上手。
最后,PLC提供了豐富的指令、模塊,比單片機方便了很多。但是初學者編程時應盡量先使用簡單的指令達到目的。盡管看上去有點土,卻不失為一個入門的好途徑,且對你理解那些較為復雜的指令會有幫助。具備了一定經驗后,應該考慮掌握復雜指令的應用,以及程序的優化。
第四篇:PLC編程經驗詳談
PLC編程經驗詳談
(晴天)2009-3-17 13:31:00
------------------
PLC程序調試步驟
人的腦力是有限的,并且記事情也有時間性。過了N天就會忘記每次修改的原因,為什么要加這條指令,為什么要刪除這個網絡,讓自己以后看自己以前編寫的程序時都會很困惑。做到以下步驟,對所有程序理解與修改會有很大幫助的。
1、把原有程序另存一個, 在另存的程序上作修改。文件命名一個主要的程序名稱,標注第幾次修改,并加上修改的日期,最好是在文件名外加上簡要的修改標題。例如: 《 捆扎程序5(06.10.23翻板步進電機加條件)》
2、用.doc文件記錄修改的年月日。
3、在日期下面記錄修改程序的步驟,增加或是刪除了哪些指令等。并在程序的編輯條注釋中做記錄,以備下次修改。
4、在.doc文件中詳細記錄修改程序的原因,所出現的故障現象是什么,故障是如何排除的。
5、在.doc文件中標注修改后所現用的程序全名,包括日期與簡要的修改標題。
6、把過時與現用的程序用,過時文件夾與現用文件夾分開整理,按日期排列。
這樣每次所作的修改就有了詳細的檔案,便于以后的程序修改。現用的程序是標有最近日期的程序。
這樣的工作步驟同時也適用于電氣圖紙的修改
PLC編程經驗
弄通有關PLC程序設計理論是重要的。沒有這方面的理論準備或指導,僅靠在實踐中摸索,簡單的問題還好辦。復雜的就不好辦了。不僅無從下手,而且花了很多時間與精力,也難編出效率較高、質量也較高的程序,常常是事倍功半。
但是,編程的具體實踐,以及在這個實踐中得來的知識或技能,即經驗,也是重要的。沒有經驗,僅有理論,既無法深刻理解理論,又無法靈活應用理論。這正如學數學,如僅了解一些定理或記住一些公式,沒有作相應的練習,肯定是學不好的。更不用說,任何理論也都只是經驗的總結,歸根到底也都有是來自實踐。
1、經驗積累
經驗有別人的,也有自己的,都很重要。前者要靠細心學習,后者要靠用心積累,都要在一定的時間與必要的精力。
別人的經驗有上了書的或登載在雜志上的。有的是細心學習別人的,但多數是我自己的經驗。所有的例子都經我測試過,都經實踐證明是可行的。我想,別的書本或雜志上介紹的也會是這樣的。所以學習這樣楊功的經驗是必要的。
還有就是你同事的經驗,也是值得學習。這種經驗離你很“近”,很易借鑒。
自己的經驗則是最重要的。要在自己的實踐中,積累自己的經驗。同時,最好在學別人的經驗時,也能親自作些測試,能使自己也有類似的經歷,進而把這些經驗變成自己的。這也是自己經驗的重要積累。
還有一些失敗的經驗,這往往是不會公開的,但這些經驗也要學習,也要積累。
經驗的積累要用自己的腦記,更要用電腦記。最好作些分類,建立一個自用的程序庫,以便于隨時引用。
2、經驗升華
經驗還有待升華。升華有三個層次:
最低的層次就是建立一個典型的程序庫,供今后再用。若程序復雜,還可建一些功能塊,或子程序,以便以后引用。
其次,要總結出有效算法。如單按鈕起停程序庫等。
最高層次的升華是把經驗上升到理論的高度,為豐富PLC程序設計理論作貢獻。我想,隨著PLC使用的普及與提高,是會有越來越多從經驗中升華出來的,而又能用以指導實踐的PLC編程理論的。
3、經驗應用
經驗積累、經驗升華都是為了應用。經驗應用有三方面:
1)用作工程設計模板。設計新系統時,選用一個或幾個與現設計工程類似的,已取得成功的工程,作樣板進行設計。這既可減輕設計的工作量,又增加設計的成功率。這也是信息可重用的一大好處。
2)用作程序設計參考。在無成功的工程可作樣板時,在新設計的邏輯中,仍有相當一部分控制邏輯,可采用或借用已有典型邏輯,這也可減少設計的工作量,增加設計的成功率。
3)用作算法設計參考。在既無樣板可參照,又無典型可采用時,還可運用過去的一些成功的算法。
經驗是寶貴的,但是經驗特別是個人經驗,總是有限的。所以,經驗的應用也還要與編程理論相結合PLC現場工程師工作指南
一、出發前的準備
從事PLC的技術支持的人,如果是要到現場開始進行系統調試,無論是對OEM客戶,還是對一個過程控制的系統集成,都要在事先做好一些準備工作。就像一個“驢友”出行前,要更換自己的服裝尤其是鞋子,帶好水、食品,還要準備在野外的一些防身用品,如果是過夜的話,還要有帳篷、手電筒等一樣,作為一個職業的PLC技術支持工程師,也有不少的東西是要準備的。
首先要安排自己的行程計劃和衣食住行。如果是需要住宿的話,那么如何定機票、酒店(旅館、招待所),這里就不多說了。如果時間很長(如超過一個月),為了省錢,就要考慮在當地租房子了,尤其是出發的是一個小組,而不是一個人的時候。衣食住行,這些問題與普通的旅行是一樣的,雖然這些問題對你完成任務的影響力并不亞于你的專業水平。想
象一下,你到了現場,因為食物中毒導致一個星期拉痢疾的情況會對工作造成什么樣的影響,就知道該準備那些東西了。通常,有經驗的自動化公司的行政部門會為工程師考慮好這些情況,但是,作為工程師自己一定要進行確認,看看是否所有的事情都已經安排好了。
安頓好了衣食住行的后,要準備自己的工具。作為PLC的現場調試工程師,并不需要很多的調試工具。但是,一個螺絲刀、一臺萬用表,還是必備的。另外,如果要與現場的儀表傳感器進行系統聯調的時候,還要有一臺信號發生器來模擬現場儀表的信號,以確定當發生問題時,現場的信號是完好的。還有,一臺結實的手提電腦,是你編程和調試的必需的工具。雖然這些工具你可以要求用戶準備好,但是,作為一個職業的PLC工程師,如果連這幾樣工具都沒有,會被用戶懷疑你的職業水平的。其它的一些儀器儀表,如果需要的話,你可以向公司或者客戶提出來,讓他們提前準備,比如,示波器、穩壓電源等等。畢竟這些不那么通用的儀器,通常是不可能隨身攜帶或備用的。
有一些常被忽視的小東西,你準備了之后一定有用的。如,電氣膠帶、熱縮套管、打火機(你吸煙的話自然會有,沒有別人也會有),束線帶、還有,如果現場接線已經完成了,要準備好一些與信號線相同的電纜,和一些固定基座的螺絲。你可能懷疑要這些做什么用,相信我,帶上這些,雖然有些只值幾分錢,但到了現場后,可能會節約你一天甚至幾天的時間,尤其是你去的地方是在一個偏遠的山區的時候。雖然在發貨的時候廠家都有螺絲釘,但是到了現場什么都有可能發生,如果螺絲釘不夠(而這是每次都必然發生的),會引起許多問題。
除了以上的東西,就是這次調試所要帶的備品備件了。雖然現場的貨物清單可能會已經考慮了備品備件的問題,但為了應付萬一的情況,有些備件你最好還是自己要隨身攜帶。首先是PLC的基板(有的成為機架)、電源、CPU模塊,因為這些是一臺PLC能夠工作的基礎,如果現場只有一套系統,那么這些模塊就只有一個,假如沒有備分的話,一旦出現故障,你的所有的工作都必須停下來。因此最好帶上一套。
其它的I/O模塊和通訊模塊,如果現場只有一個的,你都要考慮在多帶一個。對于那些現場已經有兩塊以上的模塊,你就不用考慮自己帶了。
二、設計交底工作
如果系統設計不是你自己做的,那么在出發前,就要與系統的設計人員進行充分的溝通,對于不清楚和不明白的地方,一定要弄清楚,確保自己清晰地理解了要完成的工作目標,和設計者的意圖。不要輕易否定設計者的方案,也不要輕易地說別人那里設計得不行。
但是,因為你是從事現場的工程師,因此,也不必過于迷信設計者。你可以提出自己的建議。比如,PLC的機架和CPU模塊和I/O模塊的搭配原則,可能有時候,設計師不知道你所用的 PLC的機架有4槽、6槽和8槽,甚至12槽的,因此,也許全部都選了8槽的,而導致了幾個槽的空缺,你可以建議它修改為4槽或6槽的。
方案設計中,最容易出問題的地方是通訊,現場調試最麻煩的地方也是通訊,所以對于通訊的部分,你必須清晰了解系統的框架結構,并且對需要進行通訊的東西在出發前就要全部進行一遍調試,而且要確認其中的所有需要通訊的模塊是可以通訊的。比如,操作臺電腦、觸摸屏、PLC、變頻器、其它的PLC、一些智能儀表和儀器,如果這些東西需要通訊的話,你必須要確認它們相互之間是可以通訊的,如果你不確認的話,就要與廠家聯絡,并親自再試一次。如果PLC的節點數較多,要考慮距離和廠家CPU的限制。
如果系統較大,遠程單元、本地機架數量、每個機架的模塊數量的限制,并非出于系統功能和技術上的限制,而是由于使用規范性的限制。在系統硬件組態時,要考慮這些模塊的搭配作用。
對于電源模塊的配置,一個資深的工程師應該能夠做出比較合理的搭配。例如,電源模塊通常有5A和10A的分別,如果模塊較少,可以選用功率小的電源模塊,如果模塊較多,則應該選用大功率的電源模塊。而一般,如果現場儀表需要PLC也供應24V直流電源而不是采用外部電源供電(如RTU)的情景,通常CPU所在的機架上選用大功率的電源比較合理。
此外,在I/O模塊的安裝時,根據不同的系統,通常同型號的模塊放置在一起。但是,如果對于輸出模塊與輸入模塊形成回路的,則可以將一個回路的參量所涉及的模塊放置在一個機架上(或一個CPU所控制的機架上)比較合理。有的設計師在設計的時候不會考慮這一點,你可以調整過來。
在選型的時候,因為各種PLC都有大型、中型、小型的分別,這些分別主要是由CPU模塊的性能不同造成的。在實際上,并非一定大型的功能就是合適的。除了價格方面的考量之外,主要是,如果控制點數不多,小型的CPU模塊完全可以勝任,則小型的CPU反而比大型的CPU模塊工作還要可靠一些。因為,小型的CPU所涉及的資源少,而大型CPU的資源多,在程序執行中,為處理那些程序不需用到的資源時,也要分配時間去處理,這樣不僅造成資源的浪費,可能在程序處理上不及小型CPU可以更單純和穩定地工作。
在設計交底的過程中要指出的是,對于設計中的任何變更,你只能提建議,而不是擅自做修改。因為,你的職責是按照設計施工,而不是設計,因此,對于任何你發現的不合理的東西,你可以提出意見,但必須要等到設計變更確認書下到你手里后,你才能按照變更后的設計工作,盡管這個變更可能是你的意見。還有,即使最初的設計也是你做的,你在變更后,也要通知客戶,并取得客戶的書面同意。
三、裝機步驟
到了現場后,進行系統安裝前,需要考慮安裝環境是否滿足PLC的使用環境要求,這一點可以參考各類產品的使用手冊。但無論什么PLC,不都能裝設在下列場所:含有腐蝕性氣體之場所,陽光直接照射到的地方,溫度上下值在短時間內變化急遽的地方,油、水、化學物質容易侵入的地方,有大量灰塵的地方,振動大且會造成安裝件移位的地方。
如果必須要在上面的環境使用,則要為PLC制作合適的控制箱,采用規范和必要的防護措施。如果需要在野外極低溫度下使用,可以使用有加熱功能的控制箱。如何做這些防護箱或控制箱,各制造商和和資格的系統集成商將會為客戶提供相應的供應和設計。
在使用控制箱時,在控制箱內OpenPLC安裝的位置要注意如下事項:控制箱內空氣流通是否順暢(各裝置間須保持適當的距離),變壓器、馬達控制器、變頻器等是否與PLC保持適當距離,動力線與信號控制線是否分離配置,組件裝設之位置是否利于日后之檢修,是否需預留空間,供日后系統擴充使用。
除了上述注意事項之外,還有其它注意事項要留意。
首先比較重要的是靜電的隔離。靜電是無形的殺手,但可能因為不會對人造成生命危險,所以許多人常常忽視它。在中國的北方、干燥的場所,人體身上的靜電都是造成靜電損壞電子組件的因素。雖然你被靜電打到的話,只不過是輕微的酥麻,但這對PLC和其它任何電子器件就足以致命了。
要避免靜電的沖擊有下列三種方式:在進行維修或更換組件時,請先碰觸接地的金屬,以去除身上的靜電;不要碰觸電路板上的接頭或是IC接腳;電子組件不使用時,請用有隔離靜電的包裝物,將組件放置在里面。想象PLC里的元器件是一個嬌嫩的嬰兒,而那些靜電會導致這個嬰兒死亡,你就會更容易以正確的態度對待這個問題了。
基座安裝(RACK)時,在決定控制箱內各種控制組件及線槽位置后,要依照圖紙所示尺寸,標定孔位,鉆孔后將固定螺絲旋緊到基座牢固為止。在裝上電源供應模塊前,必須同時注意電源線上的接地端有無與金屬機殼連結,若無則須接上。接地不好的話,會導致一系列的問題,靜電、浪涌、外干擾,等等。由于不接地,往往PLC也能夠工作,因此,不少經驗不足的工程師就誤以為接地不那么重要了。這就像登山的時候,沒有系上保護纜繩一樣,雖然你正常前進的時候,保護纜繩沒有任何作用,但一旦你失足的時候,沒有那根繩子,你的生命就完結了。PLC的接地,就相當于給PLC系上保護纜繩。
在I/O模塊安裝時,須注意如下事項:I/O模塊插入機架上的槽位前,要先確認模塊是否為自己所預先設計的模塊;I/O模塊在插入機架上的導槽時,務必插到底,以確保各接觸點是緊密結合的;模塊固定螺絲務必鎖緊;接線端子排插入后,其上下螺絲必須旋緊。由于現場的變壓器、電機等影響,多少會有振動,如果這些螺絲釘松動了,會導致模塊從機架中松開
第五篇:三菱PLC編程使用方法
三菱PLC編程使用方法
1、FX系列不用設置 PLC I/F 選定確認CPU系列后,在通訊選擇頁直接按確認;
2、A系列要設置 PLCI/F(三菱PLC編程電纜的自制2和3 已測試成功)選定確認ACPU后,在通訊選擇頁的PLCI/F設置欄,雙擊“CPU模塊”,選擇“使用MAC/MTA透明模式”再按確認; 之后就能同時傳輸主程序和參數等數據了。