來製作一個能精確執行指令和自主行動的機器人吧!
介紹如何用Arduino製作二輪及四輪機器人,包括馬達、感測器、移動平臺與Arduino線路組裝等。
介紹如何安裝Arduino、上傳程式碼控制機器人的速度和方向,讓機器人具備循跡和偵測障礙物的功能。
介紹多種感測器及遙控功能。
以前要製作能夠感知並與環境互動的機器人需要相當高的技巧,但是Arduino的出現讓一切都變得非常簡單。透過本書和Arduino的軟硬體開發環境,你可以學習到如何製作和用程式控制機器人,讓它行走、感測周遭並完成各種任務。只要你有一點點程式的概念和對電子的濃厚興趣就可以開始製作書中的專題。
閱讀本書你將可以了解:
★機器人的移動、偵測障礙物、感測器和控制相關概念
★如何用Arduino製作二輪及四輪機器人
★用馬達擴充版、感測器和DC直流馬達控制機器人
★了解距離感測器、紅外線感測器和遙控裝置的用法
★如何撰寫可讓機器人探索環境的程式碼
作者簡介:
邁克爾‧馬格里斯 Michael Margolis
邁克爾‧馬格里斯是開發和提供軟硬體互動運算領域的技術專家。他擁有超過30年擔任Sony、Microsoft和貝爾實驗室(Lucent/Bell Labs)高階管理員的經驗。另外他也參與Arduino 1.0中函式庫及核心軟體的開發。
譯者簡介:
劉允中
臺灣人,臺灣大學心理學系研究生,興趣為語言與認知神經科學。喜歡旅行、閱讀、聽音樂、唱歌,現為兼職譯者。
章節試閱
前言
製作一個機器人並使它能夠感應周遭的環境,是對Arduino的知識全面升級的極佳機會!在撰寫本書的時候,我充分地揮灑對創作的熱情以及對電子材料、機器人和微控制器的知識,在此,我誠摯地希望你在製作或改良機器人的時候,也和我在寫書的時候一樣充滿樂趣。
Arduino其實就是一系列的微控制器(也就是微型電腦)加上軟體開發環境,讓你可以輕鬆的撰寫程式(我們稱為草稿碼(sketch)),使它可以和外在世界互動,透過加工改造,Arduino就能以各種不同方式讓你的機器人去感知周遭的世界。
本書內容能幫助你打造一個機器人,使它能完成各種任務,本書會介紹兩種目前最流行的移動平臺製作方式,包括二輪機器人(加上一個萬向輪來保持平衡)以及四輪機器人(包含馬達)。如果你希望加快機器人組裝的進度,可以選擇本書提到的其中一種套件包,應該可以為你省去不少時間,快速進入機器人專題創意的部分。但是,無論你偏好自己設計機器人平臺,或者使用現成的套件包來製作機器人,你都會發現本書的內容對於製作有趣的機器人專題非常有用!
這本書是為誰而寫的?
這本書主要針對想要探索以下主題的讀者而寫,內容包含:移動、障礙物偵測、感測器、遙控等實體運算的概念,使得讀者了解這些概念如何能應用於機器人的製作、延伸、改良。如果你想要了解更多,可以參考本章〈延伸閱讀〉,內有延伸閱讀清單,相信這會對那些在電子零件、程式編寫領域涉獵較少的讀者有所幫助。
本書架構
本書涵蓋豐富的內容,包括許多不同的機器人功能,不管是硬體或軟體,都會循序漸進的從基礎談起,也就是說,下一個章節可能會用到前一個章節談過的概念。在第6章〈機器人基礎功能測試〉與之後的延伸章節中會介紹最簡單的「Hello Robot」草稿碼。每一個章節都會介紹一些新的草稿碼,並為機器人加上一些新的功能。如果你對於機器人已經有基本的認識,那麼你可以直接跳到感興趣的章節。本書的所有完整草稿碼都可以在網路上下載,然而,從書中可以更深入學習本書提及的技術,因為每一個草稿碼都將使機器人學會一個更加複雜的任務。
值得一提的是,本書的草稿碼有用到許多功能模組(Module),可以將這些模組儲存成Arduino IDE的標籤(詳見第5章),前面章節提過的模組會在後面的章節再次使用,但為了避免相同的草稿碼一再出現,所以後面的章節只會再列出有更動過的草稿碼。一開始我們使用的「helloRobot」草稿碼,接下來,我們會將程式定義部分放到robotDefines.ino這個模組,反射性感測器程式則會放到IrSensors.ino模組中,這個時候,草稿碼會改名為「myRobot」,這些模組在草稿碼中會以標籤的方式呈現。然後,在本書接下來的章節會陸續加入新的功能,這些功能模組都會放入新的標籤中。
本書所有的草稿碼都可以預先下載,如果想要先對整個程式架構有初步的了解,可以先把所有草稿碼下載下來。
第1章〈淺談機器人製作〉主要是簡單介紹機器人的硬體與軟體特色。
第2章〈線路組裝〉主要在描述製作機器人所需要的電子材料。
第3章〈製作二輪移動平臺〉則是在談如何組裝二輪式行動平臺(2WD)。
第4章〈製作四輪移動平臺〉自然就是針對四輪式行動平臺組裝作說明(4WD)。
第5章〈Arduino上手指南〉內容主要在介紹Arduino整合式軟體開發環境(IDE),並說明軟體安裝、硬體組裝的方式。
第6章〈機器人基礎功能測試〉會解釋第一個用來測試機器人的機器人草稿碼,值得注意的是,本章節解說的草稿碼會成為其他章節草稿碼的基礎。
第7章〈控制速度與方向〉則將重點放在機器人的動作控制。
第8章〈感測器簡介〉內容主要在介紹2WD與4WD機器人最常使用的感測器。
第9章〈面對邊界與線段〉主要在談反射式感測器的應用,使得你的機器人可以實際去感應周遭的環境,這樣一來,機器人就會有辦法沿著線移動或閃避邊界等。
第10章〈自主運動〉則是在談距離感測器的應用,裝上距離感測器之後,機器人就可以「看見」周遭的環境,並且閃避路上遇到的障礙物。
第11章〈遙控〉主要在描述遙控機器人的方法,包含有線及無線的序列指令以及類似電視的紅外線遙控方式等等。
附錄A〈機器人改良原則〉提供一些訣竅和方法來打造更多複雜的機器人專題。
附錄B〈使用其他硬體裝置〉則是在談動作控制的其他方式。
附錄C〈機器人除錯指南〉這一章會談到軟硬體出現問題時可能的偵錯方式。
附錄D〈電源供應〉這一章會談到機器人電源的其他選項。
附錄E〈程式結構〉這一章主要在介紹草稿碼中常用的程式結構,對這方面內容較不熟悉的Arduino使用者可以參考。
附錄F〈Arduino針腳與計時器的應用〉則總結了所有的針腳功能以及其他機器人會用到的Arduino資源。
前言
製作一個機器人並使它能夠感應周遭的環境,是對Arduino的知識全面升級的極佳機會!在撰寫本書的時候,我充分地揮灑對創作的熱情以及對電子材料、機器人和微控制器的知識,在此,我誠摯地希望你在製作或改良機器人的時候,也和我在寫書的時候一樣充滿樂趣。
Arduino其實就是一系列的微控制器(也就是微型電腦)加上軟體開發環境,讓你可以輕鬆的撰寫程式(我們稱為草稿碼(sketch)),使它可以和外在世界互動,透過加工改造,Arduino就能以各種不同方式讓你的機器人去感知周遭的世界。
本書內容能幫助你打造一個機器人,使它能完成...
目錄
第1章:淺談機器人製作
為什麼要做機器人?
機器人的移動方式
使用工具
第2章:線路組裝
硬體需求
製作方式
第3章:製作二輪移動平臺
硬體需求
零件組裝
安裝紅外線感測器
下一步
第4章:製作四輪移動平臺
硬體需求
零件組裝
安裝紅外線感測器
下一步
第5章:Arduino上手指南
硬體需求
Arduino軟體
Arduino硬體
安裝整合開發環境(IDE)
連接Arduino
使用整合開發環境
上傳並執行「閃爍」草稿碼
使用標籤
安裝外部函式庫
第6章:機器人基礎功能測試
硬體需求
軟體需求
本章使用的草稿碼
載入並執行helloRobot.ino草稿碼
草稿碼介紹
疑難排解
讓草稿碼更容易改良
第7章:控制速度與方向
硬體需求
本章使用的草稿碼
馬達種類
馬達控制器
馬達速度控制
第8章:感測器簡介
硬體需求
軟體需求
反射型紅外線感測器
聲納距離感測器
Maxbotix EZ1聲納距離感測器
Sharp紅外線距離感測器
近距離感測器
聲音感測器
Arduino錦囊妙計
第9章:面對邊界與線段
硬體需求
本章使用的草稿碼
Look 程式碼
邊緣偵測
循跡
草稿碼資料顯示
第10章:自主運動
硬體需求
本章使用的草稿碼
安裝Ping距離感測器
讓機器人四處移動
加入掃描功能
第11章:遙控
硬體需求
本章使用的草稿碼
遙控程式碼設計
用電視紅外線遙控器操控機器人
第1章:淺談機器人製作
為什麼要做機器人?
機器人的移動方式
使用工具
第2章:線路組裝
硬體需求
製作方式
第3章:製作二輪移動平臺
硬體需求
零件組裝
安裝紅外線感測器
下一步
第4章:製作四輪移動平臺
硬體需求
零件組裝
安裝紅外線感測器
下一步
第5章:Arduino上手指南
硬體需求
Arduino軟體
Arduino硬體
安裝整合開發環境(IDE)
連接Arduino
使用整合開發環境
上傳並執行「閃爍」草稿碼
使用標籤
安裝外部函式庫
第6章:機器人基礎功能測試
硬體需求
軟體需求
本章使用的草稿碼
載入並執...
購物須知
退換貨說明:
會員均享有10天的商品猶豫期(含例假日)。若您欲辦理退換貨,請於取得該商品10日內寄回。
辦理退換貨時,請保持商品全新狀態與完整包裝(商品本身、贈品、贈票、附件、內外包裝、保證書、隨貨文件等)一併寄回。若退回商品無法回復原狀者,可能影響退換貨權利之行使或須負擔部分費用。
訂購本商品前請務必詳閱退換貨原則。