原创 ROS與navigation教程——概述

navigation是ROS的二維導航功能包,簡單來說,就是根據輸入的里程計等傳感器的信息流和機器人的全局位置,通過導航算法,計算得出安全可靠的機器人速度控制指令。 代碼庫:https://github.com/ros-planning/

原创 ROS與navigation教程——基本導航調整指南

  說明: 介紹如何調整機器人上的ROS導航包 步驟: (1) 機器人導航需要那些準備? 在調整新機器人上的導航包時遇到的大部分問題都在本地規劃器調諧參數之外的區域。機器人的里程計,定位,傳感器以及有效運行導航的其他先決條件常常會出錯。所

原创 ROS multi-master——multimaster_fkie配置

多主站ROS配置和mutimaster_fkie ROS版本:kinetic 操作系統:Ubuntu 16.04。 multimaster_fkie:github 1網絡配置 1.1路由器 設置無線路由器並連接兩臺計算機/機器人。 爲這兩

原创 ROS——不同版本間ROS進行通信

在相同版本間的ROS進行通信不在贅述了,修改/etc/hosts文件即可。 最近項目遇到在Ubuntu16.04 與Ubuntu18.04兩個系統間進行ROS通信,ROS版本分別爲Kinetic和Melodic。配置網絡後,兩邊都能夠pi

原创 靜態時序分析——單週期

一、建立時間的檢查 建立時間的檢查是指檢查電路里每一個觸發器的數據和時鐘的關係是否滿足建立時間的要求。 我們以上圖爲例進行建立時間檢查。由圖可知,我們主要針對第二個觸發器UFF1進行檢查。我們可以梳理時序關係如下:   通過這個圖,我

原创 靜態時序分析——概述

一、簡述 靜態時序分析是檢查系統時序是否滿足要求的主要手段。以往時序的驗證依賴於仿真,採用仿真的方法,覆蓋率跟所施加的激勵有關,有些時序違例會被忽略。此外,仿真方法效率非常的低,會大大延長產品的開發週期。靜態時序分析工具很好地解決了這兩個

原创 跨時鐘域電路設計——結繩法

信號從快時鐘域到慢時鐘域過渡時,慢時鐘可能無法對快時鐘變化太快的信號進行採樣。 之前的同步器法對兩個時鐘間的關係有要求,結繩法適用於任何時鐘域之間的過渡。 結繩法的原理是將快時鐘信號的脈衝週期延長,等到慢時鐘週期採樣後再“解繩”,還原爲

原创 跨時鐘域電路設計——多bit信號

多個bit信號的跨時鐘域僅僅通過簡單的同步器同步時不安全的。 如下圖: 雖然信號都同步到目的時鐘域,可完成的功能卻與設計的初衷不相符。 解決方案之一爲對信號進行格雷碼編碼,但此方案只適用於連續變化的信號。另一種方案爲增加新的控制信號en

原创 跨時鐘域電路設計——亞穩態及雙鎖存器

一、同步電路 定義:電路中所有受時鐘控制的單元,全部由一個統一的時鐘控制。 優點:在同步設計中,EDA工具可以保證電路系統的時序收斂,避免電路設計中的競爭冒險。 缺點:時鐘樹綜合需要加入大量延遲單元,使電路面積和功耗大大增加。   二、異

原创 跨時鐘域電路設計——單bit信號

前面提到了簡單的雙電平鎖存器,下面是一些單bit同步電路。 一、慢時鐘域向快時鐘域 邊沿檢測同步器 將慢時鐘域的脈衝搬移並縮小爲快時鐘域的脈衝。 既可以檢測上升沿,也可以檢測下降沿。 如上圖,慢時鐘下一個有效脈衝的最短週期爲慢時鐘的一

原创 Gmapping——從原理到實踐

概述 在SLAM中,機器人位姿和地圖都是狀態變量,我們需要同時對這兩個狀態變量進行估計,即機器人獲得一張環境地圖的同時確定自己相對於該地圖的位置。我們用x表示機器人狀態,m表示環境地圖,z表示傳感器觀測情況,u表示輸入控制,下標表示時刻,

原创 ROS與navigation教程——ACML參數配置

<launch> <!-- //後爲wiki官網的參數說明 ()中爲粗讀算法參數說明及理解 ×××面臨的問題 常用地圖有2種:     1.基於特徵,僅指明在指定位置(地圖中包含的對象的位置)的環境的形狀。特徵表示使得調節對象的

原创 數字IC設計——跨時鐘域同步

跨時鐘域同步的核心是要解決不同時鐘域之間所產生的亞穩態問題。 跨時鐘域同步分爲多bit同步和單bit同步。 1、多bit跨時鐘域同步 對於多bit數據的跨時鐘域同步通常有兩種方法:二進制計數值格雷碼打兩拍法和異步FIFO法。       

原创 ROS與navigation教程—概述

navigation是ROS的二維導航功能包,簡單來說,就是根據輸入的里程計等傳感器的信息流和機器人的全局位置,通過導航算法,計算得出安全可靠的機器人速度控制指令。 代碼庫:https://github.com/ros-planning/

原创 ROS kinect 安裝

**安裝並配置ROS環境(Kinetic 版本) ** 此爲 Ubuntu16.04 + Kinetic安裝說明 官方安裝ROS說明 http://wiki.ros.org/Installation/Ubuntu?distro=kinet