Professional Documents
Culture Documents
KATHOLIEKE UNIVERSITEIT
LEUVEN
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
• Mechatronics [1] Mechanism/Mechanical & Electronics
“Technologies and developed products will be
incorporating electronics more and more into mechanisms, intimately
and organically, and making it impossible to tell where one ends and
the other begins.”
• Key Elements of Mechatronics :
1. Physical System Modeling
2. Sensors & Actuators
3. Signal & System
4. Computers & Logic System
5. Software & Data Acquisition
[1] : Yasakawa Electric Company.2002.”The Mechatronics Handbook”.CRC Press
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Module
Module :
System Minimum
- I/O Module
- Comparator
- Motor Driver
- ADC Interface
- DC Motor
- LCD Module
- Voltage Regulator
Universitas Indonesia
DTM FTUI
KATHOLIEKE UNIVERSITEIT
LEUVEN
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Module
Evaluation Board PORT A PORT C
Module :
Act as main
processors
- Using ATMEGA 16 /
ATMEGA 8535
- 4 Ports (A,B,C,D)
- ISP Programming
PORT B PORT D
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Module
I/O Module :
Act as input device
and output indicator
- INPUT : Tactile
switch
- OUTPUT : LED
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Module
Comparator Module :
Act as Analog to
Digital Converter
- Using LM 324
- 1 PORT, 8 PIN
COMPARATOR Module
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Module
Motor Driver Module :
Act as Digital to Analog Converter
- Integrated with optocoupler PC 817
- Using mechanical relay to determine
the output polarity
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Module
ADC Module :
To interfacing between the sensor
and the microcontroller port
This interface is connected to the
ADC PORT / PIN in the
microcontroller. (see datasheet)
ADC Interface
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Module
DC Motor :
Actuator for the controller
- 12V DC
- Simulating the output from
PWM control
DC Motor
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Module
LCD Module:
2 x 16 character LCD Module
Use as a display indicator
LCD Module
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Module
Voltage Regulator Module:
Regulate the voltage supply
from 12V DC to 5 V DC, related
to the microcontroller
specification
- Using IC 7805 or LM 323K
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Basic Input Output
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Basic Input Output Skematik
Push Button
LED Module
Evaluation Board
Input
Output
5V DC
Voltage Regulator
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Basic Input Output Teori yang harus dimengerti
Inisialisasi Input/Output :
• Pada mikrokontroler, port paralel I/O adalah
device yang paling umum digunakan.
• Setiap port paralel I/O memiliki 3 I/O
register yang saling berhubungan :
- Data Direction Register (DDRx)
- Port Driver Register (PORTx)
- Port Pins Register (PINx)
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Inisialisasi Input/Output : (cont’d)
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Inisialisasi Input/Output : (cont’d)
• Jika data bit DDRx dipasang 1, bit tersebut menjadi
output. Contoh :
DDRA=0xFF; seluruh kaki pada port A
digunakan sebagai output.
0x00 adalah bilangan hexadesimal dengan nilai ff.
Nilai ff pada bilangan biner adalah 1111 1111. Nilai ini
menentukan port tersebut digunakan untuk apa.
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Inisialisasi Input/Output : (cont’d)
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Inisialisasi Input/Output : (cont’d)
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Interrupt :
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Interrupt : (cont’d)
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Basic Input Output Program
#include <mega16.h>
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Basic Input Output Program
void main(void)
{
DDRA=0xff; //port A lSB nya saja yang output dan nyala pada awalnya
//DDRB=0x01;
// External Interrupt(s) initialization
// INT0: On
// INT0 Mode: Falling Edge
// INT1: Off
// INT2: Off
GICR|=0x40;
MCUCR=0x02;
MCUCSR=0x00;
GIFR=0x40;
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Basic Input Output Program
#asm("sei")
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Digital voltmeter
- Dengan menggunakan fitur ADC pada
mikrokontroler, dapat dideteksi perubahan tegangan
pada baterai yang selanjutnya ditampilkan dalam
indikator LED.
- Fitur Analog Digital Converter (ADC) menggunakan
PORT/PIN yang sesuai dengan konfigurasi
mikrokontroler.
- Modul yang digunakan pada percobaan ini adalah
Evaluation Board, ADC interface, Modul LED
Laboratorium Teknologi Manufaktur dan Otomasi
Departemen Teknik Mesin 278
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Digital Voltmeter Skematik
ADC interface
LED Module
GP2D12
Sensor
Evaluation Board
Input
Output
5V DC
Voltage Regulator Sensing device
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Digital Voltmeter Teori yang harus dimengerti
Inisialisasi ADC :
• Mikrokontroler dapat menangani data
analog dengan cara mengkonversikannya
ke data digital.
• ADC pada AVR menghasilkan resolusi 10
bit dan dapat beroperasi pada kecepatan
15 kSPS (kilo-samples per second).
• ADC dapat digunakan pada 8 kaki
mikrokontroler (port A).
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Inisialisasi ADC : (cont’d)
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Inisialisasi ADC : (cont’d)
1. ADC control and status register (ADCSR)
diaktifkan untuk mengontrol pengfungsian dan
pendefinisian ADC yang digunakan.
Contoh :
ADCSR = 0xcb; // 0xcb adalah 11001011 (binari) untuk mengaktifkan
ADEN, ADSC,ADIE, ADSP1, dan ADSP0.
2. ADC mutiplexer select register (ADMUX) :
mengontrol kaki yang mana dari ADC yang
digunakan.
Contoh :
ADMUX=2; //mengaktifkan ADC2, yang terletak di port A kaki ke 2
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Digital Voltmeter Program
#include <mega16.h>
interrupt [ADC_INT] void adc_isr(void) //bila ada input, adc akan melakukan
interrupt
//dan melakukan...
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Digital Voltmeter Program (cont’d)
{
unsigned int data_adc; //ini adalah variabel data ADC
data_adc = ADCW; //data ADC adalah semua (10) bit
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Digital Voltmeter Program (cont’d)
void main(void)
{
DDRD=0x07; //3 LSB port D sebagai output
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Motor Drive using PWM
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Motor Drive using PWM Skematik
Motor Driver
Evaluation Board
Output
DC Motor
Voltage Regulator 5V DC
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Motor Drive Using PWM Program
#include <mega16.h>
#include<delay.h>
// general constants
#define MAXVAL 0x3FF // Maksimum PWM (10bit max value)
#define MAJU 0 // Active Low Forward
#define MUNDUR 1
#define PRESCALER 0x03 //64 Prescaler ---> lihat datasheet
//prototype function
void motor_Pwm(float pwm_kiri,int stat_kiri,float pwm_kanan,int
stat_kanan);
void cekPwm();
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Motor Drive Using PWM Program (cont’d)
void main() // main function: start here !!
{ DDRD = 0xF0; //Inisialisasi PWM
PORTD = 0xF0; //PORTD 4,5,6,7 --> Pull Up
TCCR1A = 0xF3; //10 bit PWM --> lihat datasheet
TCCR1B = PRESCALER; //Prescaler 64
while (1)
{
delay_ms(3000);
//motor_Pwm(15,MAJU,15,MAJU);
cekPwm();
delay_ms(3000);
//motorPwm(0,MUNDUR,0,MUNDUR);
}
}
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Motor Drive Using PWM Program (cont’d)
void motor_Pwm(float pwm_kiri,int stat_kiri,float pwm_kanan,int stat_kanan)
{
OCR1B = MAXVAL*pwm_kanan; //PORTD.5 ==> right motor
OCR1A = MAXVAL*pwm_kiri; //PORTD.4 ==> left motor
PORTD.7 = stat_kiri; //PORTD.7 ==> arah motor
kanan
PORTD.6 = stat_kanan; //PORTD.6 ==> arah motor kiri
}
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Motor Drive Using PWM Program (cont’d)
void cekPwm()
{
while(1)
{
motor_Pwm(5, MAJU, 5, MAJU);
delay_ms(2000);
motor_Pwm(15, MUNDUR, 15, MUNDUR);
delay_ms(2000);
}
}
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Integrated Digital Tachometer
- Percobaan ini menggunakan seluruh fitur yang
telah dijelaskan sebelumnya, yaitu : PWM dan I/O
- Ditambah dengan pengetahuan mengenai
penggunaan optocoupler sebagai sensor putaran
(encoder), comparator sebagai ADC, dan LCD
sebagai display output putaran.
- Modul yang digunakan pada percobaan ini adalah :
Evaluation Board, Motor Driver, DC Motor,
Comparator, Encoder Optocoupler, LCD
Laboratorium Teknologi Manufaktur dan Otomasi
Departemen Teknik Mesin 292
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Integrated Digital Tachometer Skematik
Motor Driver
Comparator
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Integrated Digital Tachometer Teori yang harus
dimengerti
- Input / Output
- Interrupt
- Timer / Counter
- Inisialisasi LCD
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Integrated Digital Tachometer Teori yang harus
dimengerti
Inisialisasi Timer / Counter :
• Merupakan fitur standar yang terdapat pada
mikrokontroler AVR
• Digunakan sebagai pengukur waktu, PWM,
kecepatan, frekuensi,dsb
• Pada ATMEGA8535 / ATMEGA16 terdapat 2 pin
timer 8-bit (Timer 0 dan Timer 2)
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Inisialisasi Timer / Counter :
Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
CS02 CS01 CS00
CS02 CS01 CS00 Interrupt Function
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Integrated Digital Tachometer Teori yang harus
dimengerti
Inisialisasi LCD :
• LCD digunakan sebagai tampilan data hasil
penghitungan (counter) sensor putaran (encoder).
• Sebelum ditampilkan dalam LCD, data counter
terlebih dahulu diproses oleh mikrokontroler
(dilakukan proses perhitungan dengan
menggunakan “rumus konversi”).
• Seluruh port pada ATMEGA8535 / ATMEGA16
dapat digunakan sebagai port LCD
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Integrated Digital Tachometer Program
#include <mega8535.h>
#include <delay.h>
#include <stdlib.h>
#asm
.equ __lcd_port=0x1B ;PORTA
#endasm
#include <lcd.h>
unsigned int itung;
unsigned int rps,rpm, sekarang, sebelum;
char lcd1[5];
char lcd2[5];
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Integrated Digital Tachometer Program (cont’d)
interrupt [TIM0_OVF] void timer0_ovf_isr(void)
{
TCNT0=6;
sekarang=TCNT1;
if (++itung==500)
{
if(sekarang>sebelum)
rps=sekarang-sebelum;
else
rps=0xffff-sekarang+sebelum;
rpm=rps*60;
itung=0;
}
//TCNT1=0;
}
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Integrated Digital Tachometer Program (cont’d)
void main (void)
{
TCCR0=0x03;
TCNT0=0x00;
TCCR1A=0x00;
TCCR1B=0x47;
TCNT1H=0x00;
TCNT1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
TIMSK=0x01;
#asm("sei")
Universitas Indonesia
DTM FTUI
Mechatronics
KATHOLIEKE UNIVERSITEIT
LEUVEN
Mechatronics Application
Integrated Digital Tachometer Program (cont’d)
lcd_init(16);
while (1)
{
lcd_gotoxy(0,0);
lcd_putsf("RPS = ");
lcd_puts(lcd1);
itoa (rps,lcd1); // Place your code here
lcd_gotoxy(0,1);
lcd_putsf("RPM = ");
lcd_puts(lcd2);
itoa (rpm,lcd2);
};
}
Universitas Indonesia
DTM FTUI
CodeVision AVR - tutorial
KATHOLIEKE UNIVERSITEIT
LEUVEN
1. Membuat PROJECT
Universitas Indonesia
DTM FTUI
CodeVision AVR – tutorial (cont’d)
KATHOLIEKE UNIVERSITEIT
LEUVEN
1. Membuat PROJECT (cont’d)
Universitas Indonesia
DTM FTUI
CodeVision AVR – tutorial (cont’d)
KATHOLIEKE UNIVERSITEIT
LEUVEN
1. Membuat PROJECT (cont’d)
Universitas Indonesia
DTM FTUI
CodeVision AVR – tutorial (cont’d)
KATHOLIEKE UNIVERSITEIT
LEUVEN
1. Membuat PROJECT (cont’d)
Universitas Indonesia
DTM FTUI
CodeVision AVR – tutorial (cont’d)
KATHOLIEKE UNIVERSITEIT
LEUVEN
1. Membuat PROJECT (cont’d)
Universitas Indonesia
DTM FTUI
CodeVision AVR – tutorial (cont’d)
KATHOLIEKE UNIVERSITEIT
LEUVEN
2. Membuat SOURCE
Universitas Indonesia
DTM FTUI
CodeVision AVR – tutorial (cont’d)
KATHOLIEKE UNIVERSITEIT
LEUVEN
3. INPUT File SOURCE ke dalam PROJECT
Universitas Indonesia
DTM FTUI
CodeVision AVR – tutorial (cont’d)
KATHOLIEKE UNIVERSITEIT
LEUVEN
4. INPUT SOURCE Code ke File & COMPILE (press - F9)
Miss :
#include <mega8535.h>\
void main()
{
DDRA=0xff
PORTA=0x0f
}
Universitas Indonesia
DTM FTUI
CodeVision AVR – tutorial (cont’d)
KATHOLIEKE UNIVERSITEIT
LEUVEN
5. HILANGKAN ERROR SOURCE Code & RE-COMPILE (press - F9)
Universitas Indonesia
DTM FTUI
CodeVision AVR – tutorial (cont’d)
KATHOLIEKE UNIVERSITEIT
LEUVEN
5. PROGRAMMER SETTING download program ke micron
Universitas Indonesia
DTM FTUI
CodeVision AVR – tutorial (cont’d)
KATHOLIEKE UNIVERSITEIT
LEUVEN
Bila menggunakan WIZARD :
1. Klik ‘Tool’
2. Klik ‘CodewizardAVR’
3. Set : Chip version & Oscilator Frequency
4. Set : (atau Clear-kan) Pins/Port yang diinginkan
5. Set : LCD dengan suatu Port (mis. PORTA)
6. Set : A/D C (a.l. : di-enable-kan, set Clock, set Voltage Ref.,)
Universitas Indonesia