06-12-2013 07:52 AM
bismillahirrahmaanirrahiim...
Mohon maaf pada semua penghuni forum ini saya merepotkan lagi...
Ingin bertanya, saya membuat sebuah tabel menggunakan data array 2D. Selama waktu beberapa menit yang ditentukan, tabel ini diisikan data, kemudian apabila waktunya telah terpenuhi, data ini di "report" kan di ms. word. Nah, keinginan saya, setelah data ini di "report" kan ke ms. word atau apabila waktu yang ditentukan telah terpenuhi, data array 2D pada tabel menjadi kosong kembali seperti semula, kemudian setelah data array 2D pada tabel tersebut kosong, saya ingin menulis kembali seperti saya mengisikan data pada tabel yang awal.
Sedangkan yang saya alami sekarang adalah apabila waktu sudah selesai, data yang ada tidak terhapus sehingga ketika di "report" kan ke ms.word datanya berlanjut dari data sebelumnya, tidak membuat data yang baru...
kira-kira bagaimana ya? Mohon maaf merepotkan..
Best Regards,,
06-12-2013 08:51 AM
Hallo bro,
harusnya masalah ini nggak susah nih bro, tapi lebih baik kalo ada screenshot program nya, jadi buat yang coba bantu bisa lebih ngerti.
Paling gampang sih harusnya bikin inisialisasi array aja, yang biasanya pake array kosong. Contohnya bs diliat disini: http://www.ni.com/white-paper/7571/en/
Tapi kalo pake sistem itu, array nya jadi kosong cuma kalo program nya selesai, stop seluruh .vi, baru dijalankan lagi. (nggak berlaku kalo program tetap berjalan setelah save ke Word, untuk isi data selanjutnya).
Alternativ, bikin sequence aja di belakang block yang untuk save ke Word. Di sequence itu, bikin local variable dari 2D-array nya. Jadi setiap abis eksekusi "save",
langsung data nya dikosongin.
salam,
Yan.
06-12-2013 09:50 AM
maaf gan ini via hh soalnya... nanti ane screen list programnya deh... tp programnya acak2an masih newbie mas bro malu, hehe..
oh gitu kalo cara ngosongin ya gan... tapi itu kalo abis dikosongin data masuk, datanya dari pertama lagi atau cuma ngehapus yg sebelumnya tapi baris tabel ngelanjutin sebelumnya ya??
ane move ke desktop dlu deh mas bro...
06-12-2013 10:02 AM
mas bro ini list program ane buat bikin data tabel dari array 2D... terus ke ms.wordnya ane masukin aja tabel 6 ke word easy table nya... kira2 gimana mas bro?
TK 1, 2, 3, 4, itu data dari komunikasi serial dilapangan mas bro... mohon bantuannya mas bro...
06-12-2013
03:19 PM
- last edited on
08-20-2024
12:49 PM
by
Content Cleaner
Halo,
Saya tidak akan bisa menjawab pertanyaan anda dalam satu reply ini, karena masalah yang anda punya cukup complex. Saya coba pecah dulu masalahnya:
1. Dataflow (Sequencing)
--> coba lihat link ini tentang masalah yang terjadi karena dataflow tidak didesain dengan tepat: https://forums.ni.com/t5/LabVIEW-Team-Indonesia/bagaimana-merekam-dan-menyimpannya-gelombang-di-labv...
2. Local Variable.
--> saya sangat tidak suka Local Variable. Sangat membenci malah. Tidak akan menggunakan Local Variable kalau tidak ada pilihan lain. Kenapa?
Saya lagi draft guide untuk state machine, mungkin akan berguna kalau anda lihat nanti. BTW, apakah anda sudah punya flowchart atau state diagram untu aplikasinya?
06-12-2013 05:41 PM
kebetulan program saya buat saya akui sangat acak-acakan pak, karena saya baru sekitar 3 bulan ini memakai LabVIEW. Jadi, konsepnya sangat kurang matang ...
saya menggunakan local variabel dalam sebuah flat sequence pak, apa itu akan mematahkan dataflow?...
saya belum membuat flowchartnya pak, tapi saya coba buat dulu pak...
06-12-2013 05:57 PM
Flat sequence dan local variable adalah godaan setan dalam LabVIEW yang sering menghantui LabVIEW developers. Dua hal ini yang saya paling hindari dalam development LabVIEW, karena mereka cenderung "jalur singkat" dalam LabVIEW. Analogi-nya seperti makan IndoMie terus menerus, pasti ada efek sampingnya
Saran saya, buat dulu flow chartnya, nanti aplikasi LabVIEW akan mengikuti flow chart anda. Saya masih drafting guide#1 untuk State Machine.
06-12-2013 07:01 PM
ini pak krisna, kurang lebih seperti ini flowchartnya...
ada 4 data yang diinginkan, jadi saya mengirim dan 4 kali pada komunikasi serialnya dan ada 4 data yang ada di tabel ditambah waktu pencuplikan datanya...
oh iya pak terima kasih, ditunggu draft guidenya
06-13-2013 10:20 PM
Saya setuju sekali dengan apa yang dikatakan mas Krisna soal local variable dan flat sequence. Sebisa mungkin dihindari karena sangat rentan terhadap race condition yang mengakibatkan pembacaan data menjadi tidak valid.
Sesuai dengan yang disarankan oleh mas Krisna, sebaiknya pake State Machine design pattern. Dengan cara ini akan lebih memudahkan anda ketika akan menambahkan fitur ke dalam program. Untuk referensi State Machines design pattern bisa refer ke sini.
Untuk implementasi dari flow chart ke state machines-nya, setiap proses dan decission making dalam flow chart akan menjadi state, dan anak panah sebagai transition-nya.
Untuk jawaban atas pertanyaan utamanya (megisi dan mengosongkan array), akan sangat mudah jika program anda sudah menggunakan desain pattern diatas. Cukup dengan membuat sebuah shift register 2D Array Data yang akan berfungsi sebagai media penampung data. Kemudian data diisi pada state tertentu (misalnya pada state store to table). Kemudian untuk mengosongkan arraynya cukup dengan membuat sebuah empty 2D array kemudian hubungkan ke terminal input shift register dari 2D Array Data.
06-27-2013 02:59 AM
wah2, kudos to taufik.
Good reply. Terimakasih atas kontribusi-nya