İçindekiler:

Kendi Kendine Arduino Kartı: 8 Adım
Kendi Kendine Arduino Kartı: 8 Adım

Video: Kendi Kendine Arduino Kartı: 8 Adım

Video: Kendi Kendine Arduino Kartı: 8 Adım
Video: Arduino Kartı Yerine Sadece Mikrodenetleyiciyi Kullanmak 2024, Temmuz
Anonim
Kendi kendine yapılan Arduino Kurulu
Kendi kendine yapılan Arduino Kurulu

Kendi Arduino-Board'unuzu tasarlayarak, güç kaynağı, zamanlama devresi ve ATmega IC (Entegre Devre) kullanımı gibi bazı gelişmiş konular dahil olmak üzere bazı yeni bileşenler ve elektronik devreler hakkında bilgi edineceksiniz.

Hava durumu istasyonu, ev otomasyon kalkanları vb. gibi kendi projelerinizi yaratmada gelecekte size yardımcı olacaktır.

Kendi kendine yapılan Arduino'nun avantajı, düşük enerji tüketimine sahip olması ve bir projenin pille uzun süre çalışabilmesini sağlamasıdır.

Ek olarak, dijital veya analog port genişletme veya bazı iletişim modülleri ekleyerek kartı genişletebilirsiniz.

Gereçler

Donanım

Minimalist bir Arduino oluşturmak için aşağıdaki donanıma ihtiyacınız olacak:

Arduino önyükleyicili 1x ATmega328P-PU mikro denetleyici

1x 7805 lineer voltaj regülatörü (5v çıkış, 35v max giriş)

1x breadboard (830 pin board kullanıyorum)

Çeşitli bağlantı telleri

1x 16 MHz kristal osilatör

1x 28 pinli ic soketi

1x 1 μF, 25 V elektrolitik kapasitör

1x 100 μF, 25 V elektrolitik kapasitör

2x 22 pF, 50 V seramik kapasitörler

2x 100 nF, 50 V seramik kapasitörler

2x 330 Ohm dirençler (R1 ve R2)

1x 10 kOhm direnç (R3)

2 adet seçtiğiniz LED (LED1 ve LED2)

1x basma düğmesi

Opsiyonel 2x 6-pin başlık ve 3x 8-pin başlık

1x PP3 tipi pil bağlantısı

1x 9 V PP3 tipi pil

1x FTDI Programlama adaptörü

Adım 1: 7805 Lineer Voltaj Regülatörü

7805 Lineer Voltaj Regülatörü
7805 Lineer Voltaj Regülatörü
7805 Lineer Voltaj Regülatörü
7805 Lineer Voltaj Regülatörü
7805 Lineer Voltaj Regülatörü
7805 Lineer Voltaj Regülatörü

Doğrusal bir voltaj regülatörü, bir voltajı diğerine dönüştüren basit bir devre içerir. 7805 regülatörü, 7 ila 30 volt arasındaki bir voltajı, 1 amp'e kadar bir akımla sabit bir 5 volta dönüştürebilir, bu da Arduino kartımız için mükemmeldir.

TO-220 formunda 7805 voltaj regülatörü ve her biri 100 μF'lik iki kapasitör içeren güç kaynağı devresini oluşturmaya başlayacağız.

7805 yongasının ön tarafına baktığınızda - soldaki pin giriş voltajı içindir, merkez pin GND'ye bağlanır ve sağdaki pin 5 V çıkış bağlantısıdır. Bir soğutucu yerleştirmenizi tavsiye ederim, çünkü devre maksimum 1 amper akım çektiğinde 7805 yongası oldukça sıcak olacaktır (dokunduğunuzda parmak ucunuzu yakabilirsiniz).

Regülatörün IN ile toprak arasına 100 μF'lik bir kapasitör ve güç ile toprak arasındaki sağ raya 100 μF'lik bir kapasitör yerleştirin. Dikkatli olmalısınız - elektrolitik kondansatör polarizedir (kapasitör üzerindeki gümüş şerit topraklama ayağını gösterir) ve tam olarak şemaya göre yerleştirilmelidir.

Voltaj regülatörünüzün olacağı yere güç ve topraklama kabloları ekleyin, her bir rayı kartın ortasına ve sağ tarafına bağlayın. Bu sayede breadboard'un üst ve alt raylarından 5 Volt güç kaynağımız olur. Ek olarak, güç açıldığında yanan kırmızı bir LED ekleyeceğiz, bu şekilde kartımıza ne zaman güç verildiğini her zaman görebiliriz.

LED bir diyottur ve elektrik akımının yalnızca bir yönde akmasına izin verir. Elektrik uzun bacağa akmalı ve kısa bacaktan dışarı akmalıdır. LED'lerin katodunun ayrıca, LED'in kısa, negatif ayağına karşılık gelen hafifçe düzleştirilmiş bir tarafı vardır.

Devremiz 5 voltluk bir güç kaynağına sahiptir ve kırmızı bir LED 1,5 - 2 volt civarında derecelendirilmiştir. Voltajı azaltmak için, LED'in yok edilmesini önlemek için akan elektrik miktarını sınırlayan LED'e seri olarak direnci bağlamalıyız. Gerilimin bir kısmı direnç tarafından kullanılacak ve LED'e yalnızca uygun bir kısmı uygulanacaktır. Direnci, LED'in kısa ayağı ile çipin (GND) sağ tarafındaki siyah kabloyu içeren sıra arasına yerleştirin.

Voltaj regülatörünün solundaki kırmızı ve siyah kablolar güç kaynağınızın takılacağı yerdir. Kırmızı kablo GÜÇ ve siyah kablo toprak (GND) içindir.

NOT: Yalnızca 7-16V arasında bir güç kaynağı bağlayabilirsiniz. Daha düşük olursa, regülatörünüzden 5V alamazsınız ve 17 V'tan daha yüksek voltaj çipinize zarar verir. 9V pil, 9V DC güç kaynağı veya 12V DC güç kaynağı uygundur.

Ve bazı daha ileri devreler için ayarlanabilir voltajlı bir voltaj regülatörü yerleştirebilirsiniz. Bu şekilde karta 3,3 V sensör ekleyebilir veya 9 V DC motora güç verebilirsiniz.

Doğrusal voltaj regülatörleri hakkında daha fazlası -

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

Adım 2: ATmega328P-PU Mikrodenetleyici

ATmega328P-PU Mikrodenetleyici
ATmega328P-PU Mikrodenetleyici
ATmega328P-PU Mikrodenetleyici
ATmega328P-PU Mikrodenetleyici
ATmega328P-PU Mikrodenetleyici
ATmega328P-PU Mikrodenetleyici

Breadboard üzerinde bir Arduino inşa etmek için, kendi yapımımız olan Arduino kartımızın beyni olan bir ATmega328P-PU mikrodenetleyicisine ihtiyacınız var. Şemada gösterildiği gibi yerleştirin ve dikkatli olun - zorla girerseniz bacaklar kırılabilir veya 28 pin IC soketi kullanabilirsiniz. IC, devre tahtasının soluna yönlendirilmiş bir ay şeklinde kesilerek yerleştirilmelidir (pimler saat yönünün tersine 1'den 28'e kadar numaralandırılmıştır).

NOT: Tüm ATmega IC, Arduino önyükleyicisini (Arduino için yazılmış eskizleri yorumlamasını sağlayan yazılım) içermez. Kendi yaptığınız Arduino'nuz için bir mikrodenetleyici ararken, zaten önyükleyiciyi içeren birini seçtiğinizden emin olun.

İşte biraz mikrodenetleyici teorisi

Mikrodenetleyici, talimatları yürüten bir işlemciye sahip küçük bir bilgisayardır. Programımızdan (sketch) veri ve komutları tutmak için çeşitli bellek türlerine sahiptir; ATmega328P-PU'nun üç tür belleği vardır: eskizlerin saklandığı 32kB ISP (sistem içi programlama) flash bellek, uzun süreli veri depolama için 1kB EEPROM (elektrikle silinebilir programlanabilir salt okunur bellek) ve 2kB SRAM (statik rastgele erişimli bellek)) bir çizim çalışırken değişkenleri saklamak için.

NOT: Mikrodenetleyiciye giden güç kesildiğinde flash bellekteki ve EEPROM'daki verilerin korunduğunu bilmek önemlidir.

Mikrodenetleyicide 13 adet dijital genel amaçlı giriş/çıkış (GPIO) hattı ve bir pin üzerindeki voltajı dijital bir değere dönüştürmek için dijital dönüştürücü (ADC) GPIO hattına altı adet 10-bit (0 ile 1023 arasındaki değerler) analogu bulunur. Bir çizimde delay() işlevi veya darbe genişlik modülasyonu (PWM) tarafından kullanılan, 0 ile 255 arasında değerlere sahip iki adet 8 bitlik zamanlayıcıya ve 0 ile 65535 arasında değerlere sahip bir adet 16 bitlik zamanlayıcıya sahip üç zamanlayıcı vardır..

Yazılımla seçilebilen beş güç tasarrufu modu vardır ve mikrodenetleyici 1.8V ile 5.5V arasında çalışır. ATmega328P-PU'nun pin düzeni için resmi referans olarak kullanabilirsiniz.

Üç bağlantı noktası grubu vardır: sırasıyla 8, 7 ve 8 pimli PB, PC ve PD, artı iki toprak (GND) pimi, besleme gerilimli (AVCC) 5V pimli (VCC) ve analog referans gerilimli (AREF)) analogdan dijitale dönüştürücü (ADC) için pinler.

Adım 3: ATmega328P-PU Ara Bağlantısı

ATmega328P-PU Ara Bağlantısı
ATmega328P-PU Ara Bağlantısı

IC'yi yerleştirdikten sonra, ATmega'nın 7, 20 ve 21 numaralı pinlerini devre tahtasındaki pozitif güç rayına ve 8 ve 23 numaralı pinleri negatif güç raylarına bağlayın, devre kartının her iki tarafındaki pozitif ve GND güç raylarını bağlamak için köprü kabloları kullanın. tahta, şekilde gösterildiği gibi.

Pin 7 - Vcc - Dijital Besleme Gerilimi

Pim 8 - GND

Pim 22 - GND

Pin 21 - AREF - ADC için analog referans pini

Pin 20 - AVcc - ADC dönüştürücü için besleme voltajı. Örneğimizdeki gibi ADC kullanılmıyorsa güce bağlanması gerekir. Gelecekte kullanmak isterseniz, düşük geçişli bir filtreyle (gürültüyü azaltmak için) çalıştırılmalıdır.

Bundan sonra, on dört yollu bir başlık pimi yerleştirin - Arduino GPIO'larına benzer olacaktır.

Adım 4: Sıfırlama Düğmesi

Yeniden başlatma tuşu
Yeniden başlatma tuşu
Yeniden başlatma tuşu
Yeniden başlatma tuşu

Arduino'yu sıfırlayabilmeniz ve çipi yeni bir program yüklemek için hazırlayabilmeniz için küçük dokunsal anahtarı ekleyin. Bu anahtara hızlı bir anlık basış çipi sıfırlayacaktır.

Devremize şekilde görüldüğü gibi reset butonunu yerleştireceğiz, bastığımızda elektrik devresi 1kOhm'luk bir direnç atlanarak ve ATmega Pin 1'i GND'ye bağlayarak GND'ye kısaltılacaktır. Ardından anahtarın sol alt ayağından ATmega çipinin RESET pimine bir kablo ve anahtarın sol üst ayağından toprağa bir kablo ekleyin.

Ek olarak, normal çalışma sırasında çipin kendini sıfırlamasını önlemek için RESET pininden +5V'a 10 k Ohm pull-up direnci ekleyin. Bu direnç 5 voltluk güç kaynağına bağlanacak ve Pin 1 ila 5 volt 'yukarı çekilecektir'. Ve bir direnç olmadan Pin 1'i 0V'a bağladığınızda, çip yeniden başlatılacaktır. Yeniden başlatma mikrodenetleyicisinde, yüklenen yeni bir program arayın (güç açıldığında yeni bir şey gönderilmezse, gönderilen son programı çalıştırır).

Direnç dört renkli bir şeride sahiptir. Kahverengi=1, Siyah=0, Turuncu=3 okumak bize 103 sayısını verir. Ohm cinsinden direnç, 10.000 Ohm veya 10 kilo Ohm'dan sonra 3 sıfırla '10' ile başlar ve altın şerit toleranstır (%5)).

Devremizi yükseltmek için - 'dekuplaj' kondansatörü' yerleştirebiliriz. 100 nF (nano Farad) seramik kapasitör yerleştirin. '104 işaretli' iki telli küçük bir disktir ve bu tip kapasitör polarize değildir ve herhangi bir yöne yerleştirilebilir.

Bu "dekuplaj" kondansatörü elektrik artışlarını yumuşatır, böylece Pin 1'e gönderilen yeniden başlatma sinyali güvenilir bir şekilde algılanır. 104 rakamları, bilimsel gösterimde pico Farad'daki kapasitansını gösterir. Son rakam olan '4' bize kaç tane sıfır ekleyeceğimizi söyler. Kapasitans '10' ile başlar ve daha sonra 4 sıfır ile devam eder - 100.000 pico Farad ve 1000 pico Farad 1 nano Farad olduğundan, 100 nano Farad (104) vardır.

Kondansatörü çipin sol üst ayağı arasına yerleştirin (pim 1, yarım ay şeklinden saat yönünün tersine)

Adım 5: Kristal Osilatör

Kristal Osilatör
Kristal Osilatör
Kristal Osilatör
Kristal Osilatör

Şimdi IC için saati yapacağız. 16 Mhz kuvars ve her biri 22pF (piko Farad) olmak üzere iki seramik kapasitördür. Kristal osilatör, çok doğru bir frekansa sahip bir elektrik sinyali oluşturur. Bu durumda frekans 16 MHz'dir, yani mikrodenetleyici saniyede 16 milyon işlemci talimatını çalıştırabilir.

16 MHz kristali (şekil) Arduino'nun zamanı hesaplamasına izin verir ve kapasitörler besleme voltajını yumuşatmaya yarar.

Kuvars kristal ayakların ikisi de aynıdır - geriye doğru kablolama yapamazsınız. Kristalin bir bacağını ATmega çipi üzerindeki pim 9'a ve diğer bacağını pim 10'a bağlayın. 22 pF disk kapasitörlerinden birinin bacaklarını pim 9 ve GND'ye ve diğer disk kapasitörünü pim 10 ve GND'ye bağlayın. Şekilde gösterilmiştir.

Not: disk kapasitörler polarize değildir ve herhangi bir şekilde takılabilir.

22pF kapasitörler arasındaki kablo uzunluklarının eşit uzunlukta olması ve devrelerin diğer bölümleriyle etkileşimi önlemek için kontrolöre mümkün olduğunca yakın olması gerektiğini belirtmekte fayda var.

Adım 6: Pin 13'e LED Ekleme

Pin 13'e LED Ekleme
Pin 13'e LED Ekleme
Pin 13'e LED Ekleme
Pin 13'e LED Ekleme
Pin 13'e LED Ekleme
Pin 13'e LED Ekleme

Şimdi yeşil LED'i ekleyeceğiz (Arduino'daki dijital pin 13).

Kırmızı kablonun altındaki sıraya bir LED'in uzun ayağını (çipin sağ tarafında - güç veya 5 Volt) ve kısa ayağı mikrodenetleyicinin altındaki ilk boş sıraya yerleştirin.

Bu 330 Ohm'luk direnç, LED'lerin yok edilmesini önlemek için akan elektrik miktarını sınırlayarak LED'e seri olarak bağlanır.

Direnci, LED'in kısa ayağı ile çipin sağ tarafındaki siyah kabloyu içeren sıra arasına yerleştirin (GND veya 0 Volt)

Normal Arduino kartında bulunan tüm analog, dijital ve diğer pinler, breadboard versiyonumuzda da mevcuttur. ATmega şematik ve pin tablosunu referans olarak kullanabilirsiniz.

Adım 7: USB'den Seri Konektöre

USB'den Seri Bağlayıcıya
USB'den Seri Bağlayıcıya
USB'den Seri Bağlayıcıya
USB'den Seri Bağlayıcıya
USB'den Seri Bağlayıcıya
USB'den Seri Bağlayıcıya
USB'den Seri Bağlayıcıya
USB'den Seri Bağlayıcıya

ATmega 328P-PU mikrodenetleyici, üç iletişim modu sağlar: bir seri programlanabilir USART (evrensel senkron ve asenkron alıcı-verici), bir SPI (Seri Çevresel Arayüzü) seri bağlantı noktası ve iki telli seri arayüz. USART, baytlarca veri alır ve bireysel bitleri sırayla iletir, bu da iletim (TX) ve alma (RX) iletişim hatları gerektirir. SPI dört iletişim hattı kullanır: master-out slave-in (MOSI), master-in slave-out (MISO) ve her cihaz için ayrı bir bağımlı seçim (SS) hattı ile seri saat (SCK). I2C iletişimi İki Kablolu Arayüz (TWI) veri yolu iki sinyal hattı kullanır: seri veri (SDA) ve seri saat (SCL).

Bir taslağı indirmek için kartımızı Arduino IDE ile PC'ye bağlamak için, FT232R FTDI gibi bir USB'den seri UART arayüzüne kullanacağız.

Bir FTDI kablosu satın alırken 5 V model olduğundan emin olun, çünkü 3,3 V modeli düzgün çalışmayacaktır. Bu kablonun (şekilde gösterilmektedir) bir ucunda USB fişi ve diğer ucunda altı telli bir soket bulunur.

Kabloyu bağlarken, soketin siyah telli tarafının breadboard'un başlık pinlerindeki GND pinine bağlandığından emin olun. Kablo bağlandığında, tıpkı normal bir Arduino kartının yapacağı gibi devreye güç de sağlar.

Ardından FTDI'mızı kendi yapımımız olan Arduino kartımıza bağlayacağız; referans olarak tabloyu ve şemayı kullanabilirsiniz.

USB'den seri UART arayüzüne DTR (Veri Terminali Hazır) pini ile mikrodenetleyiciyi USB ile seri arayüze senkronize etmek için sıfırlayan mikrodenetleyici Sıfırlama arasına bir 0.1μF elektrolitik kapasitör bağlanır.

NOT: Oneclever kısmı, mikrodenetleyici RX pininin USB'nin TX'ine Seri adaptöre bağlanması ve bir cihazın TX ile diğerinin RX'ine bağlanması gerektiğidir.

USB'den seri UART arayüzüne giden CTS (Göndermeye Temizle) pini mikrodenetleyiciye bağlı değil.

Arduino IDE'deki mikrodenetleyiciye bir taslak indirmek için Araçlar ➤ Port menüsünden ilgili iletişim (COM) portunu seçin ve Araçlar ➤ Board menüsünden Arduino/Genuino Uno'yu seçin. Kroki Arduino IDE'de derlenir ve daha sonra USB'den seri UART arayüzüne mikrodenetleyiciye yüklenir. Çizim indirildiğinde, USB'den seriye UART arabirimi TXD ve RXD'nin yeşil ve kırmızı LED'leri titrer.

USB'den seri UART arabirimine çıkarılabilir ve mikrodenetleyiciye 5V'luk bir güç kaynağı bağlanabilir. Yanıp sönme taslağını çalıştırmak için mikrodenetleyici pin 19'a Arduino pin 13'e eşdeğer bir LED ve 220kΩ direnç bağlanır.

Adım 8: Sketch'i Yükleme veya Bootloader'ı Yükleme

Sketch'i Yükleme veya Bootloader'ı Yükleme
Sketch'i Yükleme veya Bootloader'ı Yükleme
Sketch'i Yükleme veya Bootloader'ı Yükleme
Sketch'i Yükleme veya Bootloader'ı Yükleme

Bir USB'den seriye dönüştürücünüz yoksa - kendi kendine yapılan panoya bir çizim veya önyükleyici yüklemek için başka bir Arduino (benim durumumda Arduino UNO) kullanabilirsiniz.

ATmega238P-PU mikro denetleyicileri, Arduino IDE'den eskizleri yüklemek ve çalıştırmak için bir önyükleyici gerektirir; mikrodenetleyiciye güç verildiğinde, önyükleyici yeni bir çizimin yüklenip yüklenmediğini belirler ve ardından çizimi mikrodenetleyici belleğine yükler. Önyükleyicisiz ATmega328P-PU'nuz varsa, iki kart arasındaki SPI iletişimini kullanarak önyükleyiciyi yükleyebilirsiniz.

ATmega IC'ye bir önyükleyiciyi nasıl yükleyeceğiniz aşağıda açıklanmıştır.

İlk önce Arduino UNO'muzu ISP olarak yapılandırarak başlayalım, bu, Arduino UNO'nun çizimi kendisine değil ATmega IC'ye yüklemesini istediğiniz için yapılır.

Adım 1: Arduino UNO'muzu ISP olarak yapılandırma

Aşağıdaki yükleme çalışırken ATmega IC'yi bağlamayın.

  • Arduino'yu bir PC'ye takın
  • arduino IDE'yi açın
  • Uygun Kartı (Araçlar > Kart > Arduino UNO) ve COM Bağlantı Noktasını (Araçlar > Bağlantı Noktası > COM?) seçin.
  • Aç > Örnekler > ArduinoISP
  • Çizim Yükle

Bundan sonra şematik olarak gösterilen devreyi takip ederek kendi Board'unuzu Arduino UNO'ya bağlayabilirsiniz. Arduino gerekli gücü sağlayacağı için bu aşamada kendi kartınıza güç sağlamanıza gerek yoktur.

2. Adım: Bir Çizim veya Önyükleyici Yükleme

Her şey bağlıyken, az önce oluşturduğunuz klasörden IDE'yi açın (kopya).

  • Araçlar > Pano'dan Arduino328'i seçin
  • Araçlar > Programcı'dan ISP olarak Arduino'yu seçin
  • Burn Bootloader'ı seçin

Başarılı bir yanmadan sonra bir "Bitti yanan önyükleyici" alırsınız.

Bootloader şimdi Araçlar ➤ Port menüsünde COM portunu değiştirdikten sonra bir çizim almaya hazır olan mikrodenetleyiciye yüklenmiştir.

Önerilen: