Raspberry Pi adalah papan berbasis prosesor arsitektur ARM yang dirancang untuk insinyur elektronik dan penghobi. PI adalah salah satu platform pengembangan proyek paling tepercaya saat ini. Dengan kecepatan prosesor yang lebih tinggi dan RAM 1 GB, PI dapat digunakan untuk banyak proyek profil tinggi seperti Pemrosesan gambar dan Internet of Things.
Untuk melakukan salah satu proyek profil tinggi, seseorang perlu memahami fungsi dasar PI. Kami akan membahas semua fungsi dasar Raspberry Pi dalam tutorial ini. Dalam setiap tutorial kita akan membahas salah satu fungsi PI. Pada akhir seri tutorial, Anda akan dapat melakukan proyek profil tinggi sendiri. Periksa ini untuk Memulai dengan Raspberry Pi dan Konfigurasi Raspberry Pi.
Kami telah membahas LED blinky dan antarmuka Tombol dengan Raspberry Pi di tutorial sebelumnya. Dalam tutorial PWM Raspberry Pi ini kita akan berbicara tentang mendapatkan keluaran PWM dengan Raspberry Pi. PWM adalah singkatan dari ' Pulse Width Modulation '. PWM adalah metode yang digunakan untuk mendapatkan tegangan variabel dari catu daya konstan. Kami akan menghasilkan sinyal PWM dari Raspberry PI dan mendemonstrasikan PWM dengan memvariasikan Kecerahan LED, terhubung ke Pi.
Modulasi Lebar Pulsa:
Kami sebelumnya telah berbicara tentang PWM berkali-kali di: Modulasi lebar pulsa dengan ATmega32, PWM dengan Arduino Uno, PWM dengan IC timer 555 dan PWM dengan Arduino Due.
Pada gambar di atas, jika sakelar ditutup terus menerus selama periode waktu tertentu, LED akan 'ON' selama ini terus menerus. Jika sakelar ditutup selama setengah detik dan dibuka untuk setengah detik berikutnya, maka LED hanya akan ON di paruh pertama kedua. Sekarang proporsi LED AKTIF selama total waktu disebut Siklus Tugas, dan dapat dihitung sebagai berikut:
Duty Cycle = Turn ON time / (Turn ON time + Turn OFF time)
Siklus Tugas = (0,5 / (0,5 + 0,5)) = 50%
Jadi tegangan keluaran rata-rata akan menjadi 50% dari tegangan baterai.
Ini adalah kasus selama satu detik dan kita dapat melihat LED menjadi OFF selama setengah detik dan LED ON pada setengah detik lainnya. Jika Frekuensi waktu ON dan OFF ditingkatkan dari '1 per detik' menjadi '50 per detik '. Mata manusia tidak dapat menangkap frekuensi ini. Untuk mata normal, LED akan terlihat bersinar dengan separuh kecerahan. Jadi dengan pengurangan waktu ON lebih lanjut, LED tampak jauh lebih ringan.
Kami akan memprogram PI untuk mendapatkan PWM dan menghubungkan LED untuk menunjukkan kerjanya.
Ada 40 pin keluaran GPIO di Raspberry Pi. Namun dari 40, hanya 26 pin GPIO (GPIO2 hingga GPIO27) yang dapat diprogram. Untuk mengetahui lebih lanjut tentang pin GPIO, melalui: LED Berkedip dengan Raspberry Pi
Komponen yang Dibutuhkan:
Di sini kami menggunakan Raspberry Pi 2 Model B dengan Raspbian Jessie OS. Semua persyaratan dasar Perangkat Keras dan Perangkat Lunak telah dibahas sebelumnya, Anda dapat mencarinya di Pengenalan Raspberry Pi, selain itu yang kami butuhkan:
- Menghubungkan pin
- 220Ω atau resistor 1KΩ
- LED
- Papan Roti
Penjelasan Sirkuit:
Seperti yang ditunjukkan pada diagram rangkaian, kita akan menghubungkan LED antara PIN35 (GPIO19) dan PIN39 (ground). Seperti yang dikatakan sebelumnya, kami tidak dapat menarik lebih dari 15mA dari salah satu pin ini, jadi untuk membatasi arus kami menghubungkan resistor 220Ω atau 1KΩ secara seri dengan LED.
Penjelasan Kerja:
Setelah semuanya terhubung, kita dapat MENGAKTIFKAN Raspberry Pi untuk menulis program di PYHTON dan menjalankannya.
Kami akan berbicara tentang beberapa perintah yang akan kami gunakan dalam program PYHTON.
Kami akan mengimpor file GPIO dari perpustakaan, fungsi di bawah ini memungkinkan kami untuk memprogram pin GPIO PI. Kami juga mengganti nama "GPIO" menjadi "IO", jadi dalam program kapan pun kami ingin merujuk ke pin GPIO, kami akan menggunakan kata 'IO'.
impor RPi.GPIO sebagai IO
Terkadang, ketika pin GPIO, yang kami coba gunakan, mungkin melakukan beberapa fungsi lain. Dalam hal ini, kami akan menerima peringatan saat menjalankan program. Perintah di bawah ini memberi tahu PI untuk mengabaikan peringatan dan melanjutkan program.
IO.setwarnings (Salah)
Kita dapat merujuk pin GPIO PI, baik dengan nomor pin di papan atau dengan nomor fungsinya. Dalam diagram pin, Anda dapat melihat 'PIN 35' di papan tulis adalah 'GPIO19'. Jadi kami beri tahu di sini apakah kami akan mewakili pin di sini dengan '35' atau '19'.
IO.setmode (IO.BCM)
Kami mengatur GPIO19 (atau PIN35) sebagai pin keluaran. Kami akan mendapatkan output PWM dari pin ini.
IO.setup (19, IO.IN)
Setelah mengatur pin sebagai output kita perlu mengatur pin sebagai pin keluaran PWM, p = IO.PWM (saluran keluaran, frekuensi sinyal PWM)
Perintah di atas adalah untuk mengatur saluran dan juga untuk mengatur frekuensi sinyal PWM. 'p' di sini adalah variabel itu bisa apa saja. Kami menggunakan GPIO19 sebagai saluran keluaran PWM. ' Frekuensi sinyal PWM ' telah dipilih 100, karena kami tidak ingin melihat LED berkedip.
Perintah di bawah ini digunakan untuk memulai pembangkitan sinyal PWM, ' DUTYCYCLE ' untuk mengatur rasio Turn On, 0 berarti LED akan ON selama 0% dari waktu, 30 berarti LED akan ON selama 30% dari waktu dan 100 berarti sepenuhnya ON.
p. mulai (TUGAS)
Perintah ini menjalankan loop 50 kali, x bertambah dari 0 menjadi 49.
untuk x dalam rentang (50):
Sedangkan 1: digunakan untuk infinity loop. Dengan perintah ini, pernyataan di dalam loop ini akan dijalankan terus menerus.
Dengan program yang dijalankan, duty cycle dari sinyal PWM meningkat. Dan kemudian menurun setelah mencapai 100%. Dengan LED terpasang pada PIN ini, kecerahan LED meningkat terlebih dahulu, kemudian menurun.