国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于RTK 的增量PID 差速小車循跡實(shí)現(xiàn)

2019-03-04 10:56朱海波李毅
現(xiàn)代計(jì)算機(jī) 2019年36期
關(guān)鍵詞:循跡增量基準(zhǔn)

朱海波,李毅

(四川大學(xué)計(jì)算機(jī)學(xué)院,成都610065)

0 引言

自主循跡是無(wú)人駕駛的基礎(chǔ),也是智能車輛研究的核心技術(shù)之一。定位則是第一個(gè)要解決的問(wèn)題。在無(wú)人車駕駛系統(tǒng)中普遍采用GNSS 技術(shù),通過(guò)一組衛(wèi)星(至少四顆衛(wèi)星)的偽距、星歷及用戶鐘差等測(cè)量值,為地球表面或近地空間的地點(diǎn)提供三維坐標(biāo)和速度以及時(shí)間信息。但常規(guī)的GNSS 由于存在誤差,且無(wú)法消除,所以導(dǎo)致精度有限,一般最好在米級(jí)。利用RTK技術(shù)可以最大程度的減小電離層延遲和對(duì)流層延遲帶來(lái)的誤差,可以使精度到達(dá)厘米級(jí)[1]。但RTK 也存在距離的限制,由于基站校正數(shù)據(jù)的有效作用范圍有限,當(dāng)與基準(zhǔn)站距離過(guò)大時(shí),定位精度會(huì)下降,所以移動(dòng)站與基準(zhǔn)站的距離在單頻下不能超過(guò)10 千米,雙頻不能超過(guò)30 千米。

實(shí)現(xiàn)車輛自主循跡的核心內(nèi)容包括如下三個(gè):RTK-BDS 信息采集與存儲(chǔ);將采集的RTK-BDS 信息形成目標(biāo)軌跡;參照目標(biāo)軌跡與當(dāng)前定位信息,依據(jù)增量式PID 控制算法,將實(shí)測(cè)橫向軌跡與預(yù)期軌跡的差作為PID 偏差度量,生成控制命令,實(shí)現(xiàn)智能車輛的自主行駛。

1 算法原理

1.1 RTK基本原理

RTK 系統(tǒng)硬件上主要由三部分組成,即基準(zhǔn)站、移動(dòng)站和兩者的通信鏈路。RTK 定位原理[2]是基準(zhǔn)站上的BDS 天線和流動(dòng)站上的BDS 天線同時(shí)接收一組衛(wèi)星信號(hào),兩個(gè)BDS 天線將接收到的衛(wèi)星信號(hào)再分別傳遞給基準(zhǔn)站BDS 接收機(jī)和流動(dòng)站上的BDS 接收機(jī)。由于基準(zhǔn)站被安置在某一固定位置,因此基準(zhǔn)站的坐標(biāo)作為固定值已知。根據(jù)基準(zhǔn)站的坐標(biāo)和已知衛(wèi)星的距離,可以反算出衛(wèi)星的坐標(biāo),通過(guò)比較解算出差分改正數(shù)。同時(shí)基準(zhǔn)站將解算出的差分改正數(shù)通過(guò)基準(zhǔn)站和移動(dòng)站的數(shù)據(jù)鏈路發(fā)送給移動(dòng)站。移動(dòng)站通過(guò)差分改正數(shù)和其接收的GPS 數(shù)據(jù)解算出精確的用戶坐標(biāo)。之所以選用中國(guó)北斗導(dǎo)航系統(tǒng)(BDS)而不選用全球定位系統(tǒng)(GPS)是由于經(jīng)過(guò)實(shí)地測(cè)量,測(cè)試地所處環(huán)境下,BDS 可見(jiàn)星數(shù)要大于GPS,精度因子(DOP)較小,定位誤差更小。BDS-RTK 由于定位接收器在被建筑遮擋時(shí),導(dǎo)致可見(jiàn)衛(wèi)星數(shù)目大大減小,極易從非固定解狀態(tài),變成浮動(dòng)解,使得定位出現(xiàn)偏差,所以無(wú)法在高大建筑物遮擋的環(huán)境下進(jìn)行。

載波相位差分技術(shù)中,基準(zhǔn)站接收機(jī)的相位為:

公式中c 表示光速,δti為接收機(jī)鐘差,δtj為第j顆衛(wèi)星鐘差,為電離層誤差,為大氣層誤差,δMi為多路徑效應(yīng),Vi為GPS 接收機(jī)噪聲。在基準(zhǔn)站可求出偽距改正數(shù):

用此改正數(shù)對(duì)用戶站偽距觀測(cè)值進(jìn)行校正,有:

當(dāng)基準(zhǔn)站與用戶站的間距小于30km,可認(rèn)為

式中Δδρ=c?( δtk-δti)+(δMk-δMi)+(Vk-Vi)。

將載波相位偽距觀測(cè)值(2)代入上式,則可得:

上式中令Nj( t0)=( t0)-( t0)為起始整周數(shù)之差,在觀測(cè)過(guò)程中若衛(wèi)星跟蹤不失鎖,Nj( t0)即為常數(shù),設(shè)載波相位測(cè)量差值:

式(7)可以表示為:

公式中的λNj( t0)、Xk、Yk、Zk,Δφ 均為常數(shù),僅Δδρ 未知。但兩接收機(jī)鐘差之差、噪聲之差及兩站間多路徑之差在相鄰歷元間的變換量均小于厘米級(jí)動(dòng)態(tài)定位允許的誤差,所以可將Δδρ 視作常數(shù)。

1.2 增量PID基本原理

比例積分微分控制,通過(guò)被控對(duì)象的輸出來(lái)影響PID 控制器的輸出,形成閉環(huán),是一種經(jīng)典的負(fù)反饋控制方法,其特點(diǎn)為算法較為簡(jiǎn)單、魯棒性好并且可靠性較高[3]。

比例控制KP能加快系統(tǒng)的動(dòng)態(tài)響應(yīng)速度,快速地對(duì)誤差進(jìn)行反應(yīng),從而減少誤差,但無(wú)法消除穩(wěn)態(tài)誤差。KP越大,控制器對(duì)于偏差的反應(yīng)越快,但過(guò)大的增益會(huì)降低系統(tǒng)相對(duì)的穩(wěn)定性;越小則反應(yīng)越慢,會(huì)花費(fèi)較多時(shí)間進(jìn)入到穩(wěn)定狀態(tài)。一般而言需要使得KP盡可能的大。

積分控制KI,能夠消除無(wú)法通過(guò)KP和KD解決的穩(wěn)態(tài)誤差(即系統(tǒng)進(jìn)入了一個(gè)存在誤差的穩(wěn)態(tài),但并非是預(yù)期的穩(wěn)態(tài))。積分作用將會(huì)不斷積累誤差,輸出控制量來(lái)消除誤差,直至偏差為零時(shí)積分停止,但也存在一個(gè)問(wèn)題,其控制作用較慢。

微分控制KD,與變化率有關(guān),可以減小超調(diào)量來(lái)克服震蕩,使系統(tǒng)穩(wěn)定性提高,同時(shí)加快響應(yīng)速度,使系統(tǒng)更快有更好的動(dòng)態(tài)性能。

增量式PID 控制,數(shù)字PID 控制算法的一種基本形式,是通過(guò)對(duì)控制量的增量(本次控制量和上次控制量的差值)進(jìn)行PID 控制的一種控制算法,是遞推式算法。表示第n 時(shí)刻的控制量,表示控制量的增量,e[n]表示n 時(shí)刻的誤差。

公式:

通過(guò)位置式PID 公式推出[4]::

1.3 循跡策略

通過(guò)RTK-BDS 獲取對(duì)應(yīng)的NEMA-0183 格式的定位數(shù)據(jù),將經(jīng)度與緯度通過(guò)高斯投影映射成高斯坐標(biāo)系下的三維坐標(biāo)。首先錄入預(yù)想軌跡點(diǎn),通過(guò)B 樣條擬合出車輛行駛軌跡。通過(guò)計(jì)算車輛當(dāng)前位置距軌跡的距離,作為PID 糾正偏差。通過(guò)調(diào)節(jié)PID 參數(shù)使得該偏差盡可能的減小,使車輛實(shí)現(xiàn)自主的循跡。

從軌跡起點(diǎn)P0起,對(duì)軌跡以K 米的距離取點(diǎn)(P0,…,Pn)。將問(wèn)題讓車輛擬合一段長(zhǎng)且復(fù)雜的曲線變成擬合一段短且簡(jiǎn)單的曲線。設(shè)無(wú)人車所在位置為Q。

(1)啟動(dòng)時(shí),先判斷車輛在哪一段較短軌跡中。首先計(jì)算車輛當(dāng)前位置Q 與P0~Pn中最靠近的點(diǎn)Pi,選定PiPi+1作為當(dāng)前待擬合的曲線。

(2)過(guò)點(diǎn)Q 作PiPi+1連線的垂線,交Pi-1Pi圖形點(diǎn)R,QR 的距離即為PID 需要消除的偏差。通過(guò)PID 獲取車輛的輸入量,將輸入量轉(zhuǎn)換成無(wú)人車控制命令,發(fā)送到小車。

(3)當(dāng)Q 經(jīng)過(guò)點(diǎn)Pi+1所在位置切線的垂線時(shí),表示車輛已經(jīng)來(lái)到下一條曲線Pi+1Pi+2。

(4)若未到達(dá)終點(diǎn),則重復(fù)步驟(2-4);若到達(dá)終點(diǎn),則停止。

2 實(shí)驗(yàn)設(shè)計(jì)

2.1 實(shí)驗(yàn)準(zhǔn)備

(1)實(shí)驗(yàn)小車

實(shí)驗(yàn)小車為四輪小車,長(zhǎng)為595 毫米,寬為631 毫米,高為217 毫米,前輪作為驅(qū)動(dòng)輪,后輪為萬(wàn)向輪,作為從動(dòng)輪。兩個(gè)主動(dòng)輪連接PWM 直流電機(jī)。通過(guò)增減PWM 電機(jī)占空比實(shí)現(xiàn)車速控制;通過(guò)小車主動(dòng)輪左右輪差速來(lái)進(jìn)行轉(zhuǎn)彎控制。通過(guò)串口與PC 進(jìn)行通信,波特率115200bps,數(shù)據(jù)位為8,停止位1,無(wú)校驗(yàn)??刂泼罡袷饺绫?。

表1 車輛串口控制命令格式

第0 位控制A 電機(jī),也就是右輪電機(jī)速度大小,第1 位控制B 電機(jī),也就是左輪電機(jī)速度大小,第0 位與第1 位范圍為0~0xFF。第2 位與第3 位分別表示右輪電機(jī)轉(zhuǎn)向與左輪電機(jī)轉(zhuǎn)向,范圍為0~1,0 表示正向,1 表示負(fù)向。

(2)基準(zhǔn)站與移動(dòng)站

將NEO-M8T 作為基準(zhǔn)站和基準(zhǔn)站的定位信息接受模塊,通過(guò)局域網(wǎng)建立基準(zhǔn)站與移動(dòng)站的數(shù)據(jù)鏈路,解算之后,以數(shù)據(jù)格式NEMA0183 通過(guò)Socket 通信傳到PC。

2.2 實(shí)驗(yàn)流程

首先規(guī)劃軌跡,將規(guī)劃好的軌跡錄入小車PC 中。將小車置于起點(diǎn)處,小車上的PC 接受RTK-RDB 傳送的定位信息,根據(jù)循跡策略進(jìn)行循跡。

實(shí)驗(yàn)設(shè)計(jì)為兩組,第一組為循跡直線,將小車移動(dòng)至偏離預(yù)計(jì)軌跡2m 位置處,第二組實(shí)驗(yàn)為循跡彎道,兩組實(shí)驗(yàn)觀察實(shí)際軌跡與預(yù)期軌跡的差距。

2.3 實(shí)驗(yàn)結(jié)果

(1)循跡直線

直線循跡結(jié)果圖見(jiàn)圖1。

圖1 循跡直線定位結(jié)果圖

(2)循跡彎道

彎道循跡結(jié)果圖見(jiàn)圖2。

圖2 循跡彎道定位結(jié)果圖(起點(diǎn)為右上角)

2.4 結(jié)果分析

在實(shí)際環(huán)境中,通過(guò)試湊法調(diào)整PID 參數(shù),獲取了效果較好的參數(shù),實(shí)現(xiàn)了循跡直線與彎道。在循跡彎道的實(shí)驗(yàn)中,在轉(zhuǎn)彎過(guò)程中存在一定的偏差,分析得KP和KD參數(shù)仍然過(guò)小,導(dǎo)致無(wú)法及時(shí)消除誤差。其中原因也與PID 參數(shù)沒(méi)有有效的調(diào)整方法有關(guān),無(wú)法得到最優(yōu)的PID 參數(shù)。

3 結(jié)語(yǔ)

本文首先介紹了RTK 定位與增量式PID 控制的原理,經(jīng)過(guò)實(shí)驗(yàn),以RTK-RDB 獲取厘米級(jí)精度的定位信息,通過(guò)增量式PID 控制實(shí)現(xiàn)了車輛的循跡。實(shí)驗(yàn)表明該策略是可行的,但實(shí)驗(yàn)過(guò)程中,無(wú)法高效地獲取合適的PID 參數(shù)。在下一步研究中,將針對(duì)PID 參數(shù)調(diào)整方法進(jìn)行研究,針對(duì)高效的PID 調(diào)節(jié)方法進(jìn)行研究。

猜你喜歡
循跡增量基準(zhǔn)
導(dǎo)彈增量式自適應(yīng)容錯(cuò)控制系統(tǒng)設(shè)計(jì)
研發(fā)信息的增量披露能促進(jìn)企業(yè)創(chuàng)新投入嗎
提質(zhì)和增量之間的“辯證”
一種基于卷積神經(jīng)網(wǎng)絡(luò)的地磁基準(zhǔn)圖構(gòu)建方法
基于離散傅里葉變換的多旋翼無(wú)人機(jī)循跡檢測(cè)系統(tǒng)設(shè)計(jì)
淺談機(jī)械制造加工中的基準(zhǔn)
淺談基于機(jī)器視覺(jué)和姿態(tài)檢測(cè)的循跡智能車
特大城市快遞垃圾增量占垃圾增量93%
應(yīng)如何確定行政處罰裁量基準(zhǔn)
基于單片機(jī)的自動(dòng)循跡小車的設(shè)計(jì)與制作
河北区| 邯郸县| 南阳市| 龙陵县| 阳新县| 清河县| 宝兴县| 磐石市| 韶山市| 斗六市| 团风县| 洛浦县| 长汀县| 深圳市| 大足县| 科技| 道真| 保定市| 宜兰县| 津南区| 黄龙县| 布拖县| 县级市| 玛纳斯县| 弥渡县| 南宁市| 广昌县| 门头沟区| 西林县| 定襄县| 小金县| 北票市| 长顺县| 正蓝旗| 五莲县| 望都县| 建瓯市| 那坡县| 赤水市| 叶城县| 临夏市|