本書以教娛機器人的制作應用和競賽機器人的制作競賽為目標,結合硬件模塊和軟件編程,循序漸進地講解每個模塊所需專業知識和技術,然后將這些知識和技術應用到產品制作和開發中。本書第1章介紹了Arduino的基礎知識,以方便一些基礎比較薄弱的讀者跳過入門教程直接學習中級教程。接著介紹循線音樂機器人的制作,重點講解如何將一首曲子轉換成電子音樂數據,然后如何制作播放器,并將播放器與循線程序結合,讓機器人達到邊循線邊播放音樂的效果,而且做到完美集成。第3章介紹超聲避障機器人的制作,重點是超聲波傳感器的距離測量和Arduino脈沖時間測量函數的應用,并講解智能電子產品設計中要注意的容錯問題,然后完成一個超聲避障漫游機器人的制作。第4章講解超聲跟*器人的設計和制作,重點引入P控制器的算法和編程,講解閉環控制的概念和編程實現方法,*后制作出一個反應靈敏的跟*器人。第5章介紹紅外遙控機器人的制作,重點講解紅外遙控編碼和解碼,了解紅外編碼協議和解碼程序的編寫方法,*后制作出一個紅外遙控機器人。第6章將前5章的功能集成,制作出一個由紅外遙控器控制的具備四種工作模式的教娛機器人產品,重點講解如何利用Arduino的中斷功能將各個功能模塊完美集成到一起,同時結合產品開發過程,按照構思、設計、實現和操作四個步驟來講解具體產品的開發流程。第7章結合紅外測距傳感器的應用,講解AD接口模擬量和數字量的概念和模數轉換技術,并將其應用到紅外測距傳感器,制作紅外云臺漫游機器人。第8、9和10章結合中國教育機器人大賽項目,在原有教娛機器人基礎上進行改造和拓展,制作智能搬運、擂臺和滅火機器人。重點介紹競賽規則,競賽策略的編程和完整競賽程序的設計和實現。
前 言
創作背景
機器人是一個典型的光機電算一體化系統,它融合了光學、機械、電子、傳感器、通信、計算機軟硬件和人工智能等眾多先進技術,是目前世界各國高校進行創新思維訓練、創新技能訓練、工程實踐訓練最理想的平臺,吸引了無數愛好者參與其中。
目前市面上已經有大量的 Arduino學習套件和教程,這些教程基本上都是先簡單地介紹各種電機的控制、傳感器的應用和無線數據傳輸等,然后配上一些簡單的案例代碼,最后再加上一兩個簡單的綜合應用。這種學習方式沒有與具體的應用背景相結合,學習久了會逐漸失去趣味性,只能達到科普的效果,很難真正指導學習者成為一個能解決復雜問題的創客。雖然也有一些將Arduino和機器人結合的教程,但是同樣缺乏系統全面的結合和螺旋式上升的引導。
隨著基于 Arduino的傳感器、機電控制模塊、通信模塊等在市場上的大量涌現,急需一本教程能夠系統地將機器人的各個部分與 Arduino結合起來,并詳細介紹如何利用這些模塊來設計智能機器人產品。本書正是在這樣的背景下創作的。
本書以教娛機器人產品的設計和開發為主線,應用系統工程的設計理念,將各個專業的技術和模塊與機器人系統集成,循序漸進地講解專業知識和技術,并將作者從事機器人設計與制作十年的工程經驗帶入到本書中,最終開發和制作出一個具有中等復雜程度的機器人產品。本書將機器人涉及的最基本的光機電算一體化知識進行了重新整合,讓讀者能更全面地了解機器人的相關知識,引發讀者從多學科交叉的角度去思考與鉆研,最終完成機器人的設計、制作和編程。最后通過幾個中國教育機器人大賽的競賽項目,制作參賽機器人完成競賽項目,進一步提升和強化開發中等復雜程度軟件和產品的能力。
本書主要內容及面向的讀者
機器人的制作非常強調動手能力,本書以教娛機器人的制作應用和競賽機器人的制作競賽為目標,結合硬件模塊和軟件編程,循序漸進地講解每個模塊所需的專業知識和技術,然后將這些知識和技術應用到產品的制作和開發中。
作為中級教程,第1章簡單介紹了Arduino的基礎知識,以方便一些基礎比較薄弱的讀者跳過入門教程直接學習中級教程;接著第2章介紹循線音樂機器人的制作,重點講解如何將一首曲子轉換成電子音樂數據,以及如何制作播放器,并將播放器與循線程序結合,讓機器人達到邊循線邊播放音樂的效果,而且做到完美集成;第3章介紹超聲避障機器人的制作,重點是超聲波傳感器的距離測量和 Arduino脈沖時間測量函數的應用,并講解智能電子產品設計中要注意的容錯問題,然后完成一個超聲避障漫游機器人的制作;第4章講解超聲跟隨機器人的設計和制作,重點引入P控制器的算法和編程,講解閉環控制的概念和編程實現方法,最后制作出一個反應靈敏的跟隨機器人;第5章介紹紅外遙控機器人的制作,重點講解紅外遙控編碼和解碼,了解紅外編碼協議和解碼程序的編寫方法,最后制作出一個紅外遙控機器人;第6章將第2 ~ 5 章的功能集成,制作出一個人的制作競賽為目標,結合硬件模塊和軟件編程,循序漸進地講解每個模塊所需由紅外遙控器控制的同時具備四種工作模式的教娛機器人產品,重點講解如何利用 Arduino的中斷功能將各個功能模塊完美集成到一起,同時結合產品開發過程,按照構思、設計、實現和操作四個步驟來講解具體產品的開發流程;第7章結合紅外測距傳感器的應用,講解模擬量和數字量的概念及模數轉換技術,并將其應用到紅外測距傳感器,制作紅外云臺漫游機器人;第8 ~ 10章結合中國教育機器人大賽項目,在原有教娛機器人的基礎上進行改造和拓展,制作擂臺機器人、智能搬運機器人和滅火機器人,重點介紹競賽規則、競賽策略的編程和完整競賽程序的設計與實現;附錄A整理了本書所需用到的各種器材名稱和規格,以及Arduino機器人的分解組裝圖;附錄B將本書所用到的Arduino函數庫進行分類整理;附錄 C介紹了中國教育機器人大賽的背景和情況。
由于機器人屬于跨學科的領域,必須掌握多個學科的知識。本書雖涉及多個學科,但都以淺顯易懂的語言講解,沒有涉及太深的內容。根據讀者情況的不同,本書的閱讀方式也不同。如果讀者完全沒有接觸過單片機和軟件開發,建議先學完本書配套的入門教程。如果讀者已經有了一定的Arduino開發經驗或者學過 Arduino機器人制作和編程入門教程,可以直接跳過第1章,從第2章開始學習。本書適合 12歲以上的中學生和任何想自主學習Arduino機器人制作的成年人,也可以作為機器人學院第一門機器人制作課或者工程實踐課。
致謝
首先要感謝本書的策劃秦志強博士,感謝他親自設計了本書的內容并編寫了所有核心章節。
其次要感謝全童科教的產品事業部提供了本書所需的所有案例和代碼。
最后要感謝中科樂的高級課程講師團隊和學員朋友們,感謝他們肯花費時間和精力閱讀本書并提供學習體驗。
由于時間有限,書中難免存在疏漏與錯誤之處,敬請廣大讀者批評指正。
希望有更多志同道合的人能加入到機器人的制作、編程和競賽中來!
秦志強,男,華中科技大學與香港科技大學聯合培養博士,上海交通大學博士后,高級工程師,鷗鵬機器人、中科樂活動中心創始人,中國教育機器人大賽策劃人,著名的教育專家,長期從事教育機器人的教育和研究工作,著作豐富,其中有多部獲評十二五國家規劃教材。