楊勇泉,宋寶,程建軍
(1. 華中科技大學(xué) 機(jī)械科學(xué)與工程學(xué)院,武漢 430074; 2. 深圳市浩能科技有限公司,廣東 深圳 518172)
?
基于啟發(fā)式算法的自動(dòng)生產(chǎn)線控制軟件設(shè)計(jì)*
楊勇泉1,宋寶1,程建軍2
(1. 華中科技大學(xué) 機(jī)械科學(xué)與工程學(xué)院,武漢 430074; 2. 深圳市浩能科技有限公司,廣東 深圳 518172)
在一種快速啟發(fā)式算法的基礎(chǔ)上,基于微軟MFC單文檔程序框架設(shè)計(jì)了一款自動(dòng)生產(chǎn)線控制軟件。該控制軟件作為C/S(客戶端/服務(wù)器)結(jié)構(gòu)中的客戶端,利用啟發(fā)式算法優(yōu)化生產(chǎn)線工序的加工序列,采用以太網(wǎng)網(wǎng)絡(luò)通信與控制器之間的進(jìn)行命令交互,實(shí)現(xiàn)了生產(chǎn)線加工的優(yōu)化和自動(dòng)控制,且實(shí)際車間試運(yùn)行表現(xiàn)良好。
快速啟發(fā)式算法;生產(chǎn)線;自動(dòng)控制
20世紀(jì)70年代以來(lái),隨著我國(guó)經(jīng)濟(jì)的繁榮發(fā)展,制造業(yè)在高速發(fā)展的同時(shí)競(jìng)爭(zhēng)日趨激烈,企業(yè)對(duì)產(chǎn)品質(zhì)量和加工效率的要求不斷提高。同時(shí)由于人工成本的不斷增加,生產(chǎn)線自動(dòng)化已經(jīng)有了切實(shí)的需求[1]。電子技術(shù)和計(jì)算機(jī)技術(shù)的飛速發(fā)展,使得自動(dòng)化生產(chǎn)線的實(shí)現(xiàn)成為可能[2]。目前,隨著遺傳算法、禁忌算法、蟻群算法等任務(wù)調(diào)度策略的發(fā)現(xiàn)與實(shí)際應(yīng)用,生產(chǎn)線自動(dòng)化技術(shù)向著平臺(tái)化、網(wǎng)絡(luò)化、智能化快速發(fā)展[3]。因此,各生產(chǎn)廠家開(kāi)發(fā)自身加工生產(chǎn)線自動(dòng)化控制軟件具有重要的現(xiàn)實(shí)意義。
本文將提出一種自動(dòng)化生產(chǎn)線以及自動(dòng)化控制軟件的整體設(shè)計(jì)流程,軟件采用Windows PC平臺(tái),基于微軟的MFC框架體系實(shí)現(xiàn)。同時(shí),為了保證自動(dòng)化生產(chǎn)線的運(yùn)行效率,本文采用了一種快速啟發(fā)式算法實(shí)現(xiàn)了車間的生產(chǎn)工序的優(yōu)化調(diào)度,試運(yùn)行證明優(yōu)化效果良好。借鑒本文方法可以設(shè)計(jì)出高效的自動(dòng)化生產(chǎn)線以及生產(chǎn)線控制軟件。
自動(dòng)化生產(chǎn)線整體構(gòu)成分為三大部分:機(jī)械設(shè)備部分,通信部分,控制軟件部分。其中,機(jī)械設(shè)備部分主要包括生產(chǎn)設(shè)備,生產(chǎn)設(shè)備控制器和上下料機(jī)械及其控制器。通信部分主要包括通信協(xié)議以及通信設(shè)備的選擇??刂栖浖糠謩t主要包括生產(chǎn)調(diào)度、生產(chǎn)工序集合以及人機(jī)界面等部分。對(duì)于一般自動(dòng)化生產(chǎn)線來(lái)說(shuō),其總體構(gòu)造相似的。本文中鐘表自動(dòng)化生產(chǎn)線的總體構(gòu)造圖如下圖1。
該自動(dòng)化生產(chǎn)線整體設(shè)計(jì)主要分為3個(gè)步驟。首先,完善整個(gè)生產(chǎn)線的功能設(shè)計(jì)。根據(jù)生產(chǎn)線的加工任務(wù),明確其主要的生產(chǎn)流程為進(jìn)料流程和回料流程。兩個(gè)流程的工序步驟基本相同,只是動(dòng)作走向相反。進(jìn)料流程中包括暫存機(jī)托盤(pán)上升,零件料盤(pán)搬運(yùn),單步分揀零件,傳送帶轉(zhuǎn)動(dòng),配送機(jī)械手配送等12道工序。按照進(jìn)出料流程的先后動(dòng)作順序可以組成整個(gè)生產(chǎn)線的初步加工流程。然后,采用快速啟發(fā)式算法對(duì)其進(jìn)行優(yōu)化調(diào)度以提高生產(chǎn)線的運(yùn)行效率。其次,根據(jù)實(shí)際情況選擇合理的通信模式。本生產(chǎn)線機(jī)械手控制器和各種外接IO信號(hào)均可方便由網(wǎng)絡(luò)采集,故選擇TCP/IP作為生產(chǎn)線的通信方式。最后,根據(jù)自動(dòng)化控制軟件的系統(tǒng)結(jié)構(gòu),實(shí)現(xiàn)自動(dòng)化生產(chǎn)線控制軟件的編碼與測(cè)試。
圖1 自動(dòng)化生產(chǎn)線的總體結(jié)構(gòu)圖
生產(chǎn)線作業(yè)調(diào)度是最困難的約束組合優(yōu)化問(wèn)題和典型的NP難題,即沒(méi)有一個(gè)有效地算法能在多項(xiàng)式時(shí)間內(nèi)求出其最優(yōu)解。目前,國(guó)內(nèi)外學(xué)者正在不斷深入研究本類問(wèn)題,提出了諸于分支定界法[4]、遺傳算法[5]、人工神經(jīng)網(wǎng)絡(luò)等方法來(lái)計(jì)算其精確解。但這類方法更偏向于理論研究方面,在實(shí)際中應(yīng)用受到各種因素的制約,而且相關(guān)算法的實(shí)現(xiàn)需要相當(dāng)?shù)募记桑c車間作業(yè)快速實(shí)用的特點(diǎn)不相符。因此,人們更傾向于尋找不精確但快速適用的算法,希望在有效地時(shí)間里得到可接受的調(diào)度結(jié)果。例如,基于優(yōu)先分配原則的啟發(fā)式算法[6]、轉(zhuǎn)換瓶頸算法[7]以及其他現(xiàn)代化優(yōu)化算法等。本文采用一種搭積木模型的快速啟發(fā)式算法[8],其模型示意圖如下圖2所示。
圖2 堆(工序集)和盒(控制器)的圖表示
將在時(shí)間序列上可以并行的工序集模擬為積木堆,各工序集中具有先后順序的工序模擬成各積木塊,不同的機(jī)械設(shè)備控制器模擬為積木盒(即盒k對(duì)應(yīng)于設(shè)備k)。圖中左邊有三堆積木塊,每塊積木都用數(shù)字(1~9)來(lái)標(biāo)識(shí),每塊積木上的數(shù)字(①,②,③)對(duì)應(yīng)于右邊的盒號(hào),表示該積木塊應(yīng)該搭在相應(yīng)的盒子中,積木塊邊上的數(shù)字表示積木的高度,積木塊的高度則代表當(dāng)前工序加工所需要的時(shí)間t。
根據(jù)圖2,采用如下的啟發(fā)式算法(HA):在當(dāng)前格局下,計(jì)算每堆最底部積木塊的優(yōu)先度;優(yōu)先度計(jì)算公式為:p=hi,j-afk,j(hi,j表示除掉積木塊j后堆i的高度,fk,j表示積木塊j放到對(duì)應(yīng)盒中的最低高度,a為一個(gè)正數(shù),表明fk,j所占的權(quán)重,本文中取1);選擇具有最大優(yōu)先度的積木塊放在相應(yīng)的盒子中,回頭重新開(kāi)始計(jì)算直到所有的積木塊都已經(jīng)放在相應(yīng)的盒子中。圖2中標(biāo)Ⅰ的兩條虛曲線即表示當(dāng)前格局下積木塊4的優(yōu)先度最大,所以4被移到右邊的盒子中,同時(shí)積木塊5下降,形成下一格局。鐘表生產(chǎn)線的采用本算法的優(yōu)化調(diào)度流程如右上圖3所示。
圖3 鐘表生產(chǎn)線工序的基本調(diào)度流程
將整個(gè)鐘表生產(chǎn)線各工序所需要的具體時(shí)間代入進(jìn)行計(jì)算,可以發(fā)現(xiàn)采用該啟發(fā)式調(diào)度算法后,整個(gè)生產(chǎn)線的加工時(shí)間縮短了28.5%,具體數(shù)據(jù)見(jiàn)表1,極大地提高了生產(chǎn)線的效率。
表1 優(yōu)化算法優(yōu)化效果表
圖4 自動(dòng)生產(chǎn)線控制軟件系統(tǒng)組件圖
根據(jù)自動(dòng)生產(chǎn)線控制軟件的需求,本文采用微軟MFC單文檔程序模式以及C/S框架體系設(shè)計(jì)實(shí)現(xiàn)調(diào)度控制軟件。上圖4為軟件系統(tǒng)的基本組件圖[9]。
根據(jù)圖4中給出的系統(tǒng)組件框架,本文中的自動(dòng)生產(chǎn)線控制軟件可以分為人機(jī)交互、任務(wù)調(diào)度分配、數(shù)據(jù)通信和文件處理等4個(gè)主要功能模塊,四個(gè)模塊的相互協(xié)作,實(shí)現(xiàn)控制軟件功能的自動(dòng)性和穩(wěn)定性。
生產(chǎn)調(diào)度模塊主要負(fù)責(zé)整個(gè)生產(chǎn)線工序流程的自動(dòng)化控制。采用調(diào)度算法優(yōu)化后可以得到整個(gè)生產(chǎn)線最佳的進(jìn)出料工序集。當(dāng)前工序完成之后,在工序集中查找下一工序,并實(shí)時(shí)監(jiān)測(cè)當(dāng)前生產(chǎn)線的運(yùn)行情況,始終保持整個(gè)生產(chǎn)線流程的高效運(yùn)行。同時(shí),生產(chǎn)調(diào)度模塊還需要仔細(xì)考慮在調(diào)度中對(duì)意外情況的處理,保證整條生產(chǎn)線的安全性與穩(wěn)定性。圖5描述了生產(chǎn)調(diào)度模塊基本的工作流程圖。
圖5 生產(chǎn)調(diào)度模塊工作流程圖
人機(jī)交互模塊主要提供用戶生產(chǎn)線參數(shù)設(shè)置和生產(chǎn)線控制接口。用戶在該模塊中可以設(shè)置生產(chǎn)線的相關(guān)初始化參數(shù),如暫存機(jī)數(shù)量,零件的長(zhǎng)度寬度等;同時(shí),用戶還可以通過(guò)界面上的相關(guān)按鈕實(shí)現(xiàn)對(duì)生產(chǎn)線的控制,如網(wǎng)絡(luò)檢查,開(kāi)始執(zhí)行命令等。本軟件的基本人機(jī)界面風(fēng)格如圖6所示。
圖6 控制軟件的人機(jī)界面風(fēng)格
控制軟件還包括數(shù)據(jù)通信和文件處理兩個(gè)模塊。數(shù)據(jù)通信模塊主要負(fù)責(zé)控制軟件與生產(chǎn)線中各機(jī)械設(shè)備控制器之間的數(shù)據(jù)交互,提供相應(yīng)的斷網(wǎng)保護(hù)以及網(wǎng)絡(luò)故障恢復(fù)功能。文件處理模塊主要完成軟件系統(tǒng)參數(shù)、狀態(tài)保存以及參數(shù)、狀態(tài)恢復(fù)兩大部分的功能。主要用來(lái)保護(hù)和恢復(fù)生產(chǎn)線的運(yùn)行狀態(tài),保證整條生產(chǎn)線的自動(dòng)穩(wěn)定運(yùn)行。
本文以HA快速啟發(fā)式算法以及自動(dòng)化生產(chǎn)線控制軟件系統(tǒng)組件結(jié)構(gòu)為基礎(chǔ),設(shè)計(jì)開(kāi)發(fā)了一套自動(dòng)化生產(chǎn)線控制軟件。該軟件已經(jīng)在某鐘表加工廠車間進(jìn)行了試運(yùn)行。
實(shí)際加工車間試運(yùn)行機(jī)械設(shè)備部分工作圖如圖7a為攝像頭拍照,分揀機(jī)械手準(zhǔn)備進(jìn)行單個(gè)零件上料;7b為配送機(jī)械手給機(jī)床進(jìn)料配送零件。
圖7 自動(dòng)化生產(chǎn)線及軟件現(xiàn)場(chǎng)圖
試運(yùn)行的結(jié)果表明,自動(dòng)生產(chǎn)線在暫存機(jī)中料盤(pán)充足的情況下,能夠連續(xù)不斷地自動(dòng)進(jìn)行零件的加工與回收,驗(yàn)證了無(wú)人自動(dòng)化生產(chǎn)調(diào)度的可行性。與傳統(tǒng)的加工方法相比,能夠大量減少生產(chǎn)線所需人工數(shù)量,減少生產(chǎn)線的生產(chǎn)加工時(shí)間,提高生產(chǎn)線的效率,降低生產(chǎn)成本,提高產(chǎn)品的競(jìng)爭(zhēng)力。隨著我國(guó)制造業(yè)自動(dòng)化水平的不斷提高,可以預(yù)見(jiàn)本軟件系統(tǒng)的設(shè)計(jì)模式具有良好的工業(yè)應(yīng)用前景。
[1]胡洋. 淺析我國(guó)機(jī)械自動(dòng)化發(fā)展現(xiàn)狀[J]. 科技創(chuàng)新與應(yīng)用. 2013(2):56.
[2]陳永方,陳明. 淺談自動(dòng)化生產(chǎn)線的發(fā)展[J]. 廣西輕工業(yè). 2011(1):56-57.
[3]張守勝. 作業(yè)車間調(diào)度問(wèn)題綜述[J]. 科技廣場(chǎng). 2007(6):78-83.
[4]Christian Artigues,Dominique Feillet,A branch & bound method for the job shop problem with sequence-dependent setup times. Annals of Operations Research. 2008,159(1):135-159.
[5]Fatma A.Omara, Mona M.Arafa. Genetic Algorithms for Task Scheduling Problem. Foundations of Computational Intelligence. 2009(3):479-507.
[6]郝文育,李亞白,王寧生. 一種啟發(fā)式車間作業(yè)調(diào)度算法的研究與應(yīng)用[J]. 機(jī)械科學(xué)與技術(shù). 2005,24(7):861-864.
[7]G.Schuh, T.Potente, S.Fucchs. Shifting Bottlenecks in Production Control. Enabling Manufacturing Competitiveness And Economic Sustainability. 2012:505-511.
[8]張德富,李新.求解作業(yè)車間調(diào)度問(wèn)題的快速啟發(fā)式算法[J]. 計(jì)算機(jī)集成制造系統(tǒng). 2005(2):62-66.
[9]馬剛平,廖洪強(qiáng),李慧忠. 型煤生產(chǎn)線自動(dòng)化監(jiān)控系統(tǒng)設(shè)計(jì)[J]. 機(jī)電產(chǎn)品開(kāi)發(fā)與創(chuàng)新. 2005,18(6):122-125.
(編輯 李秀敏)
本刊歡迎訂閱!
歡迎在線投稿!
歡迎刊登廣告!
http:∥www.zhjcz.com.cn
Develop Software for Automatic Controlling Production Line on Heuristic Scheduling Algorithm
YANG Yong-quan1, SONG Bao1,CHENG Jian-jun2
(1.School of Mechanical Science and Engineering, Huazhong University of Science and Technology, Wuhan 430074, China; 2.Shenzhen HaoNeng Technology Co.Ltd, Shenzhen Guangdong 518172, China)
On the basis of a fast heuristic scheduling algorithm, a control software of the automatic production line is developed by the Microsoft MFC single document program framework. As a client of the C/S structure of the system, the software, using algorithm automatically optimizes the processing sequence of the production line and interacting with CNC controllers through the Ethernet network, realized the production line processing optimization and automatic controlling. In addition, the testing of the software run good in the real machine -shop.
fast heuristic scheduling algorithm; production line;automatic control
1001-2265(2014)01-0083-03
10.13462/j.cnki.mmtamt.2014.01.023
2013-05-09;
2013-06-01
“高檔數(shù)控機(jī)床與基礎(chǔ)制造裝備”科技重大專項(xiàng)(2012ZX04001012);廣東省部產(chǎn)學(xué)研重大專項(xiàng)(2012A090300012)
楊勇泉(1989—),男,湖北天門(mén)人,華中科技大學(xué)碩士研究生,主要研究方向?yàn)樽哉夹g(shù)和自動(dòng)控制技術(shù),(E-mail)hustmseyang@hust.edu.cn。
TH165;TG659
A