You are on page 1of 41

HAL: 2

Pengenalan Instrumentasi Maya

Membuat subVI di LabVIEW Mempelajari struktur data yang dipakai di LabVIEW seperti Array, Cluster, dan Structures Membuat Program dengan LabVIEW Mem-publish program (VI) di Web

1. Pendahuluan
Secara sederhana instrumentasi maya adalah sistem instrumentasi berbasis komputer. Perhatikan bahwa dalam setiap instrumen selalu terdapat peraga (display) dan pemroses (processor), kedua komponen ini juga terdapat pada komputer. Perbedaannya adalah pada instrumen ada input (sensor, transduser) dan output (aktuator). Sehingga hanya komponen ini saja yang perlu ditambahkan agar diperoleh sistem instumentasi berbasis komputer. Untuk membangun sistem instrumentasi berbasis komputer (instrumentasi maya), diperlukan dua komponen utama, yaitu: Hardware: 1. Hardware data akusisi (daq-card), digitizer, serial (RS232, USB), paralel (Centronics, GPIB) 2. Hardware akusisi Image (vision) 3. Hardware kontrol Instrumentasi Software development tool: 1. Sembarang bahasa pemrogramman (c/c++/C#, CVI/LabWindow, Visual BASIC, Java, Phyton,) 2. LabVIEW Sehingga instrumentasi maya dapat didefinisikan sebagai: Satu layer software dan/atau hardware yang ditambahkan pada sebuah komputer sedemikian rupa

Literatur
1. National Instruments, LabVIEW Introduction 6 hours 2. L.K. Well and J. Travis, LabVIEW for Everyone: Graphical Programming Made Even Easier, 2nd Edition, Prentice Hall, NJ, 1997

Sasaran
Sasaran kuliah ini adalah untuk: Memahami komponen-komponen instrumentasi maya Pengenalan LabVIEW dan fungsi-fungsi yang umum Membuat aplikasi sederhana sistem data akusisi

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 3

HAL: 4

sehingga komputer itu dapat beriteraksi seolah-olah sebagai instrumen tradisional. Pada dasarnya hardware digunakan untuk men-digitasi sinyal analog seperti sinyal audio, image atau lainnya. Sedangkan software ditujukan untuk mengontrol hardware, analisa data dan presentasi hasil. LabVIEW adalah bahasa programming berbasis grafik yang ditujukan untuk instrumentasi maya yang disupport tidak hanya oleh National Instruments namun juga oleh berbagai manufacturer lainnya. Beberapa contoh hardware data akusisi yang dibuat oleh National Instruments ditunjukkan pada gambar berikut. Contoh hardware image akusisi untuk format PCI bus yang juga dibuat oleh National Instruments.

Sedangkan untuk instrumentasi kontrol, standard umum yang dipakai adalah GPIB/IEEE488. Dengan standard ini dimungkinkan suatu devais, seperti osiloskop, sinyal generator, voltmeter, dll dikontrol secara remote. Contoh hardware berikut ini adalah konversi dari bus komputer (PCI atau USB) ke bus GPIB.

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 5

HAL: 6

Standard GPIB digunakan untuk komunikasi antar instrumen pengukuran seperti ditunjukkan berikut ini.

2. Pengenalan LabVIEW
Program LabVIEW programs dikenal sebagai virtual instrument (VI). Contoh Program VI:

Konfigurasi pin dari kabel GPIB ditunjukkan pada gambar berikut.

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 7

HAL: 8

Front Panel

Front Panel

Block Diagram

Block Diagram

Contoh program respon frekuensi. Contoh program gerak peluru ditunjukkan gambar berikut.

Contoh program gerak peluru. Terlihat bahwa masing-masing VI terdiri atas 3 komponen utama, yaitu:

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 9

HAL: 10
Front Panel Toolbar Boolean Control

Front Panel untuk berinteraksi dengan pengguna. Block Diagram sebagai kode program. Icon/Connector digunakan untuk menghubungkan VI dengan VI yang lainnya.

Icon

2.1 Front Panel


Front Panel digunakan untuk berinteraksi dengan pengguna pada saat program itu berjalan. Pengguna dapat mengontrol program, mengubah input, dan memantau data secara real-time. Kontrol digunakan untuk pengaturan input, seperti setting nilai alarm, menekan switch on/off, atau men-stop program. Kontrol (input) dapat berupa knobs, pushbuttons, dials, dan devais lainnya. Kontrol digunakan untuk men-simulasi devais instrumen input dan men-supply data ke blok diagram. Indikator (output) digunakan sebagai output, seperti thermometer, intensitas cahaya, data, suara, dan info lainnya. Indikator dapat berupa grafik, LED, dan display lainnya. Indikator men-simulasi devais instrumen output dan memperagrakan data yang akusisi atau dihasilkan. Setiap control dan indicator di front panel memiliki terminal yang saling berhubungan di block diagram. Pada saat program VI berjalan, nilai dari control mengalir di block diagram, dan hasilnya menuju ke indikator.

Graph Legend

Waveform Graph Plot Legend Scale Legend

Komponen-komponen front panel

Front panel adalah user interface dari program VI, yang terdiri atas control dan indicator, yang masing-masing sebagai terminal input dan output. Pada gambar ini yang menunjukkan control adalah: Power switch sebagai kontrol boolean, nilai default-nya adalah false dan akan berubah menjadi true bila switch ditekan, Sedangkan yang menjukkan indicator adalah: Temperature history sebagai indikator dalam bentuk grafik waveform. Grafik ini mem-plot Deg F versus Time (sec).

2. 2 Blok Diagram

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 11
Block Diagram Toolbar SubVI Graph Terminal Wire Data

HAL: 12

3. VI Express, VI Standard dan Fungsi


Divide Function

VI Express: Program VI yang bersifat interaktif, dikonfigurasi pada halaman box dialog. LabVIEW akan menghasilkan subVI berdasarkan setting yang dibuat tsb. VI Standard: Program VI yang bersifat modular, dan customable dengan cara pengkawatan. Functions: Elemen dasar dari LabVIEW, tidak memiliki front panel maupun blok diagram.

While Loop Structure

Numeric Constant

Timing Function

Boolean Control Terminal

Komponen-komponen Block diagram

Block diagram berisi kode sumber yang bersifat grafis. Di dalam block diagram objek dari front panel berbentuk terminal. Sehingga di dalam block diagram terdapat: terminal yang berasal dari front panel, fungsi dan struktur built-in dari pustaka VI , wire yang menghubungkan semua node SubVI Temp memanggil subrutin yang menerima nilai suhu dari board Data Akusisi (DAQ) dan mem-plot hasilnya di Temperature History. Saklar Power adalah kontrol boolean yang akan men-stop eksekusi loop while. Perhatikan bahwa di dalam loop while terdapat fungsi pewaktu yang mengontrol kecepatan loop beriterasi.

3.1 Palet Kontrol dan Fungsi


Palet Kontrol (pada Front Panel)

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 13

HAL: 14

Untuk membuat blok diagram gunakan palet fungsi , bisa dilakuakan dengan memilih WindowShow Functions Palette atau klik kanan di ruang kerja blok diagram yang kosong.

3.2 Palet Tools


Palet ini bersifat Floating, namun dapat di-fix-kan

Palet Kontrol

Digunakan untuk: mengoperasikan,mengubah front panel dan objek di blok diagram.

Gunakan palet kontrol untuk menempatkan kontrol dan indikator di front panel. Palet kontrol hanya tersedia pada saat menggunakan front panel. Palet kontrol diaktifkan dengan cara: Pilih WindowShow Controls Palet Klik kanan di ruangkerja front panel Palet Fungsi (pada Block Diagram) Automatic Selection Tool Pada saat tool Automatic Selection di-enabled, cursor akan akan otomatis memilih tool yang sesuai. Seringkali fasilitas ini sengaja di-mati-kan sehingga dapat dipilih tool sesuai dengan keinginan. Untuk memilihnya bisa dipilih dengan meng-klik tombol Automatic Tool Selection, sifatnya toggle. Pilihan tool yang tersedia adalah:

Palet Fungsi

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 15

HAL: 16

Operating Tool Positioning/Resizing Tool Labeling Tool Wiring Tool Shortcut Menu Tool

Scrolling Tool Breakpoint Tool Probe Tool Color Copy Tool Coloring Tool

Tombol Abort Execution digunakan untuk menghentikan program VI dengan segera. Catatan: Hindari menggunakan tombol Abort Execution untuk menstop program yang sedang berjalan. Biarkan program VI berhenti secara normal, atau dihentikan oleh program. Tombol Pause digunakan untuk menghentikan program VI yang sedang berjalan. Pada saat tombol Pause, akan highlighted di tempat eksekusi blok diagram yang sedang di hentikan. (Sifatnya Toggle). Text Settings digunakan untuk untuk men-set font (ukuran, style, dan warna).

Status Toolbar

Run Button Continuous Run Button Abort Execution Pause/Continue Button Text Settings Align Objects Distribute Objects Reorder Resize front panel objects Execution Highlighting Button Step Into Button Step Over Button Step Out Button

Additional Buttons on the Diagram Toolbar

Align Objects digunakan untuk mengatur objek sepanjang sumbu (vertikal, rata kanan, rata atas, dll). Distribute Objects digunakan untuk mengatur objek dengan space yang sama. Resize Objects digunakan untuk mengatur lebar, tinggi dari objek di front panel.

Tombol Run digunakan untuk menjalankan program VI. Pada saat program berjalan, tombol Run berubah menjadi panah hitam. Tombol Continuous Run digunakan untuk menjalankan program secara terus menerus. Tombol ini sifatnya toggle..

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 17

HAL: 18

4. Menjalankan Program Virtual Instrument (VI)

5. Topik yang berkaitan dengan signal akan muncul, pilihlah contoh yang diinginkan (dengan mengklik ganda). 6. Contohnya klik ganda Signal Generation and Processing.vi. Perhatikan program VI tsb dan jalankanlah. Ubah frekuensi dan tipe sinyal input dan perhatikan perubahan terjadi pada grafik. Lakukan juga dengan mengubah pemrosesan sinyal (Signal Processing Window) dan opsi pada filter. Klik tombol Stop untuk menghentikan pemrosesan sinyal. Catatan Program VI dapat juga dibuka dengan cara meng-klik tombol Open VI dan menavigasi ke file labview\examples\apps\ demos.llb\Signal Generation and Processing.vi.

5. Membuat VI

Example Finder

Langkah-langkah yang dilakukan menjalankan program 1. Pilih Start All Programs National Instruments LabVIEW 7.0. 2. Pilih Find Examples dari Help menu. Dari help menu itu akan muncul contoh-contoh program LabVIEW yang tersedia. 3. Browse-lah contoh program yang tersedia berdasarkan katagori, atau dapat juga menggunakan fasilitas pencarian (keyword search). 4. Misalnya pada box Enter Keyword(s) ketik Signal

Front Panel

Block Diagram

Pada saat membuat object pada Front Panel, akan ada satu terminal yang terbentuk secara otomatis di Block Diagram. Terminal ini yang akan kita gunakan untuk mengakses object di Front Panel.

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 19

HAL: 20

Masing-masing terminal berisi banyak sekali informasi, misalnya tipe data. Warna wire mencerminkan tipe data seperti: Orange Biru Hijau floating point (DBL) integer (INT) boolean (TF)

Bantuan untuk terminal bisa dilihat dari Visible ItemsTerminals Bantuan lainnya bisa dilihat dari Help Show Context Help atau ketik CTRL+H

5.2 Tip-tip Pengkabelan Diagram Blok


Wiring Hot Spot Click To Select Wires

LabVIEW membolehkan menghubungkan tipe data yang berbeda. Namun umumnya dikehendaki tipe data yang sama.

5.1 Membuat VI Diagram Blok

Use Automatic Wire Routing

Clean Up Wiring

Tips Penghubungan pada block diagram

Pengkabelan pada LabVIEW sangat sederhana. Berikut ini beberapa feature yang biasa digunakan:

Teknik pembuatan Block Diagram


terdapat: Terminal, Fungsi dan

Klik single, double, atau triple pada kabel yang terpilih baik untuk dipindah atau dihapus Mengklik pada men-track kabel akan membelokkan kabel Klik kanan atau tekan tombol <Escape> pada saat pengkabelan akan membatalkan operasi. Warna pada kabel akan otomatis, sesuai dengan tipe datanya. Jangan kawatir!

Pada block diagram Wire/Connector Tips:

Fungsi dapat memiliki beberapa input dan beberapa output.

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 21

HAL: 22

Pengkabelan objek secara otomatis LabVIEW menyediakan pengkabelan secara otomtis, yaitu pada saat objek di dekatkan ke objek lainnya. Pengaturan pengkabelan otomatis ini dapat diubah dengan memilih Tools Options dan pilih Block Diagram dari menu utama.

Node akan mengeksekusi pada saat SEMUA data di terminal input tersedia. Nodes akan memberikan data ke semua terminal node berikutnya dan jika telah selesai akan diberikan ke semua terminal output. Berbeda dengan Visual Basic, C++, JAVA, dan bahasa pemrograman lainnya yang berbasis text yang mengikuti model aliran kontrol. Perhatikan blok diagram bagian atas, program ini menjumlahkan dua bilangan, hasil penjumlahan ini dikurangi dengan bilangan random untuk di tampilkan di Result 1. Pada kasus ini program berjalan dari kiri ke kanan, bukan karena penempatan objek, melainkan karena hasil penjumlahan harus tersedia dulu baru bisa dikurangi.

6. Pemrograman Dataflow

7. Bantuan pada LabVIEW


Context Help

Online help Lock help Simple/Complex Diagram help Ctrl + H

Contoh data flow


Online reference
All menus online Pop up on functions in diagram to access online info directly

Program VI oleh LabVIEW dijalankan berdasarkan model dataflow. Block diagram akan mengeksekusi bergantung pada aliran data. Perhatikan bahwa block diagram tidak mengekesusi dari kiri ke kanan!

Pada saat membuat dan meng-edit VI dapat menggunakan jendela Context Help dan LabVIEW Help. Lihat juga LabVIEW Help dan manual yang tersedia.

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 23

HAL: 24

LabVIEW Help dapat diakses dengan cara: mengklik tombol More Help di jendela Context Help, pilih HelpVI, Function, & How-To Help, mengklik Click here for more help di jendela Context Help window, mengetik <Ctrl-?>. LabVIEW Help berisi deskripsi detail dari palet, menu, tool, VI, dand function, termasuk instruksi cara penggunaannya. Juga diberikan link ke berbagai tutorial, application node, dll.

input dan output diperagakan serentak, seperti ditunjukkan pada gambar berikut.

Simpan program itu sebagai CtoF.vi. 2. Buat VI yang membandingkan dua bilangan, jika bilangan pertama lebih dari besar atau sama dengan bilangan kedua akan menyalakan LED. Simpan program itu compare.vi Buat VI yang menghasilkan bilangan acak dari 0.0 hingga 10.0. Bilangan acak ini dibagi dengan bilangan di front panel yang di-input dari keyboard. Peragakan hasilnya, jika bilangan yang di-input itu bernilai 0, LED menyala yang menunjukkan bahwa ada kesalahan kalau dibagi 0. Simpan programnya dalam file Pembagian.vi Buat VI yang menghitung nilai slope dari dua titik, seperti ditunjukkan pada front panel dan bok diagram berikut.

7.1 Jendela Context Help


Jendela Context Help ditampilkan dengan cara HelpShow Context Help atau ketik tombol <Ctrl-H>. Help ini akan aktif pada saat cursor berada di suatu objek front panel atau blok diagram. Informasi pada Context Help dapat: Simple/Detailed Context Help Lock Context Help More Help jika perlu informasi yang lebih detail lagi. 4. 3.

7.2 Latihan 1
1. Buat program VI yang digunakan untuk mengkonversi C menjadi F. Pada saat program itu jalan, akan meminta input nilai (C). Untuk menghasiilkan F nilai input dikalikan dengan 1.8 dan ditambahkan 32, kemudian F = 1.8 C + 32 . Di front panel peragakan hasilnya (F)

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 25

HAL: 26

8. Membuat SubVI
Perhatikan program berikut ini:

Pengertian subVI

Setelah program VI jadi dan berfungsi dengan baik dapat digunakan untuk program VI lainnya. Suatu program VI digunakan untuk program VI lainnya dikenal sebagai subVI. Hal ini mirip dengan subrutin pada program berbasis text. Keuntungan dari subVI adalah: Modular Mudah di debug Memori yang digunakan lebih sedikit Program yang sudah ada tidak perlu dibuat lagi

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 27

HAL: 28

Icon dan Connector


Setiap program VI memperagakan icon, misalnya gambar berikut.

Sub VIs

Icon adalah representasi grafis dari suatu VI, dapat berisi: text, gambar, keduanya Jika suatu VI digunakan sebagai subVI, icon itu mengidentifikasikan dirinya sebagai subVI di diagram blok.

SubVI

Suatu konektor memperagakan terminal yang tersedia untuk transfer data dari dan ke subVI.

Blok diagram ini memiliki dua subVI, untuk melihat program subVI dilakukan dengan meng-kliknya dua-kali.

Membuat Icon
Setelah membuat subVI, tentunya perlu disediakan waktu untuk membuat Icon. Pembuatan icon ini sangat penting yang merepresentasikan subVI yang dibuat. Untuk meng-edit icon dilakukan dengan memilih FileVI Properties dan pilihlah General dari menu Category. Gunakan tool Icon Editor untuk menggambarkan icon yang mewakili subVI. Hanya sayangnya disediakan 32 32 pixel untuk membuat icon tsb.

Ada beberapa pola konektor yang tersedia, bisa dipilih dengan meng-klik kanan dan pilih pola dari Patterns. Sehingga dapat memilih kontrol dan indikator pada front panel untuk dihubungkan di terminal konektor. Perhatikan blok diagram berikut ini,

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 29

HAL: 30

Membuat Icon

Membuat Konektor
Untuk membuat subVI perlu dibuat connector pane, yang menggambarkan sejumlah terminal baik untuk kontrol maupun indikator, yaitu mirip dengan parameter fungsi. Untuk mendifinisikan connector pane, lakukan dengan klik kanan pada icon dan pilih Show Connector. Setiap kotak menggambarkan satu terminal. Dan pilih pattern untuk menggambarkan terminal kontrol dan indikator. Contoh ini memiliki 4 terminal kontrol dan 1 terminal indikator.

Membuat subVI

Meng-assign Terminal
Setelah memilih pola (pattern) tentukan masing-masing connector pane itu pada variabel ya g bersesuaian, seperti ditunjukkan pada gambar berikut. Jangan lupa disimpan!

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 31

HAL: 32

Untuk menyimpan dalam satu library dilakukan dengan cara Save As dan klik button New VI Library. Untuk menambahkan file lain ke library tsb dilakukan dengan cara Save As, namun menyimpannya ke file .llb dan berikan nama program VI yang hendak ditambahkan tsb.

9. Tips menggunakan LabVIEW


o o o o

Meng-assign terminal
o o

Meng-insert SubVI ke VI
Setelah membuat VI dan icon-nya, kita dapat menggunakannya sebagai subVI dengan cara memilih dari FunctionsSelect a VI. Klik ganda VI itu dan tempatkan di diagram blok. Untuk menjalankan program slope.vi, kliklah hyperlink tsb.

Keystroke Shortcuts <Ctrl-H> mengaktifkan HELP (toggle) <Ctrl-B> Membersihkan Broken Wires <Ctrl-E> Toggle antara Front Panel dan Block Diagram <Ctrl-Z> Undo (Also in Edit Menu) Tools Options Set Preferences in LabVIEW VI Properties Configure VI Appearance, Documentation, etc.

10. Tipe data pada LabVIEW


Tipe data pada LabVIEW mirip dengan bahasa programming lainnya, misalnya bahasa C++. Namun LabVIEW memiliki cara unik untuk menyatakan tipe data, seperti: Tipe data numerik o floating-numbers, o integer, o unsigned integer, dan o complex number. Tipe data Boolean o Memiliki dua nilai, yaitu, true dan false. Tipe data String: koleksi karakter.

Menyimpan VI
Ada berbagai cara untuk mengatur dan menyimpan subVI, diantanya adalah: menyimpannya berdasarkan aplikasi, artinya suatu aplikasi disimpan di suatu folder/direktori tertentu. menyimpan dalam satu file library

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 33

HAL: 34

Tipe data Waveform Perbedaan tipe data numerik dari jumlah bit-nya. Tipe data dapat diubah dengan cara klik kanan dari icon numerik (kontrol, indikator atau konstanta) dan pilih representation. Data Waveform adalah nilai-nilai yang merepresentasikan bentuk gelombang, biasanya dalam format array. Integer Signed Integer 32-bit (I32): -2,147,483,648 hingga 2,147,483,647 16-bit (I16): -32768 hingga 32767 8-bit (I8): -128 hingga 127 Unsigned Integer 32-bit (U32): 0 hingga 4,294,967,295 16-bit (U16): 0 hingga 65536 8-bit (U8): 0 hingga 256 Kontrol, indikator dan konstanta Numerik ada di palet Numeric, diakses di All functions>>Numeric. Floating Point Number Bilangan Floating-point: Extended precision [EXT]: 1.19e+4932 hingga 1.19e+4932 Double precision [DBL]: 1.79e+308 hingga 1.79e+308 Single precision [SGL]: 3.40e+38 hingga 3.40e+38 Bilangan Complex floating-point:

Bilangan Complex floating-point memiliki presisi yang sama dengan bilangan floating-point, namun memiliki bagian imajiner.

Tipe Data String String adalah sekumpulan karakter ASCII, baik yang dapat diperagakan atau yang tidak Digunakan untuk: menampilkan pesan, kontrol instrumen, dan I/O file Tipe Data Boolean Tipe data Boolean ada dua nilai: TRUE dan FALSE, yang mewakili dua keadaan, yaitu ON dan OFF. Sebagai kontrol diperagakan sebagai: button (tombol), switch (saklar). Jika sebagai indikator: LED light. Ada 6 modus operasi button (tombol), yaitu: 1. Switch when pressed 2. Switch when released 3. Switch until released 4. Latch when pressed 5. Latch when released 6. Latch until released Waveform Data Type Data Waveform adalah nilai-nilai yang merepresentasikan bentuk gelombang.

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 35

HAL: 36

Data waveform berisi waktu start, interval waktu dan data itu sendiri.

10. Loop dan Chart


LabVIEW menyediakan loop dan chart sbb: For Loop While Loop Charts Multiplots

For Loops
For Loop digunakan untuk mengeksekusi sejumlah subdiagram dengan jumlah iterasi yang tertentu, yang dinyatakan dalam N, seperti ditunjukkan pada gambar berikut. Terminal iterasi i menunjukkan jumlah iterasi yang sudah dilakukan. Ingat iterasi mulai dari nol! Memiliki terminal iterasi Berjalan sesuai dengan jumlah terminal count N

10.1 Loops
While loop dan For loop berada di palet FunctionsStructures Pada For loop melakukan eksekusi sebanyak jumlah tertentu. Sedang untuk while loop melakukan eksekusi selama kondisi di dalam loop benar.

While Loops
While loop mengeksekusi semua instruksi di dalam loop sampai kondisinya SALAH. Terminal iterasi (terlihat di kiri bawah) berisi iterasi yang sudah diselesaikan loop ini. Ingat perhitungan dimulai dari NOL. Pada while loop: Memiliki terminal iterasi Paling sedikit satu kali dijalankan Berjalan sesuai terminal kondisi (ada di kanan bawah)

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 37

HAL: 38

1. Select the loop

2. Enclose code to be repeated

Charts

3. Drop or drag additional nodes and then wire

Waveform chart special numeric indicator that can display a history of values Controls >> Graph Indicators >> Waveform Chart

1. 2.

Pilih loop dari palet structures dan tempatkan di blok diagram Pada saat terpilih, cursor mouse menjadi pointer khusus. Atur mouse agar bagian dari program yang hendak dilakukan proses pengulangan (looping) Drag atau Drop dari while loop tsb.

Chart waveform adalah indikator numerik spesial yang digunakan untuk memperagakan satu atau lebih plot. Chart waveform dipilih dari palet ControlsGraph Indicators. Ukuran chart bisa diatur tegantung keperluan, yaitu dengan meng-klik ganda chart tsb dan drag chart tsb. Demikian juga pembuatan label untuk sumbu-x dan label untuk sumbu-y, termasuk tipe style, warna plot, bentuk titik, dll.

3.

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 39

HAL: 40

Peng-kabel-an Data ke Chart


Single Plot Charts Multiplot Charts

Tugas Buat program LabVIEW yang digunakan untuk menghitung jumlah dari 1 hingga N dengan N adalah bilangan integer Data skalar dapat langsung dihubungkan ke chart waverform untuk memperagakan satu plot. Jika hendak memperagakan beberapa plot dilakukan dengan menggunakan fungsi Merge Signal, diambil dari palet Functions >> Signal Manipulation. Fungsi dari Merge Signal adalah menggabungkan beberapa plot untuk diperagakan dalam satu chart. Gunakan Positioning tool untuk mengatur jumlah input plot yang hendak digabung. sebagai input,

i
i =1

Buatlah program dengan dua cara: 1. Gunakan struktur loop FOR. 2. Gunakan struktur loop WHILE.

10.2 Latihan Penggunaan loop


1. Buat VI yang menghasilkan bilangan acak dengan delay tertentu dan memperagakannya hasil bilangan acak itu pada Waveform Chart hingga dihentikan oleh pengguna. Pengaturan delay menggunakan slider dengan rentang dari 0 hingga 2000 ms.

Monitoring Suhu
Buatlah program untuk memonitor / mengukur suhu dan menampilkannya ke dalam chart waveform, dengan bentuk front panel sbb:

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 41

HAL: 42

Untuk mengubah tipe plot dilakukan dengan klik sumbu-y Formating, diperoleh Chart Properties seperti pada gambar berikut.

Front Panel Program Monitor Temperatur


Aksi mekanik dari saklar Boolean diubah dengan cara mengklik kanan saklar, pilih Mechanical ActionLatchWhen Pressed. Contoh program ditunjukkan pada Monitoring Temperature.vi

Saklar Power dibuat dengan mengambilnya dari palet ControlsBoolean. Sedangkan kurva waveform diperoleh dari palet ControlsGraph. Selanjutnya membuat blok diagram sbb:

10.3 Shift Register


Shift register digunakan untuk mengakses nilai dari iterasi sebelumnya. Misalnya dalam setiap kali iterasi suatu nilai bertambah 5, dan hendak diperagakan empat nilai sebelumnya, yaitu x(i-1), x(i-2), x(i-3) dan x(i-4). Deklarasikan bahwa semua nilai itu awalnya 0.

Blok Diagram Monitor Suhu

Front panel dan blok diagram ditunjukkan gambar berikut

SubVI Temp didapat dari program (Demo)Thermometer.vi sedangkan untuk memperlambat akusisinya dilakukan dengan memberikan delay dari palet FunctionsTime & Dialog, dan pilih fungsi Wait Until Next ms Multiple dan set delaynya, misalnya 500 ms.

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 43

HAL: 44

Untuk mengetest jalannya program ini, gunakan highlight execution dan perhatikan efeknya.

10.4 Running Average


Dengan memanfaatkan shift register dapat dibuat perhitungan rata-rata (running average), selanjutnya memperagakan hasil perhitungan rata-rata dari nilai beberapa hasil sebelumnya dengan hasil pengamatan yang sedang berjalan. Perhatikan front panel dari program Temperature Running Average.vi berikut ini

Pada front panel ini, nilai pengamatan yang sedang berjalan di plot dengan titik kotak, sedangkan hasil rata-ratanya berupa garis penuh. Untuk menghitung nilai rata-rata dihitung dengan shift register seperti ditunjukkan pada block diagram berikut ini.

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 45

HAL: 46

Latihan
1. Buat plot yang terdiri atas dua buah plot, yaitu plot random dan running average dari empat data terakhir, peragakan kedua plot itu pada chart secara serentak. Gunakan Shift register untuk menghitung nilai rata-ratanya (ada tiga terminal di kiri). (Random Average.vi) 2. Buat program yang menggunakan While-loop dan Forloop secara serentak. Peragakan nilai acak di dalam loop tsb. Jika ada skalar stop ditekan, loop berhenti, namun jika tidak loop tetap jalan terus hingga For-loop selesai. (Combo While For Loop.vi) 3. Buat VI yang mengukur suhu setiap detik dan memperagakannya di chart waveform. Jika suhu melebihi batas atas atau batas bawah, LED di front panel menyala. Batas suhu dapat diatur. (Temperature Limit.vi) 4. Sama seperti soal di atas, namun peragakan nilai max dan min. (Temp Limit (max-min).vi)

1. tidak dapat membuat array di dalam array 2. tidak dapat membentuk array dari chart 3. tidak dapat membentuk array dari grafik XY multiplot Namun dimungkinkan membuat array multidimensi dan array dari cluster, yang masing-masing cluster dapat berisi satu atau lebih array.

Membuat Array di Front Panel


Untuk membuat array kontrol atau indikator, pilih array pada palet ControlsAll ControlsArray & Cluster. Tempatkan di front panel dan drag kontrol atau indikator ke dalam shell array, seperti ditunjukkan gambar berikut.

Drop it on the screen.

11. Array
Array adalah suatu grup elemen data yang bertipe sama, terdiri atas elemen dan dimensi. Elemen adalah data yang membentuk array, sedangkan dimensi adalah ukuran dari array. Suatu array dapat berukuran lebih dari satu dan dibatasi hingga (231 -1) elemen dalam tiap dimensinya. Tipe data array dapat berupa numerik, boolean, path, string, waveform dan cluster. Ada batasan untuk membentuk array, yaitu:

Tempatkan objek data ke dalam shell, misalnya kontrol numerik seperti berikut ini.

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 47

HAL: 48

Untuk menghubungkan suatu data ke chart atau grafik dapat menggunakan fungsi Build Array atau Bundle. Umumnya: 2. waveform chart digunakan untuk single scalar points, 3. waveform graph untuk array dari nilai-nilai sb-y 4. XY graph untuk array dari nilai x dan y. Perhatikan program berikut ini: Untuk menambahkan dimensi dilakukan dengan klik kanan dan pilih Add Dimension dari menu shortcut atau dapat juga mengubah ukuran array dengan menggunakan Positioning tool. Sebagai contoh buatlah program seperti berikut ini (Lat Array.vi)

Hasil pengamatan suhu diperagakan dengan menggunakan Data array, Waveform Chart dan Waveform graph. Untuk mengeluarkan hasil dari suatu loop (misalnya For-loop) menggunakan loop tunnel data outputnya dapat berupa data yang terindeks (dengan enable indexing), atau hanya data yang terakhir saja (dengan disable indexing). Data Array menyimpan hasil dari pengukuran suhu sebanyak 100 buah data. Waveform Chart memperagakan hasil itu secara grafis. Waveform Graph memperagakan dengan format data yang spesifik, yaitu nilai_t0, delta_t dan data pengamatannya.

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 49

HAL: 50

Dalam grafik ini memperagakan 100 data, mulai dari 20, dengan delta 0.5 artinya dari 20s hingga 70s. Untuk itu perlu membuat format data itu di-bundle, dengan menggunakan fungsi bundle seperti yang ditunjukkan di program tsb. Untuk melihat grafik lebih detail, klik kanan di waveform graph dan pilih palet Visible ItemsGraph dan klik tombol Zoom untuk melihat grafik lebih detail lagi. Sebaliknya bisa juga mengatur skala sumbu-x dengan skala waktu absolut atau skala relatif, yaitu dengan mengatur formating. Caranya dengan klik kanan waveform chart dan pilih Formating.

Gambar 1, Membuat array dua dimensi

Membuat Plot Multiple


Sedangkan untuk membuat dua plot dalam satu grafik, dapat dilakukan dengan dua pasangan data dalam satu array. Hal ini dilakukan dengan fungsi Build Array, seperti ditunjukkan dalam program berikut ini.

Membuat Array Dua Dimensi


Dengan membuat loop di dalam loop, maka akan terbentuk array dua dimensi, seperti yang dilakukan program ini.

Plot pertama berasal dari hasil pengamatan suhu sebanyak 100 data, sedangkan plot kedua berasal dari perhitungan i Rata-rata + 5 sin . 50

Analisa Data
Dari data pengamatan, untuk disampaikan ke publik perlu dianalisa. Katakan saja hendak menentukan nilai minimum, maksimum, dan rata-rata dari satu pengamatan (misalnya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 51

HAL: 52

sebanyak 40 data untuk setiap 0.05 s). Selanjutnya dibuat curve fitting dari data-data tsb, misalnya di-fit dengan orde-5. Front panel program itu adalah sbb:

Chart Temperature memperagakan hasil pengamatan secara real-time. Setelah seluruh data selesai, hasil pengukuran itu dihitung nilai Max dan Min dengan menggunakan fungsi Array Max & Min, yang dapat dicari di Function ProgrammingArrayArray Max & Min.vi. Sedangkan Nilai rata-rata diperoleh dari FunctionMathematicsProb & StatMean.vi. Dari front panel terlihat ada indikator nilai Rata-rata (Mean), nilai Max dan Min. Juga terdapat dua grafik, bagian atas berupa waveform chart (Temperature) dan bagian bawah berupa waveform graph (Temp Graph). Temperatur memperagakan hasil pengamatan setiap saat, sedangkan Temp Graph memperagakan hasil analisa dari seluruh data yang diperoleh dengan hasil fitting-nya. Adapun blok diagramnya ditunjukkan pada gambar berikut (Temperature Analysis.vi) Perhatikan pada program ini menggunakan delta x sebesar 0.05, ini diambil dari delay 50 ms dalam For-Next loop. Untuk menampilkan skala yang benar pada chart, maka skalanya perlu diubah, yaitu Chart Properties, dengan membuat: Scaling Factor, Offset : 0 dan Multifier: 0.05 untuk sumbu-x (time). Karena pada grafik kedua menggunakan Waveform Graph, maka perlu nilai x0 dan delta x, ambil x0 = 0, dan delta x = 0.05 sesuai dengan delay yang digunakan. Plot pertama berasal dari output array dari hasil pengukuran, sedangkan plot kedua berasal dari hasil curve fitting orde 5.

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 53

HAL: 54

Fungsi diambil dari FunctionMathematicsFittingGeneral Polynomial Fit.vi, dan gunakan orde 5.

Mencari Anggota Array yang nilainya lebih besar dari Nilai Threshold tertentu
Buatlah VI yang memiliki dua buah input, yaitu Threshold dan Input Array. Buat Output Array yang merupankan subset dari Input Array, namun lebih besar dari nilai Threshold. a. b. Buatlah sub-VI untuk menghasilkan Output Array yang merupakan subset dari Input Array. Buatlah Input Array-nya berasal dari bilangan random.

Grafik XY
Contoh Membuat Lingkaran dengan Waveform Graph XY, dilakukan dengan front panel dan blok diagram sbb:

Membuat SubVI DiatasThreshold.vi

Program ditunjukkan seperti berikut ini.

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 55

HAL: 56

2. Buat VI yang menghasilkan array 2D yang terdiri atas 3 baris dan 10 kolom dari bilangan random. Buatlah plot dari masing-masing baris untuk bilangan random itu, seperti yang ditunjukkan oleh front panel berikut. Programnya

3. Buat VI yang men-simulasi lemparan nilai dadu (1 6) dan catat bilangan yang keluar pada setiap kali dadu dilempar dan hitung masing-masing nilainya, seperti ditunjukkan front panel berikut. Hanya boleh menggunakan satu shift register.

Latihan:
1. Buatlah program untuk membalikan urutan dari suatu array terdiri atas 100 bilangan random, artinya array[0] menjadi array[99], array[1] menjadi array[98], dst. Gunakan fungsi yang tersedia pada palet FunctionArray.

12. Cluster
Cluster adalah struktur data yang meng-grup-kan sekumpulan data menjadi satu kesatuan. Berbeda dengan array, data yang digrupkan dapat berlainan jenis. Cluster mirip dengan struct pada bahasa C, atau record di Pascal.

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 57

HAL: 58

Elemen dari cluster harus semuanya kontrol atau semuanya indikator. Cluster dapat dibayangkan sebagai sekumpulan kawat individu yang dikemas menjadi satu kabel.

Contoh: a. Informasi error: grup dari flag error, kode error dan sumber dimana error itu terjadi, b. Informasi peminjam: grup dari nama pengguna, nomor ID, alamat, dll. c. Informasi mahasiswa, d. dll Setelah daerah untuk cluster berada di front panel, selanjutnya dibuat komponen-komponen penyusun cluster itu. Misalnya suatu cluster dengan nama Struktur Nama, yang terdiri atas Nama, Umur, Sex dan Alamat. Untuk meng-akses ke masing-masing objek (field) dalam cluster digunakan fungsi unbundle. Ada dua macam unbundle, yaitu: a. unbundle b. unbundle by name Seperti yang dilakukan sbb:

Membuat Cluster
Untuk membuat cluster, pilih Control|Array,Matrix...& Cluster|Cluster dan drag ke front panel, seperti yang dilakukan pada gambar berikut.

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 59

HAL: 60

Latihan Membuat Cluster


Buatlah cluster pada front panel dan gunakan fungsi cluster untuk menyusun dan memisahkan cluster, seperti ditunjukkan contoh berikut ini (Cluster Exersice.vi)

Contoh berikut ini adalah membuat VI yang menggunakan polymorphism dengan cluster. Program ini mengkonversikan nilai yang diperoleh dari suatu transducer (misalnya dalam besaran volt) untuk diubah menjadi besaran fisik sesungguhnya, misalnya suhu (dalam C), aliran air (dalam l/s) dan tekanan (dalam N/m2). Tegangan yang terukur oleh transducer itu dalam

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 61

HAL: 62

besaran volt ditampilkan dalam besaran Fisika yang bersesuaian, seperti ditunjukkan pada program berikut. Front panelnya:

2.

Buat subVI yang memiliki dua input dan satu output, yang inputnya adalah Threshold dan Array Input, sedang outputnya adalah Output Array. Output array ini digunakan untuk menyimpan nilai-nilai input yang lebih besaran dari nilai Threshold dan simpan dalam file Array over threshold.vi. Testlah program ini dengan menggunakan bilangan random dan nilai thresholdnya 0,5.

Error Cluster
Sedangkan blok diagramnya: Dalam menjalankan program I/O mungkin saja ada kesalahan. Hampir semua fungsi I/O akan memberikan informasi kesalahan dalam bentuk Error cluster. Error cluster ini digunakan untuk menangani error yang mungkin muncul dalam program VI, sehingga akan diketahui sumber kesalahan program itu. Terutama untuk operasi I/O seperti operasi file, operasi serial, akusisi data dan operasi komunikasi lainnya. Error cluster berada di ControlsArray, Matrix & Cluster , seperti berikut ini.

Latihan
1. Buat program VI yang menggunakan Formula Node untuk menghitung persamaan:

y1 = x 3 + x 2 + 5 y2 = m x + b
Ingat masing-masing formula dipisahkan dengan tanda (;), tulis programnya dalam nama file Solusi Persamaan.vi.

Struktur data error cluster terdiri atas: status, code, dan source. Status: nilai boolean yang melaporkan ada/tidaknya kesalahan, jika ada kesalahan akan bernilai TRUE.

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 63

HAL: 64

Code: kode numerik dari kesalahan, bernilai bukan 0 jika ada kesalahan. Source: string yang mengidentifikasi dimana kesalahan itu terjadi.

Penanganan Error dengan Cluster


LabVIEW tidak menangani kesalahan secara otomatis. Untuk menangani kesalahan LabVIEW menggunakan model dataflow, untuk itu perlu menghubungkan semua fungsi VI, mulai dari awal hingga akhir, seperti berikut ini.

13. Case, Sequence Structures & Formula Nodes


Dengan struktur case dimungkinkan untuk memilih suatu aksi bergantung pada nilai inputnya. Mirip dengan struktur If-ThenElse. Struktur ini terdapat di: Function|Structure|Case Structure, sbb:

Contoh struktur case:

Contoh 1: Input Boolean mirip dengan struktur If-Then. Pada saat nilainya TRUE akan mengeksekusi semua instruksi di dalam struktur True. Contoh 2: Input Numerik akan mengeksekusi program yang berada di dalam struktur yang sesuai dengan nilai inputnya. Contoh 3: Input String mirip dengan kasus input numerik, hanya inputnya string dan harus persis sama, jika tidak akan mengeksekusi struktur yang bernilai default.

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 65

HAL: 66

Contoh Error Clusters dan Error Handling 1. Buatlah program VI yang menghitung akar dari suatu bilangan. Jika bilangan itu 0, akan menghitung nilai akarnya, sedangkan jika bilangan itu < 0 akan memperagakan error cluster, dengan kode salah 1001, dan sumber kesalahaannya adalah Akar.vi

Sequence Structures
Struktur sekuen digunakan untuk mengeksekusi diagram secara sekuensial, misalnya untuk menghitung selang waktu. Struktur sekuen ini mirip dengan frame pada film Contoh:

2.

Ubahlah program Temperature Running Average.vi, yaitu dengan menambahkan indikator suara jika suhu melebihi batas yang diijinkan. Front panel hanya menambahkan indikator LED, hanya perlu tambahan pada block diagramnya. Simpan hasil modifikasi itu dalam file Temperature running average Modified.vi.

Pada strip pertama, ambil nilai waktu dengan Get Date/Time in seconds.vi, sedangkan pada strip kedua mengerjakan perintah dalam hal ini memperagakan bilangan random sebanyak 100000 data. Sedang pada strip terakhir mengambil nilai waktu dengan Get Date/Time in seconds.vi dan mengurangi dengan hasil yang

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 67

HAL: 68

diperoleh dari nilai sebelumnya. Hasilnya diperagakan di Selang Waktu.vi Formula Nodes Seringkali menulis program secara text-based lebih diinginkan dibandingkan dengan icon-based. LabVIEW menyediakan textbased programing dengan memanfaatkan Formula Node. Formula Node dipilih dari palet Structure|Formula Node. Untuk menambahkan variabel dilakukan dengan klik kanan dan pilih Add Input atau Add Output. Ada beberapa hal yang perlu diperhatikan pada saat menggunakan Formula Node, yaitu: Variabel bersifat case sensitive, Antar statement diakhiri dengan titik-koma,
Latihan Formula Node

Dan programnya:

3.

Buatlah kurva formula node. Caranya:

y = ( x sin( x) )

dengan menggunakan

Buat waveform graph di front panel Buat formula node di block diagram Tulis fungsi yang hendak dibuat di formula node, selanjutnya buat Add Input dan Add Output di formula node tsb. Dan tuliskan semua variabel input dan outputnya. Front panelnya sbb: Program ini ditunjukkan pada Grafik Dgn Formula Node.vi

14. String
String adalah sekumpulan ASCII karakter, biasanya digunakan untuk mengirim pesan ke atau dari instrumen. Untuk mengakses string dilakukan dari palet ControlString&Path.

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 69

HAL: 70

Ada beberapa tipe tampilan string yang dapat dipilih, yaitu dengan cara meng-klik kanan di string kontrol atau indikator di front-panel, yaitu tampilan: Normal, kode \, password dan heksa. Kode \b \s \r \n \t Intepretasi backspace (\08) space (\20) return (\0D) newline (\0A) tab (\09)

Contoh pemakaian string ditunjukkan pada Latihan string.vi berikut ini.

Demikian juga untuk string juga memiliki fungsi string, diantaranya adalah:

15. File I/O


Operasi file I/O ditujukan untuk melewatkan data ke atau dari file. Ada beberapa fungsi yang digunakan dalam operasi file, diantaranya adalah: Membuka dan menutup file data Membaca dan menulis data Memindahkan dan mengganti nama file

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 71

HAL: 72

Membaca dan menulis file dalam format spreadsheet Mengubah Karakteristik file Membuat, mengubah dan membaca konfigurasi file Menulis dan membaca file LabVIEW Measurement Feature-feature File I/O lainnya ditunjukkan pada gambar berikut.

Terlihat banyak sekali fasilitas yang disediakan untuk operasi file, yaitu: Operasi file tingkat tinggi,

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 73

HAL: 74

Operasi file tingkat menengah, Operasi file tingkat rendah (Adv file function) Perlu diingat bahwa file yang dilewatkan dapat berupa data biner, text maupun spreadsheet. Contoh menulis ke file. Misalnya hendak memodifikasi program Latihan string.vi, Variabel string Tampilan Gabungan tidak ditampilkan ke layar melainkan hendak disimpan ke file. Untuk mengubahnya dilakukan sbb:

Menulis dan Membaca file LabVIEW Measurement (*.lvm)


Fungsi yang tersedia di LabVIEW untuk menulis file *.lvm sebenarnya melibatkan operasi: Membuka, Menulis, Menutup, Penanganan kesalahan. Perhatikan program berikut ini:

Untuk membacanya adalah:

Hasil pembacaan suhu ditulis dengan menggunakan fungsi Write LabVIEW Measurement File. Jika ada kesalahan diberikan fasilitas error handling Untuk membacanya dilakukan dengan program berikut ini:

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 75

HAL: 76

Kalau data suhu hendak disimpan dalam format data string, bisa dilakukan dengan menggunakan program berikut ini. Perhatikan bahwa dalam membaca file akan berhenti jika ada kesalahan pada file tsb (status) atau data sudah habis (EOF). Untuk menulis file dengan format spreadsheet dilakukan dengan menggunakan fungsi Write To Spreadsheet File.vi yaitu:

Untuk menuliskan format data dilakukan dengan %.2f yang berarti menggunakan dua angka dibelakang koma. Sedangkan untuk membacanya dilakukan dengan program berikut ini. Standard penulisannya berbasis baris, untuk mengubah menjadi format kolom, maka perlu men-set transpose? = TRUE. Filenya disimpan di lokasi yang ditunjuk oleh file path(dialog if empty). Pengaturan file disesuaikan dengan OS yang digunakan. Demikian pula untuk membaca file spreadsheet dilakukan dengan fungsi Read From Spreadsheet File.vi, yaitu:

Contoh:

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 77

HAL: 78

Katakan saja hendak mem-plot multi-fungsi (misalnya sinus, cosinus dan white noise). Ketiga fungsi ini hendak ditampilkan grafik dan disimpan dalam satu file. Untuk menyimpannya ke dalam format spreadsheet bisa menggunakan fungsi Write To Spreadsheet File.vi, namun sebelumnya data-data multi-fungsi tadi perlu di-transpose terlebih dahulu. Programnya ditunjukkan sbb: (Contoh Spreadsheet.vi)

16. Buat Aplikasi Akusisi Sederhana


Untuk menghasilkan pola sinus dan white noise, dilakukan dengan memilih dari palet: Signal ProcessingSignal Generation, sedangkan untuk pola cosinus dengan menggunakan pola sinus, dan diberi beda fasa 90o. Sebelumnya pernah dibuat program Temperature running average.vi, dari program ini hendak ditambahkan hasil pengamatannya untuk disimpan ke file, menjadi suatu sistem data logger sederhana. Blok diagram dari temperature logger.vi ditunjukkan sbb: Dengan perangkat yang telah dibahas ini, kita dapat membuat program aplikasi sederhana, misalnya Akusisi Suhu.vi. Program ini memanfaatkan feature-feature yang sudah dibahas sebelumnya, yaitu: structures, shift register, waveform charts, array, graph, file I/O, dll. Sasaran dari aplikasi ini adalah membuat VI yang memiliki ketentuan sbb: a. b. c. d. Mengambil data suhu setiap detik hingga terjadi kesalahan. Menampilkan suhu yang terukur berikut 3 data rata-rata dari hasil pengukuran sebelumnya. Nyalakan LED di front panel pada saat suhu melebihi batas Buat log (termasuk detik) setiap data pengukuran, termasuk nilai rata-rata dari 3 data sebelumnya, termasuk menuliskan

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 79

HAL: 80

string Normal atau Over dari setiap data pengukuran berdasarkan batas yang ditentukan. e. Setelah Akusisi data selesai, buat plot kurva suhu dan kurva fitting-nya, tampilkan nilai maksimum, minimum dan rata-rata.

Format data yang hendak ditulis adalah: Tanggal String Jam String Suhu %.2f Rata-rata %.2f Keterangan String

Program Akusisi Suhu.vi ditunjukkan sbb: Jika file itu dibaca dengan excel diperoleh sbb:

Front panelnya masih tetap, yaitu:

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

HAL: 81

HAL: 82

Latihan
1. Buat VI untuk menghasilkan bilangan random 3 kolom 100 baris, untuk ditulis dalam format spreadsheet seperti ditunjukkan pada gambar berikut.

Untuk menulis spreadsheet tuliskan header terlebih dahulu dan gunakan transpose.

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

Sastra Kusuma Wijaya

FISIKA FMIPA UI

Instrumentasi Maya

You might also like