Sistem maklum balas (feedback) menggunakan penderia untuk menyemak kesan output sendiri, kemudian melaras. Urutan tetap menjalankan langkah yang sama dalam susunan yang sama walau apa pun berlaku. Ujiannya mudah: adakah keputusan seterusnya bergantung pada bacaan baharu?
Lanjutan: gelung maklum balas sedikit melangkaui senarai sukatan Cambridge. Ia dimasukkan untuk membantu anda memahami bagaimana sistem automatik membetulkan dirinya.
Pelajaran ini membina atas menyurih peringkat sistem dan berada dalam automasi dan sistem baharu. Senario peperiksaan sering memerihalkan satu sistem dan bertanya sama ada ia menggunakan maklum balas, jadi tabiat mencari bacaan itu berharga.
Bagaimana membezakan keduanya?
Tanya tiga soalan tentang senario:
- Adakah penderia yang mengukur perkara yang dikawal?
- Adakah pemproses menggunakan bacaan itu untuk memilih tindakan seterusnya?
- Adakah tindakan itu mengubah apa yang dibaca penderia seterusnya?
Jika ketiga-tiga jawapan ya, ia sistem maklum balas. Jika tindakan mengikut jadual atau pembilang dan mengabaikan bacaan penderia, ia urutan tetap.
Contoh berlangkah
Sebuah bilik bermula pada 18 °C. Sasarannya 22 °C. Pada setiap langkah, pemanas yang ON menaikkan suhu 2 °C, dan pemanas yang OFF membiarkan suhu turun 1 °C.
Versi maklum balas. Pemproses membaca suhu dan menggunakan IF temp < 22 THEN heater ← "ON" ELSE heater ← "OFF".
temp ← 18
FOR step ← 1 TO 6
IF temp < 22
THEN
heater ← "ON"
newTemp ← temp + 2
ELSE
heater ← "OFF"
newTemp ← temp - 1
ENDIF
OUTPUT step, temp, heater, newTemp
temp ← newTemp
NEXT step
| step | temp read | heater | temp after |
|---|---|---|---|
| 1 | 18 | ON | 20 |
| 2 | 20 | ON | 22 |
| 3 | 22 | OFF | 21 |
| 4 | 21 | ON | 23 |
| 5 | 23 | OFF | 22 |
| 6 | 22 | OFF | 21 |
Versi tetap. Pemanas ON pada langkah 1 hingga 3 dan OFF pada langkah 4 hingga 6, tanpa mengira suhu.
| step | temp read | heater | temp after |
|---|---|---|---|
| 1 | 18 | ON | 20 |
| 2 | 20 | ON | 22 |
| 3 | 22 | ON | 24 |
| 4 | 24 | OFF | 23 |
| 5 | 23 | OFF | 22 |
| 6 | 22 | OFF | 21 |
Kedua-dua larian berakhir pada 21 °C, tetapi versi tetap menolak bilik ke 24 °C, dua darjah melebihi sasaran, kerana ia tidak pernah melihat bacaan. Versi maklum balas kekal dalam lingkungan 1 °C daripada sasaran selepas langkah 2.
Kesilapan yang perlu diawasi
Kesilapan lazim ialah menggelar sistem “maklum balas” kerana ia mempunyai penderia.
Jawapan salah: “Pemercik ada penderia kelembapan, jadi ia sentiasa maklum balas.”
Pelajar berhenti pada penderia dan tidak menyemak apa yang dilakukan pemproses dengan bacaan itu.
Jika pemercik merekod kelembapan tetapi tetap menyiram 20 minit pada 06:00 setiap hari, bacaan tidak pernah mengubah tindakan, jadi ia urutan tetap. Jika ia berhenti menyiram apabila kelembapan mencapai paras tertentu, output mengubah bacaan seterusnya dan ia maklum balas.
Semak sendiri
1. Loceng sekolah berbunyi pada waktu tetap setiap hari. Maklum balas atau urutan tetap?
Tunjukkan jawapan
Urutan tetap. Loceng mengikut jadual dan tidak membaca kesan output sendiri.
2. Pam tangki air berhenti apabila penderia aras membaca penuh. Maklum balas atau urutan tetap? Beri sebab.
Tunjukkan jawapan
Maklum balas. Pam menaikkan aras, penderia membaca aras baharu, dan pemproses menggunakannya untuk menghentikan pam.
3. Dalam surihan pemanas maklum balas di atas, mengapa pemanas OFF pada langkah 3 walaupun bilik masih di bawah 24 °C?
Tunjukkan jawapan
Peraturan membandingkan dengan sasaran 22, bukan 24. Pada langkah 3 bacaan ialah 22, dan 22 < 22 palsu, jadi pemanas OFF.
Ke mana selepas ini?
Seterusnya, beralih daripada satu peraturan kepada beberapa input dalam menerangkan model keputusan yang ringkas. Untuk menyurih gelung seperti di atas, gunakan pelatih surihan pseudokod.
Guru dalam tuisyen Computer Science boleh membina senario baharu setiap kali, supaya anda berlatih ujian tiga soalan pada sistem yang belum pernah anda lihat.