RANCANG BANGUN ALAT UKUR DIGITAL

  • Upload
    iqbal

  • View
    413

  • Download
    0

Embed Size (px)

DESCRIPTION

LABORATORIUM INSTRUMENTASI DAN ROBOTIKA KELAUTAN BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN DEPARTEMEN ILMU DAN TEKNOLOGI KELAUTAN ± IPBMODUL ± 1RANCANG BANGUN ALAT UKUR DIGITALTUJUAN PRAKTIKUM Mahasiswa mampu membuat sebuah instrumen yang memiliki hasil terkalibrasi dengan baik dan benar serta ditampilkan di komputer atau display LCD. JUMLAH PERTEMUAN : 3 Kali TAHAPAN PRAKTIKUM 1. Membuat program ADC 2. Membuat Program Serial RS232 3. Mencatat Hasil ADC yang ditampilkan oleh Terminal Serial

Citation preview

LABORATORIUM INSTRUMENTASI DAN ROBOTIKA KELAUTAN BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN DEPARTEMEN ILMU DAN TEKNOLOGI KELAUTAN IPB

MODUL 1

RANCANG BANGUN ALAT UKUR DIGITALTUJUAN PRAKTIKUM Mahasiswa mampu membuat sebuah instrumen yang memiliki hasil terkalibrasi dengan baik dan benar serta ditampilkan di komputer atau display LCD. JUMLAH PERTEMUAN : 3 Kali TAHAPAN PRAKTIKUM 1. Membuat program ADC 2. Membuat Program Serial RS232 3. Mencatat Hasil ADC yang ditampilkan oleh Terminal Serial RS232, Melakukan Kalibrasi dan Manipulasi data ADC untuk Pembuatan sebuah Instrumen 4. Mengetahui dan mampu menganalisa ketelitian alat ukur yang telah dibuat. 5. Menampilkan Hasil langkah no. 1-4 ke LCD 16x2

ALAT DAN BAHAN 1. 2. 3. 4. 5. 6. 7. 8. Development KIT Mikrokontroler ATMega8535 USB to Serial LCD 16x2 Sensor suhu NTC Pemanas (Heater) Thermometer Air Raksa Microsoft Excel Codevision AVR

PUSTAKA Codevision AVR . http://www.hpinfotech.ro/html/cvavr.htm ATMEL ATMega8535. http://www.atmel.com/atmel/acrobat/doc2502.pdf LCD 16x2 . http://www.dfrobot.com/image/data/FIT0127/datasheet.pdf

1 PRAKTIKUM INSTRUMENTASI KELAUTAN

LABORATORIUM INSTRUMENTASI DAN ROBOTIKA KELAUTAN BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN DEPARTEMEN ILMU DAN TEKNOLOGI KELAUTAN IPB

1. PEMBUATAN PROGRAM ADC Buatlah sebuah rangkaian sensor dengan prinsip pembagi tengangan kemudian masukan pada PORTA.0 Mikrokontroler.

Gambar 1. Rangkaian Sensor suhu NTC pada Uji coba Modul-1.

Buka Codevision kemudian buat project baru dan gunakan Wizard. Seting konfigurasi Wizard seperti pada Gambar Berikut.

Gambar 2. Set Model Mikrokontroler dan X-Tall yang digunakan (Lihat Board yang anda gunakan) Untuk melakukan set ADC klik Tab ADC kemudian set seperti pada Gambar dibawah ini.

2 PRAKTIKUM INSTRUMENTASI KELAUTAN

LABORATORIUM INSTRUMENTASI DAN ROBOTIKA KELAUTAN BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN DEPARTEMEN ILMU DAN TEKNOLOGI KELAUTAN IPB

Gambar 3. Set Tab ADC yang digunakan pada Modul-1. Setelah melakukan langkah diatas berarti secara umum langkah Wizard untuk menggunakan ADC telah dilakukan, kemudian dilanjutkan untuk men-set program kita untuk komunikasi serial dengan komputer sehingga mikrokontroler dapat berkomunikasi dengan komputer. 2. PEMBUATAN PROGRAM SERIAL Set wizard untuk komunikasi serial di codevision seperti berikut:

Gambar 4. Set Wizard Serial di Codevision3 PRAKTIKUM INSTRUMENTASI KELAUTAN

LABORATORIUM INSTRUMENTASI DAN ROBOTIKA KELAUTAN BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN DEPARTEMEN ILMU DAN TEKNOLOGI KELAUTAN IPB

Setelah semua langkah diatas dilakukan, kemudian masih pada jendela wizard klik menu File kemudian Generate, Save & Exit, simpan dengan nama file yang anda kenali. Langkah tersebut akan menghasilkan potongan program seperti berikut (Perhatikan kode program yang dicetak tebal/ diwarnail!), kemudian isi potongan program jika belum ada: PROGRAM -1#include #include // Standard Input/Output functions #include #define ADC_VREF_TYPE 0x40 // Read the AD conversion result unsigned int read_adc(unsigned char adc_input) { ADMUX=adc_input | (ADC_VREF_TYPE & 0xff); // Delay needed for the stabilization of the ADC input voltage delay_us(10); // Start the AD conversion ADCSRA|=0x40; // Wait for the AD conversion to complete while ((ADCSRA & 0x10)==0); ADCSRA|=0x10; return ADCW; } // Declare your global variables here

Unsigned char data; Unsigned char baca_data[16];void main(void) { // Declare your local variables here // 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=0x00; DDRA=0x00; ... ... ... // USART initialization // Communication Parameters: 8 Data, 1 Stop, No Parity // USART Receiver: On // USART Transmitter: On // USART Mode: Asynchronous // USART Baud Rate: 9600 UCSRA=0x00; UCSRB=0x18; UCSRC=0x86; UBRRH=0x00; UBRRL=0x19;

4 PRAKTIKUM INSTRUMENTASI KELAUTAN

LABORATORIUM INSTRUMENTASI DAN ROBOTIKA KELAUTAN BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN DEPARTEMEN ILMU DAN TEKNOLOGI KELAUTAN IPB// Analog Comparator initialization // Analog Comparator: Off // Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80; SFIOR=0x00; // ADC initialization // ADC Clock frequency: 125.000 kHz // ADC Voltage Reference: AVCC pin // ADC High Speed Mode: Off // ADC Auto Trigger Source: Free Running ADMUX=ADC_VREF_TYPE & 0xff; ADCSRA=0xA5; SFIOR&=0x0F; while (1) { // Place your code here

data=read_adc(0); //angka 0 berarti PORTA.0 printf(baca_data, Data = %d , data); //data dikirim ke Serial RS232}; }

Setelah beberapa perintah ditambahkan kemudian lakukan kompilasi program, kemudian download program kedalam mikrokontroler.

CATATAN: Program ini menggunakan Komunikasi RS232 dan pada umumnya Laptop / komputer saat ini tidak memiliki RS232. USB dapat digunakan sebagai alternatif dengan menggunakan konverter USB to Serial. Konverter ini mengharuskan untuk menginstall sebuah perangkat lunak (Driver) yang akan membentuk sebuah Virtual COM. Pada saat mencoba pastikan anda telah menginstall Driver dari USB to Serial yang digunakan. Check nomor COM pada komputer dan hubungkan dengan Mikrokontroler anda saat ini. Jika hasil yang tampil di terminal terlalu cepat, anda dapat menambahkan perintah delay_ms(1000) setelah perintah printf

5 PRAKTIKUM INSTRUMENTASI KELAUTAN

LABORATORIUM INSTRUMENTASI DAN ROBOTIKA KELAUTAN BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN DEPARTEMEN ILMU DAN TEKNOLOGI KELAUTAN IPB

3. KALIBRASI DATA ADC Langkah sebelumnya seharusnya menghasilkan data digital dari sensor dirangkaian Gambar 1. Bila sensor berubah maka nilai yang dihasilkan juga berubah, data tersebut ditampilkan di Terminal serial komputer. Isilah Tabel 1. berikut:

Tabel 1. Isian Data KalibrasiTegangan Sensor (Volt) Hasil Komputer Digital Number (Teori) Suhu Themometer (Celcius) 27 27.5 28 28.5 29 29.5 30 30.5 31 31.5 32 32.5 33 33.5 34 34.5

Digital Number (Teori) dihitung menggunakan rumus berikut (*jika menggunakan ADC 8-bit ganti angka 1024 dengan 256):

Masukan kolom 2 dan 4 ke program spreadsheet seperti Microsoft Exel, kemudian buat grafik hubungan keduanya dan cari trendline serta rumus hubungan kedua kolom tersebut. Contoh hasil pengolahan dengan rumusnya terlihat pada Gambar 5.

6 PRAKTIKUM INSTRUMENTASI KELAUTAN

LABORATORIUM INSTRUMENTASI DAN ROBOTIKA KELAUTAN BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN DEPARTEMEN ILMU DAN TEKNOLOGI KELAUTAN IPB45 40 35 Suhu (Celcius) 30 25 20 15 10 5 0 0 200 400 600 800 1000 1200 1400

y = 0.0133x + 24.667 R = 1

Hasil Komputer

Gambar 5. Contoh Hasil Pengolahan pada Microsoft Excel Kemudian edit potongan PROGRAM-1 menjadi berikut:while (1) { // Place your code here

data=read_adc(0); data=0.0133*data + 24.667; printf(baca_data, Data = %d Celcius , data);}; }

Lakukan kompilasi dan download ulang program yang sudah di edit ke mikrokontroler, lihat hasilnya.

CATATAN: Jika hasil yang tampil di terminal terlalu cepat, anda dapat menambahkan perintah delay_ms(1000) setelah perintah printf

7 PRAKTIKUM INSTRUMENTASI KELAUTAN

LABORATORIUM INSTRUMENTASI DAN ROBOTIKA KELAUTAN BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN DEPARTEMEN ILMU DAN TEKNOLOGI KELAUTAN IPB

4. PENAMPILAN DATA DI LCD LCD ( Liquid Cell Display ) merupakan suatu alat yang dapat menampilkan karakter ASCI sehingga kita bisa menampilkan campuran huruf dan angka sekaligus. Untuk mengakses lcd 162 dengan mikrokontroler, tentu saja keduanya harus dihubungkan terlebih dahulu sesuai dengan gambar berikut.

Gambar 6. Koneksi Pin LCD dengan Mikrokontroler Tabel 2. Keterangan pin LCD dan Mikrokontroler Keterangan Pin Keterangan LCD 1 GND 2 +5V 4 RS 5 RD 6 EN 11 D4 12 D5 13 D6 14 D7

Pin Mikrokontroller 11 10 22 23 24 26 27 28 29

Keterangan GND VCC Port C.0 Port C.1 Port C.2 Port C.4 Port C.5 Port C.6 Port C.7

Pada gambar diatas kaki 3 LCD diberikan potensiometer untuk mengubah besar tegangan yang diberikan ke kaki 3 LCD. Kaki 3 LCD berfungsi untuk mengatur intensitas cahaya yang dipancarkan LCD. Lakukan set wizard di codevision seperti Gambar berikut:

8 PRAKTIKUM INSTRUMENTASI KELAUTAN

LABORATORIUM INSTRUMENTASI DAN ROBOTIKA KELAUTAN BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN DEPARTEMEN ILMU DAN TEKNOLOGI KELAUTAN IPB

Gambar 7. Set Wizard LCD di Codevision Setelah semua langkah diatas dilakukan, kemudian masih pada jendela wizard klik menu File kemudian Generate, Save & Exit, simpan dengan nama file yang anda kenali. Langkah tersebut akan menghasilkan potongan program seperti berikut (Perhatikan kode program yang dicetak teba/ diwarnail!), kemudian isi potongan program jika belum ada:#include #include // Alphanumeric LCD Module functions #asm .equ __lcd_port=0x15 ;PORTC #endasm #include // Standard Input/Output functions #include #define ADC_VREF_TYPE 0x40 // Read the AD conversion result unsigned int read_adc(unsigned char adc_input) { ADMUX=adc_input | (ADC_VREF_TYPE & 0xff); // Delay needed for the stabilization of the ADC input voltage delay_us(10); // Start the AD conversion ADCSRA|=0x40; // Wait for the AD conversion to complete while ((ADCSRA & 0x10)==0); 9 PRAKTIKUM INSTRUMENTASI KELAUTAN

LABORATORIUM INSTRUMENTASI DAN ROBOTIKA KELAUTAN BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN DEPARTEMEN ILMU DAN TEKNOLOGI KELAUTAN IPB ADCSRA|=0x10; return ADCW; } // Declare your global variables here

unsigned char data; unsigned char baca_data[16];void main(void) { // Declare your local variables here // 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=0x00; DDRA=0x00; // Port B initialization .. ... // USART initialization // Communication Parameters: 8 Data, 1 Stop, No Parity // USART Receiver: On // USART Transmitter: On // USART Mode: Asynchronous // USART Baud Rate: 9600 UCSRA=0x00; UCSRB=0x18; UCSRC=0x86; UBRRH=0x00; UBRRL=0x19; // ADC initialization // ADC Clock frequency: 125.000 kHz // ADC Voltage Reference: AVCC pin // ADC High Speed Mode: Off // ADC Auto Trigger Source: Free Running ADMUX=ADC_VREF_TYPE & 0xff; ADCSRA=0xA5; SFIOR&=0x0F; // LCD module initialization lcd_init(16);

10 PRAKTIKUM INSTRUMENTASI KELAUTAN

LABORATORIUM INSTRUMENTASI DAN ROBOTIKA KELAUTAN BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN DEPARTEMEN ILMU DAN TEKNOLOGI KELAUTAN IPB while (1) { // Place your code here

data=read_adc(0); data=0.0133*data + 24.667; printf(baca_data, Data = %d Celcius , data);lcd_gotoxy (0,0); sprintf (baca_data, Suhu=%i ,data); lcd_puts (lcd_buffer); delay_ms (100); }; }

Lihat apa yang muncul di LCD yang telah anda rakit, terjemahkan hasil tersebut berdasarkan program yang telah dibuat. Lakukan uji sekali lagi, dengan menggunakan thermometer air raksa dan alat ukur yang telah dibuat, isilah Tabel 3 dibawah ini: Tabel 3. Isian Data Perbandingan Suhu Alat yang dirancang dan Suhu ThermometerSuhu Alat Ukur Hasil (Celcius) Suhu Themometer (Celcius) 27 27.5 28 28.5 29 29.5 30 30.5 31 31.5 32 32.5 33 33.5 34 34.5

Buat grafik hubungan keduanya, lihat standar deviasi dan parameter statistik lainnya. Lakukan penilaian terhadap alat yang anda buat dan jelaskan kenapa.11 PRAKTIKUM INSTRUMENTASI KELAUTAN

LABORATORIUM INSTRUMENTASI DAN ROBOTIKA KELAUTAN BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN DEPARTEMEN ILMU DAN TEKNOLOGI KELAUTAN IPB

FORMAT LAPORAN (SETIAP TAHAPAN / 3 KALI) 1. identitas jelas (Simplenya gunakan cover seperti skripsi ITK) 2. LANGKAH PRAKTIKUM (hanya yang anda lakukan saja) 3. HASIL (berupa data , baik yang diperintahkan di modul, oleh asisten atau yang menurut anda menarik untuk menjadi sebuah data) 4. PEMBAHASAN A. ALUR PROGRAM (Ikuti Aturan Umum yang digunakan) B. SOURCE CODE PROGRAM (yang teratur dan mudah dibaca, jika perlu beri keterangan) C. PENJELASAN PROGRAM (termasuk teknik kalibrasi dll yg dilakukan, jika perlu gunakan rangkaian, foto, ilustrasi atau sejenisnya untuk membantu penjelasan anda. Termasuk jika ada kekurangan dari sisi instrumentasinya menurut anda) 5. KESIMPULAN 6. Jawaban tugas (JIKA ADA DAN DIPISAH DARI LAPORAN PRAKTIKUM) * MAKSIMAL 6 HALAMAN (sudah termasuk cover, belum termasuk jawaban tugas), tidak perlu tinjauan pustaka dan penjelasannya to the point aja, gambar tolong sejelas mungkin.

PENGUMPULAN LAPORAN: Hingga Hari Jumat jam 24.00 WIB pada minggu praktikum berlangsung, dalam bentuk file microsoft word dan email dengan format: To : [email protected] Cc : [alamat email asisten meja anda] Subject: INKEL Prak Ke [pertemuan ke] [NRP anda]

DON T SHARE YOUR REPORT!ORIGINALITAS LAPORAN ANDA SANGAT KAMI HARGAI, BAGI YANG MELANGGAR DIBERI NILAI 0

12 PRAKTIKUM INSTRUMENTASI KELAUTAN

LABORATORIUM INSTRUMENTASI DAN ROBOTIKA KELAUTAN BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN DEPARTEMEN ILMU DAN TEKNOLOGI KELAUTAN IPB

TUGAS-1 (MAKSIMAL NILAI: 150) 1. (15) Apa yang dimaksud dengan tegangan referensi 2. (15) Jelaskan apa yang dimaksud dengan %d, %i, %f pada perintah printf, kenapa harus berbeda? 3. (20) Hitung nilai keluaran ADC 10-bit, tegangan referensi 2.5 volt jika tegangan sensor seperti tabel berikut: No 1 2 3 4 5 Voltase 0.45 1.21 0.75 2.00 2.22 Digital Number (ADC)

4. (25) Jika proses pencocokan data kalibrasi percobaan menghasil persamaan , R2=0.643. bagaimana pendapat anda, apakah ini sudah cukup baik? Kenapa dan langkah apa yang harus dilakukan selanjutnya? 5. (25) Pada sebuah rangkaian proses kalibrasi dengan pengukuran pada seluruh selang data alat ukur dihasilkan data sebagai berikut:Suhu (Celcius) 0 10 20 30 40 50 60 70 80 90 100 Sensor (Volt) 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1

Jika kita menggunakan mikrokontroler ATMega8535 dan kristal frequency 4 MHz, isilah tabel dibawah ini. Harap beri penjelasan setiap jawaban anda.

13 PRAKTIKUM INSTRUMENTASI KELAUTAN

LABORATORIUM INSTRUMENTASI DAN ROBOTIKA KELAUTAN BAGIAN AKUSTIK DAN INSTRUMENTASI KELAUTAN DEPARTEMEN ILMU DAN TEKNOLOGI KELAUTAN IPB Parameter Vref Ketelitian Kecepatan Nilai Satuan Volt bit KHz

BONUS: (50) Lakukan proses pencocokan data di MATLAB untuk data Soal No.5, lengkapi dengan Gambar dan kode sumber yang digunakan.

BECANDA DIKIT HEHE....

GOOD LUCK!!!

14 PRAKTIKUM INSTRUMENTASI KELAUTAN