大家好,我是吉田!
这次我想用小型Arduino兼容设备“M5Stack”系列来制作一辆原创遥控车。这里使用的M5Stack是一种使用了ESP32的Arduino开发模块,自带传感器和显示器等配件,使用它可以轻松开始开发。我想为大家介绍一下使用这种M5Stack制作也可以从外部控制的迷你遥控车的过程。
本部分的流程
关于Arduino兼容设备M5Stack系列
制作本设备所需的部件
遥控车的功能和可以学到的知识
M5Stack开发环境安装
总结
1. 关于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日元左右 |
2. 制作本设备所需的部件
这次我们将使用M5Stack和一些传感器来创建可以自动驾驶或远程控制的小型汽车,所需部件汇总如下。
车身部分名称和说明 | 部件 |
M5Stack Core 搭载了ESP32的Arduino兼容设备。不仅自带大型LED显示器,还自带BLE、Wifi和运动传感器等。 | |
超声波距离传感器 ****超声波并通过其反弹声波来测量距离的模块。 | |
ROHM照度/接近传感器 (RPR-0521RS) (RPR-0521RS) 通过****红外线并测量其反射光来测量光的强度和接近度。 | |
Grove I2C电机驱动器 使用称为“I2C”的通信方式,与Grove引脚连接即可使用的电机驱动器。 | |
车轮、外装件等 |
名称和说明 | 部件和应用 |
M5Stick-C 在M5Stack系列中尺寸更小的产品,具有BLE和Wi-Fi功能的ESP32 Arduino兼容模块 | |
Blynk(智能手机应用程序) 可以通过Wi-Fi操作Arduino和Raspberry Pi的智能手机应用程序。 |
把这些部件备好后,就可以制作小型遥控车了。
3. 遥控车的功能和可以学到的知识
这次要做的遥控车分为汽车车身部分和遥控部分两部分。车身部分将使用传感器自动行驶。遥控器使用M5Stcick-C和智能手机来实现对汽车的控制。下面列出了车身部分和遥控部分可以实现的功能,以及可以学到的知识。
车身部分:编号 | 可以学到的知识 |
1 | 使用Arduino IDE开发M5Stack的方法 |
2 | 使用I2C电机驱动器、通过Arduino控制电机来制作小汽车的方法 |
3 | 使用了距离传感器的物体避让机制 |
4 | 使用照度/接近传感器而不会从桌子上等高处掉下来的机制 |
编号 | 可以学到的知识 |
1 | 使用M5Stack时的运动传感器使用方法 |
2 | Arduino(M5Stack)之间通过BLE进行通信和操作的方法 |
3 | 从智能手机上操作Arduino(M5Stack)的方法 |
4. 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中选择示例草图并将其导入。
5. 总结
在本系列连载中,我们将使用M5Stack制作遥控车。M5Stack系列有自带传感器的产品,也有带较大显示器的产品,请根据您的用途选用。传感器也可以从外部安装,因此还可以通过添加ROHM的传感器等器件来增加功能。
从下一部分开始,我将为大家介绍实际制作遥控车的过程,敬请期待!
本系列连载一览
第1部分:用小型Arduino兼容设备(M5Stack)享受电子制作的乐趣(本章)
第2部分:通过M5Stack使用电机驱动器
第3部分:通过M5Stack使用传感器实现自动驾驶和自动避让功能
剧终篇:实现M5Stack与智能手机联动控制
在普通公司工作的上班族,非常喜欢创作的周末创客,出版了电子书MESHBOOK,平时也写写博客。
http://blog.ktrips.net