2. 控制流程
系統(tǒng)由工控機(jī)作為上位機(jī),PLC作為下位機(jī)。系統(tǒng)的自動(dòng)控制流程為:
工控機(jī)與PLC進(jìn)行通信握手,表明一切就緒;
送料位置傳感器檢測到工件,發(fā)信號給PLC;
PLC根據(jù)測量位置傳感器狀態(tài)判斷測量位置是否有工件;
如果測量位置沒有工件,則PLC發(fā)信號驅(qū)動(dòng)汽缸,放開送料擋塊;
測量位置傳感器檢測到工件已經(jīng)到達(dá),發(fā)信號給PLC;
PLC進(jìn)行延時(shí),目的是讓工件穩(wěn)定有利于拍攝,然后發(fā)信號給工控機(jī)并延時(shí),目的是讓計(jì)算機(jī)進(jìn)行圖象處理與模式識別;
工控機(jī)執(zhí)行程序由CCD攝像頭攝取圖像,由工控機(jī)實(shí)時(shí)處理圖像,作出漏裝或非漏裝判斷結(jié)果。把結(jié)果發(fā)給PLC;
PLC判斷結(jié)果信息,如果全裝且翻轉(zhuǎn)位置無工件,發(fā)信號驅(qū)動(dòng)汽缸放開定位擋塊;如果漏裝,PLC發(fā)信號驅(qū)動(dòng)報(bào)警燈和蜂鳴器,進(jìn)行聲光報(bào)警由工人手工剔除。
PLC判斷下料槽是否可以下料,若可以則翻轉(zhuǎn)工件進(jìn)入下一道工序。重復(fù)順序執(zhí)行2~8,就達(dá)到了系統(tǒng)的自動(dòng)檢測。從執(zhí)行過程中可以看到,前后兩個(gè)位置都實(shí)現(xiàn)了互鎖。系統(tǒng)控制流程,如圖3示。
圖3 系統(tǒng)流程
在這個(gè)系統(tǒng)中,實(shí)現(xiàn)了工控機(jī)與PLC的集成控制。工控機(jī)主要完成對圖象的處理,PLC完成對現(xiàn)場控制信號的采集與執(zhí)行元件的驅(qū)動(dòng),它們之間的通信采用I/O卡來實(shí)現(xiàn)。控制系統(tǒng)物理結(jié)構(gòu),如圖4示。
圖4 控制系統(tǒng)物理結(jié)構(gòu)
二、系統(tǒng)硬件模塊
系統(tǒng)硬件模塊主要分為數(shù)據(jù)采集子系統(tǒng),微機(jī)基本子系統(tǒng),數(shù)據(jù)分配子系統(tǒng)及基本I/O系統(tǒng)。它們之間的結(jié)構(gòu),如圖5示。
圖5 硬件結(jié)構(gòu)組成
1. 微機(jī)基本子系統(tǒng)
它是整個(gè)系統(tǒng)的核心,對整個(gè)系統(tǒng)起監(jiān)督、管理、控制作用,例如進(jìn)行復(fù)雜的信號處理、控制決策、產(chǎn)生特殊的測試信號,控制整個(gè)檢測過程等等。同時(shí),利用微機(jī)強(qiáng)大的信息處理能力和高速運(yùn)算能力,實(shí)現(xiàn)命令識別、邏輯判斷、圖像處理、系統(tǒng)動(dòng)態(tài)特性的自校正、系統(tǒng)自適應(yīng)等功能。
2. 數(shù)據(jù)采集子系統(tǒng)
用于和傳感器、檢測元件聯(lián)接,實(shí)現(xiàn)圖像數(shù)據(jù)的采集、整理并經(jīng)接口傳送到微機(jī)子系統(tǒng)處理。
3. 數(shù)據(jù)分配子系統(tǒng)
實(shí)現(xiàn)對被測工件、測試信號發(fā)生器以及檢測操作過程的自動(dòng)控制。
4. 基本I/O子系統(tǒng)
用于實(shí)現(xiàn)人機(jī)對話、輸入或改變系統(tǒng)參數(shù)、改變系統(tǒng)工作狀態(tài)、輸出檢測結(jié)果、動(dòng)態(tài)顯示測控過程、發(fā)出報(bào)警信號等。
三、系統(tǒng)軟件設(shè)計(jì)
軟件設(shè)計(jì)采用模塊化和結(jié)構(gòu)化的程序設(shè)計(jì)方法,即自頂向下、逐步求精的設(shè)計(jì)方法,并且適當(dāng)劃分模塊以提高設(shè)計(jì)與調(diào)試的效率。該系統(tǒng)不但要接受來自傳感器、待測工件的信號,還要接受和處理來自于控制面板的按鈕信號,以及由圖像采集卡傳來的數(shù)字信號,而且要求系統(tǒng)具有實(shí)時(shí)處理能力。因此,系統(tǒng)軟件對實(shí)時(shí)性有一定的要求,同時(shí)還要對系統(tǒng)資源進(jìn)行管理和調(diào)度。
1. 上位機(jī)軟件設(shè)計(jì)
上位機(jī)監(jiān)控軟件主要由數(shù)據(jù)采集程序、檢測與控制算法程序、中斷服務(wù)程序、故障自診斷與處理程序等組成。系統(tǒng)模塊劃分如下:
(1) 初始化模塊
硬件初始化
對系統(tǒng)中各硬件資源設(shè)定明確的初始化狀態(tài),包括對可編程器件初始化,各I/O口初始狀態(tài)設(shè)定,為系統(tǒng)硬件資源分配任務(wù)等。
軟件初始化
包括堆棧初始化、狀態(tài)變量初始化、各軟件標(biāo)志初始化、各變量存儲單元初始化、系統(tǒng)參數(shù)初始化等。
(2) 數(shù)據(jù)采集模塊
控制攝像頭攝取圖像,通過圖像采集卡完成A/D轉(zhuǎn)換,并生成待處理的數(shù)據(jù)文件。
(3) 檢測/控制模塊
對得到的圖像數(shù)據(jù)文件進(jìn)行分析、計(jì)算、比較、檢測,判別工件是否合格,并實(shí)現(xiàn)對鍵盤的管理。
(4) 中斷管理模塊
針對系統(tǒng)中的各種中斷源和所選用的微處理機(jī)的中斷結(jié)構(gòu),設(shè)計(jì)相應(yīng)的中斷處理程序模塊,包括中斷管理模塊和中斷服務(wù)模塊。
(5) 顯示管理模塊
用于實(shí)時(shí)更新顯示圖像和數(shù)據(jù),并對報(bào)警指示燈進(jìn)行管理。
(6) 時(shí)鐘管理模塊
包括數(shù)據(jù)采樣周期定時(shí)、控制周期定時(shí)、動(dòng)態(tài)刷新周期定時(shí)、及故障監(jiān)視電路的定時(shí)信號等。