東海大學應用物理系科學饗宴-AI、自駕車與半導體科技

想更瞭解AI與機器學習嗎?想體驗自駕車操作的樂趣嗎?
東海物理系科學營隊來囉!

科學饗宴帶你參觀AI科技,操作自駕車,並探索無塵室。
本活動完全免費並附有午餐,歡迎同學踴躍報名。

活動主題:機器學習、自駕車實作、校園探索、無塵室揭秘
活動地點:東海大學大智慧科技大樓
活動時間:2024.05.05(日)  10:00-16:00

活動地點:東海大學大智慧科技大樓
對象:全國高中生45人,額滿截止

費用:免費參加並提供午餐一份
報名截止日:5/2(四)
報名網址:https://ithu.tw/nXoQg
額滿截止!(已額滿)

自駕車實作--課程說明

授課老師將以樹莓派為核心搭配馬達和網絡攝影機組合成自駕車,簡要說明樹莓派的作業系統,在作業系統中我們會用到的介面和基本指令。為了能夠讓樹莓派自駕車能夠無線遙控,我們會介紹如何在筆記電腦中執行VNC軟體進行與樹莓派的連線,並且從筆電的環境中編寫程式與控制。實際操作的過程中我們將執行六個基本程式,程式的內容和名稱以及執行的目的分別如下
  1. cam1.py讓同學們了解樹莓派如何聯通網絡攝影機,以及執行攝影所需要的基本指令。
  2. M2.pymotorm.py在執行樹莓派連接馬達的指令,讓我們的自駕車可以進行四個基本的運動:前進、後退、右轉、左轉。
  3. M3.pykeybd.py介紹樹莓派上執行的一個pynput模組,可以利用鍵盤來控制自駕車的馬達運轉模式,基本上這就是一個遙控電動車的概念。
  4. cam4.py主要功能是結合網路攝影機的影像和馬達的控制,我們的目標是希望自駕車能夠捕捉地面上的紅線,沿著紅線向前行進。為了達到這個目的,我們必須了解如何做影像分析。老師會介紹影像分析所需要的opencv模組。
  5. cam5.pyDIV3.pyFcolor.pyPARAM.py自駕車能夠從環境中尋找目標物,目標物的定義是具有特別色碼的物體。首先我們讓自駕車在環境中原地轉動,尋找符合鎖定目標色碼的物體,一旦尋找到這個物體,就開始想物體前進。並且利用物體的大小,判斷物體的距離。當距離遠的時候我們可以用比較快的速度前進,一旦非常靠近的時候,速度就放慢,當達到我們所定義的最適當距離的時候,自駕車就停留在目標物的附近。如果目標物開始運動,自駕車又會開始跟隨這個目標物的運動。

練習題

利用python語言當中的迴圈(for)和條件判斷(if, elif, else, break),我們可以進行下面幾個程式的練習。
  1. 練習讓自駕車可以繞一個邊長5公尺的正方形運動

    • 在不啟用攝影機的情況下,我們可以控制讓自駕車圍繞邊長5公尺的正方形行走一圈。同學們可以根據自己所分配到的自駕車,測量這一個車子直線行進幾秒鐘,可以達到5公尺的距離。
    • 然後讓這個車原地轉動若干秒,你的車可以剛好旋轉90度,然後再讓這個車行走5公尺,以此類推就可以完成正方形的運動,回到出發點。
    這是一個簡單的應用,如果同學們可以完成這個簡單的習題,表示你對車輛的行走控制所用到的參數,有了基本的認識。
  2. 自駕車朝向目標運動的過程中繞過一個障礙物

    設想有一個目標物放在直線行進5公尺的地方,但是在直線行進2.5公尺的地方有一個障礙物,當自駕車靠近行駛到這個障礙物前方時,必須經由彎道行駛繞過這個障礙物,請考慮下面兩個做法:
    • 不使用攝影鏡頭的情況下,你根據你對車子的參數的掌握,設計一個彎道的程式區塊,使你的自駕車在這個障礙物前執行這個區塊的程式,就可以繞過障礙物。
    • 上述的程式區塊中使用攝影鏡頭判斷障礙物是否在轉彎的過程中已經離開視線,不造成障礙時向前行進,再轉回原本的直線。這個做法的好處是確保障礙物太大時我們的彎道必須做適當的調整,或者太小的時候不需要繞太大的彎。
    閃避過障礙物之後繼續向目標前進。
  3. 自駕車原地打轉尋找目標

    在這個練習中讓自駕車原地打轉,同時讓你的網路攝影機工作,因此就可以同時看到不同方位方向上的影像。原則上這也是一個單獨迴圈就可完成的工作,現在同學們利用open CV模組進行影像分析,當你的影像中出現你所分配到的目標物對應的特定色碼時,利用條件判斷的指令讓轉動停止,也就是攝影機停留在目標物的影像上。如果能夠做到這點,你可以在擴充你的程式,當目標物運動的時候我們的車子也會跟著轉動盯著你的目標物。這就是cam5.py的基本精神。





相關資訊




中區物理教師專業成長研習, 2023, 5, 25

自駕車學習(陳永忠老師)

我們的自駕車影片:

  1. 自駕車在直線軌道的底端迴轉
  2. 自駕車循跡運動與尋找跟隨
  3. 使用鍵盤控制自駕車的運動
  4. 閃避障礙物
  5. 在障礙物前繞道前進
  6. 在雙軌道中行進並且閃避障礙物
  7. 在綠色的單一寬軌道上行進
  8. 在單一寬軌道避開障礙物
  9. 自駕車在綠色的寬軌道上閃避三個障礙
  10. 自駕車追蹤震盪的目標
  11. 自駕車向目標前行時閃避三個障礙物
  12. 自駕車擊倒三個藍色的標的物,並且閃避三個障礙物
  13. 自駕車校正初始點後以8字行駛繞過兩個障礙物
  14. =========機器學習文字辨識與駕車結合=========
  15. 自駕車辨識數字向目標前進
  16. 自駕車辨識英文字母
  17. 自駕車擊倒不是LOVE的字母
  18. 自駕車文字辨識教學1
  19. 自駕車文字辨識教學2
  20. 自駕車文字辨識教學3
  21. 自駕車文字辨識教學4
  22. 自駕車辨識三個字母
  23. 機器學習用在自駕車
  24. Selfdrving with Machine Learning
  25. 自駕車辨識中文字母
  26. =========機械手臂===========
  27. 樹莓派連接LED
  28. 自駕車與機械手臂
  29. 自駕車與機械手臂在軌道上行走
  30. ========紅外線偵測器============
  31. 利用紅外線接收器讓自駕車追蹤黑色軌道
  32. 紅外線偵測器與轉動的攝影鏡頭
  33. 用兩個紅外線偵測器鎖定軌道
  34. 自駕車的捉迷藏
  35. ========超音波偵測器============
  36. 使用兩個超音波偵測器進行自駕
  37. 用障礙物構成超音波自駕車的巷道
  38. 用超音波偵測器在巷道中自駕
  39. 像蝙蝠一樣用耳朵在夜間飛行
  40. ======整合應用============
  41. 火燄偵測
  42. 在走廊的軌道上巡視
  43. 使用超音波和紅外線偵測器沒有攝影鏡頭也可以自走
  44. 轉動的鏡頭可以加速尋找目標,超音波閃避障礙物,影像分析目標的距離。
  45. 有一雙筷子的自駕車
  46. 自駕車帶球走
  47. 自駕車玩球soccer
  48. 兩部自駕車各玩各的
  49. 自駕車PK
  50. Practice before game
  51. 指揮車傳遞不同參數給4個自駕車
  52. Self-driving Team Work
  53. 4 targets for 4 cars
  54. 合力追擊運動的目標
  55. ======自駕車教學影片============
  56. 自駕車教學影片1
  57. 自駕車教學影片2
  58. 自駕車底線識別
授課教師
陳永忠 ycchen@thu.edu.tw