Kamis, 13 Juni 2024

MODUL 4

 


[KEMBALI KE MENU SEBELUMNYA]

DAFTAR ISI

    1. Pendahuluan
    2. Tujuan
    3. Alat dan Bahan
    4. Dasar Teori
    5. Percobaan
Percobaan ... 
  1. Prosedur
  2. Hardware
  3. Rangkaian Simulasi dan Prinsip Kerja
  4. Flowchar dan Listing Program
  5. Video Simulasi
  6. Download File

    1. Pendahuluan [Kembali]

    Ruang belajar yang nyaman dan kondusif merupakan salah satu faktor penting dalam mendukung proses belajar mengajar. Kenyamanan ini bisa dipengaruhi oleh berbagai faktor seperti suhu ruangan, kualitas udara, serta pencahayaan. Di era teknologi saat ini, berbagai metode dan teknologi terus dikembangkan untuk menciptakan lingkungan belajar yang optimal. Salah satu metode yang mulai banyak digunakan adalah sistem kamar belajar pintar atau SmartSense: Ruang belajar cerdas

    SmartSense: Ruang belajar cerdas didefinisikan sebagai ruangan yang dilengkapi dengan teknologi otomatisasi untuk mengatur kondisi lingkungan secara optimal. Dengan penggunaan teknologi ini, berbagai aspek seperti suhu, kelembaban, pencahayaan, dan keamanan dapat dikontrol secara otomatis sehingga menciptakan lingkungan yang ideal bagi para pelajar. Kami membuat SmartSense: Ruang belajar cerdas dengan tujuan pelajar akan dapat belajar dengan baik dan meningkatkan produktifitas. SmartSense ini dilengkapi sensor RFID untuk membuka pintu sehingga tidak semua orang bisa masuk kedalam ruangan. Sistem juga tedapat sensor LM35 dan DHT22 yang nantinya akan dapat mengatur AC dan Jendela. Sistem ini memiliki sensor PIR untuk menghidupkan lampu secara otomatis. Untuk keselamatan, sistem dilengkapi dengan sensor gas MQ2 yang nantinya akan membunyikan buzzer sebagai peringatan terdapat gas berbahaya dan mudah terbakar.

    2. Tujuan [Kembali]

    1.    Untuk mengetahui pemakaian mikroprosesor dan mikrokontroler pada prototype yang dibuat

    2.  Untuk menghasilkan alat yang dapat bekerja secara otomatis berbasis mikroprosesor dan mikrokontroler

  1. Arduino uno


  2. Sensor PIR




  3. Sensor RFID


  4. Sensor Gas MQ2


  5. Sensor DHT22

  6. Sensor LM35


  7. LCD 16 x 2


  8. Buzzer

  9. Adaptor 12V-2A




  10. Motor driver L293D


  11. Motor DC


  12. Motor servo SG 90

  13. LED


  14. Jumper


     
4. Dasar Teori  [Kembali]

  1.  PWM
    PWM (Pulse Width Modulation) adalah salah satu teknik modulasi dengan mengubah lebar pulsa (duty cylce) dengan nilai amplitudo dan frekuensi yang tetap. Satu siklus puls merupakan kondisi high kemudian berada di zona transisi ke kondisi low. Lebar pulsa PWM berbanding lurus dengan amplitudo sinyal asli yang belum termodulasi. Duty Cycle adalah perbandingan antara waktu ON (lebar pulsa High) dengan perioda. Duty Cycle biasanya dinyatakan dalam bentuk persen (%).

    1. Duty Cycle = tON / total
    2. tON = Waktu ON atau Waktu dimana tegangan keluaran berada pada posisi tinggi (high atau 1)
    3. tOFF = Waktu OFF atau Waktu dimana tegangan keluaran berada pada posisi rendah (low atau 0)
    4. ttotal = Waktu satu siklus atau penjumlahan antara tON dengan tOFF atau disebut juga dengan “periode satu gelombang”

    Pada board Arduino Uno, pin yang dapat digunakan untuk PWM adalah pin yang ditandai dengan tilde (~), yaitu pin 3, 5, 6, 9, 10, dan 11. Pin-pin ini dapat berfungsi sebagai input atau output analog. Untuk menggunakan PWM pada pin ini, dapat digunakan perintah analogWrite();.

    PWM pada Arduino bekerja pada frekuensi 500Hz, artinya terdapat 500 siklus dalam satu detik. Setiap siklus dapat diberikan nilai dari 0 hingga 255. Ketika diberi nilai 0, pin tersebut akan selalu bernilai 0 volt. Jika diberi nilai 255, pin akan selalu bernilai 5 Volt sepanjang siklus. Dengan nilai 127 (50% dari 255), setengah siklus akan bernilai 5 Volt dan setengahnya lagi 0 volt. Jika diberi nilai 64 (25% dari 255), maka selama 1/4 siklus akan bernilai 5 Volt dan 3/4 siklus lainnya akan bernilai 0 volt, dan ini terjadi 500 kali dalam satu detik.

  2. ADC

    ADC atau Analog to Digital Converter adalah perangkat elektronik yang digunakan untuk menghubungkan sinyal analog ke sistem digital. Fungsi utama dari ADC adalah mengubah sinyal analog menjadi sinyal digital dalam bentuk kode digital. Ada dua faktor penting dalam kinerja ADC, yaitu kecepatan sampling dan resolusi.

    Kecepatan sampling menunjukkan seberapa sering perangkat dapat mengonversi sinyal analog ke digital dalam interval waktu tertentu, yang biasanya dinyatakan dalam sampel per detik (SPS). Sementara itu, resolusi menunjukkan tingkat ketelitian pengukuran. Pada Arduino, resolusinya adalah 10 bit, yang berarti nilai digital berkisar antara 0 hingga 1023. Dengan tegangan referensi 5 volt, ADC pada Arduino dapat menangani sinyal analog dengan rentang tegangan 0 hingga 5 volt. Arduino menggunakan pin analog input yang ditandai dengan kode A (A0 hingga A5 pada Arduino Uno) untuk membaca sinyal input analog, dengan fungsi analogRead(pin); untuk mengambil data sinyal tersebut.

  3. Mikrokontroler

    Dapat dilihat pada Gambar 1, Arduino Uno adalah board mikrokontroler berbasis ATmega328 (datasheet). Memiliki 14 pin input dari output digital dimana 6 pin input tersebut dapat digunakan sebagai output PWM dan 6 pin input analog, 16 MHz osilator kristal, koneksi USB, jack power, ICSP header, dan tombol reset.

          Setiap 14 pin digital pada arduino uno dapat digunakan sebagai input dan output, menggunakan fungsi pinMode(), digitalwrite(), dan digitalRead(). Fungsi fungsi tersebut beroperasi di tegangan 5 volt, Setiap pin dapat memberikan atau menerima suatu arus maksimum 40 mA dan mempunyai sebuah resistor pull-up (terputus secara default) 20-50 kOhm.

    Spesifikasi 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: 

  4. Komunikasi
    1. Universal Asynchronous Receiver Transmitter (UART)
      UART (Universal Asynchronous Receiver-Transmitter) adalah bagian perangkat keras komputer yang menerjemahkan antara bit-bit paralel data dan bit-bit serial. UART biasanya berupa sirkuit terintegrasi yang digunakan untuk komunikasi serial pada komputer atau port serial perangkat periperal

      Cara Kerja Komunikasi UART:

      Data dikirimkan secara paralel dari data bus ke UART1. Pada UART1 ditambahkan start bit, parity bit, dan stop bit kemudian dimuat dalam satu paket data. Paket data ditransmisikan secara serial dari Tx UART1 ke Rx UART2. UART2 mengkonversikan data dan menghapus bit tambahan, kemudian ditransfer secara parallel ke data bus penerima.

    2. Serial Peripheral Interface (SPI)
      Serial Peripheral Interface (SPI) merupakan salah satu mode komunikasi serial synchrounous kecepatan tinggi yang dimiliki oleh ATmega 328. Komunikasi SPI membutuhkan 3 jalur yaitu MOSI, MISO, dan SCK. Melalui komunikasi ini data dapat saling dikirimkan baik antara mikrokontroler maupun antara mikrokontroler dengan peripheral lain di luar mikrokontroler.

      1. MOSI: Master Output Slave Input artinya jika dikonfigurasi sebagai master maka pin MOSI sebagai output tetapi jika dikonfigurasi sebagai slave maka pin MOSI sebagai input
      2. MISO: Master Input Slave Output artinya jika dikonfigurasi sebagai master maka pin MISO sebagai input tetapi jika dikonfigurasi sebagai slave maka pin MISO sebagai output.
      3. SCLK: Clock jika dikonfigurasi sebagai master maka pin CLK berlaku sebagai output tetapi jika dikonfigurasi sebagai slave maka pin CLK berlaku sebagai input.
      SS/CS: Slave Select / Chip Select adalah jalur master memilih slave mana yang akan dikirimkan data.

      Cara Kerja Komunikasi SPI:
       
      Sinyal clock dialirkan dari master ke slave yang berfungsi untuk sinkronisasi. Master dapat memilih slave mana yang akan dikirimkan data melalui slave select, kemudian data dikirimkan dari master ke slave melalui MOSI. Jika master butuh respon data maka slave akan mentransfer data ke master melalui MISO.

    3. Inter Integrated Circuit(I2C)
      Inter Integrated Circuit atau sering disebut I2C adalah standar komunikasi serial dua arah menggunakan dua saluran yang didisain khusus untuk mengirim maupun menerima data. Sistem I2C terdiri dari saluran SCL (Serial Clock) dan SDA (Serial Data) yang membawa informasi data antara I2C dengan pengontrolnya.

      Cara Kerja Komunikasi I2C:
      1. Pada I2C, data ditransfer dalam bentuk message yang terdiri dari kondisi start, Address Frame, R/W bit, ACK/NACK bit, Data Frame 1, Data Frame 2, dan kondisi Stop.
      2. Kondisi start dimana saat pada SDA beralih dari logika high ke low sebelum SCL.
      3. Kondisi stop dimana saat pada SDA beralih dari logika low ke high sebelum SCL.
      4. R/W bit berfungsi untuk menentukan apakah master mengirim data ke slave atau meminta data dari slave. (logika 0 = mengirim data ke slave, logika 1 = meminta data dari slave)
      5. ACK/NACK bit berfungsi sebagai pemberi kabar jika data frame ataupun address frame telah diterima receiver.

  5. Sensor
    1. Sensor PIR

      PIR (Passive Infrared) Sensor adalah komponen elektronik yang berfungsi untuk mendeteksi gerakan berdasarkan perubahan radiasi inframerah dari objek di sekitarnya. Sensor ini mendeteksi perubahan panas yang dihasilkan oleh tubuh manusia atau hewan dalam jangkauan deteksinya. PIR sensor memiliki sudut pandang yang bervariasi tergantung pada modelnya, biasanya sekitar 110 derajat, dan beroperasi pada suhu -20 derajat hingga 85 derajat. Sensor ini ideal untuk digunakan dalam sistem keamanan dan otomatisasi.

      Grafik Sensor PIR:



      Spesifikasi dari sensor PIR:
      1. Tegangan operasi: 5V

      2. Pin keluaran digital
      3. Sensitivitas dan durasi alarm dapat disesuaikan
      4. Deteksi jarak: hingga 7 meter
      5. Sudut deteksi: sekitar 110 derajat
      6. Waktu inisialisasi: sekitar 1 menit
      7. Ukuran: 32 x 24mm
      8. Berat: sekitar 7g

      Pin

      Deskripsi

      VCC

      Supply 5.5V

      OUTPUT

      Mengirimkan data yang diterima

      GND

      Terhubung ke ground sirkuit

    2. Sensor RFID
      Spesifikasi Sensor RFID:
      1. Fungsi Dasar: Membaca dan mengidentifikasi kartu RFID.
      2. Tegangan Operasi: 5V.
      3. Keluaran: Output SPI (Serial Peripheral Interface).
      4. Sensitivitas dan Durasi Baca: Dapat disesuaikan untuk kebutuhan aplikasi tertentu.
      5. Jarak Baca: Bergantung pada kondisi lingkungan dan jenis kartu RFID, namun umumnya dapat mencapai beberapa sentimeter hingga beberapa puluh sentimeter.
      6. Waktu Inisialisasi: Tergantung pada sistem yang digunakan, biasanya butuh waktu kurang dari satu detik untuk inisialisasi.
      7. Ukuran dan Berat: Ukuran dan berat yang mungkin bervariasi tergantung pada model atau produsen, namun umumnya cukup kecil dan ringan untuk integrasi dalam berbagai aplikasi.

      Sensor RFID RC522 biasanya digunakan dalam sistem keamanan, kontrol akses, otomatisasi, dan berbagai aplikasi lain di mana identifikasi dan otentikasi menggunakan kartu RFID diperlukan.

      Pin

      Deskripsi

      VCC

      Supply 3.5V hingga 5.5V

      RST

      Menampilkan suhu dan kelembaban melalui data serial

      GND

      Terhubung ke ground sirkuit

      IRQ

      Pin interrupt (opsional, tergantung modul).

      MISO

      Pin data output (Master In Slave Out), digunakan untuk SPI atau antarmuka serial

      MOSI

      Pin data input (Master Out Slave In), digunakan untuk SPI atau antarmuka serial.

      SCK

      Pin clock untuk antarmuka SPI.

      SS

      Pin Slave Select untuk antarmuka SPI.

      Grafik Sensor RFID:


    3. Sensor GAS MQ2

       Sensor Gas MQ2
      1. Fungsi Utama: Mendeteksi konsentrasi gas dalam udara.
      2. Tegangan Operasi: 5V.
      3. Arus: Kurang dari 150mA saat pengukuran.
      4. Keluaran: Analog dan digital.Kisaran Gas yang Dapat Dideteksi: Gas yang biasa dideteksi meliputi asap, gas hidrogen (H2), gas metana (CH4), karbon monoksida (CO), dan alkohol.
      5. Resolusi: Tergantung pada kondisi pengukuran dan pemrosesan data, biasanya memiliki resolusi yang memadai untuk mendeteksi konsentrasi gas dengan baik.
      6. Akurasi: Akurasi dalam mengukur konsentrasi gas bisa bervariasi tergantung pada faktor-faktor seperti kondisi lingkungan dan jenis gas yang dideteksi. Namun, secara umum, akurasi sensor MQ2 dapat dianggap cukup baik untuk aplikasi deteksi gas.

      Dengan spesifikasi ini, sensor gas MQ2 dapat digunakan dalam berbagai aplikasi seperti deteksi kebocoran gas, pemantauan kualitas udara dalam ruangan, sistem keamanan, dan pemadam kebakaran.

      Grafik Sensor Gas


      Pin

      Deskripsi

      VCC

      Supply 3.5V hingga 5.5V

      OUTPUT ANALOG

      Membaca dan mengeluarkan data analog

      GND

      Terhubung ke ground sirkuit

      OUTPUT DIGITAL

      Membaca dan mengeluarkan data 1 dan 0


    4. Sensor DHT22

      Sensor DHT22 adalah sensor yang berfungsi untuk mengukur suhu dan kelembaban udara sekaligus, menggunakan termistor tipe NTC (Negative Temperature Coefficient) untuk mengukur suhu, dan sebuah sensor kelembapan resistif untuk mengukur kadar air di udara. Sensor ini juga memiliki chip yang melakukan konversi analog ke digital dan mengeluarkan output dalam format single-wire bi-directional (kabel tunggal dua arah).
      1. Spesifikasi dari sensor DHT22:
      2. Tegangan operasi: 3.3V hingga 6V
      3. Arus: 1.5mA (mengukur) 60uA (siaga)
      4. Keluaran: data serial
      5. Kisaran suhu: -40°C hingga 80°C
      6. Kisaran kelembaban: 0% hingga 100%
      7. Resolusi: suhu dan kelembaban keduanya 16-bit
      8. Akurasi: ±0.5°C dan ±2%

      Grafik Sensor DHT22:

      Pin

      Deskripsi

      VCC

      Supply 3.5V hingga 5.5V

      OUTPUT

      Menampilkan suhu dan kelembaban melalui data serial

      GND

      Terhubung ke ground sirkuit


    5. Sensor LM35

      LM35 adalah sensor suhu presisi yang populer digunakan dalam berbagai aplikasi elektronik. Sensor ini menghasilkan output tegangan yang linier berdasarkan suhu dalam derajat Celsius, di mana setiap derajat Celsius direpresentasikan sebagai 10 milivolt. Dengan rentang suhu operasional yang luas (-55°C hingga +150°C) dan akurasi yang tinggi (biasanya sekitar ±0.5°C), LM35 memberikan pengukuran suhu yang akurat dan dapat diandalkan. Dengan ukuran yang kecil dan konsumsi daya yang rendah, sensor ini cocok untuk integrasi dalam berbagai perangkat elektronik seperti termometer digital, sistem kontrol suhu, dan perangkat pemantauan suhu lainnya.
      Spesifikasi LM35
      1. Fungsi Dasar: Mengukur suhu dalam derajat Celsius.
      2. Tegangan Operasi: Biasanya dalam rentang 4V hingga 20V DC.
      3. Keluaran: Output analog yang linier, dengan masing-masing derajat Celsius direpresentasikan sebagai 10 mV.
      4. Resolusi: 0.1°C (dengan sensitivitas 10 mV per derajat Celsius).
      5. Akurasi: Tergantung pada model dan kondisi lingkungan, namun umumnya memiliki akurasi sekitar ±0.5°C di dalam rentang suhu operasionalnya.
      6. Rentang Suhu: Biasanya dari -55°C hingga +150°C.
      7. Kestabilan: Kondisi lingkungan dan kualitas sensor dapat mempengaruhi stabilitasnya, namun umumnya cukup stabil untuk aplikasi umum.
      8. Waktu Respon: Sangat cepat, biasanya dalam hitungan milidetik.
      9. Ukuran dan Berat: Kecil dan ringan, biasanya dalam bentuk paket TO-92 yang mudah diintegrasikan dalam perangkat elektronik.

      Sensor suhu LM35 sering digunakan dalam berbagai aplikasi yang membutuhkan pemantauan suhu seperti termometer digital, sistem pendingin otomatis, kontrol suhu lingkungan, dan berbagai aplikasi lain di mana pengukuran suhu yang akurat dan cepat dibutuhkan.

      Pin

      Deskripsi

      VCC

      Supply 3.5V hingga 5.5V

      OUTPUT

      Menampilkan suhu melalui data serial

      GND

      Terhubung ke ground sirkuit


  6. LCD

    LCD (Liquid-Crystal Display) atau Penampil Kristal Cair adalah layar panel datar atau perangkat optik elektronik termodulasi yang menggunakan sifat modulasi cahaya dari kristal cair (liquid crystal) yang dikombinasikan dengan polarizer. Kristal cair tidak memancarkan cahaya secara langsung, melainkan menggunakan lampu latar atau reflektor untuk menghasilkan gambar berwarna atau monokrom.

    Spesifikasi:

    ·       Format tampilan: 16 x 2 karakter

    ·       Pengontrol bawaan: ST 7066 (atau setara)

    ·       Siklus kerja: 1/16

    ·       5 x 8 titik termasuk kursor

    ·       Supply + 5 V (juga tersedia untuk + 3 V)

    ·       LED dapat digerakkan oleh pin 1, pin 2, pin 15, pin 16 atau A dan K

    ·       N.V. opsional untuk supply + 3 V


  7. Buzzer

    Buzzer adalah sebuah komponen elektronika yang dapat menghasilkan getaran suara berupa gelombang bunyi. Buzzer akan menghasilkan getaran suara ketika diberikan sejumlah tegangan listrik dengan taraf tertentu sesuai dengan spesifikasi bentuk dan ukuran buzzer itu sendiri. Pada umumnya, buzzer ini sering digunakan sebagai alarm karena penggunaannya yang cukup mudah yaitu dengan memberikan tegangan input maka buzzer akan menghasilkan getaran suara berupa gelombang bunyi yang dapat didengar.

    Spesifikasi:

    ·       Nilai tegangan: 6V DC

    ·       Tegangan pengoperasian: 4 hingga 8V DC

    ·       Arus: ≤30mA

    ·       Keluaran suara pada 10cm: ≥85dB

    ·       Frekuensi resonansi: 2300 ±300Hz

    ·       Nada: Berkelanjutan

    ·       Suhu operasional: -25°C hingga +80°C

    ·       Suhu penyimpanan: -30°C hingga +85°C

    ·       Berat: 2g

  8. Adaptor 12V-2A

    Adaptor 12V-2A adalah perangkat listrik yang dirancang untuk menyediakan tegangan dan arus yang sesuai untuk pengisian baterai dan pengoperasian perangkat elektronik lainnya yang membutuhkan pasokan daya 12 Volt dengan arus maksimum 2 ampere. Adaptor ini berfungsi dengan mengonversi tegangan AC dari sumber listrik menjadi tegangan DC yang stabil sesuai dengan spesifikasi yang dibutuhkan. Dengan kapasitas output yang mencapai 24 Watt, adaptor ini cocok untuk digunakan dengan berbagai perangkat seperti kamera, lampu LED, perangkat audio, dan sebagainya yang membutuhkan pasokan daya DC yang handal dan stabil.

     

    Spesifikasi dari adaptor 12V-2A adalah sebagai berikut:

    ·       Output Voltage: 12 Volt DC

    ·       Output Current: 2 ampere (2000 milliampere)

    ·       Metode Pengisian: Tegangan Konstan dengan Arus Terbatas (CC)

    ·       Waktu Pengisian Daya: Sesuai kebutuhan perangkat yang diisi daya, dengan batasan arus maksimum 2A untuk memastikan pengisian yang efisien dan aman.

    ·       Tegangan Cut-off Discharge: 12 volt - Memastikan bahwa tegangan output tidak melebihi batas yang aman untuk perangkat yang dioperasikan.

    ·       Dimensi: Sesuai dengan standar dimensi untuk adaptor 12V-2A, memungkinkan untuk instalasi yang mudah dan kompatibilitas dengan berbagai perangkat.

     

    Dengan spesifikasi ini, adaptor 12V-2A dapat diandalkan untuk memenuhi kebutuhan daya perangkat Anda dengan efisien dan aman, memberikan pasokan daya yang stabil dan konsisten untuk menjaga kinerja optimal perangkat elektronik Anda.

  9. Motor Driver

    Motor driver L293D adalah sebuah modul yang digunakan untuk mengendalikan motor DC dengan mudah. Modul ini menggunakan IC L293D sebagai pengendali motor, yang terkenal dalam dunia elektronika untuk mengatur kecepatan dan arah rotasi motor dengan efisien. Berikut adalah spesifikasi dari motor driver L293D:

     

    ·       Tegangan Input: 4.5V - 36V

    ·       Driver: Motor Driver L293D Dual H-Bridge DC

    ·       Supply: 5V

    ·       Arus Puncak: 600mA per kanal (1.2A total)

    ·       Kisaran Operasi: 0 - 36 mA

    ·       Konsumsi Daya Maksimum: 5W (saat suhu 75 ℃)

    ·       Suhu Penyimpanan: -40 ℃ hingga +150 ℃

    ·       Keluaran Pin 10 (sumber tegangan IC) jika berfungsi sebagai pin output: 5V

    ·       Ukuran: 2.7cm x 2.2cm x 1.3cm

     

    Motor driver L293D ini dapat diandalkan untuk mengontrol dua motor DC sekaligus dengan kemampuan untuk mengatur kecepatan dan arah rotasi. Dengan tegangan input yang luas dan kemampuan arus puncak yang cukup, modul ini cocok untuk berbagai aplikasi elektronik yang membutuhkan kontrol motor yang handal dan efisien.

  10. Motor DC


    Motor DC yang sering ditemui dalam berbagai perangkat memiliki spesifikasi sebagai berikut:

     

    ·       Tegangan Operasi: 3V - 5V

    ·       Tipe Motor: Coreless DC Motor

    ·       Arus Operasi: 50mA - 100mA

    ·       Kecepatan Putar: Sekitar 5000 - 10000 RPM (Rotasi per Menit)

    ·       Jenis Kontrol: Analog (tergantung pada sensor yang terpasang)

    ·       Konstruksi: Kompak dengan dimensi sekitar 1cm x 1cm x 1cm

    ·       Fitur Tambahan: Mungkin dilengkapi dengan gearbox untuk mengubah torsi dan mengoptimalkan kecepatan putar motor.

     

    Motor DC ini biasanya digunakan dalam berbagai aplikasi yang membutuhkan motor kecil dengan respons cepat dan umpan balik yang dapat disesuaikan. Meskipun ukurannya kecil, motor ini mampu memberikan daya yang cukup untuk berbagai keperluan

  11. Motor Servo

    Motor servo SG90 adalah sebuah motor servo kecil yang sering digunakan dalam berbagai proyek elektronik dan robotika. Motor ini dirancang untuk memberikan gerakan yang presisi dan kontrol yang akurat terhadap sudut putar. SG90 memiliki ukuran yang kecil namun mampu memberikan torsi yang cukup untuk menggerakkan komponen mekanis dengan stabil. Motor servo ini sangat populer karena ukurannya yang kompak dan performanya yang handal dalam menjalankan berbagai tugas yang membutuhkan pengendalian sudut yang tepat.

     

    Spesifikasi dari motor servo SG90 adalah sebagai berikut:

    ·       Tegangan Operasi: 4.8V - 6V

    ·       Tipe Motor: Motor Servo DC

    ·       Torsi: 1.8 kg/cm (4.8V)

    ·       Kecepatan Putar: 0.12 detik/60° (tanpa beban)

    ·       Sudut Putar: 180°

    ·       Jenis Kontrol: PWM (Pulse Width Modulation)

    ·       Konstruksi: Plastik ABS dengan gigi logam

    ·       Dimensi: 22.2mm x 11.8mm x 31mm

    ·       Berat: Sekitar 9 gram

     

    Motor servo SG90 ini cocok untuk berbagai aplikasi yang membutuhkan kontrol sudut yang presisi, seperti dalam pembuatan robotika, model kendaraan miniatur, kamera PTZ (Pan-Tilt-Zoom), dan lain sebagainya. Dengan ukurannya yang kecil namun performanya yang handal, SG90 menjadi pilihan yang populer di kalangan penghobi elektronik dan pembuat robotika.

  12. LED

    LED Super Red adalah jenis LED yang memberikan cahaya berwarna merah dengan tingkat kecerahan yang tinggi. LED ini memiliki berbagai aplikasi dalam berbagai bidang, mulai dari elektronik hingga dekorasi. LED Super Red memiliki spesifikasi sebagai berikut:

     

    ·       Warna Cahaya: Merah

    ·       Tegangan Operasi: 1.8V - 2.4V

    ·       Arus Operasi: 20mA - 30mA

    ·       Kecerahan: Variabel tergantung pada kondisi operasional dan karakteristik LED

    ·       Tipe: Light Emitting Diode (LED)

    ·       Material: Semikonduktor padat

    ·       Konstruksi: Biasanya berbentuk chip atau encapsulated dalam package yang tahan panas dan tahan air

    ·       Dimensi: Variabel tergantung pada tipe dan package LED

     

    LED Super Red ini cocok untuk digunakan dalam aplikasi yang membutuhkan cahaya merah dengan kecerahan tinggi, seperti indikator status, tanda peringatan, pencahayaan dekoratif, dan banyak lagi. Dengan konsumsi daya yang rendah dan umur panjang yang dimilikinya, LED Super Red menjadi pilihan yang populer dalam berbagai proyek elektronik dan pembuatan.

  13. Jumper

    Jumper adalah komponen elektronik yang digunakan untuk menghubungkan dua titik pada suatu rangkaian atau papan sirkuit. Biasanya terbuat dari kawat yang dilapisi dengan bahan isolasi seperti plastik atau karet. Jumper digunakan untuk memperbaiki atau mengubah konfigurasi suatu rangkaian dengan cara menyambungkan atau memutuskan koneksi antara titik-titik tertentu. Spesifikasi umum dari jumper adalah sebagai berikut:

     

    ·        Bahan: Biasanya terbuat dari kawat tembaga yang dilapisi dengan isolasi

    ·        Panjang: Variabel tergantung pada kebutuhan, namun biasanya tersedia dalam ukuran yang cukup pendek, sekitar beberapa milimeter hingga beberapa sentimeter.

    ·        Warna: Beragam warna untuk memudahkan identifikasi dan pengelompokan.

    ·        Konektor: Pada ujungnya bisa memiliki konektor seperti male header, female header, atau hanya berupa ujung kawat yang dipotong.

    ·        Ketahanan: Biasanya memiliki ketahanan yang baik terhadap arus listrik dan suhu lingkungan yang umumnya ditemui dalam aplikasi elektronik.

     Jumper sangat serbaguna dan digunakan dalam berbagai proyek elektronik, mulai dari prototyping hingga perbaikan rangkaian yang lebih kompleks. Kelebihannya yang sederhana dan mudah digunakan membuat jumper menjadi komponen yang sangat berguna dalam dunia elektronika.

            


    5. Prosedur   [Kembali]

    a. percobaan [kembali]
        
    • 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 [kembali]




    c. Rangkaian Simulasi dan Prinsip Kerja [kembali]
        

    Pada modul 4 ini yang berjudul Smartsense: Ruang Belajar Pintar, kami menggunakan 5 buah sensor yaitu sensor RFID, LM35, DHT22, PIR, dan MQ2. Rangkaian ini terdiri dari dua bagian utama yaitu Arduino Master dan Arduino Slave. Arduino Master bertugas membaca data dari berbagai sensor sebagai input, sementara Arduino Slave bertugas untuk mengeksekusi berdasarkan data yang diterima dari Arduino Master. Kedua Arduino ini berkomunikasi menggunakan komunikasi UART (Universal Asynchronous Receiver/Transmitter).

    Arduino Master terhubung pada sensor gas (MQ2) di pin 7, sensor PIR di pin 8, sensor DHT22 di pin A1, sensor suhu LM35 di pin A3, dan RFID yang terhubung ke pin 9 (RST) dan pin 10 (SS). Arduino Slave terhubung pada aktuator yaitu servo motor pertama untuk membuka pintu masuk di pin 6, servo motor kedua untuk membuka jendela di pin 5, motor DC sebagai AC di pin 12, LED sebagai lampu ruangan di pin A3, dan buzzer sebagai indikasi adanya gas dalam ruangan di pin 9.

    Sensor gas berfungsi untuk mendeteksi keberadaan gas di dalam ruangan. Jika ada gas yang terdeteksi (nilai HIGH), Arduino Master akan mengirim sinyal 'B' ke Arduino Slave untuk mengaktifkan buzzer. Jika tidak ada gas yang terdeteksi (nilai LOW), sinyal 'b' akan dikirim untuk mematikan buzzer. Sensor PIR berfungsi untuk mendeteksi gerakan di dalam ruangan. Ketika gerakan terdeteksi (nilai HIGH), Arduino Master akan mengirim sinyal 'C' ke Arduino Slave untuk menyalakan LED. Jika tidak ada gerakan (nilai LOW), sinyal 'c' akan dikirim untuk mematikan LED.

    Sensor suhu LM35 berfungsi untuk mengukur suhu ruangan dan terhubung ke pin A3. Sensor ini mengkonversi nilai tegangan yang dibaca ke suhu dalam derajat Celsius. Jika suhu yang terdeteksi tinggi (> 32°C), Arduino Master akan mengirim sinyal 'd' ke Arduino Slave untuk menghidupkan AC (motor DC). Jika suhu rendah (≤ 32°C), sinyal 'D' akan dikirim untuk mematikan AC. Sensor DHT22 terhubung ke pin A1 dan digunakan untuk mengukur suhu dan kelembaban ruangan. Data suhu dan kelembaban yang diperoleh dari sensor ini akan ditampilkan pada LCD. Selain itu, data ini juga digunakan untuk menentukan kondisi lain seperti mengontrol jendela berdasarkan kombinasi nilai dari sensor PIR dan kelembaban. Jika kelembaban rendah (≤ 50%) dan PIR mendeteksi gerakan, sinyal 'E' akan dikirim untuk menutup jendela (servo motor kedua). Jika kelembaban tinggi (> 50%), sinyal 'e' akan dikirim untuk membuka jendela.

    Arduino Slave menerima data dari Arduino Master melalui port serial dan mengendalikan aktuator berdasarkan data yang diterima. Servo motor pertama terhubung ke pin 6 dan berfungsi untuk membuka dan menutup pintu. Ketika Arduino Slave menerima sinyal 'A' dari Arduino Master, servo motor pertama akan bergerak ke posisi 90 derajat selama 5 detik untuk membuka pintu, kemudian kembali ke posisi 0 derajat untuk menutup pintu. Jika sinyal yang diterima adalah 'a', pintu akan tetap tertutup. Servo motor kedua terhubung ke pin 5 dan berfungsi untuk membuka dan menutup jendela. Jika Arduino Slave menerima sinyal 'E', servo motor kedua akan bergerak ke posisi 0 derajat untuk menutup jendela. Jika sinyal yang diterima adalah 'e', servo motor kedua akan bergerak ke posisi 90 derajat untuk membuka jendela. Motor DC terhubung ke pin 12 dan berfungsi sebagai AC di ruangan. Motor ini dikendalikan berdasarkan kombinasi nilai dari sensor PIR dan sensor suhu/kelembaban yang diterima oleh Arduino Master. Jika suhu yang terdeteksi tinggi (> 32°C), motor DC akan dihidupkan untuk menghidupkan AC. Jika suhu rendah (≤ 32°C), motor DC akan dimatikan. LED terhubung ke pin A3 dan akan menyala ketika sinyal 'C' diterima dari Arduino Master, menandakan adanya gerakan di ruangan. Jika tidak ada gerakan, sinyal 'c' akan mematikan LED. Buzzer terhubung ke pin 9 dan akan menghasilkan bunyi ketika sinyal 'B' diterima dari Arduino Master sebagai indikasi adanya gas di dalam ruangan. Jika tidak ada gas, sinyal 'b' akan mematikan buzzer. Dengan rangkaian ini, Arduino Master dan Slave dapat bekerja bersama-sama untuk membaca data dari sensor, mengirimkan data, dan mengendalikan berbagai aktuator sesuai dengan kondisi yang terdeteksi oleh sensor, menciptakan lingkungan ruang belajar yang pintar dan responsif terhadap berbagai kondisi.


    d. Flowchar dan Listening Program [kembali]
        



    A.    Master



    // library

    #include <Wire.h>

    #include <LiquidCrystal_I2C.h> //library lcd i2c

    #include <DHT.h> //library dht

    #include <SPI.h> //library rfid

    #include <MFRC522.h> //library rfid

     

    //deklarasi komponen

    LiquidCrystal_I2C lcd(0x27, 16, 2); //lcd

    #define GAS_SENSOR_PIN 7 //pin senso gas

    #define PIR_SENSOR_PIN 8 //pin sensor pir

    //#define LM35_SENSOR_PIN A3 //pin sensor lm35

    #define DHT22_SENSOR_PIN 2 //pi sensor dht22

    #define DHT_TYPE DHT22 //tipe dht

    DHT dht(DHT22_SENSOR_PIN, DHT_TYPE);

    #define SS_PIN 10 //pin ss rfid

    #define RST_PIN 9//pin rst rfid

    byte readCard[4];

    String MasterTag = "CAD0FD3F";

    String tagID = "";

    MFRC522 rfid(SS_PIN, RST_PIN); //deklarasi pin rfid

     

    void setup() {

      Serial.begin(9600);

      SPI.begin();      // Init SPI bus

      rfid.PCD_Init();

      rfid.PCD_DumpVersionToSerial();

      lcd.init();

      lcd.backlight();

      dht.begin();

      pinMode(GAS_SENSOR_PIN, INPUT);

      pinMode(PIR_SENSOR_PIN, INPUT);

      // pinMode(LM35_SENSOR_PIN, INPUT);

    }

     

    void loop() {

      int gasValue = digitalRead(GAS_SENSOR_PIN);

      int pirValue = digitalRead(PIR_SENSOR_PIN);

      // float lm35Value = analogRead(LM35_SENSOR_PIN);

      // float voltage = lm35Value * (5.0 / 1023.0);

      // float lm35Temperature = voltage * 100.0;

      float dht22Temperature = dht.readTemperature();

      float dht22Humidity = dht.readHumidity();

     

      lcd.setCursor(0, 0);

      lcd.print("Temp: ");

      lcd.print(dht22Temperature);

      lcd.print("C  ");

      lcd.setCursor(0, 1);

      lcd.print("Humidity: ");

      lcd.print(dht22Humidity);

      lcd.print("%");

     

      while (getID()) {

        if (tagID == MasterTag){

          Serial.write('A');

          Serial.print("");

          Serial.println("RFID TAG");

        }

        else{

          Serial.write('a');

          Serial.println("");

        }

      }

     

      //kondisi

      if (gasValue == LOW) {

        Serial.write('B');

        Serial.print("");

        Serial.println("ada gas");

      }

      if (gasValue == HIGH) {

        Serial.write('b');

        Serial.println("");

      }

     

      if (pirValue == HIGH) {

        Serial.write('C');

        Serial.print("");

        Serial.println("ada gerakan");

      }

      if (pirValue == LOW) {

        Serial.write('c');

        Serial.println("");

      }

     

      if ( dht22Temperature <= 32) {

        Serial.write('D');

        Serial.print("");

        Serial.println("suhu rendah");

        }

      if ( dht22Temperature > 32) {

        Serial.write('d');

        Serial.println("");

      }

     

      if ( dht22Humidity <= 50) {

        Serial.write('E');

        Serial.print("");

        Serial.println("kel rendah");

        }

      if ( dht22Humidity  > 50) {

          Serial.write('e');

          Serial.println("");

      }

    }

     

     

    boolean getID()

    {

      if ( ! rfid.PICC_IsNewCardPresent()) {

        return false;

      }

      if ( ! rfid.PICC_ReadCardSerial()) {

      return false;

      }

      tagID = "";

      // The MIFARE PICCs that we use have 4 byte UID

      for ( uint8_t i = 0; i < 4; i++) {

      tagID.concat(String(rfid.uid.uidByte[i], HEX));

      }

      tagID.toUpperCase();

      rfid.PICC_HaltA(); // Stop reading

      return true;

    }

     

    B.    Slave



    #include <Servo.h>

    #define SERVO_PIN 6

    #define MOTOR_PIN 8

    #define MOTOR_PIN2 9

    #define LED_PIN 2

    #define BUZZER_PIN 3

    #define SERVO_PIN2 11

     

    Servo servoMotor1;

    Servo servoMotor2;

     

     

    void setup() {

      Serial.begin(9600);

      servoMotor1.attach(SERVO_PIN); // Menghubungkan servo motor ke pin 5

      servoMotor2.attach(SERVO_PIN2);

      pinMode(MOTOR_PIN, OUTPUT);

      pinMode(LED_PIN, OUTPUT);

      pinMode(BUZZER_PIN, OUTPUT);

    }

     

    void loop() {

      if (Serial.available()) {

        char message = Serial.read(); // Baca karakter dari Serial dan simpan ke variabel message

                      

        if (message =='A') {

              servoMotor1.write(90);

              delay(5000);

              servoMotor1.write(0);

            }

            else if (message == 'a'){

                  servoMotor1.write(0);

                }

        if (message == 'B') {

              digitalWrite(BUZZER_PIN, HIGH);

              delay(1000);

              digitalWrite(BUZZER, LOW);

              delay(1000);

              digitalWrite(BUZZER, HIGH);

              delay(1000);

              digitalWrite(BUZZER, LOW);

              delay(1000);

             }

             else if (message == 'b'){

                digitalWrite(BUZZER_PIN, LOW);

                }

        if (message == 'C') {

              digitalWrite(LED_PIN, HIGH);

            }

            else if (message == 'c' ){

                 digitalWrite(LED_PIN, LOW);

                }

        if (message == 'D'){

              digitalWrite(MOTOR_PIN, LOW);// AC

              digitalWrite(MOTOR_PIN2, LOW);// AC

              digitalWrite(LED_PIN, LOW);     

            }

         if (message == 'd' ){

              digitalWrite(MOTOR_PIN, HIGH);// AC

              digitalWrite(MOTOR_PIN2, LOW);// AC

              digitalWrite(LED_PIN, HIGH);

              }

        if (message == 'E') {

              servoMotor2.write(0);

              digitalWrite(LED_PIN, LOW);     

            }

         if (message == 'e') {

              servoMotor2.write(90);

              digitalWrite(LED_PIN, HIGH);

            }

          delay(20);

        Serial.print(message);

        }

       

      }

     


        e. Video Simulasi  [Kembali]
                1. Video Simulasi Proteus


                 2. Video Demo Project



        f. Download File [Kembali]
  • Download HTML disini
  • Download rangkaian simulasi disini
  • Download kode program Slave disini
  • Download Kode Program Master disini

  • Download vidio simulasi Proteus disini
  • Download vidio Simulasi Demo disini

  • Download datasheet resistor disini
  • Download datasheet Buzzer disini
  • Download datasheet Motor Servo disini
  • Download datasheet led disini
  • Download datasheet arduino disini
  • Download datasheet motor DC disini
  • Download datasheet LCD disini
  • Download datasheet  Motor Driver disini

  • Download library sensor PIR disini
  • Download library arduino disini
  • Download library sensor Gas disini

  • Download datasheet sensor PIR disini
  • Download datasheet sensor DHT22 disini
  • Download datasheet sensor LM35 disini
  • Download datasheet sensor Gas disini
  • Download datasheet sensor RFID disini

  • Download Softcopy laporan Akhir disini

Tidak ada komentar:

Posting Komentar

 Bahan Presentasi untuk mata kuliah kimia         Oleh : Zhafir Ibnu Tanjung 2010953028     Dosen Pengampu: Darwison...