1 of 13

電資工程入門設計與實作自選題-撿球MAN� �週三班第三組

組員:莊詠翔、陳永縉、蔡芳鐸

撿球

2 of 13

壹、研究動機�

我們三個都喜歡打桌球,但練習完時球往往散落一地,需要一個一個撿起來,十分累人。此外,考量到殘障桌球運動員有不便彎身撿球的困擾,因此我們希望設計出一個能夠自動撿球的自走車。

貳、研究目的

一、利用Raspberry Pi Camera Module偵測地上的桌球並控制車體使其移動至桌球前方

二、以伺服馬達控制自製撿球器撿起桌球

三、在行進過程中躲避路障

3 of 13

參、設備與器材

  • 一、指定題的自走車
  • 二、樹梅派及其相機模組
  • 三、伺服馬達*2
  • 四、自製撿球器及軌道
  • 五、超音波感測器*3
  • 六、行動電源

4 of 13

肆、研究方法�

5 of 13

尋訪與目標辨識

原理:

利用opencv函式庫

,即時處理camera所錄製的影像,做為自走車行動判斷的依據。

硬體:

Raspberry pi 3+picamera

函式:

當影像中出現圓球時,分析球中心在影像中座標與球體的大小,並發送相應指令給Arduino來控制自走車。

6 of 13

影像辨識流程

7 of 13

撿球器及其函式

原理:

在正方體的一面綁上數條平行細線,使得其下壓時能夠讓球通過細線進入撿球器中,上舉時則讓球滾至自走車後方的盒子中。

硬體:

由兩個伺服馬達連上竹筷控制撿球器的起落。

函式:

當收到撿球指令時,讓撿球器下落,接著升起撿球器。

8 of 13

避障函式

原理及函式:

在自走車的左前方、右前方、正前方分別裝上超音波傳感器測量距離,根據三個感測器的距離給予自走車指令以避開障礙物。當感測到障礙物接近到一定距離的時候,往反方向行進,直到與障礙物拉開一段可以自由尋找球的距離。

9 of 13

Demo

10 of 13

伍、程式流程圖

11 of 13

陸、結論�

實際達成目標

  1. 能藉由pi camera辨識出球,並根據球在影像中的位置及大小來控制自走車移動到桌球前方。
  2. 能夠以伺服馬達控制撿球器撿起桌球,並滑落至收納盒中。
  3. 撿球自走車能夠依據超音波傳感器的讀值控制自走車以避開障礙。

12 of 13

陸、結論�

、問題與未來展望

  1. 受限於影像處理時間,方向調整及自走車前進速度都不能太快,使得撿球時間有點長,尚有優化空間
  2. 當影像中有複數顆球時影像辨識偶爾會出現問題,因此需要設定影像中球體辨別的優先順序
  3. 考慮負重問題目前的收納盒只能容納6顆球,若要裝載更多球可能要改以拖車的形式

13 of 13

柒、參考資料�

  • 一、物聯網智慧電腦視覺撿球機器人(http://www.tcivs.tc.edu.tw/resource/openfid.php?id=13592)
  • 二、Arduino筆記(19):HC-SR04超音波測距模組(https://atceiling.blogspot.com/2017/03/arduino_28.html)
  • 三、【Arduino教學】實作07-伺服馬達SG-90(https://www.youtube.com/watch?v=cLs5xwUgGkc&t=185s