Loading [MathJax]/extensions/tex2jax.js

工学部生の生プレス

*就職して元工学部生になりました

専門内容 日常 紹介

温度センサからの値を.txtに保存しよう!

投稿日:2019年2月17日 更新日:

こんにちは~

最近、マギを見だしてアラジン君の可愛さに癒されているfinemanです!

いや~。アラジン君の声、可愛すぎじゃないですか?

さて、では本題に♪

今回は「温度センサからの値をArduinoで取得し、それをProcessingでパソコンの中にテキストファイル(.txt)として保存する」という方針で作っていきます!

それでは~

シュワッチ!


 

①用意するもの:

Arduino Uno

ブレッドボード

LM61CIZ-ND

ジャンパ線

②配線図:

③作るもの:

温度センサからの値をArduinoで取得し、それをProcessingでパソコンの中にテキストファイル(.txt)として保存する

④プログラム:

・Arduino側

int val = 0;
long vt,temp = 0;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
}
void loop() {
// put your main code here, to run repeatedly:
val = analogRead(0);
vt = map(val,0,1023,0,5000);
temp = map(vt,300,1600,-30,100);
if (Serial.available() > 0) { //このif文はシリアルモニタの入力欄に何かを入力すると走り出す
Serial.println(temp); //Arduinoのシリアルモニタでの温度の確認用
Serial.write(temp); //テキストファイルに出力用
}
delay(100);
}
view raw 2_14.ino hosted with ❤ by GitHub

*プログラム作成時の注意点:
・電圧を温度に変換する所は温度センサによって変わるのでデータシートを必ずチェックして下さい。今回、僕が使用したLM61CIZ-NDは-30℃~100℃を300mv~1600mvで出力するため、今回のようなプログラムとなっています。

・プログラム中にSerial.println(temp);Serial.write(temp);を書いていますが、シリアルモニタで温度を確認する時にはSerial.write(temp);を。テキストファイル中で温度を確認する時にはSerial.println(temp);をそれぞれコメントアウトしてください!コメントアウトしない状態で実行すると、出力が変になりました。

・Processing側

import processing.serial.*;
Serial myPort;
PrintWriter output;
int senout;
int count=0;
void setup () {
size(400, 400);
background(255);
output = createWriter("temperature.txt");
println(Serial.list());
myPort = new Serial(this, Serial.list()[0], 9600);
}
void draw () {
if(count==0){
myPort.write(255);
}
if(myPort.available()>0){
senout=myPort.read();
output.print(senout);
output.println(); //改行のため
myPort.clear();
myPort.write(255);
count++;
}
if (count>100) {
output.flush();
output.close();
exit();
}
}
view raw 2_14.pde hosted with ❤ by GitHub

*プログラム作成時の注意点:
・今回はtemperature.txtというファイルを新しく作って、その中にデータを保存するという形式にしています。このファイルはC:/ユーザー/ユーザ名/ドキュメント/Processing/作成したファイル名/の中に作成してあると思います。

⑤完成動画:

完成♪


 

いかがでしたでしょうか?

Arduinoにはシリアルプロッタという機能があるので、値を確認するだけだったらProcessingはいらないのですが、そのデータをパソコンの中に保存したいと思ったため今回はProcessingを使いました。

Processingはjavaで書かれてあるため、Arduinoとは少し勝手が違うのでまだ少し慣れませんが、少しづつ勉強していこうと思います!

最後に例のソフトの練習状況です(笑)↓

最後までお読み下さり、ありがとうございました。

 

▲▲▲アリガ島▲▲▲

次回予告
「未定」







-専門内容, 日常, 紹介

執筆者:


  1. […] 温度センサからの値を.txtに保存しよう! […]

comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

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

関連記事

ダンベル(60kg)を購入しました!

こんにちは~ 突然ですが、「筋トレ」って好きですか? 僕は好きです! 昔からドラゴンボールなどのjumpアニメが大好きで、その主人公たちがかっこよくピンチの場面に駆け付ける場面が好きでした。 そして、 …

【院試対策】線形代数④(行列の固有値と固有ベクトル)

こんにちは~ 前回の予告通り、今回は“行列の固有値と固有ベクトル”の求め方について記事にしていきたいと思います。 それでは~ シュワッチ!   第4回:【院試対策】線形代数④(行列の固有値と …

筋トレルーム、完成!

こんにちは~ 久しぶりの投稿となりました。最近、資格の勉強とテスト勉強が重なってしまい、あまり投稿できていませんでした。m(_ _)mゴメン 今回は「筋トレルーム、完成!」という事で、過去の記事でダ …

Arduinoを使ってぶつからない車を自作~初代~

こんばんは。 最近は温かくなってきて、「半袖をそろそろ出そうかな~。でも、まだ学校でも半袖の人はそんなにいないし『ヤバいやつ』なんて思われるかな~」と、陰キャ特有の深い考察を行っています(笑) さて、 …

流体の自由研究~トリチェリの定理~

こんばんは。 やっと、期末テストが終わりました! ターム制のおかげで期末テストが2つの期間に分かれたおかげで、少し勉強が楽になりましたが、少ないとは言ってもやはり1つ1つの内容が難しくて、大変でした。 …

S