🧪 新教程持續更新中 · 由機械臂到傳感器,跟隨教程從零搭建
跳到主要內容

疑難排解 ​

淘寶店鋪

本章節總結常見問題與解決方法,幫助使用者快速排查和解決使用中遇到的各類問題。


硬體類問題 ​

舵機不回應 ​

可能原因:

  1. 舵機電源未連接
  2. 舵機與驅動板連接不良
  3. 串口連接失敗
  4. 舵機未啟用 解決方法:
  5. 檢查舵機電源是否正確連接並通電
  6. 檢查舵機與驅動板的連接線是否牢固
  7. 執行 examples/diagnostic.py 查看診斷資訊
  8. 確保按 C 連接了雲台,舵機已啟用

舵機運動方向相反 ​

可能原因:

  • 舵機安裝方向或程式控制參數需要調整 解決方法: 修改 src/trackers/tracking_controller.py 中的 calculate_move 方法,對相應參數取反:

如果左右反了 ​

python
delta_pan = -int(self.kp_pan * err_x)

如果上下反了 ​

python
delta_tilt = -int(self.kp_tilt * err_y)

舵機抖動 ​

可能原因:

  • 追蹤參數過於靈敏
  • 死區範圍太小
  • 舵機負載過重或供電不足 解決方法:
  1. 增大 dead_zone 參數
  2. 增大 min_move_interval
  3. 減小 kp_pan 和 kp_tilt
  4. 檢查電源電壓是否正常

串口連接失敗 ​

可能原因:

  • 驅動未安裝
  • 串口號不正確
  • 串口被其他程式佔用
  • 連接線故障 解決方法:
  1. 在Windows下檢查裝置管理員,確認驅動安裝正常
  2. 執行 examples/list_ports.py 尋找正確的串口
  3. 關閉其他可能佔用串口的程式
  4. 嘗試更換USB接口或數據線

軟體類問題 ​

攝影機無法開啟 ​

可能原因:

  • 攝影機索引不正確
  • 攝影機被其他程式佔用
  • 攝影機硬體連接問題
  • 攝影機驅動問題 解決方法:
  1. 執行 examples/list_cameras.py 查看可用攝影機索引
  2. 關閉其他可能使用攝影機的程式
  3. 檢查攝影機連接是否正常
  4. 嘗試更換USB接口

OpenCV報錯 ​

可能原因:

  • OpenCV版本問題
  • 相依性安裝不完整
  • 攝影機硬體異常 解決方法:
  1. 嘗試重新安裝相依性:
python
pip install --upgrade opencv-python numpy
  1. 檢查Python版本是否符合要求(>=3.8)
  2. 查看錯誤堆疊資訊,定位問題程式碼

相依性安裝失敗 ​

可能原因:

  • pip版本過舊
  • 網路連線問題
  • 權限問題 解決方法:
  1. 先升級pip:
python
pip install --upgrade pip
  1. 使用國內鏡像源加速:
python
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
  1. 檢查網路連線是否正常

程式啟動緩慢 ​

可能原因:

  • Windows下未使用DSHOW
  • 攝影機硬體初始化需要時間 解決方法:
  1. 確認程式碼使用了 cv2.CAP_DSHOW 作為攝影機後端
  2. 檢查是否有其他程式佔用攝影機
  3. 等待幾秒,攝影機初始化通常需要一些時間

追蹤類問題 ​

目標辨識不準確 ​

顏色追蹤時:

  • 檢查目標顏色與背景對比是否明顯
  • 調整顏色參數(在 src/detectors/color_detector.py 中)
  • 確保光線充足且均勻 人臉追蹤時:
  • 光線要充足,避免背光
  • 人臉要正對攝影機
  • 保持適當的距離

追蹤時雲台不動 ​

可能原因:

  1. 未連接雲台
  2. 未鎖定目標
  3. 目標在死區內
  4. 程式出錯 解決方法:
  5. 確認已按 C 連接了雲台
  6. 確認已按 T 鎖定了目標
  7. 查看主控台輸出,尋找錯誤資訊
  8. 檢查目標是否在 dead_zone 範圍內

追蹤方向反了 ​

解決方法: 參考「舵機運動方向相反」的解決方法。

追蹤抖動 ​

解決方法: 參考「舵機抖動」的解決方法。

目標鎖定失敗 ​

可能原因:

  1. 鎖定時目標不在畫面中央
  2. 目標太小或顏色不明顯
  3. 未偵測到目標 解決方法:
  4. 確保鎖定時目標在畫面中央
  5. 目標大小合適,能被正確偵測
  6. 查看主控台輸出,確認目標是否被偵測到
  7. 重新調整目標位置後再鎖定

診斷工具使用 ​

使用診斷程式 ​

系統提供了全面的診斷工具,可以測試整個系統的硬體:

python
python examples/diagnostic.py --camera 0 --port COM3

診斷程式將依序測試:

  1. 攝影機是否正常工作
  2. 串口是否能正常連接
  3. 舵機是否能正常回應 診斷完成後會顯示測試結果,幫助定位問題所在。

查看偵錯輸出 ​

程式執行時,主控台會輸出相關偵錯資訊,包括:

  • 偵測到的目標資訊
  • 目標座標
  • 誤差值
  • 雲台移動指令
  • 任何錯誤資訊 仔細觀察這些輸出,有助於快速定位問題。

恢復方法 ​

恢復雲台到安全位置 ​

  • 按 R 讓雲台回中
  • 或呼叫 gimbal.return_to_center()

重設所有設定 ​

  • 按 S 停止追蹤
  • 按 R 回中
  • 重新鎖定目標

重新校準 ​

如果追蹤效果嚴重不佳,可以:

  1. 調整追蹤參數
  2. 重新鎖定目標
  3. 必要時重啟程式
  4. 檢查硬體連接

獲得幫助 ​

如果以上方法無法解決問題,請記錄以下資訊:

  • 作業系統資訊
  • Python版本
  • 詳細的錯誤資訊
  • 復現問題的步驟
  • 執行diagnostic的結果