Python樹(shù)莓派編程(原書(shū)第2版)
定 價(jià):89 元
叢書(shū)名:華章程序員書(shū)庫(kù)
當(dāng)前圖書(shū)已被 20 所學(xué)校薦購(gòu)過(guò)!
查看明細(xì)
- 作者:[美]沃爾弗拉姆·多納特(Wolfram Donat)
- 出版時(shí)間:2021/12/1
- ISBN:9787111695967
- 出 版 社:機(jī)械工業(yè)出版社
- 中圖法分類:TP311.561
- 頁(yè)碼:
- 紙張:膠版紙
- 版次:
- 開(kāi)本:16開(kāi)
本書(shū)展示如何在你新買的樹(shù)莓派上通過(guò)編程實(shí)現(xiàn)一個(gè)網(wǎng)絡(luò)機(jī)器人、氣象站,或是媒體服務(wù)器等功能。通過(guò)一些簡(jiǎn)單的實(shí)例和有趣的項(xiàng)目,你能學(xué)到如何在樹(shù)莓派上通過(guò)Python進(jìn)行編程。你將會(huì)學(xué)到如何創(chuàng)建一系列好玩且實(shí)用的項(xiàng)目,從可以搜索并下載文件的網(wǎng)絡(luò)機(jī)器人,到一個(gè)可以將你的寵物逼瘋的小玩具。甚至,你還會(huì)學(xué)到將樹(shù)莓派與Arduino或是Gertboard相結(jié)合的方法。新版本已經(jīng)完全更新了新板的特性。你將學(xué)習(xí)如何在樹(shù)莓派上使用Python編程,并提供實(shí)際的示例和有趣的項(xiàng)目。
很難相信從我寫(xiě)這本書(shū)的第1版到現(xiàn)在已經(jīng)過(guò)去了四年。2014年,市面上有了樹(shù)莓派的一個(gè)版本,當(dāng)時(shí)的主板動(dòng)力相對(duì)不足,只有單核ARM處理器和20個(gè)GPIO引腳。我很高興能訂購(gòu)我的個(gè)樹(shù)莓派,但實(shí)際上我必須先進(jìn)入等待名單才能趕上第二批發(fā)貨。
每當(dāng)你想要改變時(shí),就會(huì)有人推出一款單板電腦(SBC),它試圖吸引樹(shù)莓派的主要業(yè)余愛(ài)好者和創(chuàng)客的關(guān)注,那些人正準(zhǔn)備從Arduino升級(jí)為更強(qiáng)大的工具。
樹(shù)莓派在競(jìng)爭(zhēng)中勝出,并得以蓬勃發(fā)展,F(xiàn)在有七種樹(shù)莓派模型:1型、2型、2B型、3型、3B型、Zero型和Zero W型。與原始模型相比,3型樹(shù)莓派更強(qiáng)大,它的四核架構(gòu)使其可以執(zhí)行像計(jì)算機(jī)視覺(jué)和機(jī)器學(xué)習(xí)這樣的任務(wù)。與原始模型的頻率700MHz相比,3型的頻率高達(dá)1.5GHz。同時(shí),Zero型和Zero W型的價(jià)位很低(分別為5美元和10美元),讀者經(jīng)常會(huì)問(wèn)我:為什么要用Arduino呢?樹(shù)莓派Zero更便宜!
現(xiàn)在樹(shù)莓派已經(jīng)不是選擇了。根據(jù)你的預(yù)算,有相當(dāng)多的SBC可以用于你想到的項(xiàng)目,從30美元的BeagleBoard到550美元的NVidia Jetson TX2。不過(guò)我還是喜歡樹(shù)莓派,它是我次開(kāi)始玩嵌入式計(jì)算機(jī)時(shí)所使用的主板。它還很便宜,所以當(dāng)它被弄壞時(shí)(我已經(jīng)弄壞過(guò)很多個(gè)了),至少我可以在不破產(chǎn)的情況下替換它,并且它仍然足以應(yīng)付很多事情。
感謝你和我一起讀這本新版書(shū)。如果你是我上一版書(shū)的粉絲,謝謝你長(zhǎng)期以來(lái)的支持。如果你是一個(gè)新讀者和一個(gè)新的樹(shù)莓派使用者,非常歡迎你的加入!
我希望用剩余的篇幅向你介紹一個(gè)令人興奮的項(xiàng)目和一個(gè)計(jì)算的新世界。
前言
引言
致謝
關(guān)于作者
關(guān)于技術(shù)審校
第1章 樹(shù)莓派介紹1
1.1 樹(shù)莓派的歷史2
1.2 探索樹(shù)莓派6
1.2.1 GPIO引腳7
1.2.2 USB和以太網(wǎng)端口7
1.2.3 音頻插孔7
1.2.4 攝像機(jī)插口7
1.2.5 HDMI接口8
1.2.6 電源8
1.2.7 顯示器9
1.2.8 片上系統(tǒng)9
1.2.9 SD卡9
1.2.10 不可見(jiàn)的部分9
1.3 樹(shù)莓派Zero/Zero W10
1.3.1 GPIO10
1.3.2 攝像機(jī)插口10
1.3.3 電源11
1.3.4 USB接口11
1.3.5 HDMI接口11
1.3.6 SD卡 11
1.3.7 片上系統(tǒng)11
1.3.8 不可見(jiàn)的部分12
1.4 樹(shù)莓派與相似設(shè)備之間的對(duì)比12
1.5 樹(shù)莓派入門12
1.6 樹(shù)莓派的硬件需求13
1.6.1 通電13
1.6.2 添加顯示器13
1.6.3 添加USB集線器13
1.7 樹(shù)莓派操作系統(tǒng)14
1.7.1 格式化SD卡15
1.7.2 安裝操作系統(tǒng)15
1.8 連接外圍設(shè)備16
1.9 配置樹(shù)莓派17
1.10 關(guān)閉樹(shù)莓派19
1.11 總結(jié)20
第2章 輕松掌握Linux21
2.1 開(kāi)始使用樹(shù)莓派上的Linux23
2.1.1 Linux文件和文件系統(tǒng)23
2.1.2 Root用戶與sudo24
2.1.3 命令25
2.1.4 練習(xí):在Linux文件系統(tǒng)內(nèi)進(jìn)行導(dǎo)航29
2.1.5 Linux中的shell30
2.1.6 包管理器32
2.2 文本編輯器33
2.2.1 Vim、emacs和nano34
2.2.2 使用Vim35
2.2.3 使用emacs36
2.2.4 使用nano37
2.2.5 默認(rèn)文本編輯器38
2.3 總結(jié)39
第3章 Python介紹40
3.1 腳本語(yǔ)言與編程語(yǔ)言40
3.2 Python語(yǔ)言的理念43
3.3 Python入門44
3.3.1 通過(guò)IDLE運(yùn)行Python44
3.3.2 通過(guò)終端運(yùn)行Python48
3.3.3 通過(guò)腳本運(yùn)行Python48
3.4 探究Python的數(shù)據(jù)類型50
3.4.1 數(shù)值50
3.4.2 字符串51
3.4.3 列表52
3.4.4 字典54
3.4.5 元組和文件55
3.5 利用Python進(jìn)行編程57
3.5.1 IF測(cè)試58
3.5.2 循環(huán)60
3.5.3 函數(shù)62
3.5.4 對(duì)象和面向?qū)ο缶幊?3
3.6 總結(jié)64
第4章 電子知識(shí)大科普66
4.1 基本電路常識(shí)67
4.2 開(kāi)發(fā)所需要的工具69
4.2.1 螺絲刀69
4.2.2 鉗子和剝線鉗70
4.2.3 剪線鉗71
4.2.4 銼刀72
4.2.5 放大鏡燈73
4.2.6 熱膠槍73
4.2.7 各類膠水73
4.2.8 萬(wàn)用表74
4.2.9 電源74
4.2.10 實(shí)驗(yàn)板75
4.2.11 插線板76
4.2.12 電烙鐵77
4.3 一般的安全規(guī)則78
4.3.1 認(rèn)真對(duì)待溫度78
4.3.2 認(rèn)真對(duì)待鋒利的物體79
4.3.3 戴安全鏡79
4.3.4 準(zhǔn)備好滅火器79
4.3.5 在手邊放置一個(gè)急救包80
4.3.6 在通風(fēng)的環(huán)境下工作80
4.3.7 整理好你的工作環(huán)境81
4.4 福利:焊接技術(shù)82
4.5 總結(jié)84
第5章 網(wǎng)絡(luò)機(jī)器人85
5.1 機(jī)器人禮儀86
5.2 網(wǎng)絡(luò)的連接87
5.2.1 網(wǎng)絡(luò)通信協(xié)議88
5.2.2 網(wǎng)頁(yè)格式88
5.2.3 請(qǐng)求舉例89
5.3 網(wǎng)絡(luò)機(jī)器人的概念90
5.4 解析網(wǎng)頁(yè)91
5.5 利用Python模塊編碼92
5.5.1 使用Mechanize模塊93
5.5.2 用Beautiful Soup解析94
5.5.3 利用urllib庫(kù)下載94
5.6 決定下載的內(nèi)容95
5.6.1 選擇起點(diǎn)96
5.6.2 存儲(chǔ)文件96
5.7 編寫(xiě)Python網(wǎng)絡(luò)機(jī)器人97
5.7.1 讀取一個(gè)字符串并提取所有鏈接97
5.7.2 尋找并下載文件98
5.7.3 測(cè)試網(wǎng)絡(luò)機(jī)器人99
5.7.4 創(chuàng)建目錄并實(shí)例化一個(gè)列表101
5.8 終代碼103
5.9 總結(jié)105
第6章 氣象站106
6.1 零件購(gòu)買清單107
6.2 使用I2C協(xié)議108
6.3 使用風(fēng)速計(jì)109
6.3.1 構(gòu)造風(fēng)速計(jì)110
6.3.2 將風(fēng)速計(jì)與樹(shù)莓派連接113
6.3.3 根據(jù)風(fēng)速糾正每秒轉(zhuǎn)數(shù)114
6.4 連接數(shù)字指南針116
6.5 連接溫度/濕度傳感器118
6.6 連接氣壓計(jì)120
6.7 連接所有部件122
6.8 終代碼124
6.9 總結(jié)126
第7章 媒體服務(wù)器127
7.1 零件購(gòu)買清單128
7.2 使用NTFS格式的硬盤(pán)128
7.3 安裝Samba131
7.4 配置Samba132
7.5 Linux權(quán)限設(shè)置134
7.6 重新啟動(dòng)Samba服務(wù)135
7.7 與Linux / OS X連接136
7.8 Kodi和Plex138
7.9 Python在哪里140
7.10 總結(jié)141
第8章 家庭安防系統(tǒng)142
8.1 用于安防的狗143
8.2 用于安防的樹(shù)莓派143
8.3 使用傳感器網(wǎng)絡(luò)144
8.4 了解下拉電阻 145
8.5 零件購(gòu)買清單146
8.6 以無(wú)線方式連接你的家庭網(wǎng)絡(luò)146
8.7 訪問(wèn)GPIO引腳149
8.8 設(shè)置運(yùn)動(dòng)傳感器150
8.9 設(shè)置磁簧開(kāi)關(guān)152
8.10 設(shè)置壓力開(kāi)關(guān) 154
8.11 連接磁傳感器155
8.12 設(shè)置樹(shù)莓派的攝像機(jī)156
8.13 利用樹(shù)莓派發(fā)送短信157
8.14 實(shí)現(xiàn)回調(diào)158
8.15 連接所有的部件159
8.16 終代碼159
8.17 總結(jié)161
第9章 貓玩具162
9.1 零件購(gòu)買清單162
9.2 玩具背后的設(shè)計(jì)理念163
9.3 創(chuàng)建和使用隨機(jī)數(shù)164
9.4 使用GPIO庫(kù) 166
9.5 控制舵機(jī)168
9.6 構(gòu)建舵機(jī)結(jié)構(gòu)171
9.7 構(gòu)建激光結(jié)構(gòu)172
9.8 將激光指示器連接到舵機(jī)上173
9.9 連接運(yùn)動(dòng)傳感器175
9.10 連接所有的部件177
9.11 終代碼180
9.12 總結(jié)181
第10章 無(wú)線電遙控飛機(jī)182
10.1 零件購(gòu)買清單183
10.2 將GPS接收器連接至樹(shù)莓派184
10.3 設(shè)置日志文件187
10.4 格式化KML文件189
10.5 使用線程和對(duì)象190
10.6 設(shè)置自啟動(dòng)192
10.7 連接所有部件194
10.8 終代碼197
10.8.1 飛機(jī)飛行程序197
10.8.2 KML轉(zhuǎn)換程序198
10.9 總結(jié)199
第11章 氣象氣球200
11.1 零件購(gòu)買清單201
11.2 設(shè)置GPS接收器202
11.3 存儲(chǔ)GPS數(shù)據(jù)204
11.4 安裝PiFM205
11.5 安裝festival206
11.6 安裝ffmpeg207
11.7 準(zhǔn)備樹(shù)莓派208
11.8 使用線程和對(duì)象209
11.9 連接所有部件210
11.10 觀察照片結(jié)果213
11.11 終代碼215
11.12 總結(jié)216
第12章 潛水器217
12.1 零件購(gòu)買清單218
12.2 訪問(wèn)樹(shù)莓派的GPIO引腳219
12.3 安裝樹(shù)莓派攝像頭模塊222
12.4 控制潛水器223
12.5 連接Wiichuck適配器224
12.6 激活樹(shù)莓派的I2C226
12.7 從nunchuk讀取數(shù)據(jù)227
12.8 nunchuk和LED測(cè)試項(xiàng)目228
12.9 通過(guò)nunchuk控制潛水器電機(jī)和攝像頭231
12.10 遠(yuǎn)程啟動(dòng)程序233
12.11 終代碼235
12.12 構(gòu)造潛水器237
12.13 構(gòu)建框架237
12.14 構(gòu)建樹(shù)莓派的外殼238
12.15 電機(jī)的防水外殼239
12.16 連接至nunchuk241
12.17 裝配終的產(chǎn)品241
12.18 總結(jié)246
第13章 樹(shù)莓派和Arduino247
13.1 探索Arduino248
13.2 在樹(shù)莓派中安裝Arduino IDE250
13.3 運(yùn)行舵機(jī)255
13.4 總結(jié)256