Ristrutturare un progetto tramite il refactoring
A colpo d'occhio
- Scopri quali comandi di refactoring supportano specifiche attività di riorganizzazione, tra cui le conversioni da componente a foglio, da componente a porte, da foglio schematico a foglio dispositivo e da foglio dispositivo a foglio schematico.
- Scopri come Altium Designer aiuta a mantenere la connettività, le proprietà dei simboli e i collegamenti dei sottocircuiti durante la riorganizzazione della gerarchia degli schemi.
- Comprendi come queste funzionalità favoriscono il riutilizzo, la creazione di versioni locali e un’organizzazione più chiara dei fogli man mano che il progetto evolve.
Il refactoring, nel senso tradizionale del termine, consiste nel ristrutturare un progetto esistente (o un insieme di codice, nell'ambito della programmazione) senza modificarne la funzionalità. Nella progettazione PCB, esistono diverse situazioni in cui una forma di refactoring può offrire una soluzione vantaggiosa e tempestiva:
-
Un componente è diventato obsoleto e deve essere sostituito con un sottocircuito funzionalmente equivalente. (Mostrami)
-
Un progetto schematico deve diventare un sottocircuito da utilizzare all'interno di un progetto più ampio. (Mostrami)
-
Un sottofoglio schematico esistente deve essere trasformato in un foglio dispositivo da riutilizzare in progetti futuri. (Mostrami)
-
Un foglio dispositivo esistente deve essere reso locale e personalizzato per il progetto corrente. (Mostrami)
-
Una parte della circuiteria esistente deve essere spostata su un altro foglio. (Mostrami)
Altium Designer offre diverse funzionalità che, nel loro insieme, costituiscono le sue capacità di refactoring del progetto, garantendo la massima flessibilità nella ristrutturazione dei progetti in base ai requisiti.
Conversione di un componente in un simbolo di foglio
Questa funzionalità converte un componente presente nel documento corrente in un simbolo di foglio. È ideale quando un componente esistente è diventato obsoleto e deve essere sostituito con un sottocircuito funzionalmente equivalente definito su un foglio separato.
Facendo clic con il pulsante destro del mouse su un componente e scegliendo il comando Part Actions » Convert Part To Sheet Symbol dal menu contestuale, il simbolo del componente viene convertito in un simbolo di foglio. La connettività viene mantenuta: gli ingressi di foglio vengono denominati in base al nome dei pin originali e I/O Type viene impostato in modo da rispecchiare il tipo elettrico dei pin originali.
La proprietà Designator del simbolo di foglio viene inizialmente impostata sul designatore del componente originale, mentre la proprietà File Name is viene inizialmente impostata sul testo del commento del componente.
Conversione di un componente esistente in un simbolo di foglio.
Se il foglio figlio richiesto esiste già, modificare la proprietà File Name del simbolo di foglio in modo che punti a tale foglio. In caso contrario, è possibile creare rapidamente un sottofoglio facendo clic con il pulsante destro del mouse sul simbolo di foglio e scegliendo il comando Sheet Symbol Actions » Create Sheet From Sheet Symbol. In quest'ultimo caso, sul nuovo sottofoglio verranno posizionate porte corrispondenti agli ingressi di foglio del simbolo, pronte per definire e collegare la circuiteria sostitutiva.
Spostamento di un componente su un nuovo sottofoglio
Un metodo alternativo, e forse più rapido, per ottenere un risultato simile consiste nel fare clic con il pulsante destro del mouse sul componente desiderato e scegliere il comando Part Actions » Push Part To Sheet. Questo comando consente di spostare un componente dal documento corrente a un nuovo sottofoglio, sostituendo il componente originale con un simbolo di foglio che fa riferimento a tale foglio. In pratica, viene eseguita la seguente sequenza di operazioni:
-
Il componente viene copiato.
-
Il componente originale viene convertito in un simbolo di foglio, con Designator impostato sul designatore del componente originale e File Name impostato su <OriginalPartComment>.SchDoc. Anche in questo caso, la connettività viene mantenuta: gli ingressi di foglio vengono denominati in base al nome dei pin originali e I/O Type viene impostato in modo da rispecchiare il tipo elettrico dei pin originali.
-
Dal simbolo di foglio viene creato un nuovo foglio schematico, denominato utilizzando il valore della proprietà File Name del simbolo.
-
La copia del componente originale viene incollata al centro del foglio; vengono quindi posizionate porte corrispondenti agli ingressi del simbolo di foglio e collegate ai pin del componente.
A questo punto è possibile eliminare il componente e sostituirlo con una circuiteria funzionalmente equivalente, secondo necessità.
Con il comando Push Part To Sheet, il componente iniziale viene rapidamente convertito in un simbolo di foglio e una sua copia viene quindi incollata su un foglio appena creato,
a cui fa riferimento tale simbolo.
Conversione di un componente in porte
Questa funzionalità consente di convertire un componente presente nel documento corrente in un insieme di porte. È ideale per un sottoprogetto autonomo esistente, come un alimentatore o una scheda satellite, che deve diventare un sottocircuito da utilizzare all'interno di un progetto più ampio su un'unica scheda, ad esempio per ridurre al minimo i costi di produzione. Si tratta dell'operazione inversa rispetto a quella descritta nella sezione precedente, in cui un componente veniva sostituito con un sottocircuito di livello inferiore. In questo caso, invece, il sottocircuito viene integrato nel progetto di livello superiore, rendendolo disponibile per il collegamento a un punto più alto nella gerarchia.
Facendo clic con il pulsante destro del mouse su un componente e scegliendo il comando Part Actions » Convert Part To Ports dal menu contestuale, il simbolo del componente viene convertito in un insieme di porte. La connettività viene mantenuta: le porte vengono denominate in base al nome dei pin originali e I/O Type viene impostato in modo da rispecchiare il tipo elettrico dei pin originali.
Utilizzare il comando Convert Part To Ports per sostituire rapidamente un componente con porte che collegano un sottocircuito a un progetto di livello superiore.
L'inserimento del sottocircuito nella gerarchia viene quindi completato aggiungendo un simbolo di foglio nel relativo foglio padre di livello superiore. A tale scopo:
-
Attivare il foglio padre desiderato.
-
Utilizzare il comando Design » Create Sheet Symbol From Sheet.
-
Selezionare il documento contenente le porte create dal componente nella finestra di dialogo Choose Document to Place.
-
Un simbolo di foglio apparirà sul cursore; posizionarlo nel punto desiderato del foglio, quindi fare clic per confermarne il posizionamento.
Il simbolo di foglio fa riferimento al sottofoglio sottostante tramite la proprietà File Name e presenta ingressi di foglio corrispondenti alle porte del foglio figlio.

Utilizzare il comando Create Sheet Symbol From Sheet per aggiungere rapidamente un simbolo di foglio, integrando così il sottocircuito nella gerarchia del progetto.
Conversione di un foglio schematico in un foglio dispositivo
A un certo punto, il concetto di progettazione per il riutilizzo deve passare a un livello di astrazione superiore. Se ci fermassimo al livello dei componenti, ogni progetto che includesse una funzionalità simile, come un'interfaccia USB o un regolatore di tensione, finirebbe, per così dire, per «reinventare la ruota». È qui che entrano in gioco i fogli dispositivo, ovvero fogli schematici progettati per offrire funzionalità circuitali specifiche. Il loro utilizzo elimina i rischi associati al tradizionale approccio basato sul copia e incolla. Evitano la ripetizione delle attività di progettazione e aumentano la quantità di contenuti progettuali riutilizzabili nei progetti futuri.
Nell'ambito della sua suite di strumenti di refactoring, l'editor degli schematici consente di convertire rapidamente un foglio schematico standard esistente in un foglio dispositivo da riutilizzare in altri progetti.
Per convertire un foglio schematico esistente in un foglio dispositivo:
-
Individuare il simbolo di foglio che fa riferimento al foglio desiderato nella relativa pagina padre della gerarchia del progetto.
-
Seleziona il simbolo di foglio e scegli il comando Edit » Refactor » Convert Selected Schematic Sheet To Device Sheet dai menu principali. Verrà visualizzata la finestra di dialogo Convert Schematic Sheet to Device Sheet. Scegli la posizione di destinazione in cui memorizzare il device sheet appena creato e l'ambito della conversione: se aggiornare il simbolo di foglio corrente oppure tutti i simboli di foglio pertinenti nello spazio di progettazione o nel progetto attivo. Quest'ultima opzione è particolarmente utile per un progetto multicanale, in cui il sottocircuito è presente in più istanze.
Specifica i dettagli della conversione nella finestra di dialogo Convert Schematic Sheet to Device Sheet.
-
Fai clic su OK. Il simbolo di foglio verrà convertito in un simbolo di device sheet e lo schema verrà spostato nella posizione specificata per il device sheet.
Il simbolo di device sheet erediterà le proprietà del simbolo di foglio originale.
Conversione di un device sheet in un foglio schematico
I device sheet consentono di definire sottocircuiti funzionali e riutilizzarli in più progetti. Tuttavia, potrebbe essere necessario modificare un sottocircuito esistente per un progetto specifico. Anziché modificare il device sheet stesso, l'editor degli schemi consente di crearne una copia, rendendo disponibile il relativo circuito su un foglio schematico standard. In questo modo puoi modificare la copia locale in base ai requisiti del progetto corrente, con la certezza che il device sheet originale rimanga inalterato.
Per "convertire" un device sheet esistente in un foglio schematico:
-
Individua il simbolo di device sheet che fa riferimento al device sheet desiderato.
-
Seleziona il simbolo di device sheet e scegli il comando Edit » Refactor » Convert Device Sheet To Schematic Sheet dai menu principali. Verrà visualizzata la finestra di dialogo Convert Device Sheet to Schematic Sheet . Scegli la posizione di destinazione in cui memorizzare il foglio schematico appena creato e l'ambito della conversione: se aggiornare il simbolo di device sheet corrente oppure tutti i simboli di device sheet pertinenti nel progetto attivo.
Specifica i dettagli della conversione nella finestra di dialogo Convert Device Sheet to Schematic Sheet.
-
Fai clic su OK. Il simbolo di device sheet verrà convertito in un simbolo di foglio e una copia del device sheet verrà memorizzata localmente come foglio standard (non protetto) nella posizione specificata. Il simbolo di foglio farà riferimento a questo foglio locale.
Dopo la conversione, il foglio schematico locale sostituirà il device sheet precedente nel pannello Projects .
Il simbolo di foglio erediterà le proprietà del simbolo di device sheet originale.
Spostamento dei sottocircuiti selezionati in un altro foglio
Man mano che un progetto si evolve, può essere necessario riorganizzare il contenuto dei fogli schematici sorgente che lo compongono: una determinata porzione del circuito potrebbe risultare più leggibile su un foglio dedicato, oppure un foglio potrebbe diventare troppo affollato (e illeggibile!) e trarre beneficio dallo spostamento di alcuni circuiti su un foglio aggiuntivo o diverso.
Un'altra funzionalità di refactoring consente di selezionare uno o più oggetti su un foglio e spostare la selezione in un altro foglio. Per farlo:
-
Seleziona innanzitutto il circuito da spostare.
-
Fai clic con il pulsante destro del mouse e scegli il comando Edit » Refactor » Move Selected Subcircuit to Different Sheet dal menu contestuale. Si aprirà la finestra di dialogo Choose Destination Document, in cui puoi specificare il foglio schematico di destinazione.
Sposta una parte del progetto in un altro foglio schematico.
-
Fai clic su OK. Il foglio scelto diventerà attivo e il sottocircuito selezionato apparirà agganciato al cursore.
-
Posiziona il circuito sul foglio come desiderato e fai clic per confermarne il posizionamento. Una volta posizionato, il circuito verrà rimosso dal foglio originale.
-
Se il circuito spostato include uno o più simboli di foglio esistenti, i fogli schematici figli a cui tali simboli fanno riferimento verranno spostati sotto il foglio su cui sono stati trasferiti i simboli nella gerarchia di progetto visualizzata nel pannello Projects. Se lo spostamento avviene su un nuovo foglio, aggiungi un simbolo di foglio alla pagina padre pertinente per inserire correttamente quel foglio nella gerarchia di progetto.
