Archive for the ‘Sensor’ Category

Sensor GAS LPG TGS 2610

Sensor TGS 2610

Salah satu sensor yang memenuhi kriteria untuk mendeteksi gas LPG adalah sensor TGS 2610 buatan Figaro. Sensor akan mendeteksi kadar gas LPG secara terus-menerus dan selalu meng-update keluaran tegangan analog yang kemudian diolah oleh mikrokontroler. Bentuk fisik sensor TGS 2610 terlihat pada gambar 1.

Gambar 1. Bentuk Fisik Sensor TGS 2610

Spesifikasi dari sensor ini dapat mendeteksi gas Butana dan LPG dalam range 500 – 10.000 ppm. Sensor ini bekerja berdasarkan perubahan gas terhadap  resistansi dari sensor tersebut. Semakin besar kandungan dari gas LPG maka semakin kecil resistansinya dan semakin kecil kandungan dari gas LPG yang diterimanya maka resistansinya akan semakin besar, gambar 2 menunjukkan grafik perubahannya.

Gambar 2. Grafik Karakteristik Sensivitas Sensor TGS 2610

Perubahan resistansi ini kemudian diubah menjadi perubahan tegangan dengan menggunakan rangkaian pembagi tegangan seperti yang di tunjukkan pada gambar 3.

Gambar 3. Rangkaian Dasar Pengukuran pada Sensor

Dengan menggunakan rangkaian seperti pada gambar diatas, maka tegangan keluaran dari rangkaian sensor  (VHL) dapat dirumuskan dengan:

Perubahan dari tegangan di VHL sebagai tegangan keluaran dari rangkaian sensor tersebut kemudian dihubungkan ke pin ADC mikrokontroller. Secara sederhana dapat dituliskan pada dalam BASCOM AVR seperti berikut:

Config Adc = Single , Prescaler = Auto

Start Adc

Data1 = Getadc(0)

Stop Adc

Kode Produksi Figaro seri 2000


Semoga informasi ini bermanfaat :)

Sensor Jarak (SRF04)

Sensor SFR04 adalah sensor ultrasonik yang diproduksi oleh Devantech. Sensor ini merupakan sensor jarak yang presisi. Dapat melakukan pengukuran jarak 3 cm sampai 3 meter dan sangat mudah untuk dihubungkan ke mikrokontroler menggunakan sebuah pin Input dan pin Output.

Sensor Devantech SRF-04 bekerja dengan cara memancarkan sinyal ultrasonik sesaat dan menghasilkan pulsa output yang sesuai dengan waktu pantul sinyal ultrasonik sesaat  kembali menuju sensor. Dengan mengukur lebar pulsa pantulan tersebut jarak target didepan sensor dapat diketahui.

Untuk dapat memhami cara kerja dari sensor SRF04 ini perhatikan timming dari pulsa masukan dan keluaran sensor berikut ini:

Berdasarkan data timming diagram, sensor akan memberikan informasi jarak pembacaan dengan informasi berupa pulsa PWM dengan lebar 100µS sampai dengan 18mS.

Dengan 2 buah pin kontrol, antara lain sebuah pin input triger dan sebuah pin output data. Untuk mengaktifkan sensor maka modul diberi triger pulsa maka sensor akan mengeluarkan sinyal pwm dan duty cycle tersebut sebagai jarak objek dengan sensor .

Mikrokontroller memberikan sinyal pulsa high pada pin triger pulse input dari sensor untuk mengaktifkan sensor ultrasonik. Untuk menghitung lebar PWM mengunakan timer0. Pin echo pulse output terhubung dengan pin-pin pada mikrokontroler. Ketika pin echo pulse output high maka timer0 aktif dan ketika pin echo kembali bernilai low maka timer0 dimatikan dan data TCNT0 diambil sebagai data jarak.

Program  akses Sensor Jarak (SRF04) dengan Bascom AVR

$regfile = “m8535.dat”                   ‘menggunakan Atmega8535 sebagai preprosesor

$crystal = 12000000                         ‘menggunakan crystal clock 12 MHz

‘————————inisialisasi Timer—————————

Config Timer0 = Timer0 , Prescale = 1024

‘————————inisialisasi LCD—————————-

Config Lcdpin = Pin , Db4 = Porta.4 , Db5 = Porta.5 , Db6 = Porta.6 , Db7 = Porta.7 , E = Porta.2 , Rs = Porta.0

Config Lcd = 16 * 2

‘———————-konfigurasi pin mikro————————

Config Portc.1 = Output

Config Pinc.0 = Input

Outus Alias Portc.1 ‘trigger

Ultra Alias Pinc.0    ‘aktif srf04

‘———————–deklarasi variabel—————————-

Dim Dae As Integer

Dim Data1 As Integer

Dim Data2 As Integer

Dim A As Integer

‘———————–deklarasi subrutin—————————-

Declare Sub Ultra()

‘———————– main program———————————

Cls

Home

Lcd “Demo srf04”

Lowerline

Lcd “oleh Fahmizal”

Wait 2

Do

Cls

Call Ultra()

Loop

End

‘—————-subrutin baca sensor ultrasonik———————-

Sub Ultra()

Enable Interrupts

Enable Timer0

‘———–kosongkan nilai variabel———————————-

Tcnt0 = 0

A = 0

Data1 = 0

Data2 = 0

Dae = Tcnt0

‘—————-memberi trigger ke srf04—————————-

Reset Outus

Waitus 10                                                ‘tunda sebesar 10 uS

Set Outus

Waitus 10                                                ‘tunda sebesar 10 uS

Reset Outus

‘————————————————————————–

Do

Loop Until Ultra = 1

Start Timer0

Do

Loop Until Ultra = 0

Stop Timer0

Dae = Tcnt0

Data1 = A * 256

Data2 = Data1 + Dae

Cls

Home

Lcd “Data jarak sensor”

Lowerline

Lcd Data2

Disable Interrupts

Disable Timer0

Waitms 10

End Sub

‘———kondisi jika terjadi overflow pada timer——————

Overflow:

A = A + 1

Return

==============================================================

ni dia video aplikasi sensor ultrasonik pada Robot-Wall Follower ato yg lebih dikenal dengan robot telusur dinding:

==============================================================

ni dia video aplikasi sensor ultrasonik pada Wall Follower ato yg lebih dikenal dengan telusur:

Sensor Jarak [PING))) Paralax]

Sensor PING merupakan sensor ultrasonik yang dapat mendeteksi jarak obyek dengan cara memancarkan gelombang ultrasonik dengan frekuensi 40 KHz dan kemudian mendeteksi pantulannya. Tampilan sensor jarak PING ditunjukkan pada Gambar berikut:

Sensor  ini dapat mengukur jarak antara 3 cm sampai 300 cm. keluaran dari sensor ini berupa pulsa yang lebarnya merepresentasikan jarak. Lebar pulsanya bervariasi dari 115 uS sampai 18,5 mS. Pada dasanya, Ping))) terdiri dari sebuah chip pembangkit sinyal 40KHz, sebuah speaker ultrasonik dan sebuah mikropon ultrasonik. Speaker ultrasonik mengubah sinyal 40 KHz menjadi suara sementara mikropon ultrasonik berfungsi untuk mendeteksi pantulan suaranya.

Pin signal dapat langsung dihubungkan dengan mikrokontroler tanpa tambahan komponen apapun. Ping  hanya akan mengirimkan suara ultrasonik ketika ada pulsa trigger dari mikrokontroler (Pulsa high selama 5uS). Suara ultrasonik dengan frekuensi sebesar 40KHz akan dipancarkan selama 200uS. Suara ini akan merambat di udara dengan kecepatan 344.424m/detik (atau 1cm setiap 29.034uS), mengenai objek untuk kemudian terpantul kembali ke Ping. Selama menunggu pantulan, Ping akan menghasilkan sebuah pulsa. Pulsa ini akan berhenti (low) ketika suara pantulan terdeteksi oleh Ping. Oleh karena itulah lebar pulsa tersebut dapat merepresentasikan jarak antara Ping dengan objek.

Untuk penjelasan atau prinsip aksesnya sama kok ma srf04, hanya saja untuk sensor PING hanya memakai 3 pin, pin trigger sama echo digunakan dalam 1 pin, sehingga dengan menggunakan sensor PING kita dapat menghemat penggunaan I/O mikrokontroler. Konfigurasi pin sensor PING sbagai berikut:

Timming akses sensor PING)))

Program  akses Sensor Jarak [ PING))) ]dengan Bascom AVR

$regfile = “m8535.dat”
$crystal = 8000000

Config Lcd = 16 * 2
Config Lcdbus = 4
Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7 , E = Portc.1 , Rs = Portc.0

Config Timer1 = Timer , Prescale = 64

Sigout Alias Portb.0
Sigin Alias Pinb.0
Dirsig Alias Ddrb.0
Dim Data_timer As Integer
‘==================================================
Inisialisasi:
Waitms 100
Initlcd
Locate 1 , 1
Lcd “demo ping”
Wait 1
Cls
Utama:
Gosub Ambil_datatimer
Locate 1 , 1
Lcd Data_timer
Wait 1
Cls
Goto Utama
‘==================================================
Ambil_datatimer:
Dirsig = 1
Set Sigout                                               ‘bankitkan pulsa
Waitus 10
Reset Sigout

‘terima pulsa ubah dulu jadi input
Dirsig = 0                                               ‘jadi input
Set Sigout                                              ‘pull up internal diaktifkan
Bitwait Sigin , Set
Data_timer = 0
Timer1 = 0
Start Timer1

Do
If Sigin = 0 Then
Data_timer = Timer1
Stop Timer1
Exit Do
End If

If Tifr.2 = 1 Then                                ‘cek register timer1 overflow?
Stop Timer1
Tifr.2 = 1
Data_timer = 0
Exit Do
End If
Loop
Stop Timer1
Return

==============================================================

ni dia video aplikasi sensor ultrasonik pada Robot-Wall Follower ato yg lebih dikenal dengan robot telusur dinding:

Sensor Jarak Sharp GP2D12

Sensor sharp GP2D12 digunakan untuk membaca jarak.  Sensor ini menggunakan prinsip pantulan sinar infra merah. Dalam aplikasi ini nilai tegangan keluran dari sensor yang berbanding terbalik dengan hasil pembacaan jarak dikomparasi dengan tegangan referensi komparator.

Rangkaian sistem komparator pembacaan jarak dengan sensor sharp GP2D12 ini disajikan pada Gambar berikut:

Prinsip kerja dari rangkaian komparator sensor sharp GP2D12 pada Gambar diatas adalah jika sensor mengeluarkan tegangan melebihi tegangan referensi, maka keluaran dari komparator akan berlogika rendah. Jika tegangan referensi lebih besar dari tegangan sensor maka keluaran dari komparator akan berlogika tinggi.

Selain menggunakan komparator, untuk mengakases sensor jarak sharp GP2D12 dapat dengan menggunakan prinsip ADC, atau dengan kata lain mengolah sinyal analog dari pembacaan sensor sharp GP2D12 ke bentuk digital dengan bantuan pemrograman. Dalam pemrograman BASCOM-AVR untuk mengakses sensor ini dapat menggunakan fasilitas akses ADC yang cukup mudah. Berikut ini link program akses ADC menggunakan BASCOM-AVR https://fahmizaleeits.wordpress.com/2010/05/01/aplikasi-adc-mikrokontroler-atmega8535/.

Sensor Kompas Elektronik (CMPS-03)

Kompas Elektronik CMPS-03 buatan Devantech Ltd ini menggunakan sensor medan magnet Philips KMZ51 yang cukup sensitif untuk mendeteksi medan magnet bumi. Modul ini bekerja dengan mendeteksi magnetik bumi. Data yang dihasilkan dari kompas elektronik ini berupa data biner. Sebagai contoh jika modul menghadap utara maka data yang dihasilkan adalah data 00H, dan arah selatan data keluarannya adalah 7FH.

Koneksi dari modul ke mikrokontroller dapat dilakukan dengan 2 cara yaitu dengan mengunakan data PWM (Pulse Width Modulation), atau dengan I2C (Inter Intergrated Circuit). Jika menggunakan interface PWM, pulsa keluaran memiliki rentang 1mS untuk 0° atau arah utara sampai dengan 36.99 mS untuk 359.90°. Cara yang kedua mengunakan I2C, metode ini dapat digunakan langsung sehingga data yang dibaca tepat 0° – 360° sama dengan 0 – 255.

Gambar bentuk fisik dan koneksi pin modul kompas CMPS03

Modul kompas CMPS03 membutuhkan kalibrasi untuk menentukan nilai data keluaran dari tiap-tiap arah kompas. Metode kalibrasi dapat dilakukan secara manual, adapun cara kalibrasi sebagai berikut:

1. Modul kompas dihadapkan ke utara, kemudian memberikan pulsa rendah pada pin kalibrasi

2. Kompas diputar perlahan ke arah timur secara perlahan, kemudian pin kalibrasi diberi pulsa rendah

3. Langkah berikutnya memutar modul kompas ke arah selatan secara perlahan, kemudian memberikan pulsa rendah ke pin kalibrasi.

4. Langkah terakhir adalah memutar kompas ke arah barat dan kemudian memberikan pulsa rendah ke pin kalibarasi.

Program  akses Sensor Kompas (CMPS-03) dengan Bascom AVR

$regfile = “m8535.dat”
$crystal = 12000000

Config Scl = Portc.4
Config Sda = Portc.5

Config Lcd = 16 * 2
Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 , E = Portb.1 , Rs = Portb.0

Dim Hi As Byte
Dim Lo As Byte
Dim Posisi As Integer

Cls
Cursor Off
Home
Lcd ”  Compass Demo  ”
Wait 2

Do

I2cstart
I2cwbyte &HC0
I2cwbyte &HC1
I2cstop

I2cstart
I2cwbyte &HC1
I2crbyte Hi , Ack
I2crbyte Hi , Ack
I2crbyte Lo , Nack
I2cstop

Posisi = Makeint(lo , Hi)

Lo = Posisi Mod 10

Posisi = Posisi / 10

Cls
Lcd “POSISI: ” ; Posisi ; “.” ; Lo ; “deg”
Lowerline
Lcd ”  by Fahmizal   ”
Waitms 500
Loop

End