搜尋程式碼

課程 第6課(共10課):使用樹莓派Pico 4WD智能車套件控制直流馬達

呢一課係……嘅一部分: Raspberry Pi Pico 四驱智能车

課程 第6課(共10課):使用樹莓派Pico 4WD智能車套件控制直流馬達

呢個項目指南係基於Robojax Raspberry Pi Pico智能車課程嘅第6課。喺呢一節,你會學到點樣整合伺服摩打同超聲波感測器,為你嘅四輪驅動車建立一個智能避障系統。呢個項目唔單止係喺偵測到物件時停低,而係將你嘅車變成一個迷你自主機械人,主動掃描周圍環境,判斷最清晰嘅路徑,然後繞過障礙物行駛。

呢個唔單止係一個理論練習;佢係建立更複雜機械人嘅基礎項目。以下係呢種避障邏輯嘅幾個實際應用:

  • 自主探索機械人:建立一個可以自己喺房間或者迷宮入面導航嘅機械人,完全唔使遙控。
  • 智能吸塵機:用同樣嘅邏輯整一個簡單嘅機械人吸塵機,可以喺清潔地板時避開傢俬同牆壁。
  • 保安巡邏機械人:編程架車巡邏周邊範圍,用超聲波感測器偵測同繞過意外出現嘅物件。
  • 教育機械人平台:用呢個作為基礎,去實驗更進階嘅路徑規劃演算法同感測器融合技術。

核心概念係用伺服摩打轉動超聲波感測器,好似一個「雷達」咁由左到右掃描範圍。通過量度唔同角度嘅距離,架車可以建立佢周圍環境嘅地圖,然後決定向前行、轉左或者轉右嚟搵到一條暢通嘅路徑(喺影片02:47)。

硬件/組件

呢個項目係圍繞SunFounder Raspberry Pi Pico 4WD智能車套件嚟建立。今次課程用到嘅主要組件包括:

  • Raspberry Pi Pico板
  • 4WD智能車底盤連摩打
  • 摩打驅動板(套件內附)
  • 超聲波感測器(HC-SR04類型)
  • 伺服摩打
  • 電池盒

接線指南

影片提到套件附有完整文件、逐步指示同接線圖。伺服摩打同超聲波感測器嘅接線通常係連接到摩打驅動板,咁樣就可以集中處理Pico嘅連接。

請參考下面嘅圖表嚟了解你套件嘅具體引腳連接。

程式碼解釋

影片集中講解obstacle_avoid.py檔案入面嘅邏輯。雖然完整程式碼隨套件提供,但今次課程會重點介紹控制架車行為嘅用戶可設定參數。呢啲就係你通常會想調整嚟微調機械人表現嘅變數。

喺主程式嘅開頭,你會搵到定義架車行為嘅關鍵設定(喺影片13:07):

# 避障設定
RADAR_REFERENCE = 20  # 以厘米計,視為障礙物嘅距離
STEP_ANGLE = 10       # 每次掃描步驟伺服摩打移動嘅度數
FORWARD_SPEED = 30    # 向前行時嘅摩打速度
TURN_SPEED = 50       # 轉彎時嘅摩打速度
FORWARD_SCAN_ANGLE = 50  # 快速向前掃描嘅度數
  • RADAR_REFERENCE:呢個係最重要嘅設定。佢定義咗以厘米計嘅最低安全距離。如果超聲波感測器偵測到物件近過呢個數值,架車就會視之為「危險」並啟動避障程序(喺影片22:03)。
  • STEP_ANGLE:呢個決定雷達掃描嘅解析度。較細嘅數值(例如10度)會令掃描更精準但較慢。較大嘅數值會快啲但冇咁詳細。
  • FORWARD_SPEED同TURN_SPEED:呢啲係控制摩打功率嘅PWM數值(0-100)。你可以調整呢啲數值嚟改變架車向前行嘅速度同轉彎嘅快慢(喺影片13:33)。
  • FORWARD_SCAN_ANGLE:避開障礙物之後,架車會做一次快速掃描嚟確保前面條路暢通。呢個變數設定嗰次掃描嘅角度。數值50即係話佢會由相對中心嘅-25度掃到+25度(喺影片13:40)。

現場項目/示範

喺影片入面,導師分階段示範呢個項目。首先,佢執行一個簡單測試嚟展示超聲波感測器點樣量度距離並將數值打印到shell,確認「0」代表有障礙物而「1」代表路徑暢通(喺影片03:48)。

然後佢解釋決策流程圖,即係成個操作嘅大腦。架車用一個叫get_direction()嘅函數嚟分析雷達數據。呢個函數會將掃描數據分成唔同嘅開放空間區域,並識別出最闊嗰個。根據呢條闊路徑喺邊個位置(左、中或者右),架車就會決定轉邊個方向(喺影片11:19)。

最後,導師設置一個障礙迷宮,示範架車點樣穿越佢。你可以見到架車左右掃描,如果卡住就倒車,最終搵到一條路穿過障礙物,完全唔使手動控制(喺影片22:53)。

章節

  • [00:00] Pico Car避障功能簡介
  • [01:31] 套件特色同文檔總覽
  • [02:47] 示範避障功能
  • [03:48] 測試超聲波感應器同距離測量
  • [07:45] 解釋避障演算法同流程圖
  • [12:49] 分析主要避障代碼
  • [15:50] 現場代碼示範同數據解讀
  • [18:11] 深入探討方向判斷同轉彎邏輯
  • [22:53] 用障礙迷宮做最終現場測試
请提供需要翻译的文本。

資源與參考資料

暫時冇資源。

文件📁

冇文件可用。