- Komponen Diperlukan untuk HAT Pemandu Motor Raspberry Pi
- IC Pemandu Motor L293D
- Litar Diagram untuk Pemandu Motor Raspberry Pi HAT
- Membuat PCB untuk Raspberry Pi Motor Driver HAT
- Memesan PCB dari PCBWay
- Berkumpul
- Persediaan Raspberry Pi
- Penjelasan Kod Pemandu Motor Raspberry Pi
- Menguji HAT Pemandu Motor Raspberry Pi
Raspberry Pi HAT adalah papan tambahan untuk Raspberry Pi dengan dimensi yang sama dengan Pi. Ia boleh langsung dipasang di bahagian atas Raspberry Pi dan tidak memerlukan sambungan lebih jauh. Terdapat banyak HAT Raspberry Pi yang terdapat di pasaran. Dalam tutorial ini, kita akan membina HAT Pemandu Motor Raspberry Pi untuk menggerakkan motor DC dan Stepper. Motor Driver HAT ini terdiri daripada IC pemandu motor L293D, Modul Paparan LCD 16 * 2, empat butang tekan, dan pin tambahan untuk Modul SIM800 dengan pengatur 3.3V. Raspberry Pi HAT ini akan berguna semasa membina projek robot.
Di sini, kami telah menggunakan PCBWay untuk menyediakan papan PCB untuk projek ini. Dalam bahagian artikel berikut, kami telah membahas prosedur lengkap untuk merancang, memesan, dan memasang papan PCB untuk Raspberry pi Motor Driver HAT. Kami juga telah membina Raspberry Pi Hat untuk LCD 16x2 dan Raspberry Pi LoRa HAT dalam projek kami sebelumnya.
Komponen Diperlukan untuk HAT Pemandu Motor Raspberry Pi
- Pai raspberi
- L293D IC
- 4 × Butang Tekan
- Perintang SMD (1 × 10K, 12 × 1K)
- Potensiometer 1 × 10K
- 4 × LED SMD
- Pengatur Voltan LM317
- 2 × Terminal Skru
- Modul LCD 16 * 2
IC Pemandu Motor L293D
L293D adalah IC Pemandu Motor 16-Pin yang popular. Seperti namanya, ia digunakan untuk mengendalikan motor unipolar, bipolar stepper, motor DC, atau bahkan servo motor. IC L293D tunggal boleh menggerakkan dua motor DC pada masa yang sama. Juga, kelajuan dan arah kedua motor ini dapat dikawal secara bebas. IC ini dilengkapi dengan dua pin input kuasa iaitu 'Vcc1' dan 'Vcc2'. Vcc1 digunakan untuk menghidupkan litar logik dalaman yang seharusnya 5V, dan pin Vcc2 adalah untuk menghidupkan motor yang dapat bervariasi 4,5V hingga 36V.
Spesifikasi L293D:
- Voltan motor Vcc2 (Vs): 4.5V hingga 36V
- Arus motor puncak maksimum: 1.2A
- Arus Motor Berterusan Maksimum: 600mA
- Voltan Bekalan ke Vcc1 (VSS): 4.5V hingga 7V
- Masa peralihan: 300ns (pada 5V dan 24V)
- Penutupan Thermal automatik disediakan
Litar Diagram untuk Pemandu Motor Raspberry Pi HAT
Gambarajah skematik lengkap untuk Pemandu Motor L293D dengan Raspberry Pi ditunjukkan dalam gambar yang diberikan di bawah. Skema dilukis menggunakan EasyEDA.
HAT ini terdiri daripada IC Pemacu Motor L293D, Modul Paparan LCD 16 * 2, dan empat butang tekan. Kami juga telah menyediakan pin untuk SIM800 Modul dengan pengatur 3.3V yang direka menggunakan pengatur ubah LM317 untuk projek masa depan. HAT Pemandu Motor Raspberry Pi secara langsung akan duduk di atas Raspberry Pi menjadikannya lebih mudah untuk mengawal Robot menggunakan Raspberry Pi.
Membuat PCB untuk Raspberry Pi Motor Driver HAT
Setelah skema selesai, kita dapat melanjutkan dengan meletakkan PCB. Anda boleh merancang PCB menggunakan perisian PCB pilihan anda. Kami telah menggunakan EasyEDA untuk membuat PCB untuk projek ini. Anda boleh melihat mana-mana Lapisan (Atas, Bawah, Topsilk, botol bawah, dll.) PCB dengan memilih lapisan dari tetingkap 'Lapisan'. Selain daripada itu, paparan model 3D mengenai PCB mengenai bagaimana ia akan muncul selepas fabrikasi juga disediakan. Berikut adalah paparan model 3D dari lapisan atas dan bawah Pi Motor Driver HAT PCB.
Susun atur PCB untuk litar di atas juga boleh dimuat turun sebagai Gerber dari pautan yang diberikan di bawah:
- Fail Gerber untuk HAT Pemandu Motor Raspberry Pi
Memesan PCB dari PCBWay
Setelah menyelesaikan reka bentuk, anda boleh terus memesan PCB:
Langkah 1: Masuk ke https://www.pcbway.com/, daftar jika ini pertama kali anda. Kemudian, pada tab Prototaip PCB, masukkan dimensi PCB anda, jumlah lapisan, dan jumlah PCB yang anda perlukan.
Langkah 2: Teruskan dengan mengklik butang 'Quote Now'. Anda akan dibawa ke halaman di mana untuk menetapkan beberapa parameter tambahan seperti jenis Papan, Lapisan, Bahan untuk PCB, Ketebalan, dan Banyak Lagi. Sebilangan besar daripadanya dipilih secara lalai, tetapi jika anda memilih parameter tertentu, anda boleh memilihnya di sini.
Langkah 3: Langkah terakhir adalah memuat naik fail Gerber dan meneruskan pembayaran. Untuk memastikan prosesnya lancar, PCBWAY mengesahkan apakah fail Gerber anda sah sebelum meneruskan pembayaran. Dengan cara ini, anda dapat memastikan bahawa PCB anda mesra fabrikasi dan akan menghubungi anda sebagai komited.
Berkumpul
Selepas beberapa hari, kami menerima PCB kami dalam pakej yang kemas dan kualiti PCB baik seperti biasa. Lapisan atas dan lapisan bawah papan ditunjukkan di bawah:
Setelah memastikan jejak dan jejak kaki betul. Saya meneruskan pemasangan PCB. Gambar di sini menunjukkan bagaimana papan yang dipateri sepenuhnya.
Persediaan Raspberry Pi
Sebelum memprogram Raspberry Pi, kita harus memasang perpustakaan yang diperlukan. Untuk itu, pertama, kemas kini Raspberry Pi OS menggunakan arahan di bawah:
Sudo apt-get kemas kini Sudo apt-get upgrade
Sekarang pasang pustaka Adafruit_CharLCD untuk modul LCD. Perpustakaan ini adalah untuk papan LCD Adafruit, tetapi juga berfungsi dengan papan LCD jenama lain.
sudo pip3 pasang Adafruit-CharLCD
Penjelasan Kod Pemandu Motor Raspberry Pi
Di sini, dalam projek ini, kami memprogramkan Raspberry Pi untuk menggerakkan dua motor DC dalam arah Maju, Mundur, Kiri, dan Kanan secara serentak dalam selang dua saat. Arah motor akan dipaparkan pada LCD. Kod lengkap diberikan di akhir dokumen. Di sini, kami menerangkan beberapa bahagian penting kod tersebut.
Seperti biasa, mulakan kod dengan mengimport semua perpustakaan yang diperlukan. Modul RPi.GPIO digunakan untuk mengakses pin GPIO menggunakan Python. Modul masa digunakan untuk menjeda program untuk masa yang telah ditetapkan.
import RPi.GPIO sebagai GPIO import time import board import Adafruit_CharLCD sebagai LCD
Selepas itu, tetapkan pin GPIO untuk paparan IC dan LCD pemacu motor L293D.
lcd_rs = 0 lcd_en = 5 lcd_d4 = 6 Motor1A = 4 Motor1B = 17 Motor1E = 12
Sekarang, tetapkan 6 pin motor sebagai pin output. Empat seterusnya adalah pin output yang mana dua yang pertama digunakan untuk mengawal motor kanan dan dua yang berikutnya untuk motor kiri. Dua pin seterusnya ialah Aktifkan pin untuk motor kanan dan kiri.
GPIO.setup (Motor1A, GPIO.OUT) GPIO.setup (Motor1B, GPIO.OUT) GPIO.setup (Motor1E, GPIO.OUT) GPIO.setup (Motor2A, GPIO.OUT) GPIO.setup (Motor2B, GPIO.OUT) GPIO.setup (Motor2E, GPIO.OUT)
Di dalam gelung sementara, gerakkan dua motor DC dalam arah Maju, Mundur, Kiri, dan Kanan secara serentak dalam selang dua saat.
GPIO.output (Motor1A, 0) GPIO.output (Motor1B, 0) GPIO.output (Motor2A, 1) GPIO.output (Motor2B, 0) lcd.message ('Left') print ("Left") sleep (2) #Forward GPIO.output (Motor1A, 1) GPIO.output (Motor1B, 0) GPIO.output (Motor2A, 1) GPIO.output (Motor2B, 0) lcd.message ('Forward') print ("Forward")…… ………………………………
Menguji HAT Pemandu Motor Raspberry Pi
Setelah selesai memasang PCB, pasang HAT pemandu motor di Raspberry Pi, dan lancarkan kodnya. Sekiranya semuanya berjalan lancar, Motor DC yang disambungkan ke Raspberry Pi akan bergerak ke arah Kiri, Depan, Kanan, dan Balik secara serentak setiap dua saat dan arah motor akan dipaparkan pada Paparan LCD.
Ini adalah bagaimana anda boleh membina HAT Pemandu Motor L293D Raspberry Pi anda sendiri. Kod lengkap dan video kerja projek diberikan di bawah. Mudah-mudahan anda menikmati projek ini dan menjadikannya menarik untuk membina sendiri. Sekiranya anda mempunyai pertanyaan, sila tinggalkan di bahagian komen di bawah.