Modulo ialah sebuah fungsi yang dipakai untuk mengetahui sisa pembagian dari bilangan, penulisan modulo secara umum ialah a mod b = ....., pola real-nya misal kita ingin mengetahui sisa pembagian dari 5/2, maka penulisannya ialah 5 mod 2, hasil yang akan didapatkan ialah 1, alasannya ialah 5 tidak sanggup habis jikalau dibagi 2. kenapa?, alasannya ialah hasil dari pembagian tersebut akan menghasilkan koma (bukan bilangan bulat), sedangkan yang habis dibagi dengan 2 ialah 2 dan kelipatannya, menyerupai 4,6,8 dan seterusnya. sedangkan jikalau 5/2 maka maka jadinya ialah 2,5. Begitu juga jikalau 5/3, maka jadinya ialah 2.
Untuk beberapa hal kita akan membutuhkan fungsi modulo ini, terutama dalam hal otomatisasi. Dalam Artikel ini saya akan membahas mengenai pemanfaatan modulo dengan memakai push-button dan LED yang hanya akan menyala jikalau kita menekan pushbutton sebanyak 2 dan kelipatannya (4,6,8,9,10 ........n), langkah – langkah perancangan alatnya ialah sebagai berikut:
- hubungkan pin sebelah kiri button dihubungkan dengan Ground,
- hubungkan pin sebelah kanan button pin digital 3, pin ini akan kita jadikan sebagai input.
- selanjutnya hubungkan Arduino nano dengan komputer dengan memakai Kabel USB
- jika sudah, selanjutnya buka Arduino IDE, lalu buat aktivitas sebagai berikut
lebih jelasnya sanggup dilihat pada Gambar berikut:
lalu untuk programnya, saya buat sebagai berikut:
1. const int button = 3;
2. const int led= 13;
3. // Variables yang berubah
4. int penghitung = 0;
5. int kini = 0;
6. int terakhir = 0;
7. void setup() {
8. pinMode(button, INPUT_PULLUP);
9. pinMode(led, OUTPUT);
10. Serial.begin(9600);}
11. void loop() {
12. kini = digitalRead(button);
13. if (sekarang != terakhir) {
14. if (sekarang == LOW) {
15. penghitung++; //sama dengan +1
16. Serial.print("terhitung: ");
17. Serial.println(penghitung); }
18. else { Serial.println("off"); }
19. } terakhir = sekarang;
20. if (penghitung % 2 == 0) { //jika tombol ditekan sebanyak 2 kali (habis dibagi 2
21. digitalWrite(led, HIGH); //maka lampu akan menyala
22. } else {
23. digitalWrite(led, LOW);
24. } }
Selanjutnya upload aktivitas yang sudah kita buat, lalu lihat hasilnya. Jika aktivitas yang dibentuk benar maka LED akan menyala ketika kita menekan button sebanyak 2 kali. Pembahasan Program untuk input button, saya memakai INPUT_PULLUP, dengan memakai pullup maka button akan bernilai HIGH dalam keadaan normal, dan bernilai LOW ketika ditekan. Hal itu sanggup kita lihat pada bab program.
IF (sekarang == LOW){ lalu pada dikala ditekan maka akan dilakukan penghitungan, menyerupai kita lihat pada bab program
penghitung++;
artinya ketika tombol ditekan maka nilai akan ditambah 1. lalu jikalau jumlah tekanan tombol sudah mencapai 2 (atau sanggup dibagi dengan 2) maka lampu akan menyala. Perintah untuk melaksanakan hal tersebut sanggup kita lihat pada bab program
if (penghitung %2 == 0) {
digitalWrite(led, HIGH);
}else {
digitalWrite(led, LOW); }
dalam pemrograman, modulo dilambangkan dengan %, menyerupai yang sanggup kita lihat pada aktivitas diatas.
percobaan lain yang pernah saya lakukan ialah perihal otomatisasi lift, dimana jikalau lift berada diantara 2 lantai, sedangkan kondisi listrik lift padam, maka aktuator untuk pengereman lift akan berfungsi menempatkan lift di lantai yang tepat, dan menahan lift jatuh. Untuk lebih jelasnya sanggup dilihat pada link