ROS2環(huán)境配置
本人學(xué)習(xí)ROS2采用的是Vmware虛擬機(jī),裝配ubuntu22.04系統(tǒng)
下載完ubuntu鏡像文件后創(chuàng)建虛擬機(jī)

將系統(tǒng)設(shè)置為中文,為了方便連接我需要將虛擬機(jī)的IP地址設(shè)置為靜態(tài)IP,然后使用Xshell7進(jìn)行遠(yuǎn)程連接,在此之前要先在虛擬機(jī)中安裝好ssh服務(wù)和ip服務(wù)
我將虛擬機(jī)的IP設(shè)置為192.168.32.128,本地網(wǎng)絡(luò)地址設(shè)置為192.168.32.121

連接成功后,通過(guò)命令行安裝Ros2、VsCode和Anaconda等并配置好環(huán)境變量,創(chuàng)建好python3.10環(huán)境


ROS2簡(jiǎn)介
ROS2 是一個(gè)專(zhuān)為機(jī)器人軟件開(kāi)發(fā)設(shè)計(jì)的開(kāi)源框架,它提供了一系列工具和庫(kù),讓開(kāi)發(fā)者能夠以模塊化、分布式的方式構(gòu)建復(fù)雜的機(jī)器人應(yīng)用程序。你可以把它看作是機(jī)器人的“操作系統(tǒng)”,其核心在于通過(guò)高效的通信機(jī)制,讓各個(gè)獨(dú)立的軟件組件(節(jié)點(diǎn))能夠無(wú)縫地協(xié)同工作,從而簡(jiǎn)化了機(jī)器人系統(tǒng)的開(kāi)發(fā)流程并增強(qiáng)了其可靠性和實(shí)時(shí)性。
ROS2的命令常見(jiàn)形式為ros2 <資源類(lèi)型> <操作>,ros2的資源類(lèi)型有node、topic、service、action、param等,操作有list、info、echo、call 等。
| 概念 | 通信模式 | 特點(diǎn) | 適用場(chǎng)景 |
|---|---|---|---|
| Node | 執(zhí)行單元 | 最小程序模塊 | 功能組件(感知、控制、決策) |
| Topic | 發(fā)布/訂閱 | 異步,多對(duì)多,流式 | 傳感器數(shù)據(jù)、速度、位姿 |
| Service | 請(qǐng)求/響應(yīng) | 同步,一次一應(yīng)答 | 清屏、生成對(duì)象、查詢(xún)狀態(tài) |
| Action | 目標(biāo)/反饋/結(jié)果 | 支持長(zhǎng)時(shí)任務(wù),可中途取消 | 導(dǎo)航、機(jī)械臂抓取 |
| Param | 配置存儲(chǔ) | 節(jié)點(diǎn)參數(shù),可動(dòng)態(tài)修改 | 相機(jī)分辨率、控制參數(shù) |
一般采用C++進(jìn)行程序的編寫(xiě)要比Python在性能上高很多
CmakeLists.txt的一般格式
比較重要的兩句話(huà)
# CMake 最低版本要求
cmake_minimum_required(VERSION 3.10)
# 定義工程名稱(chēng)和版本
project(MyProject VERSION 1.0 LANGUAGES CXX)
# 添加源文件并生成可執(zhí)行文件
add_executable(my_app src/main.cpp)
# 設(shè)置 C++ 標(biāo)準(zhǔn)
# set(CMAKE_CXX_STANDARD 17)
# set(CMAKE_CXX_STANDARD_REQUIRED True)
# 可選:設(shè)置編譯選項(xiàng)
# add_compile_options(-Wall -Wextra -O2)
# 查找外部依賴(lài)包(如 OpenCV, Boost)
# find_package(OpenCV REQUIRED)
# 添加頭文件搜索路徑
# include_directories(include)
# 鏈接庫(kù)(系統(tǒng)庫(kù)/第三方庫(kù))
# target_link_libraries(my_app PRIVATE ${OpenCV_LIBS})
# 可選:安裝規(guī)則
# install(TARGETS my_app DESTINATION bin)
# 可選:測(cè)試
# enable_testing()
# add_test(NAME MyTest COMMAND my_app)
最上面三個(gè)是必不可少的,最簡(jiǎn)單的Cmake配置文件格式,注添加依賴(lài)的過(guò)程是先查找包,再添加頭文件,最后鏈接第三方庫(kù),這里面的步驟順序不能更改


浙公網(wǎng)安備 33010602011771號(hào)