ROPS讓你更容易開發(fā)機器人
所有機器人都需要傳感器,計算和驅(qū)動。
現(xiàn)成的x86 PC為您提供了一個熟悉的Linux環(huán)境來進行開發(fā)和部署。 然而,PC存在嚴(yán)重問題,現(xiàn)成的主板不能提供與外界的低延遲和噪聲容忍連接。 USB似乎就是解決方法,但是一旦總線忙碌,如果你通過USB連接到電機控制器,延遲會讓你感到困惑。
在機箱內(nèi)隱藏著一個解決方案PCI Express。 雖然你很難找到PCI-e電機控制器或激光雷達(dá),但速度快,延遲低。 這就是ROPS的用武之地,可以作為PCI-e與CAN和RS485等總線之間的橋梁,您可以在電機控制器和傳感器上找到它們。
由于幾乎所有移動機器人都需要IMU和GPS,有了ROPS這些都不是問題。
我們將在CSG325封裝中使用Xilinx Artix-7 XC7A35T作為ROPS的核心。 35T是中檔Artix部分,CSG325封裝將所有重要的GTP收發(fā)器綁定,以便我們可以使用PCI-e連接到主機。
我們計劃使用的傳感器是ST LSM9DS1 IMU,ST LPS25HW氣壓計和uBlox NEO-M8T GPS。
將有后面板IO用于連接第三方硬件,如電機控制器和其他傳感器,但我們還沒有確定任何細(xì)節(jié)。 目前只有很少的FPGA用于IO,因此這里有很多靈活性。 在主機外殼內(nèi)的夾層或柔性電纜連接器上也可能有額外的IO。
Verilog仿真工具
當(dāng)你處理任何類型的代碼時,收緊write-compile-test循環(huán)總是有幫助的,特別是當(dāng)你第一次學(xué)習(xí)時。 對于SPI模塊,最重要的是SPI輸出的時序。 為此,我們需要模擬verilog并檢查輸出。 以下是我過去常用的工具。
編輯器
我使用neovim,但它并不重要。 我強烈建議使用語法高亮,強大的查找和替換以及跨平臺功能,以便您可以隨時隨地使用它。
Bash Glue
這就是魔術(shù)發(fā)生的地方,這個腳本以您當(dāng)前正在處理的文件的形式接受一個參數(shù),并等待它被保存。 保存后,腳本會編譯該文件,對其進行模擬,并更新GTKWave的輸出。 我在這里使用verilog,但你可以在inotifywait之后用你正在處理的項目中有用的東西替換它們。 這可能是編譯器,linter等。我將它的輸出保存在我工作區(qū)的左上方窗格中,這樣我就可以檢查出現(xiàn)的任何錯誤。
inotifywait
這確實是腳本的關(guān)鍵。 當(dāng)作為第一個參數(shù)提供給腳本的文件被關(guān)閉時,如果它被打開為可寫,則inotifywait退出。 這樣,如果你捕獲文件,或差異,它將不會做任何事情。 它不會查看文件內(nèi)部以查看是否已進行更改,它只知道文件已關(guān)閉。
iVerilog
Icarus Verilog是一個verilog綜合和模擬工具。 iVerilog將源編譯為類似中間程序集的源,然后由iVerilog工具集的另一部分vvp執(zhí)行。 這樣做會輸出一個.lxt文件,該文件存儲verilog中各種連線和寄存器的波形。
在腳本中,iverilog的-o選項命名輸出文件,這里我們只使用main。 然后我們在main上調(diào)用vvp,并告訴vvp將波形輸出到.lxt文件。
GTKWave
模擬verilog時,可以使用類似printf的語句,也可以轉(zhuǎn)儲每行的狀態(tài)并注冊到文件中。 查看寄存器轉(zhuǎn)儲。 我正在使用GTKWave。 在我看來,它是一個完美的軟件。 當(dāng)我想檢查波形時,它會完成我需要的一切,而不是其他任何東西。
在腳本中,我們調(diào)用gconftool-2來更新波形。 我不知道他們?yōu)槭裁催x擇配置工具來做這件事,但它很有效。
請輸入評論內(nèi)容...
請輸入評論/評論長度6~500個字
最新活動更多
-
即日-11.13立即報名>>> 【在線會議】多物理場仿真助跑新能源汽車
-
11月28日立即報名>>> 2024工程師系列—工業(yè)電子技術(shù)在線會議
-
12月19日立即報名>> 【線下會議】OFweek 2024(第九屆)物聯(lián)網(wǎng)產(chǎn)業(yè)大會
-
即日-12.26火熱報名中>> OFweek2024中國智造CIO在線峰會
-
即日-2025.8.1立即下載>> 《2024智能制造產(chǎn)業(yè)高端化、智能化、綠色化發(fā)展藍(lán)皮書》
-
精彩回顧立即查看>> 【限時免費下載】TE暖通空調(diào)系統(tǒng)高效可靠的組件解決方案
推薦專題
- 高級軟件工程師 廣東省/深圳市
- 自動化高級工程師 廣東省/深圳市
- 光器件研發(fā)工程師 福建省/福州市
- 銷售總監(jiān)(光器件) 北京市/海淀區(qū)
- 激光器高級銷售經(jīng)理 上海市/虹口區(qū)
- 光器件物理工程師 北京市/海淀區(qū)
- 激光研發(fā)工程師 北京市/昌平區(qū)
- 技術(shù)專家 廣東省/江門市
- 封裝工程師 北京市/海淀區(qū)
- 結(jié)構(gòu)工程師 廣東省/深圳市