OpenMV原理图详解

一、引言

OpenMV是一个基于ARM Cortex-M7的低成本、高性能、易用的开源机器视觉平台,该平台旨在使得物联网及机器人等硬件设备“看得更远、更清楚、更深远”。本文将从硬件角度出发,对OpenMV的原理图进行详解。

二、系统结构

OpenMV主控芯片采用STM32F765VI,其集成了Cortex-M7处理器,拥有最高216 MHz的时钟频率以及最大512 KB的Flash存储器和320 KB的SRAM。其余重要器件还包括

  1. 摄像头单元OV7725
  2. MPU-9250六段式IMU单元
  3. 板载RGB LED
  4. 板载高保真音频输出器
  5. 收音机模块
  6. microSD卡槽

图1为OpenMV原理图的整体结构图:

    +--------------+
    |  STM32F765VI |
    | 256KB Flash  |<----------------+
    |  32KB SRAM   | link  
    |  |         |  | |           | |
    |  |         |  | '-----------' |
    |  |         |  |  FT232RL USB  |---> USB 
    |  |         |  |      ...      |
    |  |         |  |  CP2104 UART  |---> UART
    |  |         |  |      ...      |
    |  |         |  '--------'+-----|---> I2C2_SDA
    |  |         |            |     |
    |  |         |  +--+-+----v-----+--+--+ I2C2_SCL
    |  |  ...    |  | | | |   USB3300 |  |
    |  |         |  | | | |       ... |  |
    |  |         |  | | | |    D+ D-  |  |
 P4.5|--|-|      |  | | | |   A0 A1   ||  CSN|--+         |
 P1.4|--|-|------|--|--|-|-- | MOSI|  |        |
 P1.7|--|-|------|--|--|-|-- | MISO|<-+        |
    |  |         |  | | | |  +-----+           |
    |  |         |  | | | |  +------+---------+
 P1.8|--|-|      |  | | | |  |      |
 P1.9|--|-|      |  | | | |  | I2S3 |
    |  |         |  | | | |  |      |  ...
    '--|---------'  | | | |  +------+-----------+
       |            | | | |  +------+-----------+
    +--'------------|-'-'-'--| USB HS PHY       |
    |               |        +------------------+
    |       ...     |
    |               |
    |        LED(RGB)|
    |               |
    |   microSD slot |
    |               |
    |    audio DAC   |
    |               |
    |    radio IC    |
    |               |
    | IMU(MPU-9250)  |
    |               |
    |  camera(OV7725)|
    |               |
    +---------------+

1、主控芯片

OpenMV主控芯片采用了ST公司的STM32F765VI,该芯片在72MHz时钟下执行DMIPS / MIPS效率为2.14、有控制端口更多,支持JPEG和H.264压缩引擎,支持DSP指令,有4个DMA控制器和2x CAN总线。使用基于Cortex-M7的处理器如STM32F765VI可确保对机器视觉算法和处理流程具有相当的计算性能,同时满足低功耗和小尺寸的要求,适用于嵌入式开发等各种领域。

在原理图中,采用STM32F765VI主控芯片连接基于Cortex-M7架构的处理器,并且将芯片的IO口连接至其他芯片器件。

2、摄像头单元

OpenMV平台采用了OmniVision公司的OV7725图像传感器芯片,该传感器具有高达30fps的QVGA(320×240)图像的JPEG压缩输出,适合于嵌入式计算机视觉应用。

在原理图中,OV7725芯片通过DCMI接口连接至STM32F765VI主控芯片,并且利用原理图中的I2C2总线来控制芯片的寄存器。通过这些接口,OpenMV可以实时读取摄像头数据并在处理器内进行图像处理和分析。

3、IMU单元

OpenMV平台采用了InvenSense公司的MPU-9250六段式IMU芯片,它是一个多功能的低功耗传感器,同时具有三轴陀螺仪、三轴加速度计和三轴电子罗盘的功能。它采用标准I²C(numI2C=2,内置MPU9250_I2C默认为I2C2)接口,包括集成数字运动处理器,可用于运动跟踪、运动传感等。

在原理图中,MPU-9250通过I²C2接口连接至主控芯片,用于实现姿态解算,此外还加入了一些外部元件以支持IMU传感器的电路设计。

4、LED模块

OpenMV平台采用了数码渐变RGB LED模块,通常由三种颜色LED组成,即红(R)绿(G)蓝(B)。通过在某些LED上提供不同的电压水平,可以产生所需的颜色。采用RGB LED模块可以满足OpenMV在运作过程中所需的各种指示灯显示。

在原理图中,LED模块直接连接至主控芯片的GPIO引脚,可直接控制颜色、亮度和闪烁频率等参数。

5、其他器件模块

OpenMV平台还集成了其他一些器件模块,如microSD卡槽、高保真音频输出器、收音机模块等。它们通过SPI总线、I²S3接口、I²C3接口和其他GPIO端口接口等连接到主控芯片上,用于提供额外的存储、音频输出和收音等功能。

三、OpenMV电路板选型思考

OpenMV的硬件设计采用模块化布局,主要是为了便于用户的操作和管理,过程中没有任何点对点直接连接和复杂的硬件结构,这可能有助于在产品维护方面节省资源和时间。

四、结论

本文主要从硬件角度对OpenMV的原理图进行详解,通过分析OpenMV的系统结构和器件模块,我们可以更好地理解机器视觉方面的技术及其实现方式。同时,也可以更好地评估OpenMV平台的应用范围和性能优劣。

原创文章,作者:PEDIB,如若转载,请注明出处:https://www.506064.com/n/372987.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
PEDIBPEDIB
上一篇 2025-04-25 15:26
下一篇 2025-04-25 15:26

相关推荐

  • l9110风扇传感器模块原理图解析

    本文将从原理图概述、硬件特性、软件实现等多个方面对l9110风扇传感器模块进行详细解析,并给出对应代码实例。 一、原理图概述 l9110风扇传感器模块主要由驱动芯片l9110、电位…

    编程 2025-04-28
  • Qubes OS原理图解析

    Qubes OS是一种安全的操作系统,旨在提供强大的安全、隔离和轻松管理多个虚拟机的能力。这篇文章将讨论Qubes OS的原理图,并从多个方面进行详细阐述。 一、架构综述 Qube…

    编程 2025-04-27
  • Linux sync详解

    一、sync概述 sync是Linux中一个非常重要的命令,它可以将文件系统缓存中的内容,强制写入磁盘中。在执行sync之前,所有的文件系统更新将不会立即写入磁盘,而是先缓存在内存…

    编程 2025-04-25
  • 神经网络代码详解

    神经网络作为一种人工智能技术,被广泛应用于语音识别、图像识别、自然语言处理等领域。而神经网络的模型编写,离不开代码。本文将从多个方面详细阐述神经网络模型编写的代码技术。 一、神经网…

    编程 2025-04-25
  • Linux修改文件名命令详解

    在Linux系统中,修改文件名是一个很常见的操作。Linux提供了多种方式来修改文件名,这篇文章将介绍Linux修改文件名的详细操作。 一、mv命令 mv命令是Linux下的常用命…

    编程 2025-04-25
  • Python输入输出详解

    一、文件读写 Python中文件的读写操作是必不可少的基本技能之一。读写文件分别使用open()函数中的’r’和’w’参数,读取文件…

    编程 2025-04-25
  • MPU6050工作原理详解

    一、什么是MPU6050 MPU6050是一种六轴惯性传感器,能够同时测量加速度和角速度。它由三个传感器组成:一个三轴加速度计和一个三轴陀螺仪。这个组合提供了非常精细的姿态解算,其…

    编程 2025-04-25
  • nginx与apache应用开发详解

    一、概述 nginx和apache都是常见的web服务器。nginx是一个高性能的反向代理web服务器,将负载均衡和缓存集成在了一起,可以动静分离。apache是一个可扩展的web…

    编程 2025-04-25
  • 详解eclipse设置

    一、安装与基础设置 1、下载eclipse并进行安装。 2、打开eclipse,选择对应的工作空间路径。 File -> Switch Workspace -> [选择…

    编程 2025-04-25
  • Python安装OS库详解

    一、OS简介 OS库是Python标准库的一部分,它提供了跨平台的操作系统功能,使得Python可以进行文件操作、进程管理、环境变量读取等系统级操作。 OS库中包含了大量的文件和目…

    编程 2025-04-25

发表回复

登录后才能评论