大家好,我是吉田!
這次我想用小型Arduino相容設備“M5Stack”系列來製作一輛原創遙控車。這裡使用的M5Stack是一種使用了ESP32的Arduino開發模組,自帶感測器和顯示器等配件,使用它可以輕鬆開始開發。我想為大家介紹一下使用這種M5Stack製作也可以從外部控制的迷你遙控車的過程。
M5Stack是由中國深圳硬體初創公司M5Stack推出的Arduino相容開發模組之一。它使用Espressif公司內置有Wi-Fi和BLE的ESP32平臺,使開發變得像Arduino一樣簡單。其特點是在小小的產品中,自帶顯示器、感測器、按鈕、USB介面等。
M5Stack有多個系列,使用者可以根據大小和用途進行選擇。最容易上手的是“M5 Stack Core”,它帶有較大的方形顯示器。另外還有“M5 Stick-C”,它的外殼和顯示器尺寸更小,更易於使用。2020年還推出了大概只有“M5 Stick-C”一半大小的超小型“ATOM”系列。
下表中將這幾種產品的規格簡單匯總了一下。請根據用途和尺寸選用。
系列 | M5Stack | M5Stick | M5Stack ATOM |
名稱 | M5Stack Core Gray | M5Stick-C | M5Stack ATOM Matrix |
晶片 | ESP32-D0WDQ6 (Wifi, BLE) |
ESP32-PICO (Wifi, BLE) |
ESP32-PICO (Wifi, BLE) |
記憶體 | 520KB RAM 16MB Flash |
520KB RAM 4MB Flash |
520KB RAM 4MB Flash |
大小 | 5.4 x 5.4 x 1.7 cm | 4.8 x 2.5 x 1.4 cm | 2.4 x 2.4 x 1.4 cm |
顯示器 | Color TFT LCD (2 inch) | Color TFT LCD (0.96 inch) | 5 x 5 RGB LCD |
感測器類 | MPU6886 (加速度感測器) BMM150(地磁感測器) 無麥克風 有揚聲器 |
MPU6886 (加速度感測器) 紅外LED 有麥克風 無揚聲器 |
MPU6886 (加速度感測器) 紅外LED 無麥克風 無揚聲器 |
電池 | 150mAh @3.7V | 80mAh @3.7V | 無 |
參考價格 | 4,800日元左右 | 2,000日元左右 | 2,000日元左右 |
這次我們將使用M5Stack和一些感測器來創建可以自動駕駛或遠端控制的小型汽車,所需零件匯總如下。
名稱和說明 | 零件 |
M5Stack Core 搭載了ESP32的Arduino相容設備。不僅自帶大型LED顯示器,還自帶BLE、Wifi和運動感測器等。 |
|
超聲波距離感測器 發射超聲波並透過其反彈聲波來測量距離的模組。 |
|
ROHM照度/接近感測器 (RPR-0521RS) 透過發射紅外線並測量其反射光來測量光的強度和接近度。 |
|
Grove I2C馬達驅動器 使用稱為“I2C”的通信方式,與Grove引腳連接即可使用的馬達驅動器。 |
|
車輪、外裝件等 |
名稱和說明 | 零件和應用 |
M5Stick-C 在M5Stack系列中尺寸更小的產品,具有BLE和Wi-Fi功能的ESP32 Arduino相容模組 |
|
Blynk(智慧手機應用程式) 可以透過Wi-Fi操作Arduino和Raspberry Pi的智慧手機應用程式。 |
把這些零件備好後,就可以製作小型遙控車了。
這次要做的遙控車分為汽車車身部分和遙控部分兩部分。車身部分將使用感測器自動行駛。遙控器使用M5Stcick-C和智慧手機來實現對汽車的控制。下面列出了車身部分和遙控部分可以實現的功能,以及可以學到的知識。
編號 | 可以學到的知識 |
1 | 使用Arduino IDE開發M5Stack的方法 |
2 | 使用I2C馬達驅動器、透過Arduino控制馬達來製作小汽車的方法 |
3 | 使用了距離感測器的物體避讓機制 |
4 | 使用照度/接近感測器而不會從桌子上等高處掉下來的機制 |
編號 | 可以學到的知識 |
1 | 使用M5Stack時的運動感測器使用方法 |
2 | Arduino(M5Stack)之間透過BLE進行通信和操作的方法 |
3 | 從智慧手機上操作Arduino(M5Stack)的方法 |
要想使用Arduino IDE進行M5Stack程式開發,需要進行一些必要的準備工作。請前往Arduino IDE下載頁面(https://www.arduino.cc/en/main/software)下載並安裝軟體。另外,最好透過閱讀Device Plus刊載過的這篇文章(Arduino 使用篇),提前瞭解一下ESP-WROOM-32的使用方法。
Arduino IDE安裝完成後,需要設置ESP32開發板。從Arduino的功能表中,選擇設置 > Preferencees,並在“ Additional Boards Manager URL”中輸入以下位址:
https://dl.espressif.com/dl/package_esp32_index.json
然後透過Tools > Boards > Boards Manager搜索ESP32並安裝開發包。
這樣就可以選擇M5Stack-Core-ESP32作為開發板了,請選擇它。此外,從串口指定USB連接並連接電腦和M5Stack。
另外,還需要透過Sketch > Include Library > Manage Library管理來添加M5Stack的庫。
現在,讓我們用USB-C資料線連接電腦和M5Stack吧。剛剛下載的M5Stack庫中附有一些示例程式,我們可以直接使用。從File > Sketch example > M5Stack中選擇示例草圖並將其導入。
在本系列連載中,我們將使用M5Stack製作遙控車。M5Stack系列有自帶感測器的產品,也有帶較大顯示器的產品,請根據您的用途選用。感測器也可以從外部安裝,因此還可以透過添加ROHM的感測器等器件來增加功能。
從下一部分開始,我將為大家介紹實際製作遙控車的過程,敬請期待!
本系列連載一覽
第1部分:用小型Arduino相容設備(M5Stack)享受電子製作的樂趣(本章)
第2部分:透過M5Stack使用馬達驅動器
第3部分:透過M5Stack使用感測器實現自動駕駛和自動避讓功能
第4部分:實現M5Stack與智慧手機聯動控制