本發明涉及物流倉儲技術領域,尤其涉及一種車輛調度處理方法及系統。
背景技術:
自動化立體倉庫內,需要由多種物流設備配合來完成托盤的存取。主要的物流設備有兩種,堆垛機和輸送機。其中堆垛機的工作范圍僅限于巷道內,完成對托盤在貨架內的存取工作。而輸送機的運輸范圍相對較廣,可以分布于立體庫的各個位置,同時其形式也很多樣。常見的輸送機形式為直道穿梭小車等。對于輸送設備來說,必然有一套調度系統來實時的控制各個設備,來保證托盤可以連續運送。
目前只有直道穿梭小車的調度系統,直道上的小車可以往返運動,因此,其運行方向不固定;對于環形車系統(環形車系統包括一個環形軌道,無旁支、其上連接有多個入出庫口,其上有多臺車輛,多輛車沿預設方向單向運行)來說,其運行方向是唯一的;另外,在任務分配方面,傳統的調度方法是按照時間排序,順序執行。這樣的調配方法可能會導致多個車輛同時在做任務時,后車被前車阻擋影響后車接盤的情況,降低運輸效率。
因此,其調度方法不同于直道穿梭小車的調度。
技術實現要素:
本發明提供一種車輛調度處理方法及系統,適用于環形軌道上沿預設方向單向運行的各車輛的調度,由于其運行方向唯一,所以,在進行調度時不需要考慮車輛實時的運行方向,調度方法簡單。
第一方面,本發明提供一種車輛調度處理方法,包括:
獲取任務信息和在環形軌道上沿預設方向單向運行的各車輛的車輛運行信息,根據獲取到的任務信息和任務信息的接收時間更新預設的任務列表;其中,所述任務列表中包括任務信息和任務信息的接收時間,所述任務信息包括始發地位置,所述車輛運行信息包括各車輛的當前位置以及貨物裝載狀態信息;
若根據所述貨物裝載狀態信息判斷獲知所述環形軌道上存在未裝載貨物的空車,則獲取所述任務列表中任務信息的第一數量以及空車的第二數量;
比較所述第一數量和所述第二數量,根據比較結果選取對應的調度策略,并根據所述調度策略、所述任務列表中各任務信息的始發地位置以及各所述空車的當前位置,生成對各空車的調度指令以進行車輛調度。
優選的,所述比較所述第一數量和所述第二數量,根據比較結果選取對應的調度策略,并根據所述調度策略、所述任務列表中各任務信息的始發地位置以及各所述空車的當前位置,生成對各空車的調度指令以進行車輛調度包括:
若比較結果為所述第一數量不大于所述第二數量,則選取“任務選車”所對應的第一調度策略,并根據所述第一調度策略、各所述任務信息的始發地位置以及各所述空車的當前位置,生成對各空車的調度指令以進行車輛調度;其中,所述第一調度策略具體包括:
獲取第一任務信息,所述第一任務信息對應的始發地位置在所述預設方向上位于最前方;計算各所述空車由各自的當前位置行駛到所述第一任務信息對應的始發地位置所分別對應的行車距離,獲取所述行車距離最短的空車為執行所述第一任務信息的目標車輛,并對所述目標車輛生成對應的調度指令;
獲取第二任務信息,所述第二任務信息對應的始發地位置在所述預設方向上緊鄰所述第一任務信息對應的始發地位置;計算其余各所述空車由各自的當前位置行駛到所述第二任務信息對應的始發地位置所分別對應的行車距離,獲取所述行車距離最短的空車為執行所述第二任務信息的目標車輛,并對所述目標車輛生成對應的調度指令;
以此類推,直至處理完成所有的任務信息。
優選的,所述比較所述第一數量和所述第二數量,根據比較結果選取對應的調度策略,并根據所述調度策略、所述任務列表中各任務信息的始發地位置以及各所述空車的當前位置,生成對各空車的調度指令以進行車輛調度包括:
若比較結果為所述第一數量大于所述第二數量,則選取“車選任務”所對應的第二調度策略,并根據所述第二調度策略、各所述任務信息的始發地位置以及各所述空車的當前位置,生成對各空車的調度指令以進行車輛調度;其中,所述第二調度策略具體包括:
獲取第一空車,所述第一空車對應的當前位置在所述預設方向上位于最后方;計算所述第一空車由所述當前位置行駛到各所述任務信息所對應的始發地位置所分別對應的行車距離,獲取對應的行車距離最短的任務信息為所述第一空車所要執行的目標任務,并對所述第一空車生成對應的調度指令;
獲取第二空車,所述第二空車對應的當前位置在所述預設方向上位于緊鄰所述第一空車對應的當前位置;計算所述第二空車由所述當前位置行駛到其余各所述任務信息所對應的始發地位置所分別對應的行車距離,獲取對應的行車距離最短的任務信息為所述第二空車所要執行的目標任務,并對所述第二空車生成對應的調度指令;
以此類推,直至對所有的空車生成對應的調度指令。
優選的,所述方法還包括:
若根據所述任務列表中任務信息的接收時間判斷獲知任務信息的接收時間距離當前時間超過預設時間閾值,則確定存在尚未被執行的超時任務,獲取超時任務信息的第三數量,所述超時任務信息為超時任務對應的任務信息;
比較所述第三數量和所述第二數量,根據比較結果選取對應的調度策略,并根據調度策略、各超時任務信息的始發地位置以及各所述空車的當前位置,生成對各空車的調度指令以進行車輛調度。
優選的,根據比較結果選取對應的調度策略,并根據調度策略、各超時任務信息的始發地位置以及各所述空車的當前位置,生成對各空車的調度指令以進行車輛調度包括:
若比較結果為所述第三數量不大于所述第二數量,則選取“任務選車”所對應的第三調度策略,并根據所述第三調度策略、各超時任務信息的始發地位置以及各所述空車的當前位置,生成對各空車的調度指令以進行車輛調度;其中,所述第三調度策略具體包括:
獲取第一超時任務信息,所述第一超時任務信息對應的始發地位置在所述預設方向上位于最前方;計算各所述空車由各自的當前位置行駛到所述第一超時任務信息對應的始發地位置所分別對應的行車距離,獲取所述行車距離最短的空車為執行所述第一超時任務信息的目標車輛,并對所述目標車輛生成對應的調度指令;
獲取第二超時任務信息,所述第二超時任務信息對應的始發地位置在所述預設方向上緊鄰所述第一超時任務信息對應的始發地位置;計算其余各所述空車由各自的當前位置行駛到所述第二超時任務信息對應的始發地位置所分別對應的行車距離,獲取所述行車距離最短的空車為執行所述第二超時任務信息的目標車輛,并對所述目標車輛生成對應的調度指令;
以此類推,直至處理完成所有的超時任務信息。
優選的,根據比較結果選取對應的調度策略,并根據調度策略、各超時任務信息的始發地位置以及各所述空車的當前位置,生成對各空車的調度指令以進行車輛調度包括:
若比較結果為所述第三數量大于所述第二數量,則選取“車選任務”所對應的第四調度策略,并根據所述第四調度策略、各超時任務信息的始發地位置以及各所述空車的當前位置,生成對各空車的調度指令以進行車輛調度;其中,所述第四調度策略具體包括:
獲取第三空車,所述第三空車對應的當前位置在所述預設方向上位于最后方;計算所述第三空車由所述當前位置行駛到各所述超時任務信息所對應的始發地位置所分別對應的行車距離,獲取對應的行車距離最短的超時任務信息為所述第三空車所要執行的目標超時任務,并對所述第三空車生成對應的調度指令;
獲取第四空車,所述第四空車對應的當前位置在所述預設方向上位于緊鄰所述第三空車對應的當前位置;計算所述第四空車由所述當前位置行駛到其余各所述超時任務信息所對應的始發地位置所分別對應的行車距離,獲取對應的行車距離最短的超時任務信息為所述第四空車所要執行的目標超時任務,并對所述第四空車生成對應的調度指令;
以此類推,直至對所有的空車生成對應的調度指令。
優選的,所述任務信息還包括優先級標識;
相應地,所述方法還包括:
若判斷獲知所述任務列表的一個所述任務信息中包括有優先級標識,則確定存在優先任務,獲取第五調度策略,并根據所述第五調度策略、所述優先任務對應的始發地位置以及各空車的當前位置,生成對各空車的調度指令以進行車輛調度;其中,所述第五調度策略具體包括:
獲取優先任務信息,所述優先任務信息對應的始發地位置在所述預設方向上位于最前方;計算各所述空車由各自的當前位置行駛到所述優先任務信息對應的始發地位置所分別對應的行車距離,獲取所述行車距離最短的空車為執行所述優先任務信息的目標車輛,并對所述目標車輛生成對應的調度指令。
優選的,所述車輛運行信息還包括車輛的速度和車輛的標識,所述任務信息還包括目的地位置;
相應地,所述根據所述調度策略、所述任務列表中各任務信息的始發地位置以及各所述空車的當前位置,生成對各空車的調度指令以進行車輛調度之后,所述方法還包括:
若根據相鄰兩個車輛的貨物裝載狀態信息判斷獲知所述相鄰兩個車輛中前方的車輛為未裝載貨物的空車、后方的車輛為裝載有貨物的運行車輛,且根據所述前方的車輛的車輛的速度判斷獲知所述前方的車輛速度為零,則根據所述相鄰的兩個車輛的當前位置,判斷所述相鄰的兩個車輛之間的行車距離是否小于等于預設距離;
若是,則根據所述后方的車輛的標識查找預設的列表,獲取后方的車輛的當前任務信息;所述預設的列表中包括車輛的標識、車輛的當前任務信息以及車輛的標識和車輛的當前任務信息之間的關系;
根據所述后方的車輛的當前任務信息中的車輛的目的地位置,對所述前方的車輛生成避讓指令,以控制所述前方的車輛在所述預設方向上運行至所述車輛的當前任務信息中的目的地位置的前方位置;
所述前方和后方是以所述預設方向為正方向的前方和后方。
優選的,所述方法還包括:
若接收到所述車輛控制器發送的突發狀況控制信息,則生成使所有車輛停止的調度指令。
優選的,所述車輛運行信息還包括各車輛的故障檢測信息;
相應地,所述方法還包括:
若根據所述各車輛的故障檢測信息判斷獲知有至少一個車輛存在故障,則生成使所有車輛停止的調度指令。
優選的,所述任務信息還包括目的地位置和托盤號;
根據獲取到的任務信息和任務信息的接收時間更新預設的任務列表,包括:
根據獲取到的任務信息的始發地位置、目的地位置以及托盤號,判斷所述任務列表中是否包括所述獲取到的任務信息;
若包括,則不將所述獲取到的任務信息存儲到所述任務列表中;
若不包括,則將所述獲取到的任務信息和所述任務信息的接收時間存儲到所述任務列表中。
優選的,所述方法還包括:
生成調度指令后,將與所述調度指令對應的任務信息從所述任務列表中刪除。
第二方面,本發明還提供車輛調度處理系統,包括:
第一獲取單元,用于獲取任務信息和在環形軌道上沿預設方向單向運行的各車輛的車輛運行信息,根據獲取到的任務信息和任務信息的接收時間更新預設的任務列表;其中,所述任務列表中包括任務信息和任務信息的接收時間,所述任務信息包括始發地位置,所述車輛運行信息包括各車輛的當前位置以及貨物裝載狀態信息;
第二獲取單元,若根據所述貨物裝載狀態信息判斷獲知所述環形軌道上存在未裝載貨物的空車,則獲取所述任務列表中任務信息的第一數量以及空車的第二數量;
調度指令生成單元,用于比較所述第一數量和所述第二數量,根據比較結果選取對應的調度策略,并根據所述調度策略、所述任務列表中各任務信息的始發地位置以及各所述空車的當前位置,生成對各空車的調度指令以進行車輛調度。
由上述技術方案可知,本發明適用于環形軌道上沿預設方向單向運行的各車輛的調度,由于其運行方向唯一,所以,在進行調度時不需要考慮車輛實時的運行方向,調度方法簡單。
附圖說明
圖1為本發明一實施例提供的車輛調度處理方法的流程圖;
圖2為本發明一實施例提供的車輛調度處理系統的原理框圖。
附圖標記說明
第一獲取單元201第二獲取單元202調度指令生成單元203
具體實施方式
下面結合附圖和實施例,對本發明的具體實施方式作進一步詳細描述。以下實施例用于說明本發明,但不用來限制本發明的范圍。
圖1為本發明一實施例提供的一種車輛調度處理方法的流程圖。
如圖1所示的一種車輛調度處理方法,包括:
S101、獲取任務信息和在環形軌道上沿預設方向單向運行的各車輛的車輛運行信息,根據獲取到的任務信息和任務信息的接收時間更新預設的任務列表;其中,所述任務列表中包括任務信息和任務信息的接收時間,所述任務信息包括始發地位置,所述車輛運行信息包括各車輛的當前位置以及貨物裝載狀態信息;
S102、若根據所述貨物裝載狀態信息判斷獲知所述環形軌道上存在未裝載貨物的空車,則獲取所述任務列表中任務信息的第一數量以及空車的第二數量;
S103、比較所述第一數量和所述第二數量,根據比較結果選取對應的調度策略,并根據所述調度策略、所述任務列表中各任務信息的始發地位置以及各所述空車的當前位置,生成對各空車的調度指令以進行車輛調度。
本發明實施例適用于環形軌道(該環形軌道無旁支、其上連接有多個入出庫口,其上有多臺車輛)上沿預設方向單向運行的各車輛的調度,由于其運行方向唯一,所以,在進行調度時不需要考慮車輛實時的運行方向,調度方法簡單。
值得說明的是,上述實施例所述的是普通情況下的任務信息的分配方法。
作為一種優選實施例,所述步驟S103,包括:
若比較結果為所述第一數量不大于所述第二數量,則選取“任務選車”所對應的第一調度策略,并根據所述第一調度策略、各所述任務信息的始發地位置以及各所述空車的當前位置,生成對各空車的調度指令以進行車輛調度;其中,所述第一調度策略具體包括:
獲取第一任務信息,所述第一任務信息對應的始發地位置在所述預設方向上位于最前方;計算各所述空車由各自的當前位置行駛到所述第一任務信息對應的始發地位置所分別對應的行車距離,獲取所述行車距離最短的空車為執行所述第一任務信息的目標車輛,并對所述目標車輛生成對應的調度指令;
獲取第二任務信息,所述第二任務信息對應的始發地位置在所述預設方向上緊鄰所述第一任務信息對應的始發地位置;計算其余各所述空車由各自的當前位置行駛到所述第二任務信息對應的始發地位置所分別對應的行車距離,獲取所述行車距離最短的空車為執行所述第二任務信息的目標車輛,并對所述目標車輛生成對應的調度指令;
以此類推,直至處理完成所有的任務信息。
下面以4輛空車,3個任務信息為例說明本發明該實時例。
車的運行方向:逆時針運行;
4輛空車:5、6、7、8,在環形軌道上逆時針方向排列;
任務信息始發地位置:10、20、30在環形軌道上逆時針排列。
始發地位置為30的任務信息先選擇空車,其選擇8號空車;
然后始發地位置為20的任務信息選擇空車,其選擇7號空車;
然后始發地位置為10的任務信息選擇空車,其選擇6號空車。
值得說明的是,本發明車輛調度處理方法在任務信息和空車匹配后統一下發指令,但是一般位于運行方向上前方的車輛會先動,因此,本實施例的匹配可以保證所有任務信息都分配,且前車不會阻擋后車。
在所述第一數量等于第二數量時,也按照該原則進行分配,不再舉例說明。
作為一種優選實施例,所述步驟S103包括:
若比較結果為所述第一數量大于所述第二數量,則選取“車選任務”所對應的第二調度策略,并根據所述第二調度策略、各所述任務信息的始發地位置以及各所述空車的當前位置,生成對各空車的調度指令以進行車輛調度;其中,所述第二調度策略具體包括:
獲取第一空車,所述第一空車對應的當前位置在所述預設方向上位于最后方;計算所述第一空車由所述當前位置行駛到各所述任務信息所對應的始發地位置所分別對應的行車距離,獲取對應的行車距離最短的任務信息為所述第一空車所要執行的目標任務,并對所述第一空車生成對應的調度指令;
獲取第二空車,所述第二空車對應的當前位置在所述預設方向上位于緊鄰所述第一空車對應的當前位置;計算所述第二空車由所述當前位置行駛到其余各所述任務信息所對應的始發地位置所分別對應的行車距離,獲取對應的行車距離最短的任務信息為所述第二空車所要執行的目標任務,并對所述第二空車生成對應的調度指令;
以此類推,直至對所有的空車生成對應的調度指令。
下面以3輛空車,4個任務信息為例說明本發明該實時例。
車的運行方向:逆時針運行;
3輛空車:5、6、7,在環形軌道上逆時針方向排列;
任務信息始發地位置:10、20、30、40,在環形軌道上逆時針排列。
5號空車先選任務信息,其選擇始發地位置為10的任務信息;
然后6號空車選任務信息,其選擇始發地位置為20的任務信息;
然后7號空車選任務信息,其選擇始發地位置為30的任務信息。
值得說明的是,本發明車輛調度處理方法在任務信息和空車匹配后統一下發指令,但是一般位于運行方向上前方的車輛會先動,因此,本實施例的匹配可以保證前車不會阻擋后車,且保證離空車的行車距離近的任務信息被分配,從而在保證所有任務信息都分配的前提下車的行車距離小。
作為一種優選實施例,所述方法還包括:
若根據所述任務列表中任務信息的接收時間判斷獲知任務信息的接收時間距離當前時間超過預設時間閾值,則確定存在尚未被執行的超時任務,獲取超時任務信息的第三數量,所述超時任務信息為超時任務對應的任務信息;
比較所述第三數量和所述第二數量,根據比較結果選取對應的調度策略,并根據調度策略、各超時任務信息的始發地位置以及各所述空車的當前位置,生成對各空車的調度指令以進行車輛調度。
可以理解的是,本發明實施例為對超時任務信息的分配,對超時任務信息的分配也不需要考慮車輛實時的運行方向,因此,針對超時任務信息產生的調度方法簡單,且通過對超時任務信息的處理,可以保證任務信息的及時處理。
作為一種優選實施例,根據比較結果選取對應的調度策略,并根據調度策略、各超時任務信息的始發地位置以及各所述空車的當前位置,生成對各空車的調度指令以進行車輛調度包括:
若比較結果為所述第三數量不大于所述第二數量,則選取“任務選車”所對應的第三調度策略,并根據所述第三調度策略、各超時任務信息的始發地位置以及各所述空車的當前位置,生成對各空車的調度指令以進行車輛調度;其中,所述第三調度策略具體包括:
獲取第一超時任務信息,所述第一超時任務信息對應的始發地位置在所述預設方向上位于最前方;計算各所述空車由各自的當前位置行駛到所述第一超時任務信息對應的始發地位置所分別對應的行車距離,獲取所述行車距離最短的空車為執行所述第一超時任務信息的目標車輛,并對所述目標車輛生成對應的調度指令;
獲取第二超時任務信息,所述第二超時任務信息對應的始發地位置在所述預設方向上緊鄰所述第一超時任務信息對應的始發地位置;計算其余各所述空車由各自的當前位置行駛到所述第二超時任務信息對應的始發地位置所分別對應的行車距離,獲取所述行車距離最短的空車為執行所述第二超時任務信息的目標車輛,并對所述目標車輛生成對應的調度指令;
以此類推,直至處理完成所有的超時任務信息。
下面以4輛空車,3個超時任務信息為例說明本發明該實時例。
車的運行方向:逆時針運行;
4輛空車:5、6、7、8,在環形軌道上逆時針方向排列;
超時任務信息始發地位置:10、20、30,在環形軌道上逆時針排列。
始發地位置為30的超時任務信息先選擇空車,其選擇8號空車;
然后始發地位置為20的超時任務信息選擇空車,其選擇7號空車;
然后始發地位置為10的超時任務信息選擇空車,其選擇6號空車。
值得說明的是,本發明車輛調度處理方法在任務信息和空車匹配后統一下發指令,但是一般位于運行方向上前方的車輛會先動,因此,本實施例可以保證所有超時任務信息都分配,且前車不會阻擋后車。
作為一種優選實施例,根據比較結果選取對應的調度策略,并根據調度策略、各超時任務信息的始發地位置以及各所述空車的當前位置,生成對各空車的調度指令以進行車輛調度包括:
若比較結果為所述第三數量大于所述第二數量,則選取“車選任務”所對應的第四調度策略,并根據所述第四調度策略、各超時任務信息的始發地位置以及各所述空車的當前位置,生成對各空車的調度指令以進行車輛調度;其中,所述第四調度策略具體包括:
獲取第三空車,所述第三空車對應的當前位置在所述預設方向上位于最后方;計算所述第三空車由所述當前位置行駛到各所述超時任務信息所對應的始發地位置所分別對應的行車距離,獲取對應的行車距離最短的超時任務信息為所述第三空車所要執行的目標超時任務,并對所述第三空車生成對應的調度指令;
獲取第四空車,所述第四空車對應的當前位置在所述預設方向上位于緊鄰所述第三空車對應的當前位置;計算所述第四空車由所述當前位置行駛到其余各所述超時任務信息所對應的始發地位置所分別對應的行車距離,獲取對應的行車距離最短的超時任務信息為所述第四空車所要執行的目標超時任務,并對所述第四空車生成對應的調度指令;
以此類推,直至對所有的空車生成對應的調度指令。
下面以3輛空車,4個超時任務信息為例說明本發明該實時例。
車的運行方向:逆時針運行;
3輛空車:5、6、7,在環形軌道上逆時針方向排列;
超時任務信息始發地位置:10、20、30、40,在環形軌道上逆時針排列。
5號空車先選超時任務信息,其選擇始發地位置為10的超時任務信息;
然后6號空車選超時任務信息,其選擇始發地位置為20的超時任務信息;
然后7號空車選超時任務信息,其選擇始發地位置為30的超時任務信息。
值得說明的是,本發明車輛調度處理方法在超時任務信息和空車匹配后統一下發指令,但是一般位于運行方向上前方的車輛會先動,因此,本實施例的匹配可以保證前車不會阻擋后車,且保證離空車的行車距離近的超時任務信息被分配,從而在保證所有超時任務信息都分配的前提下車的行車距離小。
作為一種優選實施例,所述任務信息還包括優先級標識;
相應地,所述方法還包括:
若判斷獲知所述任務列表的一個所述任務信息中包括有優先級標識,則確定存在優先任務,獲取第五調度策略,并根據所述第五調度策略、所述優先任務對應的始發地位置以及各空車的當前位置,生成對各空車的調度指令以進行車輛調度;其中,所述第五調度策略具體包括:
獲取優先任務信息,所述優先任務信息對應的始發地位置在所述預設方向上位于最前方;計算各所述空車由各自的當前位置行駛到所述優先任務信息對應的始發地位置所分別對應的行車距離,獲取所述行車距離最短的空車為執行所述優先任務信息的目標車輛,并對所述目標車輛生成對應的調度指令。
值得說明的是,本發明實施例的匹配可以保證優先任務信息的分配不會產生前車阻擋后車的情況,且行車距離最短。
作為一種優選實施例,所述車輛運行信息還包括車輛的速度和車輛的標識,所述任務信息還包括目的地位置;
相應地,所述根據所述調度策略、所述任務列表中各任務信息的始發地位置以及各所述空車的當前位置,生成對各空車的調度指令以進行車輛調度之后,所述方法還包括:
若根據相鄰兩個車輛的貨物裝載狀態信息判斷獲知所述相鄰兩個車輛中前方的車輛為未裝載貨物的空車、后方的車輛為裝載有貨物的運行車輛,且根據所述前方的車輛的車輛的速度判斷獲知所述前方的車輛速度為零,則根據所述相鄰的兩個車輛的當前位置,判斷所述相鄰的兩個車輛之間的行車距離是否小于等于預設距離;
若是,則根據所述后方的車輛的標識查找預設的列表,獲取后方的車輛的當前任務信息;所述預設的列表中包括車輛的標識、車輛的當前任務信息以及車輛的標識和車輛的當前任務信息之間的關系;
根據所述后方的車輛的當前任務信息中的車輛的目的地位置,對所述前方的車輛生成避讓指令,以控制所述前方的車輛在所述預設方向上運行至所述車輛的當前任務信息中的目的地位置的前方位置;
所述前方和后方是以所述預設方向為正方向的前方和后方。
值得說明的是,車輛在完成任務后(如卸貨后)會處于停止狀態,因此后面的運行車輛有可能對前面的停止的空車形成追趕,本發明實施例通過使前方的車輛在預設方向上運行至所述車輛的當前任務信息中的目的地位置的前方位置從而避讓開后面的運行車輛,從而提高了運輸效率(可以將該實施例總結為空車避讓)。
有時候需要維修人員下到軌道去進行檢修等,這時會接收到突發狀況控制信息(如可通過按下暫停按鈕生成突發狀況控制信息),在這種情況下,作為一種優選實施例,所述方法還包括:
若接收到所述車輛控制器發送的突發狀況控制信息,則生成使所有車輛停止的調度指令。
本發明實施例可以在產生突發狀況時,保證工作人員的安全。
作為一種優選實施例,所述車輛運行信息還包括各車輛的故障檢測信息;
相應地,所述方法還包括:
若根據所述各車輛的故障檢測信息判斷獲知有至少一個車輛存在故障,則生成使所有車輛停止的調度指令。
可以理解的是,在任何一個車輛產生故障時,所有車輛若不停止就會產生碰撞,造成車輛的毀損,因此,在此時讓所有車輛都停止可以保證其他車輛的安全。
作為一種優選實施例,所述任務信息還包括目的地位置和托盤號;
根據獲取到的任務信息和任務信息的接收時間更新預設的任務列表,包括:
根據獲取到的任務信息的始發地位置、目的地位置以及托盤號,判斷所述任務列表中是否包括所述獲取到的任務信息;
若包括,則不將所述獲取到的任務信息存儲到所述任務列表中;
若不包括,則將所述獲取到的任務信息和所述任務信息的接收時間存儲到所述任務列表中。
由于本發明中每隔很短的時間,如1s、3s等,就會接收到一個新的任務信息包(可能包含多條任務信息),因此,任務列表中的任務信息的更新速度很快,所以可以在獲取到任務信息時對任務列表進行更新后,對任務列表中的任務信息統一進行分配,可以保證每次都將新的任務信息以及以前未處理的任務信息全部分配,保證所有任務信息可以有效分配。
為了保證任務列表中都是未處理的任務信息,作為一種優選實施例,所述方法還包括:
生成調度指令后,將與所述調度指令對應的任務信息從所述任務列表中刪除。
值得說明的是,在實際執行中,上述突發狀況時以及車輛產生故障時的優先級最高,第二為對超時任務信息的分配,第三為優先任務信息的分配,第四為普通情況下的任務信息的分配方法,然后在普通情況下執行空車避讓。與本發明車輛調度處理方法通過車輛控制模塊、車輛實時調度模塊、信息存儲模塊以及用戶界面模塊共同實現;
所述的車輛控制模塊的功能,可通過PLC實現,負責與每個穿梭小車(環形軌道上的車輛)上的單機PLC進行通訊,以及與車輛實時調度模塊進行通訊。它將每臺小車的車輛運行信息和任務信息進行整合形成字符串發送給車輛實時調度模塊,經過車輛實時調度模塊的運算,會將執行指令發回給它,它再將執行指令解析,分別發送給每臺小車。
所述的車輛實時調度模塊的功能,通過PC實現,具體為Visual Studio平臺。它負責解析由車輛控制模塊發來的信息,并進行運算,得出任務分配最佳方案,然后將任務信息和車輛的配對信息打包發送給車輛控制模塊。
所述的信息存儲模塊的功能,通過PC實現,具體為SQL Server平臺。它負責存儲由車輛實時調度模塊計算出的一些中間狀態和過渡信息,以便下次計算時的調用;另外,它還負責與用戶界面模塊進行交互,接收來自用戶的一些設置以及在用戶界面上顯示一部分車輛信息。
所述的用戶界面模塊的功能,通過PC實現,具體為Visual Studio平臺。它負責顯示車輛的實時信息,如顯示任務信息,并接受來自用戶的一些設置并將設置參數傳遞給數據庫,如用戶可在該用戶界面模塊上設定任務信息的優先級。
上述的車輛實時調度模塊的車輛及任務信息處理子模塊,主要負責解析下位PLC發來的字符串,生成針對每臺車的信息(如車輛位置,狀態等)。
上述的車輛實時調度模塊的調度算法執行判斷子模塊,主要負責分析由下位PLC以及用戶輸入的信息中,是否出現需要暫停調度系統的命令(如小車故障或者上位暫停),若出現,則調度系統不工作。
上述的車輛實時調度模塊的優先任務處理子模塊,主要負責處理來自用戶在用戶界面上手動優先的單條任務。當用戶在用戶界面勾選了某條任務的優先權時,此任務會優先被執行。
上述的車輛實時調度模塊的超時任務處理子模塊,主要負責處理由系統內部計時,由用戶設置超時時間并已超過設定時間(即預設時間閾值)的任務。當出現超時任務時,所有超時任務會按照上述原則被優先執行。
上述的車輛實時調度模塊的普通任務處理子模塊,主要負責非優先任務的處理。
上述的車輛實時調度模塊的無任務車輛避讓計算子模塊,主要負責空閑車輛避讓作業車輛的計算。
上述的車輛實時調度模塊的生成任務分配信息子模塊,主要負責將上述各子模塊的運算結果按照約定格式重新整合成字符串,并下發至下位控制PLC中。
本發明中的車輛調度處理方法,原則簡單高效,不需要占用過多資源即可快速的下發分配結果(即調度指令),避免出現復雜算法時導致的任務下發時的卡頓現象。
本發明作業口數目不限,軌道運行車輛數不限。
與車輛控制模塊對應的PLC,可以選用SIEMENS PLC。通過Open Communication對PLC進行配置及編程,使用Socket通訊將信息發送給上位機。
與車輛實時調度模塊對應的普通PC,可選用聯想臺式機。通過Socket接收來自PLC的消息,并將其解析和處理。解析處理平臺具體為Visual Studio,通過C#編程對消息進行處理并返回結果。
信息存儲模塊存在于PC之中,具體為SQL Server數據庫。將任務口地址(始發地位置和目的地位置)、車輛信息、基礎數據等做成表存儲在數據庫中并實時更新,以便程序調用。
用戶界面模塊存在于PC之中,同樣基于Visual Studio平臺。采用基于窗體的C#編程。
車輛控制模塊和車輛實時調度模塊之間的通訊為PLC與PC之間基于Socket的通訊形式。
圖2為本發明一實施例提供的車輛調度處理系統的原理框圖。
如圖2所示的一種車輛調度處理系統,包括:
第一獲取單元201,用于獲取任務信息和在環形軌道上沿預設方向單向運行的各車輛的車輛運行信息,根據獲取到的任務信息和任務信息的接收時間更新預設的任務列表;其中,所述任務列表中包括任務信息和任務信息的接收時間,所述任務信息包括始發地位置,所述車輛運行信息包括各車輛的當前位置以及貨物裝載狀態信息;
第二獲取單元202,若根據所述貨物裝載狀態信息判斷獲知所述環形軌道上存在未裝載貨物的空車,則獲取所述任務列表中任務信息的第一數量以及空車的第二數量;
調度指令生成單元203,用于比較所述第一數量和所述第二數量,根據比較結果選取對應的調度策略,并根據所述調度策略、所述任務列表中各任務信息的始發地位置以及各所述空車的當前位置,生成對各空車的調度指令以進行車輛調度。
由于本發明的一種車輛調度處理系統和一種車輛調度處理系統方法是一一對應的,因此對一種車輛調度處理系統系統不再詳述。
本領域普通技術人員可以理解:以上各實施例僅用以說明本發明的技術方案,而非對其限制;盡管參照前述各實施例對本發明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分或者全部技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質脫離本發明權利要求所限定的范圍。