Modul 1: Keypad dan 7-Segment


SMART DOOR PADA BRANKAS MODERN

1. Pendahuluan [back]
 

perkembangan teknologi, khususnya di bidang keamanan rumah tangga. Seiring dengan kemajuan teknologi, kebutuhan akan keamanan rumah semakin meningkat, dan produsen berusaha menghadirkan solusi inovatif untuk memenuhi kebutuhan tersebut. Rumah bukan hanya tempat berteduh, tetapi juga tempat menyimpan barang berharga. Keamanan rumah menjadi pertimbangan utama bagi pemilik rumah.

  1. Perkembangan Teknologi Telekomunikasi: Teknologi telekomunikasi dapat dimanfaatkan untuk membangun sistem keamanan yang efektif. Transaksi online dan pengolahan data menjadi lebih cepat dan akurat.

  2. Otomasi dalam Keamanan: Otomasi dijelaskan sebagai teknologi yang menggunakan mekanisme, elektronik, dan sistem komputer untuk mengendalikan operasi. Kejahatan online dan kejahatan di dunia nyata menjadi fokus perhatian.

  3. Pentingnya Sistem Keamanan Otomatis: Sistem keamanan otomatis menjadi pilihan populer karena biayanya yang terjangkau dan kemampuan operasionalnya. Tingkat keamanan perlu ditingkatkan seiring dengan meningkatnya tingkat kejahatan.

  4. Peran Teknologi Elektronika dan Komunikasi: Kemajuan teknologi di bidang elektronika dan komunikasi memungkinkan pengembangan sistem kontrol robot yang dapat dikendalikan melalui smartphone.

  5. Internet of Things (IoT): IoT menjadi solusi untuk membangun sistem keamanan yang terhubung, dimana perangkat fisik terkoneksi dan bertukar informasi untuk memberikan manfaat pada infrastruktur.

  6. Inovasi dalam Sistem Pintu: Penggunaan kunci tradisional dianggap tidak efisien, dan solusi pintu pintar dengan teknologi seperti kartu RFID, sidik jari, Raspberry Pi, dan kode QR diusulkan untuk meningkatkan keamanan dan efisiensi.

  7. Rancangan Sistem IoT pada Smart Door Lock:

  8. bertujuan untuk merancang sistem IoT pada smart door lock untuk meningkatkan keamanan rumah.



2. Tujuan [back]
  1. Memahami prinsip dasar input dan output pada mikrokontroler.
  2. Mampu mengonfigurasi dan mengendalikan 7-segment sebagai output pada mikrokontroler.
  3. Mampu menangkap dan memproses input dari keypad.

3. Alat dan Bahan  [back]

Bahan

  • Seven Segment Common Cathode

  • ARDUIUNO (ARD 1)






  • Keypad 4 x 3

Touch sensor 

     

  • Sound Sensor

  • The range of operating voltage is 3.⅗ V
  • The operating current is 4~5 mA
  • The voltage gain 26 dB ((V=6V, f=1kHz)
  • The sensitivity of the microphone (1kHz) is 52 to 48 dB
  • The impedance of the microphone is 2.2k Ohm
  • The frequency of m microphone is16 to 20 kHz
  • The signal to noise ratio is 54 dB
  • Sensor magnet (magnetic reed switch)

 


Reed Switch adalah sensor yang berfungsi juga sebagai saklar yang aktif atau terhubung apabila di area jangkauan nya terdapat medan magnet.

Spesifikasi:       


           
            Konfigurasi pin:




                        1. VCC = 3.3V-5V
                        2. Gnd
                        3. Digital Output

              Grafik Respon: 


 

  • Sound Sensor




Spesifikasi
  •   Working voltage: DC 3.3-5V
  •   Dimensions: 45 x 17 x 9 mm
  •   Signal output indication
  •   Single channel signal output
  •   With the retaining bolt hole, convenient installation
  •   Outputs low level and the signal light when there is sound

  • Sensor Infrared 





 Komponen Output


  • LED-red dan LED-yellow

  • Motor DC

                Spesifikasi Motor DC




4. Dasar Teori [back]

  • Seven Segment Common Cathode
Seven segment adalah suatu segmen-segmen yang digunakan untuk menampilkan angka / bilangan decimal. Seven segmen ada 2 jenis, yaitu Common Anoda dan Common Katoda. 

LED Seven Segment Display Tipe Common Katoda
Common Cathode merupakan bergabung menjadi satu Pin, sedangkan penujang Anoda bisa menjadi Input untuk masing-masing Segmen LED.  Kaki Katoda yang terhubung menjadi 1 Pin ini merupakan Terminal Negatif (-) atau Ground sedangkan Signal Kendali (Control Signal) akan diberikan kepada masing-masing Kaki Anoda Segmen LED.LED Seven Segment Display Tipe Common Katoda.
Layar tujuh segmen ini seringkali digunakan pada jam digital, meteran elektronik, dan perangkat elektronik lainnya yang menampilkan informasi numerik. Layar tujuh segmen ini terdiri dari 7 buah LED yang membentuk angka 8 dan 1 LED untuk titik/DP. Angka yang ditampilkan di seven segmen ini dari 0-9. Cara kerja dari seven segmen disesuaikan dengan LED. LED merupakan komponen diode yang dapat memancarkan cahaya. kondisi dalam keadaan ON jika sisi anode mendapatkan sumber positif dari Vcc dan katode mendapatkan sumber negatif dari ground.



Tabel Pengaktifan Seven Segment Display
  • Keypad 4x3


    Keypad adalah bagian penting dari suatu perangkat elektronika yang membutuhkan interaksi manusia. Keypad berfungsi sebagai interface antara perangkat (mesin) elektronik dengan manusia atau dikenal dengan istilah HMI (Human Machine Interface). Matrix keypad 4×4 pada artikel ini merupakan salah satu contoh keypad yang dapat digunakan untuk berkomunikasi antara manusia dengan mikrokontroler. Matrix keypad 4×4 memiliki konstruksi atau susunan yang simple dan hemat dalam penggunaan port mikrokontroler. Konfigurasi keypad dengan susunan bentuk matrix ini bertujuan untuk penghematan port mikrokontroler karena jumlah key (tombol) yang dibutuhkan banyak pada suatu sistem dengan mikrokontroler. Konstruksi matrix keypad 4×4 untuk mikrokontroler dapat dibuat seperti pada gambar berikut. Konstruksi Matrix Keypad 4×4 Untuk Mikrokontroler Konstruksi matrix keypad 4×4 diatas cukup sederhana, yaitu terdiri dari 4 baris dan 4 kolom dengan keypad berupas saklar push buton yang diletakan disetiap persilangan kolom dan barisnya. Rangkaian matrix keypad diatas terdiri dari 16 saklar push buton dengan konfigurasi 4 baris dan 4 kolom. 8 line yang terdiri dari 4 baris dan 4 kolom tersebut dihubungkan dengan port mikrokontroler 8 bit. Sisi baris dari matrix keypad ditandai dengan nama Row1, Row2, Row3 dan Row4 kemudian sisi kolom ditandai dengan nama Col1, Col2, Col3 dan Col4. Sisi input atau output dari matrix keypad 4×4 ini tidak mengikat, dapat dikonfigurasikan kolom sebagi input dan baris sebagai output atau sebaliknya tergantung programernya. 


    Proses Scaning Matrix Keypad 4×4 Untuk Mikrokontroler Proses scaning untuk membaca penekanan tombol pada matrix keypad 4×4 untuk mikrokontroler diatas dilakukan secara bertahap kolom demi kolom dari kolom pertama sampai kolom ke 4 dan baris pertama hingga baris ke 4. Program untuk scaning matrix keypad 4×4 dapat bermacam-macam, tapi pada intinya sama. Misal kita asumsikan keypad aktif LOW (semua line kolom dan baris dipasang resistor pull-up) dan dihubungkan ke port mikrokontrolr dengan jalur kolom adalah jalur input dan jalur baris adalah jalur output maka proses scaning matrix keypad 4×4 diatas dapat dituliskan sebagai berikut

  • Sensor magnet


Spesifikasi:       


           
            Konfigurasi pin:




                        1. VCC = 3.3V-5V
                        2. Gnd
                        3. Digital Output

              Grafik Respon: 



Prinsip Sensor Magnet :

Sensor Magnet adalah berdasarkan Hukum Faraday dimana apabila sebuah penghantar memotong suatu medan magnet maka pada kedua ujung penghantar tersebut akan menimbulkan Gaya Gerak Listrik (GGL)) atau Electromagnetic Force (Emf). Besaran Emf tersebut  adalah tergantung kepada kuat medan magnet dan kecepatan pemotongan. Apabila Sensor tersebut menerima getaran maka batang magnet tersebut akan ikut bergetar dan medan magnet tersebut akan terpotong-potong oleh gulungan kawat sehingga kedua ujung gulungan kawat tersebut akan menimbulkan tegangan.           

 grafik sensor magnet

  •  Sensor touch

Touch Sensor atau Sensor Sentuh adalah sensor elektronik yang dapat mendeteksi sentuhan. Sensor Sentuh ini pada dasarnya beroperasi sebagai sakelar apabila disentuh, seperti sakelar pada lampu, layar sentuh ponsel dan lain sebagainya. Sensor Sentuh ini dikenal juga sebagai Sensor Taktil (Tactile Sensor). Seiring dengan perkembangan teknologi, sensor sentuh ini semakin banyak digunakan dan telah menggeser peranan sakelar mekanik pada perangkat-perangkat elektronik.

Berdasarkan fungsinya, Sensor Sentuh dapat dibedakan menjadi dua jenis utama yaitu Sensor Kapasitif dan Sensor Resistif. Sensor Kapasitif atau Capacitive Sensor bekerja dengan mengukur kapasitansi sedangkan sensor Resistif bekerja dengan mengukur tekanan yang diberikan pada permukaannya.

Sensor  Sentuh Kapasitif

Sensor sentuh Kapasitif merupakan sensor sentuh yang sangat populer pada saat ini, hal ini dikarenakan Sensor Kapasitif lebih kuat, tahan lama dan mudah digunakan serta harga yang relatif lebih murah dari sensor resistif. Ponsel-ponsel pintar saat ini telah banyak yang menggunakan teknologi ini karena juga menghasilkan respon yang lebih akurat.

Berbeda dengan Sensor Resistif yang menggunakan tekanan tertentu untuk merasakan perubahan pada permukaan layar, Sensor Kapasitif memanfaatkan sifat konduktif alami pada tubuh manusia untuk mendeteksi perubahan layar sentuhnya. Layar sentuh sensor kapasitif ini terbuat dari bahan konduktif (biasanya Indium Tin Oxide atau disingkat dengan ITO) yang dilapisi oleh kaca tipis dan hanya bisa disentuh oleh jari manusia atau stylus khusus ataupun sarung khusus yang memiliki sifat konduktif.

Pada saat jari menyentuh layar, akan terjadi perubahaan medan listrik pada layar sentuh tersebut dan kemudian di respon oleh processor untuk membaca pergerakan jari tangan tersebut. Jadi perlu diperhatikan bahwa sentuhan kita tidak akan di respon oleh layar sensor kapasitif ini apabila kita menggunakan bahan-bahan non-konduktif sebagai perantara jari tangan dan layar sentuh tersebut.

Sensor Sentuh Resistif

Tidak seperti sensor sentuh kapasitif, sensor sentuh resistif ini tidak tergantung pada sifat listrik yang terjadi pada konduktivitas pelat logam. Sensor Resistif bekerja dengan mengukur tekanan yang diberikan pada permukaannya. Karena tidak perlu mengukur perbedaan kapasitansi, sensor sentuh resistif ini dapat beroperasi pada bahan non-konduktif seperti pena, stylus atau jari di dalam sarung tangan.

 Sensor sentuh resistif terdiri dari dua lapisan konduktif yang dipisahkan oleh jarak atau celah yang sangat kecil. Dua lapisan konduktif (lapisan atas dan lapisan bawah) ini pada dasarnya terbuat dari sebuah film. Film-film umumnya dilapisi oleh Indium Tin Oxide yang merupakan konduktor listrik yang baik dan juga transparan (bening).

 Cara kerjanya hampir sama dengan sebuah sakelar, pada saat film lapisan atas mendapatkan tekanan tertentu baik dengan jari maupun stylus, maka film lapisan atas akan bersentuhan dengan film lapisan bawah sehingga menimbulkan aliran listrik pada titik koordinat tertentu layar tersebut dan memberikan signal ke prosesor untuk melakukan proses selanjutnya.

Grafik Respon Sensor Touch:

  • Sound Sensor

Modul sensor suara memberikan cara mudah untuk mendeteksi suara dan umumnya digunakan untuk mendeteksi intensitas suara. Modul ini dapat digunakan untuk keamanan, sakelar, dan pemantauan aplikasi. Akurasinya dapat dengan mudah disesuaikan untuk kenyamanan penggunaan. Ini menggunakan mikrofon yang memasok input ke amplifier, detektor puncak dan penyangga. 

  • The range of operating voltage is 3.⅗ V
  • The operating current is 4~5 mA
  • The voltage gain 26 dB ((V=6V, f=1kHz)
  • The sensitivity of the microphone (1kHz) is 52 to 48 dB
  • The impedance of the microphone is 2.2k Ohm
  • The frequency of m microphone is16 to 20 kHz
  • The signal to noise ratio is 54 dB

    Sensor Suara adalah sensor yang memiliki cara kerja merubah besaran suara menjadi besaran listrik. Pada dasarnya prinsip kerja pada alat ini hampir mirip dengan cara kerja sensor sentuh pada perangkat seperti telepon genggam, laptop, dan notebook. Sensor ini bekerja berdasarkan besar kecilnya kekuatan gelombang suara yang mengenai membran sensor yang menyebabkan bergeraknya membran sensor yang memiliki kumparan kecil dibalik membran tersebut naik dan turun. Kecepatan gerak kumparan tersebut menentukan kuat lemahnya gelombang listrik yang dihasilkannya.

Salah satu komponen yang termasuk dalam sensor ini adalah Microphone atau Mic. Mic adalah komponen eletronika dimana cara kerjanya yaitu membran yang digetarkan oleh gelombang suara akan menghasilkan sinyal listrik.

    Grafik respon

  •  Motor DC

Terdapat dua bagian utama pada sebuah Motor Listrik DC, yaitu Stator dan Rotor. Stator 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), ArmatureWinding (Kumparan Jangkar), Commutator (Komutator)dan Brushes (kuas/sikat arang).

Pada prinsipnya motor listrik DC menggunakan fenomena elektromagnet untuk bergerak, ketika arus listrik diberikan ke kumparan, permukaan kumparan yang bersifat utara akan bergerak menghadap ke magnet yang berkutub selatan dan kumparan yang bersifat selatan akan bergerak menghadap ke utara magnet. Saat ini, karena kutub utara kumparan bertemu dengan kutub selatan magnet ataupun kutub selatan kumparan bertemu dengan kutub utara magnet maka akan terjadi saling tarik menarik yang menyebabkan pergerakan kumparan berhenti

Untuk menggerakannya lagi, tepat pada saat kutub kumparan berhadapan dengan kutub magnet, arah arus pada kumparan dibalik. Dengan demikian, kutub utara kumparan akan berubah menjadi kutub selatan dan kutub selatannya akan berubah menjadi kutub utara. Pada saat perubahan kutub tersebut terjadi, kutub selatan kumparan akan berhadap dengan kutub selatan magnet dan kutub utara kumparan akan berhadapan dengan kutub utara magnet. Karena kutubnya sama, maka akan terjadi tolak menolak sehingga kumparan bergerak memutar hingga utara kumparan berhadapan dengan selatan magnet dan selatan kumparan berhadapan dengan utara magnet. Pada saat ini, arus yang mengalir ke kumparan dibalik lagi dan kumparan akan berputar lagi karena adanya perubahan kutub. Siklus ini akan berulang-ulang hingga arus listrik pada kumparan diputuskan.

  • RESISTOR


Resistor adalah komponen elektronika yang berfungsi untuk menghambat atau membatasi aliran listrik yang mengalir dalam suatu rangkaian elektronika. Satuan atau nilai resistansi suatu resistor disebut Ohm dilambangkan dengan simbol Omega (Ω).

Simbol Resistor :


Cara Menentukan Nilai Resistor :

·         Dengan Kode Warna :


·         Resistor dengan 4  cincin kode warna 

Maka cincin ke 1 dan ke 2 merupakan digit angka, dan cincin kode warna ke 3 merupakan faktor pengali kemudian cincin kode warnake 4 menunjukan nilai toleransi resistor.

·         Resistor dengan 5 cincin kode warna

Maka cincin ke 1, ke 2 dan ke 3 merupakan digit angka, dan cincin kode warna ke 4 merupakan faktor pengali kemudian cincin kode warna ke 5 menunjukan nilai toleransi resistor.

·         Resistor dengan 6 cincin warna

Resistor dengan 6 cicin warna pada prinsipnya sama dengan resistor dengan 5 cincin warna dalam menentukan nilai resistansinya. Cincin ke 6 menentukan coefisien temperatur yaitu temperatur maksimum yang diijinkan untuk resistor tersebut.

·         Dengan Kode Huruf Resistor 


Kode Huruf Untuk Nilai Resistansi :

o   R, berarti x1 (Ohm)

o   K, berarti x1000 (KOhm)

o   M, berarti x 1000000 (MOhm)

Kode Huruf Untuk Nilai Toleransi :

o   F, untuk toleransi 1%

o   G, untuk toleransi 2%J, untuk toleransi 5%

o   K, untuk toleransi 10%

o   M, untuk toleransi 20%

Rumus Menentukan Nilai Resitor :

o   Resistor Seri R(total) = R1+R2+ R(selanjut nya).

o   Resistor Paralel R(total) = 1/R(total) = 1/R1 + 1/R2 + 1/R(seterusnya).

  • LED (Light Emiting Diode)

LED adalah suaatu semikonduktor yang memancarkan cahaya,  LED mempunyai kecenderungan polarisasi. LED mempunyai kutub positif dan negatif (p-n) dan hanya akan menyala bila diberikan arus maju. Ini dikarenakan LED terbuat dari bahan semikonduktor yang hanya akan mengizinkan arus listrik mengalir ke satu arah dan tidak ke arah sebaliknya. Bila LED diberikan arus terbalik, hanya akan ada sedikit arus yang melewati  LED. Ini menyebabkan LED tidak akan mengeluarkan emisi cahaya.

  • Arduino

Arduino adalah kit elektronik atau papan rangkaian elektronik open source yang di dalamnya terdapat komponen utama yaitu sebuah chip mikrokontroler dengan jenis AVR dari perusahaan Atmel. Arduino yang kita gunakan dalam praktikum ini adalah Arduino Uno yang menggunakan chip AVR ATmega 328P. Dalam memprogram Arduino, kita bisa menggunakan komunikasi serial agar Arduino dapat berhubungan dengan komputer ataupun perangkat lain.

Adapun spesifikasi dari Arduino Uno ini adalah sebagai berikut :

 

Arduino Uno

Bagian-bagian arduino uno:

-Power USB

Digunakan untuk menghubungkan Papan Arduino dengan komputer lewat koneksi USB.

-Power jack

Supply atau sumber listrik untuk Arduino dengan tipe Jack. Input DC 5 - 12 V.

-Crystal Oscillator

Kristal ini digunakan sebagai layaknya detak jantung pada Arduino. Jumlah cetak menunjukkan             16000 atau 16000 kHz, atau 16 MHz.

-Reset

Digunakan untuk mengulang program Arduino dari awal atau Reset.

-Digital Pins I / O

Papan Arduino UNO memiliki 14 Digital Pin. Berfungsi untuk memberikan nilai logika ( 0 atau 1 ). Pin berlabel " ~ " adalah pin-pin PWM ( Pulse Width Modulation ) yang dapat digunakan untuk menghasilkan PWM.

-Analog Pins

Papan Arduino UNO memiliki 6 pin analog A0 sampai A5. Digunakan untuk membaca sinyal atau sensor analog seperti sensor jarak, suhu dsb, dan mengubahnya menjadi nilai digital.

-LED Power Indicator

Lampu ini akan menyala dan menandakan Papan Arduino mendapatkan supply listrik dengan baik.

Bagian - bagian pendukung:

-RAM

RAM (Random Access Memory) adalah tempat penyimpanan sementara pada komputer yang isinya dapat diakses dalam waktu yang tetap, tidak memperdulikan letak data tersebut dalam memori atau acak. Secara umum ada 2 jenis RAM yaitu SRAM (Static Random Acces Memory) dan DRAM (Dynamic Random Acces Memory).

-ROM

ROM (Read-only Memory) adalah perangkat keras pada computer yang dapat menyimpan data secara permanen tanpa harus memperhatikan adanya sumber listrik. ROM terdiri dari Mask ROM, PROM, EPROM, EEPROM.

Block Diagram Mikrokontroler ATMega 328P pada Arduino UNO

Adapun block diagram mikrokontroler ATMega 328P dapat dilihat pada gambar berikut:



Block diagram dapat digunakan untuk memudahkan / memahami bagaimana kinerja dari mikrokontroler ATMega 328P.

Pin-pin ATMega 328P:

            Rangkaian Mikrokontroler ATMega 328P pada Arduino UNO

5. Percobaan  [back]

   a.) Prosedur  [back]

  • Siapkan segala komponen yang di butuhkan
  • Susun rangkaian sesuai panduan
  • Input codingan arduino
  • Hidupkan rangkaian
  • Apabila tidak terjadi eror, maka rangkaian selesai dibuat.


b.) Hardware dan diagram blok [back]

  • Hardware 

  1. Arduino Uno
  2. 7 segment
  3. Sound Sensor
  4. LED
  5. Touch Sensor
  6. Magnetic Red sensor
  7. Jumper
  8. Keypad
  • Diagram Blok


c.) Rangkaian Simulasi dan Prinsip Kerja  [back]





  •     Prinsip Kerja 

KEYPAD and & 7 Segment,  sistem terdiri dari Arduino ,,7 segment dan keypad Matrix 4x3 yang merupakan Komponen utama sistem, kita akan menggunakan Arduino sebagai mikrokontroler disini Dari pengkodean di sini kita dapat melihat pin yang terhubung ke 7 segment
          
     Untuk menghubungkan Arduino dengan matriks keypad 4x3, memerlukan modul matriks keypad 4x3 yang kompatibel dengan Arduino, kabel, dan keypad. Bentuk antarmuka yang paling umum adalah matriks. Matriks ini terdiri dari pin input dan pin output. Pin input memiliki deretan tujuh output dan pin output memiliki kolom tiga output. Matriks akan memiliki total 54 output. Beginilah cara kerja matriks keypad.bagaimana antarmuka Arduino dengan tampilan 7 segmen dan matriks keypad 4x3antarmuka 7 segmen tampilan dengan Arduino uno

Prinsip kerja dari alat ini adalah, program Arduino menginstruksikan kepada 7 SEGMENT untuk menampilkan karakter. Program tidak akan lanjut jikalau password atau karakter yang diinputkan melalui keypad salah, jika password yang di masukkan benar (Pass : 1807), maka sensor magnetig reed akan mulai mendeteksi keberadaan manusia, maka lampu diruangan akan hidup , posisi sound diletakkan didepan pintu ketika suara terdekteksi maka pintu otomatis tidak terkunci dari luar,touch sensor mendekteksi keberadaan manusia sebelum memasukan pasword dismart dorrnya, selanjutnya Arduino mengistruksikan 7 segment untuk menampilkan angka yang  sudah ditekan dismart door . (keypad setelah penekanan 4 kali auto reset)

l            Program di atas adalah contoh kode dalam bahasa C++ yang menggunakan Arduino untuk mengontrol sebuah display 7-segment dan keypad. Program ini terdiri dari fungsi setup() dan loop(). Fungsi setup() digunakan untuk mengatur pin pada board Arduino, sedangkan fungsi loop() digunakan untuk menjalankan program secara berulang-ulang.

Pada fungsi setup(), pin dari 7-segment display dan keypad diatur sebagai output. Pin 7-13 diatur sebagai output untuk 7-segment display, pin 0-3 diatur sebagai output untuk keypad, dan pin 4-6 diatur sebagai output untuk keypad juga.

Pada fungsi loop(), terdapat empat fungsi yaitu r1()r2()r3(), dan r4(). Fungsi-fungsi tersebut digunakan untuk menampilkan angka pada 7-segment display. Setiap fungsi menampilkan angka pada satu baris pada 7-segment display. Fungsi r1() menampilkan angka pada baris pertama, r2() pada baris kedua, r3() pada baris ketiga, dan r4() pada baris keempat.

Pada setiap fungsi, terdapat perintah untuk mengatur pin pada keypad dan 7-segment display. Pada fungsi r1(), terdapat perintah untuk mengatur pin pada keypad dan menampilkan angka pada 7-segment display. Jika tombol pada kolom pertama ditekan, maka angka 1 akan ditampilkan pada 7-segment display. Jika tombol pada kolom kedua ditekan, maka angka 2 akan ditampilkan pada 7-segment display.

Pada setiap fungsi, terdapat perintah untuk mengatur pin pada keypad dan 7-segment display. Pada fungsi r2(), terdapat perintah untuk mengatur pin pada keypad dan menampilkan angka pada 7-segment display. Jika tombol pada kolom pertama ditekan, maka angka 1 akan ditampilkan pada 7-segment display. Jika tombol pada kolom kedua ditekan, maka angka 2 akan ditampilkan pada 7-segment display. Jika tombol pada kolom ketiga ditekan, maka angka 3 akan ditampilkan pada 7-segment display.
Pada fungsi r3(), terdapat perintah untuk mengatur pin pada keypad dan menampilkan angka pada 7-segment display. Jika tombol pada kolom pertama ditekan, maka angka 4 akan ditampilkan pada 7-segment display. Jika tombol pada kolom kedua ditekan, maka angka 5 akan ditampilkan pada 7-segment display. Jika tombol pada kolom ketiga ditekan, maka angka 6 akan ditampilkan pada 7-segment display.
Pada setiap fungsi, terdapat perintah untuk mengatur pin pada keypad dan 7-segment display. Pada fungsi r4(), terdapat perintah untuk mengatur pin pada keypad dan menampilkan angka pada 7-segment display. Jika tombol pada kolom pertama ditekan, maka angka 0 akan ditampilkan pada 7-segment display. Jika tombol pada kolom kedua ditekan, maka angka 1 sampai 6 akan ditampilkan pada 7-segment display. Jika tombol pada kolom ketiga ditekan, maka tidak ada angka yang ditampilkan pada 7-segment display.
Ini adalah bagian penanganan input. Jika tombol "# dan *" ditekan, angka pada kedua 7-segment akan direset.


d.) Flowchart dan Listing Program  [back]


Flowcharct 




  • LISTING PROGRAM
#include <Keypad.h>

// Define constants for pin numbers
#define TOUCH_PIN 13
#define SOUND_PIN 12
#define MAGNET_PIN 11
#define MOTOR_PIN 10
#define BUZZER_PIN 7

// Define other constants
#define DELAY_TIME 100

// Define variables
int count = 0;
char sandi[4];

// Define the array segPins and segCode
const int segPins[] = { /* your pin numbers here */ };
const byte segCode[][8] = { /* your segment code values here */ };

// Define the number of rows and columns for the keypad
const byte ROWS = 4;
const byte COLS = 3;

// Define the keys array for the keypad
char keys[ROWS][COLS] = {
  {'1','2','3'},
  {'4','5','6'},
  {'7','8','9'},
  {'*','0','#'}
};

// Define the row and column pins for the keypad
byte rowPins[ROWS] = {9, 8, 7, 6}; // adjust these pins accordingly
byte colPins[COLS] = {5, 4, 3};    // adjust these pins accordingly

// Create an instance of the Keypad class
Keypad keypad = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);

void displayDigit(int digit) {
  for (int i = 0; i < sizeof(segPins) / sizeof(segPins[0]); i++) {
    digitalWrite(segPins[i], segCode[digit][i]);
  }
}

void initializePins() {
  for (int i = 0; i < sizeof(segPins) / sizeof(segPins[0]); i++) {
    pinMode(segPins[i], OUTPUT);
  }
  pinMode(TOUCH_PIN, INPUT);
  pinMode(SOUND_PIN, INPUT);
  pinMode(MAGNET_PIN, INPUT);
  pinMode(MOTOR_PIN, OUTPUT);
  pinMode(BUZZER_PIN, OUTPUT);
}

void checkKeypad() {
  char key = keypad.getKey();
  sandi[count] = key;

  if (key != NO_KEY) {
    count++;
    if (count == 4) {
      if (sandi[0] == '1' && sandi[1] == '8' && sandi[2] == '0' && sandi[3] == '7') {
        if (digitalRead(TOUCH_PIN) == HIGH) {
          digitalWrite(MOTOR_PIN, HIGH);
          delay(500);
          count = 0;
        }
      } else {
        count = 0;
      }
    }
  }
}

void setup() {
  // Put your setup code here, if needed
  initializePins();
}

void loop() {
  // Your loop code here
  int soundState = digitalRead(SOUND_PIN);
  int touchState = digitalRead(TOUCH_PIN);
  int magnetState = digitalRead(MAGNET_PIN);

  if (magnetState == LOW) {
    digitalWrite(BUZZER_PIN, HIGH);
  } else {
    digitalWrite(BUZZER_PIN, LOW);
  }

  if (soundState == HIGH) {
    checkKeypad();
  } else {
    displayDigit(10);
  }

  // Add a delay here if needed
  delay(DELAY_TIME);
}


f.) Kondisi  [back]
Aplikasi menampilkan text (input: keypad (pilihan kalimat yang ditampilkan) dan sensor touch,sound,magnetig reed dan output:7 segment)

g.) Vidio Simulasi  [back]




 h.) Download File  [back] 

Komentar

Postingan populer dari blog ini