Compass CMPS-03


Modul CMPS-03 ini produksi Devantech.Ltd yang di produksi khusus keperluan robotika  yang berfungsi untuk menetukkan arah waktu robot bermanufer atau berbelok agar robot tidak nyasar, modul ini berukuran sekitar 3,5 cm x 3,5 cm yang menggunakan sensor magnet KMZ51 yang sangat sensitive 
dalam mendeteksi medan magnet bumi.

     Kompas digital ini hanya memerlukan supply tegangan sebesar 5V DC, dengan konsumsi arus 15mA. Pada CMPS03, arah mata angin dibagi dalam bentuk derajat yaitu : Utara (0°), Timur (90°), Selatan (180°) dan Barat (270°). Ada dua cara untuk mendapatkan informasi arah dari modul kompas digital ini yaitu dengan membaca sinyal PWM (Pulse Width Modulation) pada pin 4 atau dengan membaca data interface I2C pada pin 2 dan 3.
I2C Interface 
     I2C adalah suatu metode yang digunakan pada pertukaran data secara serial. Pada akses ini yang diperlukan hanya 2 buah pin, yaitu SDA dan SCL Pin SCL adalah pin yang berguna sebagai sinkronisasi (serial clock) dan SDA adalah jalur untuk data serial. Yang perlu diperhatikan dan menjadi catatan dalam akses ini adalah Acknowledgement. Acknowledgement adalah suatu kondisi dimana receiver telah menerima data yang telah dikirimkan. Tanpa mengecek status ini, data yang dikirim pasti tidak sesuai. Pin 2 dan 3 adalah jalur komunikasi I2C dan dapat digunakan untuk membaca data arah (bearing). Jika jalur I2C tidak digunakan, maka pin ini harus di pull up (ke +5V) melalui resistor yang nilainya sekitar 47K, nilai resistor tidak
kritikal.
I2C communication protocol dimulai dengan mengirimkan start bit, address modul digital compass dengan read/write low (0xC0), kemudian nomor register yang akan dibaca. Selanjutnya diikuti dengan start bit lagi, address modul digital compass dengan read/write high (0xC1). Selanjutnya anda bisa membaca satu atau dua register (8 bit atau 16 bit). Untuk register 16 bit, yang pertama kali dibaca adalah high byte. CMPS03 memiliki 16 register sesuai tabel berikut :
Register 0 adalah Software revision number. Register 1 adalah data arah yang diubah dalam nilai 0-255. Dalam aplikasinya ini lebih mudah dibandingkan nilai 0-360 karena memerlukan dua byte. Untuk resolusi yang lebih tinggi pada Register 2 dan 3 akan menyimpan data arah 16 bit dengan nilai 0-3599. Ini menunjukkan arah 0-359.9°. Register 4 sampai 11 adalah internal test register. Register 12, 13 dan 14 tidak digunakan. Register 15 digunakan untuk melakukan kalibrasi kompas. Pin 7 adalah input untuk memilih mode operasi 50Hz (low) atau 60Hz (high). Pilihan ini diperlukan untuk melakukan sinkronisasi dengan  frekuensi jala-jala PLN jika digital compass menggunakan power supply yang terhubung ke jala-jala PLN. Hal ini dapat menurunkan deviasi pembacaan data arah. Proses konversi didalam sensor, selesai dalam waktu 40mS (50Hz) atau    33.3mS (60Hz). Pin ini memiliki resistor pullup on board dan dapat dibiarkan tidak terhubung (unconnected) untuk operasi 60Hz. Pin 6 digunakan untuk kalibrasi digital compass. Pin ini memiliki resistor pullup on board dan dapat dibiarkan tidak terhubung setelah proses kalibrasi. Pengkalibrasian hanya cukup sekali bisa dengan menggunakan metode pin maupun software setelah kalibrasi dilakukan maka data disimpan di memory mikrokontroller setelah kompas dimatikan dan akan dinyalakan kembali, maka data yang tersimpan akan otomatis terbaca langsung oleh mikrokontroller dan ditampilkan oleh LCD.




Sumber : robo-holic.blogspot.com

Tidak ada komentar: