Laporan Akhir 1 Modul 2
(Percobaan 4)
- Rangkai sesuai gambar percobaan dengan inputnya yaitu potensiometer dan outputnya servo serta buzzer.
-
Hubungkan kabel jumper ke potensiometer, servo, dan buzzer sesuai pin pada program.
-
Buatlah program dengan konfigurasi pin input (potensiometer di GP26) dan output (servo di GP15 dan buzzer di GP14).
-
Upload program dan simpan di Raspberry Pi Pico yang telah dirangkai.
-
Putar potensiometer dan amati perubahan sudut servo.
-
Buzzer akan menyala saat nilai potensiometer melewati batas tertentu.
3. Rangkaian Simulasi dan Prinsip Kerja
[Kembali]
Prinsip Kerja :
4. Flowchart dan Listing Program
[Kembali]
Flowchart :
Listing Program :
from machine import Pin, PWM, ADC
from time import sleep
import utime
# Inisialisasi
pot = ADC(26) # GP26 = ADC0
servo = PWM(Pin(16)) # GP16 untuk servo
buzzer = PWM(Pin(14)) # GP14 untuk buzzer
# Konfigurasi PWM
servo.freq(50) # 50 Hz untuk servo
buzzer.freq(1000) # Awal frekuensi buzzer
# Fungsi untuk mapping nilai
def map_value(value, in_min, in_max, out_min, out_max):
return int((value - in_min) * (out_max - out_min) / (in_max - in_min) + out_min)
while True:
val = pot.read_u16() # Nilai ADC 16-bit (0 - 65535)
# === Servo Motor ===
pot_value = val
angle = map_value(pot_value, 0, 65535, 0, 180)
duty = map_value(angle, 0, 180, 1500, 7500)
servo.duty_u16(duty)
# Debugging output
print(f"Pot Value: {pot_value}, Angle: {angle}, Duty: {duty}")
# === Buzzer ===
freq = int(200 + (val / 65535) * (2000 - 200))
buzzer.freq(freq)
buzzer.duty_u16(30000)
sleep(0.05)
5. Analisa
[Kembali]
6. Video Demo [Kembali]
7. Download File
[Kembali]
Datasheet Buzzer Download
Datasheet Motor Servo Download
Tidak ada komentar:
Posting Komentar