查看: 1320|回复: 0

[入门] 带你入坑 Maixduino

[复制链接]

带你入坑 Maixduino


K210是什么?
K210是一款 64 位双核带硬件 FPU、卷积加速器、FFT、Sha256 的 RISC-V CPU 。
因此,它在硬件上集成了机器视觉和机器听觉能力, 是一款定位 AI 和 AIOT 市场的 SoC,同时也是一颗性能强劲的同时却有着极低的价格


功能特性CPU:

  • RISC-V 双核64bit、内置FPU、400Mhz标准频率(可超频)

  • 内置神经网络处理器连接器:兼容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/n802.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:+15dBm802.11.g:+10dBm(54Mbps)               

  • 802.11.n:+10dBm(65Mbps)

  • 无线连接器:IPEX 3.03.0mm

  • Wi-Fi模式:Station/SoftAP/SoftAP+Station




基于 K210 的系列MAIX板子到底能做什么?

支持 MCU 常规操作, 集成了机器视觉和麦克风阵列, 通过Micropython 编程以快速开发具有极低成本和体积实用的 AIOT 领域智能应用。



上实例有很多:

人脸检测、物体识别、tiny yolov2 20分类

识别颜色值、找形状、找直线、面部识别等

MNIST 手写数字识别、视频播放和录制、NES 游戏模拟器 (FC 红白机)
MMD 3D 实时渲染、GUI 界面 littlevGL、麦克风阵列、FFT 频谱图
......

介绍完毕开始讲新手必看指南之开发环境准备:
(本文只针对Maixduino)
安装时注意 摄像头、SD(TF) 卡、LCD 的安装方向

(一)安装驱动

正式使用 Maixduino板之前,我们需要先安装好串口驱动,才可进行下一步的开发与使用;
因为板子是通过 USB 转串口设备与电脑连接(K210 没有 USB 硬件支持功能)。
根据板子的 USB 转串口芯片型号装驱动。
Maixduino板需要装 CH340(WIN10可能自动安装),如果没有就在网上搜索 CH340 驱动 下载安装即可,
然后可以在 设备管理器 中看到串口设备(COMXX)。

(二)安装、使用串口工具
连接 Type C 线, 一端电脑一端开发板(如上图)
Windows 常用的串口终端软件有很多,这里选 mobaxterm

下载、安装后启动,按下列顺序进行,连接Maixduino板。

在Maixduino板上按一下 RST,立即出现K210基本信息。
如:固件版本等。


这个黑乎乎窗口支持交互方式称为 REPL(Read Eval Print Loop:交互式解释器)
如:键入help(),将显示ctrl-C(中断正在运行的程序)、ctrl-E(粘贴模式)。
输入MicroPython 语句,回车执行。
(三)升级Maixduino板固件
1、找到固件文件下载到PC电脑

2、下载升级工具 kflash_gui

在解压文件夹中双击运行(右键发送到桌面更方便)

3、启动升级工具 kflash_gui把PC电脑上的固件文件再下载到Maixduino 板

稍等~成功!
(四)安装 MaixPy IDE、运行例程
在前面已经安装了串口终端工具(黑乎乎窗口),基本上可以玩了。
为什么要这个 IDE 呢?官方文档这样说:
使用 IDE 则会方便在电脑上实时编辑脚本并上传到开发板以及直接在开发板上执行脚本,
以及在电脑上实时查看摄像头图像、保存文件到开发板等。
当然, 使用 IDE 因为压缩、传输需要耗费一部分资源,
所以性能会有所降低,而且如果MaixPy宕机也没有串口终端好发现问题。
要使用 MaixPy IDE , 板子固件必须是 v0.3.1 版本以上, 否则MaixPyIDE 上会连接不上,
使用前尽量检查固件版本和 IDE 版本,都更新到最新版以保障能正常使用。

IDE下载、安装后启动,再连接Maixduino板

打开一个例程(程序功能:寻找绿色对象目标,框起来)

ctrl-r 或点击绿色运行按钮以执行程序:

摄像头对着字典,执行结果:
字典下面绿色部分被发现并框了起来。

其它示例代码
1:【识别绿色物体代码】

import sensor
import image
import lcd
import time

lcd.init()
lcd.mirror(True)# 设置 LCD 是否镜面显示 OK
sensor.reset()

sensor.set_pixformat(sensor.RGB565)
sensor.set_framesize(sensor.QVGA)
sensor.run(1)
green_threshold   = (0,   80,  -70,   -10,   -0,   30)
while True:
    img=sensor.snapshot()
    blobs = img.find_blobs([green_threshold])
    if blobs:
        for b in blobs:
            tmp=img.draw_rectangle(b[0:4])
            tmp=img.draw_cross(b[5], b[6])
            c=img.get_pixel(b[5], b[6])
    lcd.display(img)

2:【识别人脸代码】

import sensor
import image
import lcd
import KPU as kpu

lcd.init()
lcd.mirror(True)
sensor.reset()
sensor.set_pixformat(sensor.RGB565)
sensor.set_framesize(sensor.QVGA)
sensor.run(1)
task = kpu.load(0x300000) # you need put model(face.kfpkg) in flash at address 0x300000
# task = kpu.load("/sd/face.kmodel")
anchor = (1.889, 2.5245, 2.9465, 3.94056, 3.99987, 5.3658, 5.155437, 6.92275, 6.718375, 9.01025)
a = kpu.init_yolo2(task, 0.5, 0.3, 5, anchor)
while(True):
    img = sensor.snapshot()
    code = kpu.run_yolo2(task, img)
    if code:
        for i in code:
            print(i)
            a = img.draw_rectangle(i.rect())
    a = lcd.display(img)
a = kpu.deinit(task)

(五)安装 uPyLoader
目的:为了更方便查看处理Maixduino板里的文件等

运行并连接Maixduino如下:
左窗口是PC文件,右窗口是Maixduino板文件。
左右文件可以互传或删除。

想入深坑请钻研官方文档:https://cn.maixpy.sipeed.com/zh/

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2020 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail