Nama :
Ni’am Tamami 7108040016 (Author)
David Yanuar 7108040017
TUJUAN
Setelah melakukan percobaan ini, mahasiswa diharapkan mampu :
- Dapat menjelaskan definisi sistem multi-state berdasar waktu
- Dapat menjelaskan definisi sistem multi-state berdasar input dan waktu
- Dapat membuat program dengan sistem multi-state
DASAR TEORI
Multi state adalah state yang berpindah dari satu state ke state yang lain dan dipengaruhi oleh :
Waktu
Ciri dari sistem ini adalah, perpindahan antar state (keadaan) hanya bergantung pada jalannya waktu.
Sebagai contoh, sebuah sistem yang mungkin dimulai dari keadaan A, secara berulang menjalankan subroutine1, selama 10 detik. Kemudian pindah ke keadaan B selama 5 detik untuk mengerjakan subroutine2. Selanjutnya dapat pindah ke keadaan A kembali, dan seterusnya.
Sistem kontrol lampu lalu lintas adalah contohnya.
Masukan
Sistem ini sangat jarang dipakai,dimana perpindahan antar keadaan hanya bergantung pada input sistem.
Sebagai contoh, sebuah sistem hanya akan pindah dari keadaan A ke keadaan B jika sebuah input tertentu diterima. Jika input tidak diterima maka sistem akan terus berada di keadaan A selamanya.
Karena sistem ini tidak memiliki konsep waktu maka tidak ada cara untuk menerapkan timeout atau sejenisnya. Sistem seperti ini tidak dibahas dalam modul.
Waktu dan masukan
Ini adalah bentuk sistem yang lebih dikenal, dimana perpindahan antar keadaan bergantung pada jalannya waktu dan input dari sistem.
Sebagai contoh, sebuah sistem mungkin hanya akan pindah dari keadaan A ke keadaan B jika sebuah input tertentu diterima dalam waktu X detik.
Mesin cuci tadi adalah contoh dari sistem ini, sepertin halnya sistem alarm anti-pencuri bahkan sampai kepada sistem autopilot pada pesawat terbang.
Gambar 1. State candy vending machine
LANGKAH-LANGKAH PERCOBAAN
Siapkan minimum system mikrokontroller ATMega 8535
LCD 16 x 2 yang terhubung pada port B
8 Switch, terhubung ke port-C dengan 4 push-button terhubung paralel dengan 4-LSB pada switch.
8 LED, terhubung ke port-D
Buka software “ Eclipse ”
Ketikkan program dibawah ini :
void Traffic_Light_Update(void)
{
switch(Kondisi_Lampu)
{
case merah:
{
LED_MERAH = ON;
LED_KUNING = OFF;
LED_HIJAU = OFF;
if (++Time_in_state==LAMA_MERAH*20)
{
Kondisi_Lampu=kuning;
Time_in_state=0;
}
break;
}
case kuning:
{
LED_MERAH = OFF;
LED_KUNING = ON;
LED_HIJAU = OFF;
if (++Time_in_state==LAMA_KUNING*20)
{
Kondisi_Lampu=hijau;
Time_in_state=0;
}
break;
}
case hijau:
{
LED_MERAH = OFF;
LED_KUNING = OFF;
LED_HIJAU = ON;
if (++Time_in_state==LAMA_HIJAU*20)
{
Kondisi_Lampu=merah;
Time_in_state=0;
}
break;
}
}
}
HASIL PERCOBAAN
ANALISA & KESIMPULAN
Berdasarkan percobaan yang telah dilakukan, maka dapat dilakukan analisa data
sebagai berikut :
Ada beberapa macam kategori multi state secara umum, diantaranya adalah sistem multi state berdasarkan waktu, sistem multi state berdasarkan masukan, dan sistem multi state berdasarkan waktu dan masukan. Pada percobaan ini, kita telah mencoba untuk membuat sistem multi state berdasarkan waktu, sistem multi state berdasarkan waktu dan masukan.
Percobaan pertama adalah membuat suatu sistem lampu lalu lintas, dimana pergantian nyala lampu lalu lintas dengan menggunakan waktu tertentu.
if (++Time_in_state==LAMA_MERAH*20)
if (++Time_in_state==LAMA_KUNING*20)
if (++Time_in_state==LAMA_HIJAU*20)
if (++Time_in_state==LAMA_MERAH*20)
{
Kondisi_Lampu=kuning;
Time_in_state=0;
}
break;
dimana jika lama waktu lampu merah belum terpenuhi maka program akan kembali pada case lampu warna merah. Setelah terpenuhi maka program akan menuju ke case lampu warna kuning sesuai pada kondisi program tersebut.
Percobaan ke-dua adalah program system alarm security, dimana fungsinya adalah memasukkan pasword yang sudah disetting sebelumnya (dalam program ini password telah disetting berupa urutan 1234), pada LCD akan memunculkan karakter “ **** ” atau dalam kehidupan nyata pada aplikasinya bila salah memasukkan password maka alarm akan menyala lalu tidak dapat digunakan lagi kita harus mereset dahulu dengan tombol reset yang sudah ada baru kita dapat memasukkan pasword kembali. Jika password yang kita masukan benar maka pada LCD akan ditampilkan tulisan ” Access Granted ” dan jika salah, akan menampilkan tulisa “ Access Denied “ pada LCD.
Berdasarkan percobaan yang telah dilakukan, maka dapat ditarik kesimpulan, sebagai berikut :
1. Multi State adalah state yang berpindah dari satu state ke state yang lain, dan dipengaruhi oleh :
- Multi State Masukan
- Multi State Waktu
2. Fungsi dari multi-state adalah cara memrogram suatu device dengan benar dan rapi serta ringkas, sehingga dapat memudahkan kita dalam melakukan pemrograman ulang










































