Praktikum ini bertujuan untuk mempelajari antarmuka instrumen dengan MATLAB, khususnya untuk pengiriman data suhu dari sensor DS18B20 ke MATLAB melalui mikrokontroler. Mahasiswa diajak membuat program pada mikrokontroler untuk membaca suhu dan mengirimkannya ke MATLAB, kemudian membuat program MATLAB untuk menerima dan menampilkan data suhu secara real-time dalam bentuk grafik.
Fungsi dari project ini yaitu untuk menggerakkan pintu secara otomatis jika suhu di dalam suatu ruangan melebihi nilai yang sudah ditentukan. Komponen utama yang digunakan yaitu sensor LM35 sebagai pendeteksi suhu dan motor DC sebagai penggerak pintu. Suhu rancangan pada ruangan tersebut 25 °C, apabila suhunya melebihi 25 °C, motor akan berputar dan membuka pintu lalu apabila suhunya sudah stabil (25 °C) maka motor akan berputar kembali dan pintu menutup.
Fungsi dari project ini yaitu untuk menggerakkan pintu secara otomatis jika suhu di dalam suatu ruangan melebihi nilai yang sudah ditentukan. Komponen utama yang digunakan yaitu sensor LM35 sebagai pendeteksi suhu dan motor DC sebagai penggerak pintu. Suhu rancangan pada ruangan tersebut 25 °C, apabila suhunya melebihi 25 °C, motor akan berputar dan membuka pintu lalu apabila suhunya sudah stabil (25 °C) maka motor akan berputar kembali dan pintu menutup.
Membuat stopwatch menggunakan mikrokontroler atmega16 by muhammad kennedy gin...Muhammad Kennedy Ginting
Membuat stopwatch menggunakan mikrokontroler ATmega16 by muhammad kennedy ginting.
Dini akan diberikan penjelasan tentang timer0, timer1, counter0, counter1, skematik stopwatch dan list programnya.
Mikrokontroler adalah sebuah chip yang berfungsi sebagai pengontrol rangkaian elektronik dan umunya dapat menyimpan program didalamnya. Mikrokontroler adalah sebuah chip yang berfungsi sebagai pengontrol rangkaian elektronik dan umunya dapat menyimpan program
Simulasi Traffic Light Perempatan dengan Kontrol AT-Mega 16Yazid98
Simulasi Traffic Light Perempatan dengan Kontrol AT-Mega 16
Nama : Agung Bayu H.P. (1710501103)
Nama : Yazid Ikhwani (1710501104)
Mata Kuliah : Sistem Mikrokontroller
Dosen Pembimbing : R. Suryoto Edy Raharjo, S.T., M.Eng.
JURUSAN TEKNIK ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS TIDAR
2019
Simulator trafic light dengan mikrokontroller atmega16Kifa Ulya
Simulator trafic light dengan mikrokontroller atmega16 beserta penjelasannya.
Nama Mahasiswa : 1. Kifa Ulya' Zharifah (1710501092)
2. Octavia Fatimah Yazid (1710501099)
Mata Kuliah : SISTEM MIKROKONTROLLER
DOSEN : R. Suryoto Edy Raharjo, ST., M.Eng.
TEKNIK ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS TDAR
Membuat stopwatch menggunakan mikrokontroler atmega16 by muhammad kennedy gin...Muhammad Kennedy Ginting
Membuat stopwatch menggunakan mikrokontroler ATmega16 by muhammad kennedy ginting.
Dini akan diberikan penjelasan tentang timer0, timer1, counter0, counter1, skematik stopwatch dan list programnya.
Mikrokontroler adalah sebuah chip yang berfungsi sebagai pengontrol rangkaian elektronik dan umunya dapat menyimpan program didalamnya. Mikrokontroler adalah sebuah chip yang berfungsi sebagai pengontrol rangkaian elektronik dan umunya dapat menyimpan program
Simulasi Traffic Light Perempatan dengan Kontrol AT-Mega 16Yazid98
Simulasi Traffic Light Perempatan dengan Kontrol AT-Mega 16
Nama : Agung Bayu H.P. (1710501103)
Nama : Yazid Ikhwani (1710501104)
Mata Kuliah : Sistem Mikrokontroller
Dosen Pembimbing : R. Suryoto Edy Raharjo, S.T., M.Eng.
JURUSAN TEKNIK ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS TIDAR
2019
Simulator trafic light dengan mikrokontroller atmega16Kifa Ulya
Simulator trafic light dengan mikrokontroller atmega16 beserta penjelasannya.
Nama Mahasiswa : 1. Kifa Ulya' Zharifah (1710501092)
2. Octavia Fatimah Yazid (1710501099)
Mata Kuliah : SISTEM MIKROKONTROLLER
DOSEN : R. Suryoto Edy Raharjo, ST., M.Eng.
TEKNIK ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS TDAR
Percobaan 12 led berbasis ATMega16 - BascomeAVRMaesaroh9
Tugas Mata Kuliah Sistem Mikrokontroller
Dosen Pengampu : R. Suryoto Edy Raharjo, S.T., M.Eng.
Kelompok 18 :
Yunianti Ayu Lestari (1710501073)
Maesaroh (1710501074)
Teknik Elektro
Fakultas Teknik
Universitas Tidar
Magelang
1. LABORATORIUM INSTRUMENTASI DAN ROBOTIKAKELAUTAN
BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN
DEPARTEMENILMU DANTEKNOLOGI KELAUTAN – IPB
1
PRAKTIKUMINSTRUMENTASIKELAUTAN
MODUL – 2
ANTARMUKA INSTRUMEN DENGAN MATLAB
TUJUAN PRAKTIKUM
Mahasiswa menguasai Perangkat Lunak MATLAB dengan baik dan benar,
khususnya untuk pengantarmukaan peralatan dengan MATLAB.
JUMLAH PERTEMUAN : 1 Kali
TAHAPAN PRAKTIKUM
1. Dasar-dasar MATLAB.
2. Membuat simulasi pada sisi mikrokontroler untuk pengiriman data suhu
(DS18B20) dan ditampilkan di MATLAB.
ALAT DAN BAHAN
1. Laptop
2. Perangkat Lunak MATLAB
3. USB to Serial
4. Development KIT ATMega8535
5. DS18B20
PUSTAKA
Codevision AVR . http://www.hpinfotech.ro/html/cvavr.htm
ATMEL ATMega8535. http://www.atmel.com/atmel/acrobat/doc2502.pdf
DALLAS 1-Wire. http://www.atmel.com/.../resources/prod_documents/doc2579.pdf
MATLAB. http://www.mathworks.com/products/matlab/
2. LABORATORIUM INSTRUMENTASI DAN ROBOTIKAKELAUTAN
BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN
DEPARTEMENILMU DANTEKNOLOGI KELAUTAN – IPB
2
PRAKTIKUMINSTRUMENTASIKELAUTAN
PENDAHULUAN
MATLAB adalah singkatan dari Matrix Laboratory, yaitu sebuah perangkat
lunak yang dikembangkan dengan keunggulan penanganan operasi terkait dengan
matrik. Saat ini MATLAB merupakan software paling popular yang digunakan untuk
penanganan kalkulasi numerik dan desain sistem. MATLAB merupakan bahasa
pemrograman yang sangat optimal untuk komputasi matriks. Salah satu keunggulan
MATLAB yaitu toolbox, dimana tool ini dapat digunakan untuk mendesain suatu
sistem dan mensimulasikannya sehingga seorang engineer bisa mendapatkan data
tanpa perlu melakukan eksperimen.
Tentunya data yang didapatkan merupakan data yang mendekati eksperimen
dan berbeda dengan data eksperimen sesungguhnya. Dengan langkah ini, seorang
engineer dapat menghemat waktu dan biaya dalam mendesain suatu sistem yang
diinginkan. MATLAB sangat membantu kita dalam melakukan debug, karena setiap
langkah kita dapat melihat nilai variable yang ada. Setiap variable yang digunakan
dalam program disimpan dalam sebuah workspace dan dapat dilihat dengan mudah.
Menggunakan MATLAB kita juga diberi kemudahan untuk mendesain sebuah
program aplikasi berbasis grafik interface/GUI. Dengan menggunakan GUI,
pengguna program aplikasi yang kita buat dapat lebih mudah mengoperasikannya.
Pada bahasan kali ini kita akan mencoba menggunakan beberapa fitur dari MATLAB
untuk membuat sebuah aplikasi data logger sederhana.
Pada kesempatan ini kita akan mencoba mendesain sebuah data logger suhu
DS1820 produksi Dallas Semiconductor. Sensor suhu ini outputnya data digital yang
tidak membutuhkan kalibrasi lagi. DS1820 menggunakan metode 1-wire dalam
komunikasinya. Sehingga cukup menggunakan 3 jalur, yaitu: data (DQ), Vcc dan
Ground.
Kita juga akan menggunakan chip mikrokontroller AVR ATMega8535 untuk
kontroler yang bertugas membaca suhu dan berkomunikasi dengan komputer. Kita
bisa menggunakan fasilitas wizard dari CodeVision® untuk membuat program di
Sensor suhu DS18B20 merupakan suatu komponen elektronika yang dapat
3. LABORATORIUM INSTRUMENTASI DAN ROBOTIKAKELAUTAN
BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN
DEPARTEMENILMU DANTEKNOLOGI KELAUTAN – IPB
3
PRAKTIKUMINSTRUMENTASIKELAUTAN
menangkap perubahan temperatur lingkungan lalu kemudian mengkonversinya
menjadi besaran listrik. Sensor ini merupakan sensor digital yang menggunakan 1
wire untuk berkomunikasi dengan mikrokontroler. Keunikan dari sensor ini adalah
tiap sensor memiliki kode serial yang memungkinkan untuk penggunaan DS18B20
lebih dari satu dalam satu komunikasi 1 wire.
Spesifikasi sensor suhu DS18B20:
Unik 1-Wire ® interface hanya memerlukan satu pin untuk komunikasi
secara 1-Wire
Setiap perangkat memiliki kode serial 64-bit yang disimpan dalam sebuah
ROM onboard
Tidak memerlukan ada komponen tambahan
Bekerja pada kisaran tegangan 3 sampai 5,5V
Dapat mengukur suhu pada kisaran -55 sampai 125 °C
Akurasi ± 0,5°C akurasi dari suhu -10 sampai 85 °C
Resolusi dapat dipilih oleh pengguna antara 9 sampai 12 bit
Kecepatan mengkonversi suhu maksimal 750 ms
Kompatibel dengan software Codevision AVR
4. LABORATORIUM INSTRUMENTASI DAN ROBOTIKAKELAUTAN
BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN
DEPARTEMENILMU DANTEKNOLOGI KELAUTAN – IPB
4
PRAKTIKUMINSTRUMENTASIKELAUTAN
SISTEMATIKA PRAKTIKUM
Sensor Suhu
DS18B20 ATMEGA8535
KOMPUTER
MATLAB
5. LABORATORIUM INSTRUMENTASI DAN ROBOTIKAKELAUTAN
BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN
DEPARTEMENILMU DANTEKNOLOGI KELAUTAN – IPB
5
PRAKTIKUMINSTRUMENTASIKELAUTAN
1. SISI MIKROKONTROLER
Untuk membaca suhu dengan DS1820, maka kita dapat menggunakan
software CodeVision®. Dengan menggunakan fasilitas wizard yang ada, kita dapat
melakukannya dengan mudah. Ikuti langkah berikut untuk membuatnya.
1. Pada tab Chip, tentukan jenis chip dan X-TALL yang akan digunakan. Pada
kesempatan ini digunakan chip ATmega8535 dengan X’tal 4 MHz
2. Pada tab 1 Wire, pilih PORT yang akan digunakan sebagai koneksi komunikasi
dengan sensor DS1820 dari combo 1 Wire Port. Kemudian check Enabled pada
DS1820/DS18S20.
6. LABORATORIUM INSTRUMENTASI DAN ROBOTIKAKELAUTAN
BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN
DEPARTEMENILMU DANTEKNOLOGI KELAUTAN – IPB
6
PRAKTIKUMINSTRUMENTASIKELAUTAN
3. Pada tab USART, check pada Transmitter dan pilih Baud Rate: 9600
4. Selanjutnya pilih Generate, Save and Exit dari menu File
5. Lengkapilah script sehingga menjadi seperti berikut:
...
#include <stdlib.h>
...
// 1 Wire Busfunctions
#asm
.equ __w1_port=0x1B ;PORTA
.equ __w1_bit=0
#endasm
/* maximumnumberof DS1820/DS18S20 connectedtothe bus */
#define MAX_DEVICES 8
/* DS1820/DS18S20 devicesROMcode storage area,9 bytesare usedfor eachdevice
see the w1_search functiondescription),butonlythe first8bytescontainthe ROMcode
and CRC */
unsignedchar rom_codes[MAX_DEVICES][9];
/* allocate space for ROMcodesof the deviceshichgenerate analarm*/
unsignedcharalarm_rom_codes[MAX_DEVICES][9];
// Declare yourglobal variableshere
unsigneddevices;
int temp;
7. LABORATORIUM INSTRUMENTASI DAN ROBOTIKAKELAUTAN
BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN
DEPARTEMENILMU DANTEKNOLOGI KELAUTAN – IPB
7
PRAKTIKUMINSTRUMENTASIKELAUTAN
void main(void)
{
// USARTinitialization
...
// 1 Wire Businitialization
w1_init();
// LCD module initialization
// Global enable interrupts
#asm(“sei”)
/* detecthowmany DS1820/DS18S20 devices
are connectedtothe bus and
store theirROMcodesin the rom_codesarray */
devices=w1_search(0xf0,rom_codes);
/* displaythe number*/
printf(“%-uDEVICE(S) DETECTEDnr”,devices);
/* if no deviceswere detectedthenhalt*/
if (devices==0) while(1); /* loopforever*/
while(1)
{
// Place your code here
temp=ds1820_temperature_10(&rom_codes[0][0]);
printf(“%-i.%-unr”,temp/10,abs(temp%10));
};
}
Maka hasilnya akan dapat dilihat pada bagian terminal CodeVision® yang
menampilkan suhu
2. SISI KOMPUTER
Selanjutnya ikutilah langkah-langkah berikut untuk membuat sebuah data logger
dengan MATLAB. Di MATLAB, sebuah serial port termasuk kedalam sebuah
object. Agar dapat menggunakan serial port kita harus menciptakan object dan
melakukan pengaturan pada object tersebut. Untuk membuat sebuah object serial
pada MATLAB kita ketik:
s1 = serial(‘COM1′); %kita menciptakan object s1 sebagai COM1
kemudian untuk mengetahui propeti dari object tersebut kita ketik:
8. LABORATORIUM INSTRUMENTASI DAN ROBOTIKAKELAUTAN
BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN
DEPARTEMENILMU DANTEKNOLOGI KELAUTAN – IPB
8
PRAKTIKUMINSTRUMENTASIKELAUTAN
get(s1,{‘Type’,'Name’,'Port’})
ans =
‘serial’ ‘Serial-COM1′ ‘COM1′
Selanjutnya kita atur nilai masing-masing property yang diperlukan. Pada kali ini
kita perlu mengatur nilai baud rate, data bit, stop bit, dan input buffer size. Ketik:
set(s1,’BaudRate’,9600,’DataBits’,8,’StopBits’,1,’InputBufferSize’,16000)
Kemudian untuk dapat menggunakan object serial, kita perlu menghubungkan
object ke device serial sendiri. Ketik:
fopen(s1)
untuk membaca data dari serial kita menggunakan perintah:
A=fscanf(s1)
Maka data yang dibaca akan disimpan di variable A. Untuk mengirimkan data ke
serial kita menggunakan perintah:
fprintf(s1,’DataADC’);
setelah kita selesai menggunakan object serial, kita perlu memutus koneksi object
dengan device, agar bisa digunakan oleh software lainnya. Ketik:
fclose(s1)
jika kita sudah tidak memerlukan object serial tersebut, kita harus menghapus object
serial dari memori untuk mengembalikan memori. Ketik:
delete(s1)
9. LABORATORIUM INSTRUMENTASI DAN ROBOTIKAKELAUTAN
BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN
DEPARTEMENILMU DANTEKNOLOGI KELAUTAN – IPB
9
PRAKTIKUMINSTRUMENTASIKELAUTAN
Tulislah Program di MATLAB dan sesuaikan dengan parameter Komputer
anda
%–menghapussemuavariableyangadadi work space
clear all;
%–menutupsemuafigure yangterbukajikaada
close all;
%–membuatsebuahfigure yangakandigunakansebagai tempatmembuatgrafiklogging
figure(1);
clc;
%–membuatsebuahobjectserial pada MATLABdanmengatursettingsesuai dengansetting
%–di mikrokontroller
%-sesuaikan dengan parameter di Mikrokontroler dan Port COM komputer
fid = serial(‘COM7′,’BaudRate’,9600,’DataBits’,8,’StopBits’,1,’InputBufferSize’,16000);
%–membukakoneksiobjectdenganportserial
fopen(fid)
%–memintauseruntukmemasukkan sejumlahnilaipengambilandata
SET = input(‘Masukkan jumlahdata,StartLogging……………(PRESS——->Enter…!)’);
clear A;
%–melakukanloppingsejumlahdatayangdimasukkan
fori=1:SET
%–membacadata dari serial
data1=str2num(fscanf(fid));
if (data1>0)
title(['Data#=' num2str(data1)]);
A(i)=data1;
%–menampilkandata dalam grafik
plot(A,’red’);
axis([0SET 0 100])
hold on;
pause(.5)%bolehada,bolehtidak,silahkandi atur
end
end
%–menutupkoneksidenganserial
fclose(fid)
%–menghapusobjectserial
delete(fid);
10. LABORATORIUM INSTRUMENTASI DAN ROBOTIKAKELAUTAN
BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN
DEPARTEMENILMU DANTEKNOLOGI KELAUTAN – IPB
10
PRAKTIKUMINSTRUMENTASIKELAUTAN
%–menyimpandatahasil pengukuran
save(‘data_pengukuran.mat’,’A’);
Program diatas akan menampilkan data realtime yang dikirimkan oleh
mikrokontroler di sebuah figure / plot MATLAB dan data tersebut juga tersimpan
otomatis dalam file “data_pengukuran.mat”.
TUGAS:
Buatlah sebuah program yang dapat menampilkan data suhu seperti layaknya sebuah
osiloskop di MATLAB.
GOOD LUCK!
Tulislah Laporan anda dengan baik dan benar menggunakan bahasa anda
sendiri
Please don’t “copy paste”!