Sadržaj:

Arduino ploča samostalno izrađena: 8 koraka
Arduino ploča samostalno izrađena: 8 koraka

Video: Arduino ploča samostalno izrađena: 8 koraka

Video: Arduino ploča samostalno izrađena: 8 koraka
Video: ROBOTIZIRANA IGRAČKA - završni rad 2024, Novembar
Anonim
Arduino ploča samostalno izrađena
Arduino ploča samostalno izrađena

Dizajniranjem vlastite Arduino ploče naučit ćete o nekim novim komponentama i elektroničkim krugovima, uključujući neke napredne teme poput napajanja, vremenskog kruga i uporabe ATmega IC (integriranog kruga).

U budućnosti će vam pomoći pri stvaranju vlastitih projekata poput meteorološke stanice, štita za kućnu automatizaciju itd.

Prednost vlastitog Arduina je u tome što ima nisku potrošnju energije i osigurava da projekt može dugo raditi na bateriji.

Osim toga, ploču možete proširiti dodavanjem proširenja za digitalne ili analogne portove ili nekim komunikacijskim modulima.

Supplies

Hardver

Za izradu minimalističkog Arduina trebat će vam sljedeći hardver:

1x mikrokontroler ATmega328P-PU sa Arduino pokretačkim programom

1x linearni regulator napona 7805 (5v izlaz, 35v max ulaz)

1x matična ploča (koristim ploču sa 830 iglica)

Različite spojne žice

1x 16 MHz kristalni oscilator

1x 28 -polna IC utičnica

1x 1 μF, 25 V elektrolitički kondenzator

1x 100 μF, 25 V elektrolitički kondenzator

2x 22 pF, 50 V keramički kondenzatori

2x 100 nF, 50 V keramički kondenzatori

2x otpornika od 330 Ohma (R1 i R2)

1x 10 kOhm otpornik (R3)

2x LED diode po vašem izboru (LED1 i LED2)

1x dugme

Opcionalno 2x 6-pinsko zaglavlje i 3x 8-pinsko zaglavlje

1x kopča za bateriju tipa PP3

1x 9 V baterija tipa PP3

1x adapter za programiranje FTDI

Korak 1: Linearni regulator napona 7805

7805 Linearni regulator napona
7805 Linearni regulator napona
7805 Linearni regulator napona
7805 Linearni regulator napona
7805 Linearni regulator napona
7805 Linearni regulator napona

Linearni regulator napona sadrži jednostavno kolo koje pretvara jedan napon u drugi. Regulator 7805 može pretvoriti napon između 7 i 30 volti u fiksnih 5 volti, sa strujom do 1 ampera, što je savršeno za našu Arduino ploču.

Počet ćemo s stvaranjem strujnog kruga koji sadrži 7805 regulator napona u obliku TO-220 i dva kondenzatora sa po 100 μF.

Kada gledate prednji dio čipa 7805 - pin s lijeve strane služi za ulazni napon, središnji pin se spaja na GND, a desni pin je 5 V izlazna veza. Ja bih preporučio postavljanje hladnjaka, jer kada strujni krug dostigne najviše 1 amper struje, čip 7805 će biti tiho vruć (možete opeći vrh prsta kada ga dodirnete).

Postavite kondenzator od 100 μF između IN -a regulatora i mase i kondenzatora od 100 μF na desnu šinu između napajanja i mase. Morate biti oprezni - elektrolitički kondenzator je polariziran (srebrna traka na kondenzatoru označava uzemljenje) i mora se postaviti točno prema shemi.

Dodajte žice za napajanje i uzemljenje tamo gdje će biti vaš regulator napona, povezujući svaku šinu u sredini i na desnom dijelu ploče. Na ovaj način imamo napajanje od 5 V s gornje i donje tračnice matične ploče. Dodatno ćemo uključiti crvenu LED lampicu koja svijetli kada je napajanje uključeno, na ovaj način uvijek možemo vidjeti kada je naša ploča napajana.

LED dioda je dioda i dopušta da električna struja teče samo u jednom smjeru. Električna energija bi trebala dotjerati u dugi krak i iz kratkog. Katoda LED diode također ima jednu blago spljoštenu stranu, koja odgovara kratkoj, negativnoj nozi LED -a.

Naš krug ima napajanje od 5 volti, a crvena LED dioda ima nazivnu vrijednost od 1,5 do 2 volta. Da bismo smanjili napon, moramo spojiti otpornik u seriju sa LED diodom koja ograničava količinu struje koja teče kako bi se spriječilo uništavanje LED diode. Dio napona će otpornik potrošiti, a samo odgovarajući dio će se primijeniti na LED. Umetnite otpornik između kratkog kraka LED diode i reda s crnom žicom s desne strane čipa (GND).

Crvena i crna žica lijevo od regulatora napona su mjesto na koje će biti priključeno napajanje. Crvena žica je za POWER, a crna za masu (GND).

NAPOMENA: Možete priključiti samo izvor napajanja između 7-16V. Sve niže i nećete dobiti 5V iz vašeg regulatora, a viši napon od 17 V oštetit će vaš čip. Prikladna je 9V baterija, 9V DC napajanje ili 12V DC napajanje.

A za još neka unaprijed navedena kola možete postaviti regulator napona s podesivim naponom. Na ovaj način možete dodati neke 3,3 V senzore na ploču ili uključiti motor od 9 V DC.

Više o linearnim regulatorima napona -

www.instructables.com/id/Introduction-to-Linear-Voltage-Regulators

Korak 2: Mikrokontroler ATmega328P-PU

Mikrokontroler ATmega328P-PU
Mikrokontroler ATmega328P-PU
Mikrokontroler ATmega328P-PU
Mikrokontroler ATmega328P-PU
Mikrokontroler ATmega328P-PU
Mikrokontroler ATmega328P-PU

Za izradu Arduina na matičnoj ploči potreban vam je mikrokontroler ATmega328P-PU koji je mozak naše vlastite Arduino ploče. Postavite ga kao što je prikazano na shemama i budite oprezni - noge se mogu slomiti ako ih pritisnete unutra, ili možete koristiti 28 -polnu IC utičnicu. IC treba postaviti s rezom u obliku mjeseca orijentiranom lijevo od matične ploče (iglice su numerirane od 1 do 28 u smjeru suprotnom od kazaljke na satu).

NAPOMENA: Ne sadrže svi ATmega IC Arduino bootloader (softver koji mu omogućuje tumačenje skica napisanih za Arduino). Kada tražite mikrokontroler za svoj vlastiti Arduino, svakako odaberite onaj koji već uključuje pokretački program.

Evo malo teorije mikrokontrolera

Mikrokontroler je mali računar sa procesorom koji izvršava upute. Ima različite vrste memorije za čuvanje podataka i uputstava iz našeg programa (skica); ATmega328P-PU ima tri vrste memorije: 32 kB ISP (programiranje u sistemu) flash memorija u kojoj se čuvaju skice, 1 kB EEPROM-a (električno izbrisiva programabilna memorija samo za čitanje) za dugoročno skladištenje podataka i 2 kB SRAM (statička memorija sa slučajnim pristupom)) za spremanje varijabli dok se skica izvodi.

NAPOMENA: Važno je znati da se podaci u flash memoriji i EEPROM -u zadržavaju kada se napajanje mikrokontrolera isključi.

Mikrokontroler ima 13 digitalnih ulazno/izlaznih linija opće namjene (GPIO) i šest 10-bitnih (vrijednosti između 0 i 1023) analognih GPIO linija digitalnog pretvarača (ADC) za pretvaranje napona na pinu u digitalnu vrijednost. Postoje tri tajmera sa dva 8-bitna tajmera sa vrijednostima između 0 i 255 i jedan 16-bitni mjerač sa vrijednostima između 0 i 65535, koje koristi funkcija delay () u skici ili modulacija širine impulsa (PWM).

Postoji pet softverskih načina za uštedu energije, a mikrokontroler radi između 1,8 V i 5,5 V. Sliku možete koristiti kao referencu za raspored pinova ATmega328P-PU.

Postoje tri grupe portova: PB, PC i PD sa 8, 7 i 8 pinova, plus dva pina za uzemljenje (GND), 5V pin (VCC) sa naponom napajanja (AVCC) i analogni referentni napon (AREF) pinovi za analogno-digitalni pretvarač (ADC).

Korak 3: ATmega328P-PU povezivanje

ATmega328P-PU interkonekcija
ATmega328P-PU interkonekcija

Nakon postavljanja IC -a, spojite pinove 7, 20 i 21 ATmega -e na tračnicu s pozitivnom snagom na ploči, a pinove 8 i 23 na negativne tračnice napajanja, upotrijebite kratkospojne žice za povezivanje pozitivne i GND strujne šine s obje strane ploče, kao što je prikazano na slici.

Pin 7 - Vcc - Digitalni napon napajanja

Pin 8 - GND

Pin 22 - GND

Pin 21 - AREF - Analogni referentni pin za ADC

Pin 20 - AVcc - Napon napajanja za ADC pretvarač. Mora se spojiti na napajanje ako se ADC ne koristi kao u našem primjeru. Ako ga želite koristiti u budućnosti, mora se napajati putem niskopropusnog filtra (kako bi se smanjila buka).

Nakon toga postavite četrnaestosmjerni pin zaglavlja-bit će sličan Arduino GPIO-ima.

Korak 4: Dugme za poništavanje

Dugme za poništavanje
Dugme za poništavanje
Dugme za poništavanje
Dugme za poništavanje

Dodajte mali taktilni prekidač kako biste mogli resetirati Arduino i pripremiti čip za postavljanje novog programa. Kratkim pritiskom na ovaj prekidač čip će se resetirati.

Gumb za resetiranje umetnut ćemo u naš krug kao što je prikazano na slici, kada ga pritisnemo, električni krug će se skratiti na GND zaobilazeći otpornik od 1 kOhm i spojiti ATmega pin 1 na GND. Zatim dodajte žicu s donje lijeve noge prekidača na pin za resetiranje ATmega čipa i žicu s gornje lijeve noge prekidača na masu.

Dodatno, dodajte 10 k Ohm pull-up otpornik na +5V sa RESET pina kako biste spriječili da se čip resetira tijekom normalnog rada. Ovaj otpornik će biti spojen na napajanje od 5 volti, "povlačeći" pin 1 do 5 volti. A kad spojite Pin 1 na 0V bez otpornika, čip će se ponovno pokrenuti. Na ponovnom pokretanju mikrokontrolera potražite novi program koji se učitava (pri uključivanju ako se ne pošalje ništa novo, on pokreće zadnji poslani program).

Otpornik ima četiri boje. Čitanje smeđe = 1, crno = 0, narančasto = 3 daje nam broj 103. Otpor u Ohmima počinje '10' sa 3 nule nakon - 10 000 Ohma ili 10 kilo Ohma, a zlatna traka je tolerancija (5 %).

Za nadogradnju našeg kruga - možemo postaviti 'odvajajući' kondenzator '. Postavite keramički kondenzator od 100 nF (nano Farad). To je mali disk s dvije žice s oznakom '104', a ova vrsta kondenzatora nije polarizirana i može se postaviti u bilo kojoj orijentaciji.

Ovaj kondenzator za razdvajanje izglađuje električne udarce, pa se signal ponovnog pokretanja koji se šalje na pin 1 pouzdano detektira. Brojke 104 pokazuju njegov kapacitet u pico Faradu u naučnoj notaciji. Posljednja brojka '4' govori nam koliko nula treba dodati. Kapacitet počinje s '10', a zatim se nastavlja s daljnje 4 nule - 100 000 piko farada, a budući da je 1000 piko farada 1 nano farad, postoji 100 nano farada (104).

Umetnite kondenzator između gornje lijeve noge čipa (iglica 1, obrnuto od kazaljke na satu od oblika polumjeseca)

Korak 5: Kristalni oscilator

Crystal Oscillator
Crystal Oscillator
Crystal Oscillator
Crystal Oscillator

Sada ćemo napraviti sat za IC. To je kvarcni 16 Mhz i dva keramička kondenzatora od 22 pF (piko Farad). Kristalni oscilator stvara električni signal s vrlo tačnom frekvencijom. U ovom slučaju frekvencija je 16 MHz, što znači da mikrokontroler može izvršiti 16 miliona procesorskih instrukcija u sekundi.

Kristal od 16 MHz (slika) omogućava Arduinu da izračuna vrijeme, a kondenzatori služe za uglađivanje napona napajanja.

Noge od kristala kvarca su iste - ne možete ih spojiti unatrag. Spojite jednu nogu kristala na pin 9 na čipu ATmega, a drugu nožicu na pin 10. Spojite nožice jednog od 22 pF kondenzatora diska na pin 9 i GND, a drugi kondenzator diska na pin 10 i GND, kao prikazano na slici.

Napomena: disk kondenzatori su nepolarizirani i mogu se umetnuti na bilo koji način.

Vrijedi napomenuti da duljine žica između kondenzatora od 22 pF moraju biti jednake dužine i trebaju biti što bliže kontroleru kako bi se izbjegle interakcije s drugim dijelovima kola.

Korak 6: Dodavanje LED -a na pin 13

Dodavanje LED -a na pin 13
Dodavanje LED -a na pin 13
Dodavanje LED -a na pin 13
Dodavanje LED -a na pin 13
Dodavanje LED -a na pin 13
Dodavanje LED -a na pin 13

Sada ćemo dodati zelenu LED diodu (digitalni pin 13 na Arduinu).

Umetnite dugačku nogu sa LED diodama u red ispod crvene žice (s desne strane čipa - napajanje ili 5 volti) i kratku nogu u prvi prazan red ispod mikrokontrolera.

Ovaj otpornik od 330 ohma spojen je serijski sa LED diodom, ograničavajući protok električne energije kako bi spriječio uništavanje LED dioda.

Umetnite otpornik između kratke nogice LED diode i reda s crnom žicom s desne strane čipa (GND ili 0 volti)

Svi analogni, digitalni i drugi pinovi dostupni na normalnoj Arduino ploči dostupni su i u našoj verziji matične ploče. Kao referencu možete koristiti ATmega shematsku i pin tablicu.

Korak 7: USB na serijski konektor

USB na serijski konektor
USB na serijski konektor
USB na serijski konektor
USB na serijski konektor
USB na serijski konektor
USB na serijski konektor
USB na serijski konektor
USB na serijski konektor

Mikrokontroler ATmega 328P-PU nudi tri načina komunikacije: serijski programabilni USART (univerzalni sinhroni i asinhroni prijemnik-predajnik), SPI (serijski periferni interfejs) serijski port i dvožilni serijski interfejs. USART uzima bajtove podataka i prenosi pojedinačne bitove uzastopno, što zahtijeva prijenosne (TX) i prijemne (RX) komunikacijske linije. SPI koristi četiri komunikacijske linije: master-out slave-in (MOSI), master-in slave-out (MISO) i serijski sat (SCK) sa zasebnom linijom za odabir slave (SS) za svaki uređaj. I2C komunikacijska sabirnica dvožilnog sučelja (TWI) koristi dvije signalne linije: serijske podatke (SDA) i serijski sat (SCL).

Za povezivanje naše ploče s računalom s Arduino IDE -om za preuzimanje skice, koristit ćemo USB do serijsko UART sučelje, poput FT232R FTDI.

Prilikom kupovine FTDI kabela provjerite je li to 5 V model jer model od 3,3 V neće raditi ispravno. Ovaj kabel (prikazan na slici) ima USB priključak na jednom kraju i utičnicu sa šest žica na drugom.

Kad povezujete kabel, provjerite je li strana utičnice s crnom žicom spojena na GND pin na pinovima zaglavlja matične ploče. Nakon što je kabel spojen, on također napaja krug, baš kao što bi to učinila normalna Arduino ploča.

Zatim ćemo povezati naš FTDI s našom vlastitom Arduino pločom; za referencu možete koristiti tablicu i shemu.

Elektrolitski kondenzator od 0,1 μF povezan je između pina DTR (Data Terminal Ready) na USB -u za serijski UART interfejs i Reset mikrokontrolera, koji resetuje mikrokontroler da se sinhronizuje sa USB -om na serijski interfejs.

NAPOMENA: Jedan dio računala je da RX pin mikrokontrolera mora biti spojen na TX USB -a na serijski adapter, a isto s TX -om jednog uređaja na RX drugog.

CTS (Clear to Send) pin na USB -u za serijski UART interfejs nije povezan sa mikrokontrolerom.

Da biste skinuli skicu na mikrokontroler u Arduino IDE -u iz izbornika Alati ➤ Port, odaberite odgovarajući komunikacijski (COM) port, a zatim iz izbornika Alati ➤ Ploča odaberite Arduino/Genuino Uno. Skica se sastavlja u Arduino IDE -u i zatim učitava u mikrokontroler sa USB -om na serijsko UART sučelje. Kada se skica preuzme, zelena i crvena LED dioda USB-serijskog UART sučelja TXD i RXD trepere.

USB na serijski UART interfejs može se ukloniti i 5V napajanje spojiti na mikrokontroler. LED i 220 kΩ otpornik su spojeni na pin 19 mikrokontrolera, ekvivalent Arduino pin 13, za pokretanje treperenja.

Korak 8: Otpremanje skice ili instaliranje pokretačkog programa

Otpremanje skice ili instaliranje pokretačkog programa
Otpremanje skice ili instaliranje pokretačkog programa
Otpremanje skice ili instaliranje pokretačkog programa
Otpremanje skice ili instaliranje pokretačkog programa

Ako nemate USB u serijski pretvarač-možete upotrijebiti drugi Arduino (u mom slučaju Arduino UNO) za postavljanje skice ili pokretačkog programa na samostalno napravljenu ploču.

Mikrokontroleri ATmega238P-PU zahtijevaju pokretački program za učitavanje i pokretanje skica iz Arduino IDE-a; kada se napajanje uključi na mikrokontroler, pokretački program utvrđuje da li se učitava nova skica, a zatim učitava skicu u memoriju mikrokontrolera. Ako imate ATmega328P-PU bez pokretačkog programa, tada možete učitati pokretački program pomoću SPI komunikacije između dvije ploče.

Evo kako učitavate pokretački program na ATmega IC.

Prvo počnimo s konfiguriranjem našeg Arduino UNO -a kao ISP -a, to je učinjeno jer želite da Arduino UNO učita skicu na ATmega IC, a ne na sebe.

Korak 1: Konfiguriranje našeg Arduino UNO -a kao ISP -a

Nemojte povezivati ATmega IC dok je otpremanje u toku.

  • Priključite arduino na računar
  • Otvorite arduino IDE
  • Odaberite odgovarajuću ploču (Alati> Ploča> Arduino UNO) i COM port (Alati> Port> COM?)
  • Otvorite> Primjeri> ArduinoISP
  • Otpremite skicu

Nakon toga možete spojiti vlastitu ploču na Arduino UNO slijedeći krug kako je prikazano na shemi. U ovoj fazi nema potrebe za napajanjem vlastite ploče jer bi Arduino osigurao potrebno napajanje.

Korak 2: Otpremanje skice ili pokretačkog programa

Kada je sve povezano, otvorite IDE iz mape koju ste upravo stvorili (kopija).

  • Odaberite Arduino328 iz Alati> Ploča
  • Odaberite Arduino kao ISP iz Alati> Programer
  • Odaberite Burn Bootloader

Nakon uspješnog narezivanja dobili biste "Gotovo učitavanje gotovog programa gotovo".

Bootloader je sada učitan na mikrokontroler, koji je spreman za primanje skice nakon promjene COM porta u izborniku Tools ➤ Port.

Preporučuje se: