Kembali

Pertemuan 9: Simulasi Gerhana Matahari (Komunikasi Broadcast)


Pertemuan 9: Simulasi Gerhana Matahari (Komunikasi Broadcast)

Alokasi Waktu: 2 Jam Pelajaran (2 x 40 Menit) Tema/Materi Integrasi: Ilmu Pengetahuan Alam (Fase Gerhana Matahari) Target Peserta Didik: Siswa Kelas 8 (Reguler)

A. Tujuan Pembelajaran

Setelah mengikuti pembelajaran ini, siswa diharapkan mampu:

  1. Memahami konsep komunikasi antar-objek (message passing) dalam pemrograman berbasis kejadian (Event-Driven Programming).

  2. Menggunakan Block Event broadcast [message] untuk mengirim sinyal pemicu ke seluruh bagian programme.

  3. Menggunakan Block Event when I receive [message] untuk merespon sinyal yang dikirimkan oleh sprite lain.

  4. Mensinkronkan animasi pergerakan objek (Bulan) dengan perubahan efek visual latar belakang (langit menggelap) secara tepat waktu.


B. Persiapan Pembelajaran

  • Perangkat: PC/Laptop dengan aplikasi Scratch 3.0.

  • Media: Proyektor untuk mengilustrasikan analogi "Walkie-Talkie".

  • Bahan Ajar: Lembar Kerja Peserta Didik (LKPD) Pertemuan 9.


C. Kegiatan Pembelajaran

1. Kegiatan Pendahuluan (15 Menit)

  • Apersepsi: Membahas fenomena alam. "Apa yang terjadi saat Gerhana Matahari Total? Ya, langit siang hari tiba-tiba menjadi gelap seperti malam karena cahaya Matahari terhalang oleh Bulan."

  • Koneksi Pemrograman: "Di Scratch, bagaimana cara Latar Belakang (Langit) tahu bahwa Bulan sudah berada tepat di depan Matahari sehingga ia harus berubah menjadi gelap? Mereka harus 'berkomunikasi'. Hari ini kita akan menggunakan fitur 'Broadcast' yang bekerja persis seperti Walkie-Talkie untuk mengirim pesan rahasia antar karakter."

  • Penyampaian Tujuan: Proyek hari ini adalah menggerakkan Bulan melewati Matahari. Saat menutupi Matahari, Bulan akan berteriak melalui Walkie-Talkie, dan panggung akan merespon dengan menggelapkan layar.

2. Kegiatan Inti (50 Menit)

  • Penjelasan Konsep Broadcast (10 Menit):

    • Mendemonstrasikan kategori Events (kuning).

    • Menjelaskan bahwa broadcast adalah pengirim (Transmitter), dan when I receive adalah penerima (Receiver). Satu pesan yang dikirim bisa ditangkap oleh banyak sprite sekaligus.

  • Praktik Mandiri Siswa - Proyek "Simulasi Gerhana" (40 Menit):

    • Siswa merakit animasi sesuai panduan LKPD.

    • Guru berkeliling, membantu siswa memahami logika deteksi posisi: "Kapan gerhana terjadi? Saat Bulan bersentuhan dengan Matahari." Siswa akan memadukan Sensing (touching) yang dipelajari sebelumnya dengan Broadcast yang baru.

3. Kegiatan Penutup (15 Menit)

  • Eksplorasi Lanjutan: Meminta siswa menambahkan sprite hewan (misal: burung kakatua atau kelelawar). "Saat pesan 'Gerhana' diterima, buat burungnya bersembunyi atau kelelawarnya muncul!"

  • Refleksi: "Mengapa kita tidak menggabungkan kode menggelapkan langit langsung di dalam sprite Bulan?" (Jawaban: Karena kode efek visual panggung/latar belakang hanya bisa dikontrol secara optimal oleh Stage itu sendiri, sehingga Bulan harus menyuruh Stage yang melakukannya).

  • Penyimpanan File: Menyimpan hasil proyek dengan format nama Nama_Kelas_Pertemuan9.

  • Penutup: Salam dan doa penutup.


D. Lembar Kerja Peserta Didik (LKPD) / Panduan Proyek

Judul Proyek: Simulasi Gerhana Matahari Misi: Ciptakan fenomena alam langka! Gerakkan Bulan dari sisi kiri ke sisi kanan layar. Ketika Bulan tepat berada di atas Matahari, Bulan harus mengirim pesan rahasia agar langit siang berubah menjadi gelap gulita.

Langkah 1: Menyiapkan Panggung Siang Hari

  1. Hapus Sprite kucing.

  2. Tambahkan Backdrop langit siang hari (contoh: Blue Sky).

  3. Tambahkan Sprite Sun (Matahari). Letakkan persis di tengah layar (X: 0, Y: 0).

  4. Tambahkan Sprite yang bentuknya bulat seperti Bulan (Kamu bisa menggunakan Sprite bola biasa lalu ubah warnanya menjadi abu-abu gelap, atau cari Sprite yang menyerupai planet). Letakkan Bulan di ujung kiri layar.

Langkah 2: Menggerakkan Bulan Membelah Langit

Bulan harus bergerak perlahan dari kiri ke kanan.

  1. Klik Sprite Bulan.

  2. Rangkai kode pergerakan:

    • when [Green Flag] clicked

    • go to x: -200 y: 0 (Titik awal di kiri layar)

    • forever

    • (Di dalam forever) -> change x by 2 (Bergerak ke kanan perlahan)

(Uji coba: Bulan sekarang akan melintas lurus melewati Matahari).

Langkah 3: Mengirim Sinyal Gerhana (Broadcast)

Kita harus memprogram agar Bulan mendeteksi Matahari dan mengirim peringatan!

  1. Masih di Sprite Bulan, tambahkan logika if-then di dalam blok forever (di bawah change x by 2).

  2. Masukkan blok deteksi tabrakan: if <touching [Sun]?> then.

  3. Buka kategori Events (kuning), tarik blok broadcast [message1] dan masukkan ke dalam celah If.

  4. Klik tulisan message1, pilih New Message..., lalu ketik "Gerhana". Klik OK.

(Sekarang Bulan sudah mengirim pesan "Gerhana" saat menyentuh Matahari, tapi belum ada yang meresponnya).

Langkah 4: Panggung Merespon Sinyal (Receive & Effect)

Panggung (Stage) bertugas meredupkan cahayanya saat menerima pesan.

  1. Klik area Stage / Backdrop di pojok kanan paling bawah layar untuk memprogram latar belakang.

  2. Buka kategori Events, ambil blok when I receive [Gerhana].

  3. Buka kategori Looks (ungu), ambil blok repeat 10 (dari kategori Control) dan change [colour] effect by 25.

  4. Ubah pengaturan blok ungunya menjadi change [brightness] effect by -10. (Brightness = kecerahan. Nilai minus berarti semakin gelap).

  5. PENTING: Langit harus kembali terang saat game diulang. Masukkan blok clear graphic effects di bawah when [Green Flag] clicked pada area Stage.

Kode Akhir Keseluruhan (Referensi):

Kode untuk Sprite Bulan:

Plaintext
when [Green Flag] clicked
go to x: -200 y: 0
forever
  change x by 2
  if <touching [Sun]?> then
    broadcast [Gerhana]
  end
end

Kode untuk Stage / Latar Belakang:

Plaintext
when [Green Flag] clicked
clear graphic effects

when I receive [Gerhana]
repeat 10
  change [brightness] effect by -5
  wait 0.1 seconds
end

(Tambahkan wait sedikit agar proses menggelapnya lebih halus dan dramatis).

E. Rubrik Penilaian (Asesmen Formatif)

Kriteria Penilaian

Berkembang (1)

Cukup (2)

Sangat Baik (3)

Penerapan Broadcast

Belum menggunakan broadcast. Efek gelap ditaruh di Sprite Bulan sehingga yang menjadi gelap adalah Bulannya, bukan langitnya.

Membuat dan mengirim message Gerhana, namun diletakkan di luar struktur If-Then sehingga langit gelap sejak awal.

Meletakkan blok broadcast dengan tepat di dalam kondisi If <touching Sun>, memastikan pesan hanya terkirim di momen yang pas.

Respon Receiver

Stage tidak memiliki blok when I receive.

Menggunakan when I receive namun menggunakan transisi backdrop kasar (pergantian gambar tiba-tiba).

Menggunakan efek brightness yang dimasukkan ke dalam blok perulangan (repeat) untuk menghasilkan transisi langit menggelap yang cinematic dan halus.

Inisialisasi Sistem

Game berjalan sekali, namun jika diulang (restart), layar tetap gelap permanen.

Sebagian objek berhasil di-reset, tapi posisi awal Bulan melenceng.

Menggunakan blok clear graphic effects pada Stage dan titik kordinat absolut pada Bulan setiap kali bendera hijau ditekan.

Sudah selesai memahami materi ini?
πŸš€ Mulai Uji Pemahaman Anda