Table of Contents Table of Contents
Previous Page  20 / 102 Next Page
Information
Show Menu
Previous Page 20 / 102 Next Page
Page Background

TECH INSIGHT

VISIONE ARTIFICIALE

20

- ELETTRONICA OGGI 463 - GIUGNO/LUGLIO 2017

La progettazione dei sistemi

di visione basati

sulla visione artificiale

Parte 4 –

Kit di visione

In questa parte viene descritta la realizzazione di un sistema di visione

embedded utilizzando un kit di visione realizzato “ad hoc”

A cura di Xilinx

G

li articoli precedenti di questa serie hanno descritto le procedure di selezione dei sensori, un sistema di

visione embedded e il modo in cui i blocchi funzionali possono essere realizzati all’interno di un sistema

che combina un processore ad alte prestazioni e una matrice FPGA.

Questo articolo illustra come costruire un sistema di visione embedded usando il

Kit di Visione Embedded (EVK)

MicroZed di Avnet

, che contiene il sensore di immagini CMOS Python 1300C di On Semiconductor e il SoC pro-

grammabile Zynq 7020 di Xilinx.

Python 1300C è un sensore di colori con 1280 pixel x 1024 linee, configurato attraverso un’interfaccia SPI, la

sua uscita serializzata supporta velocità elevate dei fotogrammi, mentre l’EVK fornisce una connessione HDMI

ad uno schermo.

Il dispositivo Zynq 7020 realizza le funzionalità del sistema, usando una matrice FPGA (in logica programmabi-

le, o PL), per creare l’interfaccia del dispositivo e la catena di elaborazione delle immagini. Due core ARM A9

alimentano il Sistema di Elaborazione (PS) di Zynq, che può essere usato per la supervisione del sistema e, se

richiesto, per l’estensione della catena di elaborazione delle immagini.

La realizzazione dell’hardware

In questo caso vengono utilizzati due tool di sviluppo dei SoC: Xilinx Vivado 2015.4 e Xilinx SDK 2015.4. Vivado

è usato per realizzare l’interfaccia del dispositivo e la catena di elaborazione delle immagini, oltre che per confi-

gurare il PS all’interno di Zynq e per stabilire comunicazioni da PS a PL mappate in memoria per configurare l’IP

nella catena di elaborazione delle immagini in base alle dimensioni delle immagini, alle velocità dei fotogrammi

e alle operazioni richieste. Questo è ottenuto usando l’interconnessione AXI con funzione generica situata fra il

PS e la PL, con il PS in qualità di master.

Il tool Vivado è anche usato per collocare la memoria DDR all’interno della catena di elaborazione delle immagi-

ni di modo tale che il proces-

sore possa accedervi se ne-

cessario. Ciò può essere fatto

usando

l’interconnessione

AXI fra la PL e il PS, in cui la

PL è il master.

Questo sistema dimostrati-

vo invia l’immagine a uno

schermo su una connessione

HDMI, usando il modulo IP di

interfaccia verso il disposi-

tivo per il Python 1300C, e il

modulo IP fra la connessione

HDMI e l’uscita per interfac-

ciarsi con il dispositivo HDMI

in uscita sull’EVK. Questi mo-

duli IP sono inclusi nel kit.

Fig. 1 – Funzioni eseguite dalla catena di elaborazione delle immagini