26 August 2015

Tutorial 4 - Motor Control - Forward & Reverse PART 1

Assalamualaikum wbt & Salam Sejahtera

Pada kali ini, saya akan menerangkan secara ringkas 2 kaedah yang biasa digunakan untuk mengawal motor. Yang dimaksudkan dengan mengawal di sini adalah motor membuat  rotasi hadapan (forward) dan juga rotasi ke belakang (reverse). Kaedah yang boleh digunakan adalah:
  1. Menggunakan 2 set litar geganti (relay)
  2. Menggunakan IC L293D (H-Bridge Motor Driver)
Untuk Bahagian 1 ini, saya akan menerangkan lebih lanjut cara kawalan motor menggunakan 2 set litar geganti. Terdapat beberapa kelemahan mengawal motor menggunakan litar geganti ini. Antaranya ialah:
  1. Kos litar geganti yang agak mahal.
  2. Hanya boleh mengawal arah rotasi sahaja, bukan kelajuan
 Ramai yang masih tidak faham tentang fungsi litar geganti. Litar geganti biasanya digunakan untuk menghidupkan satu litar yang lain (lebih dari 5V) apabila menerima isyarat dari Arduino.
Sebagai contoh, apabila saya ingin menghidupkan motor DC 12 Volt selepas sensor suhu (LM35) mengesan 40 darjah Celcius, saya memerlukan litar geganti. Ini kerana, Arduino hanya mengeluarkan isyarat 5V dan maksimum 40mA pada satu pin keluaran.

Mana mungkin dengan 5V dan current 40mA boleh menggerakkan satu motor 12V??!!

Dalam kes ini, litar geganti sangat sangat membantu. Isyarat yang dihantar oleh pin Arduino akan mengaktifkan litar geganti melalui transistor yang ada dalam litar tersebut.
Ramai juga yang bertanya pada saya, berapakah maksimum beban yang boleh diletakkan pada keluaran relay? Jawapannya mudah sahaja. Maksimum load yang boleh digunakan biasanya tertera pada badan komponen relay itu sendiri. Saya boleh katakan yang relay boleh menampung sehingga 240V AC / 10 A dan 30V DC / 10A. Besar tu.. Bukan setakat boleh nak hidupkan DC motor 12V,  nak hidupkan lampu pendaflour pun boleh!!

5V Relay
Terdapat beberapa jenis voltan untuk mengaktifkan coil yang ada pada relay. Ada 5VDC, 9VDC, 12VDC dan sebagainya.
Gambar di atas adalah komponen relay jenis 5VDC. Ramai pelajar yang terkeliru  dengan angka tersebut. Mereka ingatkan 5V adalah maksimum beban yang boleh digunakan. Tidak!! Ianya hanyalah nilai voltan yang perlu untuk mengaktifkan coil pada relay. Ini bermaksud, kita perlu letakkan +5VDC pada hujung terminal coil dan GROUND pada hujung yaang satu lagi. Itu sahaja.

Layout Pin Relay

Skematik Litar Geganti

Litar Kawalan Motor Mara Sonsang (Forward Reverse)

17 June 2015

SELAMAT BERPUASA

Mungkin hari-hari yang dilewati telah meninggalkan secuit kenangan yang tak terlupakan,
Ada salah dan khilaf,
Ada dosa yang mengikuti perjalanan hari-hari itu.
Agar tak ada sesal,
Tak ada dendam,
Mari kita sama-sama sucikan hati,diri dan jiwa kita.
Setulus hati memohon keampunan maaf,
 
Marhaban Yaa Ramadhan……

Selamat Menunaikan Ibadah Puasa.

15 June 2015

ANALOG OR DIGITAL INPUT??

Assalamualaikum wbt & Salam Sejahtera

Komponen pengesan (sensors)  atau suis terbahagi kepada 2 kategori iaitu analog dan digital. Adalah sangat penting bagi pengguna untuk mengenalpasti jenis jenis suis dan sensor yang akan digunakan. Ini akan memudahkan kita menulis aturcara pada micro-controller. Entry kali ini akan memberi sedikit tips jenis - jenis input yang ada di pasaran.

Analog Input.

Input jenis ini memberi nilai bacaan berbeza pada keadaan yang berlainan. sebagai contoh, temperature sensor. Semakin tinggi haba dikenakan pada sensor tersebut, bacaan pada sensor akan meningkat. Begitu juga PIR sensor dan ultrasonic sensor. Nilai analog sensor akan berubah jika jarak objek pada sensor tersebut semakin hampir. Ini membolehkan kita menggunakan sensor ini untuk mengukur jarak kerana bacaan analog ini berubah mengikut keadaan (walaupun perubahan kecil). Contoh mudah yang lain adalah variable resistor. Bacaan akan berubah jika VR berubah nilainya.

Digital Input

Digital input hanya boleh berlaku dalam 2 keadaan sahaja iaitu YA atau TIDAK. Tiada nilai selain itu. Contoh terbaik adalah push button switch. Kita hanya boleh tekan (ON) atau release (OFF). Tidak mungkin ada keadaan selain daripada itu. Contoh lain adalah water sensor. Water sensor digunakan untuk mengenalpasti kehadiran air. Oleh itu, hanya ada 2 keluaran bacaan sahaja sama ada ADA AIR atau TIADA AIR. Kita tidak boleh menggunakan water sensor untuk untuk mengukur kuantiti air.




Apabila anda dah membeli sensor, amalkan membuat analogread Serial sensor anda. Kaji bacaan yang dipaparkan pada PC anda. Dari situ, anda akan tahu bagaimana sensor anda beroperasi.

Analog Read Serial

30 April 2015

Tutorial 3 - Water Sensor & LCD

Assalamualaikum w.b.t & Salam Sejahtera


Untuk entry kali ini, saya akan berkongsi tutorial cara menggunakan pengesan air (water sensor) bersama dengan paparan LCD 16x2 dan juga LED. berikut adalah komponen - komponen yang diperlukan untuk menghasilkan litar ini.

  1. Arduino UNO
  2. Jumper Cable
  3. Perintang boleh laras 10k Ohm
  4. Paparan 16x2 LCD
  5. LED (boleh juga kalau nak ganti dengan Buzzer)
  6. Water Sensor
Water Sensor

16 x 2 LCD Display
Buzzer

Sambungan litar adalah seperti di bawah.

Sambungan Litar
Aturcara Arduino:


#include <LiquidCrystal.h>  
 LiquidCrystal lcd(12, 11, 5, 4, 3, 2);  
 
int WaterSensor = A0;  
int Buzzer = 10;  
int Water = 0;  
 
void setup()
 {  
   pinMode (WaterSensor, INPUT);  
   pinMode (Buzzer, OUTPUT);  
   lcd.begin(16, 2);  
   lcd.setCursor (2,0);  
   lcd.print("WATER SENSOR");  
   lcd.setCursor (3,1);  
   lcd.print("WITH ALARM");  
   delay (3000);  
   lcd.clear();  
 }  
   
void loop()
{  
  Water = digitalRead(WaterSensor);  
  
  if (Water == HIGH)
  {  
    delay (100);  
    lcd.clear();  
    lcd.setCursor (3,0);  
    lcd.print("WATER WAS");  
    lcd.setCursor (4,1);  
    lcd.print("DETECTED");  
    digitalWrite (Buzzer, HIGH);  
 }  
  
  else
  {  
    lcd.setCursor (7,0);  
    lcd.print("WATER WAS");  
    lcd.setCursor (0,1);  
    lcd.print("NOT DETECTED");   
    digitalWrite (Buzzer, LOW);  
  }  
}





20 March 2015

Pemilihan Motor



Assalamualaikum wbt & Salam Sejahtera

Saya sering ditanya melalui email mengenai spesifikasi motor dan jenis motor yang sesuai digunakan untuk pelajar projek akhir. Jadi, untuk entry kali ini, saya ingin berkongsi serba sedikit mengenai motor. Terdapat beberapa jenis motor yang ada di pasaran, antaranya ialah:

  1. DC Brush Motor
  2. DC Geared Motor
  3. Stepper Motor
  4. Servo Motor
Sebelum membeli apa - apa jenis motor, anda mesti faham operasi untuk kesemua jenis motor tersebut. Elakkan diri anda ditipu oleh peniaga!! Di sini saya ingin membuat sedikit rumusan tentang 4 jenis motor di atas.

DC Brush Motor
  • Watt yang pelbagai (rendah, sederhana & tinggi)
  • Berprestasi tinggi
  • Kestabilan yang terbaik
  • Biasa digunakan untuk robot dan industri
  • Harga dalam julat RM400++ dan ke atas
DC Geared Motor


  • Motor yang sangat popular untuk pelajar projek akhir
  • Watt yang rendah
  • Agak stabil
  • Harga dalam julat RM30 dan ke atas (ikut Watt)
  • Pastikan anda beli ikut rpm (rotation per minute) yang betul. Semakin tinggi rpm, torque motor semakin rendah. Jika anda mahu gunakan motor ini untuk mengangkat atau menggerakkan  barang, pastikan torque motor bersesuian. Carilah motor yang low rpm.
Stepper Motor

Stepper Motor 1
Stepper Motor 2
  • Motor berpusing mengikut step atau fasa
  • Contoh: Jika anda beli stepper motor yang berspesifikasi 4 step, ini bermaksud motor akan bergerak dari 0 darjah dan terus ke 90 darjah (360/4 step), delay, kemudian bergerak dari 90 ke 180 (90+90), delay. dari 180 ke 270 (180+90) dan sehinggalah motor kembali ke 0 darjah
  • Motor yang jarang-jarang digunakan
  • Harga bergantung pada berapa banyak step. Semakin tinggi step, semakin mahal
  • harga dalam julat RM50 dan ke atas


 Servo Motor
  • Berbanding dengan motor lain yang boleh berpusing 360 darjah, motor ini berputar dari 0 ke 180 darjah sahaja
  • Motor boleh bergerak mengikut sudut yang ditetapkan pada program (Arduino/PIC)
  • Contoh, jika saya mahu motor berputar dari 0 ke sudut 43 darjah, saya hanya perlu taip myservo.write(43) dan letak sedikit delay (300ms)
  • Speed agak perlahan tetapi torque MENGAGUMKAN!
  • Motor yang amat - amat - amat berguna
  • Harga dalam julat RM40 dan ke atas

Adalah amat penting untuk anda tahu aplikasi litar sebelum membeli motor. Jika anda meminta pendapat peniaga mengenai jenis motor, anda seolah - olah meletakkan leher untuk mereka sembelih kerana mereka pasti akan menjual motor yang susah untuk mereka jual. Jadi, make sure anda ada spesifikasi motor yang sesuai sebelum ke kedai elektronik.