3.2 Diagram Alir Sistem Pengukur Tekanan Udara
Gambar 3.5 Diagram Alir Sistem Pengukur Tekanan Udara
Keterangan diagram alir : Diagram di atas merupakan diagram alir dari sistem pengukur tekanan udara.
Diagram menggambarkan aliran proses untuk satu siklus kerja mulai dari awal hingga
START
INISIALISASI PORT SERIAL DAN INISIALISASI PORT I2C , ISI NILAI
AWAL PORT
BACA DATA OUTPUT SENSOR TEKANAN UDARA PADA PORT
D
KIRIM DATA SENSOR KE PC MELALUI PORT SERIAL
STOP
Universitas Sumatera Utara
selesai. Pada saat start, program akan menginisialisasi port-port yaitu port serial dan penggunaan port lainnya, termasuk I2C. Kemudian dilanjutkan dengan pembacaan
data, sensor yang terhubung pada masukan digital yaitu port D bit 0. Data yang terbaca akan dikirimkan ke komputer PC melalui port serial.
3.3 Diagram Alir Program Visual Basic 6.0
Universitas Sumatera Utara
Gambar 3.6 Diagram Alir Program Visual Basic 6.0
YA
TIDAK START
TAMPILKAN MENU “GRAPHICAL USER INTERFACE GUI
BACA DATA INPUT TEKANAN UDARA MELALUI I2C
KALIBRASI DATA INPUT KE NILAI SEBENARNYA
STOP TAMPILKAN PADA LAYAR MONITOR
BESAR TEKANAN UDARA YANG TERUKUR
BACA TEKANAN
LAGI ?
Universitas Sumatera Utara
Keterangan diagram alir di atas : Diagram alir di atas menjelaskan diagram kerja program komputer yaitu
Visual Basic 6.0 dimulai dengan start yaitu tampilan menu graphical user interface GUI pada monitor dan dilanjutkan dengan pembacaan data input melalui port serial
PC. Data tersebut kemudian diproses yaitu dikalibrasi untuk mendapatkan nilai tekanan udara sebenarnya kemudian ditampilkan pada layar monitor yang berfungsi
sebagai output sistem.
3.4 Program
3.4.1 Bahasa Pemograman ATMega 8535
Pemrograman mikrokontroler ATmega 8535 dapat menggunakan low level language assembly dan high level language C, Basic, Pascal, JAVA,dll tergantung compiler
yang digunakan Widodo Budiharto, 2006. Bahasa Assembler mikrokontroler AVR memiliki kesamaan instruksi, sehingga jika pemrograman satu jenis mikrokontroler
AVR sudah dikuasai, maka akan dengan mudah menguasai pemrograman keseluruhan mikrokontroler jenis mikrokontroler AVR. Namun bahasa assembler relatif lebih sulit
dipelajari dari pada bahasa C.
Bahasa C memiliki keunggulan dibanding bahasa assembler yaitu independent terhadap hardware serta lebih mudah untuk menangani project yang besar. Bahasa C
memiliki keuntungan-keuntungan yang dimiliki bahasa assembler bahasa mesin,
Universitas Sumatera Utara
hampir semua operasi yang dapat dilakukan oleh bahasa mesin, dapat dilakukan dengan bahasa C dengan penyusunan program yang lebih sederhana dan mudah.
Pemograman bahasa C pada mikrokontroller adalah sebagai berikut :
include mega8535.h include delay.h
include stdio.h
I2C Bus functions asm
.equ __i2c_port=0x12 ;PORTD .equ __sda_bit=2
.equ __scl_bit=3 endasm
include i2c.h
unsigned char temp1,temp2; unsigned int temperatur,pressure;
2
3 1
Universitas Sumatera Utara
UCSRA=0x00; UCSRB=0x18;
UCSRC=0x86; UBRRH=0x00;
UBRRL=0x19; i2c_init;
delay_ms250;
while 1 {
i2c_start; Start Condition i2c_write0xE0; Tulis ke modul DT-SENSE
i2c_write0x00; Perintah baca data tekanan i2c_stop; Stop Condition
delay_ms15; delay 15 ms 6
7 4
5
Universitas Sumatera Utara
i2c_start; Start Condition i2c_write0xE1; Baca ke modul DT-SENSE
temp1 = i2c_read1; temp2 = i2c_read0;
i2c_stop; Stop Condition delay_ms15; delay 15 ms
printfi,temp1; delay_ms1000;
printfi,temp2;
pressure = temp1256 + temp2; printfi,pressure;
delay_ms250;
};
Keterangan program :
8
9
Universitas Sumatera Utara
1. Perintah mengikutsertakan file I2C 2. Perintah menginisialisasi I2C
3. Deklarasi variabel yang digunakan 4. Proses inisialisasi port serial
5. Pemanggilan rutin inisialisasi I2C 6. Perintah untuk mengirim data ke modul sensor untuk membaca tekanan udara
yaitu menulis kode E0 disupply 00. 7. Tundaan waktu 15 milidetik untuk menunggu proses konversi tekanan selesai.
8. Perintah untuk membaca data sensor 16 bit yang terbagi menjadi dua yaitu byte rendah dan byte tinggi yang masing-masing disimpan pada variable
temp1 dan temp2 kemudian mengirim perintah stop untuk menghentikan komunikasi I2C.
9. Perintah untuk mengkonversi 16 bit data yang terkode dalam bilangan hexa menjadi desimal dan mengirimkannya ke komputer melalui port serial.
3.4.2 Pemograman Bahasa Visual Basic 6.0 Pada Komputer
Pemograman bahasa visual basic 6.0 digunakan untuk menampilkan data tekanan udara yang terukur dan menyimpan data tekanan udara ke storage PC. Data yang
tersimpan di PC dapat ditampilkan kembali dalam format excel. Berikut ini adalah pemograman bahasa Visual Basic 6.0 yang digunakan :
Universitas Sumatera Utara
Dim Dtime1 To 100000, DPreasure1 To 100000 As Single
Dim cal As Single Dim data As String
Dim i, j As Integer Dim oXL As Excel.Application
Private Sub Command1_Click Timer3.Enabled = False
Set oXL = New Excel.Application Set oxlbook = oXL.Workbooks.Add
FileName = C:\Data\ + Text3 oxlbook.Worksheets1.RangeA1 = Waktu
oxlbook.Worksheets1.RangeC1 = Tekanan udara oxlbook.SaveAs FileName
For i = 2 To j oxlbook.Worksheets1.RangeA i = Dtimei
oxlbook.Worksheets1.RangeC i = DPreasurei Next i
1
2
Universitas Sumatera Utara
On Error GoTo 1
oxlbook.SaveAs FileName oxlbook.Close
1:
End Sub
Private Sub Command2_Click Timer3.Enabled = True
End Sub
Private Sub Command4_Click Unload Me
End Sub 3
4
Universitas Sumatera Utara
Private Sub Form_Load With MSComm1
If .PortOpen = True Then .PortOpen = False .CommPort = 1
.Settings = 9600,n,8,1 .DTREnable = True
.RTSEnable = True .RThreshold = 1
.SThreshold = 0 .PortOpen = True
End With cal = Text2
End Sub Private Sub Text2_Change
If Text2 = Then cal = 1
End If cal = Text2
End Sub 5
6
Universitas Sumatera Utara
Private Sub Timer3_Timer j = j + 1
Dtimej = Text4 DPreasurej = Text1
End Sub
Private Sub Timer4_Timer Text4 = Time
End Sub
Private Sub Timer5_Timer x = MSComm1.Input
If x Then If x 2000 Then
Text1 = x 10 cal End If
End If
End Sub 7
8
9
Universitas Sumatera Utara
Keterangan program visual basic 6.0 diatas adalah sebagai berikut : 1. Deklarasi variable yg digunakan.
2. Merupakan perintah untuk menyimpan file pada database excel yaitu waktu dan tekanan udara yg terdeteksi, dimana jumlah data yg disimpan adalah sama
dengan j sbagai counter jumlah data. Nama file yang disimpan berada pada filename. Setelah penyimpanan file data base excel harus dtitutup.
3. Perintah untuk mengaktifkan timer 3. 4. Perintah untuk menutup program.
5. Perintah untuk membuka port pada saat form diaktifkan dan mengisi konstanta kalibrasi yg ada pada text 2.
6. Jika text 2 berubah yaitu kalibrasi maka konstanta kalibrasi disesuaikan dengan perubahan pada text 2.
7. Merupakan timer untuk mengakuisisi data tiap satu menit yaitu data waktu atau jam dan tekanan yg terukur dan disimpan pada variable array Dtime dan
Dpressure. 8. Timer untuk menampilkan jam tiap detik pada text 4.
9. Timer 5 adalah timer untuk sesi pembacaan data melalui port serial dengan penyaringan dan kalibrasi artinya jika x lebih kecil dari 2000 memberi arti data
yg terbaca tidak valid karena diluar jangkauan sensor dengan demikian data tersebut tidak akan ditampilkan. Text1 = x10 cal adalah perintah untuk
mengkalibrasi data yg dikirim oleh sensor dan menampilkannya pada monitor yaitu text 1
Universitas Sumatera Utara
BAB IV
DATA DAN ANALISA DATA
4.1 Pengambilan Data