料小車自動(dòng)控制系統(tǒng)設(shè)計(jì))
1. 項(xiàng)目背景與整體方案選型1.1 運(yùn)料小車要解決的實(shí)際問題車間里有一臺(tái)往來于原料倉和生產(chǎn)線之間的軌道小車原來靠人工推來回一趟將近兩分鐘到了位置以后裝卸料還要人等效率低不說工人長期重復(fù)走路也容易疲勞。后來決定把它改成自動(dòng)運(yùn)行的小車控制系統(tǒng)核心需求就是三個(gè)自動(dòng)往返、到位停止、裝卸料聯(lián)動(dòng)。這類設(shè)備在小型包裝線、裝配線和物料周轉(zhuǎn)場景里非常常見。看上去是個(gè)不起眼的小改造但真正落地的時(shí)候要處理的問題一點(diǎn)不少小車走到兩頭要能準(zhǔn)確停下來不能沖過限位裝料和卸料的時(shí)間要跟物料流量匹配操作工人要能隨時(shí)手動(dòng)干預(yù)出故障了要能快速定位。用繼電器回路做這些功能也能跑通但控制柜里會(huì)塞滿中間繼電器和時(shí)間繼電器改動(dòng)一次動(dòng)作順序就得重新拆線接線現(xiàn)場維護(hù)特別麻煩。換成PLC方案以后中間的定時(shí)、互鎖、順序切換大部分都放到程序里了。硬件上只需要保留接觸器、斷路器和限位開關(guān)這些執(zhí)行與檢測元件控制柜清爽很多后續(xù)調(diào)工藝也方便。1.2 為什么選S7-200加MCGS這套組合選型的時(shí)候首先評估了控制規(guī)模。運(yùn)料小車的輸入信號(hào)主要是啟動(dòng)按鈕、停止按鈕、手動(dòng)/自動(dòng)切換開關(guān)、裝料位限位、卸料位限位、料位傳感器、手動(dòng)正反轉(zhuǎn)按鈕滿打滿算十幾個(gè)點(diǎn)輸出信號(hào)是正轉(zhuǎn)接觸器、反轉(zhuǎn)接觸器、裝料機(jī)構(gòu)、卸料機(jī)構(gòu)、運(yùn)行指示燈和故障指示燈不到十個(gè)點(diǎn)。這種規(guī)模用小型PLC最合適S7-200的CPU模塊自帶輸入輸出加一個(gè)擴(kuò)展模塊都用不上。選S7-200系列PLC而不是更大型號(hào)的控制器一方面是點(diǎn)位夠用另一方面是它的PPI通信協(xié)議與MCGS組態(tài)軟件配合得很成熟不需要額外買通信模塊。觸摸屏選的是MCGS的7英寸嵌入式一體化屏支持開關(guān)量、數(shù)值量、報(bào)警、實(shí)時(shí)曲線這些基本功能對這個(gè)小項(xiàng)目來說完全夠用。MCGS組態(tài)軟件的操作邏輯對電氣工程師很友好建變量、拖圖元、連動(dòng)畫、配置設(shè)備驅(qū)動(dòng)這幾個(gè)步驟掌握以后就能在一天內(nèi)搭出一個(gè)能用的畫面。它跟PLC之間的通信配置也不需要寫復(fù)雜腳本選定通信端口和協(xié)議把地址映射關(guān)系填對就行。這套組合不是最花哨的但在這種小設(shè)備控制場景里穩(wěn)定性和性價(jià)比的平衡點(diǎn)抓得比較準(zhǔn)。后期車間電工培訓(xùn)成本也低畫面報(bào)警彈出來能直接看到是哪個(gè)環(huán)節(jié)卡住了。1.3 系統(tǒng)架構(gòu)與自動(dòng)運(yùn)行流程整個(gè)系統(tǒng)硬件上分三層。設(shè)備層是軌道小車、電機(jī)、接觸器、限位開關(guān)、料位傳感器、裝料和卸料機(jī)構(gòu)控制層是S7-200 PLC負(fù)責(zé)接收信號(hào)、執(zhí)行順序控制、輸出驅(qū)動(dòng)指令監(jiān)控層是MCGS觸摸屏負(fù)責(zé)狀態(tài)顯示、參數(shù)下發(fā)和報(bào)警記錄。自動(dòng)運(yùn)行流程按裝料端和卸料端兩個(gè)位置來理解整個(gè)周期是這樣的小車停在裝料位操作員按下啟動(dòng)按鈕系統(tǒng)進(jìn)入裝料狀態(tài)裝料機(jī)構(gòu)開始工作裝料延時(shí)時(shí)間到或者料位傳感器檢測到料滿裝料停止小車向卸料位方向前進(jìn)到達(dá)卸料位限位開關(guān)動(dòng)作小車停下卸料機(jī)構(gòu)動(dòng)作開始卸料卸料延時(shí)時(shí)間到卸料停止小車反向返回裝料位回到裝料位限位后停下如果連續(xù)運(yùn)行開關(guān)已合上小車自動(dòng)進(jìn)入下一個(gè)裝料周期否則停在初始狀態(tài)等待下一次啟動(dòng)。后面講到的所有地址分配、梯形圖邏輯、觸摸屏畫面都是圍繞這個(gè)流程展開的。2. 控制邏輯拆解與關(guān)鍵參數(shù)設(shè)計(jì)2.1 I/O點(diǎn)表與地址分配寫程序之前我習(xí)慣先把I/O點(diǎn)表完整列出來。這張表既是接線的依據(jù)也是后面做符號(hào)表、寫梯形圖的依據(jù)省得程序?qū)懸话氚l(fā)現(xiàn)地址沖突。符號(hào)名稱PLC地址類型說明啟動(dòng)按鈕I0.0常開輸入啟動(dòng)自動(dòng)流程停止按鈕I0.1常閉輸入停止所有動(dòng)作手動(dòng)/自動(dòng)切換I0.2開關(guān)輸入手動(dòng)模式或自動(dòng)模式裝料位限位I0.3常開輸入裝料端到位信號(hào)卸料位限位I0.4常開輸入卸料端到位信號(hào)手動(dòng)正轉(zhuǎn)按鈕I0.5常開輸入手動(dòng)方式下前進(jìn)手動(dòng)反轉(zhuǎn)按鈕I0.6常開輸入手動(dòng)方式下后退料位傳感器I0.7常開輸入料滿信號(hào)連續(xù)運(yùn)行開關(guān)I1.0開關(guān)輸入允許自動(dòng)循環(huán)熱繼電器信號(hào)I1.1常開輸入過載保護(hù)正轉(zhuǎn)接觸器Q0.0繼電器輸出小車前進(jìn)反轉(zhuǎn)接觸器Q0.1繼電器輸出小車后退裝料機(jī)構(gòu)Q0.2繼電器輸出裝料控制卸料機(jī)構(gòu)Q0.3繼電器輸出卸料控制運(yùn)行指示燈Q0.4繼電器輸出自動(dòng)流程指示故障指示燈Q0.5繼電器輸出報(bào)警指示停止按鈕我用的是常閉輸入這樣即使按鈕沒按信號(hào)回路也是導(dǎo)通的。萬一停止按鈕的接線斷了或者插頭松了PLC馬上會(huì)檢測到停止信號(hào)系統(tǒng)能停下來如果選了常開輸入斷線時(shí)系統(tǒng)會(huì)失去停機(jī)手段現(xiàn)場查故障會(huì)非常被動(dòng)。2.2 為什么用步進(jìn)指令組織順序控制運(yùn)料小車的動(dòng)作有一個(gè)明顯特征嚴(yán)格的先后順序。裝料沒完成不能亂動(dòng)卸料沒完成不能往回跑。如果用普通的置位復(fù)位指令寫這個(gè)邏輯每個(gè)動(dòng)作之間要加一大堆常開常閉互鎖條件程序越滾越長后期想改一個(gè)動(dòng)作順序牽一發(fā)動(dòng)全身。我用的方案是S7-200的步進(jìn)指令也叫SCR指令配合狀態(tài)繼電器S0.0到S0.4來管理流程。每個(gè)狀態(tài)只負(fù)責(zé)一個(gè)階段的動(dòng)作狀態(tài)的進(jìn)入和跳出通過轉(zhuǎn)移條件控制。這樣程序段與段之間是隔離的某一步卡住了看狀態(tài)繼電器的當(dāng)前值就能定位到是哪一段的問題。自動(dòng)流程的狀態(tài)分配如下S0.0初始等待狀態(tài)系統(tǒng)復(fù)位后停留在這里S0.1裝料狀態(tài)輸出裝料機(jī)構(gòu)等待裝料時(shí)間到或料滿信號(hào)S0.2正向運(yùn)行狀態(tài)輸出正轉(zhuǎn)接觸器小車前進(jìn)S0.3卸料狀態(tài)輸出卸料機(jī)構(gòu)等待卸料延時(shí)結(jié)束S0.4反向運(yùn)行狀態(tài)輸出反轉(zhuǎn)接觸器小車返回裝料位。狀態(tài)之間的轉(zhuǎn)移條件分別是裝料完成信號(hào)、卸料位限位、卸料完成延時(shí)、裝料位限位。這套思路就像車間流水線上的工位一樣上一道工序干完了才把工件交給下一道工序。2.3 定時(shí)器、計(jì)數(shù)器與過程參數(shù)設(shè)置裝料時(shí)間和卸料時(shí)間屬于典型的現(xiàn)場可調(diào)參數(shù)我沒有寫死在程序里而是放到MCGS觸摸屏上供操作員調(diào)整。PLC內(nèi)部用V區(qū)作為參數(shù)存儲(chǔ)區(qū)觸摸屏通過通信讀寫這些地址。裝料時(shí)間默認(rèn)值設(shè)為35秒。這個(gè)值不是拍腦袋定的是根據(jù)現(xiàn)場實(shí)際流量計(jì)的裝料口每秒鐘的出料量大約能裝滿約兩個(gè)料箱容量車廂額定容量是六十箱算下來裝滿需要三十秒左右我再加五秒余量防止物料流動(dòng)性變差時(shí)裝不滿。對應(yīng)到定時(shí)器S7-200里編號(hào)T37以上的定時(shí)器是100毫秒精度的35秒對應(yīng)設(shè)定值350。卸料延時(shí)默認(rèn)20秒。卸料過程靠物料自重流出正常情況下十五秒能排空我留了五秒余量。對應(yīng)定時(shí)器T38設(shè)定值200。這兩個(gè)參數(shù)在觸摸屏參數(shù)設(shè)置頁里做了上下限約束裝料時(shí)間限制在10到60秒之間卸料時(shí)間限制在10到40秒之間。不讓操作員隨便填防止誤操作把延時(shí)設(shè)成幾百秒導(dǎo)致整個(gè)生產(chǎn)節(jié)拍被拖垮。裝料次數(shù)統(tǒng)計(jì)我用了一個(gè)加計(jì)數(shù)器C0每次裝料狀態(tài)進(jìn)入一次就計(jì)數(shù)一次累加結(jié)果存到數(shù)據(jù)寄存器里畫面上的“累計(jì)裝車數(shù)”可以直接讀取。3. 電氣接線與硬件配置實(shí)操3.1 主回路與正反轉(zhuǎn)接觸器互鎖運(yùn)料小車電機(jī)要實(shí)現(xiàn)正反轉(zhuǎn)常用的做法是兩路接觸器交換相序。主回路上三相電源進(jìn)線經(jīng)過斷路器后一路接正轉(zhuǎn)接觸器KM1一路接反轉(zhuǎn)接觸器KM2。KM2輸出的三相線中任意兩相調(diào)換一下再進(jìn)電機(jī)電機(jī)的旋轉(zhuǎn)方向就反過來了。這里最容易出問題的不是主回路接線而是互鎖環(huán)節(jié)。我曾經(jīng)見過只做軟件互鎖的設(shè)備PLC程序里串了常閉觸點(diǎn)但現(xiàn)場一旦由于干擾或誤操作導(dǎo)致兩個(gè)輸出點(diǎn)同時(shí)置位兩個(gè)接觸器一起吸合相間短路只在瞬間發(fā)生輕則斷路器跳閘重則燒接觸器和電機(jī)。所以這次接線在接觸器線圈控制回路里額外串了機(jī)械互鎖觸點(diǎn)KM1的輔助常閉觸點(diǎn)串在KM2線圈回路中KM2的輔助常閉觸點(diǎn)串在KM1線圈回路中。無論程序狀態(tài)如何兩個(gè)接觸器在硬件上都不可能同時(shí)吸合。軟件互鎖是第一道防線硬件互鎖是最后一層保底兩層缺一不可。電機(jī)主回路里面還串了熱繼電器FR熱繼電器的輔助常開觸點(diǎn)接PLC輸入I1.1。一旦電機(jī)過載發(fā)熱熱繼電器動(dòng)作PLC切斷輸出并點(diǎn)亮故障燈。3.2 輸入輸出信號(hào)接線細(xì)節(jié)S7-200大多采用漏型輸入公共端接直流24V電源的負(fù)極每個(gè)輸入點(diǎn)需要外部提供正電壓信號(hào)。按鈕開關(guān)一端接24V正極另一端接PLC輸入端子限位開關(guān)和傳感器也是同樣方式信號(hào)閉合時(shí)輸入點(diǎn)內(nèi)部光耦導(dǎo)通PLC讀到1。限位開關(guān)我用的是滾輪式機(jī)械行程開關(guān)裝在軌道兩端。機(jī)械行程開關(guān)的好處是觸動(dòng)力大、接線簡單、抗干擾能力強(qiáng)對這種低速軌道小車非常合適。接近開關(guān)用在卸料位檢測料位傳感器上選的是三線制NPN型常開傳感器棕色線接24V正藍(lán)色線接24V負(fù)黑色信號(hào)線接PLC輸入點(diǎn)。這種傳感器只有在金屬擋鐵進(jìn)入感應(yīng)范圍時(shí)信號(hào)線才導(dǎo)通。接線前一定要確認(rèn)傳感器型號(hào)NPN型的輸出低電平有效PNP型輸出高電平有效接錯(cuò)以后信號(hào)狀態(tài)永遠(yuǎn)不對排查半天才發(fā)現(xiàn)是選型問題。PLC輸出模塊我用的是繼電器輸出型Q0.0和Q0.1分別接兩個(gè)接觸器線圈。輸出端子到接觸器線圈之間串接了對方的機(jī)械互鎖觸點(diǎn)。接觸器線圈兩端并聯(lián)了RC阻容吸收器用來抑制線圈斷電時(shí)的反向感應(yīng)電動(dòng)勢保護(hù)PLC輸出繼電器觸點(diǎn)。這個(gè)細(xì)節(jié)很多初學(xué)者會(huì)忽略實(shí)際運(yùn)行中如果觸點(diǎn)火花偏大多半就是少裝了阻容吸收。3.3 MCGS觸摸屏與PLC的通信配置MCGS觸摸屏和S7-200之間走的是PPI協(xié)議物理層是RS485半雙工通信。觸摸屏這邊要把通信參數(shù)和PLC保持一致不同品牌和型號(hào)的觸摸屏配置入口略有差異但核心參數(shù)是那幾項(xiàng)通信串口號(hào)、波特率、數(shù)據(jù)位、停止位、校驗(yàn)方式、PLC站地址。S7-200的默認(rèn)PPI站地址一般是2波特率常見9600或者19200。我在觸摸屏的設(shè)備管理里選“S7-200PPI”驅(qū)動(dòng)PLC站地址填2波特率和PLC保持一致數(shù)據(jù)位8、停止位1、偶校驗(yàn)。這一步兩邊參數(shù)只要有一項(xiàng)不一致最典型的現(xiàn)象就是觸摸屏右上角通信指示燈不停閃爍所有變量都取不到值。通信線纜用的是屏蔽雙絞線A端接觸摸屏RS485的AB端接B方向不能交叉。屏蔽層在觸摸屏側(cè)單端接地?,F(xiàn)場如果變頻器干擾嚴(yán)重可以再套一個(gè)磁環(huán)在通信線上能過濾掉一部分高頻干擾。4. 梯形圖程序關(guān)鍵段解析4.1 手動(dòng)與自動(dòng)模式的切換邏輯設(shè)備調(diào)試和日常檢修需要手動(dòng)操作正常生產(chǎn)又需要全自動(dòng)流程所以程序一開始就要把整個(gè)邏輯分成手動(dòng)和自動(dòng)兩個(gè)區(qū)域。我用一個(gè)自動(dòng)模式標(biāo)志位M0.0來區(qū)分手動(dòng)/自動(dòng)切換開關(guān)I0.2閉合時(shí)M0.0置位斷開時(shí)M0.0復(fù)位。自動(dòng)模式下步進(jìn)指令的初始狀態(tài)S0.0保持激活手動(dòng)模式下先把所有步進(jìn)狀態(tài)復(fù)位允許手動(dòng)正轉(zhuǎn)和反轉(zhuǎn)按鈕直接控制輸出。手動(dòng)輸出的程序段也要做互鎖Q0.0的線圈回路里串Q0.1的常閉觸點(diǎn)Q0.1的線圈回路里串Q0.0的常閉觸點(diǎn)。切換模式的時(shí)候還有一個(gè)細(xì)節(jié)任何時(shí)候從自動(dòng)切到手動(dòng)當(dāng)前正在執(zhí)行的狀態(tài)必須立刻終止正反轉(zhuǎn)輸出立即斷開不能出現(xiàn)切到手動(dòng)以后小車還在半路繼續(xù)跑的情況。所以I0.2斷開的瞬間要用一個(gè)復(fù)位指令把S0.1到S0.4全部復(fù)位同時(shí)復(fù)位Q0.0到Q0.3。這個(gè)操作在PLC程序里用一條R指令加一個(gè)上升沿就可以實(shí)現(xiàn)。4.2 自動(dòng)流程的步進(jìn)指令實(shí)現(xiàn)步進(jìn)指令的梯形圖有固定的結(jié)構(gòu)。程序一開始先處理初始化LD SM0.1 R S0.1, 4 R M0.0, 1SM0.1是PLC第一次掃描時(shí)導(dǎo)通的特殊繼電器用于系統(tǒng)上電時(shí)把所有狀態(tài)復(fù)位保證從初始狀態(tài)開始運(yùn)行。在S0.1裝料狀態(tài)里輸出裝料機(jī)構(gòu)同時(shí)啟動(dòng)裝料定時(shí)器LD S0.1 Q0.2 LD S0.1 TON T37, 350裝料狀態(tài)的轉(zhuǎn)移條件有兩個(gè)裝料時(shí)間到或者料位傳感器檢測到料滿。兩個(gè)條件“或”在一起LD T37 O I0.7 SCRT S0.2進(jìn)入S0.2后小車正向運(yùn)行LD S0.2 Q0.0 LD I0.4 SCRT S0.3卸料位限位I0.4一動(dòng)作程序立刻跳到卸料狀態(tài)S0.3。這里的轉(zhuǎn)移條件用的是普通常開觸點(diǎn)只要限位信號(hào)存在狀態(tài)就會(huì)切換不需要額外加延時(shí)因?yàn)樾≤嚨轿缓罂肯尬恍盘?hào)穩(wěn)定保持。卸料狀態(tài)S0.3里輸出卸料機(jī)構(gòu)Q0.3同時(shí)啟動(dòng)卸料定時(shí)器T38LD S0.3 Q0.3 LD S0.3 TON T38, 200 LD T38 SCRT S0.4卸料完成后小車反向返回輸出反轉(zhuǎn)接觸器LD S0.4 Q0.1 LD I0.3 SCRT S0.1回到裝料位后如果連續(xù)運(yùn)行開關(guān)I1.0是閉合的就繼續(xù)跳回S0.1開始下一輪裝料如果沒閉合就跳回S0.0等待。這個(gè)分支邏輯在梯形圖里可以這樣組織LD I0.3 AND I1.0 SCRT S0.1 LD I0.3 AN I1.0 SCRT S0.0這樣寫的好處是狀態(tài)轉(zhuǎn)移條件一目了然加一個(gè)連續(xù)運(yùn)行功能不影響原來的步進(jìn)骨架。4.3 報(bào)警與安全聯(lián)鎖邏輯報(bào)警和安全聯(lián)鎖是這類設(shè)備最容易偷懶的地方但恰恰是不能省的。我在程序里做了三路保護(hù)。第一路是正反轉(zhuǎn)程序互鎖。Q0.0線圈回路中串入Q0.1常閉觸點(diǎn)Q0.1線圈回路中串入Q0.0常閉觸點(diǎn)。這樣即使手動(dòng)按鈕卡住或者觸摸屏誤下發(fā)命令兩個(gè)輸出也不可能同時(shí)成立。第二路是停止和過載保護(hù)。停止按鈕I0.1采用常閉輸入PLC程序里把它串在自動(dòng)流程的允許條件中。只要I0.1斷開也就是停止按鈕被按下或者停止回路斷線M0.0自動(dòng)復(fù)位所有步進(jìn)狀態(tài)復(fù)位輸出全部斷開。熱繼電器信號(hào)I1.1一旦動(dòng)作同樣切斷自動(dòng)流程并使能故障指示燈Q0.5。第三路是限位保護(hù)。裝料位限位和卸料位限位除了做狀態(tài)轉(zhuǎn)移之外我還把它們的常閉觸點(diǎn)串在對方方向的輸出回路里作為硬禁止。比如小車在裝料位時(shí)I0.3的常閉觸點(diǎn)斷開程序里即使有正向運(yùn)行的輸出條件Q0.0也無法得電相當(dāng)于雙重保險(xiǎn)。5. MCGS組態(tài)畫面設(shè)計(jì)與變量關(guān)聯(lián)5.1 畫面分區(qū)與狀態(tài)展示思路觸摸屏畫面我分成四個(gè)頁面運(yùn)行監(jiān)視頁、手動(dòng)操作頁、參數(shù)設(shè)置頁、報(bào)警記錄頁。運(yùn)行監(jiān)視頁是默認(rèn)首頁主要顯示設(shè)備當(dāng)前的狀態(tài)。頁面中間畫一條水平軌道左邊是裝料倉右邊是卸料倉中間是一個(gè)表示小車圖元。小車圖元的位置不是簡單的靜態(tài)圖而是根據(jù)PLC里的運(yùn)行信號(hào)做水平移動(dòng)動(dòng)畫這樣操作員掃一眼屏幕就能知道小車現(xiàn)在跑到哪里了。狀態(tài)欄文字用“當(dāng)前狀態(tài)”標(biāo)簽顯示比如“裝料中”“正向運(yùn)行”“卸料中”“反向運(yùn)行”“待機(jī)”。這個(gè)字符串變量通過PLC程序里的一組中間繼電器組合賦值。手動(dòng)操作頁放了正轉(zhuǎn)、反轉(zhuǎn)、裝料、卸料、停止五個(gè)按鈕按鈕對應(yīng)的變量連接到PLC的M區(qū)中間繼電器手動(dòng)運(yùn)行程序段讀取這些標(biāo)志位執(zhí)行動(dòng)作。參數(shù)設(shè)置頁放了裝料時(shí)間、卸料時(shí)間兩個(gè)數(shù)值輸入框?qū)?yīng)PLC的VW區(qū)變量。報(bào)警記錄頁用了MCGS自帶的報(bào)警顯示控件把需要監(jiān)控的報(bào)警變量全部勾選進(jìn)去。5.2 實(shí)時(shí)數(shù)據(jù)庫變量建立與映射MCGS的“實(shí)時(shí)數(shù)據(jù)庫”就是整個(gè)組態(tài)工程的變量表。新建工程后我習(xí)慣先把需要用到的變量全部建好再在畫面里綁定不要邊畫邊建容易亂。開關(guān)型變量對應(yīng)PLC的位地址。比如“正向運(yùn)行”變量類型選開關(guān)型連接PLC設(shè)備通道時(shí)地址填Q0.0“自動(dòng)模式”變量連接M0.0。數(shù)值型變量對應(yīng)PLC的V區(qū)地址裝料時(shí)間變量連接VW100卸料時(shí)間變量連接VW102累計(jì)裝料次數(shù)連接VW104。數(shù)值型變量最容易犯的錯(cuò)誤是數(shù)據(jù)格式不匹配。S7-200的VW區(qū)存儲(chǔ)的是16位整數(shù)MCGS這邊如果默認(rèn)選了32位整型讀上來的數(shù)據(jù)可能會(huì)翻倍或者出現(xiàn)負(fù)數(shù)。我在設(shè)備通道屬性里都會(huì)明確選擇“16位無符號(hào)整數(shù)”這樣讀出來的數(shù)值才和PLC里的設(shè)定值一致。5.3 參數(shù)設(shè)置與報(bào)警記錄的綁定參數(shù)設(shè)置頁里裝料時(shí)間和卸料時(shí)間兩個(gè)輸入框關(guān)聯(lián)到VW100和VW102操作員在觸摸屏上改數(shù)值PLC程序里的定時(shí)器設(shè)定值并不會(huì)自動(dòng)變需要通過程序把V區(qū)的數(shù)值搬運(yùn)到定時(shí)器的設(shè)定值入口。這一段梯形圖寫起來很簡單LD SM0.0 MOVW VW100, T37預(yù)設(shè)寄存器地址實(shí)際S7-200定時(shí)器設(shè)定值可以用定時(shí)器指令直接引用VW地址寫法是把TON指令的第二操作數(shù)寫為VW100這樣一來觸摸屏寫入VW100的同時(shí)定時(shí)器的設(shè)定值就更新了不需要額外的搬運(yùn)邏輯。報(bào)警記錄頁要監(jiān)控的報(bào)警變量包括熱繼電器動(dòng)作、卸料位傳感器異常、通信失敗等。MCGS里新建報(bào)警變量時(shí)要設(shè)定報(bào)警產(chǎn)生和恢復(fù)的類型比如熱繼電器動(dòng)作報(bào)警類型用“開報(bào)警”恢復(fù)類型也用“開恢復(fù)”。這樣報(bào)警產(chǎn)生和解除都會(huì)有對應(yīng)記錄操作員可以通過報(bào)警歷史查詢按鈕排查問題。6. 現(xiàn)場調(diào)試與常見問題排查實(shí)錄6.1 送電前的檢查順序調(diào)試階段最忌諱直接合閘試機(jī)。斷掉電機(jī)主回路只給PLC和觸摸屏送控制電先確認(rèn)控制邏輯沒問題再合主回路。我在現(xiàn)場按下面這個(gè)順序走第一步檢查PLC的RUN指示燈和觸摸屏通信狀態(tài)確認(rèn)兩者通信正常 第二步用萬用表或短接線逐個(gè)短接輸入點(diǎn)對照PLC輸入狀態(tài)表確認(rèn)地址映射正確尤其是限位開關(guān)和傳感器 第三步手動(dòng)模式下分別點(diǎn)動(dòng)正轉(zhuǎn)、反轉(zhuǎn)按鈕注意聽接觸器吸合的聲音確認(rèn)兩個(gè)接觸器不會(huì)同時(shí)抖動(dòng)驗(yàn)證機(jī)械互鎖接線 第四步合上電機(jī)主回路空載運(yùn)行正轉(zhuǎn)和反轉(zhuǎn)各三十秒觀察電機(jī)轉(zhuǎn)向是否符合“前進(jìn)”“后退”的定義 第五步切回自動(dòng)模式放一輛空車完整跑一個(gè)循環(huán)觀察每一步狀態(tài)切換是否按照S0.1到S0.4的順序走。如果電機(jī)轉(zhuǎn)向反了處理方法是在電機(jī)接線端任意調(diào)換兩相或者在程序里把正轉(zhuǎn)、反轉(zhuǎn)輸出定義對調(diào)但不要兩邊同時(shí)改否則方向又反回去了。6.2 常見故障速查表與處理現(xiàn)場調(diào)試常見的故障我整理成了一張速查表遇到問題照著排查會(huì)快很多故障現(xiàn)象可能原因排查方法觸摸屏通信失敗波特率不一致、COM口選錯(cuò)、通信線接反核對兩邊通信參數(shù)檢查A/B接線小車到位不停車限位開關(guān)沒觸發(fā)、機(jī)械擋塊移位看PLC輸入點(diǎn)狀態(tài)調(diào)整擋塊位置自動(dòng)流程卡在裝料步料位傳感器故障、定時(shí)器設(shè)定值過大短接傳感器信號(hào)線測試檢查VW100數(shù)值正反轉(zhuǎn)接觸器同時(shí)吸合機(jī)械互鎖接錯(cuò)、程序互鎖失效斷電檢查輔助觸點(diǎn)接線觸摸屏數(shù)值顯示翻倍變量數(shù)據(jù)類型設(shè)成32位整型改為16位無符號(hào)整數(shù)卸料位信號(hào)偶爾丟失接近開關(guān)感應(yīng)距離太近調(diào)整感應(yīng)面與擋塊間距通信時(shí)斷時(shí)續(xù)接地不良、通信線離動(dòng)力線太近屏蔽層單端接地分開布線6.3 調(diào)試中幾個(gè)容易被忽略的細(xì)節(jié)第一個(gè)容易踩坑的地方是限位開關(guān)的固定。軌道小車到位時(shí)有沖擊限位開關(guān)如果只用單顆螺絲固定在角鋼上用不了幾個(gè)星期就會(huì)松動(dòng)偏位小車要么撞不到開關(guān)不停車要么撞過頭沖出軌道。我這次用了雙螺母背緊底座開長圓孔位置由擋塊粗調(diào)、限位開關(guān)細(xì)調(diào)最后再用緩沖橡膠擋塊貼在限位開關(guān)后側(cè)。這樣既方便調(diào)整又延長了限位開關(guān)的壽命。第二個(gè)容易踩坑的地方是接地。觸摸屏、PLC、變頻器如果共用一根地線會(huì)產(chǎn)生地環(huán)流通信會(huì)偶發(fā)性斷線?,F(xiàn)場的強(qiáng)電柜里變頻器啟停時(shí)通信信號(hào)經(jīng)常抖動(dòng)后來我把PLC和觸摸屏的地線單獨(dú)接到柜內(nèi)接地銅排變頻器主回路單獨(dú)接地通信再?zèng)]掉過線。很多“時(shí)好時(shí)壞”的故障根源都在接地排查時(shí)千萬別忽略。第三個(gè)細(xì)節(jié)是啟動(dòng)信號(hào)的邊沿處理。自動(dòng)模式啟動(dòng)按鈕如果用的是普通常開觸點(diǎn)操作員按的時(shí)間稍長一點(diǎn)PLC在多個(gè)掃描周期內(nèi)都會(huì)檢測到啟動(dòng)條件可能造成步進(jìn)狀態(tài)重復(fù)觸發(fā)或者跳過多步。我在啟動(dòng)信號(hào)前加了上升沿檢測指令EU把按鈕持續(xù)閉合的長信號(hào)轉(zhuǎn)換成單掃描周期的脈沖這樣每次按下只觸發(fā)一次啟動(dòng)不會(huì)亂跳。第四個(gè)細(xì)節(jié)是備用地址規(guī)劃。程序里的V區(qū)地址設(shè)計(jì)階段就預(yù)留了一段備用區(qū)比如VW200到VW300全部空著不分配給任何功能。后期如果客戶要增加小車運(yùn)行時(shí)長統(tǒng)計(jì)、增加呼叫功能直接在備用區(qū)里加變量就行不用為地址沖突折騰。6.4 改造效果與擴(kuò)展思路這套運(yùn)料小車控制系統(tǒng)投入運(yùn)行以后原來人工推車的環(huán)節(jié)全部省掉了操作員只需要在觸摸屏上按一下啟動(dòng)裝料、運(yùn)輸、卸料、返回整個(gè)周期全自動(dòng)完成生產(chǎn)節(jié)拍穩(wěn)定在每分鐘一個(gè)循環(huán)左右配合兩條生產(chǎn)線使用基本不會(huì)再卡料。從維護(hù)角度看PLC程序、觸摸屏參數(shù)、機(jī)械限位三者配合比老式繼電器回路好查得多?,F(xiàn)場遇到故障時(shí)先看觸摸屏報(bào)警和狀態(tài)頁面再配合PLC輸入輸出指示燈十分鐘內(nèi)基本能鎖定問題區(qū)域。如果后面設(shè)備要接入車間級數(shù)據(jù)采集系統(tǒng)S7-200的通信口可以再加一個(gè)遠(yuǎn)程IO模塊或數(shù)據(jù)采集網(wǎng)關(guān)把小車運(yùn)行次數(shù)、累計(jì)運(yùn)行時(shí)間、故障記錄這些數(shù)據(jù)上傳到更上層的信息系統(tǒng)。新做一個(gè)項(xiàng)目時(shí)我會(huì)建議在PLC地址規(guī)劃階段就預(yù)留這類擴(kuò)展通道同時(shí)把觸摸屏的報(bào)警記錄導(dǎo)出功能利用起來形成一臺(tái)設(shè)備一份運(yùn)行臺(tái)賬。實(shí)際用下來這個(gè)成本不高對后續(xù)設(shè)備管理幫助很大。