環(huán)境:ubuntu20.04+anaconda+python3.7+ros2 foxy+Logitech g29
一、安裝Carla
github地址:
https://github.com/carla-simulator/carla
安裝文檔:
https://carla.readthedocs.io/en/0.9.13/
安裝的版本:0.9.13
主要步驟:
1.1 將0.9.13版本的Carla安裝包下載到本地并解壓CARLA_0.9.13.tar.gz
cd ~/project
mkdir Carla
cd Carla
tar -zxvf CARLA_0.9.13.tar.gz
1.2 測試是否能正常啟動
cd CARLA_0.9.13
./CarlaUE4.sh
有畫面彈出說明啟動正常
1.3 安裝anaconda創(chuàng)建并配置Carla虛擬環(huán)境
anaconda的安裝這里不做介紹,請自行安裝
source activate
conda create -n Carla python=3.7
conda activate Carla
進(jìn)入Carla虛擬環(huán)境后安裝所需要得包
pip install --user pygame numpy
pip3 install --user pygame numpy
安裝和使用 CARLA 客戶端庫:3種方式(可看文檔)
這里使用其中一種:用whl文件方式
cd ~/project/Carla/CARLA_0.9.13/PythonAPI/carla/dist/
pip3 install carla-0.9.13-cp37-cp37m-manylinux_2_27_x86_64.whl
嘗試一些示例腳本來在城市中產(chǎn)生生命并駕駛汽車:
cd ~/project/Carla/CARLA_0.9.13/PythonAPI/examples
python3 -m pip install -r requirements.txt
1.4 測試示例:都是在Carla虛擬conda環(huán)境下進(jìn)行的
terminal1:
python3 generate_traffic.py
terminal2:
python3 manual_control.py
結(jié)果如上所示
1.5 命令行選項(xiàng)
啟動 CARLA 時有一些可用的配置選項(xiàng),它們可以按如下方式使用:
./CarlaUE4.sh -carla-rpc-port=3000
- -carla-rpc-port=N在端口監(jiān)聽客戶端連接N。流媒體端口默認(rèn)設(shè)置為N+1
- -carla-streaming-port=N指定傳感器數(shù)據(jù)流的端口。使用 0 獲取隨機(jī)未使用的端口。第二個端口將自動設(shè)置為N+1。
- -quality-level={Low,Epic}更改圖形質(zhì)量級別。在渲染選項(xiàng)中了解更多信息。
- 虛幻引擎 4 命令行參數(shù)列表。虛幻引擎提供了很多選項(xiàng),但 CARLA 中并非所有選項(xiàng)都可用。
- 該腳本PythonAPI/util/config.py提供了更多配置選項(xiàng),應(yīng)該在服務(wù)器啟動時運(yùn)行:
./config.py --no-rendering # Disable rendering
./config.py --map Town05 # Change map
./config.py --weather ClearNoon # Change weather
./config.py --help # Check all the available configuration options
二、連接羅技方向盤Logitech G29
2.1安裝jstest-gtk
jstest-gtk是一個基于Gtk +的簡單操縱桿測試和配置工具。它為您提供了一個附加的操縱桿列表,一種顯示按下按鈕和軸的方法,一種重新映射軸和按鈕的方法以及一種校準(zhǔn)操縱桿的方法。jstest-gtk主要是一個圖形界面,用于檢查你的操縱桿和打擊墊是否工作正常。您可以在每個軸上找到精確信息,您可以選擇重新校準(zhǔn)它并且可以改變映射。將羅技方向盤連接至電腦主機(jī)。
使用下方命令安裝jstest-gtk。
sudo apt-get update
sudo apt-get install jstest-gtk
啟動
jstest-gtk
出現(xiàn)上圖則說明連接成功,并且檢測到羅技方向盤設(shè)備了:/dev/input/js0。然后點(diǎn)擊Properties進(jìn)入?yún)?shù)頁面,如下圖所示。
轉(zhuǎn)動方向盤和踩剎車換擋等應(yīng)該會有Axis和Buttons會有所變換,就可以了。
2.2測試G29在Carla中是否能用
- 創(chuàng)建配置文件wheel_config.ini
cd ~/project/Carla/CARLA_0.9.13/PythonAPI/examples
touch wheel_config.ini
gedit wheel_config.ini
將下方內(nèi)容粘貼進(jìn)去,內(nèi)容中數(shù)值時由jstest-gtk中的設(shè)置填入的。
[G29 Racing Wheel]
steering_wheel = 0
clutch = 1
throttle = 2
brake = 3
handbrake = 4
reverse = 15
注:
最上方[G29 Racing Wheel]
不可少且不能變否則后面繪報錯誤No section: 'G29 Racing Wheel'
steering_wheel=0
方向盤Axis數(shù)值
clutch = 1 離合器Axis數(shù)值
throttle = 2 油門Axis數(shù)值
brake = 3 剎車Axis數(shù)值
handbrake = 4 手剎Axis數(shù)值
reverse = 15 倒車Button數(shù)值
- 啟動測試程序(在Carla虛擬環(huán)境中)
terminal1:
cd ~/project/Carla/CARLA_0.9.13
./CarlaUE4.sh -carla-server
terminal2:
cd ~/project/Carla/CARLA_0.9.13/PythonAPI/examples
python manual_control_steeringwheel.py --host <服務(wù)器地址>
如果是本機(jī)運(yùn)行則可不加服務(wù)器地址參數(shù)。
顯示如上所示,此時可以用方向盤控制車子了??刂栖囎拥拿姘遄筮叄@示的是當(dāng)前客戶端、服務(wù)器的fps,以及油門,剎車,方向盤,倒擋,手剎的各項(xiàng)信息,我們需要根據(jù)其顯示的限度來調(diào)整自己的方向盤駕駛車輛。但是在操作過程中發(fā)現(xiàn)方向盤沒有力反饋。
參考連接:https://blog.csdn.net/weixin_44677876/article/details/89103999
三、Ubuntu環(huán)境下實(shí)現(xiàn)羅技G29方向盤力回饋
ros1的力反饋支持包:
https://github.com/kuriatsu/ros-g29-force-feedback/tree/ros1
ros2的力反饋支持包:
https://github.com/JLBicho/ros-g29-force-feedback/tree/ros2-foxy
選擇需要裝的ros包,進(jìn)行安裝編譯。注意這個不在虛擬環(huán)境中安裝,退出虛擬環(huán)境進(jìn)行安裝編譯所需要的包。編譯完成后如果node文件啟動不了,啟動launch文件也行。啟動launch文件后,再去Carla模擬駕駛就有力反饋了。
參考連接:
https://www.cnblogs.com/henkenen/p/15723421.html
https://github.com/kuriatsu/ros-g29-force-feedback/tree/ros1
https://github.com/JLBicho/ros-g29-force-feedback/tree/ros2-foxy文章來源:http://www.zghlxwxcb.cn/news/detail-423775.html
注意事項(xiàng):錯誤1:
no moudle lark 要 pip安裝lark-parser才行,安裝lark沒有用文章來源地址http://www.zghlxwxcb.cn/news/detail-423775.html
到了這里,關(guān)于ubuntu20.04安裝Carla并配置羅技G29方向盤使用的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!