Anda di halaman 1dari 41

HAL: 2

¾ Membuat subVI di LabVIEW


¾ Mempelajari struktur data yang dipakai di LabVIEW

Pengenalan Instrumentasi
seperti Array, Cluster, dan Structures
¾ Membuat Program dengan LabVIEW
Maya ¾ 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
Literatur (RS232, USB), paralel (Centronics, GPIB)
2. Hardware akusisi Image (vision)
1. National Instruments, LabVIEW Introduction – 6 hours 3. Hardware kontrol Instrumentasi
2. L.K. Well and J. Travis, LabVIEW for Everyone: Software development tool:
Graphical Programming Made Even Easier, 2nd Edition, 1. Sembarang bahasa pemrogramman (c/c++/C#,
Prentice Hall, NJ, 1997 CVI/LabWindow, Visual BASIC, Java, Phyton,…)
2. LabVIEW
Sasaran Sehingga instrumentasi maya dapat didefinisikan sebagai:
Sasaran kuliah ini adalah untuk: – Satu layer software dan/atau hardware yang
¾ Memahami komponen-komponen instrumentasi maya ditambahkan pada sebuah komputer sedemikian rupa
¾ 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 Contoh hardware image akusisi untuk format PCI bus yang juga
National Instruments ditunjukkan pada gambar berikut. 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.
Contoh program gerak peluru ditunjukkan gambar berikut. 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 Æ untuk berinteraksi dengan pengguna.
¾ Block Diagram Æ sebagai kode program. Front Panel Icon
Toolbar
¾ Icon/Connector Æ digunakan untuk menghubungkan
VI dengan VI yang lainnya. Boolean
Control Graph
2.1 Front Panel Legend

Front Panel digunakan untuk berinteraksi dengan pengguna


pada saat program itu berjalan. Pengguna dapat mengontrol
program, mengubah input, dan memantau data secara real-time. Waveform
Graph
Kontrol digunakan untuk pengaturan input, seperti
Plot Scale
¾ setting nilai alarm, Legend Legend
¾ menekan switch on/off, atau
¾ men-stop program. • Komponen-komponen front panel
Kontrol (input) dapat berupa knobs, pushbuttons, dials, dan
devais lainnya. Kontrol digunakan untuk men-simulasi devais Front panel adalah user interface dari program VI, yang terdiri
instrumen input dan men-supply data ke blok diagram. atas control dan indicator, yang masing-masing sebagai terminal
input dan output.
Indikator (output) digunakan sebagai output, seperti
thermometer, intensitas cahaya, data, suara, dan info lainnya. Pada gambar ini yang menunjukkan control adalah:
Indikator dapat berupa grafik, LED, dan display lainnya. ¾ Power switch sebagai kontrol boolean, nilai default-nya
Indikator men-simulasi devais instrumen output dan adalah false dan akan berubah menjadi true bila switch
memperagrakan data yang akusisi atau dihasilkan. ditekan,
Setiap control dan indicator di front panel memiliki terminal Sedangkan yang menjukkan indicator adalah:
yang saling berhubungan di block diagram. Pada saat program
VI berjalan, nilai dari control mengalir di block diagram, dan ¾ Temperature history sebagai indikator dalam bentuk
hasilnya menuju ke indikator. 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 HAL: 12

Block 3. VI Express, VI Standard dan Fungsi


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

While Loop Numeric Timing Boolean Control


Structure Constant Function 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, 3.1 Palet Kontrol dan Fungsi
¾ fungsi dan struktur built-in dari pustaka VI ,
¾ wire yang menghubungkan semua node Palet Kontrol (pada Front Panel)

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.

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 Window»Show 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 Window»Show 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
• Tombol Abort Execution digunakan untuk menghentikan
Operating Tool Scrolling Tool
program VI dengan segera.
Positioning/Resizing Tool Breakpoint Tool Catatan:
Labeling Tool Probe Tool Hindari menggunakan tombol Abort Execution untuk menstop
program yang sedang berjalan. Biarkan program VI berhenti
Wiring Tool Color Copy Tool
secara normal, atau dihentikan oleh program.
Shortcut Menu Tool Coloring Tool • Tombol Pause digunakan untuk menghentikan program VI
yang sedang berjalan. Pada saat tombol Pause, akan
Status Toolbar highlighted di tempat eksekusi blok diagram yang sedang
di hentikan. (Sifatnya Toggle).
• Text Settings digunakan untuk untuk men-set font
Run Button
(ukuran, style, dan warna).
Continuous Run Button Additional Buttons on
the Diagram Toolbar • Align Objects digunakan untuk mengatur objek sepanjang
Abort Execution
sumbu (vertikal, rata kanan, rata atas, dll).
Pause/Continue Button Execution Highlighting
Button • Distribute Objects digunakan untuk mengatur objek
Text Settings dengan space yang sama.
Step Into Button
Align Objects
Step Over Button • Resize Objects digunakan untuk mengatur lebar, tinggi
Distribute Objects dari objek di front panel.
Step Out Button
Reorder

Resize front panel


objects

• 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 5. Topik yang berkaitan dengan signal akan muncul,
pilihlah contoh yang diinginkan (dengan mengklik
Instrument (VI) 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. Front Panel Block Diagram
3. Browse-lah contoh program yang tersedia berdasarkan
katagori, atau dapat juga menggunakan fasilitas Pada saat membuat object pada Front Panel, akan ada satu
pencarian (keyword search). terminal yang terbentuk secara otomatis di Block Diagram.
4. Misalnya pada box “Enter Keyword(s)” ketik Terminal ini yang akan kita gunakan untuk mengakses object di
“Signal” 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, ¾ Bantuan untuk terminal bisa dilihat dari Visible
misalnya tipe data. Warna wire mencerminkan tipe data seperti: Items»Terminals
Orange floating point (DBL) ¾ Bantuan lainnya bisa dilihat dari Help »Show Context
Biru integer (INT) Help atau ketik CTRL+H

Hijau boolean (TF) 5.2 Tip-tip Pengkabelan – Diagram Blok


LabVIEW membolehkan menghubungkan tipe data yang Wiring “Hot Spot” Click To Select Wires
berbeda. Namun umumnya dikehendaki tipe data yang sama.
5.1 Membuat VI – Diagram Blok

Use Automatic Clean Up Wiring


Wire Routing

• Tips Penghubungan pada block diagram


Pengkabelan pada LabVIEW sangat sederhana. Berikut ini
beberapa feature yang biasa digunakan:
• Klik single, double, atau triple pada kabel yang terpilih
• Teknik pembuatan Block Diagram baik untuk dipindah atau dihapus
Pada block diagram terdapat: Terminal, Fungsi dan • Mengklik pada men-track kabel akan membelokkan kabel
Wire/Connector • Klik kanan atau tekan tombol <Escape> pada saat
Fungsi dapat memiliki beberapa input dan beberapa output. pengkabelan akan membatalkan operasi.
Tips: Warna pada kabel akan otomatis, sesuai dengan tipe datanya.
Jangan kawatir!

Sastra Kusuma Wijaya FISIKA FMIPA UI Instrumentasi Maya Sastra Kusuma Wijaya FISIKA FMIPA UI Instrumentasi Maya
HAL: 21 HAL: 22
Pengkabelan objek secara otomatis ¾ Node akan mengeksekusi pada saat SEMUA data di
LabVIEW menyediakan pengkabelan secara otomtis, yaitu pada terminal input tersedia.
saat objek di dekatkan ke objek lainnya. Pengaturan ¾ Nodes akan memberikan data ke semua terminal node
berikutnya dan jika telah selesai akan diberikan ke semua
pengkabelan otomatis ini dapat diubah dengan memilih Tools »
Options dan pilih Block Diagram dari menu utama. terminal output.
Berbeda dengan Visual Basic, C++, JAVA, dan bahasa
6. Pemrograman Dataflow 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.
7. Bantuan pada LabVIEW
Context Help
• Online help
• Lock help
• Simple/Complex Diagram help
• Ctrl + H
• Contoh data flow
Program VI oleh LabVIEW dijalankan berdasarkan model
Online reference
• All menus online
dataflow. • Pop up on functions in diagram to access online info directly
¾ Block diagram akan mengeksekusi bergantung pada aliran
data. Perhatikan bahwa block diagram tidak mengekesusi Pada saat membuat dan meng-edit VI dapat menggunakan
dari kiri ke kanan! 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: input dan output diperagakan serentak, seperti ditunjukkan
¾ mengklik tombol More Help di jendela Context Help, pada gambar berikut.
pilih Help»VI, 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, Simpan program itu sebagai CtoF.vi.
VI, dand function, termasuk instruksi cara penggunaannya. Juga
diberikan link ke berbagai tutorial, application node, dll. 2. Buat VI yang membandingkan dua bilangan, jika bilangan
pertama lebih dari besar atau sama dengan bilangan kedua
7.1 Jendela Context Help akan menyalakan LED. Simpan program itu compare.vi
3. Buat VI yang menghasilkan bilangan acak dari 0.0 hingga
Jendela Context Help ditampilkan dengan cara Help»Show
10.0. Bilangan acak ini dibagi dengan bilangan di front
Context Help atau ketik tombol <Ctrl-H>. Help ini akan aktif
panel yang di-input dari keyboard. Peragakan hasilnya, jika
pada saat cursor berada di suatu objek front panel atau blok
bilangan yang di-input itu bernilai 0, LED menyala yang
diagram.
menunjukkan bahwa ada kesalahan kalau dibagi 0. Simpan
Informasi pada Context Help dapat: programnya dalam file Pembagian.vi
¾ Simple/Detailed Context Help 4. Buat VI yang menghitung nilai slope dari dua titik, seperti
¾ Lock Context Help ditunjukkan pada front panel dan bok diagram berikut.
¾ More Help Æ jika perlu informasi yang lebih detail
lagi.

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
peragakan hasilnya (°F) Æ F = 1.8 × C + 32 . Di front panel

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 Sub VIs


Setiap program VI memperagakan icon, misalnya gambar
berikut.

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 Blok diagram ini memiliki dua subVI, untuk melihat program
transfer data dari dan ke subVI. 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
Ada beberapa pola konektor yang tersedia, bisa dipilih dengan dilakukan dengan memilih File»VI Properties dan pilihlah
meng-klik kanan dan pilih pola dari Patterns. Sehingga dapat General dari menu Category.
memilih kontrol dan indikator pada front panel untuk
dihubungkan di terminal konektor. Gunakan tool Icon Editor untuk menggambarkan icon yang
mewakili subVI. Hanya sayangnya disediakan 32 × 32 pixel
untuk membuat icon tsb.
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 subVI
Membuat Konektor
Untuk membuat subVI perlu dibuat connector pane, yang
Meng-assign Terminal
menggambarkan sejumlah terminal baik untuk kontrol maupun Setelah memilih pola (pattern) tentukan masing-masing
indikator, yaitu mirip dengan parameter fungsi. connector pane itu pada variabel ya g bersesuaian, seperti
Untuk mendifinisikan connector pane, lakukan dengan klik ditunjukkan pada gambar berikut. Jangan lupa disimpan!
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.

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
¾ Keystroke Shortcuts
o <Ctrl-H> – mengaktifkan HELP (toggle)
o <Ctrl-B> – Membersihkan Broken Wires
o <Ctrl-E> – Toggle antara Front Panel dan Block
Diagram
o <Ctrl-Z> – Undo (Also in Edit Menu)
¾ Tools » Options – Set Preferences in LabVIEW
• Meng-assign terminal
¾ VI Properties
o Configure VI Appearance,
Meng-insert SubVI ke VI
o Documentation, etc.
Setelah membuat VI dan icon-nya, kita dapat menggunakannya
sebagai subVI dengan cara memilih dari Functions»Select a 10. Tipe data pada LabVIEW
VI. Klik ganda VI itu dan tempatkan di diagram blok. Tipe data pada LabVIEW mirip dengan bahasa programming
Untuk menjalankan program slope.vi, kliklah hyperlink tsb. lainnya, misalnya bahasa C++. Namun LabVIEW memiliki cara
unik untuk menyatakan tipe data, seperti:
Menyimpan VI ¾ Tipe data numerik
Ada berbagai cara untuk mengatur dan menyimpan subVI, o floating-numbers,
diantanya adalah: o integer,
o unsigned integer, dan
¾ menyimpannya berdasarkan aplikasi, artinya suatu o complex number.
aplikasi disimpan di suatu folder/direktori tertentu. ¾ Tipe data Boolean
¾ menyimpan dalam satu file library o Memiliki dua nilai, yaitu, true dan false.
¾ Tipe data String: koleksi karakter.

Sastra Kusuma Wijaya FISIKA FMIPA UI Instrumentasi Maya Sastra Kusuma Wijaya FISIKA FMIPA UI Instrumentasi Maya
HAL: 33 HAL: 34
¾ Tipe data Waveform o Bilangan Complex floating-point memiliki presisi
Perbedaan tipe data numerik dari jumlah bit-nya. Tipe data yang sama dengan bilangan floating-point, namun
dapat diubah dengan cara klik kanan dari icon numerik (kontrol, memiliki bagian imajiner.
indikator atau konstanta) dan pilih representation. Tipe Data String
Data Waveform adalah nilai-nilai yang merepresentasikan ¾ String adalah sekumpulan karakter ASCII, baik yang dapat
bentuk gelombang, biasanya dalam format array. diperagakan atau yang tidak
¾ Digunakan untuk: menampilkan pesan, kontrol instrumen,
Integer dan I/O file
¾ Signed Integer
32-bit (I32): -2,147,483,648 hingga 2,147,483,647 Tipe Data Boolean
16-bit (I16): -32768 hingga 32767 Tipe data Boolean ada dua nilai: TRUE dan FALSE, yang
8-bit (I8): -128 hingga 127 mewakili dua keadaan, yaitu ON dan OFF. Sebagai kontrol
¾ Unsigned Integer diperagakan sebagai:
32-bit (U32): 0 hingga 4,294,967,295
16-bit (U16): 0 hingga 65536 ¾ button (tombol),
8-bit (U8): 0 hingga 256 ¾ switch (saklar).

Kontrol, indikator dan konstanta Numerik ada di palet Numeric, Jika sebagai indikator:
diakses di All functions>>Numeric. ¾ LED light.
Floating Point Number Ada 6 modus operasi button (tombol), yaitu:
¾ Bilangan Floating-point: 1. Switch when pressed
Extended 2. Switch when released
precision [EXT]: –1.19e+4932 hingga 1.19e+4932 3. Switch until released
Double precision 4. Latch when pressed
[DBL]: –1.79e+308 hingga 1.79e+308 5. Latch when released
Single precision 6. Latch until released
[SGL]: –3.40e+38 hingga 3.40e+38
¾ Bilangan Complex floating-point: 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 For Loops
¾ Multiplots
For Loop digunakan untuk mengeksekusi sejumlah subdiagram
10.1 Loops dengan jumlah iterasi yang tertentu, yang dinyatakan dalam N,
seperti ditunjukkan pada gambar berikut. Terminal iterasi i
While loop dan For loop berada di palet Functions»Structures menunjukkan jumlah iterasi yang sudah dilakukan. Ingat iterasi
Pada For loop melakukan eksekusi sebanyak jumlah tertentu. mulai dari nol!
Sedang untuk while loop melakukan eksekusi selama kondisi di
dalam loop benar. ¾ Memiliki terminal iterasi
¾ Berjalan sesuai dengan jumlah terminal count N
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. Pilih loop dari palet structures dan tempatkan di blok


diagram Chart waveform adalah indikator numerik spesial yang
2. Pada saat terpilih, cursor mouse menjadi pointer khusus. digunakan untuk memperagakan satu atau lebih plot. Chart
Atur mouse agar bagian dari program yang hendak waveform dipilih dari palet Controls»Graph Indicators.
dilakukan proses pengulangan (looping) Ukuran chart bisa diatur tegantung keperluan, yaitu dengan
3. Drag atau Drop dari while loop tsb. 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.

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
n

Data skalar dapat langsung dihubungkan ke chart waverform


sebagai input, ∑i
i =1
untuk memperagakan satu plot. Jika hendak memperagakan
Buatlah program dengan dua cara:
beberapa plot dilakukan dengan menggunakan fungsi Merge
Signal, diambil dari palet Functions >> Signal Manipulation. 1. Gunakan struktur loop FOR.
Fungsi dari Merge Signal adalah menggabungkan beberapa plot 2. Gunakan struktur loop WHILE.
untuk diperagakan dalam satu chart. Gunakan Positioning tool
untuk mengatur jumlah input plot yang hendak digabung.
10.2 Latihan – Penggunaan loop Monitoring Suhu
1. Buat VI yang menghasilkan bilangan acak dengan delay Buatlah program untuk memonitor / mengukur suhu dan
tertentu dan memperagakannya hasil bilangan acak itu menampilkannya ke dalam chart waveform, dengan bentuk front
pada Waveform Chart hingga dihentikan oleh pengguna. panel sbb:
Pengaturan delay menggunakan slider dengan rentang dari
0 hingga 2000 ms.

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


Saklar Power dibuat dengan mengambilnya dari palet
Controls»Boolean. Sedangkan kurva waveform diperoleh dari Aksi mekanik dari saklar Boolean diubah dengan cara meng-
palet Controls»Graph. klik kanan saklar, pilih Mechanical Action»LatchWhen
Pressed. Contoh program ditunjukkan pada Monitoring
Selanjutnya membuat blok diagram sbb: Temperature.vi
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 Functions»Time & 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 Pada front panel ini, nilai pengamatan yang sedang berjalan di
dengan hasil pengamatan yang sedang berjalan. plot dengan titik kotak, sedangkan hasil rata-ratanya berupa
Perhatikan front panel dari program Temperature Running garis penuh.
Average.vi berikut ini 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. tidak dapat membuat array di dalam array


1. Buat plot yang terdiri atas dua buah plot, yaitu plot random 2. tidak dapat membentuk array dari chart
dan running average dari empat data terakhir, peragakan 3. tidak dapat membentuk array dari grafik XY multiplot
kedua plot itu pada chart secara serentak. Gunakan Shift
register untuk menghitung nilai rata-ratanya (ada tiga Namun dimungkinkan membuat array multidimensi dan array
terminal di kiri). (Random Average.vi) dari cluster, yang masing-masing cluster dapat berisi satu atau
lebih array.
2. Buat program yang menggunakan While-loop dan For-
loop secara serentak. Peragakan nilai acak di dalam loop Membuat Array di Front Panel
tsb. Jika ada skalar stop ditekan, loop berhenti, namun jika
Untuk membuat array kontrol atau indikator, pilih array pada
tidak loop tetap jalan terus hingga For-loop selesai.
palet Controls»All Controls»Array & Cluster. Tempatkan di
(Combo While For Loop.vi)
front panel dan drag kontrol atau indikator ke dalam shell array,
3. Buat VI yang mengukur suhu setiap detik dan seperti ditunjukkan gambar berikut.
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) 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. Tempatkan objek data ke dalam shell, misalnya kontrol numerik
seperti berikut ini.
Tipe data array dapat berupa numerik, boolean, path, string,
waveform dan cluster.
Ada batasan untuk membentuk array, yaitu:

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.
• Data Array menyimpan hasil dari pengukuran suhu
Untuk mengeluarkan hasil dari suatu loop (misalnya For-loop) sebanyak 100 buah data.
menggunakan loop tunnel data outputnya dapat berupa data
• Waveform Chart memperagakan hasil itu secara grafis.
yang terindeks (dengan enable indexing), atau hanya data yang
terakhir saja (dengan disable indexing). • 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, • Gambar 1, Membuat array dua dimensi
dengan delta 0.5 artinya dari 20s hingga 70s.
Untuk itu perlu membuat format data itu di-bundle, dengan Membuat Plot Multiple
menggunakan fungsi bundle seperti yang ditunjukkan di Sedangkan untuk membuat dua plot dalam satu grafik, dapat
program tsb. dilakukan dengan dua pasangan data dalam satu array. Hal ini
Untuk melihat grafik lebih detail, klik kanan di waveform graph dilakukan dengan fungsi Build Array, seperti ditunjukkan
dan pilih palet Visible Items»Graph dan klik tombol Zoom dalam program berikut ini.
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.
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
»Programming»Array»Array Max & Min.vi. Sedangkan
Nilai rata-rata diperoleh dari Function»Mathematics»Prob &
Stat»Mean.vi.
Perhatikan pada program ini menggunakan delta x sebesar 0.05,
Dari front panel terlihat ada indikator nilai Rata-rata (Mean), ini diambil dari delay 50 ms dalam For-Next loop. Untuk
nilai Max dan Min. Juga terdapat dua grafik, bagian atas berupa menampilkan skala yang benar pada chart, maka skalanya perlu
waveform chart (Temperature) dan bagian bawah berupa diubah, yaitu Chart Properties, dengan membuat: Scaling Factor,
waveform graph (Temp Graph). Temperatur memperagakan Offset : 0 dan Multifier: 0.05 untuk sumbu-x (time).
hasil pengamatan setiap saat, sedangkan Temp Graph Karena pada grafik kedua menggunakan Waveform Graph,
memperagakan hasil analisa dari seluruh data yang diperoleh maka perlu nilai x0 dan delta x, ambil x0 = 0, dan delta x = 0.05
dengan hasil fitting-nya. Adapun blok diagramnya ditunjukkan sesuai dengan delay yang digunakan.
pada gambar berikut (Temperature Analysis.vi)
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 Function»Mathematics»Fitting»General Mencari Anggota Array yang nilainya lebih
Polynomial Fit.vi, dan gunakan orde 5. besar dari Nilai Threshold tertentu
Grafik XY Buatlah VI yang memiliki dua buah input, yaitu Threshold dan
Input Array. Buat Output Array yang merupankan subset dari
Contoh Membuat Lingkaran dengan Waveform Graph XY,
Input Array, namun lebih besar dari nilai Threshold.
dilakukan dengan front panel dan blok diagram sbb:
a. Buatlah sub-VI untuk menghasilkan Output Array
yang merupakan subset dari Input Array.
b. Buatlah Input Array-nya berasal dari bilangan
random.
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 12. Cluster
array terdiri atas 100 bilangan random, artinya array[0]
menjadi array[99], array[1] menjadi array[98], dst. Cluster adalah struktur data yang meng-grup-kan sekumpulan
Gunakan fungsi yang tersedia pada palet Function»Array. 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, Setelah daerah untuk cluster berada di front panel, selanjutnya
d. dll dibuat komponen-komponen penyusun cluster itu.

Membuat Cluster Misalnya suatu cluster dengan nama Struktur Nama, yang terdiri
atas Nama, Umur, Sex dan Alamat. Untuk meng-akses ke
Untuk membuat cluster, pilih Control|Array,Matrix...& masing-masing objek (field) dalam cluster digunakan fungsi
Cluster|Cluster dan drag ke front panel, seperti yang dilakukan unbundle. Ada dua macam unbundle, yaitu:
pada gambar berikut.
a. unbundle
b. unbundle by name
Seperti yang dilakukan sbb:

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, 2. Buat subVI yang memiliki dua input dan satu output, yang
seperti ditunjukkan pada program berikut. Front panelnya: 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
Dalam menjalankan program I/O mungkin saja ada kesalahan.
Hampir semua fungsi I/O akan memberikan informasi kesalahan
Sedangkan blok diagramnya:
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 Controls»Array, 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 Struktur data error cluster terdiri atas: status, code, dan source.
Ingat masing-masing formula dipisahkan dengan tanda (;), Status: nilai boolean yang melaporkan ada/tidaknya
tulis programnya dalam nama file Solusi Persamaan.vi. 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
Contoh struktur case:
Dengan struktur case dimungkinkan untuk memilih suatu aksi
bergantung pada nilai inputnya. Mirip dengan struktur If-Then-
Else. Struktur ini terdapat di: Function|Structure|Case
Structure, sbb:

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 Sequence Structures
1. Buatlah program VI yang menghitung akar dari suatu Struktur sekuen digunakan untuk mengeksekusi diagram secara
bilangan. Jika bilangan itu ≥ 0, akan menghitung nilai sekuensial, misalnya untuk menghitung selang waktu. Struktur
akarnya, sedangkan jika bilangan itu < 0 akan sekuen ini mirip dengan frame pada film
memperagakan error cluster, dengan kode salah 1001, dan
sumber kesalahaannya adalah “Akar.vi” 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 text-
based 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, Dan programnya:
Latihan Formula Node

y = ( x × sin( x) )
2
3. Buatlah kurva dengan menggunakan
formula node.
Caranya:
ƒ Buat waveform graph di front panel
ƒ Buat formula node di block diagram
Program ini ditunjukkan pada Grafik Dgn Formula Node.vi
ƒ Tulis fungsi yang hendak dibuat di formula node,
selanjutnya buat “Add Input” dan “Add Output” di 14. String
formula node tsb. Dan tuliskan semua variabel input dan String adalah sekumpulan ASCII karakter, biasanya digunakan
outputnya. untuk mengirim pesan ke atau dari instrumen. Untuk mengakses
Front panelnya sbb: string dilakukan dari palet Control»String&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 Contoh pemakaian string ditunjukkan pada Latihan string.vi
dengan cara meng-klik kanan di string kontrol atau indikator di berikut ini.
front-panel, yaitu tampilan: Normal, kode ‘\’, password dan
heksa.

Kode Intepretasi

\b backspace (\08)

\s space (\20)

\r return (\0D)

\n newline (\0A)

\t tab (\09)

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, Menulis dan Membaca file ‘LabVIEW
Operasi file tingkat rendah (Adv file function) Measurement’ (*.lvm)
Perlu diingat bahwa file yang dilewatkan dapat berupa data Fungsi yang tersedia di LabVIEW untuk menulis file *.lvm
biner, text maupun spreadsheet. sebenarnya melibatkan operasi:
Contoh menulis ke file. • Membuka,
Misalnya hendak memodifikasi program Latihan string.vi, • Menulis,
Variabel string “Tampilan Gabungan” tidak ditampilkan ke
• Menutup,
layar melainkan hendak disimpan ke file. Untuk mengubahnya
dilakukan sbb: • 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,
Contoh:
yaitu:

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


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

String String %.2f %.2f 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