Përmbajtje:

Bordi Arduino i bërë nga vetja: 8 hapa
Bordi Arduino i bërë nga vetja: 8 hapa

Video: Bordi Arduino i bërë nga vetja: 8 hapa

Video: Bordi Arduino i bërë nga vetja: 8 hapa
Video: Управление 32 сервомоторами с помощью PCA9685 и Arduino: V3 2024, Korrik
Anonim
Bordi Arduino i bërë vetë
Bordi Arduino i bërë vetë

Duke hartuar Arduino-Bordin tuaj ju do të mësoni për disa përbërës të rinj dhe qarqe elektronike, duke përfshirë disa tema të avancuara si furnizimi me energji, qarku i kohës dhe përdorimi i ATmega IC (Qarku i Integruar).

Do t'ju ndihmojë në të ardhmen me krijimin e projekteve tuaja si stacioni i motit, mburojat e automatizimit të shtëpisë etj.

Avantazhi i Arduino të bërë nga vetja është se ai ka një konsum të ulët të energjisë dhe siguron që një projekt të funksionojë për një kohë të gjatë me një bateri.

Përveç kësaj, ju mund të zgjeroni bordin duke shtuar zgjerimin dixhital ose analog të portit ose disa module komunikimi.

Furnizimet

Hardueri

Për të ndërtuar një Arduino minimalist, do t'ju duhet pajisjet e mëposhtme:

1x mikrokontrollues ATmega328P-PU me bootloader Arduino

1x 7805 rregullator i tensionit linear (dalje 5v, hyrje maksimale 35v)

1x dërrasë buke (unë jam duke përdorur tabela 830 pin)

Tela të ndryshëm lidhës

Oshilator kristal 1x 16 MHz

1x prizë ic 28 pin

1x 1 μF, kondensator elektrolitik 25 V

1x 100 μF, kondensator elektrolitik 25 V

2x 22 pF, kondensatorë qeramikë 50 V

2x 100 nF, kondensatorë qeramikë 50 V

2x 330 Ohms rezistencë (R1 dhe R2)

Rezistencë 1x 10 kOhm (R3)

2x LED të zgjedhjes suaj (LED1 dhe LED2)

1x buton shtypës

Koka opsionale 2x 6-pin dhe kokë 3x 8-pin

Kapësja e baterisë 1x e tipit PP3

Bateri 1x 9 V e tipit PP3

1x përshtatës programimi FTDI

Hapi 1: Rregullatori linear i tensionit 7805

7805 Rregullatori Linear i Tensionit
7805 Rregullatori Linear i Tensionit
7805 Rregullatori i Tensionit Linear
7805 Rregullatori i Tensionit Linear
7805 Rregullatori Linear i Tensionit
7805 Rregullatori Linear i Tensionit

Një rregullator linear i tensionit përmban një qark të thjeshtë që konverton një tension në tjetrin. Rregullatori 7805 mund të konvertojë një tension midis 7 dhe 30 volt në 5 volt fikse, me një rrymë deri në 1 amp, e cila është e përkryer për bordin tonë Arduino.

Ne do të fillojmë me krijimin e qarkut të furnizimit me energji i cili përmban një rregullator të tensionit 7805 në formën TO-220 dhe dy kondensatorë me 100 μF secili.

Kur shikoni pjesën e përparme të çipit 7805 - kunja në të majtë është për tensionin e hyrjes, kunja qendrore lidhet me GND dhe kunja e djathtë është lidhja dalëse 5 V. Unë do të rekomandoja të vendosni një lavaman, sepse kur qarku të arrijë deri në maksimumin 1 amp rrymë, çipi 7805 do të jetë i nxehtë i qetë (mund ta digjni majën e gishtit kur e prekni).

Vendosni një kondensator 100 μF midis IN të rregullatorit dhe tokës dhe një kondensator a100 μF në shinën e drejtë midis fuqisë dhe tokës. Duhet të jeni të kujdesshëm - kondensatori elektrolitik është i polarizuar (shiriti argjendi në kondensator nënkupton këmbën e tokës) dhe duhet të vendoset saktësisht sipas skemës.

Shtoni telat e rrymës dhe tokëzimit për vendin ku do të jetë rregullatori juaj i tensionit, duke lidhur secilën hekurudhë në mes dhe në pjesën e djathtë të bordit. Në këtë mënyrë kemi furnizim me energji 5 Volt nga binarët e sipërm dhe të poshtëm të pjatës. Përveç kësaj ne do të përfshijmë një LED të kuq që ndizet kur energjia është e ndezur, në këtë mënyrë ne gjithmonë mund të shohim kur bordi ynë është i ndezur.

Një LED është një diodë dhe lejon që rryma elektrike të rrjedhë në një drejtim. Energjia elektrike duhet të rrjedhë në këmbën e gjatë dhe jashtë këmbës së shkurtër. Katoda LED gjithashtu ka një anë pak të rrafshuar, e cila korrespondon me këmbën e shkurtër negative të LED.

Qarku ynë ka një furnizim me energji 5 volt dhe një LED i kuq vlerësohet rreth 1.5 - 2 volt. Për të zvogëluar tensionin ne duhet të lidhim rezistencën në seri me LED duke kufizuar sasinë e energjisë elektrike që rrjedh për të parandaluar shkatërrimin e LED. Një pjesë e tensionit do të konsumohet nga rezistenca dhe vetëm një pjesë e përshtatshme e tij aplikohet nëpër LED. Vendosni rezistencën midis këmbës së shkurtër të LED dhe rreshtit që përmban tela të zezë në anën e djathtë të çipit (GND).

Telat kuq e zi në të majtë të rregullatorit të tensionit është vendi ku do të lidhet furnizimi me energji elektrike. Teli i kuq është për POWER dhe tela i zi është për tokën (GND).

SH NOTNIM: Mund të lidhni vetëm një furnizim me energji që është midis 7-16V. Çdo më e ulët dhe nuk do të merrni 5V nga rregullatori juaj, dhe tensioni më i lartë 17 V do të dëmtojë çipin tuaj. Një bateri 9V, furnizim me energji elektrike 9V DC ose furnizim me energji 12V DC janë të përshtatshme.

Dhe për disa qarqe më të përparuara mund të vendosni një rregullator të tensionit me tension të rregullueshëm. Në këtë mënyrë mund të shtoni disa sensorë 3.3 V në tabelë ose të ndizni një motor 9 V DC.

Më shumë rreth rregullatorëve të tensionit linear -

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

Hapi 2: Mikrokontrolluesi ATmega328P-PU

Mikrokontrolluesi ATmega328P-PU
Mikrokontrolluesi ATmega328P-PU
Mikrokontrolluesi ATmega328P-PU
Mikrokontrolluesi ATmega328P-PU
Mikrokontrolluesi ATmega328P-PU
Mikrokontrolluesi ATmega328P-PU

Për të ndërtuar një Arduino në tabelën e bukës ju nevojitet një mikrokontrollues ATmega328P-PU i cili është truri i bordit tonë Arduino të bërë vetë. Vendoseni atë siç tregohet në skemat dhe bëni kujdes - këmbët mund të thyhen nëse i futni me forcë, ose mund të përdorni prizë IC me 28 kunja. IC duhet të vendoset me një formë hëne të prerë të orientuar në të majtë të dërrasës së bukës (kunjat numërohen nga 1 në 28 në të kundërt).

SH NOTNIM: Jo të gjithë ATmega IC përmbajnë ngarkuesin Arduino (softueri që e lejon atë të interpretojë skica të shkruara për një Arduino). Kur kërkoni një mikrokontrollues për Arduino-n tuaj, sigurohuni që të zgjidhni një që tashmë përfshin ngarkuesin e nisjes.

Këtu pak teori të mikrokontrolluesve

Mikrokontrolluesi është një kompjuter i vogël me një procesor që ekzekuton udhëzimet. Ka lloje të ndryshme të kujtesës për të mbajtur të dhëna dhe udhëzime nga programi ynë (skicë); ATmega328P-PU ka tre lloje të kujtesës: 32kB ISP (programim në sistem) flash memorie ku ruhen skicat, 1kB EEPROM (memorie e programueshme që mund të fshihet elektrikisht vetëm për lexim) për ruajtje afatgjatë të të dhënave dhe 2kB SRAM (memorie statike me akses të rastësishëm)) për ruajtjen e variablave kur një skicë është duke u ekzekutuar.

SH NOTNIM: shtë e rëndësishme të dini se të dhënat në flash memorie dhe EEPROM ruhen kur fuqia e mikrokontrolluesit hiqet.

Mikrokontrolluesi ka 13 linja dixhitale të hyrjes/daljes për qëllime të përgjithshme (GPIO) dhe gjashtë linja 10-bit (vlera midis 0 dhe 1023) analoge me konvertuesin dixhital (ADC) GPIO për të kthyer tensionin në një kunj në një vlerë dixhitale. Ekzistojnë tre kohëmatës me dy kohëmatës 8-bit me vlera midis 0 dhe 255, dhe një kohëmatës 16-bit me vlera midis 0 dhe 65535, të cilat përdoren nga funksioni i vonesës () në një skicë ose nga modulimi i gjerësisë së pulsit (PWM) Me

Ekzistojnë pesë mënyra të zgjedhjes së softuerit për kursimin e energjisë dhe mikrokontrolluesi funksionon midis 1.8V dhe 5.5V. Mund ta përdorni figurën si referencë për paraqitjen e kunjave të ATmega328P-PU.

Ekzistojnë tre grupe portesh: PB, PC dhe PD me 8, 7 dhe 8 kunja respektivisht, plus dy kunja tokësore (GND), një kunj 5V (VCC) me tension furnizimi (AVCC), dhe tension analog referimi (AREF) kunjat për konvertuesin analog-dixhital (ADC).

Hapi 3: Ndërlidhja ATmega328P-PU

Ndërlidhja ATmega328P-PU
Ndërlidhja ATmega328P-PU

Pas vendosjes së IC, lidhni kunjat 7, 20 dhe 21 të ATmega në shinën e fuqisë pozitive në pjatë, dhe kunjat 8 dhe 23 në binarët e fuqisë negative, përdorni tela kërcyes për të lidhur binarët e fuqisë pozitive dhe GND në të dyja anët e bordi, siç tregohet në Figurë.

Pin 7 - Vcc - Tensioni i Furnizimit Dixhital

Pin 8 - GND

Pin 22 - GND

Pin 21 - AREF - Kodi analog referues për ADC

Pin 20 - AVcc - Tensioni i furnizimit për konvertorin ADC. Duhet të lidhet me energjinë nëse ADC nuk po përdoret si në shembullin tonë. Nëse dëshironi ta përdorni në të ardhmen atëherë duhet të mundësohet nëpërmjet një filtri me kalim të ulët (për të zvogëluar zhurmën).

Pas kësaj, vendosni një kunjë me kokë me katërmbëdhjetë drejtime-do të jetë e ngjashme me GPIO-të Arduino.

Hapi 4: Butoni i rivendosjes

Butoni i rivendosjes
Butoni i rivendosjes
Butoni i rivendosjes
Butoni i rivendosjes

Shtoni çelësin e vogël prekës në mënyrë që të rivendosni Arduino dhe të përgatitni çipin për ngarkimin e një programi të ri. Një shtypje e shpejtë momentale e këtij çelësi do të rivendosë çipin.

Ne do të fusim butonin e rivendosjes në qarkun tonë siç tregohet në figurë, kur e shtypim atë qarku elektrik do të shkurtohet në GND duke anashkaluar një rezistencë 1kOhm dhe duke lidhur ATmega Pin 1 me GND. Pastaj, shtoni një tel nga këmba e poshtme e majtë e ndërprerësit në kunjin RESET të çipit ATmega dhe një tel nga këmba e sipërme e majtë e ndërprerësit në tokë.

Për më tepër, shtoni një rezistencë tërheqëse 10 k Ohm në +5 V nga kunja RESET në mënyrë që të parandaloni që çipi të rivendoset gjatë funksionimit normal. Ky rezistencë do të lidhet me furnizimin me energji 5 volt, duke 'tërhequr' Pin 1 deri në 5 volt. Dhe kur lidhni Pin 1 me 0V pa rezistencë, çipi do të rindizet. Në mikrokontrolluesin e rindezjes kërkoni një program të ri që ngarkohet (kur ndizet nëse nuk dërgohet asgjë e re, ai ekzekuton programin e fundit të dërguar).

Rezistenca ka një shirit me katër ngjyra. Leximi Brown = 1, E Zezë = 0, Portokalli = 3 na jep numrin 103. Rezistenca në Ohms fillon '10' me 3 zero pas - 10, 000 Ohms ose 10 kilogram Ohms, dhe shiriti i arit është toleranca (5 %)

Për të përmirësuar qarkun tonë - ne mund të vendosim kondensatorin e ‘shkëputjes’. Vendosni një kondensator qeramik 100 nF (nano Farad). Discshtë një disk i vogël me dy tela me 'shënimin 104' dhe ky lloj kondensatori nuk është i polarizuar dhe mund të vendoset në çdo orientim.

Ky kondensator 'shkëputës' zbut goditjet elektrike, kështu që sinjali i rindezjes i dërguar në Pin 1 zbulohet me besueshmëri. Shifrat 104 tregojnë kapacitetin e tij në pico Farad në shënimin shkencor. Figura e fundit '4' na tregon se sa zero duhet të shtojmë. Kapaciteti fillon ‘10’ dhe më pas vazhdon me 4 zero të tjera - 100, 000 pico Farads, dhe meqenëse 1000 pico Farads është 1 nano Farad, ka 100 nano Farads (104).

Vendosni kondensatorin midis pjesës së sipërme të majtë të çipit (kunja 1, në drejtim të kundërt të orës nga forma e gjysmës së hënës)

Hapi 5: Lëkundës kristali

Lëkundës kristali
Lëkundës kristali
Lëkundës kristali
Lëkundës kristali

Tani do të bëjmë orën për IC. Ashtë një kuarc 16 Mhz dhe dy kondensatorë qeramikë 22pF (piko Farad) secili. Lëkundësi kristalor krijon një sinjal elektrik me një frekuencë shumë të saktë. Në këtë rast, frekuenca është 16 MHz, që do të thotë se mikrokontrolluesi mund të ekzekutojë 16 milion udhëzime të procesorit në sekondë.

Kristali 16 MHz (figura) lejon Arduino të llogarisë kohën, dhe kondensatorët shërbejnë për të zbutur tensionin e furnizimit.

Këmbët e kristalta kuarci janë të dyja të njëjta - nuk mund ta lidhni prapa. Lidhni njërën këmbë të kristalit me kunjin 9 në çipin ATmega, dhe këmbën tjetër në kunjin 10. Lidhni këmbët e njërit prej kondensatorëve të diskut 22 pF në pin 9 dhe GND, dhe kondensatorin tjetër të diskut në pin 10 dhe GND, si treguar në figurë.

Shënim: kondensatorët e diskut nuk janë të polarizuar dhe mund të futen në çdo mënyrë.

Vlen të përmendet, se gjatësia e telit midis kondensatorëve 22pF duhet të jetë e barabartë në gjatësi dhe duhet të jetë sa më afër kontrolluesit për të shmangur ndërveprimet me pjesët e tjera të qarqeve.

Hapi 6: Shtimi i LED në Pin 13

Shtimi i LED në Pin 13
Shtimi i LED në Pin 13
Shtimi i LED në Pin 13
Shtimi i LED në Pin 13
Shtimi i LED në Pin 13
Shtimi i LED në Pin 13

Tani do të shtojmë LED -in e gjelbër (kunja dixhitale 13 në Arduino).

Futni një këmbë të gjatë LED në rreshtin poshtë telit të kuq (në anën e djathtë të çipit - fuqia, ose 5 volt) dhe këmbën e shkurtër në rreshtin e parë të zbrazët nën mikrokontrolluesin.

Ky rezistencë 330 Ohm është i lidhur në seri me LED, duke kufizuar sasinë e energjisë elektrike që rrjedh për të parandaluar shkatërrimin e LED -ve.

Vendosni rezistencën midis këmbës së shkurtër të LED dhe rreshtit që përmban tela të zezë në anën e djathtë të çipit (GND ose 0Volt)

Të gjitha kunjat analoge, dixhitale dhe të tjera të disponueshme në tabelën normale Arduino janë gjithashtu të disponueshme në versionin tonë të bukës. Ju mund të përdorni tabelën skematike dhe pin të ATmega si referencë.

Hapi 7: Lidhësi USB në Serial

Lidhës USB me Serial
Lidhës USB me Serial
Lidhës USB me serial
Lidhës USB me serial
Lidhës USB me Serial
Lidhës USB me Serial
Lidhës USB me serial
Lidhës USB me serial

Mikrokontrolluesi ATmega 328P-PU siguron tre mënyra komunikimi: një seri të programueshme USART (marrës-transmetues sinkron dhe asinkron universal), një port serial SPI (Ndërfaqe Seriale Periferike) dhe një ndërfaqe serike me dy tela. USART merr byte të të dhënave dhe transmeton bitët individualë në mënyrë sekuenciale, gjë që kërkon linja komunikimi transmetuese (TX) dhe marrëse (RX). SPI përdor katër linja komunikimi: master-out slave-in (MOSI), master-in slave-out (MISO) dhe orë serike (SCK) me një linjë të veçantë të zgjedhjes së skllavit (SS) për secilën pajisje. Autobusi i komunikimit I2C Two Wire Interface (TWI) përdor dy linja sinjali: të dhëna serike (SDA) dhe orë serike (SCL).

Për të lidhur bordin tonë me PC me Arduino IDE për të shkarkuar një skicë, ne do të përdorim një ndërfaqe USB në seri UART siç është FT232R FTDI.

Kur blini një kabllo FTDI sigurohuni që është modeli 5 V, sepse modeli 3.3 V nuk do të funksionojë siç duhet. Ky kabllo (i treguar në figurë) ka një prizë USB në njërën anë dhe një prizë me gjashtë tela në anën tjetër.

Kur lidhni kabllon, sigurohuni që ana e prizës me tela të zezë të lidhet me kunjin GND në kunjat e kokës së bukës. Pasi të lidhet kablli, ai gjithashtu furnizon me energji qarkun, ashtu siç do të bënte një bord normal Arduino.

Pastaj ne do të lidhim FTDI-në tonë me bordin tonë Arduino të bërë vetë; për referencë mund të përdorni tabelën dhe skemën.

Një kondensator elektrolitik 0.1μF është i lidhur midis kunjit DTR (Data Terminal Ready) në USB në ndërfaqen serike UART dhe mikrokontrolluesit Reset, i cili rivendos mikrokontrolluesin për të sinkronizuar me USB në ndërfaqen serike.

SH NOTNIM: Njëra anë është se mikrokontrolluesi RX pin duhet të lidhet me TX të USB -së në përshtatësin Serial dhe e njëjta gjë me TX të njërës pajisje në RX të tjetrës.

Pina CTS (Clear to Send) në USB në ndërfaqen serike UART nuk është e lidhur me mikrokontrolluesin.

Për të shkarkuar një skicë te mikrokontrolluesi në Arduino IDE nga menyja Tools ➤ Port zgjidhni portën përkatëse të komunikimit (COM) dhe nga menyja Tools ➤ Board zgjidhni Arduino/Genuino Uno. Skica përpilohet në Arduino IDE dhe më pas ngarkohet në mikrokontrollues me USB në ndërfaqen serike UART. Kur skica është shkarkuar, dritat LED jeshile dhe të kuqe të ndërfaqes USB-serike UART TXD dhe RXD dridhen.

Ndërfaqja USB në serinë UART mund të hiqet dhe një furnizim me energji 5V të lidhet me mikrokontrolluesin. Një rezistencë LED dhe 220kΩ janë të lidhura me pinin e mikrokontrolluesit 19, ekuivalent me kunjin Arduino 13, për të drejtuar skicën e ndezjes.

Hapi 8: Ngarkimi i Skicës ose Instalimi i Bootloader

Ngarkimi i Sketch ose Instalimi i Bootloader
Ngarkimi i Sketch ose Instalimi i Bootloader
Ngarkimi i Sketch ose Instalimi i Bootloader
Ngarkimi i Sketch ose Instalimi i Bootloader

Nëse nuk keni një konvertues USB në serial-mund të përdorni një Arduino tjetër (në rastin tim Arduino UNO) për të ngarkuar një skicë ose ngarkues në bordin e bërë vetë.

Mikrokontrolluesit ATmega238P-PU kërkojnë një bootloader për ngarkimin dhe ekzekutimin e skicave nga Arduino IDE; kur fuqia aplikohet në mikrokontrollues, ngarkuesi i ngarkimit përcakton nëse një skicë e re po ngarkohet, dhe pastaj e ngarkon skicën në kujtesën e mikrokontrolluesit. Nëse keni ATmega328P-PU pa një bootloader, atëherë mund të ngarkoni bootloader duke përdorur komunikimin SPI midis dy bordeve.

Këtu është mënyra se si ngarkoni një bootloader në IC ATmega.

Së pari le të fillojmë me konfigurimin e Arduino UNO -s tonë si ISP, kjo bëhet sepse dëshironi që Arduino UNO të ngarkojë skicën në IC ATmega dhe jo në vetvete.

Hapi 1: Konfigurimi i Arduino UNO -s tonë si ISP

Mos e lidhni IC ATmega ndërsa ngarkimi i mëposhtëm po funksionon.

  • Lidheni arduino me një kompjuter
  • Hapni arduino IDE
  • Zgjidhni Bordin e duhur (Mjetet> Bordi> Arduino UNO) dhe Portin COM (Mjetet> Porti> COM?)
  • Hapni> Shembuj> ArduinoISP
  • Ngarko Skicë

Pas kësaj ju mund të lidhni Bordin tuaj me Arduino UNO duke ndjekur qarkun siç tregohet në skemë. Në këtë fazë nuk ka nevojë të furnizoni me energji bordin tuaj pasi Arduino do të siguronte fuqinë e nevojshme.

Hapi 2: Ngarkimi i një Sketch ose Bootloader

Me gjithçka të lidhur hapni IDE nga dosja që sapo keni krijuar (kopja).

  • Zgjidhni Arduino328 nga Tools> Board
  • Zgjidhni Arduino si ISP nga Tools> Programmer
  • Zgjidhni Burn Bootloader

Pas një djegieje të suksesshme, ju do të merrni një "Ngarkues të ngarkimit të përfunduar të djegur".

Ngarkuesi i ngarkimit tani është ngarkuar në mikrokontrollues, i cili është gati për të marrë një skicë pasi të keni ndryshuar portën COM në menunë Tools ➤ Port.

Recommended: