Anda di halaman 1dari 14

Praktikum Teknologi Sensor

Percobaan 3. Potensiometer

Tujuan
a. Mahasiswa dapat mengetahui prinsip kerja potensiometer
b. Mahasiswa dapat mengetahui karakteristik potensiometer
c. Mahasiswa dapat mengetahui rangkaian Potensiometer sebagai sensor
d. Mahasiswa dapat memahami cara menggunakan potensiometer sebagai sensor posisi

Pendahuluan
Potensiometer adalah salah satu jenis Resistor yang nilai resistansinya dapat diatur sesuai dengan
kebutuhan kebutuhan pemakainya. Potensiometer merupakan keluarga resistor yang tergolong
dalam kategori Variable Resistor. Secara umum struktur potensiometer terdiri dari 3 kaki Terminal
dengan sebuah shaft atau tuas yang berfungsi sebagai pengaturnya. Gambar 1 di bawah menunjukan
bentuk potensiometer beserta bentuk dan simbolnya.

a. Contoh bentuk potensiometer b. Simbol Potensiometer


Gambar 1. Contoh bentuk potensio meter beserta simbolnya
Pada dasarnya bagian-bagian penting dalam Komponen Potensiometer adalah, penyapu atau disebut
juga dengan wiper, bearing iolator, lapisan resistif, shaft, dan terminal logam. Struktur internal
potensiometer secara umum dapat dilihat pada gambar 2.

Mekatronika PENS - Praktikum Teknologi Sensor


Gambar 2. Struktur internal potensiometer, dan contoh aplikasi sebagai pembagi tegangan

Lapisan resistif merupakan lapisan yang mempunyai hambat jenis tertentu tergantung resistansi total
potensiometer yang dapat diukur dari resistansi ujung ke ujung terminal potensiometer (A dan C).
Wiper akan menghubungkan terminal logam luaran (B) dengan lapisan resistif ini. Elemen Resistif pada
Potensiometer umumnya terbuat dari bahan campuran Metal (logam) dan Keramik ataupun Bahan
Karbon (Carbon). Berdasarkan Track (jalur) elemen resistif-nya, Potensiometer dapat digolongkan
menjadi 2 jenis yaitu Potensiometer Linear (Linear Potentiometer) dan Potensiometer Logaritmik
(Logarithmic Potentiometer).
Dengan perpindahan posisi wiper, makan nilai resistansi dari terminal luaran dan terminal ujung
potensiometer akan berubah. Sebagai contoh, ketika potensiometer di atas diputar searah jarum jam,
maka resistansi dari ujung kiri ke terminal luaran (RAB) akan naik, sedangkan resistansi dari terminal
kanan ke luaran (RBC) akan turun. Kondisi sebaliknya akan terjadi pada saat potensiometer diputar
berlawanan arah jarum jam, dengan nilai resistansi antar ujung potensiometer (RAC) tetap.

Jenis-jenis Potensiometer
Berdasarkan bentuknya, Potensiometer dapat dibagi menjadi 3 macam, yaitu:
a) Potensiometer Slider, yaitu Potensiometer yang nilai resistansinya dapat diatur dengan cara
menggeserkan Wiper-nya dari kiri ke kanan atau dari bawah ke atas sesuai dengan
pemasangannya. Biasanya menggunakan Ibu Jari dan jari telunjuk untuk menggeser wiper-
nya.

Mekatronika PENS - Praktikum Teknologi Sensor


b) Potensiometer Rotary, yaitu Potensiometer yang nilai resistansinya dapat diatur dengan cara
memutarkan Wiper-nya sepanjang lintasan yang melingkar. Biasanya menggunakan Ibu Jari
dan jari telunjuk untuk memutar wiper tersebut. Oleh karena itu, Potensiometer Rotary sering
disebut juga dengan Thumbwheel Potentiometer.
c) Potensiometer Trimmer, yaitu Potensiometer yang bentuknya kecil dan harus menggunakan
alat khusus seperti Obeng (screwdriver) untuk memutarnya. Potensiometer Trimmer ini
biasanya dipasangkan di PCB dan jarang dilakukan pengaturannya.

Gambar 3. Jenis potensiometer berdasarkan bentuknya

Potensiometer yang tersedia di pasaran terdiri dari beberapa jenis, yaitu: potensiometer karbon,
potensiometer wire wound dan potensiometer metal film.
a) Potensiometer karbon adalah potensiometer yang terbuat dari bahan karbon harganya cukup
murah akan tetapi kepressian potensiometer ini sangat rendah biasanya harga resistansi akan
sangat mudah berubah akibat pergeseran kontak.
b) Potensiometer gulungan kawat (wire wound) adalah potensiometer yang menggunakan
gulungan kawat nikelin yang sangat kecil ukuran penampangnya. Ketelitian dari
potensiometer jenis ini tergantung dari ukuran kawat yang digunakan serta kerapihan
penggulungannya.
c) Metal film adalah potensiometer yang menggunakan bahan metal yang dilapiskan ke bahan
isolator
Potensiometer karbon dan metal film jarang digunakan untuk kontrol industri karena cepat aus, dan
potensiometer wire wound lebih sering digunakan untuk aplikasi industry yang membutuhkan
ketahanan lebih tinggi.
Penggunaan potensiometer untuk pengontrolan posisi cukup praktis karena hanya membutuhkan
satu tegangan eksitasi dan biasanya tidak membutuhkan pengolah sinyal yang rumit. Kelemahan
penggunaan potensiometer terutama adalah:
1. Cepat aus akibat gesekan

Mekatronika PENS - Praktikum Teknologi Sensor


2. Sering timbul noise terutama saat pergantian posisi dan saaat terjadi lepas kontak
3. Mudah terserang korosi
4. Peka terhadap pengotor
Potensiometer linier adalah potensiometer yang perubahan tahanannya linear dengan perubahan
posisinya (putaran atau pergeseran). Potensiometer multi-turn merupakan salah satu jenis
potensiometer khusus yang sangat halus perubahan resistansinya dengan jumlah putaran sampai
sepuluh kali putaran.

Gambar 4. Contoh potensiometer multi-turn


Untuk keperluan sensor posisi potensiometer linier memanfaatkan perubahan resistansi, diperlukan
proteksi apabila jangkauan ukurnya melebihi rating, linearitas yang tinggi hasilnya mudah dibaca
tetapi hati-hati dengan friksi dan backlash yang ditimbulkan, resolusinya terbatas yaitu 0,2 – 0,5%.

Modul Praktikum
Modul Praktikum yang digunakan menggunakan Chip mikrokontroler AT Mega 16 atau AT Mega 8535.
Modul ini dilengkapi dengan Digital dan Analog I/O serta LCD text.
a. Digital input disimulasikan dengan denggunakan Dipswitch yang terhubung ke PORT C dengan
mode active low
b. Analog input terhubung ke ADC dan juga tersambung ke 8 buah VR yang dirangkai sebagai
rangkaian pembagi tegangan dengan tegangan sumber 5 V
c. Digital Output disambungkan pada LD yang terhubung pada PORT B dengan sifat active high
d. Analog Output terhubung ke OC1A dan OC1B yaitu PWM yang dikeluarkan ke timer/counter
1. Dari PWM tersebut akhirnya dimasukkan ke rangkaian LPF untuk mengubah sinyal PWM ke
tegangan analog

Mekatronika PENS - Praktikum Teknologi Sensor


e. Modul ini juga dilengkapi dengan LCD yang terhubung ke PORT B
Modul ini deprogram dengan menggunakan computer melalui port ISP.

Analog cv
Out
Digital Output (8x LED)

ISP
I/O PORT CONNECTOR

LCD 16x2

Gambar 5. Contoh modul mikrokontroler ATMega 16


Kofigurasi konektor I/O pada masing-masing port (A, B, C, dan D) sebagai berikut:

9 6 4 2 0 GND 1
9

10 7 5 3 1 VCC 2

Gambar 6. Keterangan Pinput dari PORT pada board AVR

Peralatan
1. Modul Mikrokontroler
2. ISP programmer

Mekatronika PENS - Praktikum Teknologi Sensor


3. Komputer dengan ISP programmer dan IDE (Code Vision AVR)
4. Potensiometer (putar, geser dan multi turn)
5. Breadboard
6. Op-amp LM324
7. Kabel penghubung
8. Multimeter

Prosedur Percobaan
A. Potensiometer putar (Rotary)
1. Ambil potensiometer putar (rotary), lalu pasang terminal ujung potensiometer (A) ke ground,
terminal luaran (B) ke input ADC kanal 0 (PORT A bit 0), dan terminal ujung (B) ke VCC.
2. Dalam praktikum ini akan ditampilkan data hasil konversi ADC kanal 0 yang terhubung ke
potensiometer pada LCD.
3. Buat project baru dan gunakann Code Wizard AVR

4. Set Chip menjadi AT Mega 8535 atau AT Mega 16 (sesuai yang ada pada board)

Mekatronika PENS - Praktikum Teknologi Sensor


5. Set Clock pada 11.059200 MHz
6. Selanjutnya pilih PORT, lalu pilih PORT B, dan set semua konsisinya sebagai output (untuk interface
ke LCD)

7. Selanjutnya masuk ke tab ADC dana atur konfigurasinya sebagai berikut

Mekatronika PENS - Praktikum Teknologi Sensor


8. Selanjutnya pilih menu Program  Generate, Save and Exit

9. Simpan file dengan nama tertentu (letakkan foldernya sesuai dengan keinginan). File yang
dismpan ada 3 jennis, yaitu: Source (*.c), Project (*.prj), dan codeWizzardProject (*.cwp)

Mekatronika PENS - Praktikum Teknologi Sensor


10. Apabila belum ada, untuk bisa mengakses LCD maka perlu dibuat file header untuk akses LCD,
dengan cara pilih menu File, New, dan pilih Source, lalu tekan OK. Selanjutnya copy dan paste kode
dibawah pada file tersebut.
/*********************************************************
Project : ADROIT AVR Rev.3
Version : 1
Date : 3/13/2014
Author : Eko Henfri Binugroho
Company : ER2C

Code : Routines to Text LCD 16x2


*********************************************************/
#ifndef _myLCD_
#define _myLCD_

// Fungsi LCD
#define DelayLCD 50
#define LCD_PORT PORTB
#define LCD_RS PORTB.3
#define LCD_EN PORTB.2

#pragma used+
void LCD_Init_Cmd(unsigned char xData)
{ LCD_PORT = xData & 0xF0;
delay_us(1); LCD_EN = 0;
}
void LCD_Perintah(unsigned char xData)
{ //LCD_RS=0; LCD_RW=0; LCD_EN=1;
LCD_RS=0;
LCD_PORT = 0B00000100 | (xData & 0xF0);
delay_us(1); LCD_EN = 0;
delay_us(10);
LCD_PORT = 0B00000100 | (xData << 4);
delay_us(1); LCD_EN = 0;
delay_us(1000);
//LCD_EN = 1;
}

void LCD_Data(unsigned char xData)


{ //LCD_RS=1; LCD_RW=0; LCD_EN=1;
LCD_RS=1;
LCD_PORT = 0B00001100 | (xData & 0xF0);
delay_us(1); LCD_EN = 0;
delay_us(10);
LCD_PORT = 0B00001100 | (xData << 4);
delay_us(1); LCD_EN = 0;
delay_us(100);
//LCD_EN = 1;
}

void LCD_Init(void)
{ delay_ms(100); LCD_Init_Cmd(0x30);
delay_ms(10); LCD_Init_Cmd(0x30);
delay_ms(2); LCD_Init_Cmd(0x30);
delay_ms(2); LCD_Init_Cmd(0x20);
LCD_Perintah(0x28); //4-bit/2-line
LCD_Perintah(0x10); // Set cursor
LCD_Perintah(0x0c); // Display ON; Cursor off
LCD_Perintah(0x06); // Entry mode =increment, no shift
LCD_Perintah(0x01); // Hapus layar
}

void LCD_GotoXY(unsigned char x, unsigned char y)


{ unsigned char baris;
if (y==0) LCD_Perintah(0x80 + x); // baris 1 --> y=0
else LCD_Perintah(0x80 + x + 0x40); // baris 2 --> y=1
}

void LCD_TextF(unsigned char flash *text) // menuliskan string ke LCD


{ while (*text!=0)
{ LCD_Data(*text);text++;}
}

void LCD_Text(unsigned char *text) // menuliskan string ke LCD


{ while (*text!=0)
{ LCD_Data(*text);text++;}
}

void LCD_TulisF(unsigned char Baris, unsigned char flash *text) // menuliskan string ke LCD
{ LCD_GotoXY(0,Baris);LCD_TextF(text);
}

void LCD_Hapus(void) // menghapus seluruh layar

Mekatronika PENS - Praktikum Teknologi Sensor


{ LCD_Perintah(0x01);
}

void LCD_HapusBaris(unsigned char Baris) // menghapus baris tabpa delay


{ unsigned char i;
LCD_GotoXY(0,Baris);
for(i=0;i<16;i++) LCD_Data(' ');
}

void LCD_HapusKiri(unsigned char Baris)


// menghapus layar dari arah kiri dgn delay pada(0=baris 1, 1=Baris 2)
{ unsigned char i;
LCD_GotoXY(0,Baris);
for(i=0;i<16;i++) { LCD_Data(' '); delay_ms(DelayLCD);}
}

void LCD_HapusKanan(unsigned char Baris)


// menghapus layar dari arah kanan dgn delay pada(0=baris 1, 1=Baris 2)
{ unsigned char j;
signed char i;
j = 0x80 + 0x40 * Baris;
for(i=15;i>-1;i--)
{ LCD_Perintah (j+i); LCD_Data(' '); delay_ms(DelayLCD);}
}

void LCD_TulisKiri(unsigned char Baris, unsigned char flash *text)


// menuliskan string dari arah kiri dgn delay pada (0=baris 1, 1=Baris 2)
{ unsigned char i;
LCD_GotoXY(0,Baris);
for(i=0;i<16;i++)
{ LCD_Data(*(text+i)); delay_ms(DelayLCD);}
}

void LCD_TulisKanan(unsigned char Baris, unsigned char flash *text)


// menuliskan string dari arah kanan dgn delay
{ unsigned char j;
signed char i;
j = 0x80 + 0x40 * Baris;
for(i=15;i>-1;i--)
{ LCD_Perintah (j+i); LCD_Data(*(text+i)); delay_ms(DelayLCD);}
}

void LCD_TulisTengah(unsigned char Baris, unsigned char flash *text)


// menuliskan string dari arah kanan dgn delay
{ unsigned char j;
signed char i;
j = 0x80 + 0x40 * Baris;
for(i=7;i>-1;i--)
{ LCD_Perintah (j+i); LCD_Data(*(text+i)); delay_ms(DelayLCD);
LCD_Perintah (j-i+15); LCD_Data(*(text-i+15)); delay_ms(DelayLCD);
}
}

void LCD_TulisPinggir(unsigned char Baris, unsigned char flash *text)


// menuliskan string dari arah kanan dgn delay
{ unsigned char i,j;
j = 0x80 + 0x40 * Baris;
for(i=0;i<8;i++)
{ LCD_Perintah (j+i); LCD_Data(*(text+i)); delay_ms(DelayLCD);
LCD_Perintah (j-i+15); LCD_Data(*(text-i+15)); delay_ms(DelayLCD);
}
}

void LCD_Angka4(short int x)


{ if(x<0){ x*=-1; LCD_Data('-');}
LCD_Data(x/1000+0x30); // menulis ribuan
LCD_Data((x%1000)/100+0x30); // menulis ratusan
LCD_Data((x%100)/10+0x30); // menulis puluhan
LCD_Data(x%10+0x30); // menulis satuan
}

void LCD_Angka3(short int x)


{ if(x<0){ x*=-1; LCD_Data('-');}
LCD_Data(x/100+0x30); // menulis ratusan
LCD_Data((x%100)/10+0x30); // menulis puluhan
LCD_Data(x%10+0x30); // menulis satuan
}

void LCD_sByte(signed char x)


{ if(x<0){ x*=-1; LCD_Data('-');}
LCD_Data(x/100+0x30); // menulis ratusan
LCD_Data((x%100)/10+0x30); // menulis puluhan
LCD_Data(x%10+0x30); // menulis satuan
}

void LCD_uByte(unsigned char x)


{ LCD_Data(x/100+0x30); // menulis ratusan
LCD_Data((x%100)/10+0x30); // menulis puluhan

Mekatronika PENS - Praktikum Teknologi Sensor


LCD_Data(x%10+0x30); // menulis satuan
}
#pragma used-
#endif

11. Selanjutnya simpan file ini ke folder sorce Anda dan beri nama LCD.h

12. Kembali ke file file yang lama dan tambahkan file LCD.h tadi ke project ADC

13. Tampilkan data konversi pada dari kanal 0 ke LCD dengan menambahkan program pada source

14. Build Project dengan menekan tombol Ctrl+F9

Mekatronika PENS - Praktikum Teknologi Sensor


15. Lalu koneksikan ISP Programmer dari USB computer ke Modul mikrokontroler
16. Buka program Khazama AVR Programmer pada PC

17. Buka file hex hasil build dari program (arahkan pada folder dimana Anda menyimpan file dari
CodeVisionAVR)
18. Selanjutnya teka tombol Auto Program
19. Apabila proses benar, maka LED akan menampilkan nilai decimal hasil konversi ADC kanal 0 yang
menunjukkan nilai perubahan posisi potensiometer.
20. Atur posisi trimer potensimeter dari modul percobaan yang terhubung ke kanal 0 ADC pada posisi
paling kiri (berlawanan arah jarumjam maksimal).
21. Catat posisi potensiometer dan nilai pembacaan ADC yang didapatkan dari sudut minimal sampai
dengan sudut maksimalnya dengan perubahan setiap 5°.

Mekatronika PENS - Praktikum Teknologi Sensor


Tabel 1. Data sudut potensiometer dan pembacaan ADC
Nomor Sudut Data ADC
1 0°
2 5°
3 10°
.
.
n m°

22. Tambahkan rangkaian buffer dengn menggunakan Op-amp dari keluaran potensiometer menuju
input ADC janal 0
23. Catat kembali posisi potensiometer dan nilai pembacaan ADC yang didapatkan dari sudut minimal
sampai dengan sudut maksimalnya dengan perubahan setiap 5°.
24. Ubah program yang sudah dibuat untuk menunjukkan data sudut dari potensiometer pada LCD, ,
dan catat program hasil modifikasinya..

B. Potensiometer Geser (Slider)


1. Ambil potensiometer geser (slider), lalu menggunakan ohmmeter cari terminal A, B dan C dari
potensiometer.
2. Pasang terminal ujung potensiometer (A) ke ground, terminal luaran (B) ke input ADC kanal 0
(PORT A bit 0), dan terminal ujung (B) ke VCC.
3. Ulangi langkah 2 sampai dengan 20 dari percobaan A
4. Catat posisi potensiometer dan nilai pembacaan ADC yang didapatkan dari posisi minimal sampai
dengan posisi maksimalnya dengan perubahan setiap 0.5 cm.
Tabel 2. Data posisi potensiometer dan pembacaan ADC
Nomor Posisi Data ADC
1 0 cm
2 0.5 cm
3 15 cm
.
.
n m cm

Mekatronika PENS - Praktikum Teknologi Sensor


5. Tambahkan rangkaian buffer dengn menggunakan Op-amp dari keluaran potensiometer menuju
input ADC kanal 0.
6. Catat kembali posisi potensiometer dan nilai pembacaan ADC yang didapatkan dari posisi minimal
sampai dengan posisi maksimalnya dengan perubahan setiap 0.5 cm.
7. Ubah program yang sudah dibuat untuk menunjukkan data posisi dari potensiometer pada LCD,
dan catat program hasil modifikasinya.

Tugas
1. Ulangi percobaan tersebut untuk potensiometer jenis multi-turn
2. Gambarkan grafik hubungan antara data posisi dan data pembacaan ADC dari masing-masing
potensiometer, analisa apakah linear atau tidak, apabila tidak analisa apa yang
menyebabkannnya.

Hbungan adc dngan posisi/keakuratan/resolusi


Memutar dan slider
Kelinieran data

Mekatronika PENS - Praktikum Teknologi Sensor

Anda mungkin juga menyukai