undefined undefined.
Diposkan oleh
ono
|
47
komentar
MPX5700 + ATMEGA 8 + Bascom AVR = Huahahah...
Tahun 2013
asik….
Semoga makin lancer jaya,n ditambahkan rejekinya bukan sama ane aja tapi
sama sobat Meka semua…tanpa terkecuali untuk para pengemar mikrokontroler… oke
coy..
Masuk ke Materi kita
sob… ayo sapa yang tahu alat ukur tekanan udara apa namanya ?... coba Tanya ke
mbah google… lanjut. Salah satu sensor
Tekanan dengan output dalam bentuk tekanan salah satunya sensor Tekanan MPX5700
buatan Freescale Semiconductor, ni sensor
ane beli ketika jaman kuliah dulu sob..
Sensor MPX5700 ada
banyak macamnya sob ni…lihat gambar dibawah ni!
Nah yang ane gunakan yang seri MPX5700DP karena seri ini punya fitur
yang lebih lengkap dari seri saudaranya. Mau tahu kelebihan seri DP itu apa??
Seri DP dapat digunakan untuk metode pengukuran yang Gaude,Absolut dan Diferensial
sol..
Gauge : Pengukuran Gauge dapat dilakukan dengan menutup saluran P2.
Absolut : untuk mengunakan Fitur pengukuran ini P2 dibiarkan dalam
keadaan terbuka diudara.
Diferensial : Untuk mengukur selisih tekanan P1 terhadap P2. Dengan
catatan Tekanan P2 tidak boleh melebihi 500Kpa.
Gimana sob…udah ada gambarankan???
…. NEXT
Hal hal yang harus
diperhatikan didalam pengunaan sensor MPX5700, sensor tidak diperkenankan
diberikan tegangan melebihi dari 5 volt. Serta output pada pin 3 jangan terjadi
hubungan singkat dengan VCC. Sedangkan untuk tekanan yang diizinkan sensor
MPX5700 mampu mensensing tekanan hingga maksimum 700Kpa (101.5 psi).
Tingkat ketelitian
dari sensor sebesar 2,5% dengan kompensasi suhu sebesar 0 OC sampai
85OC
Berikut grafik
konversi sensor mas sob n dilengkapi dengan transfer Function nya juga lo sob…
Sepintas fundamental MPX5700 udah sob baca…. Sekarang kita masuk ke
rangkaian interface antara sensor MPX5700DP dengan mikrokontroler ATMega 8.
Dibawah ni gambarnya.
Output dari pin sensor MPX5700 terhubung ke ADC chanel 4 atau PortC.4.
sebelum melakukan pengujian pastikan terlebih dahulu hubungak kabel yang sobat
buat…jangan sampai salah sambung yang berakibat fatal…sensor Terbakar…yang mau
ngak mau sob harus beli lagi…
Sebelum proses pembuatan program sob harus fahami dulu satuan dari
pengukuran sob ni dia:
1 bar = 1,0197 Kg/Cm = 0,689 pounds per inch = 14,5 pounds per square
inch (psi)
1 bar = 100 kilopascals = 0,9869 atmospheres (atm)
1 atmospheres = 1.01325 bar
1 psi = 0,0690 bar = 0,0703 Kg/Cm (3000 psi = 206,89 bar)
1 bar = 100 kilopascals = 0,9869 atmospheres (atm)
1 atmospheres = 1.01325 bar
1 psi = 0,0690 bar = 0,0703 Kg/Cm (3000 psi = 206,89 bar)
100 Kpa à 1
Bar à
1,0197 Kg/cm à 14,5 Psi à 0.9869 atm
Parameter yang kita ketahui dalam bentuk Kpa:
Langkah-langkah konversi dari tegangan ke nilai tekanan Kpa mengunakan
rumus ni…
Setelah dapat nilai tekanan dalam satuan Kpa tinggal di konversi aja ke
dalam satuan lain…pake ni rumus sob …. Nilai X adalan nilai dari P(Kpa).
Cekidot langsung kita masuk ke tahap pembuatan program… pake rumus
diatas…
Kemudian downloadkan program berikut ke mikrokontroler….n ane
mengunakan internal crystal 8Mhz.
'############################################################################
'# File Name : MPX5700.bas
'# Written By: Supriono
'# mekarobot.tm@gmail.com
'# File Name : MPX5700.bas
'# Written By: Supriono
'# mekarobot.tm@gmail.com
'# FB : Facebook.com/Dirga Dirgi
'# Support: -> ADC Data
'# -> Bascom Programing
'# -> Internal Crystal 8Mhz
'# Input : ADC CH4 (PC.4)
'# Support: -> ADC Data
'# -> Bascom Programing
'# -> Internal Crystal 8Mhz
'# Input : ADC CH4 (PC.4)
'# Output : LCD 16*2(PC
& PD )
'############################################################################
$regfile = "m8def.dat"
$crystal = 8000000
Enable Interrupts
Config Adc = Single , Prescaler = 64 , Reference = Avcc
Start Adc
Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 , E = Portd.3 , Rs = Portd.2
Config Lcd = 16 * 2 : Cursor Noblink Off : Cls
Dim Mpx5700 As Word
Dim Vout As Single , X As Single , I As Byte
Dim Tekanan_kpa As Single , Tekanan_bar As Single , A As Byte
Dim Tampil As String * 6 , Temp As String * 1 , L As Byte
Dim Koma_kpa As String * 2 , Nilai_kpa As String * 3
Dim Koma_bar As String * 3 , Nilai_bar As String * 3
Upperline : Lcd " MPX5700 Test "
Lowerline : Lcd " By MekaRobot " : Wait 2 : Cls
Locate 1 , 14 : Lcd "Kpa"
Locate 2 , 14 : Lcd "Bar"
Do
Mpx5700 = Getadc(4)
X = Mpx5700 / 1023
Vout = X * 5
X = Vout / 5
X = X - 0.04
Tekanan_kpa = X / 0.0012858
Tekanan_bar = Tekanan_kpa / 100
Tampil = Str(tekanan_kpa) : L = Len(tampil)
For I = 1 To 4
Temp = Mid(tampil , I , 1)
If Temp = "." Then
A = I - 1 : Nilai_kpa = Mid(tampil , 1 , A)
A = I + 1 : Koma_kpa = Mid(tampil , A , 1)
End If
Next
Tampil = Str(tekanan_bar) : L = Len(tampil)
For I = 1 To 4
Temp = Mid(tampil , I , 1)
If Temp = "." Then
A = I - 1 : Nilai_bar = Mid(tampil , 1 , A)
Lowerline : Lcd Nilai_bar
A = I + 1 : Koma_bar = Mid(tampil , A , 3)
End If
Next
Upperline : Lcd "Sensor " ; Nilai_kpa ; "." ; Koma_kpa ;
Lowerline : Lcd "MPX5700 " ; ; Nilai_bar ; "." ; Koma_bar ;
Waitms 300
Loop
'############################################################################
$regfile = "m8def.dat"
$crystal = 8000000
Enable Interrupts
Config Adc = Single , Prescaler = 64 , Reference = Avcc
Start Adc
Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 , E = Portd.3 , Rs = Portd.2
Config Lcd = 16 * 2 : Cursor Noblink Off : Cls
Dim Mpx5700 As Word
Dim Vout As Single , X As Single , I As Byte
Dim Tekanan_kpa As Single , Tekanan_bar As Single , A As Byte
Dim Tampil As String * 6 , Temp As String * 1 , L As Byte
Dim Koma_kpa As String * 2 , Nilai_kpa As String * 3
Dim Koma_bar As String * 3 , Nilai_bar As String * 3
Upperline : Lcd " MPX5700 Test "
Lowerline : Lcd " By MekaRobot " : Wait 2 : Cls
Locate 1 , 14 : Lcd "Kpa"
Locate 2 , 14 : Lcd "Bar"
Do
Mpx5700 = Getadc(4)
X = Mpx5700 / 1023
Vout = X * 5
X = Vout / 5
X = X - 0.04
Tekanan_kpa = X / 0.0012858
Tekanan_bar = Tekanan_kpa / 100
Tampil = Str(tekanan_kpa) : L = Len(tampil)
For I = 1 To 4
Temp = Mid(tampil , I , 1)
If Temp = "." Then
A = I - 1 : Nilai_kpa = Mid(tampil , 1 , A)
A = I + 1 : Koma_kpa = Mid(tampil , A , 1)
End If
Next
Tampil = Str(tekanan_bar) : L = Len(tampil)
For I = 1 To 4
Temp = Mid(tampil , I , 1)
If Temp = "." Then
A = I - 1 : Nilai_bar = Mid(tampil , 1 , A)
Lowerline : Lcd Nilai_bar
A = I + 1 : Koma_bar = Mid(tampil , A , 3)
End If
Next
Upperline : Lcd "Sensor " ; Nilai_kpa ; "." ; Koma_kpa ;
Lowerline : Lcd "MPX5700 " ; ; Nilai_bar ; "." ; Koma_bar ;
Waitms 300
Loop
Ni hasil Ngoprek sensor Tekanan MPX5700 kita sob. Pengujian dilakukan
dengan mode Absolute serta untuk input P1 mengunakan suntikan bekas tinta
Eprint…
Sekian dulu sob postingan ane tentang sensor MPX5700 udah ngak kerasa
jam 12.30 malam, semoga bermanfaat untuk sobat-sobat semua.
Pengen Koment n copy artikel monggo yang penting jangan lupa cantumkan
sumbernya.
hargai kerja keras ane sob…..heheh (^_^)
Yang membutuhkan Sensor MPX5700DP bisa menghubungi ane
Supri/081253734037
Yang membutuhkan Sensor MPX5700DP bisa menghubungi ane
Supri/081253734037
MPX5700DP : Rp.200.000,- (belum Ongkir)
mantap,, d tunggu yg lainnya bos,,
ReplyDeleteoyi...thanks boz.
ReplyDeleteblog masih dalam perbaikan...
fitur blogger yang baru ini banyak bug errornya..kagak bisa edit artikel...huft
MantaB :) Sukses slalu dan terus berinovasi sebagai anak bangsa
ReplyDeletedimana bisa dapetin sensor MPX5700DP, tau link online shop ya ga'mas?
ReplyDeleteane beli di luar gan...dari pembuatnya.frescaler semiconduktor//
ReplyDeletekira kira kapan akan di upload artikel tentang text berjalan ya mas broow??????
ReplyDeleteudah pernah buat tapi dulu ngak sempat di foto2...tunggu ada orderan runing text baru tak postkan artikelnya
ReplyDeletelike it sob :D
ReplyDeletethanks udah berkunjung
Deletebro mau tanya klo nilai ADC berubah-ubah disebabkan karena apa yaa?
ReplyDeleteterimakasih
itu biasanya supply rangkaian kurang bagus...
Deleteselama ini ane kagak ada pernah nemu ADC kaya gitu gan..stabil aja ko
itu biasanya supply rangkaian kurang bagus...
Deleteselama ini ane kagak ada pernah nemu ADC kaya gitu gan..stabil aja ko
error sensor gan...coba agan kasi input 3Bar berapa tgangan outputnya...kalo masih linier dengan nilai tupicalnya maka masih bisa digunakan...ntar program yang menguranginya sendiri
ReplyDeletelihat gambar ini:
http://3.bp.blogspot.com/-6zhPH4kPLEI/UOYqCKBwf7I/AAAAAAAAABk/FtFgR5BsD3I/s1600/e.bmp
permisi mas supriono, artikelnya bagus banget,
ReplyDeletemw nanya, kalau misalnya kita aplikasikan ke atmega 16 itu gmn ya ?
sensor saya itu outputnya digital, jadi untuk msuk ke input pakai pin berapa ya ?
makasih
tinggal pilih aja gan...mau di hubungkan ke port mana aja...asal jangan port yang digunakan untuk komunikasi antara Ps dan mikronya
Deletemau nanya dong mas saya rencana pingin coba pake arduino, tapi masih agak bingung, terus mau nanya dapet sonsor mpx5700 dimana ya mas? mau beli nih saya.. thx
ReplyDeletemaaf gan stok MPX5700 ane udah habis...
Deletetambah jos ae.... rek...semangat..
ReplyDeleteudara yang masuk ke p1 keluar kah ke p2 ?
ReplyDeleteArtikelnya bagus, mendetail sekali. Untuk agan yang perlu sensor ini, piezoresistive pressure sensor Freescale MPX5700DP dapat dipesan di toko komponen elektronika online Vcc2GND.com.
ReplyDeleteBagus sekali mas artikelnya. Sya mau tanya nih kalo make sensor mpx5700ap rumus untuk pengukuhannya sama atau beda dan apakah membutuhkan rangkaian elektronik untuk sensor tersebut,?? Terima kasih,, mohon jawabnya ya mas,,,
ReplyDelete*pengukuran
ReplyDelete*pengukuran
ReplyDeleteMalam mas supriono, saya Novrizal Ismed
ReplyDeletemau tanya mas, ini perhitungannya bisa digunakan buat kalibrasi sensor MPX5100DP buat ngukur tensi darah gak ya??
lagi kesulitan bikin koding program nya nih,... haha
di tunggu balasannya ya mas... makasih ... ^_^
Bisa mas tapi sebelumnya mas lihat dulu data sheet dari sensor MPX5100DP..
ReplyDeletesaya juga menyediakan sensor sensor MPX5100DP
mas mau tanya kalo mpx5700 pada kondisi tanpa tekanan terbacanya 88kpa itu normal atau perlu di setting lagi? atau bisa dikurangi nilai adc nya di program ya? trims
ReplyDeleteTinggal di kurangi di programnya aja mas.soalnya kan senaor hrus d kalibarasi
DeleteThis comment has been removed by the author.
ReplyDeletemaaf mau tanya kalau hasil keluaran dari sensornya (-) itu kenapa ya? harus gimana?
ReplyDeleteP1 sama P2 kebalik kali tuh...
DeleteThis comment has been removed by the author.
ReplyDeleteKalau saya mau menghitung tekanan air atau udara dari tangki, yang digunakan P1 atau P2? soalnya saya selama ini pake P1 (positif pressure)
ReplyDeleteP2nya tidak dipakai, benar gak?
sensor tekanan itu ada 3 macam mbak.
Deletepertama absolute,diferensial,sama gauge
MPX5700 itu kan diferensial artinya mengukur selisih antara P1 dengan P2.
tapi sensor ini juga bisa dijadikan model absolute caranya P2 di tutup atau di buat vakum.
sedangkan untuk mode pengukuran gauge P2 nya di biarkan terbuka di udara.
untuk pengukuran tekanan yang dipengaruhi oleh ketinggian sebaiknya pake gauge (P2 di kena udara).
karena mbak ngukur P1 di atas gunung dengan dengan diatas laut itu beda mbak
gauge itu untuk alat yang dipengaruhi oleh ketinggian
absolute tidak di pengaruhi oleh ketinggian
diferensial mengukur selisih 2 masukan tekanan.
This comment has been removed by the author.
ReplyDeleteThis comment has been removed by the author.
ReplyDeleteBang mau nanya nilai dari p(kpa) =(vout/vcc) –o.o4 per 0.0012858.
ReplyDeletenilai dari 0.04 sama 0.0012858 itu dapat dari mana bang
MasSupri, numpang tanya apakah penggunaan MPX5700DP pada tekanan air (H2O) itu betul2 aman untuk sensornya? Trims
ReplyDeletebisa aman ko...saya sdh lama menggunakanya di air..karna didalamnya ada jeli pelindung...tapi pastikan suhu air tidak panas ya
ReplyDeletepermisi pak saya mau tanya buat kalibrasinya itu yg mpx5700ap bagaimana ya pak? misal saya mengukur tegangan itu 0.3 bar dan vout yg muncul : 0.84V nah itu jika dihitung dengan rumus diatas akan menjadi 96.61kPa, sedangkan seharusnya 0.3 bar itu 29.42kPa jika menggunakan rumus (1 bar = 98.0665 kPa) Mohon penjelasannya ya pak, untuk penelitian skripsi. Terimakasih..
ReplyDeletembak bisa lihat di grafiknya...jika 100 KPA (1bar) angap saja kita ambil garis typical maka harusnya keluar tegangan 0.75volt
Deletekalo 0.3 bar keluar 0.84 volt itu artinya tegangan sumber mbak pasti lebih dari 5 volt..coba turunkan menjadi 4.5 volt or 5 volt pas.
https://3.bp.blogspot.com/-6zhPH4kPLEI/UOYqCKBwf7I/AAAAAAAAABk/FtFgR5BsD3I/s1600/e.bmp
Deleteka mau tanya, kalau tegangan yang diberikan itu 5 volt tapi arusnya besar apa tidak merusak sensornya ?
ReplyDeleteterus kalau untuk program di arduinonya seperti apa yah ka
Mas ini saya tugas akhir menggunakan sensor mpx5700dp boleh minta artikel atau jurnal yg lengkap mengenai sensor ini nggak. dari cara kerja dsb.
ReplyDeletemas boleh minta link atau artikel jurnal tentang mpx5700dp gak yang lengkap baik cara kerja dsb buat TA
ReplyDeleteMas mau tanya, kl MPX5700DP bisa buat ngukur vacuum ga ya mas? Caranya gmn kl bisa??
ReplyDeleteMohon bantuannya mas.
mau nanya mas cara kalibrasi sensor MPX5700 ini gimana ya mas??
ReplyDeletePermisi masz artikelnya bagus sekali, saya ingin bertanya masz untuk penelitian Seminar/Skripsi saya. Begini masz seminar saya tentang gas lpg yang dimana mendeteksi gas lpg agak mengetahui sisa dalam tabung gas tersebut sehingga kita bisa mengetahui kapan gas lpgnya habis. To the point aja, gini masz bisa gak ya misalnya sensor kan mendeteksi gas pada tabung lpg tapi masz data yang di deteksi sensor itu kita buat yang di tampilkan di lcd bukan berupa satuna gitu, tapi sisa berapa persen biar lebih mudah untuk mengetahui gas yang hampir habis dengan pembacaan persen.soalnya masz saya kurang paham klo misalnya pembacaan sensor kayak satuan² gitu. Mohon bantuannya masz, terimakasih succesa kedepannya
ReplyDelete