本設(shè)計中的裁床主要是針對服裝等相關(guān)行業(yè)的軟性材料裁剪,國內(nèi)在該方面自動化程度不高,生產(chǎn)效率低,在勞動力成本不斷提高的情況下,急切需要提高自動化程度。本設(shè)計提出的控制系統(tǒng)方案是ARM+PLC的控制方式,將排料功能獨立出來在PC上完成,ARM平臺負(fù)責(zé)數(shù)據(jù)處理,PLC控制執(zhí)行器件運行。 1 數(shù)據(jù)處理系統(tǒng)功能分析 數(shù)據(jù)處理系統(tǒng)主要包括PLT文件數(shù)據(jù)處理模塊和通信模塊。為了保證系統(tǒng)有較好的數(shù)據(jù)處理能力,系統(tǒng)以ARM Cortex-A8處理器為核心,嵌入式操作系統(tǒng)使用微軟公司的WindOws CE6.0。系統(tǒng)需要從移動存儲設(shè)備獲取PLT文件,目前主流的移動存儲設(shè)備都是USB接口,因此需要系統(tǒng)具備USB通信功能。數(shù)據(jù)處理系統(tǒng)需要跟執(zhí)行機構(gòu)控制器PLC進行通信,由于數(shù)據(jù)量較大,采用TCP/IP通信比較合理,其功能框圖如圖1所示。 圖1 數(shù)據(jù)處理系統(tǒng)功能框圖 2 PLT文件解析及優(yōu)化設(shè)計 PLT文件包含圖形向量信息,原本是用于用戶噴圖打印的。在本系統(tǒng)中,PLT文件被用來存放裁床裁片輪廓邊界點的坐標(biāo)信息和刀筆的操作信息。從存儲設(shè)備中讀取的文件數(shù)據(jù)量較大,包含很多命令。如果將這些數(shù)據(jù)直接傳送到PLC,無疑會增加數(shù)據(jù)傳輸量,并且需要PLC增加數(shù)據(jù)處理和計算的過程,影響系統(tǒng)的實時性。因此,在數(shù)據(jù)處理系統(tǒng)中將PLT文件數(shù)據(jù)先進行處理,并且進行適當(dāng)?shù)膬?yōu)化,從而減少數(shù)據(jù)量,提高PLC處理的實時性。 2.1 PLT文件解析 數(shù)據(jù)處理系統(tǒng)讀人的文件是PLT文件,PLT文件源自于HP公司,最初主要用于打印機指令文件。其命令用來描述2D圖形信息,采用ASCII碼來表示,其內(nèi)容只包含圖形的線條信息。而裁床在裁割過程中裁刀行走的路徑也是由許多線段組成的,因此用PLT文件來描述和存儲裁床裁片形狀的信息是非常合適的。 PLT文件中的一條PLT指令由命令加參數(shù)的方式組成,分號表示該條指令結(jié)束。一條指令可以有多個參數(shù),參數(shù)之間以逗號分開。其常用指令如表1所列。 下面以裁割長方形裁片為例,說明裁床PLT文件的格式。設(shè)定裁床的左下角為坐標(biāo)原點,長方形裁片位于原點的右上角,其坐標(biāo)點如圖2所示,則該圖形在PLT文件中的數(shù)據(jù)應(yīng)該為“IN;SP1;PU600,600;PD600,1 200;PD1 800,1 200;PD1 800,600;PD600,600;PU;PG;”。PLT文件中的長度與實際的長度單位換算關(guān)系:40個PLT文件中的單位=1 mm。 圖2 長方形裁片坐標(biāo)示意圖 由于執(zhí)行機構(gòu)控制器PLC的存儲空間有限,數(shù)據(jù)處理系統(tǒng)應(yīng)盡可能地減少數(shù)據(jù)總量。在實際的加工過程中,PLC需要的是加工過程中的坐標(biāo)點值,只要上下位機之間制定合理的協(xié)議,就可以將PLT文件中的命令去除,直接將坐標(biāo)點發(fā)送到PLC。這樣既有利于節(jié)約下位機的存儲空間,而且也能減少下位機的運算過程。上下位機約定每一個坐標(biāo)值的x和y數(shù)值的長度都為16位二進制數(shù)。那么裁床最大的有效裁割長度和寬度為65 536/40=1 638.4 mm,足夠普通的裁床使用。 2.2 PLT文件優(yōu)化處理 裁床裁片的PLT文件主要有兩種來源:一是通過工業(yè)相機采集服裝樣片的圖像,經(jīng)過圖像處理提取樣片輪廓的數(shù)字信息,并通過二次曲線擬合原始的邊界點序列產(chǎn)生輪廓的矢量圖,再將擬合曲線離散化并產(chǎn)生PLT文件;二是通過CAD軟件產(chǎn)生。第一種來源的數(shù)據(jù)目的性強,因此會考慮到實際應(yīng)用場合,盡可能地將數(shù)據(jù)精簡;而由CAD軟件產(chǎn)生的PLT文件并不一定會考慮文件的具體應(yīng)用對精度的不同要求,產(chǎn)生的PLT文件一般是固定的。服裝行業(yè)對精度的要求一般來說沒有機械零件對精度的要求高。在裁床設(shè)備中,這些PLT文件中可能會存在大量的冗余數(shù)據(jù),增加了數(shù)據(jù)總量。另外這些數(shù)據(jù)肯定相近的是坐標(biāo)點,這會造成裁床在實際裁割過程中需要不斷頻繁地加減速,對設(shè)備剛度會提出較高的要求,對電機的性能也是不小的考驗。 PLT文件的優(yōu)化思路:通過三次B樣條擬合由CAD產(chǎn)生的PLT文件中的坐標(biāo)點,獲得裁床裁片的輪廓曲線,并采用直線逼近法用微小線段擬合曲線,從而重新優(yōu)化刀具加工點,減少數(shù)據(jù)量。 在實際編程實現(xiàn)B樣條曲線時,多使用de-Boor定義。將參數(shù)t固定在區(qū)間[ti,ti+1],則de-Boor算法推導(dǎo)如下: 式(3)表示一條曲線P(t)從K階B樣條表示到K-1階B樣條表示的遞推公式。在程序中不斷地調(diào)用該公式,可以得到擬合的曲線。 裁床的刀頭在伺服電機的帶動下容易實現(xiàn)直線段組成的路徑,而不容易直接走曲線。因此將PLT文件中的數(shù)據(jù)通過上述算法重新擬合之后,還需要通過直線擬合的方式重新獲取路徑坐標(biāo)點,在加工誤差允許范圍內(nèi),盡可能地減少數(shù)據(jù)量。直線擬合的思路如下:在曲線上有N個坐標(biāo)點,用Kij(1 ①求出第1點和第2點之間的斜率K12。 ②求出第1點和第j(j>2)點的斜率K1j,每求出一個K1j就跟K12進行比較。如果差值小于設(shè)定的誤差值,則返回第二步繼續(xù)求下一個K1j,否則進入第3步。 ③回溯到j(luò)-1點的坐標(biāo)值,此時用直線連接第1點和第j-1點形成的線段可滿足精度要求。 ④如果j-1 擬合完成后,將形成優(yōu)化后的PLT文件。此文件中的數(shù)據(jù)將作為發(fā)送到PLC和在人機界面上顯示加工軌跡的數(shù)據(jù)。 2.3 裁片加工軌跡的顯示 裁床控制系統(tǒng)的上位機人機界面中,一般都有顯示裁片形狀(加工軌跡)的功能。該功能的主要作用有兩個:讓操作者能方便快速地知道加載的PLT文件是否為當(dāng)前需要加工的數(shù)據(jù)文件,避免由于選擇錯誤的加工數(shù)據(jù)而造成材料浪費;裁片的排料對服裝企業(yè)的材料利用率影響較大,通過裁片加工軌跡的顯示,使用者能直觀地知道此數(shù)據(jù)文件中的數(shù)據(jù)在排料方面是否合理。 數(shù)據(jù)處理系統(tǒng)采用的是WinCE 6.0嵌入式操作系統(tǒng),在此系統(tǒng)中開發(fā)應(yīng)用軟件可以采用微軟公司提供的Visual Studio 2005集成開發(fā)環(huán)境。在程序中將PLT文件的坐標(biāo)值按比例轉(zhuǎn)換后,通過MFC中的畫直線函數(shù),把各坐標(biāo)點按照既定的規(guī)則用直線段連接,從而在人機界面中顯示裁片加工軌跡。為了方便用戶直觀地了解裁片大致尺寸,在顯示頁面中加入了坐標(biāo)尺。裁片顯示界面及其測試效果如圖3所示。 圖3 裁片顯示界面測試效果 3 通信功能的實現(xiàn) 數(shù)據(jù)處理系統(tǒng)與外部的通信有兩部分:一是從移動存儲設(shè)備中獲取包含裁片加工信息的USB通信;二是與下位機PLC之間的TCP/IP通信。 USB設(shè)備分為SLAVE(從設(shè)備)和HOST(主設(shè)備),只有當(dāng)一臺HOST與一臺SLAVE連接時才能實現(xiàn)數(shù)據(jù)的傳輸。簡單地說,如果一個設(shè)備支持USB HOST,它就可以從另外一個USB設(shè)備中取得數(shù)據(jù)。裁床數(shù)據(jù)處理系統(tǒng)需要從外部移動存儲設(shè)備中讀取數(shù)據(jù),因此必須具備HOST功能。 數(shù)據(jù)處理系統(tǒng)與下位機之間采用TCP/IP通信,根據(jù)實際數(shù)據(jù)收發(fā)的需要,程序中創(chuàng)建了兩個端口號。端口號6000用于收發(fā)裁片信息數(shù)據(jù),端口號6001用于收發(fā)設(shè)置的參數(shù)以及相關(guān)監(jiān)控信息等。上位機軟件作為客戶端,要根據(jù)PLC的通信端口配置設(shè)置IP和端口號。PLC作為服務(wù)器端,打開端口并等待上位機連接,連接成功后等待接收數(shù)據(jù)。如果收到的是裁片信息數(shù)據(jù),則保存數(shù)據(jù);如果接收到的是設(shè)置參數(shù)的數(shù)據(jù),則根據(jù)約定的通信協(xié)議來作相應(yīng)的轉(zhuǎn)換和處理。具體通信協(xié)議如下: ①工作參數(shù)設(shè)置頭標(biāo)志:“PR”,設(shè)定的參數(shù)數(shù)據(jù)長度不定,以分號來判斷參數(shù)的長度。格式如下: ②系統(tǒng)工作參數(shù)設(shè)置頭標(biāo)志:“SPR”,設(shè)定的參數(shù)數(shù)據(jù)長度不定,以分號來判斷參數(shù)的長度。格式如下: ③警報消息接收頭標(biāo)志:“WN”,每個警報用1位表示,0表示正常,1表示警報。格式如下: ④開機時向PLC詢問上次保存的參數(shù):發(fā)送“ASK”。軟件“開始”控制:發(fā)送“STR”。 結(jié)語 采用嵌入式系統(tǒng)來實現(xiàn)裁床的數(shù)據(jù)處理功能,預(yù)期效果良好。相對傳統(tǒng)的控制系統(tǒng)來說,此方案移動性強、性價比高。將排料軟件與數(shù)據(jù)處理軟件分開,有利于縮短開發(fā)周期,降低軟件維護和升級的成本。 |