Location>code7788 >text

Avnet ZUBoard 1CG Development Board Hands-On - A New Choice for Deep Learning

Popularity:531 ℃/2024-08-13 20:52:11

Avnet ZUBoard 1CG Development Board Hands-On - A New Choice for Deep Learning

summaries

This article introduces the features, architecture, hardware units and other concepts of the Avnet ZUBoard 1CG development board, and provides a basic introduction on how to connect the board using the Ethernet and serial interfaces, supplemented by two application examples to demonstrate its functionality.

Link to original article:

FreakStudio's Blog

Past Recommendations:

You're learning embedded and you don't know how to be object oriented?

The Best Object-Oriented Programming Tutorials on the Web for Getting Started: 00 Introduction to Object-Oriented Design Methods

The network's most suitable for the introduction of object-oriented programming tutorials: 01 Basic Concepts of Object-Oriented Programming

The Best Object-Oriented Programming Tutorials for Getting Started on the Web: 02 Python Implementations of Classes and Objects - Creating Classes with Python

The Best Object-Oriented Programming Tutorials for Getting Started on the Web: 03 Python Implementations of Classes and Objects - Adding Attributes to Custom Classes

The Best Object-Oriented Programming Tutorial on the Net for Getting Started: 04 Python Implementation of Classes and Objects - Adding Methods to Custom Classes

The Best Object-Oriented Programming Tutorial on the Net for Getting Started: 05 Python Implementation of Classes and Objects - PyCharm Code Tags

The best object-oriented programming tutorials on the net for getting started: 06 Python implementation of classes and objects - data encapsulation of custom classes

The best object-oriented programming tutorial on the net for getting started: 07 Python implementation of classes and objects - type annotations

The best object-oriented programming tutorials on the net for getting started: 08 Python implementations of classes and objects - @property decorator

The best object-oriented programming tutorials on the net for getting started: 09 Python implementation of classes and objects - the relationship between classes

The Best Object-Oriented Programming Tutorials on the Net for Getting Started: 10 Python Implementations of Classes and Objects - Class Inheritance and Richter's Replacement Principle

The best object-oriented programming tutorials on the web for getting started: 11 Python implementation of classes and objects - subclasses call parent class methods

The network's most suitable for the introduction of object-oriented programming tutorials: 12 classes and objects of the Python implementation - Python using the logging module to output the program running logs

The network's most suitable for the introduction of object-oriented programming tutorials: 13 classes and objects of the Python implementation - visual reading code artifacts Sourcetrail's installation use

The Best Object-Oriented Programming Tutorials on the Web for Getting Started: The Best Object-Oriented Programming Tutorials on the Web for Getting Started: 14 Python Implementations of Classes and Objects - Static Methods and Class Methods for Classes

The Best Object-Oriented Programming Tutorials on the Net for Getting Started: 15 Python Implementations of Classes and Objects - __slots__ Magic Methods

The Best Object-Oriented Programming Tutorials on the Net for Getting Started: 16 Python Implementations of Classes and Objects - Polymorphism, Method Overriding, and the Principle of Open-Close

The Best Object-Oriented Programming Tutorials for Getting Started on the Web: 17 Python Implementations of Classes and Objects - Duck Types and "file-like objects"

The network's most suitable for the introduction of object-oriented programming tutorials: 18 classes and objects Python implementation - multiple inheritance and PyQtGraph serial data plotting graphs

The Best Object-Oriented Programming Tutorials on the Web for Getting Started: 19 Python Implementations of Classes and Objects - Using PyCharm to Automatically Generate File Comments and Function Comments

The best object-oriented programming tutorials on the web for getting started: 20 Python implementation of classes and objects - Combinatorial relationship implementation and CSV file saving

The best introductory object-oriented programming tutorials on the net: 21 Python implementation of classes and objects - Organization of multiple files: module module and package package

The Best Object-Oriented Programming Tutorials on the Net for Getting Started: 22 Python Implementations of Classes and Objects - Exceptions and Syntax Errors

The Best Object-Oriented Programming Tutorials on the Net for Getting Started: 23 Python Implementation of Classes and Objects - Throwing Exceptions

The Best Object-Oriented Programming Tutorials on the Web for Getting Started: 24 Python Implementations of Classes and Objects - Exception Catching and Handling

The best object-oriented programming tutorials on the web for getting started: 25 Python implementation of classes and objects - Python to determine the type of input data

The Best Object-Oriented Programming Tutorials on the Net for Getting Started: 26 Python Implementations of Classes and Objects - Context Managers and with Statements

The best introductory object-oriented programming tutorials on the web: 27 Python implementation of classes and objects - Exception hierarchy and custom exception class implementation in Python

The best object-oriented programming tutorials on the net for getting started: 28 Python implementations of classes and objects - Python programming principles, philosophies and norms in a big summary

The Best Object-Oriented Programming Tutorials on the Net for Getting Started: 29 Python Implementations of Classes and Objects - Assertions and Defensive Programming and Use of the help Function

The Best Object-Oriented Programming Tutorials for Getting Started on the Web: 30 Python's Built-In Data Types - the root class of object

The Best Object-Oriented Programming Tutorials on the Web for Getting Started: 31 Python's Built-In Data Types - Object Object and Type Type

The Best Object-Oriented Programming Tutorials on the Web for Getting Started: 32 Python's Built-in Data Types - Class Class and Instance Instance

The Best Object-Oriented Programming Tutorials for Getting Started on the Web: 33 Python's Built-In Data Types - The Relationship Between the Object Object and the Type Type

The Best Object-Oriented Programming Tutorials on the Web for Getting Started: 34 Python's Built-In Data Types - Python's Common Compound Data Types: Tuples and Named Tuples

More highlights to watch:

Accelerating Your Python: A Quick Guide to Python Parallel Computing

Understanding CM3 MCU Debugging Principles in One Article

Liver half a month, embedded technology stack summary out of the big

The "Secrets of the Martial Arts" of the Computer Competition

A MicroPython open source project collection: awesome-micropython, including all aspects of Micropython tool library

main body (of a book)

The Avnet ZUBoard 1CG is an FPGA development board based on the RISC-V architecture:

image

image

Its key features include:

Overall, ZUBoard is a development board based on the open RISC-V architecture with flexibility, scalability and rich peripheral support for a wide range of embedded and IoT applications. It provides developers with a powerful hardware platform and rich development support.

1. Areas of application

In the market, the ZUBoard 1CG is positioned in the field of high-performance embedded applications and is particularly suited to application scenarios such as machine learning, image processing, edge computing and IoT, where powerful processing power and flexibility are required.

image

2. Development board hardware unit

2.1 processing unit

Zynq UltraScale+ MPSoC with integrated dual-core A53 APU and dual-core R5 RPU It is responsible for handling most of the computing tasks.

image

image

2.2 Memory and Storage

The chips next to it include DDR4 memory and QSPI flash memory for storing data and the operating system.

image

2.3 peripheral interface

  • JTAG/UART (J11):: For debugging and serial communications
  • USB 2.0 Type A Port (J13): Can be connected to peripherals such as a mouse, keyboard or storage device
  • 15V USB-C power input (J15): Powering the board
  • Ethernet Interface (J11): Gigabit Ethernet support

image

2.4 User buttons and switches

  • User keys (SW1, SW3): User-defined keys that can be used to control the behavior of the program
  • User Slide Switch (SW4): 4-position MIO user switch, user can set the switch state as required
  • Reset button (SW6): For resetting the system
  • Power Switch (SW7): Control board on/off

image

Demonstration section

Next, I'll teach you how to get started with ZUBoard in 2 minutes. I've prepared 2 demos for you, the first one is about digital recognition of gestures with image processing, and the second one is about gesture-controlled software robots.(Both examples from hackster)Before running the demo, let's finish deploying the environment and connecting to the development board via Ethernet.

3.1 Environmental deployment

First, connect the SD card to the front of the computer with a card reader:

image

Format the SD card:

image

Write the image file (the image file can be downloaded from the Baidu.com disk link in the reference section):

image

3.2 Connecting to the Development Board via Ethernet

Wired and connected to a computer with a primary power input of 15V:

image

After power-up, the on-board LEDs will light up:

image

Press the SW7 power on button, the white light will be on to start the power on:

image

The blue light is on, indicating successful power-up:

image

Download the MobaXterm software (the download URL is available at the end of the text):

image

Select the serial port for the USB connection:

image

Set the baud rate to 115200:

image

Turn off flow control:

image

Use ifconfig to view the network IP address:

image

Configure the SSH service to automatically access the internal system, after logging in, we will be inside the system and can start working on programming and configuration. Copy the network IP address into the box for the remote host:

image

Check Sprcify username and enter root:

image

image

The following page will pop up automatically, and we are now successfully connected to the board via Ethernet:

image

3.3 ASL Gesture Digit Recognition Demo

  1. Switch to the project directory ****:pass (a bill or inspection etc)cd asl_classification_vitis_ai command to switch to the project directory
  2. Run the real-time gesture digit recognition script ****:fulfillmentpython3 asl_classify_live.py --model=./model_mobilenetv2/B{#}/asl_classifier.xmodel Command to run real-time gesture digit recognition scripts

Next, we can realize the recognition of gesture numbers!

image

3.4 Gesture Control Software Robot Demo

Perform the following steps:

image

image

image

4. User experience

The design of the ZUBoard 1CG makes it an ideal platform for exploring bare-metal programs, Linux or Vitis AI gas pedals. Its powerful processing capabilities and rich interface resources enable developers to easily implement complex embedded applications. The integrated temperature and pressure sensors on the development board add environmental data acquisition capabilities to the system, thus extending its application range. In addition, with its rich expansion interfaces, the ZUBoard 1CG can be easily connected to a variety of peripherals, further enhancing its flexibility and scalability.

bibliography

  • American Sign Language Recognition (ASL)./AlbertaBeef/asl-classification-with-vitis-ai-025765#toc-executing-the-demo-with-remote-display--mobaxterm-5
  • Gesture-controlled software robots:/AlbertaBeef/controlling-robots-with-zuboard-b6d13b
  • MobaXterm software download site:/
  • Need to download the software and the link to the img file netbook:/s/1fMm9uYWYPWTFoMahdneFlg?pwd=1234

image