This commit is contained in:
LiHuashen
2019-03-25 16:27:21 +08:00
parent 8445213225
commit 1b475cf52a
6 changed files with 12 additions and 196 deletions
+1 -1
View File
@@ -10,7 +10,7 @@
## Description
**<mark>FLIR</mark>** is a module which integrates lwir micro thermal camera (**Lepton**) supplied by FLIR company. Real-time access to non-contact temperature measurement data. Easy to use because it integrates a digital thermal image processing unit. Lepton is equipped in M5 standard size 3D printing housing, after stacking M5Core, communicate with the master via SPI.
**<mark>FLIR</mark>** is a module which integrates lwir micro thermal camera (**Lepton 3.0**) supplied by FLIR company. Real-time access to non-contact temperature measurement data. Easy to use because it integrates a digital thermal image processing unit. Lepton is equipped in M5 standard size 3D printing housing, after stacking M5Core, communicate with the master via SPI.
**Note:** If working long hours, Lepton will heat up. But the output image is not affected by the camera temperature.
+1 -1
View File
@@ -8,7 +8,7 @@
## 概要
**<mark>FLIR</mark>**はFLIRはLeptonのマイクロサーマルカメラを統合したモジュールです。リアルタイムに非接触対象の温度を測定可能で、デジタルサーモ画像処理ユニットを統合しているので簡単に扱うことができます。M5CoreとスタックすることでSPI通信を介してコントロールすることができます。
**<mark>FLIR</mark>** はFLIRはLepton 3.0のマイクロサーマルカメラを統合したモジュールです。リアルタイムに非接触対象の温度を測定可能で、デジタルサーモ画像処理ユニットを統合しているので簡単に扱うことができます。M5CoreとスタックすることでSPI通信を介してコントロールすることができます。
**メモ:** 長時間使用するとセンサーも温まりますが、それによる測定データへの影響はありません。
@@ -2,7 +2,7 @@
:memo: **[テキストチュートリアル](#テキストチュートリアル)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:clapper: **[ビデオチュートリアル](#ビデオチュートリアル)**
?> *環境設定の前に、シリアルドライバがインストールされているか確認いてください。もしまだの場合は[シリアル接続の確立方法](ja/related_documents/establish_serial_connection)を参照してください。*
<!-- ?> *環境設定の前に、シリアルドライバがインストールされているか確認いてください。もしまだの場合は[シリアル接続の確立方法](ja/related_documents/establish_serial_connection)を参照してください。* -->
## テキストチュートリアル
@@ -32,7 +32,7 @@
ブラウザからアドレス https://m5stack.com/download にアクセスします。
#### (1) `CP210X Driver`から`Mac`を選択し、ドライバをダウンロードし、解凍します。
#### (1) `CP210X Driver`から`Mac`を選択し、ドライバをダウンロードし、解凍します。
<img src="assets/img/getting_started_pics/m5stack_core/get_started_with_arduino_m5core/mac/download_usb_driver_mac_01.png">
@@ -60,7 +60,7 @@
#### () シリアルポート `/dev/tty.SLAB_USBtoUART` を調べます。
ドライバが正しくインストールされたら`Terminal`を開きます。
ドライバが正しくインストールされたら`Terminal`を開きます。
`M5Core``PC``USB Type-C ケーブル`で接続し、次の図のコマンド `ls /dev/tty*` を実行します。
<img src="assets/img/getting_started_pics/m5stack_core/get_started_with_arduino_m5core/mac/check_serial_port_mac_01.png">
@@ -107,19 +107,19 @@ M5とPCの接続を解除し、再度同じコマンドを実行します。そ
## 5. 例題
USBケーブルでM5StackをPCに接続し、ボードとシリアルポートを選択します。
USBケーブルでM5StackをPCに接続し、ボードとシリアルポートを選択します。
次にサンプルプログラムをコンパイルし、アップロードしてみましょう。
#### (1) ボードとシリアルポートを選択
Arduino IDEのメニューから`ツール` -> `ボード` -> `M5Stack-Core-ESP32`と選択します。
Arduino IDEのメニューから`ツール` -> `ボード` -> `M5Stack-Core-ESP32`と選択します。
次に、メニューから`ツール` -> `シリアルポート` -> `/dev/cu.SLAB_USBtoUART`と選択します。
<img src="assets/img/getting_started_pics/m5stack_core/get_started_with_arduino_m5core/mac/quick_start_arduino_mac_10.png">
#### (2) サンプルスケッチ
サンプルスケッチを利用して、定番のHelloWorldを表示してみましょう。
サンプルスケッチを利用して、定番のHelloWorldを表示してみましょう。
メニューから`ファイル` -> `スケッチ例` -> `M5Stack` -> `Basics` -> `HelloWorld`と選択します。
<img src="assets/img/getting_started_pics/m5stack_core/get_started_with_arduino_m5core/mac/quick_start_arduino_mac_09.png">
+1 -1
View File
@@ -10,7 +10,7 @@
## 描述
**<mark>FLIR</mark>** 是一款集成 FLIR 公司的微型长波红外热像仪 (**Lepton**) 的模块。能实时获得传感器非接触式温度测量数据。因为集成了数字热图像处理单元,所以使用起来更简单。装配在 M5 标准尺寸的 3D 打印外壳中,堆叠了 M5Core之后,通过 SPI 与主控通信。
**<mark>FLIR</mark>** 是一款集成 FLIR 公司的微型长波红外热像仪 (**Lepton 3.0**) 的模块。能实时获得传感器非接触式温度测量数据。因为集成了数字热图像处理单元,所以使用起来更简单。装配在 M5 标准尺寸的 3D 打印外壳中,堆叠了 M5Core 之后,通过 SPI 与主控通信。
**注意:** 工作时间长了热像仪 Lepton 会升温,可是输出图像不受热像仪温度影响。
-184
View File
@@ -1,184 +0,0 @@
# LidarBot {docsify-ignore-all}
<img src="assets/img/product_pics/app/app_m5bot_01.png" width="350" height="350"> <img src="assets/img/product_pics/app/app_m5bot_02.png" width="350" height="350">
* * *
:memo:**[描述](#描述)**&nbsp;&nbsp;&nbsp;:octocat:**[例程](#例程)**&nbsp;&nbsp;&nbsp;🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-1172588106.10.17fd425e0xq2aq&id=580401820385)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:clapper:**[相关视频](#相关视频)**
## 描述
**<mark>LidarBot</mark>** 是一款以室内导航为基础的四轮小车。车体装载了激光雷达、四个麦克纳姆轮、车轮控制低板 ( 主控芯片是 MEGA328 )、前后 RGB 灯带 ( 共 16 颗 )、M5Core 主控、多个 LEGO 孔。
车与远程遥控手柄之间通过 ESP-NOW 实时通信,而小车主控接收到控制信号后,通过规定的协议格式实现控制车轮和RGB灯带等。
除了能控制小车灵活地前后左右移动之外,还能在小车主控和手柄主控各自的显示屏上显示室内地形。
## 特性
- 雷达: 8m @ 6Hz
- 支持 Arduino 编程
- 兼容 LEGO 件
## 小车主控与底板之间的协议
*协议格式:帧头 ( 命令类型 ) + 数据帧 + 帧尾*
| 协议对象 | 协议格式 | 举例 |调用函数|
| :-------------: |:------------------------------------: |:---:|:---:|
| 控制车轮 | 0xAA,SpeedX(-7 ~ 7),SpeedY,SpeedZ,SpeedA,0x55 | 0xAA, 5, 5, 5, 5, 0x55(前进,速度5) |ControlWheel(5, 5, 5)|
| 控制单颗 RGB | 0xAB,LedIndex,R(0 ~ 254),G,B,0x55 | 0xAB, 3, 20, 50, 100, 0x55(第三颗灯亮指定颜色)|setLedColor(3, 20, 50, 100)|
| 控制前向 RGB 灯带 | 0xAC,R(0 ~ 254),G,B,0x55 | 0xAC, 20, 50, 100, 0x55(前向灯带亮指定颜色)|setFrontLedBar(20, 50, 100)|
| 控制后向 RGB 灯带 | 0xAD,R(0 ~ 254),G,B,0x55 |0xAD, 20, 50, 100, 0x55(后向灯带亮指定颜色)|setBackLedBar(20, 50, 100)|
| 控制全部 RGB | 0xAE,R(0 ~ 254),G,B,0x55 |0xAE, 20, 50, 100, 0x55(全部灯亮指定颜色)|setLedAll(20, 50, 100)|
| 控制舵机 0 | 0xAF,Angle(0 ~ 180),0x55 |0xAF, 100, 0x55(舵机0转动100度)|setServo0Angle(100)|
| 控制舵机 1 | 0xB0,Angle(0 ~ 180),0x55 |0xB0, 100, 0x55(舵机1转动100度)|setServo1Angle(100)|
<img src="assets/img/product_pics/app/lidarbot_04.jpg" width=60% height=60%>
## 参数
- 小车车身尺寸(长宽高)142mm x 117mm x 120mm
- 通信参数
- 车体的 M5Core 主控与激光雷达传感器(雷达 TXD <-> <mark>**U1RXD**(GPIO16)</mark>
串口参数:230400bps,8 位数据位,无奇偶校验,1 位停止位
- 车体的 M5Core 主控与车轮控制底板(底板 RXD <-> <mark>**U2TXD**(GPIO17)</mark>
串口参数:115200bps,8 位数据位,无奇偶校验,1 位停止位
- 接口
- 舵机 0 <-> A0(MEGA328)
- 舵机 1 <-> A1(MEGA328)
- RGB 灯条 <-> 11(MEGA328)
<img src="assets/img/product_pics/app/lidarbot_05.jpg" width="300" height="300">
## 产品比对
以下图片是 M5BOT 与 LidarBot 之间的比对表格。
<img src="assets/img/product_pics/app/CarComparison_zh_CN.png">
## 包含
- 1x 雷达车
- 1x 远程遥控手柄
- 2x 电池 (1300mAh @ 11.1V)
- 1x 电池充电器
- 1x Type-C USB 线
<img src="assets/img/product_pics/app/lidarbot_02.jpg" width="300" height="300">
## 应用
- 室内导航
- 自主走迷宫
- 路径规划
- 自动驾驶
## 例程
*如果需要完整例程请点击[这里](https://github.com/m5stack/Applications-LidarBot/tree/master/LidarBot/Example)。*
**Example 目录树**
├─LidarBot_CarMain_V1.1 - 雷达车主控程序
├─LidarBot_RemoteController_V1.0 - 遥控手柄程序 V1.0
└─LidarBot_RemoteController_V1.2 - 遥控手柄程序 V1.2(相比 V1.0 精度提高一倍)
#### 程序解析:
#### **1. 雷达车主控程序:**
```arduino
/* 主循环 */
void loop()
{
espnow.BotConnectUpdate();// ESPNOW 断开重连/换设备重连
lidarcar.MapDisplay();// 显示地图
esp_now_send(espnow.peer_addr, lidarcar.mapdata, 180);// ESPNOW 发送地图数据
}
```
* **单个功能解析:**
* 读取雷达数据的使用
```arduino
#include "lidarcar.h"
LidarCar lidarcar;
lidarcar.Init();
GetData();//得到雷达保存到数组 distance[]
```
* 循迹的使用
```arduino
#include "rprtrack.h"
Rprtrack rprtrack;
SensorStatus();// 巡线数值保存到数组 sensorValue[]
CalTrackDev();// 处理数组 sensorValue[],得出小车偏移情况,保存至变量OffsetLine
```
* ESP_NOW的使用
请参考此链接: https://github.com/m5stack/M5-espnow
#### **2. 手柄主控程序:**
```arduino
/* 主循环 */
void loop()
{
espnow.RemoteConnectUpdate();// ESPNOW断开重连/换设备重连
keyboard.GetValue();//读取摇杆数据
esp_now_send(espnow.peer_addr, keyboard.keyData, 3);// ESPNOW发送摇杆数据给小车主控
MapDisplay();// 显示地图
accessport.AnalzyCommand();// 发送地图数据给上位机
}
```
* **单个功能解析:**
* JOYSTICK的使用
```arduino
#include "keyboard.h"
KeyBoard keyboard;
keyboard.Init();
GetValue();//手柄读数保存在adX, adY,并控制赋值给数组keyData[]和手柄RGB灯
```
* 与上位机通信的使用
```arduino
#include "accessport.h"
AccessPort accessport;
accessport.AnalzyCommand();// 发送地图数据给PC上位机
```
## 相关视频
**LidarBOT 案例 - 在迷宫中巡线**
<video width="500" height="315" controls>
<source src="https://m5stack.oss-cn-shenzhen.aliyuncs.com/video/Blog/Twitch201901/lidarbot.mp4" type="video/mp4">
</video>
**LidarBOT 案例 - 走迷宫**
<video width="500" height="315" controls>
<source src="https://m5stack.oss-cn-shenzhen.aliyuncs.com/video/Blog/Twitch201902/LidarBOT%20%20walking%20the%20maze.mp4" type="video/mp4">
</video>
**LidarBOT 案例 - 颜色识别**
<video width="500" height="315" controls>
<source src="https://m5stack.oss-cn-shenzhen.aliyuncs.com/video/Blog/Twitch201901/Lidar.mp4" type="video/mp4">
</video>
+3 -3
View File
@@ -8,11 +8,11 @@
## 描述
**<mark>FINGER</mark>** 是一款指纹识别 Unit,该 unit 集成了**FPC1020A**电容式指纹识别模块,集成了指纹识别算法芯片。连接M5Core,能实现多人指纹信息录入、指纹删除、指纹比对、指纹搜索、特征提取等功能。可以设置指纹识别对比等级和安全级别
**<mark>FINGER</mark>** 是一款集成了瑞典 **FPC1020A** 电容式指纹识别模组的 Unit。该 Unit 具有多人指纹录入、图像处理、特征值提取、指纹比对和搜索等的功能。可以使用它做二次开发,实现指纹识别产品研发
该unitM5Core之间通过串口(UART)通信
unit 连 M5Core 的 GROVE C 接口,与 M5Core 之间通过串口 ( UART ) 通信
串口参数:波特率(默认为19200bps), 起始位(1位), 停止位(1位), 校验位(无)
串口参数:波特率 ( 默认为 19200bps ), 起始位 ( 1位 ), 停止位 ( 1位 ), 校验位 ( 无 )
## 特性