Avnet ZUBoard 1CG开发板上手—深度学习新选择

Avnet ZUBoard 1CG 开发板上手—深度学习新选择

摘要

本文主要介绍了 Avnet ZUBoard 1CG 开发板的特性、架构、硬件单元等概念,并对如何使用以太网接口和串口连接开发板进行基本介绍,同时辅以两个应用例程演示其功能。

原文链接:

FreakStudio的博客

视频教程

正文

Avnet ZUBoard 1CG 是一种基于 RISC-V 架构的 FPGA 开发板:

image

image

其主要特性包括:

总的来说,ZUBoard 是一款基于开放 RISC-V 架构的开发板,具有灵活性、可扩展性和丰富的外围设备支持,广泛应用于嵌入式和物联网领域。它为开发者提供了一个强大的硬件平台和丰富的开发支持。

1.应用领域

在市场中,ZUBoard 1CG 定位于高性能嵌入式应用领域,特别适合于机器学习、图像处理、边缘计算和物联网等需要强大处理能力和灵活性的应用场景。

image

2.开发板硬件单元

2.1 处理器

Zynq UltraScale+ MPSoC,集成了双核 A53 APU 和双核 R5 RPU 它负责处理大部分的计算任务。

image

image

2.2 内存和存储

旁边的芯片包括 DDR4 内存和 QSPI 闪存,用于存储数据和操作系统。

image

2.3 外设接口

  • JTAG/UART (J11): 用于调试和串口通信
  • USB 2.0 Type A 端口 (J13): 可以连接外设,比如鼠标、键盘或存储设备
  • 15V USB-C 电源输入 (J15): 为板子供电
  • 以太网接口 (J11): 支持千兆以太网

image

2.4 用户按钮和开关

  • 用户按键 (SW1, SW3): 供用户自定义的按键,可以用来控制程序的行为
  • 用户滑动开关 (SW4): 4 位 MIO 用户开关,用户可以根据需要设置开关状态
  • 复位按钮 (SW6): 用于复位系统
  • 电源开关 (SW7): 控制板子的开关机

image

3.demo 演示部分

接下来教大家 2 分钟快速上手 ZUBoard,在这里为大家准备了 2 个 demo,第一个是关于图像处理的手势数字识别,第二个是手势控制软件机器人**(俩个示例均来源于 hackster)**在运行 demo 之前,我们先完成环境的部署和通过以太网连接到开发板。

3.1 环境部署

首先,将 SD 卡用读卡器连接到电脑前:

image

格式化 SD 卡:

image

写入镜像文件(镜像文件可在参考资料部分的百度网盘链接中进行下载):

image

3.2 通过以太网连接到开发板

接线,连接到电脑,主要电源输入为 15V:

image

上电之后,板载 LED 灯会亮起:

image

按下 SW7 开机按键,白灯亮开始开机:

image

蓝灯亮起,说明开机成功:

image

下载 MobaXterm 软件(下载网址在文中最后可获取):

image

选择 USB 连接的串口:

image

设置波特率为 115200:

image

关掉流控:

image

使用 ifconfig 查看网络 IP 地址:

image

配置 SSH 服务,自动进入内部系统,登录后,我们将进入系统的内部,可以开始进行编程和配置工作。将网络 IP 地址复制到远程主机的框中:

image

选中 Sprcify username,输入 root:

image

image

接下来会自动弹出下面这个页面,现在我们就成功通过以太网连接到开发板了:

image

3.3 ASL 手势数字识别 Demo

  1. 切换到项目目录**:**通过 cd asl_classification_vitis_ai 指令切换到项目目录
  2. 运行实时手势数字识别脚本**:**执行 python3 asl_classify_live.py --model=./model_mobilenetv2/B{#}/asl_classifier.xmodel 指令去运行实时手势数字识别脚本

接下来,我们就可以实现手势数字的识别啦!

image

3.4 手势控制软件机器人 Demo

进行如下步骤:

image

image

image

4.使用体验

ZUBoard 1CG 的设计使得它成为探索裸机程序、Linux 或 Vitis AI 加速器的理想平台。其强大的处理能力和丰富的接口资源,使得开发者能够轻松实现复杂的嵌入式应用。开发板上集成的温度和压力传感器,为系统增加了环境数据采集的能力,从而扩展了其应用范围。此外,通过丰富的扩展接口,ZUBoard 1CG 可以方便地与各种外设进行连接,进一步提高了其灵活性和可扩展性。

参考资料

  • 美国手语识别(ASL):https://www.hackster.io/AlbertaBeef/asl-classification-with-vitis-ai-025765#toc-executing-the-demo-with-remote-display–mobaxterm-5
  • 手势控制软件机器人:https://www.hackster.io/AlbertaBeef/controlling-robots-with-zuboard-b6d13b
  • MobaXterm 软件下载网址:https://mobaxterm.mobatek.net/download-home-edition.html
  • 需要下载软件及 img 文件资料链接:[https://mp.weixin.qq.com/s/2-Z6WqekVOuDbEdiE65Wfw)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/400290.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何编写一个CMakeLists.txt文件(由简到难,较详细)

在Linux系统下,经常使用CMakeLists.txt文件来链接、编译C工程,大部分人clone的代码里都是有CMakeLists.txt文件的,只需要cmake .. 和make就完事了,但在工作中,你必须要有从无到有编写CMakeLists.txt文件的能力。 一、…

【QGroundControl二次开发】十. QT添加GStreamer视频播放同时保存

上一章介绍使用QT播放GStreamer视频流 【QGroundControl二次开发】八. QT实现播放gstreamer视频。 这章介绍如何在原有基础上保存为视频,同时保存为一个个规定大小的小视频。 一. 思想 之前的文章展示了如何在QT中播放GST视频流,这章在原有的基础上增加…

金九银十,软件测试面试题合集(含答案)

前言 前面看到了一些面试题,总感觉会用得到,但是看一遍又记不住,所以我把面试题都整合在一起,都是来自各路大佬的分享,为了方便以后自己需要的时候刷一刷,不用再到处找题,今天把自己整理的这些…

常见的几种用例测试方法

等价类划分法 适用场景:需要有大量的测试数据输入,但是我们实际测试中不可能一一列举进行测试,所以讲数据进行分类,选出具有代表性的数据代表一类数据进行测试。 分类: 有效等价类:满足需求的数据无效等…

普元EOS-新项目不停提示登录信息已过期

1 问题 新创建的EOS精简应用, 项目端口为 28015 启动后,在浏览器输入地址 http://127.0.0.1:28015 。 页面不停提示 “登录信息已过期” 2 解决办法 EOS的项目对Login-Filter的配置错误, EOS的项目在Http安全过滤管理的时候,会…

【原创】java+swing+mysql商品信息管理系统设计与实现

个人主页:程序员杨工 个人简介:从事软件开发多年,前后端均有涉猎,具有丰富的开发经验 博客内容:全栈开发,分享Java、Python、Php、小程序、前后端、数据库经验和实战 开发背景: 使用javaswing技…

使用mybatis注解和xml映射执行javaWeb中增删改查等操作

Mapper接口 使用注解执行SQL语句操作和相应的Java抽象类(对于简单的增删改查使用注解) Mapper public interface EmpMapper {// 根据id删除员工信息Delete("delete from mybatis.emp where id#{id}")public int EmpDelete(Integer id);// 查…

【mysql 第一篇章】系统和数据库的交互方法

一、宏观的查看系统怎么和数据库交互 在我们刚刚接触系统和数据库的时候不明白其中的原理,只知道系统和数据库是需要交互的。所以我们会理解成上图的形式。 二、MYSQL 驱动 随着我们的学习时间的加长以及对程序的了解,发现链接数据库是需要有别的工具辅…

可乐机的设计验证

前言 状态机(State Machine)是一种数学模型,用于表示具有有限状态集合的系统。它通过定义状态、转移规则和事件,描述系统在不同条件下的行为。状态机的核心概念包括状态、事件、转移和动作。状态是系统的具体条件或配置&#xff0…

【Python】函数入门(下)

3))* ** ​​​​​​注意:也遵循位置传参在前面,按关键字传参在后面。 代码示例: def func(*args,**kwargs):print(args,kwargs) 该函数中的参数会自动根据传参的方式不同(即:按位置…

k8s 四种Service类型(ClusterIP、NodePort、LoadBalancer、ExternalName)详解

🐇明明跟你说过:个人主页 🏅个人专栏:《Kubernetes航线图:从船长到K8s掌舵者》 🏅 🔖行路有良友,便是天堂🔖 目录 一、引言 1、k8s概述 2、Service在Kubernetes中的…

【Redis】事务

目录 什么是事务 事务操作 MULTI EXEC DISCARD WATCH UNWATCH 什么是事务 Redis 的事务和 MySQL 的事务概念上是类似的. 都是把⼀系列操作绑定成⼀组. 让这⼀组能够批量执⾏. 但是注意体会 Redis 的事务和 MySQL 事务的区别: 弱化的原⼦性: redis 没有 "回滚机制…

Zabbix自动导出PDF报告

zabbix6提供了定时导出PDF报告功能。此功能可按照Dashboard维度,定时自动导出报告,并通过邮件发送。 1.安装 zabbix 提供了官方的rhel8版本的rpm包,可使用yum方式安装,zabbix自动导出PDF功能是基于go环境的zabbix web service程…

C语言 ——— 在杨氏矩阵中查找具体的某个数

目录 何为杨氏矩阵 题目要求 代码实现 何为杨氏矩阵 可以把杨氏矩阵理解为一个二维数组,这个二维数组中的每一行从左到右是递增的,每一列从上到下是递增的 题目要求 在杨氏矩阵中查找具体的某个数 要求:时间复杂度小于O(N) 代码实现…

如何定义和引用二维数组

一.二维数组 常称为矩阵,把二维数组写成行和列的排列形式。、 二.怎么定义二维数组 float pay[3][5]; 以上定义了一个float型的二维数组,第1维有3个元素,第2维有6个元素。每一维的长度分别用一对方括号括起来。 二维数组定义的一般形式为 …

基于STM32开发的智能家居照明控制系统

目录 引言环境准备工作 硬件准备软件安装与配置系统设计 系统架构硬件连接代码实现 初始化代码控制代码应用场景 家庭照明自动化节能照明管理常见问题及解决方案 常见问题解决方案结论 1. 引言 智能家居照明控制系统通过整合各种传感器和控制器,能够实现对家居照…

基于ICMP(Ping)的多线程网络通道监视程序(QT)开发

基于ICMP(Ping)的多线程网络通道监视程序(QT)开发 1、 ICMP原理简介 可参考 ICMP(Ping)功能原理及其C实现简介 。 2、 网络通道监视程序开发 设计原理: 通过PING 功能实现服务器、交换机、网闸等设备的网络检测,判断网络的否可达和TTL计算 。 具备功…

【应用层协议】自定义协议 {定义结构化数据;数据格式转换:序列化和反序列化,使用json库进行数据格式交换;分包和解包:为报文内容添加报头}

一、简单了解TCP协议(引子) 1.1 三次握手 三次握手就是客户端向服务端发起连接的过程 服务器初始化 调用socket,创建套接字文件 调用bind,将当前的文件描述符和ip/port绑定在一起;如果这个端口已经被其他进程占用了&…

外贸12年,通过6个方法,成交几千万订单

做外贸有12个年头了,各种各样的方法都有试过,我成交的这几千万订单,大部分都是通过这6个方法来的,下面我来给大家整理分享一下。 1.谷歌搜索 谷歌搜索算是做外贸入门级的基础技能了,要做好外贸,这个技能一…

86.小米相机修改拍照(尺寸,画幅,比例)的方法

目录 1.打开相机,拍照模式,上面有个箭头或三个点,点击 2.点击画幅 3.点击你想要的画幅即可。 想要修改手机照片的(尺寸,画幅,比例)时,总会去找分辨率,其实并不是&…