隨著工業(yè)控制技術(shù)的發(fā)展,PLC已經(jīng)作為工業(yè)控制的基礎(chǔ)廣泛地運(yùn)用到工業(yè)自動(dòng)化領(lǐng)域中。
可編程控制器的基本組成:
從語(yǔ)辭義上來(lái)講,PLC也是一種計(jì)算機(jī)控制系統(tǒng),只不過(guò)它比一般的計(jì)算機(jī)具有更強(qiáng)的與工業(yè)過(guò)程相連接口和更直接地適用于控制要求的編程語(yǔ)言。所以PLC與計(jì)算機(jī)的組成十分相似,具有中央處理器(CPU),存貯器,輸入/輸出(I/O)接口,電源,編程語(yǔ)言,詳見(jiàn)圖1。
2 PLC編程思想
現(xiàn)代工業(yè)生產(chǎn)的控制體系通常需要涉及很多外部的設(shè)備,對(duì)于設(shè)備的動(dòng)作要求通常十分嚴(yán)格。在很長(zhǎng)一段時(shí)間中,編程需要首先根據(jù)具體要求繪制流程圖,然后根據(jù)流程圖編寫程序的框架,再在這個(gè)流程框架中增加約束信息和報(bào)警信息,因此這一編程思想是面對(duì)過(guò)程的。數(shù)據(jù)與數(shù)據(jù)的處理過(guò)程是統(tǒng)一的,沒(méi)有多少可以重用的代碼,并且如果代碼的數(shù)量過(guò)大,會(huì)對(duì)維護(hù)工作產(chǎn)生很大壓力。面向過(guò)程的PLC編程方法,主要存在的缺陷在于:割裂被控對(duì)象在PLC程序和現(xiàn)實(shí)中的聯(lián)系,使得內(nèi)部邏輯和被控對(duì)象不太明確,從而使程序后期的維護(hù)工作變得困難;另外程序內(nèi)部的邏輯關(guān)系復(fù)雜,因此控制的流程不夠明確,容易造成錯(cuò)誤;輸入和輸出都缺乏整體性,程序員通常對(duì)于各輸入點(diǎn)和輸出點(diǎn)作出孤立的考慮,無(wú)法實(shí)現(xiàn)兩者之間有效的邏輯關(guān)聯(lián)。
3 可編程控制器的編程方法
3.1 編程語(yǔ)言
目前的PLC編程語(yǔ)言主要有梯形圖、語(yǔ)句表、邏輯圖、高級(jí)語(yǔ)言等。
梯形圖———這種方法比較適合于初頻道接觸PLC的編程人員使用,因?yàn)樗容^直觀,簡(jiǎn)單易懂,只要具備基本的電路知識(shí),易看懂易編程。
語(yǔ)句表———用助記符表示的PLC的一個(gè)功能。PLC在執(zhí)行程序時(shí),實(shí)際上就是按照語(yǔ)句表編寫順序,逐個(gè)按照助記符表示的功能進(jìn)行執(zhí)行。這種方法比較直觀地反映出編寫程序的大小;在某些指令執(zhí)行過(guò)程中,用語(yǔ)句表編寫比用梯形圖編寫掃描時(shí)間較少。但對(duì)于初學(xué)者和復(fù)雜的功能有一定的難度。
邏輯圖———用邏輯關(guān)系表達(dá)出來(lái)的方式編程。它具有邏輯關(guān)系比較、清晰,但不易懂。一般情況下不采用此方法。
高級(jí)語(yǔ)言———如C語(yǔ)言,Basic語(yǔ)言或?qū)iT的高級(jí)語(yǔ)言。使用高級(jí)語(yǔ)言編程的PLC,一般是中高型PLC。
3.2 程序的結(jié)構(gòu)框圖
在編程序之前,必須首先具備一些資料,這些資料是根據(jù)被控對(duì)象的要求和條件確定的,一般有:I/O點(diǎn)分布和意義表,參數(shù)的定義和地址分配表,被控對(duì)象響應(yīng)的工藝及安全性條件說(shuō)明書等。
程序框圖是編程的主要依據(jù),用此要盡可能地根據(jù)資料詳細(xì)化,以便確定應(yīng)用程序的基本結(jié)構(gòu)。程序框圖包括兩種:程序結(jié)構(gòu)框圖和功能控制框圖。
程序結(jié)構(gòu)框圖是一臺(tái)PLC的全部功能部分在內(nèi)存中前后排列的縮影,使用中可以根據(jù)結(jié)構(gòu)圖了解所有功能控制在整一個(gè)程序中的位置。
3.3 程序設(shè)計(jì)結(jié)構(gòu)方式
軟件設(shè)計(jì)任務(wù)的復(fù)雜程度決定用戶程序的結(jié)構(gòu)。
(1)線性編程:程序以線性的或順序的方式執(zhí)行每條指令。基本上是將程序放在一個(gè)主程序內(nèi)全部完成。
(2)分部式編程:程序設(shè)計(jì)按照動(dòng)作邏輯功能的不同分成各自獨(dú)立的子程序塊,每個(gè)子程序完成一項(xiàng)或多項(xiàng)簡(jiǎn)單的且獨(dú)立的任務(wù)。然后由主程序按照工藝有條件或無(wú)條件調(diào)用子程序。這些子程序在每一個(gè)掃描周期內(nèi)只能調(diào)用一次。
(3)結(jié)構(gòu)化編程:獨(dú)立編制具有通用性的程序塊或子程序,通過(guò)賦給這些通用子程序塊不同的信息或條件,在每個(gè)掃描周期內(nèi)可以反復(fù)調(diào)用這些通用程序塊。
對(duì)于壓鑄機(jī)程序設(shè)計(jì),由于其有一定的復(fù)雜性,建議采用“分部式編程”方法。具有的優(yōu)點(diǎn)有:易設(shè)計(jì)、易維護(hù)、易擴(kuò)展。
3.4 安全回路的設(shè)計(jì)
設(shè)計(jì)工業(yè)化控制程序,安全和信息描述是必要的一個(gè)環(huán)節(jié)。壓鑄機(jī)的動(dòng)作流程具有一定的危險(xiǎn)性,因此安全回路的設(shè)計(jì)是應(yīng)引起重視。安全指設(shè)備和操作人員。安全回路應(yīng)考慮以下因素,并進(jìn)行控制:
(1)操作失誤引起的危險(xiǎn)或冒險(xiǎn)。
(2)外部配件的損壞引起的危險(xiǎn),外部配件包括PLC本身故障和硬件電路信號(hào)。
(3)動(dòng)作工藝流程規(guī)定的混亂引起的危險(xiǎn)。
(4)特殊性引發(fā)的危險(xiǎn),例如:冷室機(jī)的空壓射,易引發(fā)設(shè)備損壞時(shí)。停電或電源模塊故障時(shí)。
安全回路的設(shè)計(jì)時(shí)大部分采用緊急停止回路,自鎖回路,互鎖回路。外部信號(hào)保護(hù)回路,順控型回路等方式。同進(jìn)外部硬件回路也要組成保護(hù)回路:如熱繼電器、急停按鈕等。
綜合上述設(shè)計(jì)PLC的軟件有許多方法,設(shè)計(jì)人員除保持自己的設(shè)計(jì)風(fēng)格和必須遵循本公司的指導(dǎo)性要求外,設(shè)計(jì)的經(jīng)驗(yàn)是至關(guān)重要的,所以只有不斷地努力,才能摸索出適合自己的一種有效方法。但一些基本的步驟是公共的。
(1)對(duì)被控對(duì)象的過(guò)程和要求進(jìn)行分解,繪制出程序的結(jié)構(gòu)框圖,了解和掌握被控對(duì)象的控制要求和流程。
(2)確定各單元的功能特性,繪制出功能控制框圖。
(3)選擇合適的程序結(jié)構(gòu)方式,將各功能控制聯(lián)系起來(lái)。
(4)慎重考慮安全回路的設(shè)計(jì),制定故障的形式及控制方案。
(5)編寫各獨(dú)立部分的程序,確定各模塊程序的接口資料。
(6)調(diào)試各獨(dú)立塊程序,調(diào)試各模塊的接口程序。調(diào)試安全回路程序。
(7)聯(lián)機(jī)在線調(diào)試設(shè)備或過(guò)程。
4 案例分析
以汽車微電機(jī)壓裝控制系統(tǒng)為例,對(duì)于PLC編程方法進(jìn)行詳解。這一系統(tǒng)主要通過(guò)觸摸屏TPC、主控單元FPG以及位置控制單元FPG、模擬單元FP0、位移傳感器和伺服電機(jī)構(gòu)成。這一系統(tǒng)主要對(duì)伺服電機(jī)控制脈沖輸出,而脈沖輸出能夠直接封裝電機(jī)的運(yùn)行狀態(tài),而剩下的輸出則不需要在程序中大量使用,能夠單獨(dú)調(diào)用。具體如圖2所示。
壓裝流程中,前三項(xiàng)依次為快速工進(jìn)、預(yù)壓和慢速壓裝,這些過(guò)程是同向運(yùn)動(dòng),主要目的在于提高工作效率,因此三個(gè)過(guò)程之間都不能出現(xiàn)任何停頓,采用“P點(diǎn)控制”就能滿足要求。慢速壓裝的運(yùn)動(dòng)方向和第四項(xiàng)的快速退回方向相反,并且這一過(guò)程需要停頓。快速退回功能借助“E點(diǎn)控制”實(shí)現(xiàn)。具體如圖3所示。
FPWINGR編程軟件不能進(jìn)行模塊封裝的操作,但這也不會(huì)對(duì)對(duì)象思維產(chǎn)生影響。“E點(diǎn)控制”的觸發(fā)條件是R20,而“E點(diǎn)控制”的目標(biāo)脈沖頻率是雙字寄存器DT412,也是“E點(diǎn)控制”的目標(biāo)位置。采用對(duì)象封裝,主要目的在于避免數(shù)據(jù)的隨意訪問(wèn),使數(shù)據(jù)得以繼承。在“E 點(diǎn)控制”中,電機(jī)的屬性啟動(dòng)速度是500Hz,加速時(shí)間是100ms,正反方向的定義采用參數(shù)的方式固定。如果對(duì)這一對(duì)象進(jìn)行調(diào)試,則默認(rèn)繼承了這一屬性。只要對(duì)多個(gè)內(nèi)部繼電器觸發(fā)R20進(jìn)行擴(kuò)展,就能夠被多次調(diào)用繼承,也就是多態(tài)性。
時(shí)序?qū)拥幕A(chǔ)包括輸出層和外設(shè)層,時(shí)序?qū)訒?huì)根據(jù)一定時(shí)間順序?qū)敵鰧优c外設(shè)層進(jìn)行組合,同時(shí)輔助必要的數(shù)據(jù)處理,從而形成應(yīng)有的功能。壓裝的主流程為“P 點(diǎn)控制”和“E 點(diǎn)控制”模塊,再加上時(shí)間延時(shí)和計(jì)數(shù)處理與力峰值功能,最終形成初步的壓裝功能,再經(jīng)后期調(diào)試加上小范圍的改動(dòng),形成功能編寫能力。根據(jù)這一方法,能夠?qū)λ韪鞴δ苓M(jìn)行編寫,在完成了整個(gè)程序之后,實(shí)現(xiàn)整體調(diào)試的功能。后期維護(hù)需要修改某部分功能時(shí),可以快速定位到要修改的層,再找到相應(yīng)的模塊;增加功能時(shí),可以迅速查到已有硬件的封裝模塊,直接在時(shí)序?qū)釉黾右蟮墓δ軙r(shí)序。
5 結(jié)束語(yǔ)
通過(guò)分析以及實(shí)際驗(yàn)證發(fā)現(xiàn),本次研究所采用的編程方法編寫PLC程序,具有清晰的邏輯,并且具有層次分明和運(yùn)行穩(wěn)定的優(yōu)勢(shì)。這一編程方法能夠?yàn)槌绦蛘{(diào)試以及后期程序的維護(hù)以及程序功能的擴(kuò)展提供重要基礎(chǔ)。將此編程方法應(yīng)用在復(fù)雜的控制系統(tǒng)當(dāng)中,能夠有效提高編程效率,同時(shí)這一編程技術(shù)也能夠適用簡(jiǎn)單系統(tǒng),保證了復(fù)雜控制系統(tǒng)的集體設(shè)計(jì)具有更明確的分工,并確保更穩(wěn)定的性能。
責(zé)任編輯:YYX
-
plc
+關(guān)注
關(guān)注
5031文章
13786瀏覽量
472545 -
可編程控制器
+關(guān)注
關(guān)注
6文章
539瀏覽量
39361
發(fā)布評(píng)論請(qǐng)先 登錄
數(shù)字隔離器,如何高效賦能工業(yè)自動(dòng)化?

樹莓派PLC:讓工業(yè)自動(dòng)化進(jìn)入DIY時(shí)代!

三菱PLC在工業(yè)自動(dòng)化中的作用
三菱PLC自動(dòng)化控制應(yīng)用領(lǐng)域
RS232在工業(yè)自動(dòng)化中的應(yīng)用 RS232信號(hào)線如何選擇
PLC在工業(yè)自動(dòng)化的應(yīng)用及解決方案

PLC控制系統(tǒng)與工業(yè)自動(dòng)化關(guān)系
替換REF3012,國(guó)產(chǎn)電壓基準(zhǔn)源廣泛用于工業(yè)自動(dòng)化應(yīng)用


為什么這臺(tái)網(wǎng)關(guān)被稱為自動(dòng)化領(lǐng)域的“神器”?#工業(yè)自動(dòng)化 #工業(yè) #制造業(yè) #工控 #PLC
PLC網(wǎng)關(guān):工業(yè)自動(dòng)化與物聯(lián)網(wǎng)的融合點(diǎn)

評(píng)論