專利名稱:避免船只碰撞的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種船只避撞方法,特別是涉及一種可以更全面的預(yù)測(cè)船 只航行到指定地點(diǎn)所需要的時(shí)間,提高預(yù)測(cè)結(jié)果可靠性的避免船只碰撞的 方法。
背景技術(shù):
船只避碰是船只航行過(guò)程中保證航行安全的經(jīng)常性行動(dòng)。以往航海界 研究的避碰系統(tǒng)中,信息源部分長(zhǎng)期依靠雷達(dá)以及一些人工輸入的信號(hào),
近年來(lái)雖有GPS等新的信息源的加入,但是雷達(dá)信息的不準(zhǔn)確性仍然沒(méi)有 得到解決。對(duì)于其他的避碰系統(tǒng),其對(duì)于船只避碰的算法都過(guò)于復(fù)雜,計(jì) 算量大而且所消耗的計(jì)算儲(chǔ)存空間多。AIS系統(tǒng)(船舶自動(dòng)識(shí)別系統(tǒng))的 優(yōu)點(diǎn)就是可以實(shí)時(shí)、不間斷的接收船只的動(dòng)態(tài)信息,而且接收到的信息量 大,信息準(zhǔn)確。對(duì)于一個(gè)海港來(lái)說(shuō),用戶所要監(jiān)視的船只肯定會(huì)有很多, 接收的數(shù)據(jù)量很大,對(duì)于船只避碰的計(jì)算量會(huì)很大,消耗的計(jì)算儲(chǔ)存空間 也會(huì)很大,而且對(duì)于船只避碰的預(yù)測(cè)也不一定準(zhǔn)確,這樣就體現(xiàn)不出AIS 系統(tǒng)的實(shí)時(shí)準(zhǔn)確的優(yōu)點(diǎn)。所以采用一個(gè)簡(jiǎn)單而有效的算法來(lái)進(jìn)行船只避碰 的預(yù)警是十分必要的。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問(wèn)題是,提供一種根據(jù)船只的基本信息來(lái)判斷 在未來(lái)時(shí)間兩船是否存在相撞的可能,提高預(yù)測(cè)結(jié)果可靠性的避免船只碰 撞的方法。
本發(fā)明所采用的技術(shù)方案是 一種避免船只碰撞的方法,包括如下步
驟
1) 程序初始化;
2) 讀取任意兩只船的信息,預(yù)測(cè)該船只軌跡;
3) 判斷兩只船的預(yù)測(cè)軌跡是否相交,不相交返回第2步驟繼續(xù)讀取其
3他任意兩只船的信息,預(yù)測(cè)其他船只軌跡;相交,則求出交點(diǎn)并進(jìn)入下一 步驟;
4) 求出交點(diǎn),利用墨卡托投影變換公式求相交船只到交點(diǎn)的距離,以 及船只到交點(diǎn)的時(shí)間域;
5) 判斷兩船只的時(shí)間域是否有交集,沒(méi)有交集返回第2步繼續(xù)讀取其 他任意兩只船的信息,預(yù)測(cè)其他船只軌跡;有交集則進(jìn)入下一步驟;
6) 發(fā)出警報(bào)。
所述的初始化,包括與存儲(chǔ)有船只所處位置的經(jīng)緯度、船只的航向、 船只的速度、信號(hào)發(fā)射器距船首距離的數(shù)據(jù)庫(kù)進(jìn)行連接。
所述的讀取船只信息,是讀取船只的經(jīng)緯度、船只的航向和船只的速
度;
所述的預(yù)測(cè)船只軌跡,是根據(jù)船只的經(jīng)緯度和船只的航向進(jìn)行預(yù)測(cè), 其預(yù)測(cè)軌跡為一射線y - B= K (x - A)。
所述的判斷兩只船的預(yù)測(cè)軌跡是否相交,是判斷這兩只船的射線軌跡 是否相交。
所述的判斷兩只船的時(shí)間域是否有交集,是分別讀取設(shè)定時(shí)間內(nèi)每一 船只的最大速度Vmax與最小速度Vmin,求出該船只航行到交點(diǎn)所需的最短 時(shí)間Tmin = distance/Vmax與最長(zhǎng)時(shí)間Tmax 二 distance/Vmin,確定出該 船只航行到相撞點(diǎn)的時(shí)間域。
所述的有交集發(fā)出警報(bào),是在判斷兩只船的時(shí)間域存在交集時(shí),系統(tǒng) 發(fā)出警告,在海圖上顯示兩只船可能相撞的地點(diǎn),以及可能相撞的時(shí)間段。
本發(fā)明的避免船只碰撞的方法,采用了墨卡托投影變換來(lái)計(jì)算地球上 任意兩點(diǎn)的距離,墨卡托投影變換已經(jīng)應(yīng)用于航海圖數(shù)百年,具有很高的 精度性,計(jì)算出的距離更加精確,使預(yù)測(cè)的結(jié)果更加準(zhǔn)確;采用了時(shí)間域 的判斷方法,可以更全面的預(yù)測(cè)船只航行到指定地點(diǎn)所需要的時(shí)間,提高 了預(yù)測(cè)結(jié)果的可靠性。
圖1是本發(fā)明避免船只碰撞的方法的流程圖。
具體實(shí)施例方式
下面結(jié)合附圖給出具體實(shí)施例,進(jìn)一步說(shuō)明本發(fā)明的避免船只碰撞的 方法是如何實(shí)現(xiàn)的。
本發(fā)明的基本原理是根據(jù)最新接收到的船只地理位置和航向可以確 定一條射線,如果該船只保持航向不變的情況下航行,這條射線就應(yīng)該是 該船只的未來(lái)航行軌跡。由坐標(biāo)系上一點(diǎn)(船只的經(jīng)緯度)和斜率(船只 的航向)可以確定一條射線。同理,可以對(duì)任意船只進(jìn)行航行軌跡的預(yù)測(cè)。 對(duì)船只軌跡進(jìn)行預(yù)測(cè)之后,就可以判斷兩只船的未來(lái)軌跡是否會(huì)相交,如 果兩只船未來(lái)軌跡相交說(shuō)明兩只船在未來(lái)某時(shí)刻可能會(huì)相撞;如果兩只船
未來(lái)軌跡不相交,兩只船在未來(lái)就應(yīng)該不會(huì)相撞。如果有交點(diǎn),可以根據(jù) 此時(shí)船只的經(jīng)緯度求出該船到交點(diǎn)的距離,我們采用墨卡托投影變換公式 來(lái)求地球上兩點(diǎn)之間的距離。對(duì)船只一段時(shí)間內(nèi)的速度進(jìn)行分析,可以確 定一個(gè)速度范圍,即一個(gè)最大速度和最小速度。根據(jù)求得的船只的最大速 度可以預(yù)測(cè)一個(gè)船只航行到交點(diǎn)的最短航行時(shí)間,根據(jù)求得船只的最小速 度可以預(yù)測(cè)一個(gè)船只航行到交點(diǎn)的最長(zhǎng)航行時(shí)間,這樣就預(yù)測(cè)出船只航行 到交點(diǎn)的一個(gè)時(shí)間域。通過(guò)對(duì)比兩只船航行到交點(diǎn)的時(shí)間域,如果兩個(gè)時(shí) 間域沒(méi)有交集說(shuō)明兩船只在交點(diǎn)相撞的可能性很小,如果有交集說(shuō)明兩船 只很有可能在交點(diǎn)相撞,而且這個(gè)時(shí)間的交集就是可能的相撞時(shí)間段。本 系統(tǒng)根據(jù)基站接收到的實(shí)時(shí)信息來(lái)對(duì)所有的船只進(jìn)行航線的預(yù)測(cè),預(yù)測(cè)任 意兩只船是否有相撞的可能性,并向監(jiān)視人員發(fā)出警報(bào),顯示相應(yīng)的相撞 地點(diǎn),相撞距離以及相撞時(shí)間段。
如圖1所示,本發(fā)明的避免船只碰撞的方法,具體包括如下步驟
1) 程序初始化;
包括與存儲(chǔ)有船只所處位置的經(jīng)緯度、船只的航向、船只的速度、信 號(hào)發(fā)射器距船首距離的數(shù)據(jù)庫(kù)進(jìn)行連接。所述的數(shù)據(jù)庫(kù)是建立在計(jì)算機(jī)上, 并通過(guò)基站來(lái)接收船只的信息。
2) 讀取任意兩只船的信息,預(yù)測(cè)該船只軌跡; 讀取船只的經(jīng)緯度A、 B,船只的航向K和船只的速度V;
3) 判斷兩只船的預(yù)測(cè)軌跡是否相交,不相交返回第2步驟繼續(xù)讀取其 他任意兩只船的信息,預(yù)測(cè)其他船只軌跡;相交則求出交點(diǎn)C, D并進(jìn)入下一步驟;
所述的判斷是根據(jù)船只的經(jīng)緯度A、 B和船只的航向K進(jìn)行的,既是判 斷兩條射線是否相交,假定船只一直沿航向K航行,那么該船只的航線就 是應(yīng)該是一條射線,即預(yù)測(cè)軌跡為一射線y - B二 K (x - A),所述 的判斷兩只船的預(yù)測(cè)軌跡是否相交,是判斷這兩只船的射線軌跡是否相交。
具體是建立方程組y - Bl 二 Kl* (x - Al) 、 y - B2 = K2* (x -B2),如果兩條射線沒(méi)有交點(diǎn),那么兩只船就不會(huì)相碰,如果有交點(diǎn),求 出交點(diǎn)(C, D) , C = (B2 - Bl - K1*A1 + K2 * A2) / (K2 - Kl)、 D = (K2*B1 - K1*B2 + K2*A2 - K2*A1) / (K2 _ Kl),那么(C, D) 點(diǎn)就有可能是兩只船的碰撞地點(diǎn)。
4)利用墨卡托投影變換公式求相交船只到交點(diǎn)(C, D)的距離 (distance),以及船只到交點(diǎn)(C, D)的時(shí)間域;
具體是分別讀取設(shè)定時(shí)間內(nèi)每一船只的最大速度Vmax與最小速度 Vmin,求出該船只航行到交點(diǎn)(C, D)所需的最短時(shí)間Tmin = distance/Vmax 與最長(zhǎng)時(shí)間Tmax 二 distance/Vmin,確定出該船只航行到相撞點(diǎn)的時(shí)間域 (Tmin, Tmax)。
所述的墨卡托投影變換公式
x = ro^/l
少=廠0*《
式中《— 一 等量緯度
g = lntgO / 4 + p / 2) _ (e / 2) * ln(l + e * s—) / (1 - e * cos p) t?!鶞?zhǔn)緯度的緯圈半徑 廠o = A^cospo
w?!鶞?zhǔn)纟韋度處橢球的圈曲率半徑
A/^o = " / Vl - e2 *sin2
^一一墨卡托投影的基準(zhǔn)緯度
p,A一變換的輸入地球坐標(biāo)系的緯度和經(jīng)度 XJ— —變換的輸出墨卡托直角坐標(biāo)
"——地球橢球長(zhǎng)半徑,其值約為6378137. 0 (米) e——橢球體第一偏心率,其值約為0.081895) 判斷兩船只的時(shí)間域是否有交集,沒(méi)有交集返回第2步繼續(xù)讀取其 他任意兩只船的信息,預(yù)測(cè)其他船只軌跡;有交集則進(jìn)入下一步驟;
6) 發(fā)出警報(bào)。有交集,說(shuō)明船只存在相撞的可能性,這個(gè)交集就是可 能的相撞時(shí)間段,因此,在判斷兩只船的時(shí)間域存在交集時(shí),系統(tǒng)發(fā)出警 告,在海圖上顯示兩只船可能相撞的地點(diǎn),以及可能相撞的時(shí)間段。
權(quán)利要求
1.一種避免船只碰撞的方法,其特征在于,包括如下步驟1)程序初始化;2)讀取任意兩只船的信息,預(yù)測(cè)該船只軌跡;3)判斷兩只船的預(yù)測(cè)軌跡是否相交,不相交返回第2步驟繼續(xù)讀取其他任意兩只船的信息,預(yù)測(cè)其他船只軌跡;相交,則求出交點(diǎn)(C,D)并進(jìn)入下一步驟;4)求出交點(diǎn)(C,D),利用墨卡托投影變換公式求相交船只到交點(diǎn)(C,D)的距離(distance),以及船只到交點(diǎn)(C,D)的時(shí)間域;5)判斷兩船只的時(shí)間域是否有交集,沒(méi)有交集返回第2步繼續(xù)讀取其他任意兩只船的信息,預(yù)測(cè)其他船只軌跡;有交集則進(jìn)入下一步驟;6)發(fā)出警報(bào)。
2. 根據(jù)權(quán)利要求1所述的避免船只碰撞的方法,其特征在于,所述的 初始化,包括與存儲(chǔ)有船只所處位置的經(jīng)緯度、船只的航向、船只的速度、 信號(hào)發(fā)射器距船首距離的數(shù)據(jù)庫(kù)進(jìn)行連接。
3. 根據(jù)權(quán)利要求l所述的避免船只碰撞的方法,其特征在于,所述的 讀取船只信息,是讀取船只的經(jīng)緯度(A、 B)、船只的航向(K)和船只的 速度(V)。
4. 根據(jù)權(quán)利要求1所述的避免船只碰撞的方法,其特征在于,所述的 預(yù)測(cè)船只軌跡,是根據(jù)船只的經(jīng)緯度(A、 B)和船只的航向(K)進(jìn)行預(yù)測(cè), 其預(yù)測(cè)軌跡為一射線y - B= K (x - A)。
5. 根據(jù)權(quán)利要求1所述的避免船只碰撞的方法,其特征在于,所述的 判斷兩只船的預(yù)測(cè)軌跡是否相交,是判斷這兩只船的射線軌跡是否相交。
6. 根據(jù)權(quán)利要求1所述的避免船只碰撞的方法,其特征在于,所述的 判斷兩只船的時(shí)間域是否有交集,是分別讀取設(shè)定時(shí)間內(nèi)每一船只的最大 速度Vmax與最小速度Vmin,求出該船只航行到交點(diǎn)(C, D)所需的最短時(shí) 間Tmin = distance/Vmax與最長(zhǎng)時(shí)間Tmax = distance/Vmin,確定出該船 只航行到相撞點(diǎn)的時(shí)間域(Tmin, Tmax)。
7. 根據(jù)權(quán)利要求1所述的避免船只碰撞的方法,其特征在于,所述的 有交集發(fā)出警報(bào),是在判斷兩只船的時(shí)間域存在交集時(shí),系統(tǒng)發(fā)出警告, 在海圖上顯示兩只船可能相撞的地點(diǎn),以及可能相撞的時(shí)間段。
全文摘要
本發(fā)明公開(kāi)一種避免船只碰撞的方法,有如下步驟程序初始化;讀取任意兩只船的信息,預(yù)測(cè)該船只軌跡;判斷兩只船的預(yù)測(cè)軌跡是否相交,不相交返回第2步驟繼續(xù)讀取其他任意兩只船的信息,預(yù)測(cè)其他船只軌跡;相交,則求出交點(diǎn)并進(jìn)入下一步驟;求出交點(diǎn),利用墨卡托投影變換公式求相交船只到交點(diǎn)的距離,以及船只到交點(diǎn)的時(shí)間域;判斷兩船只的時(shí)間域是否有交集,沒(méi)有交集返回第2步繼續(xù)讀取其他任意兩只船的信息,預(yù)測(cè)其他船只軌跡;有交集則進(jìn)入下一步驟;發(fā)出警報(bào)。本發(fā)明采用墨卡托投影變換計(jì)算出的任意兩點(diǎn)的距離更加精確,預(yù)測(cè)的結(jié)果更加準(zhǔn)確;并采用了時(shí)間域的判斷方法,可以更全面的預(yù)測(cè)船只航行到指定地點(diǎn)所需要的時(shí)間,提高了預(yù)測(cè)結(jié)果的可靠性。
文檔編號(hào)G08G3/02GK101639988SQ200910068878
公開(kāi)日2010年2月3日 申請(qǐng)日期2009年5月15日 優(yōu)先權(quán)日2009年5月15日
發(fā)明者孔令輝, 勇 李, 熊平民, 肖文雄, 寧 郭, 陳維琨 申請(qǐng)人:天津七一二通信廣播有限公司