This shows you the differences between two versions of the page.
tsc:laboratoare:laborator-01 [2024/03/03 01:13] ilinca_ioana.strutu [Laborator 01 - Eagle 101] |
tsc:laboratoare:laborator-01 [2024/03/03 23:39] (current) ilinca_ioana.strutu [Exerciții] |
||
---|---|---|---|
Line 3: | Line 3: | ||
=== Obiective === | === Obiective === | ||
- | Prima secţiune de laboratoare se va concentra pe proiectarea de circuite, folosid Fusion360, pentru a pregăti realiyarea lor fizică. | + | Prima secţiune de laboratoare se va concentra pe proiectarea de circuite, folosind Fusion360, pentru a pregăti realizarea lor fizică. |
- | Fustion 360 este o aplicaţie din suita [[https://www.autodesk.com/products/fusion-360/overview?term=1-YEAR&tab=subscription | Autodesk]]. Cu ajutorul său, vom putea proiecta circuite electronice, precum şi realiya traseele folosite la cablajul imprimat. Fusion360 necesită o licenţă pentru utilizare, dar este oferit gratuit studenţilor, folosind adresa de mail instituţională la crearea contului. | + | Fusion 360 este o aplicaţie din suita [[https://www.autodesk.com/products/fusion-360/overview?term=1-YEAR&tab=subscription | Autodesk]]. Cu ajutorul său, vom putea proiecta circuite electronice, precum şi realiza traseele folosite la cablajul imprimat. Fusion360 necesită o licenţă pentru utilizare, dar este oferit gratuit studenţilor, folosind adresa de mail instituţională la crearea contului. |
==== Instalare și folosire ==== | ==== Instalare și folosire ==== | ||
Line 26: | Line 26: | ||
* Puteți crea piese custom pe care să le folosiți în noile proiecte (Schematic și Board). | * Puteți crea piese custom pe care să le folosiți în noile proiecte (Schematic și Board). | ||
- | După ce creați board-ul pentru o schemă electronică, puteți să printați cablajul imprimat pentru a-l folosi la realizarea plăcuțelor voastre. Astfel, se poate observa că un proiect EAGLE complet se realizează din 2 pași: schematic și board, ca în figura de mai jos: | + | După ce creați board-ul pentru o schemă electronică, puteți să printați cablajul imprimat pentru a-l folosi la realizarea plăcuțelor voastre. Astfel, se poate observa că un proiect Fusion 360 complet se realizează din 2 pași: schematic și board, ca în figura de mai jos: |
- | TODO de adaugat o poza aici | + | {{ :tsc:laboratoare:pcb-from-schematic.png?600 |}} |
**De ce am nevoie să încarc biblioteci?** | **De ce am nevoie să încarc biblioteci?** | ||
Line 111: | Line 111: | ||
{{tsc:laboratoare:05:erc-2.png |}} | {{tsc:laboratoare:05:erc-2.png |}} | ||
+ | ==== Managementul bibliotecilor ==== | ||
+ | În cazul în care piesa căutată nu este găsită, este nevoie de importarea unei biblioteci care o conţine. | ||
+ | |||
+ | Astfel, trebuie deschis meniul **Library Manager** ({{:tsc:laboratoare:lbr.png?15}}) din cadrul ferestrei **Place components**. Se introduce numele componentei necesare în câmpul de filtrare şi se identifică o biblioteca ce conţine piesa dorită. Pentru a putea utiliza componentele din această bibliotecă, ea trebuie marcată ca fiind **IN USE**. | ||
+ | |||
+ | {{ :tsc:laboratoare:biblioteca.png?600 |}} | ||
==== Board Layout ==== | ==== Board Layout ==== | ||
Line 120: | Line 126: | ||
* Rute. Reprezintă traseul fizic de placa ce face legatura între pinii legați printr-un semnal. | * Rute. Reprezintă traseul fizic de placa ce face legatura între pinii legați printr-un semnal. | ||
- | Pentru a trece de la schematic la board folosiți: | + | Pentru a trece de la schematic la board folosiți butonul **Switch** din partea stângă a toobar-ului: |
+ | {{:tsc:laboratoare:switch_button.png?30|}} | ||
- | **File** -> **Switch to board** | + | După apăsarea butonului, se generează o placă goală, cu toate componentele care urmează să fie plasate, unite între ele de linii galbene cunoscute sub numele de "airwires". Urmează mutarea pieselor în spatiul plăcii, fie individual, fie în grupuri. |
- | Pentru a lucra cu mai multe componente deodată folosiți unealta **Group** ({{tsc:laboratoare:05:eagle_group_button.jpg?25|}}) după care selectați modificarea pe care o vreți efectuată (Ex: Move) și din meniul de context accesat dând click dreapta pe grup alegeți acțiunea per grup (Ex: Move: Group). | + | {{ :tsc:laboratoare:drag-component.gif?600 |}} |
- | **Schematicul și board-ul generat fac parte din același proiect. De multe ori este nevoie să ne dăm seama ce reprezintă un fir din board sau care e traseul din board corespunzător unei conexiuni din schematic. Pentru a face acest lucru, putem să folosim opțiunea „Show”{{tsc:laboratoare:05:eagle_show_button.jpg?25|}} din tool box, care permite ca la selectarea unei componente în schematic să facă highlight la componenta corespondentă din board și invers. Opțiunea „Show” se selectează separat pentru schematic, respectiv pentru board. În plus, având opțiunea activă, selectarea unui pin în schematic va face highlight la toți pinii care sunt conectați pe acea rută (similar pentru board). ** | + | Pentru a muta o componentă, puteţi folosi opţiunea de **Move** din toolbar sau, ţinând apăsat click stânga în centrul piesei, mutaţi piesa unde doriţi pe board. |
- | Ca o alternativă la opțiunea „Show”, pentru a vedea dacă un pin este conectat la o componentă, puteți încerca mutarea piesei. Spre deosebire de cum era în cazul simulatorului Falstad, EAGLE permite mutarea conexiunilor odată cu piesele. | + | Pentru a grupa mai multe componente, folosiţi unealta **Select->Group** din partea dreaptă a toolbar-ului după care selectați modificarea pe care o vreți efectuată din toolbar (Ex: Move). |
+ | |||
+ | **Schematicul și board-ul generat fac parte din același proiect. De multe ori este nevoie să ne dăm seama ce reprezintă un fir din board sau care e traseul din board corespunzător unei conexiuni din schematic. Pentru a face acest lucru, putem să folosim opțiunea „Show”{{tsc:laboratoare:05:eagle_show_button.jpg?25|}} din meniul din partea de jos a ferestrei, care permite ca la selectarea unei componente în schematic să facă highlight la componenta corespondentă din board și invers. Opțiunea „Show” se selectează separat pentru schematic, respectiv pentru board. În plus, având opțiunea activă, selectarea unui pin în schematic va face highlight la toți pinii care sunt conectați pe acea rută (similar pentru board). ** | ||
+ | |||
+ | Ca o alternativă la opțiunea „Show”, pentru a vedea dacă un pin este conectat la o componentă, puteți încerca mutarea piesei. Spre deosebire de cum era în cazul simulatorului Falstad, Fusion 360 permite mutarea conexiunilor odată cu piesele. | ||
=== Rutare === | === Rutare === | ||
- | Puteți observa faptul că la generarea board-ului piesele sunt conectate prin niște fire galbene, subțiri, numite airwires. Acestea nu reprezintă decât faptul că există o conexiune între acele piese în schematic, dar nu reprezintă traseele de care avem nevoie. Ne vor ajuta, însă, la crearea rutelor între componente. | + | Puteți observa faptul că la generarea board-ului piesele sunt conectate prin niște fire galbene, subțiri, numite "airwires". Acestea nu reprezintă decât faptul că există o conexiune între acele piese în schematic, dar nu reprezintă traseele de care avem nevoie. Ne vor ajuta, însă, la crearea rutelor între componente. În timp ce pisele sunt mutate pe board, un algoritm numit "ratsnest" optimizează traseele pentru airwires pentru a fi cât mai directe posibil. |
== Autoroute== | == Autoroute== | ||
- | Rutarea este facuta automat de catre eagle pe baza unui algoritm. Acest algoritm poate fi parametrizat prin asignarea unor costuri elementelor. Rutarea automata poate esua uneori sau poate produce rezultate proaste. | + | Rutarea este facuta automat de catre Fusion 360 pe baza unui algoritm. Acest algoritm poate fi parametrizat prin asignarea unor costuri elementelor. Rutarea automata poate esua uneori sau poate produce rezultate proaste. |
- | Pentru a face autorutare din eagle dați click pe butonul **Autorouter** ({{tsc:laboratoare:05:eagle_autoroute.jpg?25|Autorouter button}}). | + | Pentru a face autorutare din Fusion360 dați click pe butonul **Autorouter** din meniul **Quick Route**. Din meniul lansat puteți alege diversele proprietăți pe care să le aibă în vedere rutarea, una din cele mai importante este cum să trateze trasarea pe suprafața de sus și cea de jos a plăcii. |
- | Din meniul lansat puteți alege diversele proprietăți pe care să le aibă în vedere rutarea, una din cele mai importante este cum să trateze trasarea pe suprafața de sus și cea de jos a plăcii. | + | |
- | {{tsc:laboratoare:05:eagle_autoroute_menu.jpg?550|}} | + | {{ :tsc:laboratoare:autoroute_setup.png?600 |}} |
== Rutare manuala == | == Rutare manuala == | ||
Line 146: | Line 156: | ||
De multe ori autorutarea poate să genereze rezultate în parte ineficiente. Astfel, este indicat să folosiți o combinație de autorutare cu rutare manuală pentru a obține cele mai bune efecte. | De multe ori autorutarea poate să genereze rezultate în parte ineficiente. Astfel, este indicat să folosiți o combinație de autorutare cu rutare manuală pentru a obține cele mai bune efecte. | ||
- | Se ruteaza fiecare semnal manual folosind unealta **Route** ({{tsc:laboratoare:05:eagle_route.jpg?25|}}) . | + | Se ruteaza fiecare semnal manual folosind unealta **Route** ({{:tsc:laboratoare:good_route.png?30|}}) . |
- | Pentru a elimina o rută folosiți unealta **Ripup** ({{tsc:laboratoare:05:eagle_ripup.jpg?25|}}). | + | Pentru a elimina o rută folosiți unealta **Unroute** ({{tsc:laboratoare:unroute.png?30|}}). |
- | === Ratsnest === | ||
- | |||
- | Pentru a verifica faptul că toate Net-urile sunt rutate din schematic, folosiți opțiunea RATSNEST {{tsc:laboratoare:05:eagle_ratsnest.jpg?25|}}. Dacă totul a mers bine și ați rutat toate airwire-urile, veți vedea mesajul următor în status box-ul din stânga-jos: „Ratsnest: Nothing to do!”. | ||
=== Design Rule Check === | === Design Rule Check === | ||
- | Similar cu **ERC**-ul (Electrical Rule Check), există DRC (Design Rule Check {{tsc:laboratoare:05:eagle_drc_button.jpg?25|}}) care este o unealtă ce face verificări asupra circuitului conform anumitor parametri. De aici se pot seta verificări pentru a vedea dacă două linii sunt prea aproape, se poate mări dimensiunea găurilor de burghiu, cât și cea a pad-urilor. În principiu de aici se pot face diverse modificări pentru a ne asigură că circuitul reprezentat poate fi implementat folosind uneltele avute la dispoziție. Pe lângă asta, puteți încărca și un set de reguli predefinite. | + | Similar cu **ERC**-ul (Electrical Rule Check), există DRC (Design Rule Check {{tsc:laboratoare:05:eagle_drc_button.jpg?25|}}), în cadrul meniului **Rules DRC/ERC** care este o unealtă ce face verificări asupra circuitului conform anumitor parametri. De aici se pot seta verificări pentru a vedea dacă două linii sunt prea aproape, se poate mări dimensiunea găurilor de burghiu, cât și cea a pad-urilor. În principiu de aici se pot face diverse modificări pentru a ne asigură că circuitul reprezentat poate fi implementat folosind uneltele avute la dispoziție. Pe lângă asta, puteți încărca și un set de reguli predefinite. |
Cele mai comune probleme care pot apărea sunt: suprapunerea a două sau mai multe rute (numită **overlap**), trecerea unei rute prea aproape de un pad / via, trecerea unei rute prea aproape de marginea board-ului etc. | Cele mai comune probleme care pot apărea sunt: suprapunerea a două sau mai multe rute (numită **overlap**), trecerea unei rute prea aproape de un pad / via, trecerea unei rute prea aproape de marginea board-ului etc. | ||
Line 164: | Line 171: | ||
==== Exerciții ==== | ==== Exerciții ==== | ||
- | - Instalați biblioteca Adafruit din repository-ul GitHub de [[https://github.com/adafruit/Adafruit-Eagle-Library|aici]], într-un folder care conține numele vostru. Folosiți una dintre piesele din această bibliotecă (adăugați-o într-un schematic nou). | + | - Deschideți [[http://www.falstad.com/circuit|Falstad]], la circuitul Circuits -> Logic Families -> TTL -> TTL NAND. |
- | - Deschideți [[http://www.falstad.com/circuit|Falstad]], la circuitul Circuits -> Logic Families -> DTL -> DTL NAND. | + | |
- Realizați schematicul pentru acest circuit. | - Realizați schematicul pentru acest circuit. | ||
- Generați board-ul PCB folosind pașii descriși la secțiunea aferentă. Aranjați componentele în zona delimitată board-ului. Realizați rutarea între componente folosind doar layer-ul „bottom”. | - Generați board-ul PCB folosind pașii descriși la secțiunea aferentă. Aranjați componentele în zona delimitată board-ului. Realizați rutarea între componente folosind doar layer-ul „bottom”. | ||
Line 174: | Line 180: | ||
* verificarea pentru dimensiunea pad-urilor să fie cu 50% mai mare decât este setată implicit. | * verificarea pentru dimensiunea pad-urilor să fie cu 50% mai mare decât este setată implicit. | ||
- Realizați un schematic în care folosiți un microcontroller //ATMEGA328P// care va primi pe pinii PC0-3 un număr de la un switch(//DIP-04SMD//, ambele se găsesc în biblioteci de la SparkFun: //Sparkfun-IC-Microcontroller// respectiv //Sparkfun-Switches//) și va transmite folosind o magistrală de pe pinii PD0-7 către un afișor 7-segmente (//7-SEGMENT-DISPLAYPTH)//, tot din biblioteca SparkFun). Generați board-ul și realizați rutarea. | - Realizați un schematic în care folosiți un microcontroller //ATMEGA328P// care va primi pe pinii PC0-3 un număr de la un switch(//DIP-04SMD//, ambele se găsesc în biblioteci de la SparkFun: //Sparkfun-IC-Microcontroller// respectiv //Sparkfun-Switches//) și va transmite folosind o magistrală de pe pinii PD0-7 către un afișor 7-segmente (//7-SEGMENT-DISPLAYPTH)//, tot din biblioteca SparkFun). Generați board-ul și realizați rutarea. | ||
- | * Hint: Biblioteca de la SparkFun se poate adăuga pentru utilizare prin meniul **Library** -> **Use** (daca nu gasiti, descarcati bibliotecile de la [[https://github.com/sparkfun/SparkFun-Eagle-Libraries]]). | ||
* Hint: La magistrală trebuie etichetați identic liniile de la pinii PD0-7 și A-DP. | * Hint: La magistrală trebuie etichetați identic liniile de la pinii PD0-7 și A-DP. | ||
+ | |||
+ | <hidden> | ||
+ | |||
+ | Pentru demo puteti folosii tutorialul de la Autodesk pentru [[https://help.autodesk.com/view/fusion360/ENU/?guid=ECD-TUT-SCHEMATIC-TOP-LEVEL | schematic]] si pentru [[https://help.autodesk.com/view/fusion360/ENU/?guid=ECD-TUT-PCB-TOP-LEVEL| board]]. Trece cam prin toate elementele necesare. | ||
+ | |||
+ | </hidden> | ||
+ | | ||
==== Resurse ==== | ==== Resurse ==== | ||
- | * [[http://eagle.autodesk.com/eagle/documentation|Documentația oficială pentru EAGLE]] | + | * [[https://help.autodesk.com/view/fusion360/ENU/?guid=ECD-DESIGNS-ABOUT|Documentația oficială pentru Fusion 360 Electronics]] |
- | * [[https://learn.sparkfun.com/tutorials/how-to-install-and-setup-eagle/using-the-sparkfun-libraries|Tutorial SparkFun pentru adăugarea de biblioteci noi]] | + | * [[https://help.autodesk.com/view/fusion360/ENU/?guid=ECD-TUT-ECAD-MANAGE-LIBRARIES-TOP-LEVEL|Tutorial Fusion pentru adăugarea de biblioteci noi]] |
- | * [[https://learn.sparkfun.com/tutorials/using-eagle-schematic|Tutorial SparkFun pentru schematic]] | + | * [[https://help.autodesk.com/view/fusion360/ENU/?guid=ECD-TUT-SCHEMATIC-TOP-LEVEL|Tutorial Fusion pentru schematic]] |
- | * [[https://learn.sparkfun.com/tutorials/using-eagle-board-layout|Tutorial SparkFun pentru board]] | + | * [[https://help.autodesk.com/view/fusion360/ENU/?guid=ECD-TUT-PCB-TOP-LEVEL|Tutorial Fusion pentru board]] |