原创 Python實踐(1):創建虛擬環境導入Pycharm

前言 Python爲我們提供了豐富的庫來進行軟件的開發和驗證,項目開發的時候,不同的項目常常需要不同的庫,有時甚至需要用到特定版本的庫,僅僅依賴本地的環境已經不能適應開發的需要,搭建虛擬環境,爲我們提供了一個非常好的解決方案。 步

原创 ROS自學實踐(3):機器人建模優化xacro與Arbotix+rviz虛擬仿真

目標:使用xacro優化建立的urdf機器人模型,在rviz和gazebo中進行仿真,爲以後控制算法和SLAM算法做準備。 Xacro(XML Macros)Xacro是一種XML宏語言。 使用xacro,您可以通過使用宏命令構建

原创 ROS自學實踐(2):機器人建模URDF

目的:構建機器人的3D模型,爲物理仿真做準備。 URDF(Unified Robot Description Format)就是描述機器人硬件尺寸佈局的模型語言。它是同ROS通信的渠道,通過機器人的物理尺寸來配置機器人模型。 1.

原创 SSH+Putty+Xming搭建遠程操作環境

1.下載安裝Putty 2.在linux系統上安裝和開啓SSH (1)首先更新源   sudo apt-get update (2)安裝ssh服務 sudo apt-get install openssh-server (3)配置

原创 概率機器人筆記(6):機器人感知模型

1.前言 由於所有的傳感器都是帶有噪聲的,將機器人感知模型也就是測量模型同樣用條件概率分佈p(zt∣xt,m)p(z_t|x_t,m)p(zt​∣xt​,m)進行表示已經成爲約定俗成或者說水到渠成的事情了。其中xtx_txt​代表

原创 概率機器人筆記(5):機器人運動模型

前言 本節通過機器人運動模型(motion model)實現狀態轉移概率p(xt∣ut,xt−1)p(x_t|u_t,x_{t-1})p(xt​∣ut​,xt−1​),即執行運動控制utu_tut​後機器人狀態的後驗分佈,其中,x

原创 ROS自學實踐(4):使用GAZEBO進行物理仿真

rviz中的仿真只是視覺上的仿真,不能稱得上物理仿真,gazebo是真正意義上的三維物理仿真平臺,可以在裏面創建環境等相關信息,方便以後的建模和導航。 1.向xacro模型文件中添加慣性矩陣和碰撞屬性 (1)慣性矩陣的計算是理論力

原创 概率機器人筆記(1):概率論基礎內容回顧

一、樣本空間與隨機事件 1.隨機試驗 相同條件下,試驗可以重複進行 試驗結果不止一個,但是試驗之前可以知道所有可能出現的結果 試驗前不能確定每次試驗的結果是哪一個 2.樣本空間 隨機試驗中所有可能的結果(樣本點)組成的集合。

原创 概率機器人筆記(4):粒子濾波的簡單理解與推導

1.粒子濾波基本過程 (1) 問題描述 當狀態轉移模型和測量模型不是線性時,後驗概率bel(xt)bel(x_t)bel(xt​)不再服從高斯分佈,作爲貝葉斯濾波的另一種非參數實現,粒子濾波採用從後驗得到的有限個隨機狀態樣本來表示

原创 SLAM入門(2):QT+ROS進行GUI界面開發

1.前言 使用在ROS中調用QT的庫函數,利用QT良好的GUI界面特性,可以幫助我們更好的開發控制程序。 2.安裝qt_ros插件 該官方文檔解釋了安裝ROS Qt Creator插件的過程。首先根據鏈接和自己的系統,選擇合適的插

原创 SLAM入門(4):非線性函數優化方法

一、前言 激光SLAM建圖主要分爲兩個部分,前端的激光里程計和後端的非線性優化,激光里程計參考當前幀和地圖參考幀的幀間匹配算法來完成位姿估計[1],因此幀間匹配是SLAM建圖非常重要的一環,常用的幀間匹配算法主要由兩大類,第一類是

原创 SLAM入門(1):點雲庫PCL源碼編譯安裝和以及在QT中的使用

一、前言 PCL(Point Cloud Library)是在吸收了前人點雲相關研究基礎上建立起來的大型跨平臺開源C++編程庫,也就是C++模板庫。基於以下第三方庫:Boost、Eigen、FLANN、VTK、CUDA、OpenN

原创 ROS獲取串口信息及後續處理(以慣導IMU XW-GI5651爲例)

一、問題簡介 自動駕駛小車的底層的數據相當一部分是通過串口發送的,以慣導爲例,慣導的定位信息大概如下所示: $GPFPD,0,1666.330,0.000,0.015,0.129,0.00000000,0.00000000,0.0

原创 ROS自學實踐(10):ROS節點同時訂閱多個話題並進行消息時間同步

一、前言 在進行SLAM建圖或自動駕駛系統設計的過程中,往往涉及到多種傳感器進行環境感知和信息採集,這就不僅需要一個節點接收多個傳感器數據,還要求傳感器數據的時間戳同步,這樣才能實現環境數據的實時感知和處理。本文基於ROS操作系統

原创 SLAM入門(4):幀間匹配(勢場法之高斯牛頓迭代)未完成。。。

一、前言 激光SLAM建圖主要分爲兩個部分,前端的激光里程計和後端的非線性優化,激光里程計參考當前幀和地圖參考幀的幀間匹配算法來完成位姿估計[1],因此幀間匹配是SLAM建圖非常重要的一環,常用的幀間匹配算法主要由兩大類,第一類是