樹莓派與感測器

樹莓派(Raspberry pi)是很流行的單板電腦,別看它體積小如一般信用卡大小,但它可以像是一般電腦,安裝完整的電腦桌面作業系統(Raspbian Linux OS),發揮出強大的運算能力外,也可以自行安裝各項雲端服務,諸如Nextcloud(強大的雲端硬碟服務系統)、Kodi(開源家庭電影院系統)、WordPress(非常熱門的網站架設系統)等等自由的開源服務,讓它搖身一變成為家庭裡的低耗電、高CP值的小型伺服器。

如果配合它的GPIO界面,結合各項市面上的傳感器,小至LED、光敏電阻、熱敏電阻、雷射測距、紅外線感應等,大至結合馬達、攝像頭等,開發出具有視覺辨視的機器車或機器人,都是可行的專案。也就是因為它的體積小,可以直接置放在設備中,大大的強化移動性與可能性,例如Q.bo One智慧機器人專案,就是一個很好的商業實例。

更多的教學影音內容,請點選前往「樹莓派與感測器教學網站」

第七單元 避障循跡智能小車設計

我們已經努力學習了許多Ardublockly and Arduino的設計與實作,尤其前幾個單元中專注於智能小車相關的超音波距離感測、紅外線循跡感測、L298N馬達控制載板與直流馬達驅動的程式設計,經過許多次的嘗試與驗證後,相信已經具備很好的熟練度了。

這一章節學習內容我們將綜合累積的學習經驗,再進階的討論小車行進控制與感測數值的精準運用,讓智能小車正確的循線與偵測障礙物後完成精確的避障動作,讓大家具備參加許多單位辦理智能小車競賽的基礎。

(點擊閱讀)第七單元 避障循跡智能小車設計.pdf

第六單元 紅外線循跡智能小車實作

循跡智能小車是在沒有人為操作的狀況下,透過程式設計與感測器的連結,循著設定的路線行走,依據感測器的數值判斷控制直流馬達直行、左彎、右彎與停止等,這個單元的學習內容主要是從基礎的認識主動式紅外線感測元件,討論偵測數值的運用,結合前個單元的直流馬達控制,展現系統思考、程序設計與物連控制三項能力,實現智能小車紅外線循跡的實作目標。

(點擊閱讀)第六單元紅外線循跡智能小車實作.pdf

第十三單元 Pillow影像模組

影像圖形的處理,在使用者界面程式上,是一個重要的課題,本單元將介紹影像圖形的顯示並利用pillow影像程式庫處理影像的放大與縮小。

學完本單元之後,可以學會:

  1. 知道LabelButton也可以顯示影像,讓畫面更美觀

  2. 可以利用pillowcanvas顯示影像

  3. 會簡單處理影像的縮圖,實作影像瀏覽程式

(點擊閱讀)第十三單元 Pillow影像模組.pdf

第十二單元 Decorator修飾語

Decorator修飾語在Python的學習上,是門很抽象較不容易理解的課題,但卻又是很重要的課題。因此本章透過簡單的範例,讓學習者可以先有個很初步的概念,做為未來學習的基礎。

學完本章之後,可以學會:

  1. 了解函數的不定參數

  2. 會使用匿名函數Lambda

  3. 理解函數的Decorator修飾語

(點擊閱讀)第十二單元 Decorator修飾語.pdf

當七大領域遇上運算思維

最後一段:媽媽的味道,是本文的總結,我把四段文章整理成一篇文章,請任意取用!

這是一篇沒有什麼營養價值的文章,只是表達自己對於現今教育與運算思維的不成熟想法,通常來說,這種文章都會被視為「反改革」「異類份子」的文章,其實,我內心是深深希望程式教育可以落實在教育現場的,但「落實」二字談何容易,就像民國88年擴大內需方案讓每所學校有一間電腦教室,注意,重點是在執行擴大內需,資訊教育是連帶附加的?同樣地,如今年在商談的戶外教學「救國旅」,也就是目標在救國旅不是在戶外教學;再者,今年的數位教育前瞻計畫,和88年一樣,買設備、架光纖,年底馬上會有很豐富的「成果」,什麼時候我們能夠回到原點來看教育,不要再用這種速成的方式來「做成果」!

(點擊閱讀)當七大領域遇上運算思維.pdf

 

第十一單元 視窗通訊簿項目實作

在第八單元學會了tkinter視窗設計的基本概念,也學習了不少視窗基礎元件,本單元嘗試將這些元件整合起來,實作一個簡易的通訊簿,讓學習的知識整合成一個開發能力。

要實作一個通訊簿,除了須具備一個視窗界面與使用者互動,方便使用者新增、修改、查詢、刪除資料外,這些資料如何儲存起來是一個新的課題。本單元將使用簡易的關聯式資料庫SQLite,讓學習者也能初步了解與學習使用關聯式資料庫的基礎知能。

學完本章之後,可以學會:

  1. 了解什麼是關聯式資料庫

  2. 會使用SQLite資料庫管理系統

  3. 能開發一個完整的視窗應用程式

(點擊閱讀)第十一單元 視窗通訊簿項目實作

第五單元 雷達測距與避障實作

自動駕駛車是世界各國汽車與科技企業摩拳擦掌躍躍欲試的產業,主要是運用光學雷達、傳統雷達與攝影機等感測器,搭配GPS、地圖與電腦運算,能自動側感應周圍環境並且無需人為干預而自動導航行進的車輛。為了感受科技與智能的新世界,讓我們也來參與一些基礎研究,運用Arduino與超音波感測器探索自動避障的智能小車研究。

這一章節學習內容我們規劃了超音波感測器HC-SR04的距離感測函式撰寫語法的介紹與搭配前一單元的智能小車行進控制函式,討論自動避障的程式設計實作,部分的實作仍會運用到Arduino IDE上的Serial Monitor序列監視器檢測程式的正確性,你可以擴充學習課程的內容發揮創造力與想像力,打造更具智能的小車。閱讀完本章,你可以學會:

  1. 超音波感測器與距離量測的計算程式設計。

  2. 運用超音波感測器製作趣味小實驗。

  3. 熟練周邊感測回傳的數值,設計對應的邏輯判斷程式。

  4. 能透過實作了解設計自動駕駛車的相關科技與系統。

  5. 能完成設計超音波感測避障智能小車。

(點擊閱讀)第五單元雷達測距與避障實作.pdf

第九單元 Matplotlib繪圖

在之前單元中學習到,函數除可以減化程式碼之外更大大強化程式功能,只要適當的規劃,開發一次就可以無限次使用。但在開發函數之前,了解Python內建的函數是絕對必要的工作,因為直接使用內建的函數可避免一再重複開發相同的工具,而且內建提供的函數,皆具有相當程度的效能和可靠性,可以安心使用。

當了解內建函數之後,接續是學習認識更多的第三方模組,本單元介紹Matplotlib這個專業級的繪圖模組,它可以讓你輕易的畫出長條圖、折線圖及各式複雜的數學函數圖。

學完本章之後,可以學會:

  1. 知道Python常用的內建函數

  2. 可透過import載入相關模組,使用內建函數

  3. 認識Python package index第三方模組

  4. 安裝及使用Matplotlib繪圖模組

(點擊閱讀)第九單元 Matplotlib繪圖.pdf