10
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Arduinoで得たセンサの出力をCSVに吐き出す

Last updated at Posted at 2019-11-04

#はじめに
備忘録.Arduino IDEでセンサの出力を ツール/シリアルモニタorシリアルプロッタから見ることはできるが,データとして取得したい場合のメモ.

#環境
OS Windows 10
Aruduino MEGA 2560
Arduino IDE (ver.1.8.9)
visual studio 2019

#やり方(備忘録)
あらかじめブレッドボード等でArduinoボードに回路を作成しておく.
Arduino IDEにて以下のソースコードを実行.

Arduino_IDE

int Signal1;            
unsigned long t;                 

// The SetUp Function:
void setup() {
   Serial.begin(250000);         // Set's up Serial Communication at certain speed.

}
// The Main Loop Function
void loop() {

  Signal1 = analogRead(0); 

   t = millis();
//  Serial.print(t);
//  Serial.print(", ");
   Serial.println(Signal1); 

}

この際,Arduinoボードに刺したセンサのANALOG IN ピン番号と対応する数字をanalogRead()の関数内に入力.
また,サンプリング周波数はSerial.beginで調整.
他にここでIDE上部ツール/シリアルポートから通信しているポート番号を確認しておく.

次に,VSで新規プロジェクト(C# コンソールアプリ.NET Framework)を作成.

以下のソースコードを実行.

Program.cs
using System;
using System.Collections.Generic;
using System.IO;
using System.IO.Ports;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            SerialPort mySP = new SerialPort("COM*");
            var sw = new System.IO.StreamWriter("***.csv", false, System.Text.Encoding.GetEncoding("shift_jis"));
            mySP.BaudRate = 250000;
            mySP.Open();
            while (true)
            {
                string myData = mySP.ReadLine();
                sw.WriteLine(myData); 
                Console.WriteLine(myData);

            }
        }
    }
}

注意すべきは,先ほど確認してシリアルポート番号をnew SerialPort("COM*")の*に代入することと,BaudRateにArduino IDEで設定したサンプリング周波数と同じ値を入力すること.
時間も同様に出力したい場合はArduino IDE上で設定が可能.今回のソースコードではコメントアウトを外すことでミリ秒の出力ができる.

10
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?