 Buongiorno e benvenuti, sono Francesca Sandrini, Technical Marketing presso ST Microelectronics. Oggi vedremo una nuova soluzione di ST per il controllo motore nella robotica industriale, il kit di valutazione Evil Kit Robot 1. Questi i quattro argomenti che andremo a indirizzare. In primis una veloce introduzione della famiglia ST Spin32F0, una soluzione System in Package per controllo motore, evidenziando le caratteristiche che fanno di questa famiglia una buona opzione per la robotica. Poi passeremo a Evil Kit Robot 1, un dimostrattore che attua un controllo servo, andando nei dettagli sia per quel che riguarda l'aspetto hardware che firmware. Nella terza sezione discuteremo poi la componentistica o bomba necessaria per questa soluzione, come scalarlo opportunamente a secondare il motore che ci troviamo a pilotare. Alla fine un veloce scursus su l'ecosistema ST Spin32, includendo hardware, software e tools. ST Spin32 è una famiglia di soluzioni System in Package che includono nello stesso package due distinti circuito integrati. Il microcontrollore STM32 è un chip analogico con il triple driver necessario per pilotare un motore BLDC. I principali vantaggi di questa combinazione sono tre. La possibilità di programmare il driver con qualsiasi algoritmo si desideri usando pochissimo spazio sul circuito stampato. Il facile riutilizzo della soluzione per inverter di diversa potenza cambiando i MOSFET o i GPT e infine il fatto che avendo un microcontrollore STM32 integrato possiamo far girarle liberi e stand del controllo motore di STM32 utilizzando nella toolchain. Qui si può chiaramente vedere perché evidenziamo la compattezza l'integrazione. Con ST Spin32F0 abbiamo l'integrazione di un microcontrollore STM32F0 con un guide driver a tre fasi, disponibile in diverse opzioni in tensione, da 45V fino a 600V. Il risultato finale è contenuto in un package QFN 7x7 o per l'opzione a 600V in un TQFP 10x10. Un package leggermente più grande per poter essere a norma con i requisiti di Crippage tipici di un'applicazione ad alta tensione. A questo basta aggiungere i transistori esterni e abbiamo l'inverter completo. Andiamo a vedere nello specifico qual è il modo migliore di utilizzare ST Spin32F0 nell'applicazione. Sicuramente la compattezza della soluzione aiuta quando dobbiamo pilotare il motore di dimensioni ridotte e quando l'elettronica deve essere integrata nel motore. Un esempio tipico può essere un cobot dove la dimensione del braccio meccanico, dove si trova sia il motore che l'inverter, è simile a quella di un braccio umano. La seconda caratteristica saliente è la precisione del controllo del movimento, sia in termini di velocità che di posizione. La soluzione più usata è un controllo servo e questo è quello che abbiamo realizzato. Infine la comunicazione. Nella roboteca abbiamo un numero considerevole di motori nello stesso sistema e questi devono essere in grado di ricevere e condividere informazioni dati. Tra tutti i protocolli di comunicazioni che possono essere usati noi abbiamo optato per il protocollo Modbus che ad oggi può essere considerato uno standard de facto nel mondo industriale. Il dimostratore o kit di valutazione che include tutte queste caratteristiche è eval kit robot. Si tratta di una soluzione per motore BLDC che utilizza un controllo servo sviluppato da ST in collaborazione con Maxon Motor ed è disponibile come un vero kit che include sia la parte di elettronica che il motore. Il motore ha un 100W, il codice è Maxon ECI40 ed è qui abbinato a un encodere incrementale da 1.024 impulsi. Vediamo adesso cosa c'è effettivamente dentro il kit e come farne il miglior uso. Oltre al motore nel kit abbiamo lavoro di controllo basata su eseti Spin32F0A, più i mospe duali STL7 DN6LF3. Il firmware relativo al Field Oriented Control è già caricato dentro la memoria di eseti Spin32F0A in modo da poter fornire un controllo molto preciso al up-close. Questa borda è stata progettata con il preciso scopo di essere usato in abbinata al motore Maxon e incluso nel kit. È una soluzione chiave in mano pronta per l'uso per aiutare i progettisti ad avvicinarsi senza troppe difficoltà a soluzione che richiede un controllo di posizione molto preciso. Questa borda serve può essere controllata tramite il protocollo di comunicazione Modbus utilizzando una connessione RS485. È sufficiente avere l'applicazione ModbusMaster installata sul PC e poi connettere il PC direttamente alle ValKit Robot. Qual è l'utilità di ValKit Robot per applicazioni nell'ambito della robotica? Di fatto è un esempio pratico di come si possa progettare un controllo servo sortando al massimo le risorse disponibili, sia hardware che firmware. Cominciamo dal firmware. Se chiudessimo, cosa serve per un controllo di posizione Field Oriented Control? La primissima risposta che otterremo sarebbe un micro potente oppure almeno un Core M4 e sicuramente si può fare un controllo servo con un Core M4. Tuttavia, qui abbiamo un esempio di come sia possibile indirizzare la meresima richiesta srottando al meglio le potenzialità di un Core M0. Il loop di controllo qui è in grado di sostenere senza problemi la massima velocità del motore, in questo caso sui 4000 giri. Per quel che riguarda invece l'hardware, consideriamo la compattezza della soluzione. Con uno stampato di soli 4 cm x 4, pilotiamo 100 W di motore. Di base si può anche pensare di riutilizzare lo stesso stampato per un altro motore, caricando un diverso codice di controllo e quel che si ottiene è un inverter estremamente compatto a prescindere dal controllo utilizzato. La dimensione estremamente ridotta dello stampato e l'utilizzo di un package duale di mosfet possono ovviamente comportare limitazioni per quel che riguarda la dissipazione di potenza. Abbiamo quindi testato questa soluzione per provarne l'effettiva validità. E qui vedete i risultati. Lavorando sui 3 ampera a temperatura ambiente, i mosfet si portano nell'interno di 100 gradi scarci. Sicuramente un ottimo risultato per un inverter di soli 4 cm x 4. La soluzione è comunque pensata in modo d'auto proteggersi. Il progetto è incluso una limitazione di overcurrent da 6 ampera. I numeri trovati con queste misure dipendono nel mosfet dal loro package e dallo stampato, quanti strati, quanto rame. Vedremo dopo come sia possibile scalare questa soluzione utilizzando i più recenti mosfet a bassa tensione di ST. Qui un riasunto veloce delle risorse hardware necessarie per utilizzare il kit. Dato che il motore è già incluso servono solo un power supply, una porta RS485 e il software di comunicazione. Il link segnalato è quello a cui fare riferimento per scaricare tutta la documentazione necessaria, in particolare il data brief, il manuale d'uso ma anche il file gerber. Andiamo adesso a vedere quali componentisti che abbiamo effettivamente utilizzato sulla board, le ragioni che hanno pilotato queste scelte e infine che livello di flessibilità possiamo ottenere con questi componenti. Cominciamo dal controllore. Il collage esatto scelto per questo val kit all'interno della famiglia STSPIN32F0 e STSPIN32F0A. Il fattore decisivo che ha portato a scegliere la versione A è il numero di opump qui inclusi 3. La versione di Field Oriented Control utilizzata in questo kit si basa su una lettura di corrente attresciante, una soluzione decisamente conveniente da un punto di vista di bilanciamento, far la precisione della lettura della corrente da un lato e la potenza di calcolo utilizzata dall'altro, considerando che usiamo un cuore M0. Questa scelta comporta la necessità di utilizzare tre opump per i segnali di corrente e di qui STSPIN32F0A. Infine i MOSFET. Se c'è necessità di aumentare o diminuire la potenza erogabile con questa borda, possiamo fare riferimento alla famiglia di MOSFET di bassa tensione F7. Questa tecnologia ha d'ottimi risultati nell'applicazione di controllo motore, grazie all'ottimizzazione delle capacità dei MOSFET, che permette di ottenere numeri di tutto rispetto nelle prove IMC EMI. Ci sono svariate opzioni disponibili a seconda della tensione della resistenza necessaria e i prodotti già a catalogo oggi sono più di 100. In questa ultima parte della presentazione passeremo brevemente in rassegna l'ecosistema della famiglia STSPIN32F0 che include bordi valutazione, reference design per indirizzare specifiche applicazioni con requisiti tecnici particolari e infine le soluzioni firmware correlate a queste bordi reference design. ST mette a disposizione 5 kit di valutazione per STSPIN32F0 nelle sue diverse versioni a bassa tensione e questi kit includono sia l'Hugwerk e il firmware per poter cominciare a far girare il motore. Ci sono due tipologie di bordi valutazione. Le STEVAL SPIN, quelle in-cut nelle prime tre righe della tabella, sono poi progettate con l'obiettivo di facilitar la valutazione e del controllore e dell'inverter nel suo insieme. Mettendo a disposizione un hardware che renda gevole l'utilizzo delle librerie standard ST e un adoro eventuale modifica per adattarsi allo specifico motore che si intende utilizzare. Per questo motivo, sullo stampato, ci sono tutti i componenti necessari a modificar la circuiteria, a seconda delle opzioni di controllo, e c'è anche tutta la componentistica legata al ST-Link. Inoltre, diverse piazzole test point rendono piaggevole la connessione delle solde dell'usciloscopio. Di fatto è una bordi valutazione e questo la rende poco adatta ad essere utilizzata come riferimento e di layout e di componentistica per una vera applicazione. E qui è dove entra in gioco la seconda tipologia di board, i reference design. Questi indirizionano una ben determinata applicazione. Qui l'obiettivo è fornire un riferimento anche per quel che riguarda il layout. Nell'ultima riga della tabella potete riconoscere ValKit Robot, di cui abbiamo già parlato diffusamente. Nella penultima riga abbiamo invece un reference design per Electronic Speed Control. Come indicato nella tabella, nella colonna Ecosystem, le evaluation board di ST-SPIN32F0 con soluzioni Field Oriented Control utilizzano il Motor Control Software Development Kit di STM32. Vediamo brevemente di cosa si tratta. I blocchi fondamentali del Motor Control Software Development Kit, in breve SDK o SDK, sono mostrate in questa slide. I tool a disposizione sono diversi. In basso a sinistra, il Motor Profiler. Questo tool inabbinata a un kit di board Nucleo PX Nucleo può mesurare i parametri chiave del motore che abbiamo nel nostro laboratorio. Questi dati possono poi essere copiati nel secondo tool, il Motor Control Workbench in alta sinistra. Questo tool fornisce un'interfaccia grafica che rende estremamente agevole modificare i parametri collegati al Field Oriented Control. Poi, quando il setup è completato, si genera un progetto con suo codice sorgente. I progetti possono essere generati per diversi ambienti di sviluppo. STM32, Qube, IDE, IR o Cale. Durante questo processo vengono generati anche i file per STM32, Qube e MIX. Quando il setup è terminato, il codice può essere caricato nella memoria di ST Spin32 F0 utilizzando ST Link. In pratica non ci sarebbe neanche bisogno del codice sorgente, tutto può essere fatto tramite l'interfaccia grafica. In ogni caso, se dovesse servire modificare e riscrivere qualcosa in particolare, il codice sorgente è completamente accessibile. Con questo siamo giunti al termine della presentazione. Ringraziandovi per l'attenzione, vi invito a visitare il nostro sito web st.com per ulteriore informazioni.