Prima secțiune de laboratoare se vor concentra pe proiectarea de circuite, folosind EAGLE (Easily Applicable Graphical Layout Editor), pentru a pregăti realizarea lor fizică.
EAGLE este o aplicație software realizată de către Autodesk. Cu ajutorul său, vom putea proiecta circuite electronice, precum și realiza traseele folosite la cablajul imprimat. EAGLE necesită o licență pentru utilizare, dar poate fi folosit gratuit cu anumite restricții, cum ar fi dimensiunea maximă a board-ului și numărul de layere. Unul dintre marile avantaje pe care le oferă este faptul că există numeroase biblioteci cu piese predefinite. O parte dintre aceste biblioteci sunt realizate chiar de către comunitate, printre cele mai notabile fiind bibliotecile puse la dispoziție de: SparkFun, Adafruit, Element14 etc.
Pentru a instala EAGLE, trebuie să descărcați installer-ul potrivit pentru sistemul vostru de operare de pe pagina de downloads.
Pe Ubuntu este disponibil şi prin intermediul apt:
sudo apt-get install eagle
Pentru a utiliza EAGLE aveți nevoie de un cont pe situ-ul Autodesk. La prima rulare EAGLE veți fi nevoiți să vă autentificați.
După instalare, deschiderea aplicației vă va da acces la un Control Panel (vezi figura de mai jos), de unde puteți crea proiecte și încărca biblioteci.
Ce se poate face cu EAGLE?
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:
De ce am nevoie să încarc biblioteci? Pentru că atunci când faceți proiectarea cunoașteți deja piesele pe care le folosiți (cele cumpărate din comerț), care au anumite dimensiuni („footprint”) de care trebuie să țineți cont la generarea board-ului.
De ce am nevoie să fac piese customizate? Pentru că este posibil ca pentru unele piese pe care doriți să le folosiți / le-ați cumpărat deja să nu găsiți bibliotecile corespunzătoare. Astfel, EAGLE permite realizare propriilor biblioteci și încurajează upload-ul acestora pe site-ul lor.
Pentru a crea o noua schema :
Pentru a adăuga piese în schemă este folosit butonul Add ( ). Va apărea o fereastră ce afișează listele de biblioteci din sistem, de unde puteți să selectați piesa dorită. Vor fi afișate informații despre piesă, cum va arăta piesa în schema și cum va arăta pe PCB. De asemenea, se pot căuta piese:
Pentru a adăuga piesa apoi în schemă, se face click în locul unde vrem să punem piesa. Înainte de a poziționa piesa, puteți folosi click-dreapta pentru a o roti. De asemenea, după adăugare piesa rămâne selectată astfel încât se pot adăuga cu ușurință mai multe piese de acelasi tip.
Inițial ele vor avea nume generice, însa acestea pot fi redenumite. Acest lucru se face prin Click-dreapta pe piesă → Name. Pentru a fi reprezentată și o valoare legată de piesă, se face Click-dreapta pe piesă → Value și este introdusă valoarea dorită.
Selectarea unei componente se face cu click stânga!
Daca schema devine prea aglomerată, pot fi folosite uneltele zoom: . Acestea pot fi folosite pentru a face zoom in, zoom out, pentru a încadra toata schema în ecran sau pentru a încadra o anumita zona în ecran.
În partea de sus a toolbar-ului din stânga sunt unelte ce pot fi folosite pentru a muta și așeza piese în scenă.
După ce ați adăugat piesele în scheme, trebuie făcute legăturile între ele. Pentru a vedea mai ușor pinii pieselor, poate fi activat layer-ul Pins:
Pentru a crea o legatură:
Dacă vom avea multe legături între piese, schema ar putea deveni foarte aglomerată. Pentru a elimina confuziile putem eticheta legăturile. Se poate face acest lucru folosind butonul Label ( ). Pentru a adăuga o eticheta se apasă click-stânga pe conexiunea dorita și se poziționează după preferințe. Eticheta va avea numele implicit al conexiunii. Pentru a o redenumi se apasă click-dreapta pe legatură → Name.
Toate legăturile conectate între ele vor avea aceeași etichetă. De asemenea, putem atașa mai multe etichete aceleiași legături sau unor legături care sunt conectate între ele. Toate aceste etichete vor avea același nume în mod automat.
Magistrala este un tip special de conexiune, ce reprezintă un set de fire legate logic între ele. Un exemplu ar fi o magistrală de date pe 16 biți: DATA[0:15]. Pentru a reprezenta o astfel de legatură în Eagle, se foloseste butonul Bus ( ). Se pot lega apoi conexiune normale la el.
Pentru a specifica conexiunile care pot face parte din magistrală, aceasta trebuie denumită în următoarele moduri:
După ce am terminat schema, comanda ERC ne poate testa circuitul pentru erori. Aceste lucru se poate face folosind butonul ERC():
Fișierul board poate fi generat automat din fișierul schematic sau poate fi construit de la zero. Avantajul generării din schematic constă în faptul că piesele vor fi deja adăugate, împreună cu semnalele dintre ele. Componentele unui fișier .brd sunt:
Pentru a trece de la schematic la board folosiți:
File → Switch to board
Pentru a lucra cu mai multe componente deodată folosiți unealta Group () 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).
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” 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).
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.
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.
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.
Pentru a face autorutare din eagle dați click pe butonul Autorouter ().
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.
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 () .
Pentru a elimina o rută folosiți unealta Ripup (
).
Pentru a verifica faptul că toate Net-urile sunt rutate din schematic, folosiți opțiunea RATSNEST . 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!”.
Similar cu ERC-ul (Electrical Rule Check), există DRC (Design Rule Check ) 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.