Kamis, 10 Juli 2014

Sensor Jarak (sensor ultrasonic)


Sensor jarak dapat menggunakan sensor ultasonic, sensor ultrasonic cara kerjanya sama seperti kelalawar saat mengetahui halangan di depannya. Sensor ultrasonic bekerja dengan memancarkan gelombang ultrasonic berupa pulse melalui TX(transifer) dari sensor dan akan terpantul kembali gelomnbang ultrasonic dan di tangkap oleh RX(resiver) sensordari sensor. Sensor ultrasonic mempunyai jara 2cm hingga 300cm.
/*****************************************************
Project :
Version :
Date    : 4/2/2008
Comments:

Chip type           : ATmega8535
Program type        : Application
Clock frequency     : 4.000000 MHz
Memory model        : Small
External SRAM size  : 0
Data Stack size     : 128
*****************************************************/
#include <mega8535.h>
// Alphanumeric LCD Module functions
#asm
.equ __lcd_port=0x1B ;PORTA
#endasm
#include <lcd.h>
#include <stdio.h>
#include <delay.h>
//deklarasi PIN I/O PING
#define PULSE PORTB.0
#define ECHO  PINB.0
#define ARAH  DDRB.0
#define OUT 1
#define INP 0
unsigned int ultrasonic()
{
unsigned int count=0;                               //deklarasi variabel local count: penghitung lebar ECHO
unsigned int jarak;                                      //dekarasi jarak: hasil pembagian lebar ECHO dengan suatu konstanta
ARAH=OUT;                                                 //mengatur PIN I/O sebagai output
PULSE=1;                                     //memberikan tanda ke PING untuk memancarkan ultrasonic burst
delay_us(5);                               //waktu tunggu sebelum pengukuran min. 2us biasanya 5us
PULSE=0;                                    //menberikan sinyal low ke PING
ARAH=INP;                               //arah PIN I/O diatur sebagai input
PULSE=1;                                    //mengatur PIN I/O sebagai pill-up
while (ECHO==0) {};              //menunggu sinyal ECHO high
while (ECHO==1)
{
count++;                                  //menghitung lebar sinyal ECHO high
}
jarak=(unsigned int)(((float)count)/25); // nilai pembagi dikalibrasi sampai sesuai dengan satuan yang diinginkan
return(jarak);                                                      //mengembalikan jarak ke fungsi ultrasonic dengan tipe data unsigned int
}
// Declare your global variables here
void main(void)
{
// Declare your local variables here
unsigned char kata[16];//variabel lokal untuk menyusun karakter dengan lebar array 16 dan mengirim ke LCD
// 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=0×00;
DDRA=0×00;
// 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=0×00;
DDRB=0×00;
// 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=0×00;
DDRC=0×00;
// 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=0×00;
DDRD=0×00;
// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Normal top=FFh
// OC0 output: Disconnected
TCCR0=0×00;
TCNT0=0×00;
OCR0=0×00;
// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer 1 Stopped
// Mode: Normal top=FFFFh
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer 1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0×00;
TCCR1B=0×00;
TCNT1H=0×00;
TCNT1L=0×00;
ICR1H=0×00;
ICR1L=0×00;
OCR1AH=0×00;
OCR1AL=0×00;
OCR1BH=0×00;
OCR1BL=0×00;
// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer 2 Stopped
// Mode: Normal top=FFh
// OC2 output: Disconnected
ASSR=0×00;
TCCR2=0×00;
TCNT2=0×00;
OCR2=0×00;
// External Interrupt(s) initialization
// INT0: Off
// INT1: Off
// INT2: Off
MCUCR=0×00;
MCUCSR=0×00;
// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0×00;
// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0×80;
SFIOR=0×00;
// LCD module initialization
lcd_init(16);
while (1)
{
sprintf(kata, “J=%3d cm”, ultrasonic()); //menyusun karakter ke dalam satu baris dengan menggunakan fungsi sprintf
lcd_clear();                                                        //membersihkan layar LCD
lcd_gotoxy(0,0);                                            //menempatkan kursor pada koordinat 0,0 LCD
lcd_puts(kata);                                                //mengirim data ke LCD
delay_ms(300);                                              //delay memberi waktu sebelum lcd_clear();
}
}


Sumber :
http://wangready.wordpress.com/2011/04/04/ping-sensor-jarak-ultrasonik/


Analisa Kelebihan dan Kekurangan Tugas 1,2 dan 3

Hasil Analisa :
1. CPU (Central Processing Unit)
Fungsi utama dari CPU adalah melakukan operasi aritmatika dan logika terhadap data yang diambil dari memori atau dari informasi yang dimasukkan melalui beberapa perangkat keras, seperti papan ketik, pemindai, tuas kontrol, maupun tetikus. CPU dikontrol menggunakan sekumpulan instruksi perangkat lunak komputer. Perangkat lunak tersebut dapat dijalankan oleh CPU dengan membacanya dari media penyimpan, seperti cakram keras, disket, cakram padat, maupun pita perekam. Instruksi-instruksi tersebut kemudian disimpan terlebih dahulu pada memori fisik (RAM), yang mana setiap instruksi akan diberi alamat unik yang disebut alamat memori. Selanjutnya, CPU dapat mengakses data-data pada RAM dengan menentukan alamat data yang dikehendaki.

-Kelebihan :  1. disertai dengan gambar rencana dan pengamatan
             
-Kekurangan : 1. alur kerja kurang spesifik
                               2. alur kerja tidak menggunakan standarisasi flowchart sesungguhnya.


2. PANEL SURYA
Secara umum sumber energi dikategorikan menjadi dua bagian yaitu non-renewable energy dan renewable energy. Sumber energi fosil adalah termasuk kelompok yang pertama yang sebagaian besar aktivitas di dunia ini menggunakan energi konvensional ini.

> Kelebihan :  1. disertai dengan gambar
                         2. disertai petunjuk keterangan
                         3. flowchart sederhana dan mudah dimengerti

> Kekurangan : 1. alur kerja tidak menggunakan standarisasi flowchart sesungguhnya

                 
3. Flowchart Vending Machine

Kelebihan :  1. disertai dengan gambar
                      2. disertai petunjuk keterangan
                      3. flowchart sederhana dan mudah dimengerti


Kekurangan : 1. Ulasan teori tentang materi kurang