Selasa, 14 April 2015

STI : Connecting People, Process, and Technology. -- Sebuah Pengantar --


Versi asli dari tulisan ini telah dipublikasikan di situs Jurusan Kuliah dengan tautan "http://jurusankuliah.tumblr.com/post/118194414751/connecting-people-to-technology". Bagian ini adalah versi panjang dari tulisan tersebut.

Bukan perkara mudah jadi anak Sistem dan Teknologi Informasi (STI). “Kamu kuliah di jurusan apa?” Pertanyaan seperti ini akan sangat sulit dijawab. Liat yang bertanya dulu.  Kalau orangnya terlihat cukup updated tentang dunia pendidikan, saya jawab “STI”. Terus, saya jelasin deh apa itu STI. Kalau yang kayaknya enggak updated …. Palingan saya ditanya balik, “Oh, maksudnya Informatika ya?” atau “Oh … Elektro?”

Saya pertama kali mendengar nama STI saat masih kelas 3 SMA. Tahunya ya STI itu singkatan dari Sistem dan Teknologi Informasi. Saat itu, saya tertarik sama yang namanya ngoding dan ngoprek. Tapi, saya enggak terlalu jago di kedua hal itu. Karena penasaran, saya pun mencari-cari info, mulai dari brosur kampus sampai minta tolong ke Prof. Google. Kemudian saya putuskan untuk kuliah di jurusan ini.

Bagaimana sejarah nama jurusan ini?
Program studi Sistem dan Teknologi Informasi (STI) bisa dilihat sebagai gabungan dari dua program studi (jurusan), yaitu Sistem Informasi dan Teknologi Informasi. Sistem Informasi sejarahnya berasal dari orang-orang di dunia bisnis yang memiliki kebutuhan untuk mengolah data menjadi informasi. Seiring dengan perkembangan teknologi yang pesat, orang-orang ini terjun ke dunia komputer (lebih tepatnya dunia informatika) mempelajari bidang ini untuk memenuhi kebutuhan mereka.
Teknologi Informasi sejarahnya berasal dari orang-orang di dunia elektronika (lebih tepatnya teknik elektro) yang membuat teknologi yang dapat membuat, mengubah, menyimpan, mengomunikasikan dan atau menyebarkan informasi. Orang-orang ini membuat teknologi tersebut untuk memenuhi kebutuhan masyarakat sesuai kebutuhan dan perkembangan zaman.
Ketika dua bidang ini dikawinkan, muncullah bidang baru, yaitu Sistem dan Teknologi Informasi (STI). Seperti namanya, di STI, kami belajar keduanya, Sistem Informasi dan Teknologi Informasi.

Kalau begitu, peran ilmu STI di masyarakat seperti apa?
Pada dasarnya, pengguna teknologi adalah masyarakat sendiri. Di sinilah kerjaannya anak STI, yaitu menjembatani kebutuhan masyarakat akan teknologi informasi.
Program studi STI dikembangkan dalam rangka mengantisipasi fenomena, masalah, kebutuhan, dan dampak perkembangan sistem informasi yang cepat terhadap organisasi maupun masyarakat, sesuai dengan perkembangan teknologi informasi. STI saat ini telah menjadi bagian yang semakin tidak terpisahkan dari setiap organisasi, baik perusahaan besar, perusahaan menengah dan kecil (UKM/UMKM), instansi pemerintah, maupun non-profit organization atau LSM.
Oleh karena itu, mahasiswa STI harus tahu teknologi-teknologi apa saja yang saat ini sedang berkembang. Selain itu, mahasiswa STI juga harus tahu apa kebutuhan masyarakat berdasarkan nilai-nilai sosial, ekonomi, politik, dan beragam faktor lainnya yang ada pada masyarakat. Dalam rangka memahami masyarakat, mahasiswa STI juga perlu belajar tentang organisasi dan manusia.

Kalau kuliahnya ngapain saja?
Di tingkat awal, saya mempelajari mata kuliah-mata kuliah dasar, seperti kalkulus (matematika), fisika dasar, kimia dasar, bahasa inggris, tata tulis karya ilmiah, olahraga, konsep pengembangan ilmu pengetahuan dan sistem alam semesta (sekarang diganti menjadi Pengantar Rekayasa dan Desain). Saya juga belajar mata kuliah-mata kuliah pengantar program studi, seperti pengantar teknologi informasi (sekarang dipecah menjadi dua, yaitu pengantar teknologi informasi dan dasar pemrograman) dan dasar rangkaian elektrik (sekarang namanya pengantar analisis rangkaian). Kalau kata salah satu dosen saya,
“Tingkat Satu di kampus itu sama dengan SMA kelas 4 dan merupakan masa transisi dari dunia sekolah ke dunia kampus”.
Kemudian saya belajar matematika pada berbagai level, dari struktur diskrit, probabilitas dan statistika sampai engineering mathematics, dasar-dasar ilmu manajemen, core ilmu elektro, core ilmu informatika, dasar-dasar ilmu sistem informasi, dasar-dasar ilmu teknologi informasi, pengembangan sistem, komunikasi, hukum dan etika TI, dan isu-isu teknologi terkini.

Ada beberapa pendalaman di bidang STI yang wajib diambil oleh mahasiswa yang tertuang dalam mata kuliah pilihan. Ada juga “jatah wajib” pengambilan mata kuliah pilihan di luar program studi. Yang buat saya senang adalah pilihan mata kuliah di luar program studi saya sangat banyak dan mahasiswa bisa ambil macam-macam, karena program studi beserta mata kuliah di kampus saya sangat beragam, mulai dari teknik, seni, sampai manajemen dan sosial pun ada. #mantapdanbergaya

Saat ini, tren teknologi apa saja sih yang sedang “digawe” di kampus dewasa ini?
 Di Indonesia sendiri (termasuk di kampus saya), teknologi yang sedang fokus “digawe” antara lain teknologi yang berhubungan dengan Smart City (kota pintar), Open Data (data terbuka), Branchless Banking (bank tanpa cabang), Cloud Computing (komputasi di “awan” (internet)), Smart Card (kartu pintar), dll.

Aplikasi konkret ilmu STI di organisasi/perusahaan itu seperti apa?
Teman-teman yang suka nonton berita mungkin pernah mendengan istilah e-budgeting, e-commerce, e-business, atau “e-“ yang lainnya. Atau mungkin teman-teman pernah mendatangi Command Center Bandung yang baru saja selesai didirikan oleh Pemerintah Kota Bandung. Mungkin teman-teman juga familiar dengan kartu pintar yang digagas oleh Presiden kita. Ya, itu adalah salah satu aplikasi konkret ilmu STI di organisasi/perusahaan. Masih banyak aplikasi konkret ilmu STI lainnya. Pada intinya, saat ini, STI ada di mana-mana. #promosi

Penutup
Program Studi Sistem dan Teknologi Informasi sangat cocok untuk teman-teman yang tertarik dan suka ngoding, ngoprek, suka bidang manajemen, tapi gak jago-jago amat di semua bidang itu.
Ada mitos yang beredar bahwa kuliah di jurusan yang berbau teknik itu susah dan memiliki kesulitannya sendiri. Itu memang benar adanya. Akan tetapi, di STI, mitos itu akan terpatahkan seiring dengan berjalannya waktu ketika Anda masuk program studi STI. #promosi

Mau tahu atau tanya-tanya lebih lanjut? Kamu bisa hubungi saya via email di bawah.
*
Azka Ihsan Nurrahman
Sistem dan Teknologi Informasi, 2011
Institut Teknologi Bandung
Email : Asas.distrik@gmail.com

Selasa, 21 Oktober 2014

Career Path dan Cita-Cita Diri

Setiap orang memiliki cita-cita. Penulis pun memiliki cita-cita. Untuk mencapai cita-cita tersebut, diperlukan tahapan yang jelas dalam meraih cita-cita tersebut. Berikut ini adalah cita-cita diri penulis.
No
Tahap
Umur
Cita-Cita
1
Tahap Kerja dan Studi Lanjut
23 tahun – 30 tahun
Setelah lulus sarjana dari ITB, ada dua skenario yang dirancang, yaitu
1.      Langsung lanjut S2 di luar negeri selama 2 tahun dan setelahnya bekerja.
2.  Langsung bekerja dan mencari peluang untuk lanjut studi S2
2
Tahap Wirausaha Produktif
31 tahun – 40 tahun
Pada tahap ini, wirausaha yang dibangun sudah mantap untuk dijalankan. Penulis pada tahap ini sudah tidak lagi bekerja di bawah orang lain. Penulis beralih karir ke wirausaha bidang kuliner.
3
Tahap Manajerial
41 tahun – 50 tahun
Pada tahap ini, penulis sudah menjadi investor. Pekerjaan penulis yang dilakukan pada tahap ini sifatnya lebih ke mengelola kekayaan.
4
Tahap Hasil Investasi
> 50 tahun
Pada tahap ini, penulis menikmati hasil kerja yang diperoleh selama tiga tahap sebelumnya. Hasil tersebut digunakan baik untuk pribadi maupun untuk beramal dan untuk bangsa dan negara.

SMART merupakan singkatan dari Specific, Measurable, Achievable, Realistic, dan Timescaled.  SMART dalam hal ini digunakan untuk menganalisis cita-cita diri penulis. Bentuk SMART dari cita-cita saya.
Elemen
Penjabaran
Specific
1.      Pada tahap kerja dan studi lanjut, penulis hendak lanjut studi S2 di luar negeri dan bekerja.
2.      Pada tahap wirausaha produktif, penulis hendak wirausaha di bidang kuliner.
3.      Pada tahap manajerial, penulis hendak menjadi investor.
4.      Pada tahap hasil investasi, penulis menikmati hasil kerja dari tiga tahap sebelumnya.
Measurable
1.      Pada tahap kerja dan studi lanjut, ukuran lanjut studi S2 adalah studi dilakukan di luar negeri selama 2 tahun. Ukuran bekerja yang akan dilakukan penulis adalah penulis bekerja di perusahaan nasional.
2.      Pada tahap wirausaha produktif, ukuran wirausaha yang hendak dijalankan penulis adalah wirausaha di bidang kuliner dengan keuntungan 50 juta per bulan dengan mempekerjakan 10 orang pegawai dengan skala kota pada awal usaha. Wirausaha ini tentunya akan terus dikembangkan.
3.      Pada tahap manajerial, ukuran investasi yang dilakukan penulis adalah investasi di pasar modal di sector rill di bursa efek nasional maupun internasional.
4.      Pada tahap hasil investasi, penulis mampu menyekolahkan anak-anak penulis ke luar negeri sampai strata dua (S2).
Achievable
1.      Untuk bekerja maupun lanjut studi S2, penulis perlu memliki nilai TOEFL yang baik, yaitu sekitar 550.
2.      Untuk memulai wirausaha, penulis perlu mengumpulkan modal setidaknya sebesar 50 juta rupiah dari hasil kerja dan orang-orang yang mau menjadi mitra maupun pegawai.
3.      Untuk memulai karir menjadi investor, penulis perlu mengumpulkan modal setidaknya 1 milyar dari hasil wirausaha.
4.      Dengan wirausaha dan investasi yang berkelanjutan, pada tahap hasil investasi, penulis dapat menikmati hasil kerja yang dilakukan pada tiga tahap sebelumnya.
Realistic
1.      Untuk memperoleh skor 550 pada TOEFL, penulis perlu belajar bahasa inggris secara berkelanjutan selama kuliah.
2.      Untuk mengumpulkan modal dalam memulai wirausaha, penulis menyisihkan 10% dari gaji kerja (asumsi gaji penulis 5 juta rupiah per bulan)
3.      Untuk mengumpulkan modal dalam memulai investasi, penulis menyisihkan 16,7% dari keuntungan wirausaha.
4.      Penulis dapat menikmati hasil kerja yang dilakukan pada tiga tahap sebelumnya, dengan syarat wirausaha dan investasi yang telah dibangun masih berjalan.
Timescaled
1.      Tahap kerja dan studi lanjut diraih penulis pada umur 23 tahun
2.      Tahap wirausaha produktif diraih penulis pada umur 30 tahun
3.      Tahap manajerial diraih penulis pada umur 40 tahun
4.      Tahap hasil investasi diraih penulis pada umur 50 tahun

Analisis SWOT dalam hal ini digunakan untuk mengkonsolidasikan hasil analisis diri sendiri, baik dari sisi eksternal diri maupun sisi internal diri. Dalam analisis SWOT, ada empat hal yang dideskripsikan.
S (Strength/Kekuatan) : Kemampuan internal positif yang dimiliki seseorang
W (Weakness/Kelemahan) : Aspek internal yang bersifat negatif yang dapat menghambat peluang kesuksesan seseorang
O (Opportunity/Peluang) :  Faktor eksternal yang dapat memberikan peluang untuk kesuksesan seseorang
T (Threat/Ancaman) : Faktor eksternal yang berpotensi untuk membahayakan seseorang
Setelah SWOT dikembangkan, maka SWOT dapat digunakan untuk mengevaluasi cita-cita seseorang dan mengidentifikasi strategi potensial untuk masa depan seseorang. Berikut ini adalah analisis SWOT diri penulis.
Strength
       Memiliki semangat juang yang cukup tinggi
      Prestasi akademik yang baik (IPK > 3.5)
      Senang membaca dan mendengarkan
      Rajin dan tekun
      Dapat mengatur waktu dengan baik
      Bisa bahasa inggris
      Bertanggung jawab pada diri sendiri
Opportunity
       Penulis kuliah di ITB dan hal tersebut menjadi nilai tambah.
      Networking teman sekolah cukup luas.
       Perkembangan teknologi informasi yang pesat
Weakness
      Sulit mengingat nama orang, kecuali kalau sudah akrab dengan orang tersebut.
       Belum terbiasa mengambil keputusan dengan cepat.
      Kemampuan kepemimpinan saya masih tertimpa oleh kemampuan manajemen (jadi tidak mencolok terlihat)
      Kemampuan persuasi kurang baik
      Dukungan finansial kurang baik
Threat
          Link/jaringan/channel/networking bisnis penulis kurang
        Lingkungan jalanan yang tidak mendukung
      Banyak orang yang memiliki kemampuan lebih daripada diri penulis
      Persaingan kerja semakin ketat
        Maraknya tindakan KKN


Selasa, 06 Mei 2014

Tank Arduino (Proyek Akhir II 3231 Interaksi Manusia dan Komputer dengan Antarmuka) [Story Part]

"A story isn't a story if there isn't an introduction"

Para pembaca setia sekalian, pada postingan kali ini, penulis akan memaparkan masalah-masalah yang terjadi selama pembuatan Tank Arduino, hal-hal khusus yang perlu diperhatikan, dan cerita-cerita menarik selama pembuatan Tank Arduino. Masalah-masalah yang terjadi selama pembuatan Tank Arduino tentunya sangat beragam dan akan penulis bahas pada postingan kali ini, Adapun selama pembuatan Tank Arduino, ada hal-hal khusus yang perlu diperhatikan ketika akan melakukan pembuatan Tank Arduino. Selain itu, ada hal-hal menarik yang menurut penulis perlu untuk diceritakan kepada pembaca. Tidak ketinggalan pula analisis dan komentar penulis terhadap pembuatan Tank Arduino ini. Sebelum itu, penulis hendak menunjukkan foto-foto dan video yang merupakan dokumentasi pembuatan Tank Arduino. Gambar-gambar di bawah ini merupakan dokumentasi Tank Arduino.

Controller (Courtesy to M. Yusmanto)

Tank (Courtesy to M. Yusmanto)
Berikut ini adalah video dari Tank Arduino.


Selama pembuatan Tank Arduino berlangsung, penulis beserta teman-teman menemukan beberapa masalah serta hal-hal khusus yang perlu diperhatikan, yaitu:
  1. Wiring atau pemasangan komponen yang cukup sulit, di mana kabel-kabel terkadang lepas. Untuk itu, perlu dilakukan pemsangan kabel dengan tepat pada breadboard atau PCB dan juga perlu dilakukan penyolderan pada bagian-bagian tertentu.
  2. Untuk pemasangan modul radio pada mikrokontroller, dibutuhkan pin female atau barang sejenis, di mana pada bagian ujung modul radio, pin tersebut dipasang. Jika hendak melakukan penyolderan antara pin dengan kabel jumper, hendaknya pin tidak dipasangkan ke modul radio untuk mencegah kerusakan modul radio akibat panas yang ditimbulkan dari solder. Kemudian, pemasangan bagian modul radio pada mikrokontroller harus hati-hati. Modul radio milik teman penulis terbakar karena salah pemasangan pada mikrokontroller.
  3. Suplai power pada mikrokontroller cukup banyak, sehingga power dari baterai dirasa kurang. Untuk itu, digunakan power bank sebagai suplai pada mikrokontroller, baik untuk remote control maupun tank. 
  4. Beban tank antara bagian depan dan bagian belakang perlu diseimbangkan. Hal ini dilakukan agar tank dapat melaju dengan lancar.
  5. Untuk menggerakan motor pada tank, dibutuhkan MOSFET untuk meningkatkan tegangan, mengingat tegangan yang keluar dari pin digital Arduino sangat kurang untuk menggerakan motor pada tank. Pemasangan MOSFET pun harus dilakukan dengan hati-hati, jangan sampai terbalik. Penulis sempat meledakkan MOSFET karena salah pemasangan (mungkin, tapi yang pasti adalah MOSFET penulis meledak).
  6. Secara teoritis, jarak efektif antara dua modul radio adalah 100 meter (tanpa penghalang dan tanpa amplifier/penguat). Hal ini sesuai dengan praktiknya, di mana tank dicoba untuk dikendalikan sejauh mungkin hingga jarak 100 meter. 
  7. Antara gerak tank terhadap perintah remote control, terdapat delay, yaitu 10 ms. Delay ini merupakan delay pengiriman sinyal dari remote control ke tank. Faktor lain seperti penghalang, noise, dll. dapat membuat delay menjadi lebih lama.
  8. Torsi pada motor perlu disesuaikan dengan kebutuhan. Dalam percobaan ini, digunakan rasio 114,7:1, di mana untuk setiap motor, digunakan empat gear. Semakin besar rasio, maka laju tank semakin lambat dan penggunaan power semakin besar. Dengan rasio yang besar, tank akan semakin kuat untuk melaju di tanjakan dan semakin kuat untuk melewati rintangan.
  9. Gunakan serial monitor pada program Arduino IDE untuk mengecek transmisi sinyal radio, baik di sisi remote control maupun tank.
  10. Untuk melakukan upload kode program, perhatikan serial port yang digunakan untuk melakukan hal tersebut, mengingat ada dua Arduino yang digunakan pada percobaan ini.
Selama pembuatan Tank Arduino berlangsung, tentu ada beberapa hal yang menurut penulis cukup menarik. Hal-hal tersebut antara lain.
  1. Penulis beserta teman-teman sempat pusing dalam melakukan debugging program. Saat pembuatan, penulis sempat bingung karena modul radio pada tank hanya menerima sinyal pada salah satu switch saja. Masalahnya ternyata sederhana. Pada bagian radio.write, byte yang digunakan untuk menuliskan sinyal perlu 4 byte karena pada awalnya bagian radio.write dituliskan radio.write (msg, 1), yang artinya data yang ditransmisikan berukuran 1 byte. 1 byte data hanya mampu mentransmisi satu sinyal saja. Debugging ini dilakukan selama satu hari. Ya, satu hari hanya untuk debugging.
  2. Penulis beserta teman-teman sempat kesulitan mencari ban dan motor untuk tank. Hal ini terjadi karena pihak yang menjual barang tersebut tidak banyak. Tapi, pada akhirnya, penulis beserta teman-teman menemukan barang tersebut. Butuh waktu 2-3 minggu untuk mencari kedua barang tersebut meningat penulis beserta teman-teman baru pertama kali mencari barang tersebut.
  3. Saat penulis beserta teman-teman mencoba mengetes motor ke pin digital, ternyata motor tidak berputar. Penulis kemudian mencoba mencari penyebabnya. Ternyata tegangan yang keluar dari pin digital sangat kecil sehingga tidak mampu menggerakan motor. Untuk meningkatkan tegangan yang keluar dari pin, ada dua pilihan yang penulis temukan, yaitu menggunakan relay dan menggunakan MOSFET. Akhirnya penulis memilih menggunakan MOSFET, mengingat penulis dan teman-teman tidak pernah menggunakan relay sebelumnya.
Dalam hal ini, penulis dan teman-teman memiliki beberapa analisis dan komentar terhadap Tank Ardunio yang dibuat. Berikut ini adalah analisis dan komentar penulis.
  1. Tank Arduino ini dapat dikomersilkan, dengan catatan biaya produksi perlu ditekan sehingga harga jual dari produk tidak terlalu mahal.
  2. Pemasangan komponen perlu dilakukan dengan hati-hati, mengingat komponen-komponen yang digunakan untuk membuat Tank Arduino harganya cukup mahal dan rentan akan kerusakan.
  3. Pada bagian perangkat lunak, sinyal yang hendak ditransimikan perlu disesuaikan dengan kebutuhan.
  4. Packaging Tank Arduino dapat dilakukan sekreatif mungkin dengan menggunakan bahan apapun, dengan catatan modul radio tidak terhalangi.
Sekian saja tulisan saya kali ini. Inilah bagian terakhir dari tulisan saya mengenai Tank Arduino. Pembaca sekalian tentunya dapat mencoba membuat tank arduino versi pembaca sendiri dan tidak perlu takut untuk gagal dan mencoba. Sampai bertemu kembali di tulisan saya yang berikutnya.

Referensi : 
  • Banzi,Massimo.2011.Getting Started with Arduino, 2nd Edition.U.S.A:O’Reilly Media, Inc
  • http://forum.arduino.cc/index.php?topic=138663.0
  • Margolis, Michael. 2011. Arduino Cookbook, 2nd Edition. U.S.A:O’Reilly Media, Inc.
Credits to : Allah SWT, kedua orang tua saya, Pak Soni (selaku dosen mata kuliah), teman kelompok (Luthfi Al Fikri, Michael Yurry, Amal Syahreza, M. Yusmanto dan Reza S.), teman-teman angkatan STI 2011, blogger.com, serta siapapun yang telah membantu terlaksananya tugas ini.

Jumat, 02 Mei 2014

Tank Arduino (Proyek Akhir II 3231 Interaksi Manusia dan Komputer dengan Antarmuka) [Explanation Part]

"God is Bigger Than Any Obstacles"
Para pembaca setia sekalian, kali ini saya akan memberikan penjelasan lengkap terkait Tank Arduino yang sebelumnya telah saya paparkan melalui slide presentasi pada postingan sebelumnya. Tank Arduino merupakan tank yang dikendalikan oleh mikrokontroller, yaitu Arduino. Dalam hal ini, terdapat dua Arduino yang digunakan, yaitu Arduino untuk remote controller (transmitter) dan Arduino untuk Tank (receiver). Arduino yang digunakan untuk percobaan kali ini adalah Arduino Uno, baik untuk remote controller (transmitter) maupun untuk Tank (receiver). Antara remote controller dengan Tank, terjadi komunikasi satu arah, di mana Tank menerima sinyal dari remote controller. Tank sendiri dapat digunakan sebagai mainan maupun sebagai alat simulasi. 
Ilustrasi Tank

Sistem Tank Arduino sendiri memiliki spesifikasi sebagai berikut.
  1. Input (Masukan). Masukan yang dibutuhkan sistem adalah switch untuk memberikan respon kepada Tank.
  2. Proses. Proses yang terjadi pada sistem Tank Arduino adalah transmisi sinyal dari remote controller ke Tank.
  3. Output (Keluaran). Keluaran dari sistem Tank Arduino adalah gerak dari motor yang menyebabkan Tank dapat bergerak.
Anda tentunya sudah tidak sabar untuk membuat alat ini kan? Mari kita lihat bersama-sama blok diagram dari perangkat keras (hardware) yang digunakan untuk membuat Tank Arduino. Secara umum, ada dua sistem dari perangkat keras (hardware) yang terdapat pada Tank Arduino, yaitu transmitter dan receiver.


Pada bagian transmitter, sinyal dari switch akan diproses oleh modul radio untuk dikirimkan ke Tank.

Pada bagian transmitter, terdapat beberapa alat dan bahan yang digunakan untuk membuat transmitter itu sendiri, yaitu:
  1. 1 buah mikrokontroller Arduino Uno R3 beserta kabel konektor USB
  2. 2 buah resistor 10K ohm
  3. 2 buah switch 
  4. 1 set modul radio nRF24L01 2.4GHz Radio/Wireless Transceivers
  5. 1 set breadboard atau PCB
  6. Kabel jumper secukupnya
Setelah Anda mendapatkan semua komponen di atas, Anda dapat memulai membuat rangkaian transmitter. Gambar di bawah ini menunjukkan rangkaian transmitter atau remote control
Courtesy of Amal Syahreza
Pada bagian receiver, sinyal yang berasal dari transmitter akan diterima oleh radio dan diteruskan untuk menggerakan motor.


Pada receiver, terdapat beberapa alat dan bahan yang digunakan untuk membuat receiver (Tank) itu sendiri, yaitu:
  1. 1 buah mikrokontroller Arduino Uno R3 beserta kabel konektor USB
  2. 1 set wheel + track (untuk ban dari Tank)
  3. 1 set double gearbox (untuk motor/mesin Tank)
  4. 1 set universal plate (untuk chassis Tank)
  5. 2 buah IRF520/540 MOSFET
  6. 2 buah dioda IN4007
  7. 1 set modul radio nRF24L01 2.4GHz Radio/Wireless Transceivers
  8. 1 set breadboard atau PCB
  9. Kabel jumper secukupnya
Setelah Anda mendapatkan semua komponen di atas, Anda dapat memulai membuat rangkaian receiver. Gambar di bawah ini menunjukkan rangkaian receiver atau Tank.

Courtesy of Amal Syahreza
Untuk membuat tampilan produk lebih bagus dan lebih baik, Anda dapat menggunakan berbagai macam bahan pembungkus seperti karton, dus, triplek, ataupun bahan-bahan lain sekreatf Anda. 

Setelah semua rangkaian dibuat, Anda dapat mulai membuat kode program untuk mengoperasikan mikrokontroller, baik untuk remote controller maupun Tank. Untuk membuat maupun menjalankan kode program, Anda membutuhkan sebuah PC ataupun laptop yang telah terinstall Arduino IDE. Apabila di PC ataupun laptop Anda telah tersedia Arduino IDE, buka program Arduino IDE dan masukkan kode program di bawah ini. Kemudian klik verify pada program Arduino IDE Anda. 

Source code untuk Remote Control

// Source Code untuk Transmitter (Remote Control)
// Courtesy of http://forum.arduino.cc/index.php?topic=138663.0

//Library SPI dan RF 24
#include <SPI.h>
#include "nRF24L01.h"
#include "RF24.h"

//Pendefinisan Variabel
int msg[2]; //Array Pesan
RF24 radio(9,10); //Pin untuk Radio
const uint64_t pipe = 0xE8E8F0F0E1LL; //Pipe Radio
int SW1 = 7; //Switch 1
int SW2 = 4; //Switch 2
int sentSignal=0; //Sinyal kirim
 
void setup(void){
  Serial.begin(9600); //Setup Serial
  radio.begin(); //Setup Radio
  radio.openWritingPipe(pipe);
}
 
void loop(void){
//Inisialisasi variabel
  msg[0]=0;
  msg[1]=0;
  sentSignal=0;
  //Pembacaan Switch 1
  if (digitalRead(SW1) == HIGH) {
    msg[0] = 111;
    Serial.println("SW1");
    sentSignal=1;
  }
  //Pembacaan Switch 2
  if (digitalRead(SW2) == HIGH) {
    msg[1] = 111;
    Serial.println("SW2");
    sentSignal=1;
  }
  //Pembacaan Sinyal
  if (sentSignal==1){
    radio.write(msg, 4);
  }
  Serial.println("_______");
}
Source code untuk Tank



// Source Code untuk Receiver (Tank)
// Courtesy of http://forum.arduino.cc/index.php?topic=138663.0

//Library SPI dan RF 24
#include <SPI.h>
#include "nRF24L01.h"
#include "RF24.h"

//Pendefinisan Variabel
int msg[2]; //Array Pesan
RF24 radio(9,10); //Pin untuk Radio
const uint64_t pipe = 0xE8E8F0F0E1LL; //Pipe Radio
int Motor1 = 3; //Motor 1
int Motor2 = 5; //Motor 2

void setup(void){
  Serial.begin(9600); //Setup Serial
  radio.begin(); //Setup Radio
  radio.openReadingPipe(1,pipe);
  radio.startListening();
  pinMode(Motor1, OUTPUT); //Setup Pin untuk Motor
  pinMode(Motor2, OUTPUT);
}
 
void loop(void){
  //Pengecekan sinyal dari transmitter
  if (radio.available()){
    //Inisialisasi variabel pengecekan
    bool done = false;   
    while (!done){
      done = radio.read(msg, 4); //Baca pesan dari transmitter     
      Serial.println(msg[0]); //Salin pesan ke serial    
      Serial.println(msg[1]);
      Serial.println("__________");
      //Pembacaan pesan untuk motor 1    
      if (msg[0] == 111){
        delay(10);
        digitalWrite(Motor1, HIGH);
      } else {
        digitalWrite(Motor1, LOW);
      }
      //Pembacaan pesan untuk motor 2 
      if (msg[1] == 111){
        delay(10);
        digitalWrite(Motor2, HIGH);
      } else {
        digitalWrite(Motor2, LOW);
      }
      delay(10);
    }
  }
  else{
    Serial.println("No radio available");
  }
}


Setelah Anda melakukan verify terhadap kedua kode di atas, klik upload untuk mengunggah kode program ke dalam mikrokontroller. Unggah kode program untuk remote control ke rangkaian remote control dan unggah kode program untuk Tank ke rangkaian Tank. Anda tentunya penasaran kan terhadap cara kerja program? Gambar di bawah ini menunjukkan flowchart dari kode program.

Flowchart untuk remote control


Flowchart untuk Tank


Sekian saja postingan saya kali ini. Pada bagian selanjutnya, saya akan memaparkan masalah-masalah yang terjadi selama pembuatan Tank Arduino, hal-hal khusus yang perlu Anda perhatikan, serta cerita-cerita menarik selama pembuatan Tank Arduino ini. Dokumentasi foto dan video pun akan dipaparkan pada bagian selanjutnya dalam "Story Part".

Tank Arduino (Proyek Akhir II 3231 Interaksi Manusia dan Komputer dengan Antarmuka) [Presentation Part]

Para pembaca setia sekalian, sudah lama tidak berjumpa. Kali ini, saya akan memaparkan mengenai proyek saya yang berjudul

"Tank Arduino"

Untuk lebih jelasnya, silahkan lihat presentasi di bawah ini!




Untuk penjelasan lengkap proyek ini, nantikan postingan selanjutnya.