加入收藏 在線留言 聯系我們
            關注微信
            手機掃一掃 立刻聯系商家
            全國服務熱線17838383235
            公司新聞
            6ES7355-2CH00-0AE0現貨西門子代理
            發布時間: 2024-03-07 11:57 更新時間: 2024-11-22 08:50

            6ES7355-2CH00-0AE0現貨西門子代理

            6ES7355-2CH00-0AE0現貨西門子代理

            6ES7355-2CH00-0AE0現貨西門子代理



            一個完整的可編程邏輯控制器(PLC)程序是什么樣子的 


            一個完整的可編程邏輯控制器(PLC)程序是什么樣子的

            完善的可編程控制器(PLC)程序的設計要求

            一個完整的PLC程序不僅要使系統運行簡單,還需要注釋完整、架構、擴展性好、報警保護系統和仿真系統完整才能運行。

            1.簡單

            使PLC程序盡可能簡單。簡單就是盡量使用標準化的程序框架和簡單的指令。

            為了使程序簡單,從大的方面來說,優化程序結構,用流控指令簡化程序,從小的方面來說,用強大的指令代替單一的函數指令,注意指令的排列順序。

            2.可讀性

            設計的程序要求可讀。這不僅方便程序員加深對程序的理解和調試,也方便別人閱讀你的程序和用戶維護。必要時,該程序也可以推廣。

            為了使程序可讀,設計的程序應該盡可能清晰。要注重層次性,實現模塊化,才能用面向對象的方法進行設計。使用更標準的設計。

            特殊情況下,使用語言編程,多數情況下使用梯形圖編程,便于閱讀。

            那么I/O分布應該是有規律的,容易記憶和理解的。如果需要,應該做一些標注工作。內部設備的使用也要有規律,不能隨便使用。

            編程之初要注意可讀性。完全做到不容易。因為在程序調試過程中,指令的增減和內部設備的使用變化,可能會使原本比較清晰的程序有些混亂。所以在設計中,調試的增減是有一定余量的,然后調試完了就整理出來,這樣設計出來的程序質量更高。

            程序的注釋至少應該有以下幾個方面:

            A.系統說明:整個程序的版權公司和本程序的目的

            B.版塊注釋:本版塊的主要目的和作者

            C.段注釋:該段代碼的目的

            D.可變注釋:不用說,重要性包括I/O注釋和中間可變注釋

            至于保密性,我覺得應該考慮程序的加密算法或者塊的加密,而不是用減少評論的小聰明。

            3.正確性

            PLC的程序必須是正確的,必須經過實際工作的驗證,才能證明能正確工作。這是對PLC程序基本的要求。如果這個做不到,再好,別的都沒用。

            為了使程序正確,我們必須準確地使用指令和正確地使用內部設備。說明書的準確使用關系到對說明書的準確理解。因此,有必要明確說明的含義和使用條件。如果需要,可以編寫一些小程序來測試一些不清楚的指令。

            對于同一個指令,由于PLC的出廠批次不同,或者PLC的系列型號不同,一些指令的細節可能會有所不同,所以你要仔細查閱編程手冊。正確使用內部設備也很重要。如果有些PLC有掉電保護,有些PLC沒有。務必使用斷電保護裝置,否則無法使用。

            對PLC程序來說,根本的要求就是要準確地使用指令,正確地使用內部設備,這樣才能正確地執行所編程的程序。

            舉個簡單的例子,西門子的上升沿和下降沿都需要使用存儲函數的變量作為中間變量,比如M點或者DB點。如果用FC的temp變量,會有問題。

            4.可靠性

            程序不僅要正確,還要可靠??煽啃苑从沉薖LC程序的穩定性,這也是PLC程序的基本要求。

            有些PLC程序在正常工作條件下或合法操作下可以正常工作,但在非正常工作條件下(如臨時斷電、快速重新通電)或非法操作(如按下某些按鈕出現故障或同時按下幾個按鈕)后就不能正常工作。這種程序不可靠,或不穩定,或程序不好。

            一個好的PLC程序可以識別異常工況,并將其與正常工況聯系起來,使程序適應各種情況。好的PLC程序可以拒絕非法操作,不留“痕跡”。僅接受合法操作。

            聯鎖是拒絕非法操作的常用手段,常用于繼電器回路,可由PLC繼承。

            5.易于修改

            使程序易于修改,即便于修改。

            PLC的特點之一就是方便,可以靈活應用于各種場合。解決辦法是修改或重新設計程序。

            重新設計程序用于改變可編程控制器過程的使用要求。不僅程序被重新編輯,I/O也被重新分配。大多數情況下,不需要重寫程序,做一些修改就夠了。這要求程序易于修改。

            易變意味著靈活,只需要很少的改動就可以達到改變參數或者修改動作的目的。

            6.可量測性

            很多程序可能在進入站點之前就已經編譯好了,但是到了站點之后,可能還需要添加其他程序。為了避免打亂整個系統的結構,你需要在每個功能區預留一定的空間備用。

            在硬件上留有足夠的余量。編譯軟件的時候考慮手動,自動,半自動,離開崗位。

            7.完整的報警系統

            工業環境中經常使用PLC系統,每次事故都會造成或大或小的損失。為了對事故進行預處理或大限度地減少事故損失,必須注意可編程控制器的報警和保護,可編程控制器是系統的重要組成部分。

            8.程序模擬

            為了保證現場調試進度或者給客戶看,往往需要在進入現場之前完全自動模擬自己的程序。因此,需要在程序中增加一個模擬程序,正?,F場運行后,程序斷開。為了使程序具有模擬功能,需要做以下工作:(1)將可編程邏輯控制器的實際輸入輸出點轉換為可編程邏輯控制器的中間變量或數據塊變量;

            (2)根據工藝要求,編制各設備的仿真程序。

            在設計PLC程序的過程中,如果能滿足上述要求,就可以稱之為好程序。

            可編程控制器(PLC)編程代碼

            1.選擇合適的可編程邏輯控制器(PLC)型號和輸入輸出點,當有特殊功能要求時,選擇特殊功能模塊。

            2.熟悉所選的PLC編程指令和編譯軟件。

            3.軟件組件規劃,包括內部繼電器、鎖存繼電器、數據寄存器、定時器、計數器等。

            4.程序規劃,一般按照故障提取、故障處理、手動處理、自動處理、輸出處理的順序進行編程。較大的項目或設備應由功能單元分段加工。如果自動生產線上有起重機、行走和頂升旋轉裝置,則應根據上述單位分段編程。

            5.分段、分塊編寫的程序前應加一小段注釋,說明程序的功能,必要時可注明相應的工藝流程。塊或分段程序和整體程序的定位順序基本上要按照工藝流程順序排列,以利于程序的可讀性。

            6.在程序設計之前,要對設備進行抽象,對常見的因素如停止、急停、過載、超限、超時、安全光幕、顛簸和停止、門開關等進行抽象。應提取并放置在起動電路或起動主控制和聯鎖電路中,這是整個程序結構的大前提。在此基礎上,程序可分為自動和手動兩個功能區。

            7.提取程序結構手動功能區的共性因素,如手動因素和危及設備人身安全的因素,放入手動主控和聯鎖回路中,對手動控制進行保護、屏蔽和報警。

            8.提取程序結構自動功能區的共同因素,如自動、超限、超時等,放入自動主控和聯鎖電路中,對自動控制下的設備進行保護、屏蔽和報警。一個總的原則是在保證安全的前提下,嚴格限制設備進入,寬松限制設備退出。

            9.在設計程序時,應設計程序的總復位功能,方便用戶在設備出現故障時盡快恢復設備的正常運行??倧臀粫r應充分考慮設備和人員的安全。

            10.當自動模式切換到手動模式時,程序應清除自動模式下的輸出和中間狀態。特別是在自動模式下使用設置命令時,必須在手動模式下使用復位命令將其清除。

            11、編程中嚴禁使用雙輸出,即同一輸出語句或同一輸出線圈在程序中出現兩次以上。不同模式下,同一個輸出點的輸出由中間繼電器傳遞,后匯集在一起,并與輸出點相連。12.使用觸摸屏時,觸摸屏和PLC共享的控制區和狀態區不得進行其他功能的編程。

            13.在使用PLC的專用模塊之前,先查明控制區和狀態區是否占用工作字。如果是這樣,這些工作字就不要在其他方面編程了。

            14、PLC輸入、輸出、中間繼電器、定時器、計數器、數據寄存器等。應該用中文注釋。輸入和輸出還必須有組件名稱編號。對于相應的輸入點,默認是外圍開關接NO觸點,需要接NC觸點的必須在備注中注明。所有注釋都要清晰,容易產生誤解,盡量少用籠統的引用。

            15.項目調試完成后,系統必須保留終的軟件程序,保存的文件名應包括項目號/作者/日期信息/版本號等。

            16.程序加密:加密程序的密碼必須保存在一個專門的文件中,標明相應的用戶名和密碼權限,并分發給至少兩個人來理解密碼,以防止因密碼丟失而導致程序無法打開的情況。

            編程建議

            1.當PLC和上位機(或觸摸屏)組成監控系統時,屏幕上有“手動”和“自動”等多種控制模式(一般控制模式多了就只有一種)。程序中可以使用“MOV”命令。例如,在:中,當選擇“手動”時,常數1 MOV將存儲在寄存器VB10中,當選擇“自動”時,2 MOV將存儲在同一寄存器VB10中。只要判斷寄存器的數據,就知道系統是哪種控制模式。這種思路的好處是容易理解,不需要聯鎖等繁瑣的程序。

            2.當程序有模擬控制時,如果讀取的模擬基本無誤,可以采用時間濾波延時一段時間。如果讀取的數據誤差很大,需要采用其他濾波方法,比如計算平均值??梢圆殚喯嚓P資料。

            3.在程序調試過程中(尤其是在設備修改時將你的程序添加到原設備的程序中),當程序語句中的條件滿足且輸出線圈沒有連接時,可以檢查你的程序是否在這類語句之間,比如JUMPgo to等等。另一種可能是程序中斷后,條件滿足但不打開輸出,一般不掃描本節程序。

            4.在順序控制程序中,即一個動作完成后,進入下一個動作,以及其他類似的順序控制,方便我采用10 ^ 10的控制方式。思路是:預置一個寄存器,初始值為0。當系統啟動時,當寄存器為10且寄存器等于10時,可以進行個動作。個動作完成后,寄存器10可以用于第二個動作。第二個動作完成后,寄存器10等于30,所以只要你判斷寄存器中的數據,你就知道你想完成那個動作。需要跳的時候可以加20到30而不是10,看實際需要。為什么要加10而不是1,因為加了10之后,如果插入一個段落,只需要選擇這10個自由位置中的任意一個。

            5.在設計程序時,當出現過程故障(不受控制系統控制)時,好保持故障現象,聲光報警。直到操作員重置,讓他知道系統出現故障。否則機器會停機,別人會認為你的程序有問題。一般來說,我們在設計新系統時應該注意這些。

            6.對于經常調用的子程序,可以做成子模塊,經常調用。

            7.由于生產機械在工作循環中的每一步移動都需要一定的時間來執行,并且這些時間具有一定的限制,所以可以將這些時間用作在要檢測的步移動開始的同時啟動計時器的參考。定時器的時間設定值比正常情況下動作持續的時間長20% ~ 30%,定時器的輸出信號可用于報警或自動停機裝置。當生產機械的某一工作步驟的動作時間超過規定時間,達到相應定時器的預設時間時,定時器發出故障信號,然后進入下一工作步驟,停止正常工作循環程序,啟動報警或停機程序。這就是我們常說的超級節拍保護。

            8.一些安全檢測開關(如急停按鈕、安全光幕、限位開關等。)都是常閉(NC)輸入。

            9.為了安全節能,盡量把輸出設計成必要時動作,一到位就停止輸出,而不是設計成平時總是輸出,必要時斷開輸出。

            10.執行器的動作原理應該是靜止不動而不是移動!

            11.單臺設備控制:進行軟手操作時,單臺設備必須具有軟手操作/自動切換和啟動/停止功能。當自動切換到軟手操作時,設備不能停止;當從軟手操作切換到自動操作時,設備的啟動/停止取決于自動程序。

            12.單臺設備(泵、風機等大型設備)運行24小時后必須旋轉,且必須有運行時間積累。如果啟動/停止順序是由上位機設定的,則應由操作員自行設定。


            聯系方式

            • 電  話:17838383235
            • 經理:徐嘉泉
            • 手  機:17838383235
            • 微  信:17838383235