Send/Receive Data ke Ms Excel dari Arduino | PLX-DAQ Data-Acquisition

Dalam Guide ini, kami akan tunjukkan, bagaimana anda dapat membuat sebuah Data-Acquisition Sistem mudah dan murah dengan menggunakan Arduino dan bantuan PLX-DAQ untuk rekodkan data ke dalam Microsoft Excel.

Data Acquisition kebiasaannya diperlukan oleh Researcher untuk dapatkan TREND-DATA yang bersiri untuk menganalisa Data secara terperinci.

Sebelum ini, beberapa solusi untuk Data Logging atau Data Acquistion adalah seperti berikut:

MENGGUNAKAN DATA ACQUISITION MODULE

Ini ada adalah contoh Data Acquisition module yang biasa digunakan dalam lab-lab makmal Universiti. Harga Module seperti ini boleh mencecah RMXxx sehingga RMX,xxx.

SIMPAN DATA CLOUD-SERVER/CLOUD-APP

Teknik ini memerlukan pengetahuan dalam IoT dan Cloud-App/Server. Ini kaedah terbaik cuma perlukan pengetahuan lebih dalam setiap App tertentu.

SIMPAN DATA DALAM SD CARD

Dalam kaedah ini, menggunakan Module SD Card, kemudian data direkodkan dalam bentuk file .TXT atau .CSV ke dalam SD Card.

Kemudian apabila hendak melihat data, perlu transferkan data dari SD Card ke dalam Computer dan masukkan dalam Excel.

HANTAR DATA TERUS KE MICROSOFT EXCEL

Dalam guide ini, kami tunjukkan kaedah menghantar data TERUS ke Ms Excel, melalui USB, TANPA memerlukan sebarang pengantara/module mahupun SD Card.

Microsoft Excel 365

Dalam Microsoft Excel 365 yang terbaru, fungsi menghantar Data terus ke Excel-Sheet telah berada dalam sistem, melalui fungsi Add-On Data Streaming. Guide ini tidak akan menyentuh atau menerangkan berkenaan Data-Streaming.

Walaubagaimanapun, anda boleh rujuk video guide dari YouTube berikut untuk mengetahui lebih lanjut berkenaan Fungsi Data-Streamer Excel 365.

Microsoft Excel versi Lebih Awal (2013 -2016)

Majoriti dari komuniti kita hanya mempunyai MicroSoft Excel versi yang lebih awal (2013-2016). Versi awala tidak mempunyai fungsi Data-Streaming.

Dengan itu, solusi Universal untuk versi Excel awal, adalah dengan menggunakan PLX-DAQ.

APA ITU PLX-DAQ ?

Dalam MicroSoft Excel, kita boleh menambahkan pelbagai fungsi khusus dan custom kita sendiri dengan mengaktifkan fungsi MACRO.

Dalam fungsi MACRO, kita boleh menambahkan PROGRAMMING/CODE TAMBAHAN kepada sesuatu SpreadSheet melalui Programming Visual Basic, dan dalam Solusi PLX-DAQ, yang penting adalah SpreadSheet yang TELAH mempunyai Fungsi MACRO tersebut.

Contoh Paparan Window VB Programming dalam Ms Excel
Sumber : https://i.ytimg.com/vi/1lQbzmjZQb0/maxresdefault.jpg

DOWNLOAD PLX-DAQ

Solusi PLX-DAQ ini telah dibangunkan oleh tuan NetDevil dan telah dikongsikan sepenuhnya dalam Forum Arduino , dan sehingga hari ini telah banyak dimanfaatkan oleh komuniti.

Untuk dapatkan PLX-DAQ, anda perlu download Package PLX-DAQ terlebih dahulu.
(terbaru 2021, PLX-DAQ Version 2.11, pastikan dapatkan versi terbaru)

DOWNLOAD DARI FORUM ARDUINO

DOWNLOAD DARI GOOGLE DRIVE

Selepas Package PLX-DAQ di-Download, pastikan di-Extract, dan anda patut mempunyai 4 File seperti gambar di bawah:

Senarai File dalam Package PLX-DAQ v2.11

User Manual – Beginners Guide to PLX-DAQ

Beginners Guide User Manual

Version 2.11 ini version terbaru yang dilengkapkan dengan User Manual yang serba lengkap untuk panduan Beginners. Anda patut membaca User Manual ini untuk mengetahui tentang ke-semua fungsi-fungsi yang boleh dilaksanakan dengan PLX-DAQ.

Default Sketch – Contoh Program

PLX-DAQ-v2-DefaultSketch.ino

Package ini hanya membekalkan satu File Coding/Sketch Arduino untuk rujukan, dan hampir kesemua fungsi PLX-DAQ ada dalam file tersebut. Namun, untuk Beginners, terlalu banyak info dibekalkan dalam File ini.

Jadi anda boleh ikuti guide kami ini untuk melihat fungsi-fungsi simple yang kami highlight.

File Excel : PLX-DAQ-v.211

Ini merupakan FILE TERPENTING yang membolehkan Data diterima dari USB dihantar terus ke Excel. File ini anda boleh Dupplicate dan Save As atas nama lain untuk Project-project yang berlainan.
Pastikan anda sentiasa menggunakan fungsi Save As, supaya Code VB PLX-DAQ sentiasa berada dalam File Excel anda.

Pertama kali membuka File PLX-DAQ, akan ada paparan AMARAN untuk Enable Content atau Enable Macro.
Pastikan anda menekan ENABLE.

MENGGUNAKAN FILE EXCEL PLX_DAQ

Data sedia ada di Column A, B, C dan D adalah contoh sahaja, dan boleh didelete bila-bila masa sahaja.

PLX-DAQ UI PANEL (User Interface)

Dalam File Excel PLX-DAQ, User Interface Panel perlu diaktifkan dahulu.
Tekan butang OPEN PLX-DAQ UI untuk aktifkan User Interface.

PLX-DAQ User Interface

Dalam User Interface ada 4 komponen yang perlu di setting:

  • #1 Port : Pastikan Nombor Port matching dengan Port COM Arduino yang dikesan oleh komputer
  • #2 Baud : Nilai 9600 perlu matching dengan setting Baud Rate speed dalam Coding Arduino
  • #3 Sheet name to post to : Di sini, anda perlu pilih NAMA SPREADSHEET yang akan menyimpan rekod data
  • #4 Connect : Tekan butang ini untuk mula menerima data dari Arduino

STRUKTUR DATA

Data yang masuk akan bermula dari COLUMN A dan ROW 2, dan seterusnya.

MENGUBAH/MENAMAKAN COLUMN & ROW

Nama atau Label Column, boleh diubah bila-bila masa.

MENGHANTAR DATA DARI ARDUINO

Kaedah penghantaran data oleh Arduino kepada Excel PLX-DAQ, menggunakan Fungsi SERIAL yang biasa digunakan oleh Serial Monitor.

Oleh itu, semasa penghantaran data, Serial Monitor TIDAK BOLEH DIBUKA dan tidak dapat digunakan, kerana ia akan mengganggu proses penghantaran data kepada PLX-DAQ.

SYNTAX VOID SETUP

Syntax yang patut dimulakan dalam Void Setup untuk penggunaan PLX-DAQ adalah sama sahaja seperti penggunaan Serial Monitor.

void setup() {
  Serial.begin(9600);

}//END VOID SETUP

Pastikan nilai Baud Rate adalah sama dengan Baud Rate di PLX-DAQ User Interface.

SYNTAX VOID LOOP (Paling Asas)

void loop() {
  //CODING LAIN
  //CODING LAIN
  //CODING LAIN
  Temperature = sensor.DataTemp();

  Serial.println( (String) "DATA,DATE,TIME," + Temperature);

}//END VOID LOOP

Ini adalah struktur Syntax penghantaran data ke PLX-DAQ yang paling mudah, di mana, hanya satu maklumat Variable TEMPERATURE sahaja yang dihantar kepada Excel.

Jika diperhatikan struktur coding ini, 3 Syntax awala iaitu DATA,DATE,TIME adalah 3 syntax wajib yang patut berada dalam coding tersebut.

SYNTAX VOID LOOP – 2 Data

void loop() {
  //CODING LAIN
  //CODING LAIN
  //CODING LAIN
  Temperature = sensor.DataTemp();
  Humidity = sensor.DataHumid();

  Serial.println( (String) "DATA,DATE,TIME," + Temperature + "," + Humidity);

}//END VOID LOOP

Ini struktur Syntax untuk menghantar 2 maklumat variable.
PERHATIKAN penggunaan koma “,” dan juga penggunaan tanda “+”
Tanda-tanda ini penting untuk distrukturkan betul.

SYNTAX VOID LOOP – 3 Data

void loop() {
  //CODING LAIN
  //CODING LAIN
  //CODING LAIN
  Temperature = sensor.DataTemp();
  Humidity = sensor.DataHumid();
  Force = sensor.DataForece();

  Serial.println( (String) "DATA,DATE,TIME," + Temperature + "," + Humidity + "," + Force);

}//END VOID LOOP

Ini pula struktur Syntax untuk menghantar 3 data Variable.
Jika anda faham kaedah syntax untuk 3 variable, anda boleh terus ubah syntax ini untuk penghantaran maklumat data variable yang lebih banyak.

MENGHANTAR DATA KE CELL TERTENTU

Serial.println("CELL,SET,G10," + Temperature);

Syntax ini pula, menghantar data Temperature, kepada cell G10 dalam Excel.

MENERIMA/DAPATKAN DATA DARI CELL TERTENTU

MAKLUMAT INT

Serial.println("CELL,GET,FROMSHEET,Simple Data,E,4");
int readvalue = Serial.readStringUntil(10).toInt(); //biarkan 10

Syntax ini pula, adalah untuk mendapatkan maklumat Nilai/Data INT dari:

  • Spread Sheet Name : Simple Data
  • Column : E
  • Row : 4

Anda hanya perlu ubah Nama Spread Sheet jika perlu, dan ubah Nombor Colum/Row Cell.
Dan ini antara fungsi yang amat berguna jika anda perlu berinteraksi dengan maklumat dalam sheet excel.

AMARAN

Data yang diterima dari Excel adalah dalam bentuk STRING.
Itulah fungsi syntax .toInt() yang mengubah data String kepada bentuk INT

MAKLUMAT FLOAT (Titik Perpuluhan)

Serial.println("CELL,GET,FROMSHEET,Simple Data,E,4");
int readvalue = Serial.readStringUntil(10).toFloat(); //biarkan 10

Di sini, syntax .toFloat() digunakan untuk mengubah data String dari Excel ke bentuk FLOAT

ARAHAN SAVE FILE DAN BERI NAMA FILE

Serial.println("SAVEWORKBOOKAS,File-Data-Logging-Saya");

Syntax ini, boleh memberi arahan pada Excel untuk Save File As nama file File-Data-Logging-Saya.

Terdapat pelbagai lagi fungsi tambahan HANTAR-KELUAR-MASUk DATA yang boleh dilakukan dengan PLX-DAQ ini. Namun, kami hanya berikan guide untuk yang basic sahaja dalam tutorial ini.

Untuk fungsi-fungsi tambahan, anda boleh kaji User Manual yang telah dibekalkan bersama Package PLX-DAQ dalam file .DOC.

PERSEDIAAN UNTUK KE CODING ARDUINO

Jika anda menghadapi kesukaran dalam menggunakan atau memahamkan Arduino dan Coding, kami sarankan anda ikuti E-Learning E-Kursus Pemantapan Asas Arduino MatGyver ini.

Sebelum membuat sebarang Project Arduino, kita perlu tahu dahulu Fundamental Hardware dan juga Fundamental C++ Coding supaya kita dapat kenal-pasti sebarang masalah atau error-error basic yang bakal terjadi ketika membuat project ini.

Jika anda mempunyai sebarang PERTANYAAN berkenaan artikel ini, anda boleh maklumkan dalam bahagian COMMENT.

Selamat Membuat Project Electric-Drum!


Jika anda menyukai artikel-artikel keluaran MatGyver.my, kami mohon jasa baik tuan/cikpuan untuk sumbangkan like pada page FaceBook kami,
dan juga Subscribe ke YouTube Channel kami !

Dapatkan Tips-tips DIY dan Arduino dari FB Page Kami.
Konten Video Tips DIY Hobby MatGyver Official Channel.


Published by Mat Gyver

Peneraju Komuniti Digital Maker Malaysia. Pembangunan Komuniti diUtamakan.

2 thoughts on “Send/Receive Data ke Ms Excel dari Arduino | PLX-DAQ Data-Acquisition

  1. Salam.. Terima kasih atas perkongsian.. sangat membantu.. cuma saya ada soalan.. bagaimana pula jika kita mahu Save File Excel tersebut secara berkala.. contohnya save file setiap 30minit, supaya sekiranya terjadi apa2 pada server sekuranga-kurangnya data telah selamat tersimpan..

    Like

    1. Kalau tuan lihat dalam artikel, kami ada highlight berkenaan “User Manual – Beginners Guide to PLX-DAQ”. BIla tuan download package PLX-DAQ tersebut, ada file tu dalam bentuk Microsoft Word. Ia adalah dokumentasi lengkap berkenaan Software PLX-DAQ.

      Tuan akan jumpa ” Syntax: Serial.println(“SAVEWORKBOOKAS,MyNewWorkbookName”); “.
      Tuan boleh study dan experiment berkenaan fungsi syntax tersebut.

      Ada 2 kaedah untuk “Auto-Save” Excel:
      1) Menggunakan syntax di atas
      2) Membina VB programming macro dalam excel (ini cerita panjang)

      Misalnya tuan gunakan syntax di atas, itu cuma syntax arahan untuk save.
      Bermakna ada ilmu/perkara ke-2 yang tuan perlu masterkan dalam coding Arduino, iaitu implementasi penggunaan timer.
      Untuk master penggunaan Timer, perlukan latihan dan pemahaman coding, kerana tiada satu cara yang berfungsi untuk semua applikasi.

      Bagi penggunaan Timer, kami cadangkan tuan study dan berlatih dari SimpleTimer library, boleh rujuk tutorial kami berikut:
      https://matgyver.my/2019/11/17/blink-led-tanpa-delay-gunakan-simpletimer/

      Artikel ini ilmu asasnya. Tapi untuk setiap kes dan kaedah penggunaan, coding perlu diubah dan digubal dalam bentuk yang lain tapi menggunakan asas yang sama.

      Pointnya adalah, tidak ada satu syntax yang berfungsi untuk semua applikasi, memang perlu gubal.
      yang penting Ilmu asas perlu kuat, faham , dan master.
      Practice makes perfect tuan.

      Like

Tinggalkan Jawapan

Masukkan butiran anda dibawah atau klik ikon untuk log masuk akaun:

WordPress.com Logo

Anda sedang menulis komen melalui akaun WordPress.com anda. Log Out /  Tukar )

Facebook photo

Anda sedang menulis komen melalui akaun Facebook anda. Log Out /  Tukar )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: