Tuesday, June 24, 2025

Flowing LED

 Raspberry Pi + LED Flow


Peralatan yang diperlukan :

  1. Komponen Raspberry Pi

  • Raspberry Pi

Berfungsi sebagai otak dari rangkaian serta memonitoring gerak rangkaian

  • Adaptor Raspberry Pi

Berfungsi sebagai pemasok daya untuk Raspberry Pi

       

  • Kabel VGA

Berfungsi untuk menampilkan layar pada monitor dari Raspberry Pi

 




  • Extend GPIO + Cable

Berfungsi sebagai penambah Pinout pada komponen Raspberry Pi


  1. Perangkat utama

  • Monitor

Berfungsi Sebagai tampilan visual untuk melakukan setup dan coding pada Raspberry Pi

 











  • Mouse

Berfungsi Sebagai komponen kendali untuk monitor


  • Keyboard

Berfungsi Sebagai komponen kendali untuk mengetik 


  1. Komponen elektronika

  • Breadboard

Berfungsi sebagai tempat dimana komponen diletakkan dan teraliri aliran listrik

 

  • Resistor 200 ohm

Berfungsi sebagai penghambat arus Listrik menuju LED untuk mencegah rusaknya komponen LED.

                                                       

  • Lampu LED

Berfungsi sebagai komponen indicator/output pada rangkaian

 

  • Kabel Male-male

Berfungsi untuk menghubungkan Pin dari Raspberry pada komponen



Langkah Langkah :

  1. Persiapkan peralatan yang diperlukan dan pahami gambar kerja yang akan dirangkai sebelum melakukan perakitan.                     

                                

  1. Lakukan perakitan dengan tahap tahap berikut ini

  • Pasang extend GPIO pada breadboard seperti di gambar, (Jangan hubungkan raspberry terlebih dahulu pada Listrik)

  • Hubungkan 3.3V pada kolom positif pada breadboard menggunakan kabel male-male

  • Setelah itu pasang komponen LED, resistor, Dan button pada breadboard seperti pada gambar

  • Hubungkan kutub positif breadboard pada kaki resistor 200 ohm

  • Lalu hubungkan kaki resistor 200 dengan kaki LED, dan kaki LED (negative) dihubungkan pada GPIO

LED_R1 terhubung di GPIO17 

LED_R2 terhubung di GPIO18

LED_G1 terhubung di GPIO27 

LED_G2 terhubung di GPIO22  

LED_Y1 terhubung di GPIO23  

LED_Y2 terhubung di GPIO24 

LED_W1 terhubung di GPIO25

LED_W2 terhubung di GPIO4



  • Setelah itu hubungkan kabel daya dan ground pada raspberry, digunakan untuk menyalakan kipas

  • Pasangkan kabel warna merah pada GPIO2 (5V) di breadboard 

  • Pasangkan Kabel warna hitam pada GPIO6 (GND) di breadboard

  • Lalu hubungkan raspberry pi pada monitor dengan menancapkan kabel HDMI pada raspberry ke VGA monitor menggunakan kabel HDMI to VGA

  • Setelah itu hubungkan raspberry pi pada Listrik menggunakan adaptor

  • Lalu lakukan setup waktu dan Bahasa pada awal login di raspberry lalu akan dialihkan pada laman desktop raspberry pi


  1. Setelah selesai melakukan tahap perakitan, lanjut pada tahap pemograman untuk membuat sistem kendali pada rangkaian komponen

  • Masuklah pada file explorer dan buatlah file baru dengan nama LED_Flow

  • Lalu masuklah pada file tersebut dan anda akan masuk pada text editor, tulislah program berikut di text editor tersebut

Berfungsi untuk header dan transfer pinout pada program

import RPi.GPIO as GPIO

import time


Berfungsi untuk mengatur Pinout pada lampu LED 

LedPin = [17,18,27,22,23,24,25,4]

Berfungsi untuk mencetak pesan pada output

def print_message():

    print ('*********************************')

    print ('|            flow leds          |')

    print ('|     ---------------------     |')

    print ('|   LED_R1 terhubung di GPIO17  |')

    print ('|   LED_R2 terhubung di GPIO18  |')

    print ('|   LED_G1 terhubung di GPIO27  |')

    print ('|   LED_G2 terhubung di GPIO22  |')

    print ('|   LED_Y1 terhubung di GPIO23  |')

    print ('|   LED_Y2 terhubung di GPIO24  |')

    print ('|   LED_W1 terhubung di GPIO25  |')

    print ('|   LED_W2 terhubung di GPIO4   |')

    print ('|        ----------------       |')

    print ('|                               |')

    print ('*******************************\n')

    print ('Program sedang berjalan...')

    print ('Tekan CTRL+C untuk mengakhiri program...')     pass    


Buatlah fungsi custom

def setup():

    GPIO.setwarnings(False)


Ubah mode GPIO ke BCM numbering

    GPIO.setmode(GPIO.BCM)


setting pinout LED pin dan setting nilai input pada 3.3V

    GPIO.setup(LedPin,GPIO.OUT,initial=GPIO.HIGH)


Buatlah fungsi main

def main():


 Mencetak pesan

    print_message()

    while True:

  print("***********************")

 print("       ----->>         ")

 print("  Dari kiri ke kanan!  ")

 print("***********************")

        for pin in LedPins:

            GPIO.output(pin,GPIO.LOW)

            time.sleep(0.2)

            GPIO.output(pin,GPIO.HIGH)

            Pass


print("***********************")

print("       <<-----         ")

print("  Dari kanan ke kiri!  ")

print("***********************")

        for pin in reversed(LedPins):

            GPIO.output(pin,GPIO.LOW)

            time.sleep(0.2)

            GPIO.output(pin,GPIO.HIGH)


Mendefinisikan fungsi destroy untuk membersihkan output 

def destroy():


LED dimatikan

    GPIO.output(LedPin, GPIO.HIGH)


Merilis sumber

    GPIO.cleanup()

    pass


Jika program dijalankan, lakukan :

if __name__ == '__main__':

    setup()

    try:

        main()


Ketika CTRL+C ditekan maka fungsi destroy akan tereksekusi 

    except KeyboardInterrupt:

        destroy()

Sebagai contoh program yang tertulis sebagai berikut 


  1. Setelah selesai menulis program tersebut simpan pada file explorer

  1. Lalu masuk ke file explorer dan klik kanan file dan masuk pada laman properties, dan ubahlah “open with” menggunakan thonny app

  1. Setelah menyimpan perubahan pada property, klik kiri file tersebut maka akan langsung masuk pada software compiler thonny app

  2. Lalu jalankan program tersebut dengan klik tombol Run

  1. Program akan mengeksekusi rangkaian melalui raspberry

Output dari program pada thonny :


Output dari rangkaian :

  • Dari kanan ke kiri






  • Dari kiri ke kanan



SELESAI


No comments:

Post a Comment