Aplikasi ESP 32 I2C

Kontrol Kemanan Pabrik





1. Pendahuluan
[Kembali]

Kontrol keamanan pabrik adalah serangkaian tindakan yang dirancang untuk melindungi aset pabrik dari berbagai ancaman, seperti pencurian, sabotase, dan serangan cyber. Penerapan kontrol keamanan pabrik yang efektif dapat memberikan manfaat yang signifikan bagi pabrik, yaitu: Melindungi aset pabrik dari kehilangan atau kerusakan, Menjaga kelancaran operasional pabrik, Meminimalkan risiko kerugian finansial dan lain - lain. Di era Industri 4.0, pabrik semakin mengandalkan teknologi digital untuk operasionalnya. Hal ini membuat pabrik menjadi lebih rentan terhadap serangan cyber. Oleh karena itu, kontrol keamanan siber menjadi semakin penting untuk diterapkan di pabrik. Penerapan kontrol keamanan pabrik yang efektif akan membantu pabrik untuk melindungi aset dan operasionalnya dari berbagai ancaman.


2. Tujuan [Kembali]
  1. Untuk menyelesaikan tugas mikrokontroler yang diberikan oleh Bapak Dr. Darwison, M.T.
  2. Mengetahui komponen yang digunakan dalam membuat rangkaian pada modul 1 yang menggunakan switch sebagai inputan dan 7-segment sebagai output atau keluaran.
  3. Mengetahui prinsip kerja dari rangkaian
3. Alat dan Bahan [Kembali]
Alat :

    1. Power Suply

spesifikasi :
Input voltage: 5V-12V
Output voltage: 5V
Output Current: MAX 3A
Output power:15W
conversion efficiency: 96%

    2. Voltmeter

    
    Bahan :

    1. Arduino



    Spesifikasi :

    2. Sensor Flame













Spesifikasi :

- Jangkauan spektrum : 760 - 1100 (nm)
- Sudut yang terdeteksi : 0° - 60°
- Catu Daya : 3,3V - 5,3V
- Temperatur Kerja : -25°C sampai 85°C
- Dimensi : 27,3 x 15,4 (mm)
    
    3. Sensor Vibration

Spesifikasi :
    -Vsuplai : DC 3.3V-5V
    -Arus : 15mA
    -Sensor : SW-420 Normally Closed
    -Output : digital
    -Dimensi : 3,8 cm x 1,3 cm x 0,7 cm
    -Berat : 10 g

    4. Sensor Gas Mq-3

Spesifikasi sensor pada sensor gas MQ-2 adalah sebagai berikut:
  1. Catu daya pemanas : 5V AC/DC
  2. Catu daya rangkaian : 5VDC
  3. Range pengukuran : 200 - 5000ppm untuk LPG, propane 300 - 5000ppm untuk butane 5000 - 20000ppm untuk methane 300 - 5000ppm untuk Hidrogen
  4.  Keluaran : analog (perubahan tegangan)


    5. LCD
    Spesifikasi :



    6. LED
    Spesifikasi :
  • Superior weather resistance
  • 5mm Round Standard Directivity
  • UV Resistant Eproxy
  • Forward Current (IF): 30mA
  • Forward Voltage (VF): 1.8V to 2.4V
  • Reverse Voltage: 5V
  • Operating Temperature: -30℃ to +85℃
  • Storage Temperature: -40℃ to +100℃
  • Luminous Intensity: 20mcd
    7. Ground

    Ground Berfungsi sebagai untuk meniadakan beda potensial dengan mengalirkan arus sisa dari kebocoran tegangan atau arus pada rangkaian

    8. Potensiometer
Spesifikasi :
  • Type: Rotary a.k.a Radio POT
  • Available in different resistance values like 500Ω, 1K, 2K, 5K, 10K, 22K, 47K, 50K, 100K, 220K, 470K, 500K, 1 M. 
  • Power Rating: 0.3W
  • Maximum Input Voltage: 200Vdc
  • Rotational Life: 2000K cycles

9. Switch 

Spesifikasi :

10. Kabel

General Reference Standards 
  • DIN VDE 0295, IEC 60228, BS 6360
  • DIN EN 50290‐2‐22, DIN VDE 0207‐363‐4‐1 
  • IEC 60227‐5, EN 50525‐2‐51, VDE 0281‐13
  • DIN VDE 0482‐332‐1‐2, DIN EN 60332‐1‐2, IEC 60332‐1‐2 
  • RoHS, REACH & CE Directives

    11. Motor

        

    12. Seven Segment

4. Dasar Teori [Kembali]

1. Arduino

Kontruksi 



Arduino adalah platform perangkat keras (hardware) yang dirancang untuk memudahkan pengembangan dan prototyping proyek-proyek elektronik. Ini terdiri dari papan sirkuit cetak berukuran kecil yang dilengkapi dengan mikrokontroler dan sejumlah pin input/output yang dapat digunakan untuk menghubungkan sensor, aktuator, dan komponen elektronik lainnya.

Mikrokontroler pada papan Arduino adalah otak utama yang mengontrol berbagai komponen yang terhubung dengannya. Papan Arduino biasanya dilengkapi dengan berbagai macam varian mikrokontroler dari berbagai produsen, seperti ATmega yang diproduksi oleh Microchip Technology. Meskipun demikian, Arduino lebih sering dikaitkan dengan platform open-source yang dikelola oleh Arduino.cc.

Arduino memiliki beberapa komponen utama yang membentuk papan sirkuit mikrokontroler. Berikut adalah penjelasan tentang komponen-komponen utama Arduino:

  1. Mikrokontroler: Ini adalah otak utama dari Arduino yang melakukan semua operasi pengolahan data dan kontrol. Arduino menggunakan mikrokontroler sebagai pusat kendali, yang berfungsi untuk membaca input, menjalankan kode program, dan mengontrol output. Beberapa varian Arduino menggunakan mikrokontroler dari berbagai produsen, seperti ATmega yang diproduksi oleh Microchip Technology.
  2. Pin I/O: Arduino memiliki sejumlah pin input/output (I/O) yang digunakan untuk menghubungkan sensor, aktuator, dan komponen lainnya. Pin ini bisa berfungsi sebagai input untuk membaca data dari sensor atau output untuk mengontrol aktuator. Ada pin digital dan pin analog. Pin digital dapat berupa input atau output dengan nilai logika 0 (LOW) atau 1 (HIGH), sementara pin analog digunakan untuk membaca nilai analog seperti sensor suhu atau cahaya.
  3. Papan Sirkuit: Papan Arduino adalah substrat fisik tempat semua komponen terhubung. Papan ini biasanya terbuat dari bahan tahan lama dan dilengkapi dengan jalur tembaga yang menghubungkan komponen-komponen elektronik.
  4. Konektor USB: Banyak varian Arduino dilengkapi dengan konektor USB. Ini memungkinkan Anda untuk menghubungkan papan Arduino ke komputer, sehingga Anda dapat mengunggah kode program ke mikrokontroler dan berkomunikasi dengan papan melalui koneksi serial.
  5. Catu Daya: Arduino memerlukan catu daya untuk beroperasi. Ini bisa berasal dari komputer melalui kabel USB atau dari sumber daya eksternal seperti baterai atau adaptor listrik. Beberapa papan Arduino memiliki regulator tegangan yang memungkinkan papan menerima berbagai tingkat tegangan masukan.
  6. Konektor Listrik: Arduino umumnya memiliki pin header atau konektor yang memungkinkan Anda untuk menghubungkan kabel atau kawat ke pin I/O. Ini memudahkan Anda dalam menghubungkan sensor, aktuator, dan komponen lainnya ke papan Arduino.
  7. Kristal Osilator: Kristal osilator digunakan untuk menghasilkan sinyal osilasi yang diperlukan oleh mikrokontroler untuk menjalankan perhitungan waktu dan operasi lainnya.
  8. Tombol Reset: Tombol reset memungkinkan Anda untuk mengulang proses booting papan Arduino atau menghentikan eksekusi program yang sedang berjalan.
  9. Indikator LED: Beberapa varian Arduino memiliki indikator LED yang terhubung ke pin tertentu. LED ini dapat diatur dalam kode program untuk memberi tahu status atau kondisi papan, seperti aktif atau dalam mode tidur.

Semua komponen ini bekerja bersama-sama untuk menciptakan platform Arduino yang kuat dan serbaguna untuk mengembangkan berbagai proyek elektronik dan pemrograman.


2. Sensor Flame

Salah satu detektor yang memiliki fungsi terpenting adalah detektor api atau yang biasa disebut dengan Flame Detector yang mampu mengaktifkan alarm bila mendeteksi adanya percikan api yang berisiko menyebabkan bencana kebakaran. Namun, saat memilih Flame Detector, pengguna diharuskan telah benar-benar paham atas prinsip dari alat detektor tersebut dan meninjaunya demi mendapatkan Flame Detector yang sesuai dengan aktivitas di dalam lokasi dan tingkat kebutuhannya, serta bagaimana konsekuensi risiko yang mungkin terjadi.
Prinsip Flame Detektor tersebut menggunakan metode optik yang bekerja seperti UV (ultraviolet) dan IR (infrared), pencitraan visual api, serta spektroskopi yang berfungsi untuk mengidentifikasi percikan api atau flame. Reaksi intens bahan yang memicu kebakaran dapat ditandai dari UV, terlihatnya emisi karbondioksida, dan radiasi dari infrared. Flame Detector juga mampu membedakan antara False Alarm atau peringatan palsu dengan api kebakaran sungguhan melalui komponen sistem yang dirancang dengan fungsi mendeteksi adanya penyerapan cahaya yang terjadi pada gelombang tertentu.
Tingkat potensi risiko kebakaran dari setiap jenis bahan semakin meluas mengingat semakin canggihnya teknologi penginderaan api atau teknologi Flame Sensing. Pada umumnya bahan bakar industri yang tergolong mudah terbakar antara lain: bensin, hidrogen, belerang, alkohol, LNG/LPG, minyak tanah, kertas, disel, kayu, jet bahan bakar, tekstil, ethylene, dan pelarut.

Gambar : Grafik Respon Flame Sensor


3. Sensor Vibration 



Vibration sensor / Sensor getaran ini memegang peranan penting dalam kegiatan pemantauan sinyal getaran karena terletak di sisi depan (front end) dari suatu proses pemantauan getaran mesin. Secara konseptual, sensor getaran berfungsi untuk mengubah besar sinyal getaran fisik menjadi sinyal getaran analog dalam besaran listrik dan pada umumnya berbentuk tegangan listrik. Pemakaian sensor getaran ini memungkinkan sinyal getaran tersebut diolah secara elektrik sehingga memudahkan dalam proses manipulasi sinyal, diantaranya:
   - Pembesaran sinyal getaran
   - Penyaringan sinyal getaran dari sinyal pengganggu.
   - Penguraian sinyal, dan lainnya.
Sensor getaran dipilih sesuai dengan jenis sinyal getaran yang akan dipantau. Karena itu, sensor getaran dapat dibedakan menjadi:
  - Sensor penyimpangan getaran (displacement transducer)
  - Sensor kecepatan getaran (velocity tranducer)
  - Sensor percepatam getaran (accelerometer).
Pemilihan sensor getaran untuk keperluan pemantauan sinyal getaran didasarkan atas pertimbangan berikut:
  - Jenis sinyal getaran
  -  Rentang frekuensi pengukuran
  -  Ukuran dan berat objek getaran.
  -  Sensitivitas sensor
Berdasarkan cara kerjanya sensor dapat dibedakan menjadi:
   - Sensor aktif, yakni sensor yang langsung menghasilkan tegangan listrik tanpa perlu catu daya
     (power supply) dari luar, misalnya Velocity Transducer.
   - Sensor pasif yakni sensor yang memerlukan catu daya dari luar agar dapat berkerja.
Grafik perbandingan frekuensi dengan sensitivitas sensor getaran :


  • 4. Sensor Gas mq3







    Sensor MQ-3 juga merupakan hasil produksi Hanwai Electronics. Material sensitif dari sensor gas ini terbuat dari bahan semikonduktor SnO2 yang memiliki konduktivitas lebih rendah ketika berada pada medium udara bersih. Ketika gas target terdeteksi (metan) konduktivitas sensor akan meningkat sebanding dengan peningkatan konsentrasi gas polutan. Sensor jenis ini adalah alat yang digunakan untuk mendeteksi konsentrasi gas yang mudah terbakar di udara serta asap dan output membaca sebagai tegangan analog. Sensor ini dapat langsung diatur sensitifitasnya dengan memutar trimpotnya. 
    Sensor ini biasa digunakan untuk mendeteksi kebocoran gas baik di rumah maupun di industri. Gas yang dapat dideteksi diantaranya : LPG, i-butane, propane, methane , alcohol, Hydrogen, smoke. Sensor ini sangat cocok di gunakan untuk alat emergensi sebagai deteksi gas-gas, seperti deteksi kebocoran gas, deteksi asap untuk pencegahan kebakaran dan lain lain.

    Grafik Respon Sensor MQ-2
    (Sumbu X : Konsentrasi, Sumbu Y : Resistansi)

5. LCD 

LCD (Liquid Crystal Display) adalah jenis tampilan visual yang menggunakan kristal cair untuk menghasilkan gambar. LCD bekerja berdasarkan sifat optis dari kristal cair yang dapat
dikendalikan untuk memblokir atau mengizinkan cahaya melalui mereka.Layar LCD terdiri dari sel-sel piksel yang dapat mengubah orientasi kristal cairnya untuk mengatur jumlah cahaya yang melewati setiap piksel.Banyak LCD memerlukan sumber cahaya belakang (backlight) untuk membuat gambar terlihat. Backlight dapat menggunakan lampu fluoresen atau lampu LED.


6. LED












    
    Light Emitting Diode atau sering disingkat dengan LED adalah komponen elektronika yang dapat memancarkan  cahaya monokromatik ketika diberikan tegangan maju. LED merupakan keluarga Dioda yang terbuat dari bahan semikonduktor. Warna-warna Cahaya yang dipancarkan oleh LED tergantung pada jenis bahan semikonduktor yang dipergunakannya. LED juga dapat memancarkan sinar inframerah yang tidak tampak oleh mata seperti yang sering kita jumpai pada Remote Control TV ataupun Remote Control perangkat elektronik lainnya. Bentuk LED mirip dengan sebuah bohlam (bola lampu) yang kecil dan dapat dipasangkan dengan mudah ke dalam berbagai perangkat elektronika. Berbeda dengan Lampu Pijar, LED tidak memerlukan pembakaran filamen sehingga tidak menimbulkan panas dalam menghasilkan cahaya.  Oleh karena itu, saat ini LED (Light Emitting Diode) yang bentuknya kecil telah banyak digunakan sebagai lampu penerang dalam LCD TV yang mengganti lampu tube. LED hanya akan memancarkan cahaya apabila dialiri tegangan maju (bias forward) dari Anoda menuju ke Katoda. 
Keanekaragaman Warna pada LED tersebut tergantung pada wavelength (panjang gelombang) dan senyawa semikonduktor yang dipergunakannya. Berikut ini adalah Tabel Senyawa Semikonduktor yang digunakan untuk menghasilkan variasi warna pada LED :

Bahan SemikonduktorWavelengthWarna
Gallium Arsenide (GaAs)850-940nmInfra Merah
Gallium Arsenide Phosphide (GaAsP)630-660nmMerah
Gallium Arsenide Phosphide (GaAsP)605-620nmJingga
Gallium Arsenide Phosphide Nitride (GaAsP:N)585-595nmKuning
Aluminium Gallium Phosphide (AlGaP)550-570nmHijau
Silicon Carbide (SiC)430-505nmBiru
Gallium Indium Nitride (GaInN)
7.  Motor DC












Motor Listrik DC atau DC Motor adalah suatu perangkat yang mengubah energi listrik menjadi energi kinetik atau gerakan (motion). Motor DC ini juga dapat disebut sebagai Motor Arus Searah. Seperti namanya, DC Motor memiliki dua terminal dan memerlukan tegangan arus searah atau DC (Direct Current) untuk dapat menggerakannya. Motor Listrik DC ini biasanya digunakan pada perangkat-perangkat Elektronik dan listrik yang menggunakan sumber listrik DC seperti Vibrator Ponsel, Kipas DC dan Bor Listrik DC. Motor Listrik DC atau DC Motor ini menghasilkan sejumlah putaran per menit atau biasanya dikenal dengan istilah RPM (Revolutions per minute) dan dapat dibuat berputar searah jarum jam maupun berlawanan arah jarum jam apabila polaritas listrik yang diberikan pada Motor DC tersebut dibalikan. 

Bentuk dan Simbol Motor DC

Pengertian Motor DC dan Prinsip Kerjanya

Prinsip Kerja Motor DC
Terdapat dua bagian utama pada sebuah Motor Listrik DC, yaitu Stator dan RotorStator adalah bagian motor yang tidak berputar, bagian yang statis ini terdiri dari rangka dan kumparan medan. Sedangkan Rotor adalah bagian yang berputar, bagian Rotor ini terdiri dari kumparan Jangkar. Dua bagian utama ini dapat dibagi lagi menjadi beberapa komponen penting yaitu diantaranya adalah Yoke (kerangka magnet), Poles (kutub motor), Field winding (kumparan medan magnet), Armature Winding (Kumparan Jangkar), Commutator (Komutator) dan Brushes (kuas/sikat arang).

8. 7 Segment Anoda








Seven segment merupakan bagian-bagian yang digunakan untuk menampilkan angka atau bilangan decimal. Seven segment tersebut terbagi menjadi 7 batang LED yang disusun membentuk angka 8 dengan menggunakan huruf a-f yang disebut DOT MATRIKS. Setiap segment ini terdiri dari 1 atau 2 LED (Light Emitting Dioda). Seven segment bisa menunjukan angka-angka desimal serta beberapa bentuk tertentu melalui gabungan aktif atau tidaknya LED penyususnan dalam seven segment.

Supaya memudahkan penggunaannnya biasanya memakai sebuah sebuah seven segment driver yang akan mengatur aktif atau tidaknya led-led dalam seven segment sesuai dengan inputan biner yang diberikan. Bentuk tampilan modern disusun sebagai metode 7 bagian atau dot matriks. Jenis tersebut sama dengan namanya, menggunakan sistem tujuh batang led yang dilapis membentuk angka 8 seperti yang ditunjukkan pada gambar di atas. Huruf yang dilihatkan dalam gambar itu ditetapkan untuk menandai bagian-bagian tersebut. 

Dengan menyalakan beberapa segmen yang sesuai, akan dapat diperagakan digit-digit dari 0 sampai 9, dan juga bentuk huruf A sampai F (dimodifikasi). Sinyal input dari switches tidak dapat langsung dikirimkan ke peraga 7 bagian, sehingga harus menggunakan decoder BCD (Binary Code Decimal) ke 7 segmen sebagai antar muka. Decoder tersebut terbentuk  dari pintu-pintu akal yang masukannya berbetuk digit BCD dan keluarannya berupa saluran-saluran untuk mengemudikan tampilan 7 segmen.

Tabel Pengaktifan Seven Segment

5. Percobaan [Kembali]
    a. Prosedur[Kembali]
  1. Download library yang diperlukan pada bagian download dalam blog.     
  2. Buka proteus yang sudah diinstal untuk membuat rangkaian.
  3. Tambahkan komponen seperti Arduino, sensor, dan perangkat lainnya lalu susun menjadi rangkaian.
  4. Buka Arduino IDE yang sudah diinstal.
  5. Di Arduino IDE, pergi ke menu "File" > "Preferences".Pastikan opsi
  6. "Show verbose during compile" dicentang untuk mendapatkan informasi detail saat kompilasi.
  7. Salin kode program Arduino pada blog kemudian tempelkan program tadi ke Arduino IDE.
  8. Kompilasikan kode dengan menekan tombol "Verify" di Arduino IDE.
  9. Cari dan salin path file HEX yang dihasilkan selama proses kompilasi.
  10. Kembali ke Proteus dan pilih Arduino yang telah Anda tambahkan di rangkaian.
  11. Buka opsi "Program File" dan tempelkan path HEX yang telah Anda salin dari Arduino IDE.
  12. Jalankan simulasi di Proteus.  
    b. Hardware[Kembali]
     Hardware :
  1. Arduino Uno
  2. 7 segment
  3. Infrared Sensor
  4. Vibration Sensor
  5. MQ-3 Sensor
  6. LED
  7. Jumper
  8. Keypad

     c. Rangkaian Simulasi dan Prinsip Kerja[Kembali] 

     Rangkaian Simulasi :


    Prinsip Kerja :

- Vibration Sensor:

              Saat vibration sensor berlogika 1, maka sensor akan aktif, lalu arus mengalir ke dip switch. Saat saklar dipswitch ke kanan, maka rangkaian tersebut akan terhubung dan saat dip swith ke kiri maka rangkaian akan terbuka. Kemudian arus akan mengalir ke pin 13 arduino. Pada arduino akan memproses kodingan sebagai berikut :

 

  if (digitalRead(inputPin13) == HIGH) {

    digitalWrite(outputPin7, HIGH);

    digitalWrite(outputPin2, HIGH);

  } else {

    digitalWrite(outputPin7, LOW);

    digitalWrite(outputPin2, LOW);

  }

 

      Output yang dihasilkan yaitu apabila saat vibration sensor berlogika 1 maka pin 7 dan pin 2 arduino akan berlogika 1. pin 7 terhubung dengan input pin A pada decoder 7448, sedangkan pada pin 2 arduino akan terhubung dengan resistor, kemudian ke transistorNPN 2N1711, tegangan pada kaki base transistor sebesar 0.78 V, sehingga kan mengaktifkan transistor. Sehingga akan ada arus mengalir dari sumber tegangan 12 V ke resistor kemudian ke kaki emiter, kemudian ke kaki ground. Arus juga mengalir secara paralel ke resistor kemudian ke LED, arus juga mengalir ke buzzer secara parallel, sehingga aka nmenghidupkan LEd dan juga buzzer tersebut

 

- Gas Sensor:

              Saat gas sensor berlogika 1, maka sensor akan aktif, lalu arus mengalir ke dip switch. Saat saklar dipswitch ke kanan, maka rangkaian tersebut akan terhubung dan saat dip swith ke kiri maka rangkaian akan terbuka. Kemudian arus akan mengalir ke pin 12 arduino. Pada arduino akan memproses kodingan sebagai berikut :

 

 if (digitalRead(inputPin12) == HIGH) {

    digitalWrite(outputPin6, HIGH);

    digitalWrite(outputPin1, HIGH);

  } else {

    digitalWrite(outputPin6, LOW);

    digitalWrite(outputPin1, LOW);

  }

 

      Output yang dihasilkan yaitu apabila saat gas sensor berlogika 1 maka pin 6 dan pin 1 arduino akan berlogika 1. pin 6 terhubung dengan input pin B pada decoder 7448, sedangkan pada pin 1 arduino akan terhubung dengan resistor, kemudian ke transistor NPN 2N1711, tegangan pada kaki base transistor sebesar 0.78 V, sehingga akan mengaktifkan transistor. Sehingga akan ada arus mengalir dari sumber tegangan 12 V ke resistor kemudian ke kaki emiter, kemudian ke kaki ground. Arus juga mengalir secara paralel ke resistor kemudian ke LED, arus juga mengalir ke buzzer secara parallel, sehingga akan menghidupkan LED dan juga buzzer tersebut

 

- Flame Sensor:

              Saat flame sensor berlogika 1, maka sensor akan aktif, lalu arus mengalir ke dip switch. Saat saklar dipswitch ke kanan, maka rangkaian tersebut akan terhubung dan saat dip swith ke kiri maka rangkaian akan terbuka. Kemudian arus akan mengalir ke pin 11 arduino. Pada arduino akan memproses kodingan sebagai berikut :

 

 if (digitalRead(inputPin11) == HIGH) {

    digitalWrite(outputPin5, HIGH);

    digitalWrite(outputPin0, HIGH);

  } else {

    digitalWrite(outputPin5, LOW);

    digitalWrite(outputPin0, LOW);

  }

 

      Output yang dihasilkan yaitu apabila saat gas sensor berlogika 1 maka pin 5 dan pin 0 arduino akan berlogika 1. pin 5 terhubung dengan input pin C pada decoder 7448, sedangkan pada pin 0 arduino akan terhubung dengan resistor, kemudian ke transistorNPN 2N1711, tegangan pada kaki base transistor sebesar 0.78 V, sehingga akan mengaktifkan transistor. Sehingga akan ada arus mengalir dari sumber tegangan 12 V ke resistor kemudian ke kaki emiter, kemudian ke kaki ground. Arus juga mengalir secara paralel ke resistor kemudian ke LED, arus juga mengalir ke motor secara parallel, sehingga akan menghidupkan LED dan juga motor tersebut.

 

- Decoder 7448 :
              Sebelumnya sudah dijelaskan untuk pin pin input pada decoder, selanjutnya, untuk seluruh pin output dihubungkan ke seven segment katoda. Untuk angka yang ditampilkan oleh seven segment mengikuti ketentuan sebagai berikut :

    d. Flowchart dan Listing Program[Kembali]

     Flowchart :

Program :

const int switchPins[] = {A0, A1, A2, A3};
const int decoderPins[] = {5, 4, 3, 2};

void setup() {
  // Set pin mode for dip switch pins
  for (int i = 0; i < 4; i++) {
    pinMode(switchPins[i], INPUT);
  }

  // Set pin mode for 7448 decoder pins
  for (int i = 0; i < 4; i++) {
    pinMode(decoderPins[i], OUTPUT);
  }

  // Initialize Serial communication
  Serial.begin(9600);
}

void loop() {
  // Read values from dip switch and display on 7448 decoder
  int switchValues = 0;

  for (int i = 0; i < 4; i++) {
    // Read the state of the switch
    int switchState = digitalRead(switchPins[i]);

    // Add the switch state to the switchValues variable
    switchValues |= (switchState << i);

    // Display the switch state on Serial Monitor
    Serial.print("Switch ");
    Serial.print(i);
    Serial.print(": ");
    Serial.println(switchState);
  }

  // Display the combined switch values on Serial Monitor
  Serial.print("Switch Values: ");
  Serial.println(switchValues);

  // Display the switch values on the 7448 decoder
  displayOn7448(switchValues);

  // Add a delay to make it readable
  delay(100);
}

void displayOn7448(int value) {
  // Convert the decimal value to binary
  for (int i = 0; i < 4; i++) {
    digitalWrite(decoderPins[i], (value & (1 << i)) >> i);
  }
}

    e. Video Simulasi[Kembali]

 

    f. Download File[Kembali]

Tidak ada komentar:

Posting Komentar

  BAHAN PRESENTASI MATA KULIAH ELEKTRONIKA Nama: Vigo Danovan Saputra NIM: 2110951023 kelas: Elektronika C Dosen Pengampu ; Darwison,M.T Ref...