37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与否,都会记录下来—小小的进步或是搞不掂的问题,希望能够抛砖引玉。
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百八十一:Maixduino AI开发板 k210 RISC-V AI+lOT ESP32视觉听觉开发套装
知识点:勘智K210
2018年9月6日,嘉楠科技推出自主设计研发的全球首款基于RISC-V的量产商用边缘智能计算芯片勘智K210。该芯片依托于完全自主研发的AI神经网络加速器KPU,具备自主IP、视听兼具与可编程能力三大特点,能够充分适配多个业务场景的需求。
作为嘉楠科技自主研发的边缘侧AI芯片,勘智K210兼具高能耗比和灵活性。在算力方面,勘智K210可在0.3W的条件下提供1TOP的算力支持,充分适配在多数业务场景中低功耗约束下的算力需求。在芯片集成度方面,勘智K210采用视听一体化设计。在机器视觉上,芯片基于自主研发的神经网络加速器KPU,可完成基于神经网络的图像分类任务,进行人脸识别与检测,以及实时获被检测目标的分类。在听觉能力上,芯片自带APU语音处理单元,最高可支持8路音频数据及16个方向,无需占用CPU即可实现声源定向、声场成像、波束形成、语音识别与唤醒等功能。在算法定制化方面,勘智K210在可编程能力上呈现出更高的灵活性。首先,相比ARM等架构,勘智K210采用RISC-V架构,拥有更强的可定制化能力,便于开发者根据具体应用场景定制算法。其次,芯片搭载FPIOA现场可编程IO阵列,支持TensorFlow、Keras、Darknet、PaddlePaddle和Caffe等主流AI编程框架,以及全面的开发文档,对开发者十分友好。此外,芯片内置64位双核处理器架构,分为计算核与应用核,能够为开发者提供足以应对复杂业务场景的计算资源。
Maixduino AI开发板功能特性
CPU:RISC-V 双核64bit、内置FPU、400Mhz标准频率(可超频)
内置神经网络处理器
OV2640摄像头:200W像素通用24P摄像头
连接器:兼容Arduino 接口、TF卡槽、扬声器接口
无线功能:支持2.4G 802.11.b/g/n、支持Bluetooth 4.2
音频功能:MEMS 麦克风、3W扬声器输出
8 Bit(256 级) 可调颜色,5Bit (32 级)亮度调节
DVP 摄像头接口:24P 0.5mm FPC 连接器,支持OV2640、5640、7740等
LCD接口:24P 0.5mm FPC 连接器,支持8bit MCU LCD
ESP32模块:支持2.4G 802.11.b/g/n
802.11 n(2.4G)速率达到150Mbps
Bluetooth v4.2全规格,包含传统蓝牙(BR/EDR)和低功耗蓝牙(BLE)
开发环境:支持Arduino IDE、MaixPy IDE、OpenMV IDE等
技术规格
尺寸:68mm 54mm
电源输入:USB Type-C(支持6~12V输入)
温升:<20K
工作温度范围:-30~85ºC
MCU:ESP8285
无线标准:802.11 b/g/n
频率范围:2400Mhz~2483.5Mhz
发射功率:802.11.b:+15dBm
802.11.g:+10dBm(54Mbps)
802.11.n:+10dBm(65Mbps)
无线连接器:IPEX 3.03.0mm
Wi-Fi模式:Station/SoftAP/SoftAP+Station
k210 RISC-V AI+lOT ESP32视觉听觉开发套装 ,包括有
OV2640摄像头:200W像素通用24P摄像头
ST7789驱动器芯片2.4寸LCD屏(24P 320X240)
OV2640图像传感器
具有200万像素(1632x1232像素),其体积小、工作电压低,提供单片UXGA摄像和影像处理器的所有功能。通过SCCB总线控制,可以输出整帧、子采样、取窗口等方式的各种分辨率10位采样数据。该产品UXGA图像最高达到15帧/秒。用户可以完全控制图像质量、数据格式和传输方式。所有图像处理功能过程包括伽玛曲线、白平衡、饱和度、色度等都可以通过SCCB接口编程。OmmiVision图像传感器应用独有的传感器技术,通过减少或消除光学或电子缺陷如固定图案噪声、托尾、浮散等,提高图像质量,得到清晰的稳定的彩色图像。
OV2640主要参数
可以支持定制FPC长度,镜头角度(70-160度)可以支持定制FPC长度,镜头角度(70-160度)
感光阵列1632x1232 最大格式UXGA
IO电压1.7V-3.3V 模拟电压2.5-3.0v(内部LDO给核供电1.2V)
功耗工作TBD 休眠<20μA
温度操作-30℃到70℃
稳定工作0℃到50℃
输出格式(8位)YUV/YCbCr4:2:2 RGB565/555/444 GRB4:2:2 Raw RGB Data
光学尺寸1/4"
视场角70度
最大贞率15fps SXGA
灵敏度1.3V/(Lux-sec)
信噪比40 dB
动态范围50 dB
浏览模式逐行
电子曝光1行到1247行
像素面积2.2μm x 2.2μm
暗电流15mV/s at 60℃
工作电流40mA
ST7789驱动器芯片2.4寸LCD屏(24P 320X240)
【Arduino】168种传感器模块系列实验(资料+代码+图形+仿真)
实验一百五十三:Maixduino AI开发板 k210 RISC-V AI+lOT ESP32视觉听觉开发套装
安装
项目之二:测试Maixduino配套2.4寸LCD屏
/*
【Arduino】168种传感器模块系列实验(资料+代码+图形+仿真)
实验一百五十三:Maixduino AI开发板 k210 RISC-V AI+lOT ESP32视觉听觉开发套装
安装库,开发板自带
项目之二:测试Maixduino配套2.4寸LCD屏
*/
#include
SPIClass spi_(SPI0); // Maix系列板载LCD必须为SPI0
Sipeed_ST7789 lcd(320, 240, spi_);
void func()
{
lcd.fillScreen(COLOR_RED);
lcd.drawRect(20, 20, 50, 50, COLOR_WHITE);
lcd.fillCircle(100, 100, 40, COLOR_WHITE);
lcd.fillTriangle(10, 200, 300, 200, 300, 150, COLOR_WHITE);
lcd.setTextSize(2);
lcd.setTextColor(COLOR_WHITE);
lcd.setCursor(100, 30);
lcd.println("hello Maixduino");
}
void func2()
{
lcd.fillScreen(COLOR_RED);
lcd.drawRect(20, 20, 50, 50, COLOR_WHITE);
lcd.fillCircle(180, 50, 40, COLOR_WHITE);
lcd.fillTriangle(10, 300, 200, 300, 200, 150, COLOR_WHITE);
lcd.setTextSize(2);
lcd.setTextColor(COLOR_WHITE);
lcd.setCursor(1, 100);
lcd.println("hello Maixduino");
}
void setup()
{
lcd.begin(15000000, COLOR_RED);
}
void loop()
{
lcd.setRotation(0);
func();
delay(3000);
lcd.invertDisplay(true);
func();
delay(3000);
lcd.setRotation(1);
func2();
delay(3000);
lcd.setRotation(2);
func();
delay(3000);
lcd.setRotation(3);
func2();
delay(3000);
}
推断Maixduino板子右上角,这颗芯片是三轴数字加速计MSA300(猜测的)
MSA300
1、是一种三轴低g加速度计,具有I2C/SPI数字输出
2、消费级以及专业级应用
3、它具有动态用户可选择的完整
4、加速度测量范围为±2g/±4g/±8g/±16g和al
5、输出数据速率从1Hz到500Hz
6、MSA300提供超小型
(2毫米x 2毫米,高度1毫米)LGA包装
7、使用温度范围 -40°C至+85°C
主要特征
1、超小包装2x2x1毫米,LGA-12针
2、用户可选择范围, ±2g, ±4g, ±8g, ±16g
3、1.62V至3.6V工作电源电压
4、1.2V至3.6V IO电源电压
5、用户可选择的数据输出速率
6、接口I2C/SPI(4线/3线)
7、具备二个中断引脚
8、14位分辨率
9、低功耗
10、编程偏移和敏感
11、符合RoHS应用规范
12、适合手机和平板电脑
13、显示方向
14、手势识别
15、振动监测
16、内倾角和倾斜感应
17、计步器
18、玩游戏
19、自由落体检测
【Arduino】168种传感器模块系列实验(资料+代码+图形+仿真)
实验一百五十三:Maixduino AI开发板 k210 RISC-V AI+lOT ESP32视觉听觉开发套装
安装
项目之三:测试Maixduino板载三轴数字加速计MSA300
/*【Arduino】168种传感器模块系列实验(资料+代码+图形+仿真)
实验一百五十三:Maixduino AI开发板 k210 RISC-V AI+lOT ESP32视觉听觉开发套装
安装 库,开发板自带
项目之三:测试Maixduino板载三轴数字加速计MSA300
*/
#include
#include
// 这是将创建的字符串的长度
// 包含减号和小数点
const signed char formattedStringLength = 11;
// 待打印的异常点后的位数
const unsigned char numVarsAfterDecimal = 6;
acc_t data;
MSA300 msa;
static char outstr[formattedStringLength];
char * formatValue(float value)
{
dtostrf(value, formattedStringLength, numVarsAfterDecimal, outstr);
return outstr;
}
void setup()
{
Serial.begin(9600);
Wire.begin();
msa.begin();
}
void loop()
{
data = msa.getAcceleration();
Serial.printf("Xa:%s ", formatValue(data.x));
Serial.printf("Ya:%s ", formatValue(data.y));
Serial.printf("Za:%s", formatValue(data.z));
Serial.println();
delay(1000);
}
二种可能:
一是只有示例,Maixduino板上没有MSA300硬件
二是有硬件,但设置接口有误,没有信号输入