REKA BENTUK MEKATRONIK
DISEDIAKAN OLEH
Ts. AIZAT ABD AZIZ
PENSYARAH
JABATAN KEJURUTERAAN ELEKTRIK DAN SAINS
KOLEJ POLY-TECH MARA KUANTAN
LATAR BELAKANG PENCERAMAH
Nama : Ts. Aizat Abd Aziz
Badan
Profesional : 1. MBOT Profesional Technologist (Ts.)
GT18050716
Pendidikan
: 2. BEM Graduate Engineer 71041A
Pengalaman
: 1. Sarjana Kejuruteraan Elektrik, UTHM, 2013.
2. Ijazah Sarjana Muda Kejuruteraan (Elektrik),
UTM, 2005.
: 1. Pensyarah Kejuruteraan Elektrik,
Kolej Poly-Tech Mara Kuantan dari
22/9/2009 hingga sekarang.
2. Jurutera Teknikal, Samsung Electronics (M)
Sdn Bhd dari 6/2/2006 hingga 20/7/2009.
Jabatan Kejuruteraan Elektrik dan Sains 2
Kolej Poly-Tech Mara Kuantan
KOLEJ POLY-TECH MARA KUANTAN
Alamat: KM 8, Jalan Gambang, 25150 Kuantan,
Pahang
Website: www.kptm.edu.my
Program yang ditawarkan yang diiktiraf oleh MQA
adalah seperti berikut:
1. Diploma Kejuruteraan Awam (Keselamatan
Pembinaan)
2. Diploma Pengurusan Sumber Manusia
3. Diploma Pengurusan Perniagaan
4. Diploma Pengurusan Perakaunan
Pinjaman MARA disediakan Syarat kelayakan paling tinggi iaitu 3 kredit:
kepada yang LAYAK Matematik
Sains / Teknikal / Vokasional
1 subjek lain serta lulus Bahasa Inggeris dan
Sejarah
Jabatan Kejuruteraan Elektrik dan Sains 3
Kolej Poly-Tech Mara Kuantan
OBJEKTIF KURSUS
Di akhir kursus ini, peserta boleh:
1. Mengenalpasti elemen mekatronik pada produk sedia ada iaitu
robot mudah alih (mobile robot).
2. Menulis bahasa pengatucaraan C untuk mengawal pergerakan robot
mudah alih secara automatik menggunakan mikropengawal Arduino.
Jabatan Kejuruteraan Elektrik dan Sains 4
Kolej Poly-Tech Mara Kuantan
MAKSUD MEKATRONIK
Mekatronik: Satu bidang ilmu yang menggabungkan disiplin ilmu
mekanikal, elektrik, elektronik, kawalan dan pengaturcaraan untuk
menghasilkan suatu sistem yang berfungsi secara automatik.
Reka bentuk mekatronik: Merupakan reka bentuk produk atau system
yang menggabungkan disiplin ilmu mekanikal, elektrik, elektronik,
kawalan dan pengaturcaraan untuk mencapai tujuan yang dikehendaki.
Jabatan Kejuruteraan Elektrik dan Sains 3
Kolej Poly-Tech Mara Kuantan
ELEMEN MEKATRONIK
Kawalan dan
Pengatucaraan
Elektrik Mekatronik Elektronik
Mekanikal 4
Jabatan Kejuruteraan Elektrik dan Sains
Kolej Poly-Tech Mara Kuantan
ELEMEN MEKATRONIK
Elemen mekatronik pada robot mudah alih (mobile robot):
• Sensor ultrasonik • Roda
• Elemen • Elemen mekanikal
• Untuk
elektronik
• Untuk mengesan menggerakkan robot
halangan di • Suis
hadapan robot • Elemen elektronik
• Untuk
• Sensor “infrared”
• Elemen menghidupkan dan
elektronik memutuskan
• Untuk mengesan
bekalan kuasa
laluan hitam atau
putih (berfungsi robot
sebagai sensor
kepada line • Bingkai robot
following robot
(chassis)
• Elemen mekanikal
Jabatan Kejuruteraan Elektrik dan Sains 5
Kolej Poly-Tech Mara Kuantan
ELEMEN MEKATRONIK
Elemen mekatronik pada produk sedia ada seperti robot mudah alih
(mobile robot): • Papan L298N (motor driver)
• Elemen elektronik
• Untuk menggerakkan motor
pada robot (kiri, kanan, hadapan,
belakang)
• Mikropengawal Arduino
• Elemen kawalan
• Untuk mengawal segala
aktiviti robot berdasarkan
algoritma yang telah
diprogramkan
• 2 x Lithium ion bateri (3.7V 4000 mAH)
• Elemen elektrik
• Untuk membekalkan kuasa A.T kepada
robot
Jabatan Kejuruteraan Elektrik dan Sains 6
Kolej Poly-Tech Mara Kuantan
ELEMEN MEKATRONIK
Elemen mekatronik pada produk sedia ada seperti robot mudah alih
(mobile robot): • Bola kastor
• Elemen mekanikal
• Untuk melancarkan dan
menyokong pergerakan robot
• Motor gear arus terus 8
• Elemen electromechanics
• Untuk memutarkan roda dalam
menghasilkan pergerakan robot
Jabatan Kejuruteraan Elektrik dan Sains
Kolej Poly-Tech Mara Kuantan
LITAR SKEMATIK ROBOT
Komponen Penyambungan
Pemacu Motor ENA Pin 3 (Arduino)
(Motor Driver) IN1 Pin 2 (Arduino)
L298N IN2 Pin 4 (Arduino)
IN3 Pin 5 (Arduino)
IN4 Pin 7 (Arduino)
ENB Pin 6 (Arduino)
OUT3 & OUT4 DC motor sebelah kiri
OUT1 & OUT2 DC motor sebelah kanan
GND (L298N) GND (Arduino)
5V (L298N) Vin (Arduino)
+12V (L298N) Salah satu terminal suis
Jabatan Kejuruteraan Elektrik dan Sains 8
Kolej Poly-Tech Mara Kuantan
LITAR SKEMATIK ROBOT
Komponen Penyambungan
Sensor “Infrared VCC 5V (Arduino atau 5V L298N)
– Left” GND GND (Arduino atau L298N)
DO Pin 12 (Arduino)
Sensor “Infrared VCC 5V (Arduino atau 5V L298N)
– Right” GND GND (Arduino atau L298N)
DO Pin 11 (Arduino)
Sensor Ultrasonik VCC 5V (Arduino)
Bateri Trig 8 (Arduino)
Echo 9 (Arduino)
GND GND (Arduino)
+V Salah satu terminal suis
-V GND (L298N)
Jabatan Kejuruteraan Elektrik dan Sains 8
Kolej Poly-Tech Mara Kuantan
PROGRAM MOBILE ROBOT
Pemacu motor L298N
• L298N adalah pemacu motor yang membolehkan kawalan kelajuan dan arah bagi dua
motor DC pada masa yang sama.
• Modul ini boleh memacu motor DC yang memerlukan voltan di antara 5V sehingga 35V,
dengan arus maksima sehingga 2A.
Jabatan Kejuruteraan Elektrik dan Sains 12
Kolej Poly-Tech Mara Kuantan
PROGRAM MOBILE ROBOT
• Enable A dan Enable B pin digunakan untuk mengawal kelajuan motor.
• Sekiranya jumper digunakan pada pin ini, motor akan bergerak kelajuan yang maksimum,
dan kelajuan motor tidak boleh dikawal.
• Sekiranya jumper ini ditanggalkan, kelajuan motor akan dapat dikawal dengan
menyambungkan pin ini ke pin PWM Arduino (pin yang mempunyai symbol ~).
Jabatan Kejuruteraan Elektrik dan Sains 13
Kolej Poly-Tech Mara Kuantan
PROGRAM MOBILE ROBOT
• Seterusnya, Input 1 dan Input 2 pin digunakan untuk mengawal arah putaran motor A, dan
input 3 dan 4 untuk motor B.
• Jika input 1 adalah LOW dan input 2 adalah HIGH, motor akan berputar mengikut arah jam,
dan sebaliknya, jika input 1 adalah HIGH dan input 2 adalah LOW, motor akan berputar
mengikut lawan jam.
• Sekiranya kedua-dua input adalah sama, sama ada LOW atau HIGH, motor akan berhenti.
• Begitu juga dengan input 3 dan 4 untuk motor B.
• Namun, keadaan di atas tidak dapat dipenuhi sekiranya pemasangan wayar motor adalah
terbalik.
Jabatan Kejuruteraan Elektrik dan Sains 14
Kolej Poly-Tech Mara Kuantan
PROGRAM MOBILE ROBOT 15
• Contoh program untuk menggerakkan robot ke hadapan:
int RIGHT_MOTOR_SPEED = 3;
int LEFT_MOTOR_SPEED = 6;
int LEFT_MOTOR_DIR_1 = 7;
int LEFT_MOTOR_DIR_2 = 5;
int RIGHT_MOTOR_DIR_1 = 4;
int RIGHT_MOTOR_DIR_2 = 2;
void setup()
{
pinMode(LEFT_MOTOR_DIR_1, OUTPUT);
pinMode(LEFT_MOTOR_DIR_2, OUTPUT);
pinMode(RIGHT_MOTOR_DIR_1, OUTPUT);
pinMode(RIGHT_MOTOR_DIR_2, OUTPUT);
}
Jabatan Kejuruteraan Elektrik dan Sains
Kolej Poly-Tech Mara Kuantan
PROGRAM MOBILE ROBOT
void loop() If the robot moving backward,
{ reverse the wiring polarity of the
two motors.
RIGHT_MOTOR_FORWARD();
LEFT_MOTOR_FORWARD(); OR
analogWrite(RIGHT_MOTOR_SPEED,100);
analogWrite(LEFT_MOTOR_SPEED,100); Change the programming:
} • LOW HIGH and HIGH LOW
void RIGHT_MOTOR_FORWARD() for RIGHT_MOTOR_FORWARD()
{ and LEFT_MOTOR_FORWARD()
digitalWrite(RIGHT_MOTOR_DIR_1,LOW);
digitalWrite(RIGHT_MOTOR_DIR_2,HIGH);
}
void LEFT_MOTOR_FORWARD() 16
{
digitalWrite(LEFT_MOTOR_DIR_1,LOW);
digitalWrite(LEFT_MOTOR_DIR_2,HIGH);
}
Jabatan Kejuruteraan Elektrik dan Sains
Kolej Poly-Tech Mara Kuantan
PROGRAM MOBILE ROBOT
Latihan:
Tuliskan program supaya:
1. Robot akan sentiasa bergerak ke belakang.
2. Robot akan sentiasa membelok ke kanan.
3. Robot akan sentiasa membelok ke kiri.
4. Robot akan bergerak ke hadapan selama 5 saat, bergerak ke belakang selama 5 saat, belok kiri
selama 5 saat, belok ke kanan selama 5 saat dan keadaan ini akan sentiasa berulang.
Jabatan Kejuruteraan Elektrik dan Sains 17
Kolej Poly-Tech Mara Kuantan
PROGRAM MOBILE ROBOT
Sensor Ultrasonik
• Sensor ultrasonik adalah instrumen yang mengukur jarak ke objek menggunakan
gelombang bunyi ultrasonik.
• Bunyi ultrasonik bergetar pada kekerapan di atas julat pendengaran manusia.
Jabatan Kejuruteraan Elektrik dan Sains 18
Kolej Poly-Tech Mara Kuantan
PROGRAM MOBILE ROBOT
• Untuk memprogramkan sensor ultrasonik, NewPing library hendaklah di muat turun dan
ditambahkan ke dalam perisian (software) Arduino.
• Di bawah adalah pautan untuk muat turun:
https://playground.arduino.cc/Code/NewPing
• Cara-cara untuk memasukkan NewPing library ke dalam perisian Arduino:
Buka perisian Arduino
Klik pada Sketch Include Library Add.ZIP Library
Jabatan Kejuruteraan Elektrik dan Sains 19
Kolej Poly-Tech Mara Kuantan
PROGRAM MOBILE ROBOT
Kemudiannya cari NewPing-v1.8.zip yang telah dimuat turun sebelum ini dan klik
Open.
Library tersebut telah berjaya dimasukkan sekiranya paparan di bawah ini keluar.
Jabatan Kejuruteraan Elektrik dan Sains 20
Kolej Poly-Tech Mara Kuantan
PROGRAM MOBILE ROBOT
• Contoh program sensor ultrasonik:
#include <NewPing.h>
int trig_pin = 8; //Trig pin is connected to 8
int echo_pin = 9; //Echo pin is connected to 9
#define maximum_distance 200 //maksimum distance is 200 cm
int distance;
NewPing sonar(trig_pin, echo_pin, maximum_distance); //sensor function
void setup()
{
Serial.begin(9600);
}
Jabatan Kejuruteraan Elektrik dan Sains 21
Kolej Poly-Tech Mara Kuantan
PROGRAM MOBILE ROBOT
void loop() Klik Serial Monitor ikon di penjuru atas kanan perisian
{ Arduino dan jarak di antara sensor dengan objek akan
distance = readPing(); dipaparkan di dalam unit cm:
Serial.println(distance);
delay(1000);
}
int readPing()
{
int cm = sonar.ping_cm();
if (cm==0)
{
cm=200;
}
return cm;
}
Jabatan Kejuruteraan Elektrik dan Sains 22
Kolej Poly-Tech Mara Kuantan
PROGRAM MOBILE ROBOT
Contoh program di mana robot akan berhenti sekiranya ada halangan di hadapan robot yang
jaraknya kurang daripada 20 cm. Robot akan kembali bergerak sekiranya tiada halangan yang
kurang daripada 20 cm di hadapan robot.
#include <NewPing.h> //Ultrasonic sensor function library. You must install this library
int trig_pin = 8; //Trig pin is connected to 8
int echo_pin = 9; //Echo pin is connected to 9
#define maximum_distance 200 //maksimum distance is 200 cm
int distance;
NewPing sonar(trig_pin, echo_pin, maximum_distance); //sensor function
int RIGHT_MOTOR_SPEED = 3;
int LEFT_MOTOR_SPEED = 6;
int LEFT_MOTOR_DIR_1 = 7;
int LEFT_MOTOR_DIR_2 = 5;
int RIGHT_MOTOR_DIR_1 = 4;
int RIGHT_MOTOR_DIR_2 = 2;
Jabatan Kejuruteraan Elektrik dan Sains 23
Kolej Poly-Tech Mara Kuantan
PROGRAM MOBILE ROBOT 24
void setup()
{
pinMode(LEFT_MOTOR_DIR_1, OUTPUT);
pinMode(LEFT_MOTOR_DIR_2, OUTPUT);
pinMode(RIGHT_MOTOR_DIR_1, OUTPUT);
pinMode(RIGHT_MOTOR_DIR_2, OUTPUT);
}
void loop()
{
distance = readPing();
delay(100);
Serial.println(distance);
if(distance < 20)
{
analogWrite(RIGHT_MOTOR_SPEED,0); //motor right stop
analogWrite(LEFT_MOTOR_SPEED,0); //motor left stop
}
Jabatan Kejuruteraan Elektrik dan Sains
Kolej Poly-Tech Mara Kuantan
PROGRAM MOBILE ROBOT
else
{
RIGHT_MOTOR_FORWARD();
LEFT_MOTOR_FORWARD();
analogWrite(RIGHT_MOTOR_SPEED,100); //speed can be changed from 0 - 255
analogWrite(LEFT_MOTOR_SPEED,100); //speed can be changed from 0 - 255
}
}
Jabatan Kejuruteraan Elektrik dan Sains 25
Kolej Poly-Tech Mara Kuantan
PROGRAM MOBILE ROBOT 26
void RIGHT_MOTOR_FORWARD()
{
digitalWrite(RIGHT_MOTOR_DIR_1,LOW);
digitalWrite(RIGHT_MOTOR_DIR_2,HIGH);
}
void LEFT_MOTOR_FORWARD()
{
digitalWrite(LEFT_MOTOR_DIR_1,LOW);
digitalWrite(LEFT_MOTOR_DIR_2,HIGH);
}
int readPing()
{
delay(70);
int cm = sonar.ping_cm();
if (cm==0)
{
cm=200;
}
return cm;
}
Jabatan Kejuruteraan Elektrik dan Sains
Kolej Poly-Tech Mara Kuantan
LINE FOLLOWER ROBOT
• Line follower Robot is a machine which follows a line, either a black line or white line.
• Infrared sensor will be used to sense the line.
Concepts of Line Follower
• Concept of working of line follower is related to light. The task of the robot is to sense the
reflectivity of light at black and white surface.
• When light fall on a white surface it is almost full reflected and in case of black surface light is
completely absorbed. This behavior of light is used in building a line follower robot.
Jabatan Kejuruteraan Elektrik dan Sains 27
Kolej Poly-Tech Mara Kuantan
LINE FOLLOWER ROBOT
Working of Line Follower Robot using Arduino
1) Robot moves forward
- The robot will move forward if both infrared sensors detect black line.
if(digitalRead(IR_LEFT) == HIGH && digitalRead(IR_RIGHT) == HIGH)
{
ROBOT_FORWARD();
analogWrite(RIGHT_MOTOR_SPEED,100);
analogWrite(LEFT_MOTOR_SPEED,100);
}
Jabatan Kejuruteraan Elektrik dan Sains 28
Kolej Poly-Tech Mara Kuantan
LINE FOLLOWER ROBOT
2) Robot Steering to the right
- The robot will have to turn left if only the left sensor is detecting the black line.
if(digitalRead(IR_LEFT) == HIGH && digitalRead(IR_RIGHT) == LOW)
{
ROBOT_FORWARD();
analogWrite(RIGHT_MOTOR_SPEED,100);
analogWrite(LEFT_MOTOR_SPEED,0);
}
Jabatan Kejuruteraan Elektrik dan Sains 29
Kolej Poly-Tech Mara Kuantan
LINE FOLLOWER ROBOT
3) Robot Steering to the left
- The robot will have to turn right if only the right sensor is detecting the black line.
if(digitalRead(IR_LEFT) == LOW && digitalRead(IR_RIGHT) == HIGH)
{
ROBOT_FORWARD();
analogWrite(RIGHT_MOTOR_SPEED,0);
analogWrite(LEFT_MOTOR_SPEED,100);
}
Jabatan Kejuruteraan Elektrik dan Sains 30
Kolej Poly-Tech Mara Kuantan
LINE FOLLOWER ROBOT
4) Robot reached a right corner line
- The robot will have to turn right if only the right sensor is detecting the black line. The
programming is the same as the previous condition.
if(digitalRead(IR_LEFT) == LOW && digitalRead(IR_RIGHT) == HIGH)
{
ROBOT_FORWARD();
analogWrite(RIGHT_MOTOR_SPEED,0);
analogWrite(LEFT_MOTOR_SPEED,100);
}
Jabatan Kejuruteraan Elektrik dan Sains 31
Kolej Poly-Tech Mara Kuantan
LINE FOLLOWER ROBOT
5) Robot reached a left corner line
- The robot will have to turn left if only the left sensor is detecting the black line. The
programming is the same as the previous condition.
if(digitalRead(IR_LEFT) == HIGH && digitalRead(IR_RIGHT) == LOW)
{
ROBOT_FORWARD();
analogWrite(RIGHT_MOTOR_SPEED,100);
analogWrite(LEFT_MOTOR_SPEED,0);
}
Jabatan Kejuruteraan Elektrik dan Sains 32
Kolej Poly-Tech Mara Kuantan
LINE FOLLOWER ROBOT
TASK
Program a line follower robot that will follow the given track.
The robot will stop moving when it detects an object which is
less than 20 cm from the ultrasonic sensor. The robot will
continue moving when the object is taken away.
Jabatan Kejuruteraan Elektrik dan Sains 33
Kolej Poly-Tech Mara Kuantan