本發(fā)明涉及銅板包括方法技術(shù)領域,尤其涉及一種銅板包裝打包方法。
背景技術(shù):
伴隨著人們物質(zhì)生活的極大豐富,對銅板的需求量不斷的增加,所以對于銅板的運輸成本以及在運輸過程中保證銅板的質(zhì)量是現(xiàn)有技術(shù)中要解決的問題。而銅板本身是一個大體積的產(chǎn)品,如果直接對成品銅板進行運輸容易造成產(chǎn)品的損傷而且運輸費用較高。所以廠商們應該將客戶銅板進行打包運輸,以保證產(chǎn)品的完整性以及降低運輸成本。保證銅板運輸?shù)那疤峋褪菍~板按照尺寸進行分類打包。目前實現(xiàn)這種打包的方式是基于人工經(jīng)驗式手動打包,效率較低。
技術(shù)實現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問題是如何提供一種打包效率高的銅板包裝打包方法。
為解決上述技術(shù)問題,本發(fā)明所采取的技術(shù)方案是:一種銅板包裝打包方法,其特征在于包括如下步驟:
將銅板的相關(guān)數(shù)據(jù)從數(shù)據(jù)庫中讀出,使用整合算法對上述數(shù)據(jù)進行處理;
對使用整合算法處理后的數(shù)據(jù)使用快速排序算法進行處理,機器人根據(jù)處理后的數(shù)據(jù)完成每一包、每一訂單以及每一批次銅板的打包。
進一步的技術(shù)方案在于,所述整合算法包括如下步驟:
從數(shù)據(jù)庫將銅板的相關(guān)數(shù)據(jù)讀出;
計算銅板的體積,根據(jù)質(zhì)量計算公式,計算出銅板的重量;
查詢數(shù)據(jù)庫,根據(jù)物料來匹配數(shù)據(jù)庫中銅板的類別和包裝規(guī)則,如果匹配成功則對數(shù)據(jù)進行快速排序算法處理,如果匹配不成功,則報錯并結(jié)束。
進一步的技術(shù)方案在于,所述銅板的相關(guān)數(shù)據(jù)包括板批次號、銅板訂單號、銅板的長度、銅板的寬度、銅板的厚度、以及銅板的所屬物料。
進一步的技術(shù)方案在于,所述快速排序算法包括如下步驟:
1)首先將數(shù)據(jù)依次插入到單向鏈表中;
2)根據(jù)批次排列訂單;
3)根據(jù)訂單來排列銅板長度、寬度、重量;
4)根據(jù)步驟3)中提供的訂單標記3和標記4范圍的數(shù)據(jù)首先按照板件長度的大小從大到小進行排序,并對已經(jīng)長度排序后的數(shù)據(jù),如果具有相同的長度,則相同長度范圍內(nèi)的寬度同樣按照從大到小進行排序;
5)依據(jù)步驟4)中提供的標記3和標記4中已經(jīng)按照長度、寬度排序完之后的數(shù)據(jù)按照分組方法進行賽選,分組之后單個的數(shù)據(jù)進行混包處理;
6)分組方法的實現(xiàn):首先根據(jù)步驟4)中的訂單邊界標記3和標記4,將第一個數(shù)據(jù)1作為第一組,然后比較下一個數(shù)據(jù)2如果數(shù)據(jù)2的長度小于數(shù)據(jù)1的長度并且數(shù)據(jù)2中的寬度小于數(shù)據(jù)1中的寬度,那么就將數(shù)據(jù)2分配到第一組,否則重新建一個第二組;同樣將數(shù)據(jù)3首先對第一組數(shù)據(jù)中的最后一個數(shù)據(jù)進行類似比較,如果成功則分配,不成功則比較下一組,如果成功則分配,否則循環(huán)比較,全部都沒有匹配成功的則重新建組,以此類推直到遇到標記4位置;
7)經(jīng)過步驟6)分組賽選出來的數(shù)據(jù),對每組數(shù)據(jù)進行檢查,如果該組中就一個數(shù)據(jù)那么這個數(shù)據(jù)進入到了混包中并對該數(shù)據(jù)做標記flag;
8)步驟7)中賽選剩下沒有flag的數(shù)據(jù)按照步驟3)和步驟4)重新進行排序,該數(shù)據(jù)的邊界仍然是標記3和標記4;此時從數(shù)據(jù)中賽選出最大值小度length按照打包方法,首先將第一個不是flag的數(shù)據(jù)1作為起始數(shù)據(jù),優(yōu)先組合相同銅板并作為標記;
9)從沒有flag的數(shù)據(jù)中賽選出僅次于不等于數(shù)據(jù)1長度的數(shù)據(jù)2;然后將數(shù)據(jù)1中的數(shù)據(jù)的長度進行1/2的取值記做tag1,兩塊連續(xù)相同的并且長度最接近tag1的數(shù)據(jù)如果存在則放到一個數(shù)據(jù)組中,如果不存在則考慮一個數(shù)據(jù)接近數(shù)據(jù)1的1/2和兩塊數(shù)據(jù)接近數(shù)據(jù)1的1/4的數(shù)據(jù)進行組合,此時如果存在并且數(shù)據(jù)的體積小于已經(jīng)存放到數(shù)據(jù)組的體積那么該數(shù)據(jù)不考慮并進行1/2和三個數(shù)據(jù)1的1/6,如果數(shù)據(jù)體積大于數(shù)據(jù)組中的數(shù)據(jù)就替代該數(shù)據(jù)組中的數(shù)據(jù);依次類推,直到遇到數(shù)據(jù)1的1/2n小于length位置;上述過程要滿足,組合板的長度不能大于數(shù)據(jù)1中長度,組合版寬度不能大于數(shù)據(jù)1的寬度;
10)根據(jù)步驟9)提出的數(shù)據(jù)1的1/2排序完之后再進行數(shù)據(jù)1的1/3排序,操作方法和步驟9)相同;此時排列出來的數(shù)據(jù)要存入到數(shù)據(jù)組中數(shù)據(jù)進行體積比較,如果大于就替代,否則比較一下組;以此類推直到遇到數(shù)據(jù)1的長度的1/n小于length為止;
11)將上述數(shù)據(jù)中的數(shù)據(jù)進行打包:優(yōu)先打包相同銅板,如果打包已經(jīng)滿足要求就放棄打包數(shù)組中的組合銅板和數(shù)據(jù)2,否則優(yōu)先考慮數(shù)據(jù)2,如果已經(jīng)滿足要求,同樣放棄數(shù)據(jù)組中的組合銅板,最后組合銅板數(shù)據(jù)2全部打上,數(shù)據(jù)2要放到最上方,如果已經(jīng)滿足就放棄,否則將組合板作為數(shù)據(jù)1,重復步驟9)-步驟11),直到滿要求為止;
12)重復上述步驟4)-11)進行打下一包,并將上述賽選出來的數(shù)據(jù)flag混包到下一包,并按照混包算法進行處理:
13)重復3)-12)步驟選擇下一個訂單進行打包;
14)重復2)-13)步驟選擇下一個批次進行打包。
進一步的技術(shù)方案在于,所述根據(jù)批次排列訂單的方法如下:
記錄第一個數(shù)據(jù)作為該批次的首數(shù)據(jù)并做下標記1,直到遇到不等于做標記1的數(shù)據(jù)為止并做標記2,賽選出標記1和標記2作為本批次分界點,在這個批次里面會有很多的訂單。
進一步的技術(shù)方案在于,根據(jù)訂單來排列銅板長度、寬度、重量的方法如下:根據(jù)步驟2)中提供的標記1和標記2的范圍內(nèi)將第一個數(shù)據(jù)作為該訂單的首數(shù)據(jù)并做標記3,直到遇到不等于做標記3的數(shù)據(jù)為止并做標記4,賽選出標記3和標記4作為本訂單分界點,在這個訂單里面會有很多的訂單。
進一步的技術(shù)方案在于,所述混包算法包括如下步驟:
對于篩選出來的數(shù)據(jù)flag,混和到下一包中,此時的數(shù)據(jù)是具有規(guī)則的,在進行混包的時候如果混和組板滿足同一個規(guī)則的話就可以進行混包;
如果滿足上述混包規(guī)則的,那么該數(shù)據(jù)也要和剩下包的數(shù)據(jù)同樣混合來比較那個數(shù)據(jù)更優(yōu),該flag選擇進入最優(yōu)的包中;
剩下賽選出來的數(shù)據(jù)flag都進行上述操作。
采用上述技術(shù)方案所產(chǎn)生的有益效果在于:所述方法針對整合算法、快速排序算法、混包算法來對數(shù)據(jù)進行排序打包,對于數(shù)據(jù)域的操作主要是針對數(shù)據(jù)邊界的處理,防止數(shù)據(jù)重復使用和未使用,然后以指定的格式傳送給機器人實現(xiàn)自動打包的功能,提高了打包的工作效率。
附圖說明
下面結(jié)合附圖和具體實施方式對本發(fā)明作進一步詳細的說明。
圖1是本發(fā)明實施例所述方法的主流程圖;
圖2是本發(fā)明實施例所述方法中整合算法的流程圖;
圖3是本發(fā)明實施例所述方法中快速排序算法的流程圖;
圖4是發(fā)明實施例所述方法中混包算法的流程圖。
具體實施方式
下面結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明的一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
在下面的描述中闡述了很多具體細節(jié)以便于充分理解本發(fā)明,但是本發(fā)明還可以采用其他不同于在此描述的其它方式來實施,本領域技術(shù)人員可以在不違背本發(fā)明內(nèi)涵的情況下做類似推廣,因此本發(fā)明不受下面公開的具體實施例的限制。
如圖1所示,本發(fā)明實施例公開了一種銅板包裝打包方法,包括如下步驟:
將銅板的相關(guān)數(shù)據(jù)從數(shù)據(jù)庫中讀出,使用整合算法對上述數(shù)據(jù)進行處理;
對使用整合算法處理后的數(shù)據(jù)使用快速排序算法進行處理,機器人根據(jù)處理后的數(shù)據(jù)完成每一包、每一訂單以及每一批次銅板的打包。
本發(fā)明提出的整合算法包括如下步驟,如圖2所示:
首先從數(shù)據(jù)庫將數(shù)據(jù)讀出,數(shù)據(jù)包括:銅板批次號、銅板訂單號、銅板的長度、銅板的寬度、銅板的厚度、以及銅板的所屬物料;
根據(jù)銅板的長度,寬度,厚度計算出體積,然后利用換算公式來計算該銅板的重量(為后面打包進行準備);
根據(jù)銅板的物料來從另外一個數(shù)據(jù)庫中找到對應的類別和規(guī)則。
本發(fā)明提出的快速排序算法包括下列步驟,如圖3所示:
1)首先將數(shù)據(jù)依次插入到單向鏈表中。
2)根據(jù)批次排列訂單:由于批次是連續(xù)性的,記錄第一個數(shù)據(jù)作為該批次的首數(shù)據(jù)并做下標記1,直到遇到不等于做標記1的數(shù)據(jù)為止并做標記2,賽選出標記1和標記2作為本批次分界點,在這個批次里面會有很多的訂單。
3)根據(jù)訂單來排列長度、寬度、重量:由于訂單也具有連續(xù)性,根據(jù)步驟2)中提供的標記1和標記2的范圍內(nèi)將第一個數(shù)據(jù)作為該訂單的首數(shù)據(jù)并做標記3,直到遇到不等于做標記3的數(shù)據(jù)為止并做標記4,賽選出標記3和標記4作為本訂單分界點,在這個訂單里面會有很多的訂單。
4)根據(jù)步驟3)中提供的訂單標記3和標記4范圍的數(shù)據(jù)首先按照板件長度的大小進行從大到小進行排序,并對已經(jīng)長度排序后的數(shù)據(jù),如果具有相同的長度,則相同長度范圍內(nèi)的寬度同樣按照從大到小進行排序,由于重量和長度、寬度有關(guān)系,則重量不進行排序。
5)依據(jù)步驟4)中提供的標記3和標記4中已經(jīng)按照長度、寬度排序完之后的數(shù)據(jù)按照分組思想進行賽選,目的是分完組之后單個的數(shù)據(jù)要進行混包。
6)分組思想的實現(xiàn):首先根據(jù)步驟4)中的訂單邊界標記3和標記4,將第一個數(shù)據(jù)1作為第一組,然后比較下一個數(shù)據(jù)2如果數(shù)據(jù)2的長度小于數(shù)據(jù)1的長度并且數(shù)據(jù)2中的寬度小于數(shù)據(jù)1中的寬度,那么就將數(shù)據(jù)2分配到第一組,否則重新建一個第二組。同樣將數(shù)據(jù)將數(shù)據(jù)3首先對第一組數(shù)據(jù)中的最后一個數(shù)據(jù)進行類似比較,如果成功則分配,不成功則比較下一組,如果成功則分配,否則循環(huán)比較,全部都沒有匹配成功的則重新建組。以此類推直到遇到標記4位置。
7)經(jīng)過步驟6)分組賽選出來的數(shù)據(jù),對每組數(shù)據(jù)進行檢查,如果該組中就一個數(shù)據(jù)那么這個數(shù)據(jù)進入到了混包中并對帶數(shù)據(jù)做標記flag。
8)步驟7)中賽選剩下(沒有flag)的數(shù)據(jù)按照步驟3)和步驟4)重新進行排序,該數(shù)據(jù)的的邊界仍然是標記3和標記4。此時我們從數(shù)據(jù)中賽選出最大值小度length按照我們的打包總體思路,首先將第一個不是flag的數(shù)據(jù)1作為起始數(shù)據(jù),優(yōu)先組合相同銅板并作為標記。
9)從沒有flag的數(shù)據(jù)中賽選出僅次于不等于數(shù)據(jù)1長度的數(shù)據(jù)2。然后將數(shù)據(jù)1中的數(shù)據(jù)的長度進行1/2的取值記做tag1,這樣兩塊連續(xù)相同的并且長度最接近tag1的數(shù)據(jù),如果存在放到一個數(shù)據(jù)組中,如果不存在則考慮一個數(shù)據(jù)接近數(shù)據(jù)1的1/2和兩塊數(shù)據(jù)接近數(shù)據(jù)1的1/4的數(shù)據(jù)進行組合,此時如果存在并且數(shù)據(jù)的體積小于已經(jīng)存放到數(shù)據(jù)組的體積那么該數(shù)據(jù)不考慮并進行1/2和三個數(shù)據(jù)1的1/6,如果數(shù)據(jù)體積大于數(shù)據(jù)組中的數(shù)據(jù)就替代該數(shù)據(jù)組中的數(shù)據(jù)。依次類推,直到遇到數(shù)據(jù)1的1/2n小于length位置,目的是選擇組合銅板積最接近數(shù)據(jù)的體積。上述過程要滿足,組合板的長度不能大于數(shù)據(jù)1中長度,組合版寬度不能大于數(shù)據(jù)1的寬度。
10)根據(jù)步驟9)提出的數(shù)據(jù)1的1/2排序完之后進行在進行數(shù)據(jù)1的1/3排序算法,操作方法和步驟9)一樣。此時排列出來的數(shù)據(jù)要存入到數(shù)據(jù)組中數(shù)據(jù)進行體積比較,如果大于就替代,否則比較一下組。以此類推直到遇到數(shù)據(jù)1的長度的1/n小于length為止。
11)將上述數(shù)據(jù)中的數(shù)據(jù)進行打包:優(yōu)先打包相同銅板,如果打包已經(jīng)滿足要求就放棄打包數(shù)組中的組合銅板和數(shù)據(jù)2,否則優(yōu)先考慮數(shù)據(jù)2,如果已經(jīng)滿足要求,同樣放棄數(shù)據(jù)組中的組合銅板,最后組合銅板數(shù)據(jù)2全部打上,數(shù)據(jù)2要放到最上方,如果已經(jīng)滿足就放棄,否則將組合板最為數(shù)據(jù)1,重復步驟9)-11),直到滿要求為止。
12)重復上述步驟4)-12)進行打下一包,并將上述賽選出來的數(shù)據(jù)flag混包到下一包,并按照混包算法。
13)重復(3)-(13)步驟選擇下一個訂單進行打包。
14)重復(2)-(14)步驟選擇下一個批次進行打包。
本發(fā)明提出的混包算法包括如下步驟,如圖4所示:
對于篩選出來的數(shù)據(jù)flag,混和到下一包中,此時的數(shù)據(jù)是具有規(guī)則的,在進行混包的時候如果混和組板滿足同一個規(guī)則的話就可以進行混包。
如果滿足上述混包規(guī)則的,那么該數(shù)據(jù)也要和剩下包的數(shù)據(jù)同樣混合來比較那個數(shù)據(jù)更優(yōu)。該flag選擇進入最優(yōu)的包中。
剩下賽選出來的數(shù)據(jù)flag都進行上述操作。
所述方法針對整合算法、快速排序算法、混包算法來對數(shù)據(jù)進行排序打包,對于數(shù)據(jù)域的操作主要是針對數(shù)據(jù)邊界的處理,防止數(shù)據(jù)重復使用和未使用,然后以指定的格式傳送給機器人實現(xiàn)自動打包的功能,提高了打包的工作效率。