內容簡介
交互設計在國內還屬於發展的初期階段,屬於一個綜閤性相對較強的領域,是今後技術與藝術相結閤的一個重要趨勢。《完美圖解Arduino互動設計入門》主要針對沒有電子電路基礎,但又對微控製器、電子電路、互動裝置等感興趣的讀者,以輕鬆幽默的方式講解Arduino及其相關的各種電子元件。書中配有一些實際的製作項目,具有較高的實用價值。另外,該書在講述基本電子電路和程序設計概念時,精心製作瞭大量的手繪圖,讓讀者能夠很快地理解這些概念。
內頁插圖
目錄
CHAPTER 01 認識Arduino
1-1 │ Arduino 微電腦闆
1-2 │ Arduino 的相關軟件
1-3 │ Arduino 開發環境安裝
動手做1-1 執行與設置Arduino 開發環境
1-4 │下載“LED 閃爍”示例程序
CHAPTER 02 認識電子零件、工具與基礎焊接
2-1 │電壓、電流與接地
2-2 │微電腦闆的電源適配器
2-3 │電阻
2-4 │電容
2-5 │二極管
2-6 │發光二極管(LED)
2-7 │看懂電路圖
2-8 │電子工作必備的測量工具:萬用錶
動手做2-1 測量電阻、電容、電壓和電流
2-9 │用麵包闆組裝實驗電路
CHAPTER 03 Arduino 互動程序設計入門
3-1 │ Arduino 程序設計基礎
動手做3-1 寫一個LED 閃爍控製程序
3-2 │用“變量”來管理代碼
3-3 │認識數字係統
3-4 │不變的“常量”
CHAPTER 04 開關電路與LED 流水燈效果
4-1 │認識開關
4-2 │讀取數字輸入值
4-3 │改變程序流程的if 條件式
動手做4-1 用麵包闆組裝開關電路
動手做4-2 LED 流水燈示例一
4-4 │編寫循環程序
動手做4-3 流水燈示例二:使用for 循環
4-5 │認識數組
動手做4-4 流水燈示例三:使用數組變量
4-6 │使用端口操作指令與位移運算符製作流水燈程序
動手做4-5 流水燈示例四:使用位移運算符
CHAPTER 05 串口通信
5-1 │並行與串行通信簡介
5-2 │處理文字信息:認識字符與字符串數據類型
5-3 │從Arduino 傳遞串行信息給電腦
5-4 │從Arduino 接收串口數據
動手做5-2 從串口控製LED 開關
5-5 │ switch case 控製結構
CHAPTER 06 模擬信號處理
6-1 │讀取模擬值
動手做6-1 從串口讀取“模擬輸入”值
6-2 │認識光敏電阻與分壓電路
動手做6-2 使用光敏電阻製作小夜燈
6-3 │壓力傳感器與彎麯傳感器
6-4 │電容式麥剋風與運算放大器
動手做6-3 自製麥剋風聲音放大器(拍手控製開關)
動手做6-4 拍手控製開關改良版
CHAPTER 07 七段LED 數碼管
7-1 │數碼管
動手做7-1 連接LED 數碼管與Arduino 闆
7-2 │使用集成電路簡化電路
動手做7-2 串接數碼管
CHAPTER 08 LED 點陣屏與SPI 接口控製
8-1 │建立自定義函數
動手做8-1 建立自定義函數
8-2 │認識變量的作用域
8-3 │ LED 點陣屏簡介
8-4 │認識SPI 接口與MAX7219
動手做8-2 組裝LED 點陣屏電路
8-5 │顯示單一矩陣圖像
動手做8-3 在矩陣LED 上顯示音符圖像
動手做8-4 在串口監視器輸齣矩形排列的星號
8-6 │ LED 點陣屏動畫與多維數組程序設計
動手做8-5 在矩陣LED 上顯示動態圖像
8-7 │ LED 點陣屏流水燈
動手做8-6 LED 點陣屏逐字滾動效果程序
8-8 │將常數保存在“程序內存”裏
CHAPTER 09 LCD 液晶屏+溫濕度傳感器+ 超聲波傳感器
9-1 │認識文本型LCD 顯示模塊
動手做9-1 在LCD 液晶屏上顯示一段文本
動手做9-2 在LCD 上顯示自定義字符符號
動手做9-3 序列連接LCD 顯示模塊
9-2 │數字溫濕度傳感器
動手做9-4 製作數字溫濕度顯示器
9-3 │認識超聲波
動手做9-5 使用超聲波傳感器製作數字量尺
CHAPTER 10 變頻控製LED 燈光和電機
10-1 │調節電壓變化
10-2 │模擬輸齣(PWM)指令和默認頻率
動手做10-1 調光器
動手做10-2 隨機數字與燭光效果
動手做10-3 通過串口調整燈光亮度
動手做10-4 使用atoi( ) 轉換字符串成數字
10-3 │認識直流電機
10-4 │齒輪箱∕滑輪組和動力模型玩具
10-5 │認識晶體管元器件
動手做10-5 晶體管電機控製與調速器
10-6 │控製電機正反轉的H 橋式電機控製電路
動手做10-6 自動迴避障礙物的自走車
CHAPTER 11 使用Wii 遊戲杆控製機械手臂
11-1 │認識舵機
動手做11-1 自製機械手臂
11-2 │認識Wii 左手把的通信接口:I2C
動手做11-2 通過I2C 接口串聯兩個Arduino 闆
動手做11-3 在I2C 接口下載發送整數數據
動手做11-4 讀取Wii 左手把的遊戲杆、按鈕與加速度計值
動手做11-5 使用Wii 左手把控製機械手臂
11-3 │改造舵機成連續360°鏇轉
CHAPTER 12 紅外綫遙控與間隔拍攝控製器
12-1 │認識紅外綫
動手做12-1 監測人體移動
12-2 │紅外綫遙控
動手做12-2 使用IRremote 擴展庫解析紅外綫遙控值
動手做12-3 使用紅外綫遙控器控製舵機
動手做12-4 從Arduino 發射紅外綫遙控電器
12-3 │運用紅外綫遙控照相機
動手做12-5 遙控照相機間隔拍攝影片
CHAPTER 13 製作光電子琴與MIDI 電子鼓
13-1 │發音體和聲音
13-2 │使用tone() 函數發齣聲音
動手做13-1 演奏一段馬裏奧鏇律
13-3 │使用#define 替換數據
13-4 │認識反射型與遮光型光電開關
動手做13-2 光電子琴製作
13-5 │認識MIDI
13-6 │ MIDI 信息格式
動手做13-3 通過Arduino 演奏MIDI 音樂
動手做13-4 通過“虛擬MIDI”接口演奏音樂
動手做13-5 製作MIDI 電子鼓
CHAPTER 14 手機藍牙遙控機器人製作
14-1 │電波、頻段和無綫傳輸簡介
14-2 │認識藍牙(Bluetooth)
動手做14-1 使用軟件串口程序連接Arduino 與藍牙模塊
動手做14-2 用Android 手機藍牙遙控機器人
CHAPTER 15 網絡與HTML 網頁基礎+嵌入式網站服務器製作
15-1 │認識網絡與IP 地址
15-2 │域名、URL 網址和傳輸協議
動手做15-1 認識網頁與HTML
15-3 │網絡的聯機標準與封包
15-4 │認識HTTP 協議
15-5 │連接以太(Ethernet)網卡建立Arduino 微型網站服務器
動手做15-2 建立微型網站服務器
CHAPTER 16 網絡傢電控製
16-1 │使用Webduino 擴展庫建立微型網站
16-2 │定義錯誤信息網頁與超鏈接設置
動手做16-1 監控遠程的溫濕度值
16-3 │傳遞數據給網站服務器
動手做16-2 建立網頁錶單
16-4 │認識傳遞數據的GET/POST 方法和查詢字符串
動手做16-3 建立接收POST 錶單數據的自定義命令
動手做16-4 從瀏覽器控製遠程的燈光開關
16-5 │控製傢電開關
動手做16-5 使用繼電器控製傢電開關
CHAPTER 17 Arduino + Flash 集成互動應用
17-1 │ Arduino + Flash = 多元互動媒體
動手做17-1 測試Arduino 與Flash 聯機
動手做17-2 “接電子零件”互動遊戲
17-2 │認識Arduino 的String(字符串)擴展庫
動手做17-3 Flash 燈光開關和調光器
17-3 │使用Firmata 在Flash 和Arduino 之間傳遞數據
CHAPTER 18 RFID 無綫識彆設備與問答遊戲製作
18-1 │認識條碼與RFID
18-2 │ RFID 模塊規格介紹與標簽讀取實驗
動手做18-1 讀取RFID 標簽
18-3 │存儲與比對RFID 編碼
動手做18-2 使用RFID 控製開關
動手做18-3 使用RFID 進行Flash 問答遊戲
APPENDIX A 認識焊接工具:焊锡、電烙鐵及焊接助手
A-1 │焊接工具
動手做A-1 基礎焊接練習
動手做A-2 焊接鰐魚夾
A-2 │印刷電路闆及萬用闆
動手做A-3 焊接電路闆
動手做A-4 活用USB 電源適配器
APPENDIX B 燒寫ATmega 微處理器的引導程序(boot loader)
動手做B-1 使用Arduino 控製闆編程ATmega328 固件
動手做B-2 用麵包闆組裝Arduino 微電腦實驗闆
APPENDIX C 改造3C 小玩意的控製鈕
C-1 │認識光電耦閤元器件
APPENDIX D 中斷處理與交流電調光器製作
D-1 │輪詢VS 中斷
D-2 │調整交流電的輸齣功率
D-3 │定時激發運行的 TimerOne 擴展庫
動手做D-1 交流電調光器電路
INDEX 索引 索引
前言/序言
本書的目標是讓高中以上,沒有電子電路基礎,對微電腦、電子DIY及交互裝置有興趣的人士,也能輕鬆閱讀,進而順利使用ArdtJino控製闆完成互動應用。因此,實驗用到的電子和程序思想,皆以手繪圖解的方式說明。
書中涉及某些較深入的概念,或者和“動手做”相關,但是在實驗過程中沒有用到的相關背景知識,都安排在各章節的“充電時間”單元(該單元的左上角有一個電池充電符號),像第4章4—1 1頁“啓用微控器內部的上拉電阻”,讀者可以日後再閱讀。啓用微控製器內部的上拉電阻
ATmeg328微控製器的數字引腳其實有內建上拉電阻,根據AtnleI公司的技術文件指齣,此上拉電阻值介於20—50kQ之間。但它預設並沒有啓用,假設要啓用第8腳的上拉電阻,請執行下麵兩行代碼,先將該腳設置成輸入(IMPUT),再通過digitalWnrite0啓用上拉電阻(此處的digitalWrite0並非代錶寫入)。
在撰寫本書的過程中,得到許多親朋好友的寶貴意見,筆者也依照這些想法和指正,逐一調整敘述方式,讓圖文內容更清楚易懂。此外,書末也附上按主題分類的關鍵字索引,方便讀者查閱,如C程式語言的語法,可瀏覽“程式設計基礎”分類。
Arduino控製闆有許多不同的版本,目前的主流是UNO,因此本書的Arduino控製闆插圖,全數采用UNO與Leonardo。本書內容等同於繁體中文第二版,非常感謝科學齣版社副編審張濮的賞識,以及本書編輯王哲辛勤地校閱並修訂簡體的專業術語,讓本書得以順利齣版。
現在,準備好Arduino控製闆、打開電腦,讓Arduino從你的手中展現齣最與眾不同的驚艷吧!
探索數字世界的無限可能:開啓你的互動設計之旅 在飛速發展的數字時代,我們周圍的一切都變得越來越智能,越來越具有互動性。從你手中的智能手機,到傢中的智能傢電,再到各種新穎的創意裝置,背後都離不開精妙的互動設計。你是否曾好奇,那些能夠響應你觸摸、聲音甚至動作的設備是如何實現的?你是否渴望親手創造齣屬於自己的、充滿趣味和創意的互動體驗? 現在,你的機會來瞭。本書並非一本簡單的技術教程,而是一扇通往充滿無限創意與可能性的數字世界的大門。它將帶你踏上一段精彩紛呈的互動設計探索之旅,讓你在玩樂中學習,在實踐中成長,最終掌握將你的奇思妙想轉化為真實可觸的互動作品的秘訣。 誰適閤閱讀這本書? 這本書麵嚮所有對互動設計充滿好奇、渴望將創意付諸實踐的朋友們。無論你是: 創意迸發的學生: 想要為你的課程項目增添亮點,或者為畢業設計尋找靈感?本書將為你提供堅實的基礎和豐富的實踐經驗。 充滿熱情的創客: 喜歡動手製作,熱衷於將想法變為現實的你,一定會在書中找到讓你興奮不已的工具和方法。 對新技術著迷的愛好者: 希望瞭解智能設備如何工作,並渴望參與到未來科技創造中的你,本書將為你揭示前沿技術的奧秘。 渴望跨界學習的專業人士: 無論你是設計師、藝術傢、工程師,還是任何希望拓展技能邊界的朋友,本書都能為你打開新的視角。 充滿好奇心的初學者: 即使你從未接觸過編程或電子技術,本書也將以最直觀、最易懂的方式引領你入門。 本書將為你帶來什麼? 本書的核心在於“互動”二字。我們將聚焦於如何創造齣能夠與用戶、環境以及其他設備進行智能響應的體驗。你將學習到: 理解互動設計的核心理念: 什麼是好的互動設計?如何讓用戶在使用産品時感到愉悅、高效和直觀?我們將從理論層麵剖析互動設計的本質,並結閤大量生動的案例進行講解。 掌握核心技術與工具: 互動設計離不開技術支撐。本書將深入淺齣地介紹實現互動設計所需的關鍵技術和工具。你將不再對復雜的電子元件和代碼感到畏懼,而是能夠將其視為實現創意的強大夥伴。 學習從構思到實現的完整流程: 很多時候,創意卡殼並不是因為缺乏靈感,而是不知道如何將靈感落地。本書將為你梳理從最初的創意萌芽,到詳細的設計構思,再到具體的原型製作和最終的實現,一個完整的互動設計項目流程。你將學會如何將抽象的概念轉化為可執行的步驟。 激發無限的創意靈感: 互動設計的魅力在於它的無限可能性。本書將通過豐富的案例研究和實踐項目,為你打開想象的翅膀。你將接觸到各種前沿的互動形式,例如: 響應式界麵設計: 探索如何讓你的數字界麵能夠根據用戶的操作、設備的狀態甚至周圍環境而實時變化,提供更加個性化和智能的體驗。 物理計算與實體互動: 學習如何將傳感器、執行器等電子元件與代碼結閤,創造齣能夠感知世界並做齣響應的物理裝置。例如,一個會根據你情緒改變顔色的燈光,一個能和你玩耍的智能玩具,或者一個能監測環境並發齣預警的智能傢居設備。 創意編程與數據可視化: 瞭解如何利用編程語言將數據轉化為可視化的動態圖形,或者創造齣能夠根據復雜算法而産生獨特互動效果的藝術裝置。 聲音、光影與空間互動: 探索如何利用聲音、光影等元素與用戶和空間進行互動,營造齣沉浸式的體驗。例如,一個能與環境聲音互動的燈光秀,或者一個能根據你的走動而改變聲音的裝置。 人機協作與智能係統: 學習如何設計更具人性化的交互方式,讓機器更好地理解和滿足人類的需求,實現更高效、更友好的協作。 本書的獨特之處 本書最大的特色在於其“實踐導嚮”和“深度解構”。我們不僅僅告訴你“怎麼做”,更重要的是讓你理解“為什麼這麼做”。 理論與實踐的完美結閤: 我們深知,脫離實際的理論是空洞的,而隻有實踐而沒有理論指導則容易陷入迷茫。本書將理論知識巧妙地融入實踐項目之中,讓你在動手操作的過程中,深刻理解背後的原理。 由淺入深的教學體係: 無論你是零基礎還是有一定基礎,都能找到適閤自己的學習路徑。我們會從最基礎的概念講起,逐步深入到更復雜的應用,確保每一個讀者都能循序漸進地掌握知識。 豐富的案例與項目解析: 大量的真實案例分析將幫助你理解互動設計的應用場景和落地方法。書中精心設計的實踐項目,將讓你有機會親手完成一件件充滿創意的互動作品,從零開始體驗設計、開發到最終實現的完整過程。 強調創新思維的培養: 互動設計的核心是創意。本書將通過引導性的提問、啓發性的案例和開放式的項目設計,鼓勵你跳齣思維定勢,大膽嘗試,形成自己獨特的創新風格。 踏上這段精彩的旅程 互動設計是一個充滿活力和無限可能的領域,它正在深刻地改變著我們的生活方式和思維模式。掌握互動設計的技能,不僅意味著掌握一項前沿的技術,更意味著擁抱一種創新、創造的思維方式。 準備好迎接挑戰瞭嗎?翻開本書,你將走進一個全新的世界,在這裏,你不再是被動的使用者,而是主動的創造者。你將有機會將你的每一個奇思妙想,都變成能夠打動人心的互動體驗。 彆再猶豫,讓我們一起踏上這段精彩絕倫的互動設計探索之旅,用你的雙手和智慧,點亮數字世界的無限可能!