finish new add on (7)

This commit is contained in:
LottesLiu
2019-06-21 21:08:40 +08:00
parent c7c78f2ca9
commit 59da9e2dfd
14 changed files with 497 additions and 337 deletions
+1 -1
View File
@@ -35,7 +35,7 @@ This base gives you an unlimited of combinations, it is powerful, flexible, and
- 2x Grove Port
- 1x M12*1.5
- 2x hexagonal wrench
- 10x Screw (3 types: M3*22, M3*12, M2*5)
- 10x Screw (3 types: M3x22, M3x12, M3x8,M2x5)
- 2x M3 Nut
- 1x 2.45mm pin set
- 1x Sticker
+7 -9
View File
@@ -4,7 +4,7 @@
***
:memo:**[Description](#Description)**      :electric_plug:**[Schematic](#Schematic)**      🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-New-Arrival-GOPLUS-Module-with-MEGA328P-IR-Transmitter-and-Receiver-suit-for-ESP32-Kit/3226069_33010785963.html?spm=2114.12010615.8148356.1.a8747842Ll7Apb)**      :octocat:**[Code](#Code)**
:memo:**[Description](#Description)**      :electric_plug:**[Schematic](#Schematic)**      🛒**[Purchase](https://m5stack.com/collections/m5-module/products/finger-print-fpc-1020a-panel-for-m5-faces)**      :octocat:**[Code](#Code)**
## Description
@@ -13,10 +13,10 @@
<br>
It can identify fingerprint information entrance, fingerprint deletion, fingerprint search, feature extraction for multiple people and so on. The unit also can be set fingerprint recognition comparison level and different security level. With FACES panel, you can have an upgrade level of Fingerprint management machine with a more complete and enclosed pattern.
<img src="assets/img/product_pics/module/goplus/goplus_p3.jpg" width="30%" height="30%"><img src="assets/img/product_pics/module/goplus/goplus_p4.jpg" width="30%" height="30%">
Communication Protocol: UART.
<br><br><br>
<img src="assets/img/product_pics/module/faces_finger/faces_finger_03.jpg" width="30%" height="30%">
## Product Features
@@ -37,7 +37,7 @@ Communication Protocol: UART.
## Include
- 1x M5Stack GoPlus Module
- 1x FACES-FINGER Panel
## Schematic
@@ -61,9 +61,7 @@ Communication Protocol: UART.
## Code
- Driver firmware - **[GoPlus](https://github.com/m5stack/GoPlus/tree/master/src)**
- Test Code - **[GoPlus](https://github.com/m5stack/GoPlus/tree/master/test)**
<br>
## Application
- Time card punching machine
@@ -71,4 +69,4 @@ Communication Protocol: UART.
## Video
- **[Demo Video](https://www.youtube.com/channel/UCozgFVglWYQXbvTmGyS739w)**
- **[Demo Video](https://m5stack.oss-cn-shenzhen.aliyuncs.com/video/Product_example_video/FACES-Finger.mp4)**
+8 -10
View File
@@ -4,7 +4,7 @@
***
:memo:**[Description](#Description)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:electric_plug:**[Schematic](#Schematic)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-New-Arrival-GOPLUS-Module-with-MEGA328P-IR-Transmitter-and-Receiver-suit-for-ESP32-Kit/3226069_33010785963.html?spm=2114.12010615.8148356.1.a8747842Ll7Apb)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:octocat:**[Code](#Code)**
:memo:**[Description](#Description)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:electric_plug:**[Schematic](#Schematic)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;🛒**[Purchase](https://m5stack.com/collections/m5-module/products/rfid-rc522-panel-for-m5-faces)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:octocat:**[Code](#Code)**
## Description
@@ -14,8 +14,7 @@
This unit can realize the function of the card reading and writing device, to identify and record multiple card information, to encode and authority an RF card. With FACES panel, you can have an upgrade level of RFID device with a more complete and enclosed pattern.
<img src="assets/img/product_pics/module/goplus/goplus_p3.jpg" width="30%" height="30%"><img src="assets/img/product_pics/module/goplus/goplus_p4.jpg" width="30%" height="30%">
<img src="assets/img/product_pics/module/faces_rfid/faces_rfid_03.jpg" width="30%" height="30%">
Communication Protocol: I2C.
@@ -35,7 +34,9 @@ Communication Protocol: I2C.
## Include
- 1x M5Stack GoPlus Module
- 1x FACES-RFID panel
- 1x RFID card
- 1x Fudan S50 card
## Schematic
@@ -51,14 +52,11 @@ Communication Protocol: I2C.
## Document
- Datasheet **[MFRC522](**http://www.shenzhen2u.com/doc/Module/Fingerprint/710-FPC1020_PB3_Product-Specification.pdf**)**
- Datasheet **[MFRC522](http://www.shenzhen2u.com/doc/Module/Fingerprint/710-FPC1020_PB3_Product-Specification.pdf)**
## Code
- Driver firmware - **[GoPlus](https://github.com/m5stack/GoPlus/tree/master/src)**
- Test Code - **[GoPlus](https://github.com/m5stack/GoPlus/tree/master/test)**
<br>
## Application
- Reader­-Tag
@@ -66,4 +64,4 @@ Communication Protocol: I2C.
## Video
- **[Demo Video](https://www.youtube.com/channel/UCozgFVglWYQXbvTmGyS739w)**
- **[Demo Video](https://m5stack.oss-cn-shenzhen.aliyuncs.com/video/Product_example_video/FACES-RFID.mp4)**
-113
View File
@@ -1,113 +0,0 @@
# Unit ACC {docsify-ignore-all}
<img src="assets/img/product_pics/unit/acc/acc_01.jpg" width="30%" height="30%"><img src="assets/img/product_pics/unit/acc/acc_02.jpg" width="30%" height="30%">
***
:memo:**[Description](#Description)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:octocat:**[Example](#Example)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :electric_plug:**[Schematic](#Schematic)** &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-Official-ADC-Unit-16-Bit-I2C-GROVE-ADS1100-Module-0V-to-12V-analog-to-digital/3226069_32946953374.html?spm=a2g1x.12024536.productList_5885013.pic_7)**
## Description
**ACC** is a motion sensor Unit. Integrated with ADXL 345, ACC is able to obtain 3- axis of Acceleration. ADXL 345 is a small, thin, ultralow power, 3-axis accelerometer with high resolution (13-bit) measurement at up to ±16 g. Digital output data is formatted as 16-bit twos complement and is accessible through either an SPI (3- or 4-wire) or I2C digital interface. In this Unit, we used I2C series interface.
<br>
*What is an accelerometer?*<br>
An accelerometer is an electromechanical device that will measure acceleration forces. These forces may be static, like the constant force of gravity pulling at your feet, or they could be dynamic - caused by moving or vibrating the accelerometer.
<br>
*What are accelerometers useful for?*<br>
By measuring the amount of static acceleration due to gravity, you can find out the angle the device is tilted at with respect to the earth. By sensing the amount of dynamic acceleration, you can analyze the way the device is moving. At first, measuring tilt and acceleration doesn't seem all that exciting. However, engineers have come up with many ways to make really useful products with them.
### Product Features
- feature:
- Tiny
- ultralow power
- 3-axis accelerometer
## Include
- 1x ADC unit
- 1x GROVE Cable
- 1x HT3.96 Male Socket(2 pins)
## Application
- Building and structural monitoring
- Navigation
- Orientation sensing
## Dcumentation
- Datasheet - **[ADS1100](http://pdf1.alldatasheet.com/datasheet-pdf/view/619024/TI1/ADS1100.html)**
- M5Stack Community - **[Forum](http://forum.m5stack.com/)**
## Schematic
<img src="assets/img/product_pics/unit/acc/acc_04.jpg">
### PinMap
<table>
<tr><td>M5Core ( GROVE A )</td><td>GPIO22</td><td>GPIO21</td><td>5V</td><td>GND</td></tr>
<tr><td>ACC Unit</td><td>SCL</td><td>SDA</td><td>5V</td><td>GND</td></tr>
</table>
## EasyLoader
<img src="https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/EasyLoader_logo.png" width="100px" style="margin-top:20px">
<a href="https://m5stack.oss-cn-shenzhen.aliyuncs.com/EasyLoader/Unit/EasyLoader_ADC.exe"><button type="button" class="btn btn-primary">click to download EasyLoader</button></a>
>1.EasyLoader is a simple and fast program burner, and each product page has a product-related case program for EasyLoader.
>2.After downloading the software, double-click to run the application, connect the M5 device to the computer via the data cable, select the port parameters, and click **"Burn"** to start burning.
!>3.The CP210X (USB driver) needs to be installed before the EasyLoader is burned. [Click here to view the driver installation tutorial](en/related_documents/establish_serial_connection)
## Example
### 1. Arduino IDE
*The below code is incomplete(just for usage). If you want the complete code, please click [here](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Unit/ADC/Arduino/ADC_ADS1100).*
```arduino
#include <M5Stack.h>
#include <Wire.h>
#include "ADS1100.h"
#define ADS1100_DEFAULT_ADDRESS 0x48
// declaration
byte error;
int8_t address;
//new a object
ADS1100 ads;
// initialization
M5.begin(true, false, false);
ads.getAddr_ADS1100(ADS1100_DEFAULT_ADDRESS);// 0x48, 1001 000 (ADDR = GND)
ads.setGain(GAIN_ONE); // 1x gain(default)
ads.setMode(MODE_CONTIN); // Continuous conversion mode (default)
ads.setRate(RATE_8); // 8SPS (default)
ads.setOSMode(OSMODE_SINGLE); // Set to start a single-conversion
ads.begin();
// read data
address = ads.ads_i2cAddress;
Wire.beginTransmission(address);
Wire.endTransmission();
ads.Measure_Differential();
```
### 2. UIFlow
*If you want the complete code, please click [here](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Unit/ADC/UIFlow).*
<img src="assets/img/product_pics/unit/unit_example/ADC/example_unit_adc_01.png">
+102
View File
@@ -0,0 +1,102 @@
# Unit ACCEL {docsify-ignore-all}
<img src="assets/img/product_pics/unit/accel/accel_01.jpg" width="30%" height="30%"><img src="assets/img/product_pics/unit/accel/accel_02.jpg" width="30%" height="30%">
***
:memo:**[Description](#Description)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:electric_plug:**[Schematic](#Schematic)** &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:octocat:**[Code](#Code)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 🛒**[Purchase](https://m5stack.com/collections/m5-unit/products/3-axis-analog-accelerometer-unitadx345)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/EasyLoader_logo-min.jpg">**[EasyLoader](#EasyLoader)**
## Description
**ACCEL** is a motion sensor Unit. Integrated with ADXL 345, ACC is able to obtain 3- axis of Acceleration. ADXL 345 is a small, thin, ultralow power, 3-axis accelerometer with high resolution (13-bit) measurement at up to ±16 g. Digital output data is formatted as 16-bit twos complement and is accessible through either an SPI (3- or 4-wire) or I2C digital interface. In this Unit, we used I2C series interface.
<br>
*What is an accelerometer?*<br>
An accelerometer is an electromechanical device that will measure acceleration forces. These forces may be static, like the constant force of gravity pulling at your feet, or they could be dynamic - caused by moving or vibrating the accelerometer.
<br>
*What are accelerometers useful for?*<br>
By measuring the amount of static acceleration due to gravity, you can find out the angle the device is tilted at with respect to the earth. By sensing the amount of dynamic acceleration, you can analyze the way the device is moving. At first, measuring tilt and acceleration doesn't seem all that exciting. However, engineers have come up with many ways to make really useful products with them.
<br><br><br>
<img src="assets/img/product_pics/unit/accel/accel_03.jpg" width="30%" height="30%">
### Product Features
- Tiny
- ultralow power
- 3-axis accelerometer
## Include
- 1x ACC unit
- 1x GROVE Cable
## Application
- Building and structural monitoring
- Navigation
- Orientation sensing
## Dcumentation
- Datasheet - **[ADXL345](https://www.analog.com/media/en/technical-documentation/data-sheets/ADXL345.pdf)**
## Schematic
<img src="assets/img/product_pics/unit/accel/accel_04.jpg">
### PinMap
<table>
<tr><td>M5Core ( GROVE A )</td><td>GPIO22</td><td>GPIO21</td><td>5V</td><td>GND</td></tr>
<tr><td>ACC Unit</td><td>SCL</td><td>SDA</td><td>5V</td><td>GND</td></tr>
</table>
## EasyLoader
<img src="https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/EasyLoader_logo.png" width="100px" style="margin-top:20px">
<a href="https://m5stack.oss-cn-shenzhen.aliyuncs.com/EasyLoader/Unit/EasyLoader_ACCEL.exe"><button type="button" class="btn btn-primary">click to download EasyLoader</button></a>
>1.EasyLoader is a simple and fast program burner, and each product page has a product-related case program for EasyLoader.
>2.After downloading the software, double-click to run the application, connect the M5 device to the computer via the data cable, select the port parameters, and click **"Burn"** to start burning.
!>3.The CP210X (USB driver) needs to be installed before the EasyLoader is burned. [Click here to view the driver installation tutorial](en/related_documents/establish_serial_connection)
## Code
### 1. Arduino IDE
*To get complete code, please click [here](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Unit/ACCEL).<br>
Download library ADXL345 before compile.*
```arduino
#include <M5Stack.h>
#include <ADXL345.h>
ADXL345 accel(ADXL345_ALT); // download this library before compile.
//https://github.com/jakalada/Arduino-ADXL345
// initialization
void setup() {
M5.Lcd.setCursor(20, 100); M5.Lcd.print(" x ");
M5.Lcd.setCursor(120, 100); M5.Lcd.print(" y ");
M5.Lcd.setCursor(220, 100); M5.Lcd.print(" z ");
...
byte deviceID = accel.readDeviceID();
}
void loop() {
if (accel.update()) {
M5.Lcd.fillRect(0, 130, 360, 30, BLACK);
M5.Lcd.setCursor(15, 130); M5.Lcd.print((int)(1000*accel.getX()));
M5.Lcd.setCursor(115, 130); M5.Lcd.print((int)(1000*accel.getY()));
M5.Lcd.setCursor(215, 130); M5.Lcd.print((int)(1000*accel.getZ()));
...
}
```
## Video
- **[Demo Video](https://m5stack.oss-cn-shenzhen.aliyuncs.com/video/Product_example_video/ACCEL.mp4)**
-93
View File
@@ -1,93 +0,0 @@
# Unit DC MOTOR {docsify-ignore-all}
<img src="assets/img/product_pics/unit/acc/acc_01.jpg" width="30%" height="30%"><img src="assets/img/product_pics/unit/acc/acc_02.jpg" width="30%" height="30%">
***
:memo:**[Description](#Description)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:octocat:**[Example](#Example)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :electric_plug:**[Schematic](#Schematic)** &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-Official-ADC-Unit-16-Bit-I2C-GROVE-ADS1100-Module-0V-to-12V-analog-to-digital/3226069_32946953374.html?spm=a2g1x.12024536.productList_5885013.pic_7)**
## Description
This N20 motor is has a 5V supply voltage and comes complete with a built-in metal gearbox. The output shaft has a rotational speed of 60 RPM (no load), and a load RPM of 48. These are also the same motors we use in our BALA robot car and have a nice high build quality feel to them. Specifications can be seen below.
### Product Features
- single-direction rotation
## Include
- 1x ADC unit
- 1x GROVE Cable
- 1x HT3.96 Male Socket(2 pins)
## Application
- Automation
- Vibration motor
## Dcumentation
## Schematic
<img src="assets/img/product_pics/unit/dc_motor/dc_motor_04.jpg">
## EasyLoader
<img src="https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/EasyLoader_logo.png" width="100px" style="margin-top:20px">
<a href="https://m5stack.oss-cn-shenzhen.aliyuncs.com/EasyLoader/Unit/EasyLoader_ADC.exe"><button type="button" class="btn btn-primary">click to download EasyLoader</button></a>
>1.EasyLoader is a simple and fast program burner, and each product page has a product-related case program for EasyLoader.
>2.After downloading the software, double-click to run the application, connect the M5 device to the computer via the data cable, select the port parameters, and click **"Burn"** to start burning.
!>3.The CP210X (USB driver) needs to be installed before the EasyLoader is burned. [Click here to view the driver installation tutorial](en/related_documents/establish_serial_connection)
## Example
### 1. Arduino IDE
*The below code is incomplete(just for usage). If you want the complete code, please click [here](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Unit/ADC/Arduino/ADC_ADS1100).*
```arduino
#include <M5Stack.h>
#include <Wire.h>
#include "ADS1100.h"
#define ADS1100_DEFAULT_ADDRESS 0x48
// declaration
byte error;
int8_t address;
//new a object
ADS1100 ads;
// initialization
M5.begin(true, false, false);
ads.getAddr_ADS1100(ADS1100_DEFAULT_ADDRESS);// 0x48, 1001 000 (ADDR = GND)
ads.setGain(GAIN_ONE); // 1x gain(default)
ads.setMode(MODE_CONTIN); // Continuous conversion mode (default)
ads.setRate(RATE_8); // 8SPS (default)
ads.setOSMode(OSMODE_SINGLE); // Set to start a single-conversion
ads.begin();
// read data
address = ads.ads_i2cAddress;
Wire.beginTransmission(address);
Wire.endTransmission();
ads.Measure_Differential();
```
### 2. UIFlow
*If you want the complete code, please click [here](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Unit/ADC/UIFlow).*
<img src="assets/img/product_pics/unit/unit_example/ADC/example_unit_adc_01.png">
-95
View File
@@ -1,95 +0,0 @@
# Unit OP 90 {docsify-ignore-all}
<img src="assets/img/product_pics/unit/op90/op90_01.jpg" width="30%" height="30%"><img src="assets/img/product_pics/unit/op90/aop90_02.jpg" width="30%" height="30%">
***
:memo:**[Description](#Description)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:octocat:**[Example](#Example)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :electric_plug:**[Schematic](#Schematic)** &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-Official-ADC-Unit-16-Bit-I2C-GROVE-ADS1100-Module-0V-to-12V-analog-to-digital/3226069_32946953374.html?spm=a2g1x.12024536.productList_5885013.pic_7)**
## Description
OP.90 and OP.180 are two limit switches with different orientation placement.
<br>
They are used for controlling machinery as part of a control system, as a safety interlock, or to count objects passing a point.A limit switch is an electromechanical device that consists of an actuator mechanically linked to a set of contacts. When an object comes into contact with the actuator, the device operates the contacts to make or break an electrical connection
<br>
The actuator of this Unit is consist of a pair of IR part, emitter side and receiver side. The IR emitter will keep sending IR wave while the receiver will keep detecting the IR wave. The IR is directly emitted from one side to another side, so if there's no object in between, the receiver side would get the IR signal. This is how it detecting a break an electrical connection.
### Product Features
- Horizontal/vertical
- IR limit switch
## Include
- 1x ADC unit
- 1x GROVE Cable
- 1x HT3.96 Male Socket(2 pins)
## Application
- Door switch
- machinery control
## Dcumentation
## Schematic
<img src="assets/img/product_pics/unit/op90/op90_04.jpg">
## EasyLoader
<img src="https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/EasyLoader_logo.png" width="100px" style="margin-top:20px">
<a href="https://m5stack.oss-cn-shenzhen.aliyuncs.com/EasyLoader/Unit/EasyLoader_ADC.exe"><button type="button" class="btn btn-primary">click to download EasyLoader</button></a>
>1.EasyLoader is a simple and fast program burner, and each product page has a product-related case program for EasyLoader.
>2.After downloading the software, double-click to run the application, connect the M5 device to the computer via the data cable, select the port parameters, and click **"Burn"** to start burning.
!>3.The CP210X (USB driver) needs to be installed before the EasyLoader is burned. [Click here to view the driver installation tutorial](en/related_documents/establish_serial_connection)
## Example
### 1. Arduino IDE
*The below code is incomplete(just for usage). If you want the complete code, please click [here](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Unit/ADC/Arduino/ADC_ADS1100).*
```arduino
#include <M5Stack.h>
#include <Wire.h>
#include "ADS1100.h"
#define ADS1100_DEFAULT_ADDRESS 0x48
// declaration
byte error;
int8_t address;
//new a object
ADS1100 ads;
// initialization
M5.begin(true, false, false);
ads.getAddr_ADS1100(ADS1100_DEFAULT_ADDRESS);// 0x48, 1001 000 (ADDR = GND)
ads.setGain(GAIN_ONE); // 1x gain(default)
ads.setMode(MODE_CONTIN); // Continuous conversion mode (default)
ads.setRate(RATE_8); // 8SPS (default)
ads.setOSMode(OSMODE_SINGLE); // Set to start a single-conversion
ads.begin();
// read data
address = ads.ads_i2cAddress;
Wire.beginTransmission(address);
Wire.endTransmission();
ads.Measure_Differential();
```
### 2. UIFlow
*If you want the complete code, please click [here](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Unit/ADC/UIFlow).*
<img src="assets/img/product_pics/unit/unit_example/ADC/example_unit_adc_01.png">
+91
View File
@@ -0,0 +1,91 @@
# Unit OP180 {docsify-ignore-all}
<img src="assets/img/product_pics/unit/op180/unit_op180_01.jpg" width="30%" height="30%"><img src="assets/img/product_pics/unit/op180/unit_op180_02.jpg" width="30%" height="30%">
***
:memo:**[Description](#Description)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:octocat:**[Code](#Code)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :electric_plug:**[Schematic](#Schematic)** &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;🛒**[Purchase](https://m5stack.com/collections/m5-unit/products/180-infrared-refletive-unit-itr9606)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/EasyLoader_logo-min.jpg">**[EasyLoader](#EasyLoader)**
## Description
OP.90 and OP.180 are two limit switches with different orientation placement. Build with a ITR9606, which is consist of an infrared emitting diode and a silicon phototransistor.
<br>
They are used for controlling machinery as part of a control system, as a safety interlock, or to count objects passing a point.A limit switch is an electromechanical device that consists of an actuator mechanically linked to a set of contacts. When an object comes into contact with the actuator, the device operates the contacts to make or break an electrical connection
<br>
The actuator of this Unit is consist of a pair of IR part, emitter side and receiver side(silicon phototransistor). The IR emitter will keep sending IR wave while the receiver will keep detecting the IR wave. The IR is directly emitted from one side to another side, so if there's no object in between, the receiver side would get the IR signal. This is how it detecting a break an electrical connection.
<br><br><br>
<img src="assets/img/product_pics/unit/op90/unit_op90_03.jpg" width="30%" height="30%">
### Product Features
- Vertical Layout
- IR limit switch
- Fast response time
- High sensitivity
## Include
- 1x OP.180 unit
- 1x GROVE Cable
## Application
- Door Switch
- Machinery Control
- Mouse Copier
- Switch Scanner
- Non-contact Switching
## Documentation
## Schematic
<img src="assets/img/product_pics/unit/op90/unit_op90_04.jpg">
## EasyLoader
<img src="https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/EasyLoader_logo.png" width="100px" style="margin-top:20px">
<a href="https://m5stack.oss-cn-shenzhen.aliyuncs.com/EasyLoader/Unit/EasyLoader_OP.exe"><button type="button" class="btn btn-primary">click to download EasyLoader</button></a>
>1.EasyLoader is a simple and fast program burner, and each product page has a product-related case program for EasyLoader.
>2.After downloading the software, double-click to run the application, connect the M5 device to the computer via the data cable, select the port parameters, and click **"Burn"** to start burning.
!>3.The CP210X (USB driver) needs to be installed before the EasyLoader is burned. [Click here to view the driver installation tutorial](en/related_documents/establish_serial_connection)
## Code
### 1. Arduino IDE
*To get complete code, please click [here](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Unit/OP90.180).*
```arduino
#include <M5Stack.h>
void setup() {
// put your setup code here, to run once:
M5.begin();
//Wire.begin();
M5.Lcd.setCursor(120, 10, 4);
M5.Lcd.println("90/180 OPTICAL");
pinMode(36,INPUT_PULLUP);
}
void loop() {
// put your main code here, to run repeatedly:
M5.Lcd.setCursor(80, 120, 4);
M5.Lcd.printf("ir receive: %d",digitalRead(36));
}
```
## Video
- **[Demo Video](https://m5stack.oss-cn-shenzhen.aliyuncs.com/video/Product_example_video/OP-90.180.mp4)**
+88
View File
@@ -0,0 +1,88 @@
# Unit OP90 {docsify-ignore-all}
<img src="assets/img/product_pics/unit/op90/unit_op90_01.jpg" width="30%" height="30%"><img src="assets/img/product_pics/unit/op90/unit_op90_02.jpg" width="30%" height="30%">
***
:memo:**[Description](#Description)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:octocat:**[Example](#Example)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :electric_plug:**[Schematic](#Schematic)** &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;🛒**[Purchase](https://m5stack.com/collections/m5-unit/products/90-infrared-refletive-unit-itr9606)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/EasyLoader_logo-min.jpg">**[EasyLoader](#EasyLoader)**
## Description
OP.90 and OP.180 are two limit switches with different orientation placement. Build with a ITR9606, which is consist of an infrared emitting diode and a silicon phototransistor.
<br>
They are used for controlling machinery as part of a control system, as a safety interlock, or to count objects passing a point.A limit switch is an electromechanical device that consists of an actuator mechanically linked to a set of contacts. When an object comes into contact with the actuator, the device operates the contacts to make or break an electrical connection
<br>
The actuator of this Unit is consist of a pair of IR part, emitter side and receiver side(silicon phototransistor). The IR emitter will keep sending IR wave while the receiver will keep detecting the IR wave. The IR is directly emitted from one side to another side, so if there's no object in between, the receiver side would get the IR signal. This is how it detecting a break an electrical connection.
<br><br><br>
<img src="assets/img/product_pics/unit/op90/unit_op90_03.jpg" width="30%" height="30%">
### Product Features
- Vertical Layout
- IR limit switch
- Fast response time
- High sensitivity
## Include
- 1x OP.90 unit
- 1x GROVE Cable
## Application
- Door Switch
- Machinery Control
- Mouse Copier
- Switch Scanner
- Non-contact Switching
## Documentation
## Schematic
<img src="assets/img/product_pics/unit/op90/unit_op90_04.jpg">
## EasyLoader
<img src="https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/EasyLoader_logo.png" width="100px" style="margin-top:20px">
<a href="https://m5stack.oss-cn-shenzhen.aliyuncs.com/EasyLoader/Unit/EasyLoader_OP.exe"><button type="button" class="btn btn-primary">click to download EasyLoader</button></a>
>1.EasyLoader is a simple and fast program burner, and each product page has a product-related case program for EasyLoader.
>2.After downloading the software, double-click to run the application, connect the M5 device to the computer via the data cable, select the port parameters, and click **"Burn"** to start burning.
!>3.The CP210X (USB driver) needs to be installed before the EasyLoader is burned. [Click here to view the driver installation tutorial](en/related_documents/establish_serial_connection)
## Example
### 1. Arduino IDE
*To get complete code, please click [here](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Unit/OP90.180).*
```arduino
#include <M5Stack.h>
void setup() {
// put your setup code here, to run once:
M5.begin();
//Wire.begin();
M5.Lcd.setCursor(120, 10, 4);
M5.Lcd.println("90/180 OPTICAL");
pinMode(36,INPUT_PULLUP);
}
void loop() {
// put your main code here, to run repeatedly:
M5.Lcd.setCursor(80, 120, 4);
M5.Lcd.printf("ir receive: %d",digitalRead(36));
}
```
## Video
- **[Demo Video](https://m5stack.oss-cn-shenzhen.aliyuncs.com/video/Product_example_video/OP-90.180.mp4)**
+4 -2
View File
@@ -1,6 +1,6 @@
# Unit RFID {docsify-ignore-all}
<img src="assets/img/product_pics/unit/unit_rfid_01.png" width="30%" height="30%"><img src="assets/img/product_pics/unit/unit_rfid_grove_a.png" width="30%" height="30%"><img src="assets/img/product_pics/unit/unit_rfid_02.png" width="30%" height="30%">
<img src="assets/img/product_pics/unit/unit_rfid_01.png" width="30%" height="30%"><img src="assets/img/product_pics/unit/unit_rfid_02.png" width="30%" height="30%">
***
@@ -15,6 +15,8 @@ The MFRC522 operates in the 13.56MHz frequency band and uses the modulation and
It is able tp establish applications such as access control system, punching system, warehouse goods storage and community vehicle access registration.
Connect this Unit to GROVE PORTA on M5Core, IIC adress is 0x28.
<br><br><br>
<img src="assets/img/product_pics/unit/unit_rfid_grove_a.png" width="30%" height="30%">
## Product Features
@@ -105,7 +107,7 @@ void ShowReaderDetails() {
}
```
<img src="assets/img/product_pics/unit/unit_example/RFID/example_unit_rfid_01.png" width="100 %" height="100 %">
<img src="assets/img/product_pics/unit/unit_example/RFID/example_unit_rfid_01.png" width="100%" height="100%">
### 2. UIFlow
+4 -4
View File
@@ -17,10 +17,10 @@ This unit comunicates with M5Core via I2C(0x29).
*Noitce: If you found TOF performance unstable, means what you have could be the old-version hardware PCB board, Following will teach you how to fix it*
- Disassembling TOF and Check the PCB board, if you see it like this, means it is the NEW(fixed) version.
<img src="assets/img/product_pics/unit/tof/unit_tof_05.jpg" width="30%" height="30%">
- If not, take off the two MOSFETs (AO3400A), and connect SCL,SDA from GROVE directly to SCL,SDA on VL53L0x. See the above picture for wiring.
- <img src="assets/img/product_pics/unit/tof/unit_tof_sch_02.jpg" width="30%" height="30%">
- Disassembling TOF and Check the PCB board, if you see it like this, means it is the NEW(fixed) version. <br> <br> <br>
<img src="assets/img/product_pics/unit/tof/unit_tof_05.jpg" width="30%" height="30%"><br> <br> <br>
- If not, take off the two MOSFETs (AO3400A), and connect SCL,SDA from GROVE directly to SCL,SDA on VL53L0x. See the above picture for wiring.<br> <br> <br>
<img src="assets/img/product_pics/unit/tof/unit_tof_sch_02.jpg" width="60%" height="60%"><br> <br> <br>
- In this case, make sure you use the 3.3V on SDA and SCL, M5Core GROVE provide 3.3V to data pins, 5V to power pin. only 3.3v allowed on VL53L0x.
+92
View File
@@ -0,0 +1,92 @@
# Unit DC MOTOR {docsify-ignore-all}
<img src="assets/img/product_pics/unit/fan/unit_fan_01.jpg" width="30%" height="30%"><img src="assets/img/product_pics/unit/fan/unit_fan_02.jpg" width="30%" height="30%">
***
:memo:**[Description](#Description)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:octocat:**[Code](#Code)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :electric_plug:**[Schematic](#Schematic)** &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;🛒**[Purchase](https://m5stack.com/collections/m5-unit/products/mini-fan-unit?variant=17365249785946)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/EasyLoader_logo-min.jpg">**[EasyLoader](#EasyLoader)**
## Description
**FAN** is designed with an N20 Motor and a small fan piece is included in the package.
This N20 motor is has a 5V supply voltage. The output shaft has a rotational speed of 8800 RPM.
This N20 motor is has a 5V supply voltage and comes complete with a built-in metal gearbox. The output shaft has a rotational speed of 60 RPM (no load), and a load RPM of 48. These are also the same motors we use in our BALA robot car and have a nice high build quality feel to them. Specifications can be seen below.
<br><br><br>
<img src="assets/img/product_pics/unit/fan/unit_fan_03.jpg" width="30%" height="30%">
### Product Features
- single-direction rotation
- 5V-DC
- Simple DC motor with no gear
- 60 mm mini fan paddle
## Include
- 1x FAN unit
- 1x GROVE Cable
- 2x Plastic fan paddle
## Application
- Electric Fan
## Dcumentation
## Schematic
<img src="assets/img/product_pics/unit/fan/unit_fan_04.jpg">
## EasyLoader
<img src="https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/EasyLoader_logo.png" width="100px" style="margin-top:20px">
<a href="https://m5stack.oss-cn-shenzhen.aliyuncs.com/EasyLoader/Unit/EasyLoader_FAN.exe"><button type="button" class="btn btn-primary">click to download EasyLoader</button></a>
>1.EasyLoader is a simple and fast program burner, and each product page has a product-related case program for EasyLoader.
>2.After downloading the software, double-click to run the application, connect the M5 device to the computer via the data cable, select the port parameters, and click **"Burn"** to start burning.
!>3.The CP210X (USB driver) needs to be installed before the EasyLoader is burned. [Click here to view the driver installation tutorial](en/related_documents/establish_serial_connection)
## COde
### 1. Arduino IDE
*To get complete code, please click [here](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Unit/FAN).*
```arduino
#include <M5Stack.h>
const int motor_pin = 21;
int freq = 10000;
int ledChannel = 0;
int resolution = 10;
void setup() {
// put your setup code here, to run once:
M5.begin();
M5.Lcd.setCursor(120, 110, 4);
M5.Lcd.println("MOTOR");
ledcSetup(ledChannel, freq, resolution);
ledcAttachPin(motor_pin, ledChannel);
}
// 0 - 1024
void loop() {
// put your main code here, to run repeatedly:
ledcWrite(ledChannel, 512);//0°
delay(1000);
ledcWrite(ledChannel, 0);//90°
delay(1000);
//ledcWrite(ledChannel, 30);//180°
//delay(1000);
}
```
+90
View File
@@ -0,0 +1,90 @@
# Unit VIBRATOR MOTOR {docsify-ignore-all}
<img src="assets/img/product_pics/unit/vibrator_motor/unit_vibrator_motor_01.jpg" width="30%" height="30%"><img src="assets/img/product_pics/unit/vibrator_motor/unit_vibrator_motor_02.jpg" width="30%" height="30%">
***
:memo:**[Description](#Description)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:octocat:**[Code](#COde)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :electric_plug:**[Schematic](#Schematic)** &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;🛒**[Purchase](https://m5stack.com/collections/m5-unit/products/vibration-motor-unit)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/EasyLoader_logo-min.jpg">**[EasyLoader](#EasyLoader)**
## Description
**Vibrator Motor** is consist of an N20 Motor and a metal eccentric wheel. <br>
This N20 motor is has a 5V supply voltage. The output shaft has a rotational speed of 8800 RPM. Specifications can be seen below.
With this product, you can implement a vibration function to your application.<br>
These days miniature vibrating motors are used in a wide range of products, not just phone and consumer electronics, but also included such as tools, scanners, medical instruments, GPS trackers, and control sticks. Vibrator motors are also the main actuators for haptic feedback which is an inexpensive way to increase a product's value and differentiate it from the competition.
<br><br><br>
<img src="assets/img/product_pics/unit/vibrator_motor/unit_vibrator_motor_03.jpg" width="30%" height="30%">
### Product Features
- single-direction rotation
## Include
- 1x VIBRATOR MOTOR unit
- 1x GROVE Cable
## Application
- Vibration message functions
## Dcumentation
## Schematic
<img src="assets/img/product_pics/unit/fan/unit_fan_04.jpg">
## EasyLoader
<img src="https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/EasyLoader_logo.png" width="100px" style="margin-top:20px">
<a href="https://m5stack.oss-cn-shenzhen.aliyuncs.com/EasyLoader/Unit/EasyLoader_VIBRATOR.exe"><button type="button" class="btn btn-primary">click to download EasyLoader</button></a>
>1.EasyLoader is a simple and fast program burner, and each product page has a product-related case program for EasyLoader.
>2.After downloading the software, double-click to run the application, connect the M5 device to the computer via the data cable, select the port parameters, and click **"Burn"** to start burning.
!>3.The CP210X (USB driver) needs to be installed before the EasyLoader is burned. [Click here to view the driver installation tutorial](en/related_documents/establish_serial_connection)
## Code
### 1. Arduino IDE
*To get complete code, please click [here](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Unit/FAN).*
```arduino
#include <M5Stack.h>
const int motor_pin = 21;
int freq = 10000;
int ledChannel = 0;
int resolution = 10;
void setup() {
// put your setup code here, to run once:
M5.begin();
M5.Lcd.setCursor(120, 110, 4);
M5.Lcd.println("MOTOR");
ledcSetup(ledChannel, freq, resolution);
ledcAttachPin(motor_pin, ledChannel);
}
// 0 - 1024
void loop() {
// put your main code here, to run repeatedly:
ledcWrite(ledChannel, 512);//0°
delay(1000);
ledcWrite(ledChannel, 0);//90°
delay(1000);
//ledcWrite(ledChannel, 30);//180°
//delay(1000);
}
```
+10 -10
View File
@@ -276,7 +276,7 @@
<p class="item-title" style="font-style:italic;">JOYSTICK</p>
</div>
<!-- <div class="item">
<div class="item">
<a href="/#/en/module/faces_finger">
<img src="https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/m5-docs_homepage/module/faces_finger_01.jpg">
</a>
@@ -288,7 +288,7 @@
<img src="https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/m5-docs_homepage/module/faces_rfid_01.jpg">
</a>
<p class="item-title" style="font-style:italic;">RFID</p>
</div> -->
</div>
# BASE
@@ -563,7 +563,7 @@
## TRACE
## ACC
## ACCEL
## OP180
## OP90
@@ -574,11 +574,11 @@
<p class="item-title" style="font-style:italic;">TRACE</p>
</div>
<!-- <div class="item">
<a href="/#/en/unit/acc">
<div class="item">
<a href="/#/en/unit/accel">
<img src="https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/m5-docs_homepage/unit/unit_accel_01.jpg">
</a>
<p class="item-title" style="font-style:italic;">ACC</p>
<p class="item-title" style="font-style:italic;">ACCEL</p>
</div>
<div class="item">
@@ -593,7 +593,7 @@
<img src="https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/m5-docs_homepage/unit/unit_op180_01.jpg">
</a>
<p class="item-title" style="font-style:italic;">OP.180</p>
</div> -->
</div>
**HMI class**
@@ -720,8 +720,8 @@
<p class="item-title" style="font-style:italic;">PROTO</p>
</div>
<!-- <div class="item">
<a href="/#/en/unit/fan">
<div class="item">
<a href="/#/en/unit/unit_fan">
<img src="https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/m5-docs_homepage/unit/unit_fan_01.jpg">
</a>
<p class="item-title" style="font-style:italic;">FAN</p>
@@ -732,7 +732,7 @@
<img src="https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/m5-docs_homepage/unit/unit_vibrator_motor_01.jpg">
</a>
<p class="item-title" style="font-style:italic;">Vibrator-Motor</p>
</div> -->
</div>
**Communication class**