Membaca data serial port dari arduino ke php pada Windows XP

Membaca serial port dan menampilkan/mengolah pada php di windows NT Family mulai dari 2000/XP maupun Vista/7 tidak bisa langsung melalui script pada php. Kecuali pada keluarga *Nix (Linux/Unix/OSX) php dapat secara langsung mendapatkan akses ke serial port sehingga pembacaan data dari serial port bisa dilakukan dengan mudah. Pada Windows hal ini sulit dilakukan sebab setelah saya searching di beberapa forum banyak yang kesulitan. Output data dari arduino melalui jalur serial port. Oleh karena itu kita coba melakukan pembacaan data output dari arduino. Saya menggunakan RealTerm, xampplite, dan browser.

  1. Saya contohkan project menggunakan IC LM35 yang saya temukan di sini. Silakan dipelajari dan dicopy sketchnya lalu diupload pada board arduino anda.
  2. Download Realterm dari sourceforge.net. Fungsi dari Realterm yaitu mengambil data dari serial port lalu diubah menjadi file .txt
  3. Jalankan RealTerm, pada port pilih dimana USB to Serial pada Arduino berada.
  4. Baud rate dipilih 9600. Lalu klik Open. Nanti di layar monitor keluar angka-angka
  5. Pada Capture pilih File, taruh file txt pada folder dimana file php akan dijalankan. Misal pada D:\xampp\htdocs\arduino\capture.txt”.
  6. Bisa dipilih Start overwrite atau Start append. Terserah anda. Jika overwrite data sebelumnya akan dihapus, jika append, maka akan ditambahkan pada baris terakhir.
  7. Copy paste script berikut:
    <?php
    $line = '';
    $f = fopen('capture.txt', 'r');
    $cursor = -1;
    fseek($f, $cursor, SEEK_END);
    $char = fgetc($f);
    /**
    * Trim trailing newline chars of the file
    */
    while ($char === "n" || $char === "r") {
      fseek($f, $cursor--, SEEK_END);
      $char = fgetc($f);
    }
    /**
    * Read until the start of file or first newline char
    */
    while ($char !== false && $char !== "n" && $char !== "r") {
    /**
    * Prepend the new char
    */
      $line = $char . $line;
      fseek($f, $cursor--, SEEK_END);
      $char = fgetc($f);
    }
    echo $line;
    ?>

     

  8. Simpan sebagai “index.php”.
  9. jalankan, misal “http://localhost/arduino”
  10. Maka data dari arduino melalui serial port akan keluar pada browser anda.

,,

Comments

Tinggalkan Balasan

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses.