WorksheetsSOAL UJIAN SUMATIF TENGAH SEMESTER GANJIL
Total questions: 25
Worksheet time: 13mins
Name
Class
Date
1.
Rudi, seorang siswa kelas 12, sedang mengerjakan proyek tugas akhir sekolahnya. Proyek ini diberi nama 'Lampu Belajar Otomatis' yang dapat menyala saat kondisi ruangan mulai gelap. Rudi menggunakan sebuah Arduino Uno, sebuah LED, sebuah resistor 220 ohm, dan sebuah sensor LDR (Light Dependent Resistor). Ia menghubungkan sensor LDR ke pin analog A0 pada Arduino, sedangkan LED dihubungkan ke pin digital 9. Rudi tahu bahwa pin analog dapat membaca nilai dari 0 hingga 1023, yang merepresentasikan tegangan 0 hingga 5V. Setelah merakit rangkaiannya, Rudi menulis kode program untuk membaca nilai dari sensor LDR. Ia berencana untuk menyalakan LED jika nilai yang terbaca dari sensor LDR kurang dari 300, yang menandakan kondisi gelap. Berdasarkan skenario di atas, jika Rudi memindahkan kabel jumper yang menghubungkan LED dari pin digital 9 ke pin digital 13 tanpa mengubah kodenya, apa yang akan terjadi?
a)
LED akan menyala secara terus-menerus tanpa peduli kondisi cahaya, karena pin 13 memiliki fitur khusus.
b)
Arduino akan mengalami korsleting dan rusak karena pin 13 tidak cocok untuk LED.
c)
LED akan tetap menyala sesuai dengan kode yang ada, karena pin digital 13 juga dapat mengontrol LED.
d)
LED tidak akan menyala sama sekali karena kode programnya masih memerintahkan pin digital 9 untuk menyala.
e)
LED akan menyala tetapi kecerahannya tidak dapat diatur karena pin 13 bukan pin PWM.
2.
Nadia, teman sekelompok Rudi, sedang mengembangkan proyek 'Alarm Anti-Pencurian'. Proyek ini menggunakan sebuah sensor gerak, buzzer, dan dua buah resistor. Nadia tahu bahwa buzzer memerlukan resistor untuk membatasi arus yang masuk agar tidak rusak. Setelah melakukan beberapa percobaan, Nadia menemukan bahwa buzzer berbunyi paling nyaring ketika ia menggunakan resistor 1 kOhm. Namun, ia ingin buzzer berbunyi lebih pelan untuk menghindari kebisingan yang berlebihan saat pengujian. Ia berencana untuk mengganti resistor 1 kOhm tersebut dengan nilai yang lebih besar atau lebih kecil. Berdasarkan kasus Nadia, untuk membuat bunyi buzzer menjadi lebih pelan, Nadia harus mengganti resistor 1 kOhm dengan resistor berapakah?
a)
Tidak perlu mengganti resistor, cukup mengubah kode programnya.
b)
Resistor 10 kOhm.
c)
Resistor 220 ohm.
d)
Resistor 100 ohm.
e)
Resistor 470 ohm.
3.
Di masa depan, Anton ingin menjadi seorang petani modern. Ia bermimpi menciptakan sistem irigasi otomatis di kebunnya. Sistem ini akan menyalakan pompa air ketika kondisi tanah kering. Ia menggunakan beberapa komponen elektronik: Arduino Uno, sebuah sensor kelembaban tanah, dan sebuah relay yang terhubung ke pompa air. Anton menghubungkan sensor kelembaban tanah ke pin analog A0. Ketika sensor mendeteksi kelembaban rendah (tanah kering), ia ingin Arduino mengaktifkan relay untuk menyalakan pompa. Untuk mengetahui apakah sistemnya bekerja, ia memasang LED di breadboard yang akan menyala ketika pompa aktif. Ia menggunakan kabel jumper untuk menghubungkan semua komponen. Anton menyadari bahwa tanpa kabel jumper, ia tidak bisa menghubungkan komponen-komponen tersebut.
Dari pernyataan berikut, manakah yang **benar** mengenai peran kabel jumper dalam proyek ini?
I. Kabel jumper berfungsi sebagai konduktor yang menghubungkan pin Arduino dengan breadboard dan komponen lainnya.
II. Kabel jumper digunakan untuk mengubah sinyal analog menjadi sinyal digital.
III. Kabel jumper memiliki inti tembaga yang dilindungi oleh isolator plastik untuk mencegah korsleting.
a)
I dan III
b)
II dan III
c)
Hanya II
d)
Hanya I
e)
I dan II
4.
Maria sedang mencoba memahami konsep PWM (Pulse Width Modulation). Ia ingin membuat sebuah LED yang kecerahannya bisa diatur secara bertahap, dari redup hingga paling terang. Ia menggunakan Arduino Uno, sebuah LED, dan resistor. Ia menghubungkan LED ke pin digital 5 yang memiliki tanda '~', menandakan pin tersebut mendukung PWM. Maria menulis kode dengan menggunakan fungsi `analogWrite()` pada pin 5. Fungsi ini menerima nilai dari 0 hingga 255. Nilai 0 berarti LED mati, dan nilai 255 berarti LED menyala dengan kecerahan maksimal. Maria mencoba memberikan nilai 127 pada fungsi tersebut. Kemudian, ia ingin membuat LED berkedip-kedip dengan kecerahan yang berbeda setiap detiknya.
Jika Maria mengganti fungsi `analogWrite(5, 127)` dengan `digitalWrite(5, HIGH)`, apa yang akan terjadi pada kecerahan LED?
a)
LED akan berkedip-kedip secara acak karena pin 5 bukan pin PWM.
b)
Kecerahan LED akan tetap sama karena kedua fungsi tersebut memiliki efek yang sama.
c)
LED akan menyala dengan kecerahan maksimal karena `digitalWrite(HIGH)` mengirimkan sinyal penuh (5V).
d)
LED akan menyala tetapi kecerahannya akan sangat redup, hampir tidak terlihat.
e)
LED akan mati karena fungsi `digitalWrite(HIGH)` tidak dapat mengatur kecerahan.
5.
Andi, seorang pencinta musik, ingin membuat sebuah kotak musik mini menggunakan Arduino. Ia menggunakan sebuah buzzer dan ingin buzzer tersebut memainkan melodi sederhana. Untuk melakukannya, ia harus mengontrol frekuensi bunyi yang dihasilkan oleh buzzer. Ia tahu bahwa buzzer pasif dapat menghasilkan nada berbeda-beda tergantung pada sinyal yang diberikan. Untuk memprogramnya, ia menggunakan fungsi `tone()` yang memungkinkan Arduino menghasilkan gelombang suara pada frekuensi tertentu. Andi menyadari bahwa fungsi `tone()` tidak menggunakan pin digital biasa, melainkan pin digital yang mendukung fitur PWM.
Penerapan konsep yang harus Andi gunakan untuk membuat melodi dengan nada yang berbeda-beda adalah...
a)
Menggunakan hukum Ohm untuk menghitung frekuensi yang dibutuhkan.
b)
Menggunakan pin analog untuk menghasilkan sinyal suara.
c)
Menggunakan Breadboard untuk mengatur nada-nada tersebut.
d)
Mengubah-ubah nilai resistansi pada buzzer.
e)
Menggunakan teknik PWM (Pulse Width Modulation) untuk mengontrol frekuensi sinyal.
6.
Joko sedang membuat sebuah prototipe robot yang menggunakan motor DC kecil. Motor ini memerlukan arus yang stabil untuk berputar dengan baik. Joko tahu bahwa motor ini membutuhkan arus sebesar 20 mA. Ia menggunakan sumber tegangan sebesar 5V dari Arduino. Untuk mengontrol arus yang masuk ke motor, Joko harus memasang sebuah resistor. Ia mencari tahu bahwa rumus yang tepat untuk menghitung nilai resistansi yang diperlukan adalah Hukum Ohm, yaitu R=V/I, di mana R adalah resistansi, V adalah tegangan, dan I adalah arus. Joko harus memastikan bahwa motornya bekerja pada arus yang tidak melebihi batas amannya. Setelah menghitung, ia menemukan nilai resistansi yang tepat. Joko menyadari bahwa tanpa perhitungan, ia bisa merusak motornya.
Berdasarkan skenario di atas, berapakah nilai resistansi minimum yang harus Joko gunakan untuk membatasi arus yang mengalir ke motor?
a)
500Ω
b)
100Ω
c)
1MΩ
d)
250Ω
e)
1kΩ
7.
Irfan ingin membuat lampu tidur yang berkedip-kedip. Ia menggunakan sebuah LED, resistor, dan Arduino Uno. Ia memasang LED ke pin digital 13 dan menulis kode sederhana menggunakan fungsi `delay()`. Fungsi ini memungkinkan Arduino untuk menunda eksekusi kode selama waktu tertentu (dalam milidetik). Awalnya, Irfan ingin LED menyala selama 1 detik dan mati selama 1 detik. Ia menulis kode `digitalWrite(13, HIGH); delay(1000); digitalWrite(13, LOW); delay(1000);`. Irfan merasa kodenya sudah berhasil. Namun, ia ingin membuat kedipan menjadi lebih cepat, hanya 0,5 detik.
Berdasarkan skenario Irfan, bagaimana ia seharusnya mengubah kode programnya untuk mencapai tujuan tersebut?
a)
Mengganti fungsi `delay()` dengan fungsi `millis()`.
b)
Menghapus kedua fungsi `delay()` dari kode.
c)
Mengganti nilai `delay(1000)` menjadi `delay(500)` pada kedua fungsi.
d)
Mengubah fungsi `digitalWrite(13, HIGH)` menjadi `digitalWrite(13, 500)`.
e)
Mengubah nilai `delay(1000)` menjadi `delay(0.5)`.
8.
Rini dan Doni sedang bekerja sama untuk membuat sebuah proyek sederhana. Rini bertugas merakit rangkaian di breadboard. Ia menghubungkan Arduino Uno ke breadboard menggunakan kabel jumper, kemudian ia memasang sebuah resistor dan sebuah LED. Ia menyadari bahwa breadboard memiliki baris-baris lubang yang terhubung satu sama lain. Ia menghubungkan salah satu kaki resistor ke baris yang sama dengan pin 5V dari Arduino, dan kaki resistor lainnya ke kaki anoda LED. Kaki katoda LED dihubungkan ke baris ground (GND) dari Arduino. Rini tahu bahwa ia tidak boleh menghubungkan komponen secara acak, karena bisa menyebabkan korsleting. Ia juga menyadari bahwa baris vertikal dan horizontal memiliki koneksi internal yang berbeda.
Manakah dari pernyataan berikut yang **benar** mengenai koneksi pada breadboard?
I. Baris lubang horizontal di bagian atas dan bawah breadboard biasanya terhubung secara vertikal.
II. Baris lubang di bagian tengah breadboard terhubung secara horizontal.
III. Untuk menghindari korsleting, komponen yang berbeda harus diletakkan pada baris yang berbeda di breadboard.
a)
Tidak ada pernyataan yang benar
b)
Hanya II
c)
I dan II
d)
Hanya I
e)
I dan III
9.
Roni ingin membuat lampu malam otomatis untuk kamarnya. Lampu ini harus menyala ketika ruangan gelap dan mati ketika ruangan terang. Roni menggunakan sebuah sensor LDR, Arduino Uno, dan sebuah LED. Roni tahu bahwa LDR bekerja dengan prinsip bahwa resistansinya akan berkurang ketika terkena cahaya dan bertambah ketika gelap. Ia menghubungkan LDR ke pin analog A0 dan mengamati nilai yang terbaca melalui Serial Monitor. Ia mendapati bahwa ketika ia menutupi LDR dengan tangan, nilai yang terbaca adalah sekitar 900. Ketika ia menyinari LDR dengan senter, nilai yang terbaca adalah sekitar 150. Roni menulis kode program yang logis untuk menyalakan LED-nya. Ia ingin LED-nya menyala ketika nilai dari LDR lebih dari 500, yang menurutnya adalah ambang batas antara terang dan gelap.
Jika Roni mengubah ambang batas dari 500 menjadi 700, apa yang akan terjadi pada sistemnya?
a)
Arduino akan mengalami kerusakan karena nilai ambang batas terlalu tinggi.
b)
Lampu akan menyala lebih jarang, hanya ketika ruangan sangat gelap.
c)
Lampu akan menyala lebih terang karena nilai ambang batasnya meningkat.
d)
Tidak akan ada perubahan karena nilai 700 masih berada di antara nilai terang dan gelap.
e)
Lampu akan menyala lebih sering, bahkan saat kondisi ruangan tidak terlalu gelap.
10.
Budi, seorang siswa yang tertarik dengan robotika, sedang membuat sebuah robot mini. Ia ingin mengontrol kecepatan putaran motor DC yang ia gunakan. Budi tahu bahwa untuk mengontrol kecepatan motor, ia harus mengatur tegangan yang diberikan ke motor. Ia memutuskan untuk menggunakan teknik PWM (Pulse Width Modulation) pada pin digital yang mendukung PWM. Ia menghubungkan motor ke pin 6 pada Arduino. Ia menggunakan fungsi `analogWrite()` dengan nilai antara 0-255. Nilai 0 akan membuat motor berhenti, sedangkan nilai 255 akan membuat motor berputar dengan kecepatan penuh. Budi mencoba memberikan nilai 127, dan motornya berputar dengan kecepatan setengah penuh. Budi ingin motornya berputar lebih cepat, tetapi tidak dengan kecepatan penuh.
Jika Budi mengubah nilai `analogWrite(6, 127)` menjadi `analogWrite(6, 200)`, apa yang akan terjadi pada kecepatan putaran motor?
a)
Motor akan berputar lebih lambat karena nilai 200 lebih kecil dari 255.
b)
Motor akan berputar lebih cepat dari sebelumnya, tetapi tidak dengan kecepatan penuh.
c)
Motor akan berputar lebih cepat dari sebelumnya dan akan berputar dengan kecepatan penuh.
d)
Motor akan berputar dengan kecepatan yang sama karena nilai tersebut masih berada dalam rentang yang sama.
e)
Motor akan berhenti karena nilai 200 terlalu tinggi untuk pin PWM.
11.
Candra sedang merakit alarm sederhana. Ia menggunakan sebuah sensor gerak (PIR Sensor) dan sebuah buzzer. Sensor gerak akan mendeteksi pergerakan, dan buzzer akan berbunyi sebagai peringatan. Candra menghubungkan sensor gerak ke pin digital 2 dan buzzer ke pin digital 8. Ia menulis kode program. Dalam programnya, ia menggunakan fungsi `digitalRead()` untuk membaca status dari sensor gerak. Jika sensor gerak mendeteksi gerakan, pin 2 akan menjadi HIGH. Candra ingin buzzer berbunyi selama 3 detik setiap kali ada gerakan.
Berikut adalah beberapa pernyataan mengenai proyek Candra. Manakah pernyataan yang **benar**?
I. Sensor gerak mengirimkan sinyal digital (HIGH atau LOW) ke Arduino.
II. Untuk membuat buzzer berbunyi, Candra harus menggunakan fungsi `analogWrite()`.
III. Pin digital 2 dan 8 cocok untuk proyek ini.
a)
Hanya I
b)
I dan III
c)
I dan II
d)
II dan III
e)
Hanya II
12.
Devin, seorang siswa yang peduli lingkungan, sedang merancang robot penyiram tanaman. Robot ini akan bergerak dari satu pot ke pot lain dan menyiramnya ketika mendeteksi kelembaban tanah yang rendah. Devin menggunakan Arduino Uno sebagai otak robot, motor servo untuk menggerakkan nozzle air, dan sensor kelembaban tanah. Devin ingin motor servo bergerak 90 derajat ke kanan dan ke kiri setiap kali menyiram. Ia menggunakan pin digital yang mendukung PWM untuk mengontrol motor servo karena gerakan sudut memerlukan sinyal PWM. Devin menyadari bahwa jika ia tidak menggunakan kabel jumper dengan benar, robotnya tidak akan berfungsi sama sekali. Ia memasang sensor kelembaban pada breadboard dan menyambungkannya ke pin analog A0 pada Arduino.
Dari skenario di atas, manakah fungsi dari sensor kelembaban tanah?
a)
Mengubah kelembaban tanah menjadi sinyal analog yang dapat dibaca oleh Arduino.
b)
Menyiram tanaman secara otomatis.
c)
Memberikan tegangan kepada Arduino.
d)
Menyalakan motor servo saat tanah kering.
e)
Mengukur suhu tanah.
13.
Jodi sedang membuat sebuah proyek pengukur jarak. Ia menggunakan sebuah sensor ultrasonik yang dapat mengukur jarak dari suatu benda. Sensor ini memiliki dua pin: `Trig` (trigger) dan `Echo` (echo). Pin `Trig` mengirimkan sinyal ultrasonik, dan pin `Echo` menerima sinyal pantulannya. Waktu yang diperlukan untuk sinyal kembali digunakan untuk menghitung jarak. Jodi menghubungkan pin `Trig` ke pin digital 7 dan pin `Echo` ke pin digital 8 pada Arduino. Ia tahu bahwa ia harus memprogram pin `Trig` sebagai output dan pin `Echo` sebagai input. Jodi menulis kodenya dan berhasil membuat alat pengukur jarak yang dapat menampilkan hasil di Serial Monitor. Ia juga memasang sebuah buzzer yang akan berbunyi jika jarak yang terukur kurang dari 10 cm.
Dalam konteks proyek ini, manakah dari pernyataan berikut yang **benar** mengenai fungsi dari pin `Trig` dan `Echo`?
I. Pin `Trig` berfungsi sebagai output, mengirimkan sinyal untuk memulai pengukuran.
II. Pin `Echo` berfungsi sebagai input, menerima sinyal pantulan.
III. Kedua pin tersebut adalah pin digital, sehingga tidak dapat mengukur jarak.
a)
I dan III
b)
II dan III
c)
Hanya II
d)
Hanya I
e)
I dan II
14.
Doni sedang membuat kipas angin otomatis yang akan menyala ketika suhu ruangan naik. Ia menggunakan sebuah sensor suhu (LM35), sebuah motor DC kecil, dan Arduino Uno. Ia tahu bahwa sensor LM35 adalah sensor analog, sehingga ia menghubungkannya ke pin analog A0. Untuk mengontrol motor DC, ia menggunakan sebuah transistor, yang berfungsi sebagai saklar elektronik yang dikendalikan oleh Arduino. Doni menghubungkan basis transistor ke pin digital 9 dan motor ke pin tersebut. Doni menulis kode program. Ia membaca nilai dari sensor LM35 dan, jika nilai tersebut di atas ambang batas tertentu, ia akan menyalakan motor dengan kecepatan penuh. Doni berhasil membuat kipasnya menyala, tetapi ia ingin kipasnya memiliki kecepatan yang bervariasi tergantung pada suhu.
Dalam skenario ini, untuk mengontrol kecepatan motor secara bervariasi, konsep apa yang harus Doni terapkan?
a)
Menggunakan konsep PWM (Pulse Width Modulation) pada pin digital 9.
b)
Menggunakan resistor yang berbeda untuk setiap kecepatan.
c)
Mengubah pin digital 9 menjadi pin analog.
d)
Menggunakan pin digital 9 untuk mengaktifkan motor dengan `digitalWrite(HIGH)` dan `digitalWrite(LOW)`.
e)
Mengubah frekuensi motor dengan mengubah delay.
15.
Fadil sedang mencoba membuat sebuah rangkaian yang dapat mengubah kecerahan LED secara otomatis. Ia ingin LED menjadi sangat terang pada awalnya dan kemudian redup secara perlahan hingga mati. Ia tahu bahwa konsep PWM adalah kunci untuk mencapai hal ini. Fadil menggunakan Arduino Uno, sebuah LED, dan resistor. Ia menghubungkan LED ke pin digital 10, yang merupakan salah satu pin PWM pada Arduino. Fadil kemudian menulis kode. Ia menggunakan loop `for` untuk mengubah nilai PWM dari 255 hingga 0 secara bertahap. Ia menggunakan fungsi `analogWrite()` untuk menerapkan nilai PWM tersebut ke pin LED.
Dalam skenario ini, jika Fadil menggunakan pin digital 12 alih-alih pin 10(sudah diubah kodenya), apa yang akan terjadi pada proyeknya?
a)
LED tidak akan menyala sama sekali.
b)
Kode program akan mengalami error saat diunggah ke Arduino.
c)
LED akan tetap berfungsi dengan normal karena pin 12 juga pin PWM.
d)
LED akan menyala dan mati secara tiba-tiba tanpa perubahan kecerahan secara bertahap.
e)
Arduino akan mengalami korsleting karena pin 12 tidak cocok untuk PWM.
16.
Andi ingin membuat prototipe lampu lalu lintas mini. Ia menggunakan tiga buah LED (merah, kuning, hijau) dan tiga buah resistor 220 ohm. Andi menghubungkan setiap LED ke pin digital yang berbeda: LED merah ke pin 13, LED kuning ke pin 12, dan LED hijau ke pin 11. Ia juga memasang resistor secara seri dengan masing-masing LED untuk membatasi arus. Andi menulis kode program dengan menggunakan fungsi `digitalWrite()` untuk menyalakan dan mematikan LED secara bergantian. Ia menggunakan `delay()` selama beberapa detik untuk simulasi. Andi menyadari bahwa resistor adalah komponen penting untuk mencegah LED rusak.
Jika Andi secara tidak sengaja melewatkan pemasangan resistor pada LED hijau, apa yang paling mungkin terjadi pada LED tersebut?
a)
LED hijau akan menyala tetapi dengan kecerahan yang sangat redup.
b)
LED hijau akan menyala normal, tetapi Arduino akan mengalami korsleting.
c)
LED hijau akan menyala kedap-kedip
d)
Lampu LED tidak akan menyala sama sekali.
e)
LED hijau akan mengalami kerusakan atau terbakar karena arus yang berlebihan.
17.
Pada pelajaran informatika, Tita mendapatkan tugas untuk membuat sebuah sistem penjaga ruangan sederhana. Sistem ini akan menyalakan alarm (buzzer) ketika ada seseorang yang memasuki ruangan. Tita menggunakan komponen-komponen berikut: Arduino Uno, sebuah sensor gerak (PIR), dan sebuah buzzer. Tita merakit komponen-komponennya pada breadboard dan menyambungkannya menggunakan kabel jumper. Tita menghubungkan pin output dari sensor gerak ke pin digital 2 pada Arduino, dan pin dari buzzer ke pin digital 8. Setelah merakitnya, Tita menulis program untuk membaca kondisi sensor. Jika sensor mendeteksi gerakan, Tita akan membuat buzzer berbunyi selama 5 detik. Tita tahu bahwa setiap komponen memiliki fungsi yang berbeda dan tidak dapat saling ditukar fungsinya.
Berdasarkan cerita di atas, manakah pernyataan yang benar?
I. Sensor gerak berfungsi sebagai input, memberikan data ke Arduino.
II. Buzzer berfungsi sebagai output, menghasilkan bunyi berdasarkan perintah Arduino.
III. Arduino Uno berfungsi sebagai otak yang memproses data dari sensor dan mengontrol buzzer.
a)
I dan II
b)
II dan III
c)
I dan III
d)
Hanya I
e)
I, II, dan III
18.
Sita sedang menguji sebuah resistor untuk proyeknya. Ia menggunakan sebuah power supply yang dapat diatur tegangannya. Ia mengukur arus yang mengalir melalui resistor dengan AVO meter. Saat ia memberikan tegangan 5V, ia mengukur arus sebesar 25 mA. Sita ingin memastikan bahwa data yang ia dapatkan konsisten dengan Hukum Ohm. Ia ingat bahwa Hukum Ohm menyatakan hubungan antara tegangan (V), arus (I), dan resistansi (R) dengan rumus V=I×R. Sita kemudian memberikan tegangan 10V dan mengukur arus kembali.
Dengan asumsi nilai resistansi resistor tetap, berapakah arus yang seharusnya diukur oleh Sita saat ia memberikan tegangan 10V?
a)
25 mA
b)
5 mA
c)
12.5 mA
d)
50 mA
e)
100 mA
19.
Rio sedang belajar tentang pemrograman dasar Arduino. Ia ingin menguasai bagaimana cara membuat LED menyala dan mati. Ia telah merakit rangkaian sederhana yang terdiri dari LED, resistor, dan Arduino Uno. LED terhubung ke pin digital 9. Rio menulis kode program yang akan menyalakan LED selama 2 detik, lalu mematikannya selama 1 detik, dan mengulanginya terus menerus. Ia menggunakan fungsi `digitalWrite()` dan `delay()`. Ia juga sudah menyertakan baris kode `pinMode(9, OUTPUT)` di dalam fungsi `setup()` untuk mengatur pin 9 sebagai output.
Manakah dari baris kode berikut yang paling tepat untuk mewujudkan skenario yang diinginkan Rio?
a)
`analogWrite(9, 255); delay(2000); analogWrite(9, 0); delay(1000);`
b)
`digitalWrite(9, LOW); delay(2000); digitalWrite(9, HIGH); delay(1000);`
c)
`digitalWrite(9, 2000); digitalWrite(9, 1000);`
d)
`digitalWrite(9, HIGH); delay(2000); digitalWrite(9, LOW); delay(1000);`
e)
`digitalWrite(9, HIGH); delay(1000); digitalWrite(9, LOW); delay(2000);`
20.
Siswa-siswa kelas 12 sedang merancang sebuah sistem pintu otomatis sederhana. Mereka menggunakan sebuah sensor jarak ultrasonik dan sebuah motor servo. Motor servo akan membuka pintu saat sensor jarak mendeteksi adanya objek (seseorang) dalam jarak 50 cm. Sensor ultrasonik mengukur jarak, dan motor servo akan bergerak 90 derajat untuk membuka pintu. Mereka tahu bahwa motor servo membutuhkan sinyal PWM untuk mengatur posisinya. Mereka menghubungkan pin sensor jarak dan motor servo ke pin digital pada Arduino. Mereka juga menggunakan kabel jumper untuk menghubungkan semuanya di breadboard.
Dalam konteks proyek ini, manakah yang merupakan peran dari motor servo?
a)
Sebagai sumber daya (power supply) untuk menggerakkan komponen lain.
b)
Sebagai resistor yang membatasi arus listrik.
c)
Sebagai konduktor yang menghubungkan komponen-komponen.
d)
Sebagai input yang memberikan informasi jarak ke Arduino.
e)
Sebagai output yang melakukan aksi fisik, yaitu membuka pintu.
21.
Adi ingin membuat sistem pemanas otomatis untuk akuarium ikannya. Sistem ini akan menyalakan pemanas (elemen pemanas) ketika suhu air turun di bawah 25 derajat Celcius. Adi menggunakan sebuah sensor suhu digital (DHT11), sebuah relay, dan sebuah pemanas. Ia menghubungkan sensor DHT11 ke pin digital 2, dan relay ke pin digital 3. Ia tahu bahwa relay berfungsi sebagai saklar elektronik yang dapat mengontrol perangkat bertegangan tinggi seperti pemanas akuarium. Adi berhasil membuat program yang membaca suhu dari DHT11. Ia ingin membuat buzzer berbunyi jika suhu terlalu panas (di atas 30 derajat Celcius) untuk mengingatkannya.
Dalam skenario ini, untuk menambahkan buzzer ke dalam sistem yang sudah ada, apa yang harus Adi lakukan?
a)
Mengganti sensor suhu dengan sensor cahaya.
b)
Menghubungkan buzzer ke pin digital mana pun, lalu menggunakan `digitalWrite(HIGH)`.
c)
Menghubungkan buzzer ke relay yang sama dengan pemanas.
d)
Menghubungkan buzzer ke pin digital PWM, kemudian membuat program yang memanggil fungsi `tone()`.
e)
Menghubungkan buzzer ke salah satu pin analog.
22.
Sofi sedang membuat proyek pengukur jarak menggunakan sensor ultrasonik (HC-SR04), sebuah breadboard, dan Arduino. Ia menempatkan sensor di breadboard dan menghubungkannya dengan Arduino menggunakan kabel jumper. Pin `VCC` sensor dihubungkan ke pin 5V Arduino, pin `GND` ke pin `GND`, pin `Trig` ke pin digital 7, dan pin `Echo` ke pin digital 8. Sofi menulis kode program di Arduino IDE. Di dalam fungsi `loop()`, ia menulis kode untuk mengirim pulsa ke pin `Trig` dan mengukur durasi pulsa yang diterima oleh pin `Echo`. Setelah itu, ia menghitung jarak menggunakan rumus jarak=(durasi×0.034)/2, di mana 0.034 adalah kecepatan suara dalam cm/mikrodetik.
Dari pernyataan berikut, manakah yang **benar** mengenai fungsi breadboard dalam proyek ini?
I. Breadboard menyediakan jalur koneksi sementara untuk komponen elektronik.
II. Breadboard mengubah sinyal digital menjadi sinyal analog.
III. Breadboard memiliki bagian yang terhubung secara horizontal dan vertikal.
a)
II dan III
b)
I dan II
c)
Hanya II
d)
I dan III
e)
Hanya I
23.
Bayu ingin membuat kipas yang kecepatannya dapat diatur berdasarkan cahaya di ruangan. Ketika ruangan terang, kipas akan berputar lebih cepat. Ketika ruangan gelap, kipas akan berputar lebih lambat. Bayu menggunakan sebuah sensor LDR, sebuah motor DC, sebuah transistor, dan Arduino Uno. Ia menghubungkan sensor LDR ke pin analog A0 dan motor DC ke pin digital 6 yang mendukung PWM. Bayu menulis program untuk membaca nilai dari LDR (0-1023) dan memetakan nilai tersebut ke nilai PWM (0-255). Ia menggunakan fungsi `analogRead()` untuk membaca sensor LDR dan fungsi `analogWrite()` untuk mengontrol kecepatan motor.
Berdasarkan skenario ini, jika Bayu ingin kipas berputar lebih cepat saat ruangan gelap, apa yang harus ia ubah dalam kodenya?
a)
Mengubah pin motor DC dari pin 6 ke pin 9.
b)
Mengubah fungsi `analogRead()` menjadi `digitalRead()`.
c)
Mengganti fungsi `analogWrite()` dengan `digitalWrite()`.
d)
Mengganti LDR dengan resistor tetap.
e)
Mengubah logika pemetaan nilai dari LDR ke nilai PWM menjadi terbalik.
24.
Nabila sedang merancang sebuah sistem peringatan dini kebocoran gas. Ia menggunakan sebuah sensor gas, sebuah buzzer, dan sebuah LED. Sensor gas akan mendeteksi kebocoran, LED akan menyala merah sebagai peringatan visual, dan buzzer akan berbunyi sebagai peringatan audio. Nabila menghubungkan sensor gas, LED, dan buzzer ke Arduino. Nabila tahu bahwa sensor gas memberikan sinyal analog. Ia menghubungkan sensor gas ke pin A0. LED dan buzzer dihubungkan ke pin digital. Nabila menulis kode program. Ia ingin LED berkedip dan buzzer berbunyi terus menerus jika ada kebocoran gas. Ia menggunakan loop `while` untuk kondisi ini.
Dalam skenario ini, manakah yang merupakan peran dari LED dan buzzer?
a)
Keduanya berfungsi sebagai komponen pasif yang tidak membutuhkan daya.
b)
Keduanya berfungsi sebagai input yang memberikan data ke Arduino.
c)
Keduanya berfungsi sebagai sensor yang mendeteksi perubahan.
d)
LED dan buzzer berfungsi sebagai otak yang mengontrol sistem.
e)
LED berfungsi sebagai output visual, dan buzzer sebagai output audio.
25.
Daniel ingin membuat sebuah alat sederhana untuk mengukur intensitas cahaya. Ia menggunakan sebuah sensor LDR dan sebuah Arduino Uno. Ia menghubungkan LDR ke pin analog A0 dan menulis kode program untuk membaca nilai dari sensor tersebut. Daniel tahu bahwa nilai yang terbaca dari LDR adalah nilai analog antara 0 hingga 1023. Ia ingin mengkonversi nilai ini menjadi tegangan (Volt) agar lebih mudah dipahami. Daniel ingat bahwa nilai 1023 merepresentasikan tegangan 5V. Ia juga tahu bahwa sensor LDR tidak langsung memberikan tegangan, melainkan resistansinya berubah, dan tegangan diukur melalui rangkaian pembagi tegangan (voltage divider).
Jika nilai yang terbaca dari sensor LDR adalah 767, berapakah tegangan yang terukur pada pin analog A0?
a)
3.0 V
b)
3.75 V
c)
4.5 V
d)
2.5 V
e)
5.0 V
100 %
