你有想過不用新台幣 300 元,就能親手打造出一台高 CP 值的無線影像串流主機(Wi-Fi IP Camera)嗎?
在本篇物聯網(IoT)實作教學中,我們將手把手帶領創客新手與學生,利用熱門的 ESP32-CAM 開發板,透過熟悉的 Arduino IDE 開發環境進行程式燒錄,快速建置出專屬的無線攝影機與自製監視器。
什麼是 ESP32-CAM?高效能物聯網影像開發板
ESP32-CAM 是一款以 ESP32 晶片為核心的微型影像開發板。它不僅內建 Wi-Fi 雙模與藍牙 (BT/BLE) 功能,還整合了以下強大硬體:
-
OV2640 兩百萬畫素相機模組:支援影像擷取與即時串流。
-
TF 卡槽 (MicroSD Card):方便儲存照片與歷史影片紀錄。
-
高亮度閃光燈模組:夜間補光必備。
ESP32-CAM 完全支援 Arduino IDE 進行二次開發,程式語法與傳統 Arduino UNO 相容。不論是要透過網路傳輸照片、使用藍牙進行遠端遙控,或是做為智慧家庭、工業無線監控與無線定位系統的方案,ESP32-CAM 都是最理想、最便宜的物聯網解決方案。

推薦採購與材料清單:
▼ ESP32-CAM官方原廠購買:
ESP32-CAM WiFi+藍牙模組 ESP32 攝影頭 NodeMcu
▼ USB TTL官方原廠購買:
FTDI FT232RL 原廠晶片、USB UART模組、USB-TTL、5/3.3v切換
第一步:下載與安裝 Arduino IDE 開發環境
在開始燒錄程式之前,我們需要先準備好軟體開發環境。
1. 下載並安裝 Arduino IDE
請先至 Arduino 官方網站下載最新版軟體,下載後完成安裝程序。

- 進入頁面後,點選 「JUST DOWNLOAD」 即可免費下載。

- Arduino IDE 安裝 :

2. 在 Arduino IDE 中安裝 ESP32 開發板支援套件
為了讓 Arduino IDE 能夠識別並編譯 ESP32 的程式,必須新增第三方平台資料庫:
-
ESP32 開發板管理員網址:https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_dev_index.json
操作步驟:
-
啟動 Arduino IDE,點選 「檔案」>「偏好設定」 (Preferences)。
-
在 「額外的開發板管理員網址」 欄位中貼上上述連結(若已有其他網址,請使用逗號
,分隔)。 -
點選 「工具」>「開發板」>「開發板管理員」,在搜尋欄輸入
esp32,找到後點選安裝(建議使用本篇教學驗證過的 2.0.2 或穩定版本)。

開啟 Arduino IDE 的「偏好設定」(Preferences),在「額外的開發板管理員網址」欄位中貼上 ESP32 的 URL 網址(若有複數網址請以逗號或分行分隔),完成後點選確定。

在 Arduino IDE 的「開發板管理員」中搜尋 esp32,選取欲安裝的版本(建議選擇 2.0.2 或穩定版本)後進行套件安裝。
第二步:USB-TTL 轉接板接線說明
由於 ESP32-CAM 板上沒有內建 USB 轉 TTL 晶片,我們必須外接一個 USB-TTL 模組(建議採用穩定度極高的原裝 FTDI FT232 晶片或 CH340 模組)來傳輸程式。
ESP32-CAM 與 USB-TTL 接線對照表
IO0 與 GND 必須接在一起;燒錄完成後,平時常態請務必保持斷開。
ESP32-CAM 開發板與 FTDI FT232RL USB-TTL 模組接線示意圖。VCC 接 5V、GND 共地、TXD 與 RXD 訊號交叉對接。請特別注意,燒錄程式時必須將 IO0 與 GND 連接以進入燒錄模式,燒錄完成後請拔開短路線。

ESP32-CAM 開發板與 CH340 USB-TTL 模組的接線示意圖。使用前請確認 USB-TTL 的跳線帽(Jumper)已置於 5V 位置。接線方式為 5V 對接、GND 共地、TXD 與 RXD 訊號交叉連接。燒錄程式時,需將 IO0 腳位與 GND 接地短路(黃線部分),燒錄完成後請拔開短路線以恢復正常運行模式。
Arduino 物聯網 開發板與周邊零件 | 最佳選擇:https://shop.mirotek.com.tw
第三步:Arduino IDE 開發板參數設定
將接好線的 USB-TTL 插上電腦後,開啟 Arduino IDE 進行硬體設定:
-
點選 「工具」>「開發板」>「ESP32 Arduino」。
-
在清單中找到並選擇:「ESP32 Wrover Module」。
-
燒錄速度調整:若您使用的是 CH340 燒錄器,請將 Upload Speed (上傳速度) 更改為
115200,以確保寫入過程穩定。

第四步:修改內建範例程式 CameraWebServer
Arduino 官方已準備了非常完善的網頁伺服器範例。
範例程式修改 4 步驟:
-
點選 「檔案」>「範例」>「ESP32」>「Camera」>「CameraWebServer」。
-
修改攝影機型號: 在程式碼開頭,找到
#define CAMERA_MODEL_WROVER_KIT並在其前方加上註解//#define CAMERA_MODEL_WROVER_KIT;接著將// #define CAMERA_MODEL_AI_THINKER的註解拿掉,改成:#define CAMERA_MODEL_AI_THINKER - 設定 Wi-Fi 連線資訊:找到
ssid與password欄位,輸入家中的 Wi-Fi 名稱與密碼。 - 準備上傳燒錄。

於 Arduino IDE 主介面點選選單列的 「檔案」>「範例」>「ESP32」>「Camera」>「CameraWebServer」,即可開啟官方為 ESP32-CAM 準備的網頁伺服器即時影像串流範例專案。

修改 CameraWebServer 範例程式碼畫面。需先將預設的 #define CAMERA_MODEL_WROVER_KIT 前方加上註解雙斜線 //,接著取消 #define CAMERA_MODEL_AI_THINKER 的註解,最後於 ssid 與 password 變數欄位填入欲連線的 Wi-Fi 帳號與密碼。
第五步:程式燒錄與連線測試
許多新手卡關都是因為漏掉這個關鍵步驟,請遵循以下燒錄流程:
燒錄與重置操作口訣
-
燒錄前:將
IO0與GND對接短路,接著按下 ESP32-CAM 上的 RESET 鍵,再點擊 Arduino IDE 的 「上傳」。 -
燒錄完成後:將
IO0與GND的連線拔開(斷開),開啟 Arduino IDE 的 「序列埠監控視窗」(鮑率務必選擇115200),接著再按下一次 RESET 鍵!
當開發板成功連上 Wi-Fi 後,序列埠監控視窗就會顯示 ESP32 取得的局域網路 IP 位址(例如:192.168.0.106)。

第六步:體驗無線影像串流與即時拍照功能
開啟電腦或手機的瀏覽器,在網址列輸入剛剛取得的 IP 位址(例如:[http://192.168.0.106](http://192.168.0.106)),即可進入網頁控制後台:
-
Start Stream(啟動影像串流):點擊後網頁會立即顯示攝影機的動態即時畫面,流暢度表現優異。
-
Save(擷取即時圖片):點選控制介面的 Save 按鈕,ESP32-CAM 會立刻拍攝當前畫面並下載至電腦中。

透過電腦或手機瀏覽器輸入 ESP32-CAM 顯示的 IP 位址(如 192.168.0.106),即可開啟網頁控制後台。介面左側提供影像解析度調整、曝光設定、鏡頭翻轉等參數設定,下方則有 Start Stream(啟動即時串流)與 Get Still / Save(拍照擷取)等核心操作按鈕。

ESP32-CAM 無線影像串流實測成功畫面。當在網頁控制介面點擊 Start Stream 後,右側視窗即時呈現出 OV2640 相機模组傳輸的流暢動態畫面;點選右上角的 Save 按鈕,即可將目前的即時畫面擷取並自動下載儲存至電腦中。

當於 ESP32-CAM 網頁控制後台點選 Save 按鈕後,系統會立即拍攝當前影像,並將 JPG 圖片檔自動儲存下載至電腦的「下載項目」資料夾中。
結論與物聯網延伸應用
恭喜你!你已經成功跨出了 ESP32-CAM 物聯網應用的第一步。有了這個無線影像串流基礎,未來還可以延伸出更多進階專案:
-
返回教學列表:米羅科技文創學院教學部落格
-
教學總索引:ESP32 AIoT 開發指南 – 快速索引目錄
想要購買最穩定、品質最好的 Arduino 物聯網開發板與周邊電子零件嗎?歡迎到我們的官方網站選購,讓我們一起玩轉 IoT!
想要購買最穩定、品質最好的 Arduino 物聯網開發板與周邊電子零件嗎?歡迎到 米羅科技文創學院官方商城 選購,獲取最完善的零件與教學資源!