相關主題
商品描述
本書是筆者開發Arduino及指導本科生參加全國教育機器人大賽的經驗總結,包括Arduino驅動和開發環境、語法規則,程序結構和基本函數,紅外、溫度、濕度、人體紅外感應、超聲波測距等多種傳感器的應用及編程實例,直流電動機、舵機、步進電動機的驅動控制及顯示模塊、無線模塊的應用等硬件資源,智能搬運小車、智能氣象站、飛行器、六足機器人等設計實例。本書結構清晰,內容完善,適合初學者學習,也可作為創客/極客、電子愛好者的培訓和參考用書。
目錄大綱
第1章 初識Arduino
1.1 什麼是Arduino
1.2 為何要使用Arduino
1.3 Arduino家族
1.4 Arduino IDE
1.4.1 選擇開發板
1.4.2 選擇接口
1.4.3 編寫程序代碼
1.4.4 保存程序代碼
1.4.5 程序代碼的編譯和燒錄
1.5 Arduino資源
第2章 Arduino程序設計基礎
2.1 Arduino語言
2.2 基本數據類型
2.2.1 整型
2.2.2 浮點型
2.2.3 布爾型
2.2.4 字符型
2.2.5 字節型
2.3 數組和字符串
2.3.1 數組
2.3.2 字符串
2.4 運算符
2.4.1 賦值運算符
2.4.2 算術運算符
2.4.3 關系運算符
2.4.4 邏輯運算符
2.4.5 遞增/減運算符
2.5 程序結構
2.5.1 順序結構
2.5.2 選擇結構
2.5.3 循環結構
第3章 Arduino基本函數
3.1 數字接口函數
3.1.1 pinMode函數
3.1.2 digitalRead函數
3.1.3 digitalWrite函數
3.2 模擬接口函數
3.2.1 模擬輸入
3.2.2 PWM模擬輸出
3.3 數學函數
3.4 時間函數
3.4.1 millis()
3.4.2 delay(ms)
3.4.3 delayMicroseconds(value)
3.5 隨機函數
3.5.1 random(howsmall,howbig)
3.5.2 randomSeed(seed)
3.6 位操作函數
3.6.1 bitRead(val,num)
3.6.2 bitWrite(val,num1,num2)
3.7 串口通信函數
3.7.1 Serial.begin(speed)
3.7.2 Serial.available()
3.7.3 Serial.read()
3.7.4 Serial.write()
3.7.5 Serial.print()和Serial.println()
3.7.6 Serial.end()
3.8 中斷函數
3.8.1 中斷的概念
3.8.2 中斷的分類
3.8.3 中斷的使用
3.9 SPI接口函數
3.9.1 概述
3.9.2 SPI接口的數據傳輸
3.9.3 Arduino SPI接口
3.9.4 SPI類及其成員函數
第4章 Arduino硬件資源
4.1 電子元器件及開發板的擴展
4.1.1 電子元器件
4.1.2 開發板的擴展
4.2 數字I/O接口
4.3 模擬I/O接口
4.4 PWM接口
4.5 串口通信接口
4.6 中斷接口
第5章 傳感器模塊
5.1 紅外傳感器模塊
5.1.1 紅外避障傳感器
5.1.2 紅外尋線傳感器
5.1.3 紅外測距傳感器
5.1.4 紅外遙控傳感器
5.2 DHT11數字溫/濕度傳感器模塊
5.3 人體紅外感應模塊
5.4 超聲波測距傳感器模塊
5.4.1 HC-SR04型超聲波測距傳感器模塊
5.4.2 利用串口輸出超聲波的測距實例
第6章 電動機驅動控制
6.1 直流電動機驅動控制
6.1.1 有刷直流電動機(永久磁鐵型)
6.1.2 無刷直流電動機
6.1.3 H橋控制電路
6.1.4 程序設計
6.2 舵機驅動控制
6.2.1 舵機的控制信號和接線方式
6.2.2 舵機的控制程序
6.3 步進電動機驅動控制
6.3.1 步進電動機的主要技術參數
6.3.2 步進電動機的接線
6.3.3 步進電動機的驅動板
6.3.4 步進電動機的程序設計
第7章 顯示模塊
7.1 LCD1602顯示模塊
7.1.1 常用工作指令
7.1.2 硬件連接
7.1.3 程序調試
7.2 MINILCD12864顯示模塊
7.2.1 通信方式
7.2.2 使用u8glib進行驅動
第8章 無線模塊
8.1 HC-06藍牙模塊
8.1.1 HC-06藍牙模塊與計算機之間進行通信
8.1.2 Arduino UNO開發板通過HC-06藍牙模塊與手機連接
8.2 ESP8266模塊
8.2.1 ESP8266模塊的介紹
8.2.2 ESP8266模塊的調試
8.2.3 Arduino UNO開發板結合ESP8266模塊訪問遠程服務器
第9章 Arduino智能搬運小車的設計
9.1 總體設計方案
9.1.1 智能搬運小車的結構
9.1.2 智能搬運小車的功能
9.2 硬件設計
9.2.1 伺服電動機
9.2.2 QTI尋跡傳感器
9.2.3 超聲波傳感器
9.2.4 顏色識別傳感器
9.3 軟件設計
9.3.1 軟件總體設計
9.3.2 顏色識別傳感器的尋跡算法
9.3.3 超聲波傳感器定位算法
9.3.4 白平衡和顏色識別算法
9.3.5 搬運過程
9.4 設計心得
第10章 智能氣象站的設計
10.1 總體設計方案
10.1.1 主要功能
10.1.2 工作原理
10.2 硬件設計
10.2.1 主控模塊
10.2.2 DHT11數字溫/濕度傳感器
10.2.3 角位移傳感器
10.2.4 BMP085壓力傳感器
10.2.5 BH1750FVI光強度傳感器
10.2.6 硬件連接
10.3 軟件設計
10.3.1 總體流程圖
10.3.2 DHT11數字溫/濕度傳感器采集溫/濕數據
10.3.3 BH1750FVI光強度傳感器采集光強度數據
10.3.4 角位移傳感器采集風向數據
10.3.5 BMP085壓力傳感器采集氣壓數據
10.3.6 本地存儲數據
第11章 Arduino飛行器的設計
11.1 總體設計方案
11.1.1 主要功能
11.1.2 工作原理
11.1.3 實現方案
11.2 硬件設計
11.2.1 機架
11.2.2 電動機
11.2.3 電子調速器
11.2.4 螺旋槳
11.2.5 電池
11.2.6 飛行控制系統
11.2.7 遙控器
11.3 組裝調試
11.3.1 選擇導線並預穿導線
11.3.2 安裝無刷空心杯電動機
11.3.3 安裝電子調速器
11.3.4 安裝飛行控制系統
11.3.5 QQ飛行控制系統與Arduino Mega 2560主控模塊的連接
11.4 軟件設計
第12章 Arduino六足機器人的設計
12.1 總體設計方案
12.1.1 主要功能
12.1.2 肢體結構
12.1.3 控制系統
12.1.4 步態分析
12.2 硬件及其組裝
12.2.1 Arduino主控制板
12.2.2 舵機
12.2.3 舵機控制板
12.2.4 遙控器
12.2.5 組裝
12.2.6 PS2遙控器的接收器與舵機控制器的連接
12.2.7 六足機器人與Arduino主控制板的連接
12.3 軟件設計
12.3.1 舵機上位機軟件
12.3.2 六足機器人超聲波避障
12.3.3 六足機器人穿越障礙物
12.3.4 六足機器人紅外遙控
12.3.5 六足機器人紅外防跌落
參考文獻