當(dāng)前位置:全球供應(yīng)網(wǎng) > 技術(shù)中心 > 所有分類
反應(yīng)釜上料配料系統(tǒng)的實現(xiàn) | 2020-02-28 |
摘要:在現(xiàn)有反應(yīng)釜PLC配料系統(tǒng)的基礎(chǔ)上,結(jié)合PLC和上位PC機的優(yōu)勢,通過部分軟硬件改造來建構(gòu)低成本反應(yīng)釜自動上料配料系統(tǒng)。本文探討了其軟硬件構(gòu)成及控制策略等問題,介紹上位PC與PLC之間的通信機制,Windows匿名管道通信技術(shù),以及上位PC機軟件設(shè)計方法。 上料配料系統(tǒng)是反應(yīng)釜混配生產(chǎn)過程的重要組成部分。由于上料現(xiàn)場環(huán)境差,不適合由操作人員直接在現(xiàn)場進行人工控制。且反應(yīng)罐配生產(chǎn)中加入的樹脂(主要用于去除雜質(zhì)的S、P等)用量大,手動稱料時間長,而在攪拌末期為了調(diào)整液體成分,加入的鈦白粉,碳酸鈣等價格昂貴,希望稱量偏差小,由于加料過程大多是重復(fù)性的操作,操作繁鎖,操作人員工作勞動強度大,常常出現(xiàn)稱量過重等誤操作,造成不必要的生產(chǎn)熱停工時間。因此如何縮短加料時間,提高原料配料的準確度,降低混配成本,減輕操作員的工作強度是一個迫切需要解決的問題。國內(nèi)曾研究一些自動配料系統(tǒng),大都以單片機為主,穩(wěn)定性差、安全可靠性不高,以及編程和人機交互困難。此外受混配生產(chǎn)工藝和設(shè)備的限制,開發(fā)一套功能完整的自動上料配料系統(tǒng),不僅控制過程復(fù)雜,而且設(shè)備投資巨大。另一方面,考慮到現(xiàn)有交流反應(yīng)釜混配大都采用PLC配料系統(tǒng),如果充分利用現(xiàn)有PLC資源,以PLC作為主控,普通PC作為上位機,利用WIN9X的管道技術(shù)和PLC的中斷通信機制,保證上位PC機與PLC之間的實時通信。通過防爆電子地磅直接采集重量信號,自動控制稱重,操作人員通過鍵盤或鼠標(biāo)在上位機人機界面(HMI)上輸入加料信息(加料種類、重量等),監(jiān)視上料控制的全過程,打印加料的結(jié)果和生產(chǎn)報表,實現(xiàn)上料過程的測控管一體化,不失為一種切實可行的有效方法。 1 加料過程用控制策略 本廠交流反應(yīng)釜上料配料系統(tǒng)的結(jié)構(gòu)由8個高位料倉、閥門、振料電機,一臺防爆電子地磅和稱料小車,以及一套位置檢測裝置組成。 上料過程包括:加料等待、稱料、放料等待、放料及退料等五個階段。在加料等待階段,小車停反應(yīng)罐后加料口位置上等待控制命令。在稱料階段,根據(jù)操作人員輸入的加料參數(shù),小車自動行走至的料位下,到位后鎖定位置,料倉振動電機開啟振料。通過防爆電子地磅不斷地采集進料量,當(dāng)達到加料設(shè)定值一提前量時停車,這里的提前量可由關(guān)閉電機到停止振動的時間計算或根據(jù)經(jīng)驗獲得。當(dāng)所加物料是溶劑時(如樹脂、聚氨酯等),立即進入放料環(huán)節(jié),否則進入放料等待階段,小車停在原處,等候放料命令的到來。在放料階段,加料小車根據(jù)加料的種類自動行走至反應(yīng)罐前加料口或反應(yīng)罐后加料口,小車到位后打開放料閥,放料完畢后小車自動停在加料等待位置(即反應(yīng)罐后加料口)上,到待下一次加料。當(dāng)發(fā)生加料誤操作或小車中存有遺料時,則執(zhí)行退料程序。 加料實時控制過程由一臺西門子115U型PLC控制器來完成,同時利用與上位PC機進行通信,在上位機上完成加料參數(shù)設(shè)定、數(shù)據(jù)管理、統(tǒng)計報表、打印等功能。 考慮到上料配料系統(tǒng)的重要性和安全可靠性,仍舊保留原有的手動加料操作手段,因而自動上料配料系統(tǒng)具有自動控制和手動操作兩種工作模式。在自動模式下,操作人員僅需要輸入加料的種類(料倉的編號)和重量等少量信息。PLC配料系統(tǒng)自動完成稱料、加料的全過程。在手動操作模式下,就由操作人員手動來完成。 2 配料系統(tǒng)硬件構(gòu)成 上料配料系統(tǒng)的硬件結(jié)構(gòu)主要由UPS、PC機、打印機、串行轉(zhuǎn)換卡和PLC、電子秤、閥門、電機、位置檢測裝置及其它執(zhí)行機構(gòu)組成。上位機通過RS232/RS485串行轉(zhuǎn)換卡與PLC通信,高速、穩(wěn)定、準確地傳輸數(shù)據(jù)。 出于安全考慮,設(shè)立兩臺PC機由UPS供電,采用熱備份方式工作,其中任何一臺PC機發(fā)生故障,系統(tǒng)仍能可靠地運行。所有的現(xiàn)場設(shè)備的控制工作都由PLC完成,上位機只負責(zé)提供人機交互界面,進行加料數(shù)據(jù)輸入和顯示、存儲、統(tǒng)計和報表打印。當(dāng)兩臺上位機同時發(fā)生故障時,PLC自動地切換到手動操作模式,仍能保證生產(chǎn)的正常進行。同時,PLC配有電池,可以保存所有配料系統(tǒng)設(shè)置參數(shù)和現(xiàn)場狀態(tài)數(shù)據(jù)。配料系統(tǒng)運行過程中,PLC一直與上位機實時通信,從而保證界面上顯示的數(shù)據(jù)與現(xiàn)場實際數(shù)據(jù)的一致性,操作人員在上位機上發(fā)出的操作命令和設(shè)定參數(shù)都可以實時送到PLC上執(zhí)行。 3 配料系統(tǒng)軟計總體設(shè)計 自動上料配料系統(tǒng)的軟件包括上位機和PLC兩部分。這兩部分分別編寫,并建立相互間的通信協(xié)議。軟件的總體框架如圖3所示。上位機和PLC各有自已的功能模塊,上位機通過通信子程序,PLC通過通信中斷子程序經(jīng)由RS232/RS485串行總線轉(zhuǎn)換卡建立相互之間的通信聯(lián)接,數(shù)據(jù)以幀的形式在兩者之間進行傳遞。 為了兼顧通信速度和執(zhí)行效率,上位PC機與PLC之間的數(shù)據(jù)通信格式設(shè)有兩種,即查詢幀和控制幀,查詢幀只需一個標(biāo)識字節(jié),控制幀包含控制信息,需要128個字節(jié)或更多。這兩種數(shù)據(jù)幀說明如下: ①控制幀----多個字節(jié)。個字節(jié)為標(biāo)識符,值為0。后面字節(jié)包含所有的控制信息,如料位號,料重,放料口選擇,提前量,是否校秤,是否暫停等等。 ②查詢幀----只包含一個標(biāo)識字節(jié),值為1 上位機與PLC的握手機制如下: PLC一直以中斷方式接收上位機的數(shù)據(jù)幀。如果是查詢幀則馬上向上位機傳送當(dāng)前控制信息;如為控制幀,則等執(zhí)行完后,再送回數(shù)據(jù)給上位機。如果通信出現(xiàn)故障,PLC進入脫機工作狀態(tài),由上位機負責(zé)來恢復(fù)通信。 配料系統(tǒng)為了保持上位機和PLC參數(shù)設(shè)置和控制狀態(tài)的一致,PLC負責(zé)保存所有配料系統(tǒng)設(shè)定參數(shù)和現(xiàn)場狀態(tài)數(shù)據(jù)。上位機剛開機時,先發(fā)查詢幀,獲得當(dāng)前PLC的實際狀態(tài)數(shù)據(jù)(包括現(xiàn)場數(shù)據(jù)和操作員以前設(shè)定的系統(tǒng)數(shù)據(jù))。然后上位機一直向PLC發(fā)命令:若有控制動作,則發(fā)控制幀;若沒有,則發(fā)查詢幀。正常情況下,PLC接收到上位機的查詢幀就立即向上位機發(fā)送格式相同的數(shù)據(jù)回應(yīng)幀。由于PLC一直在循環(huán)執(zhí)行主程序,而以中斷方式處理與上位機的通信,并且這種中斷優(yōu)先級,因而保證了上位機的控制命令能及時得到響應(yīng)。 3.1`上位機軟件 上位機分成主模塊、加料參數(shù)設(shè)置、過程畫面、統(tǒng)計報表、通信等模塊。主要是進行加料參數(shù)輸入、過程畫面顯示、統(tǒng)計報表、打印及數(shù)據(jù)庫的產(chǎn)生和維護等。為了上位機與PLC之間通信能實時、高速、穩(wěn)定地進行。上位機單獨設(shè)立通信子程序,在后立運行,主程序與通信子程序之間的數(shù)據(jù)交換通過管道來實現(xiàn)。上位機軟件在Win95上采用具有良好圖形用戶界面的VB6.0實現(xiàn)。 3.2 主程序 主程序?qū)Ω鱾€模塊進行統(tǒng)一管理,負責(zé)整個系統(tǒng)的初始化,加料參數(shù)設(shè)置,過程模擬畫面的數(shù)據(jù)更新及統(tǒng)計報表,打印,數(shù)據(jù)庫的產(chǎn)生和維護等。 為了使過程模擬畫面直觀簡潔,不易出錯。在界面設(shè)計上采用狀態(tài)顯示和操作鍵合一的方法。即畫面上的控件一直實時顯示對應(yīng)對象的實際狀態(tài),同時操作人員可以通過鼠標(biāo)點擊來直接選擇物料和輸入料重等參數(shù),并由PLC所上傳的數(shù)據(jù)進行畫面狀態(tài)的刷新。 在數(shù)據(jù)庫管理上,為了便于車間或作業(yè)區(qū)人員進行統(tǒng)計分析和報表,設(shè)計了3種表格(即日、月、年表)。且表格按日期命名,如:Day.db,Month199909.db,Year1999.db等。同時為了方便班組間的勞動競賽和生產(chǎn)指標(biāo)對比,數(shù)據(jù)庫管理上設(shè)立了操作人員換班簽到制度,為此設(shè)立了兩種表格(即月、年報表),各班組當(dāng)班生產(chǎn)情況記錄在各自的月年報表中,這些表格按甲、乙、丙、丁班組依次命名為A199909.db,A1999.db,B199909.db,B1999.d b……依此類推。這樣的數(shù)據(jù)庫設(shè)計便于班組之間的橫向?qū)Ρ?,也有利于整個電反應(yīng)罐生產(chǎn)的生產(chǎn)報表和統(tǒng)計分析。 3.3進程間通信與同步 配料系統(tǒng)為了實現(xiàn)進程之間的通信,軟件中使用了WIN95提供的匿名管道。首先通過調(diào)用WIN32 API中的CreatePipe函數(shù)建立管道。該函數(shù)返回兩個句柄,一個用于讀,一個用于寫。在主進程中,建立管道后,需要將句柄傳遞給通信子進程,子進程才能讀取管道中的數(shù)據(jù)。由于匿名管道只能單向傳遞數(shù)據(jù),為了能實現(xiàn)通信子進程向主進程傳遞數(shù)據(jù),在子進程中也要創(chuàng)建一個管道,并把讀句柄傳給主進程。實現(xiàn)這一操作的的方法就是使用每個程序默認使用的標(biāo)準輸入和標(biāo)準輸出句柄。在主進程中設(shè)置標(biāo)準句柄,子進程從主進程那里繼承標(biāo)準句柄,通過將子進程創(chuàng)建的管道句柄設(shè)為標(biāo)準句柄,并由主進程繼承它,可以實現(xiàn)主進程和通信子進程之間的雙向通信。當(dāng)一個進程向管道中寫入數(shù)據(jù)時,寫操作立即返回,從而保證了主進程與通信子進程之間實時高速地傳輸數(shù)據(jù)。由于Windows匿名管道數(shù)據(jù)傳遞的單向性,從而確保了主進程與通信子進程之間不會產(chǎn)生沖突,很好地處理了進程間通信的同步問題。 3.4 通信子程序 通信子程序是上位PC機和PLC之間的聯(lián)系紐帶。負責(zé)確保來自主進程的用戶的設(shè)定數(shù)據(jù)和控制命令及時送給PLC,然后根據(jù)PLC送回的數(shù)據(jù)刷新通信管道。 通信子程序與PLC之間的通信采用串行通信方式,常用的串行通信方式有兩種:一是調(diào)用Windows的API函數(shù),其編程繁瑣,使用較復(fù)雜;另一就是使用VB6.0串行通信控件(即Windows的MSCOMM32.OCX6.0),該控件實現(xiàn)異步通信有兩種方式:即查詢方式和事件驅(qū)動方式。考慮到實時控制中對可靠性的要求,選擇事件驅(qū)動方式進行通信。這是一種功能很強串行通信方式,它可隨時檢測到通信事件的發(fā)生,保證通信的高可靠性。 4 結(jié)論 本配料系統(tǒng)上位機和PLC之間采用嚴格的算法控制,管道通信技術(shù),減少了系統(tǒng)通信量,提高了通信速度和效率。上位機形象直觀的過程模擬畫。 |