Duckietown 專案 – Duckiebot DB21M 基礎操作(一)

若您已讀完本篇想要了解更多本次 Duckietown 系列的操作,請參考 :

一、前言

在上一篇文章「Duckietown – Duckiebot DB21M 小鴨車專案 Jetson-Nano 版平台組裝與操作環境設定介紹」中,我們成功地將小鴨車的映像檔設定完成,讓小鴨車能夠連接上自行設定的WIFI router;也將操作主機的操作環境設定完成,並能夠執行 duckietown-shell 的指令。接下來,本篇文章就請大家和我們一起開始進入 Duckiebot 的基本操作!

二、操作前的準備

請注意,接下來的操作都在操作主機上執行,而不是在 duckiebot上執行。

在操作前,我們需要確保已達成下列事項:

.擁有 Duckietown token

.操作主機能夠與 Duckiebot 進行遠端通訊

.duckietown-shell 可以正常執行

2-1 Duckietown 與 Docker 帳戶申請

Duckietown token 只需要擁有 Duckietown 的帳戶即可取得,Duckietowm帳戶可以至Duckietown官網註冊。

Docker 的帳戶可到 Docker 的官網申請。

2-2 操作主機與Duckiebot 的遠端通訊

為了確保操作主機能夠確實地透過 Wifi 與 Duckiebot 進行遠端通訊連線。因此,我們將操作主機的網路連線,連線至與 Duckiebot 相同的 WIFI router 後,便可以使用 $ ping hostname.local 指令測試連線。請注意,上述指令中的 hostname 是小鴨車的實體機器名稱,請不要照實打出 hostname.local,並且小鴨車需要處於啟動狀態。

此處的hostname 即上一篇文章「Duckietown – Duckiebot DB21M 小鴨車專案 Jetson-Nano 版平台組裝與操作環境設定介紹」中「初始化 Duckiebot 的Micro-SD 卡」所輸入的 hostname。

圖二 Duckiebot DB21M啟動後的 OLED 資訊顯示畫面
圖三 測試與 Duckiebot DB21M 的遠端通訊

2-3 正常執行duckietown-shell

測試 duckietown-shell 能否正常執行非常簡單,在Terminal 中輸入指令 $ dts 後,若無發生任何紅字錯誤訊息,表示 duckietown-shell 可正常執行。若想退出duckietown-shell,可按下【ctrl】+【c】按鍵退出。

圖三 duckietown-shell 可正常執行畫面

三、Duckiebot的基礎操作

在本次的基礎操作中,我們將實現下列的功能 :

1. 搜尋 Duckiebot

2. 使用 Dashboard 查看 Duckiebot 的相關資訊

3. 使用鍵盤遙控 Duckiebot!

若操作前的準備已確實完成後,我們便可以開始操作 Duckiebot囉!

3-1 搜尋 Duckiebot

在開始使用 Duckiebot 之前,我們需要先找到在同一個區域網路中,有多少台可以使用的 Duckiebot。

可以輸入指令 $ dts fleet discover 來找尋。

圖五 區域網路中可以使用的 duckiebot

在搜尋到的 Duckiebot中,請確認「Status」與「Dashboard」的狀態皆處於可以運行的狀態(綠底)。

3-2 使用 Dashboard 查看 Duckiebot

在上一步驟中,我們查找了可以使用的 Duckiebot後,接著我們可以直接使用 Dashboard來監控Duckiebot的狀態。

請直接開啟網頁瀏覽器,輸入網址: http://hostname.local,其中 hostname 是 Duckiebot 的機器名稱,請不要直接輸入 「hostname」。在初次登入後,會有初始值的設定,請依照指示一步一步設定。圖六為初始值設定完成後,選擇左邊選項的【ROBOT】介面。

圖六 Duckiebot 的 Dashboard 畫面

在【ROBOT】選項中,可以選擇想監控的資訊: 「Info」、「Mission Control」、「Health」、「Architecture」、與「Settings」。

在「Mission Control」的監控資訊中,我們可以監控Duckiebot 的攝影鏡頭畫面。

圖七 Dashboard 中的Mission control 的功能

在左邊的 【LOGIN】選項中,可以使用先前取得的Duckietown token 登入,以便與 Duckietown 團隊所進行的活動進行互動,例如AI-DO競賽

圖八 在【LOGIN】選項中,登入 Duckietown帳號

3-3 使用鍵盤遙控 Duckiebot

接著是最讓人興奮的時候了 – 遙控 Duckiebot !

我們可以使用鍵盤上的方向鍵,來遙控 Duckiebot,請輸入指令 $ dts duckiebot keyboard_control hostname。請注意,hostname 指的是 Duckiebot的實體機器名稱,請不要直接輸入 hostname,本範例是使用「edu」。

圖九 輸入遙控 duckiebot的指令畫面

若能夠成功執行,會出現一個方向鍵的視窗,請在此視窗中按下方向鍵,即可遠端遙控 Duckiebot相對應的移動方向。

圖十 遙控 Duckiebot 的方向鍵視窗
使用鍵盤遙控 Duckiebot

若要取消執行中的遙控程式,請在 Terminal 視窗中按下【ctrl】+【c】即可。

本次的 Duckiebot 基礎操作便到這邊結束囉!下一篇文章我們將會持續介紹 Duckiebot 更多的基礎操作喔!請各位多多關注與分享我們的文章喔!