Pilotare piccoli motori DC con Altium Designer

Mark Harris
|  Creato: novembre 8, 2019  |  Aggiornato: dicembre 21, 2020

In questo articolo, passeremo attraverso l'effettiva implementazione di un driver IC, dalla creazione dello schema al layout del PCB. Troverai questo progetto su GitHub, rilasciato sotto una licenza open-source, se semplicemente vuoi prenderlo per copiarlo e incollarlo nel tuo design.

Selezione dei Componenti

Ho due piccoli motori ad alta velocità che voglio pilotare, che assorbiranno circa 1 ampere ciascuno sotto carico, e dovrò farli funzionare con una fonte di alimentazione da 30 volt in una macchina industriale. L'elettronica originale si è bruciata ed è ora obsoleta, quindi è necessario sviluppare una nuova scheda di controllo. Per ora, discuterò solo del driver del motore in questo progetto.

Data le esigenze e l'area limitata della scheda con cui dovrò lavorare sulla scheda di circuito finale, ho scelto di utilizzare l'Allegro A4954 per le sue valutazioni di 2 ampere / 40 volt e il pacchetto TSSOP-16 con un pad termico. È anche molto conveniente, quasi al prezzo di un singolo driver per motori, come l'Allegro A4953, e altri driver per motori singoli a basso costo che potresti usare se avessi da gestire un solo motore.

Il principale vantaggio dell'uso del singolo driver IC per la nostra applicazione è che riduce il numero di componenti aggiuntivi necessari per completare lo schema. Gli unici componenti aggiuntivi di cui abbiamo bisogno sono alcuni resistori, condensatori e un regolatore da 3,3v. Vorrei anche aggiungere un diodo e un condensatore su ogni terminale del motore, tuttavia, per ridurre i picchi transitori che potrebbero danneggiare l'H-Bridge o causare problemi di certificazione per la compatibilità elettromagnetica.

Progettazione dello Schema

Solitamente, lavorerei con una libreria di database, ma per gli scopi di questo articolo, ciò non creerebbe una soluzione molto portatile su cui potreste lavorare. Pertanto, ho aggiunto i file pcblib e schlib pertinenti al progetto e ho incluso i footprint ai simboli schematici per iniziare. Questo, tuttavia, significa che stiamo posizionando componenti passivi generici invece di quelli di libreria, cosa che non mi entusiasma. Posizionare parti generiche porta a errori, quindi questo è un ottimo punto in cui utilizzare Concord Pro al fine di aiutare a gestire la libreria, ma senza aggiungere tutti i miei lettori al mio team di Concord Pro, nessuno di loro potrebbe utilizzare la libreria che creerei. Pertanto, per posizionare parti di cui so che è possibile reperire la fonte, cercherò ogni componente richiesto nel pannello di Ricerca Parti del Produttore, e poi Aggiungerò Collegamento Fornitore e Parametri Alla Parte su ogni simbolo schematico. Questo aiuterà anche quando si genera una distinta dei materiali così come quando si ordinano componenti da un fornitore.

Easy, Powerful, Modern

The world’s most trusted PCB design system.

Altium Designer screenshot showing right click menu on the CSR1206FKR250 with the add supplier link and parameters to part option highlighted.

Altium ti permette di aggiungere collegamenti ai fornitori, semplificando le cose in seguito.

Scopro che gestire i componenti man mano che li aggiungi è fondamentale per assicurarsi che ogni pezzo sia un componente valido e ordinabile. È molto più semplice garantire che ogni parte sia valida nel momento in cui la si colloca rispetto a scoprire alla fine di una fase di progettazione che un componente non può essere reperito e che il design necessita di essere rivisto per far posto a un componente sostitutivo.

 

Screenshot of the starting schematic with just the components laid out showing the Allegro A4954 IC along with some passives.

Easy, Powerful, Modern

The world’s most trusted PCB design system.

Iniziamo aggiungendo allo schema tutti i nostri componenti validi e sorgentabili e i passivi generici.

Sto iniziando il mio progetto con i connettori, la resistenza di rilevamento della corrente, il diodo TVS e il circuito integrato principale specificati.

Ho anche aggiunto i simboli generici di condensatore, resistore e potenziometro, che copierò e incollerò secondo necessità durante il processo di progettazione, per poi specificarli una volta che si trovano nel posto giusto nello schema. Quando si realizza rapidamente uno schema con parti generiche su progetti semplici, trovo che questo sia più veloce rispetto al dover tornare ogni volta al pannello della libreria per prendere un'altra copia dello stesso componente. È possibile trascinare con il tasto shift il simbolo per clonarlo, che è il modo più rapido che ho trovato per posizionare un altro componente generico dello stesso footprint.

Screenshot of the schematic after it has been connected showing both IC, motor connectors, and passives connected.

Colleghiamo quindi tutte le parti che abbiamo disposto per creare uno schema completo.

Get Ready for the Electronics Design Jobs You Want


Experience hands-on learning in PCB and hardware design with Altium's Student license, cloud access & comprehensive curriculum.

Lo schema completamente compilato è piuttosto semplice, come dovrebbe essere con un driver IC completamente integrato. Ho aggiunto alcune resistenze da 33 ohm per proteggere il microcontrollore dagli ingressi al driver IC, che, in caso di guasti gravi al driver, dovrebbero limitare la corrente che fluisce verso il microcontrollore a livelli tollerabili. Ho aggiunto un condensatore da 100nF e un diodo TVS agli usciti del motore, che aiuteranno a mitigare l'ESD e le tensioni transitorie di flyback provenienti dal motore, come menzionato in precedenza. Ho anche aggiunto un partitore di tensione resistivo con un resistore variabile per la gamba superiore per permettere di impostare la corrente del motore come necessario. Il partitore di tensione è alimentato da un semplice regolatore di tensione lineare, che tipicamente non vorrei usare con una caduta di 27v. In questo caso, tuttavia, l'assorbimento di corrente sarà sufficientemente basso che il regolatore non si surriscalderà.

Screenshot of the Allegro A4954 IC and all the passives connected to it before annotation.

L'IC Allegro A4954 e tutti i passivi a esso connessi prima dell'annotazione.

Infine, una volta completato il layout dello schema, ho annotato lo schema per completare i numeri dei designatori. Personalmente preferisco fare ciò alla fine della cattura dello schema, poiché trovo che in genere mi fornisca numeri di designatori che sono più raggruppati rispetto a se avessi costantemente annotato subito dopo aver aggiunto nuovi componenti. Questo può darci un'idea di dove sullo schema possa trovarsi un componente in base al suo designatore.

Screenshot of the Allegro A4954 IC and all the passives connected to it after annotation.

Launch Your Career in Electronics Design


Gain the skills top employers look for. Start mastering PCB design with the Altium Student Lab today!

Notate come tutte le parti raggruppate intorno al driver vengano annotate con numeri di designatori vicini.

 

Poiché ho assegnato parti reali a ogni componente nello schema, ora ho un ActiveBOM nel progetto che può essere utilizzato sia per valutare il costo dello schema sia per convalidare che tutti i componenti siano disponibili in produzione di massa. L'ActiveBOM rende molto facile valutare rapidamente il costo per scheda a diverse quantità di produzione. Al momento della scrittura, il mio costo dei componenti per scheda per una singola scheda sarebbe di 7,99 USD, scendendo a soli 3,42 USD per scheda a 1000 schede. Da una prospettiva di bilancio, ciò può permettermi di determinare se ho bisogno di esaminare eventuali opzioni alternative per lo schema per abbassare il prezzo al mio volume di produzione previsto. Questo può notevolmente aumentare la mia produttività, poiché sono in grado di fare questa determinazione prima di aver speso tempo nel routing di un PCB.

Routing PCB

Come per qualsiasi progetto PCB, il nostro primo compito è inserire i componenti nel PCB con un Ordine di Modifica Ingegneristica (ECO).

 

Lay Out Your Track: Prepare for a Career in PCB Design


Develop the electronics design expertise that employers look for with Altium’s free Student Lab!

PCB layout of the motor driver showing surface mounted components with no traces joining them.

Layout del PCB dopo che tutti i componenti sono stati aggiunti.

 

Ci sono un paio di cose che mi piace fare dopo aver trasferito i dati dello schema sul PCB, per prima cosa metto tutti i designatori su uno strato meccanico che ho chiamato Designatori in modo che non occupino spazio reale sul PCB. Nel pannello Filtro PCB, uso il filtro:

IsDesignator AND OnLayer('Top Overlay')

Get Ready for the PCB Design Job of Your Dreams


Start your electronics design career with Altium's free Student Lab, comprehensive curriculum & certificates

Questo seleziona tutti i miei designatori e posso modificarli rapidamente nella finestra delle proprietà per cambiare lo strato, e anche renderli di tipo vero e Autoposizionarli al centro del componente, il che rende i disegni del PCB più gradevoli in seguito, se necessario.

Successivamente, posso attivare la Modalità Selezione Incrociata dal menu Strumenti (o Shift-Ctrl-X) per selezionare gruppi logici di componenti nello schema. Anche con uno schema piccolo e semplice come questo, mi fa risparmiare tempo raggruppare i componenti sul circuito stampato.

Cross Select Mode Shift+Ctrl+X

Selezionando il driver IC e i suoi componenti di supporto nello schema, poi tornando al PCB, ho selezionato quei componenti dal groviglio di parti appena aggiunte.

Screenshot of PCB layout of a motor driver in Altium Designer showing certain components selected.

When NASA Calls, Will You Be Ready?


Prepare for a stellar career in electronics and hardware design with Altium’s free Student Lab.

Selezionare i componenti dallo schema risparmia tempo rispetto al cercarli e selezionarli uno per uno nel layout del PCB.

 

Posso quindi utilizzare Strumenti -> Posizionamento Componenti -> Disponi in Rettangolo (disponibile anche nella vecchia barra degli strumenti Utility sotto l'icona degli Strumenti di Allineamento) e disegnare un rettangolo fuori dalla scheda per raggruppare queste parti insieme.

Right click menu -> Component Placement -> Arrange Within Rectangle

 

When Tesla Calls, Will You Be Ready?


Get ready for a fast-track career in PCB and hardware design with Altium's free Student Lab.

Questo mi dà dei piccoli blocchi di componenti da disporre da soli nel modo più ottimale possibile. Con progetti più grandi e complessi, trovo che disponendo ogni blocco logico separatamente, sono poi in grado di portarli tutti sulla scheda circuitale in una volta sola per trovare una rotazione e una posizione ottimali per quel blocco, e anche determinare quali sacrifici potrebbero essere necessari nella disposizione dei componenti per ottimizzare l'uso dello spazio sulla scheda. Per me, questo risparmia molto tempo e tipicamente mi dà un layout migliore rispetto a costruire un layout dei componenti partendo da un singolo componente.

 

Screenshot of PCB layout of a motor driver in Altium Designer showing various components arranged inside clusters that represent the logical blocks in the schematic.

Le funzionalità di posizionamento dei componenti consentono di disporre i componenti all'interno di cluster che rappresentano i blocchi logici nello schema.

 

In pochi minuti, ciò si trasforma in una scheda relativamente compatta e che dovrebbe essere cablabile.

 Screenshot of PCB layout of a motor driver in Altium Designer showing various components arranged  to be routable, logically organized, and compact.

Il posizionamento finale dei componenti è cablabile, logicamente organizzato e compatto.

 

Un rapido controllo della vista 3D e la scheda sembra che sarà anche facile da assemblare a mano, il che è un ottimo controllo da fare per le parti a basso volume.

 

Altium Designer 3D view of the motor driver board before the tracks were added.

Vista 3D della scheda prima che le piste fossero aggiunte.

 

Il routing di questa scheda è piuttosto semplice, dato che lo schema è così semplice! L'unico punto da notare è che il datasheet del driver del motore suggerisce di fornire un percorso di terra dai resistori di rilevamento della corrente direttamente al terra dell'IC, con ritagli poligonali per realizzare questo terra a stella. Ho aggiunto riempimenti di terra completi sia in alto che in basso per iniziare, e poi ho usato lo strumento di ritaglio poligonale (sotto il menu Posiziona) per aggiungere i ritagli suggeriti.

Altium Designer screenshot of the motor driver board after it has been routed, ground pours were added, and polygon cutouts were made, and showing top layer in red and bottom layer in blue.

La scheda dopo che è stata instradata, sono stati aggiunti riempimenti di terra, e sono stati fatti ritagli poligonali.

 

Elettricamente, questa scheda ora sembra completa, tuttavia, non è molto attraente visivamente nella vista 3D.

Altium Designer 3D view of the motor driver board after the tracks were added.

Vista 3D della scheda dopo che le piste sono state aggiunte sembra ancora un po' carente.

 

Mi piace che le mie schede abbiano un aspetto curato, anche se sono solo per uso personale. Come ingegnere, vedo tutte le schede elettroniche come opere d'arte, hanno ricevuto tanta attenzione e cura quanto qualsiasi capolavoro in un museo, quindi dovrebbero sembrare tali!

Con alcune aree nella strato Top Overlay e del testo invertito, ho aggiunto un po' di stile e delle etichette per rendere l'uso della scheda un po' più semplice.

Altium Designer 3D view of the motor driver board after the tracks were added and the top overlay silk was printed.

Le caratteristiche sul top overlay rendono la scheda più facile da usare e più bella.

 

Il fondo della scheda riceve un trattamento simile, con un piccolo logo ESD, un codice a barre per identificare il modello/versione/revisione della scheda, e un paio di aree dove il controllore di qualità può aggiungere le proprie iniziali, più un paio di caselle per scrivere la data di fabbricazione e di installazione.

Altium Designer 3D view of the bottom motor driver board  featuring the bottom overlay silk showing various dates and a barcode.

Il fondo della scheda.

 

Questo rapidamente trasforma la scheda da semplice e spartana, a sembrare più rifinita, completa e funzionale.

Prossimi Passi

Se stai cercando di implementare un driver per motore DC con un singolo IC, questo progetto potrebbe essere un buon punto di partenza per te. Puoi scaricare il progetto su GitHub e usarlo liberamente come desideri. Lo schema si basa su uno schema e layout provati in produzione, tuttavia, dovresti comunque assicurarti che il design soddisfi le tue esigenze e che lo schema/i pin siano corretti.

La prossima volta, esaminerò questa scheda in PDN Analyser per determinare se le tracce sono dimensionate in modo adeguato per le esigenze di corrente dell'IC H-Bridge e dei due motori. Se non hai mai usato PDN Analyser prima d'ora, questo sarà un progetto introduttivo che potrai seguire per imparare come configurare lo strumento per analizzare il tuo circuito stampato.

Vuoi scoprire come Altium può aiutarti con il tuo prossimo design di PCB? Parla con un esperto di Altium o scopri di più su l'analizzatore PDN di Altium.

Sull'Autore

Sull'Autore

Mark Harris è un ingegnere eccezionale con oltre 12 anni di esperienza diversificata nel settore dell'elettronica, che va dai contratti aerospaziali e di difesa ai prodotti start-up, passatempi, ecc. Prima di trasferirsi nel Regno Unito, Mark ha lavorato per uno dei più grandi istituti di ricerca del Canada. Ogni giorno portava con sé un progetto o una sfida diversa che coinvolgeva l'elettronica, la meccanica e il software. È responsabile della pubblicazione della “Celestial Database Library”, la più grande libreria di componenti di database open source per Altium Designer. Mark è attratto dall'hardware e dal software open source, nonché a trovare soluzioni innovative per le sfide quotidiane di questi progetti. L'elettronica è pura passione: seguire la trasformazione di un'idea in realtà e interagire con il mondo è fonte di infinito piacere.
Puoi contattare Mark direttamente a: mark@originalcircuit.com

Risorse correlate

Documentazione Tecnica Correlata

Tornare alla Pagina Iniziale
Thank you, you are now subscribed to updates.
Altium Need Help?