Vous êtes sur la page 1sur 19

DISTANCE TANGENT

MEASURE

PROGRAM STUDI TEKNIK ELEKTRO


JURUSAN TEKNIK ELEKTRO
FAKULTAS TEKNIK ELEKTRO
TELKOM UNIVERSITY BANDUNG

1. PENDAHULUAN
A. LATAR BELAKANG
Pengukuran adalah kegiatan membandingkan suatu besaran yang diukur dengan alat
ukur yang digunakan sebagai satuan. Dalam fisika dan teknik, pengukuran merupakan
aktivitas yang membandingkan kuantitas fisik dari objek dan kejadian dunia nyata.
Alat pengukur adalah alat yang digunakan untuk mengukur benda atau kejadian
tersebut. Pemahaman dari prinsip kerja alat ukur juga harus dipahami dengan bagus
sehingga perancangan alat ukur yang telah direncanakan sesuai dengan harapan yang
kita inginkan. Pada kali ini, kami akan membuat alat ukur digital yang outputnya di
LCD yang dinamakan Distance Tangent Measure.

B. FUNGSI ALAT
Fungsi dari Distance Tangent Measure ini adalah untuk mengukur panjang sesuatu
baik itu berupa barang maupun ruangan. Selain itu, alat ini juga dapat mengukur
jarak, mengkonversi sudut, dan mengukur sudut suatu ruangan. Kelebihan dari alat ini
adalah menggunakan teknologi digital yang akan memudahkan kita untuk mengetahui
panjang suatu ruangan/benda.

C. BENTUK ALAT

2. CARA KERJA ALAT


A. PRINSIP KERJA ALAT
Prinsip kerja pada alat kami ini terletak pada sensor ultrasonik dan sebagai tambahan
pada pengukuran manualnya kami menggunakan led laser pointer. Di alat ini kami
menggunakan sistem minimum (sismin) atmega ATmega 16 sebagai pembacaan
input dari sensor (yang akan memberikan output) dan kemudian pembacaannya
dikeluarkan pada LCD. Pada saat kita menyalakan sumber daya dengan
menggunakan baterai dimana pada alat ini juga kami menggunakan switch untuk
powernya, sensor ultrasonik akan bekerja dan mulai mengukur dimana pada saat yang
sama, laser juga menembakkan cahayanya sebagai tambahan pada pengukuran
manual yang merupakan sebagai pembuktian kebenaran pada pengukuran alat ini.
Setelah sensor bekerja, sensor akan memberikan inputan kepada sistem minimum
(sismin) ATmega16 dan pada sismin inilah diberikan program yang akan mengukur
panjang, jarak, konversi sudut, serta menghitung sudut. Kemudian, sismin ini
memberikan output pada LCD yang kemudian menampilkan pembacaan dari sismin.
Pada alat ini juga kami menggunakan tombol hold dengan fungsi untuk menahan
tampilan lcd agar lebih mudah dilihat.

tan = a / b
a = b (tan )

B. METODE PENGUKURAN
Metode pengukuran jarak dengan sensor ultrasonik, dan pengukuran sudut dengan
potensiometer.
C. DIAGRAM BLOK SYSTEM

Input

Sumber
(Power)

Sismin
ATMega 16

LCD

Output

Sensor

3. SPESIFIKASI UNTUK KERJA TEKNIS


A. DATA KELISTRIKAN
Sumber Catu Daya

: 7V - 12 V

B. SPESIFIKASI PENGUKURAN
Parameter yang diukur
: Sudut, Jarak, dan Panjang
Batas pengukuran
:
Jarak
: 3 cm 300 cm
Sudut
: 00 - 1450
Panjang
: 30cm * tan 89,990

C. DATA MEKANIK
Ukuran
Panjang
Lebar
Tinggi
Berat

:
: 16 cm
: 10,5 cm
: 10,2 cm
: 310 gram

4. PENGUJIAN ALAT
A. METODE PENGUJIAN

Pada saat sumber daya dinyalakan, sensor ultrasonik akan bekerja dan mulai
mengukur dimana pada saat yang sama, laser juga menembakkan cahayanya sebagai
tambahan pada pengukuran manual yang merupakan sebagai pembuktian kebenaran
pada pengukuran alat ini. Setelah sensor bekerja, sensor akan memberikan masukan
kepada sistem minimum (sismin) ATmega16 dan pada sismin inilah diberikan
program yang akan mengukur panjang, jarak, konversi sudut, serta menghitung sudut.
B. TABEL HASIL PENGUKURAN
Pengukuran
Sudut

Jarak

Panjang

5. LAMPIRAN

Ukuran

Sebenarnya
450
60
50
10 cm
23 cm
33 cm

Dari Alat
45,50
6,30
5,20
9,88 cm
22,97 cm
32,5 cm

34 cm
20 cm
20,5 cm

34,85 cm
19,5 cm
19,9 cm

A. List Komponen
Ultrasonik
LCD 16x2
Laser Led Pointer
Sistem Minimum ATmega16
Switch
Push Button
Kabel (Jumper)
Baterai Lippo 12 V
Acrylic (Untuk kerangka)

C. List Program
/*****************************************************
This program was produced by the
CodeWizardAVR V2.05.0 Professional
Automatic Program Generator
Copyright 1998-2010 Pavel Haiduc, HP InfoTech s.r.l.
http://www.hpinfotech.com

Project :
Version :
Date : 5/15/2014
Author : DGT
Company :

Comments:
Chip type

: ATmega16

Program type

: Application

AVR Core Clock frequency: 16.000000 MHz


Memory model

: Small

External RAM size

:0

Data Stack size

: 256

*****************************************************/

#include <mega16.h>
#include <stdio.h>
#include <math.h>

#include <delay.h>

// Alphanumeric LCD Module functions


#include <alcd.h>

#define ADC_VREF_TYPE 0x00

// Read the AD conversion result


unsigned int read_adc(unsigned char adc_input)
{
ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);

// Delay needed for the stabilization of the ADC input voltage


delay_us(10);
// Start the AD conversion
ADCSRA|=0x40;
// Wait for the AD conversion to complete
while ((ADCSRA & 0x10)==0);
ADCSRA|=0x10;
return ADCW;
}

// Declare your global variables here

unsigned int l2,count1,count2,;


int a,count3;
float konvert,l3,c,l1,sudut,tangen,sudut_rad;
unsigned char view [16],buf[16],suk [128],hasil[16],cek[16] ;
float b=-0.523076923, m=0.015384615 ;

//=============uji trigonometri=============
unsigned int ;
float tri;

//==============================ultra1==FIXED===========================

void ultra1 ()
{
count1=0;
l1=0;
DDRD.1=1;
PORTD.1=1;
delay_us(10);
PORTD.1=0;

DDRD.0=0;
PORTD.0=1;

while(PIND.0==0){};
while(PIND.0==1)
{count1++;};

l1=((m*count1)+b);

}
//=========================ULTRA2==VAR===
void ultra2 ()
{
//count2=0;
//l2=0;

//DDRD.3=1;
//PORTD.3=1;
//delay_us(10);
//PORTD.3=0;

//DDRD.4=0;
//PORTD.4=1;

//while(PIND.4==0){};
//while(PIND.4==1)
//{count2++;};

//l2=(count2/68);
}
//==========================================sudut========================
void konversi ()
{a= read_adc (1);
//konvert = a/270;
sudut = (a*0.216867469879518 -3.25301204819277);
// sudut = (a*27)/102.3;
// sudut = sudut+12;
}
// Declare your global variables here

void main(void)
{
// Declare your local variables here

// Input/Output Ports initialization


// Port A initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTA=0x00;
DDRA=0x00;

// Port B initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTB=0x00;
DDRB=0x00;

// Port C initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTC=0x00;
DDRC=0x00;

// Port D initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTD=0x00;
DDRD=0x00;

// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Normal top=0xFF
// OC0 output: Disconnected
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;

// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer1 Stopped
// Mode: Normal top=0xFFFF
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer1 Overflow Interrupt: Off

// Input Capture Interrupt: Off


// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;

// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer2 Stopped
// Mode: Normal top=0xFF
// OC2 output: Disconnected
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;

// External Interrupt(s) initialization


// INT0: Off
// INT1: Off
// INT2: Off
MCUCR=0x00;
MCUCSR=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization


TIMSK=0x00;

// USART initialization
// USART disabled
UCSRB=0x00;

// Analog Comparator initialization


// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;
SFIOR=0x00;

// ADC initialization
// ADC Clock frequency: 1000.000 kHz
// ADC Voltage Reference: AREF pin
// ADC Auto Trigger Source: ADC Stopped

ADMUX=ADC_VREF_TYPE & 0xff;


ADCSRA=0x84;

// SPI initialization
// SPI disabled
SPCR=0x00;

// TWI initialization
// TWI disabled
TWCR=0x00;

// Alphanumeric LCD initialization


// Connections specified in the
// Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:
// RS - PORTB Bit 1
// RD - PORTB Bit 7
// EN - PORTB Bit 6
// D4 - PORTB Bit 3
// D5 - PORTB Bit 4
// D6 - PORTB Bit 5
// D7 - PORTB Bit 0
// Characters/line: 16
lcd_init(16);

DDRC.0 = 0;
PORTC.0 = 1;
count3=0;

while (1)
{

if (PINC.0 == 1){
ultra1();
konversi();
sudut_rad = sudut/180*3.14;
tangen= tan (sudut_rad);

tri = tangen*(l1+9)+5;

sprintf (view , "l1=%.2f %.1f" , l1,sudut);


sprintf (suk , "P= %.2f " , tri+11);

lcd_gotoxy(0,1);
lcd_puts (view);

lcd_gotoxy(0,0);
lcd_puts (suk);
delay_ms (100);

lcd_clear ();
}
else
{
ultra1();
konversi();

sudut_rad = sudut/180*3.14;
tangen= tan (sudut_rad);

tri = tangen*(l1+9)+5;

sprintf (view , "Jr=%.2f Sd=%.1f " , l1, sudut);


sprintf (suk , "Panjang = %.2f " , tri+11);
lcd_gotoxy(0,1);
lcd_puts (view);
lcd_gotoxy(0,0);
lcd_puts (suk);
delay_ms (2000);
lcd_clear();
PORTC.0=1;
} }
}

C. Foto Alat

Vous aimerez peut-être aussi