Qt下開發ROS整理總結

兩個半月攢了些Autoware和Apollo r3.0.0和一些opensource的標定&硬件同步代碼,修改融合爲一個所謂自動駕駛的功能包,在最後的UI集成時候,感覺沒有這個必要,爲了不白白浪費調研花費的時間,總結一下。

一、qt開發ros的開發環境搭建

二、幾個簡單DEMO流程註釋

三、簡單的Qt相關總結(yaml生成列表、RVIZ lib使用、去掉ROS 實現通信等)

四、Autoware的runtime manager(wxPython總結)

 

一、qt開發ros的開發環境搭建

因爲主要是爲了開發UI所以qt ide下開發ros的那個插件並沒有用,那個是開發package比較方便。

平常用的ide有:clion、Qt creater、pycharm、vscode

除了pycharm是寫py的其他對CMake支持的都比較好

首先QT Creater使用導入CMakeLists.txt來組織別人已有工程

之後呢在編譯的時候會提示路徑設置找不到cmake,需要在右邊的“項目”選項中設置CMake的路徑,需要將CMAKE_PREFIX_PATH設置爲 /opt/ros/kinetic目錄,點擊下面應用會自動重新組織工程。之後重點在於CMake文件怎麼寫,稍後介紹。

 Clion的組織方式:

Clion官網有詳細步驟:https://www.jetbrains.com/help/clion/ros-setup-tutorial.html

別處轉載:https://www.jianshu.com/p/ccbcc717c395

1.上jetbrain官網下載clion,切記是linux版,按照官網安裝
2.進入ros的catkin的工作空間,一般來說是~/catkin_ws/
3.執行 source devel/setup.bash (這一步我一般是source 三遍)
4.cd src進入到~/catkin_ws/src 目錄下,在此打開clion
5.運行clion.sh (根據每個人安裝clion的目錄不同,運行的命令行也不同),比如我的clion.sh目錄是在/opt/clion-2017.3.1/bin/clion.sh 下,那麼我這一步的運行命令就是/opt/clion-2017.3.1/bin/clion.sh
6.clion點擊 Import Project from Sources 然後選擇~/catkin_ws/src目錄,這樣可以加載該目錄下所有的已經存在的ROS項目

切記第四步在~/catkin_ws/src/下運行clion
加載完項目之後,運行如果遇到頭文件找不到,例如 ros/ros.h no such file
試試把CMakeLists.txt文件中
include_directories(${catkin_INCLUDE_DIRS})
放在catkin_package()那一行的後面


還有個小技巧:如何讓clion只編譯目錄下的某一個或者幾個包

在上面配置的情況下,你可能會發現每次修改完CMakeList文件都要把你所有的ROS項目重新build一遍,
如果你想只make一個或者幾個項目可以選擇下面這個方法
在clion中找到 File->Settings->Build,Execution,Deployment->CMake
在CMake options 那一行中添加
-DCATKIN_WHITELIST_PACKAGES="pkg1"
pkg1 是你的package名稱
如果想make多個包,用分號;間隔,類似這樣
-DCATKIN_WHITELIST_PACKAGES="pkg1;pkg2"

 

發佈了41 篇原創文章 · 獲贊 4 · 訪問量 5427
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章