Tecniche di progettazione avanzate con Altium Designer

Creato: aprile 20, 2020
Aggiornato: ottobre 29, 2020

In questo articolo, impareremo come utilizzare Altium Designer® per implementare funzionalità extra che non sono disponibili di default. Scopriremo un aspetto potente di Altium Designer che, una volta padroneggiato, può portare le tue competenze di progettazione a un livello superiore. In questo articolo, discuteremo come implementare uno script per eseguire la verifica del design per te.

Impareremo:

  • Come creare regole per verificare alcuni requisiti di progettazione.
  • Verificare quelle regole utilizzando uno script in Altium Designer 19.

Un Problema Tipico

Al giorno d'oggi, i progetti sono molto complessi. In generale, i clienti hanno aspettative elevate nei confronti dei loro progettisti di PCB: si aspettano che le loro schede funzionino al primo tentativo. Per raggiungere questo obiettivo, l'attenzione ai dettagli è fondamentale.

In questo esempio vediamo come creare uno script che può essere utilizzato in un progetto reale. Consideriamo il seguente problema di progettazione:

Dobbiamo progettare una scheda ADC ad alta risoluzione utilizzando un convertitore ADC a 16 bit. Il convertitore ADC ha un'impedenza di ingresso di 1 kΩ. “Qual è l'impedenza massima della traccia tra il driver e l'ADC per ottenere un errore inferiore a 1 LSB?“ “Possiamo progettare uno Script che possa aiutarci?“

Figura 1 progetta una traccia di un ADC ad alta risoluzione

Per rispondere a questa domanda, dobbiamo calcolare la resistività della traccia e verificare se la caduta di tensione sulla traccia è superiore a 1 LSB.

Per calcolare la resistività della traccia, possiamo usare la seguente formula:

.

Ad esempio:

Supponiamo che la nostra traccia abbia le seguenti dimensioni: L = 10 cm, h = 0,035 mm, w = 0,381 mm. Utilizzando il [1], e assumendo che la temperatura ambiente sia di 25 °C, l'impedenza della traccia in DC è di 129 mΩ, ciò produrrà un errore di tensione dello 0,013%, ben al di sopra di 1 LSB (0,0015%) di un ADC a 16 bit. Quindi, la traccia sopra indicata ci darà un errore di offset di quasi 9 LSB!

È possibile chiedere ad Altium Designer di fare tutti i controlli sopra per noi? Possibilmente in tempo reale?

La risposta è ovviamente sì.

Progettiamo uno script che ci fornisca queste informazioni.

Vogliamo essere in grado di cliccare su una traccia, e vogliamo che Altium Designer faccia alcuni controlli per noi come calcolare la resistenza della traccia, calcolare la caduta di tensione, ecc.

Figura 2 esempio di informazioni dal nostro script dimostrativo

Come Progettare Uno Script in Altium Designer

Altium Designer accetta script in diverse lingue, durante la mia carriera ho usato molti linguaggi, ma uno dei primi linguaggi che ho usato nella mia vita professionale è stato Delphi, quindi ho deciso di scrivere questo script in Pascal. Tuttavia, puoi usare altri linguaggi di scripting come Visual Basic se preferisci.

Vediamo come progettare uno script in Altium Designer che risolva il problema sopra descritto.

Nel nostro script vogliamo:

  1. Caricare la nostra Scheda PCB
  2. Caricare tutto lo Stack dei Strati (per ottenere informazioni come larghezza, altezza delle tracce, ecc.)
  3. Caricare la traccia che l'utente ha selezionato con il mouse
  4. Calcolare la resistenza usando la formula [1]
  5. Visualizzare l'errore della traccia e l'errore dell'ADC

Come Implementare Uno Script in Altium Designer

1.    CARICARE LA NOSTRA SCHEDA PCB

La prima istruzione che vogliamo eseguire è caricare il nostro progetto PCB e salvarlo in una variabile chiamata Board. Possiamo farlo con la seguente istruzione:

.

2.    CARICARE LO STACK DEGLI STRATI

Una volta caricata la Board, vogliamo caricare lo Stack degli Strati e salvarlo in una variabile chiamata Stackup:

.

3. CARICA LA TRACCIA SELEZIONATA DALL'UTENTE CON IL MOUSE

Ora possiamo utilizzare il metodo GetObjectAtCursor() per ottenere la traccia selezionata e salvarla in una variabile chiamata Trace.

.

4. CALCOLA LA RESISTENZA DELLA TRACCIA UTILIZZANDO LA FORMULA [1]

Una volta che l'utente seleziona una traccia con il mouse, vogliamo calcolare la larghezza, la lunghezza e l'altezza della traccia, e salvarle in 3 variabili chiamate TraceThickness, TraceWidth e TraceLength:

 

 

.

Possiamo infine calcolare il resistore della traccia Res utilizzando la [1], calcolare la caduta di tensione (assumendo che l'ADC abbia un Vref di 1V).

.

5. MOSTRA L'ERRORE DELLA TRACCIA E L'ERRORE DELL'ADC

Una volta completati tutti i calcoli possiamo visualizzarli sullo schermo. Un modo semplice per farlo è utilizzare le finestre MessageDlg().

OutputString := 'Spessore traccia = ' + FloatToStrF(TraceThickness,0,5,4) + ' mm' + #13#10;

OutputString := OutputString + 'Larghezza traccia = ' + FloatToStrF(TraceWidth,0,5,4) + ' mm' + #13#10;

OutputString := OutputString + 'Lunghezza traccia = ' + FloatToStrF(TraceLength,0,5,4) + ' mm' + #13#10#13#10#13#10;

OutputString := OutputString + 'Resistenza traccia = ' + FloatToStrF(Res,0,5,4) + ' mohm' + #13#10;

OutputString := OutputString + 'Caduta di tensione sulla traccia = ' + FloatToStrF(VoltageDrop,0,2,2) + ' %' + #13#10;

OutputString := OutputString + 'LSB ADC = ' + FloatToStrF(ADCLSB,0,2,2) + ' %';

      MessageDlg(OutputString,mtInformation,4,0);

 

Come Eseguire Lo Script

Per testare lo script, dal tuo Documento PCB clicca su File->RunScript…

Quindi seleziona il tuo script:

Dovresti vedere ora una grande croce:

Clicca sulla traccia che vuoi analizzare.

Ora dovresti vedere le finestre dei messaggi con i calcoli:

È possibile estendere questo script e aggiungere un controllo più sofisticato, per esempio, estendere le tracce ad arco e aggiungere l'effetto della temperatura, ecc. Lascio a voi questo come esercizio.

Cosa abbiamo imparato?

Abbiamo visto che Altium Designer, una volta padroneggiato, può essere utilizzato per eseguire azioni complesse per noi. In questo esempio, abbiamo visto come sia possibile misurare l'impedenza della traccia DC con un solo clic e come stimare l'errore di tensione in un progetto di ADC ad alta risoluzione.

Questo script dimostrativo ha molte limitazioni ma può essere utilizzato come base per le vostre estensioni di Altium Designer.

Hai altre domande? Chiama un esperto di Altium o scopri di più sulle migliori funzionalità del software di progettazione PCB e sul calcolatore dell'impedenza delle tracce in Altium Designer.

Risorse correlate

Documentazione Tecnica Correlata

Tornare alla Pagina Iniziale
Thank you, you are now subscribed to updates.