İçindekiler:
- Adım 1: Sensör (Göz) QTR 8RC
- Adım 2: Mikrodenetleyici (Beyin) Atmega328P
- Adım 3: Motor ve Motor Sürücüsü
- Adım 4: Kasa ve Çeşitli
Video: PID Çizgi Takipçisi Atmega328P: 4 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:17
GİRİŞ
Bu talimat, beyninin (Atmega328P) içinde çalışan PID (oransal-integral-türev) Kontrolü (Matematiksel) ile verimli ve güvenilir bir Çizgi Takipçisi yapmakla ilgilidir.
Çizgi takipçisi, beyaz alanda siyah çizgiyi veya siyah alanda beyaz çizgiyi takip eden otonom bir robottur. Robot belirli bir çizgiyi algılayabilmeli ve onu takip edebilmeli.
Bu yüzden bir HAT TAKİPÇİSİ yapmak için birkaç parça/adım olacak, hepsini adım adım tartışacağım.
- Sensör (Çizgiyi görmek için göz)
- Mikrodenetleyici (Bazı hesaplamaları yapmak için beyin)
- Motorlar (Kas Gücü)
- Motor sürücüsü
- şasi
- Pil (Enerji Kaynağı)
- Teker
- Çeşitli
İŞTE HAT TAKİPÇİ'NİN VİDEOSU
SONRAKİ ADIMLARDA HER BİLEŞEN HAKKINDA DETAYLI OLARAK GÖRÜŞECEĞİM
Adım 1: Sensör (Göz) QTR 8RC
Bu harika sensörü ürettiği için Pololu'ya teşekkürler.
Modül, 0,375 (9,525 mm) aralıklarla eşit aralıklarla yerleştirilmiş sekiz IR verici ve alıcı (fototransistör) çifti için uygun bir taşıyıcıdır. Sensör kullanmak için önce OUT pini. Daha sonra, harici olarak sağlanan voltajı çekerek yansımayı okuyabilirsiniz ve entegre fototransistör nedeniyle çıkış voltajının ne kadar sürede azalması gerektiğini zamanlayabilirsiniz. Daha kısa bozulma süresi, daha fazla yansımanın bir göstergesidir. Bu ölçüm yaklaşımının birçok avantajı vardır, özellikle QTR-8RC modülünün LED gücünü kapatma özelliğiyle birleştiğinde:
- Analogdan dijitale dönüştürücü (ADC) gerekmez.
- Voltaj bölücü analog çıkışı üzerinde geliştirilmiş hassasiyet.
- Çoğu mikrodenetleyici ile birden fazla sensörün paralel olarak okunması mümkündür.
- Paralel okuma, LED güç etkinleştirme seçeneğinin optimize kullanımına izin verir
Özellikler
- Boyutlar: 2,95" x 0,5" x 0,125" (başlık pimleri takılı olmadan)
- Çalışma voltajı: 3.3-5.0 V
- Besleme akımı: 100 mA
- Çıkış formatı: Zamanlanmış yüksek darbe olarak okunabilen 8 dijital G/Ç uyumlu sinyal
- Optimum algılama mesafesi: 0,125" (3 mm)Önerilen maksimum algılama mesafesi: 0,375" (9,5 mm)
- Başlık pimleri olmadan ağırlık: 0,11 oz (3,09 g)
QTR-8RC Çıkışlarının Dijital G/Ç Hatlarına Arayüz Oluşturulması
QTR-8RC modülü, Paralaks QTI gibi, çıkış hattını yükseğe sürebilen ve ardından çıkış voltajının düşme süresini ölçebilen bir dijital G/Ç hattı gerektiren sekiz özdeş sensör çıkışına sahiptir. Bir sensörü okumak için tipik sıra şudur:
- IR LED'lerini açın (isteğe bağlı).
- G/Ç hattını bir çıkışa ayarlayın ve yüksek sürün.
- Sensör çıkışının yükselmesi için en az 10 μs bekleyin.
- G/Ç hattını bir giriş yapın (yüksek empedans).
- G/Ç hattının düşmesini bekleyerek voltajın düşme süresini ölçün.
- IR LED'lerini kapatın (isteğe bağlı).
Bu adımlar tipik olarak birden çok G/Ç hattında paralel olarak yürütülebilir.
Güçlü bir yansıma ile, bozunma süresi birkaç düzine mikrosaniye kadar düşük olabilir; yansıma olmadan, bozunma süresi birkaç milisaniyeye kadar çıkabilir. Bozulmanın tam zamanı, mikrodenetleyicinizin G/Ç hattı özelliklerine bağlıdır. Tipik durumlarda 1 ms içinde anlamlı sonuçlar elde edilebilir (yani, düşük yansıtmalı senaryolarda küçük farklılıkları ölçmeye çalışmadığında), tüm 8 sensörün 1 kHz'e kadar örneklenmesine izin verir. Düşük frekanslı örnekleme yeterliyse, LED'ler kapatılarak önemli ölçüde güç tasarrufu sağlanabilir. Örneğin, 100 Hz'lik bir örnekleme hızı kabul edilebilirse, LED'ler zamanın %90'ında kapalı olabilir ve ortalama akım tüketimini 100 mA'dan 10 mA'ya düşürür.
Adım 2: Mikrodenetleyici (Beyin) Atmega328P
Bu Müthiş Mikrodenetleyici AKA Atmega328'i Üretmek İçin Atmel Corporation'a teşekkürler.
ATmega328P için temel parametreler
Parametre değeri
- Flaş (Kbayt): 32 Kbayt
- Pin Sayısı: 32
- Maks. Çalışma Frekansı (MHz): 20MHz
- CPU: 8 bit AVR
- Maks G/Ç Pinleri: 23
- Harici Kesintiler: 24
- SPI: 2
- TWI (I2C): 1
- UART: 1
- ADC kanalları: 8
- ADC Çözünürlüğü (bit): 10
- SRAM (Kbayt): 2
- EEPROM (Bayt): 1024
- G/Ç Tedarik Sınıfı: 1.8 - 5.5
- Çalışma Gerilimi (Vcc):1.8 - 5.5
- Zamanlayıcılar: 3
Ayrıntılı Bilgi için Atmega328P Veri Sayfasına bakın.
Bu projede Birkaç Sebep için Atmega328P kullanıyorum
- Ucuz
- Hesaplama için yeterli RAM'e sahip
- Bu Proje için Yeterli G/Ç Pinleri
- Atmega328P Arduino'da kullanılıyor…. Resim ve Videoda bir Arduino Uno olduğunu fark edebilirsiniz, ancak daha gece Arduino IDE veya Herhangi Bir Arduino kullanıyorum.. Arayüz kartı olarak sadece donanımı kullandım. Önyükleyiciyi sildim ve çipi Programlamak için USB ASP kullandım.
Chip'i Programlamak için Atmel Studio 6 kullandım
Tüm KAYNAK KODU GitHub'dadır İndirin ve test.c dosyasını kontrol edin.
Bu paketi derlemek için POLOLU AVR KÜTÜPHANE KURULUMU'nu indirip yüklemeniz gerekmektedir Ekleri Kontrol Edin…
Ayrıca bir Atmega328P Geliştirme Kartı Şeması ve Kart Dosyası YÜKLÜYORUM… Kendiniz Yapabilirsiniz…
Adım 3: Motor ve Motor Sürücüsü
Aktüatör olarak 350RPM 12V BO Tipi Redüktörlü DC motor kullandım. Daha fazla bilgi için… MOTOR LINK
Bir motor sürücüsü olarak L293D H-bridge IC kullandım.
Bunun için Şematik ve Pano Dosyasını ekliyorum.
Adım 4: Kasa ve Çeşitli
Bot, 6mm Kalınlığında Kontrplak Ahşaptan yapılmıştır.
Önerilen:
Tinkercad'de Çizgi Takipçisi: 3 Adım
Tinkercad'de Çizgi Takipçisi: A-Line Follower Robot, adından da anlaşılacağı gibi, zemine veya tavana gömülü görsel bir çizgiyi takip eden, otomatik yönlendirmeli bir araçtır. Genellikle görsel çizgi, çizgi izleyen robotun gittiği yoldur ve bir anda siyah bir çizgi olacaktır
Arduino Kullanan Basit Çizgi Takipçisi: 5 Adım
Arduino Kullanan Basit Çizgi İzleyici: Arduino Çizgi İzleyen Robot Bu dersimizde, beyaz arka planda siyah bir çizgiyi takip edecek ve yolundaki eğrilere ulaştığında doğru dönüşü yapacak bir Arduino çizgi izleyen robotun çalışmasını tartışacağız. Arduino Hat Takipçisi Co
Bölüm 3: GPIO: ARM Montajı: Çizgi Takipçisi: TI-RSLK: 6 Adım
Bölüm 3: GPIO: ARM Montajı: Çizgi Takipçisi: TI-RSLK: Merhaba. Bu, ARM derlemesini kullanmaya devam ettiğimiz bir sonraki taksittir (daha yüksek seviyeli bir dil yerine). Bu Eğitilebilir Yazının ilham kaynağı, Texas Instruments Robotics System Learning Kit'in Lab 6'sı veya TI-RSLK'dır. Mikrofonu kullanacağız
GoPiGo3 Çizgi Takipçisi: 8 Adım
GoPiGo3 Çizgi Takipçisi: Bu eğitimde, bir çizgi takipçisi alıyoruz ve onu siyah bir çizgiyi takip etmesi için GoPiGo3'te kullanıyoruz
Python Kullanan GiggleBot Çizgi Takipçisi: 5 Adım
GiggleBot Çizgi Takipçisi Python Kullanarak: Bu sefer MicroPython'da Dexter Industries GiggleBot'u yerleşik çizgi takipçi sensörünü kullanarak siyah bir çizgiyi takip edecek şekilde programlıyoruz. GiggleBot'un bir BBC micro:bit ile eşleştirilmesi gerekiyor. uygun şekilde kontrol edilmelidir. Eğer