Wolfram Community の Reading Temperature Sensors in the Wolfram Language on the RPi に温度センサーを使って湯の冷却の温度測定載っている。
Raspberry Pi + MMA(6) : Vernier Sensors on Raspberry Pi で Vernier sensor を Raspberry Pi で使うことに成功しので、手持ちの Vernier 温度センサーを使って湯の温度を計ることを行った。
Reading Temperature の後半の記事では 1.温度を計る。2. 測定データをDropbox に転送する。 の2つのタスクで構成されている。
1. については解決済みです。
2. Raspberry Pi から Dropbox へのデータの転送は新しい試みです。
Dropbox-Uploader のインストールについて
次のWeb にインストール方法が書いてあります。
これに従ってインストールができた。注意点としてアクセスレベルを Full Dropbox にすることでした。
Raspberry Pi + Go!Link + 温度センサーの実験
機器構成: 1. Raspberry Pi 2. USB ハブ 3. Vernier Go!Link 4. Vernier 温度センサー
測定の Mathematica notebook
$MachineName
⇒ raspberrypi
link = Install["/home/pi/vernier/vernier"]
⇒ LinkObject["'/home/pi/vernier/vernier'", 66, 4]
getDeviceInfo[]
⇒ Go! Link,1:8,10,Stainless Temp,(C)
(* Dropbox-Upload *)
upload[filesourcepath_, savedir_String] :=
Run["/home/pi/Dropbox-Uploader/dropbox_uploader.sh upload " <>
filesourcepath <> " " <>
FileNameJoin[{savedir, FileNameTake[filesourcepath]}]];
(* Measureing *)
RemoveScheduledTask[ScheduledTasks[]];
file = "/home/pi/Desktop/temperaturedata.txt";
(* 2分ごとにデータをDropbox にアップロードする *)
task1 = CreateScheduledTask[upload[file, "/za_RaspberryPi/temperaturexperiment"], 120];
(* 10秒ごとに温度測定をする *)
task2 = CreateScheduledTask[
PutAppend[{DateList[AbsoluteTime[]], getSimpleMeasurement[]}, file], 10];
(* task の開始 *)
StartScheduledTask[{task1, task2}]
(* task の終了 *)
StopScheduledTask[{task1, task2}];
(* 後始末 *)
RemoveScheduledTask[ScheduledTasks[]];
温度データをプロットする
測定データtemperaturedata.txt は2分おきに Dropbox に書き込まれる。このデータを pc Mac で読み取りプロットしたのが次のグラフです。
(* Mac での data plot*)
ofile = "/Users/satouy/Dropbox/za_RaspberryPi/temperaturexperiment/\
temperaturedata.txt";
data = ToExpression[Import[ofile, "Lines"]];
Short[data, 5]
⇒ {{{2014,3,2,15,0,46.2907},68.2174},
{{2014,3,2,15,0,56.2953},67.9948},<<1202>>,
{{2014,3,2,18,22,34.8195},14.6603}}
data2 = DeleteCases[data[[All, {1, 2}]], {x__, y_} /; y < 10];
DateListPlot[data2, Joined -> False, PlotRange -> {0, 90}]
まとめ
- Raspberry Pi から Dropbox にデータを転送できた。
- Vernier 温度センサーを利用できた。
- Dropbox フォルダーからデータを読み取ってグラフに描くことができた。
- Dropbox のpublic folder に測定データを置けば公開することができる。授業で学生さんがアクセスしてデータ解析の演習問題として使えることが記事に書いてあった。確かにそう思います。