Tinker Forge Weather Station

Tinker Forge Weather Stationは,温度,湿度,気圧,照度を測定する.

Wolfram言語は,USBを通してのTinker Forge Weather Stationとの交信をサポートする.現在Macintosh,Windows,Linux,Raspberry Piでサポートされている.

Tinker Forge Weather Stationは,Mini USBコネクタを使用する.

デバイスを開く

    DeviceOpen["TinkerForgeWeatherStation"]

    Tinker Forge Weather Stationへの接続が開いたことを示すDeviceObjectを返す.

デバイスの設定

    Tinker Forge Weather Stationでコマンドを読み取ったり,書き込んだり,実行したりするためには,設定が必要である.ウェザーステーションは,デバイスに接続されている個々のbrickletのUIDを指定することで設定できる.

    DeviceConfigure[dev,{uid1 val1,uid2 val2,}]

    DeviceObject dev で指定されたウェザーステーションについて,i 番目のbrickletのUIDを値 vali に割り当てる.

    可能な uidi と関連のbricklet:

  • "AmbientLightBricklet"間接照明のbricklet
    "HumidityBricklet"湿度のbricklet
    "BarometerBricklet"気圧計のbricklet
    "LCDBricklet"20×4 LCDのbricklet
  • Windows,Macintosh,Linuxのデスクトップシステムにおいては,brickletのUIDはTinker Forge Brick Viewerインターフェースから読み取ることができる.
  • DeviceConfigure[dev,uidval]は,他のbrickletにはデフォルトのUIDを想定して,指定のbrickletのUIDのみを設定する.

データの読取り

    DeviceRead[dev]

    デバイスオブジェクト dev で指定されたウェザーステーションからの現在のデータを読み取り,使用可能なすべてのパラメータについての規則のリストを返す.

    DeviceRead[dev,param]

    パラメータ param を読み取る.

    DeviceReadTimeSeries[dev,{t,dt}]

    時間区間 dt におけるデータの読取りに基づいた時系列を,合計時間 t について生成する.

    DeviceReadTimeSeries[dev,{t,dt},param]

    パラメータ param を繰り返し読み取る.

  • DeviceRead[dev]は,規則のリスト("Temperature"->temp, "Humidity"->hum, "Pressure"->press, "Illuminance"->illum)を返す.
  • 使用できるパラメータには,"Temperature""Humidity""Pressure""Illuminance"がある.
  • 値はQuantityオブジェクトであり,それぞれの単位は,摂氏,パーセント,ミリバール,ルクスである.

データの書込み

    DeviceWrite[dev,{n,p,"string"}]

    行の番号 n と位置 p で始まる指定された文字列を,組込みのLCDスクリーンで表示するために,ウェザーステーションに書き込む.

    DeviceWrite[dev,"string"]

    指定の文字列をウェザーステーションに書き込む.

  • 行の番号と位置は,それぞれ0から3,0から19の整数値でなければならない.
  • DeviceWrite[dev,"string"]は,DeviceWrite[dev,{0,0,"string"}]に等しい.

コマンドの実行

    DeviceExecute[dev,"ClearLCDDisplay"]

    LCDスクリーンをクリアする.

リソースの終了と解放

例題

  (5)

TinkerForgeWeatherStationへの接続を開き,デバイスの設定を行う:

ウェザーステーションからデータを読み取る:

デバイスの接続を閉じる:

デバイスを接続したLCDに気象データを書き込む:

文字列をLCDに書き込む:

LCDをクリアして,行の番号と位置を指定する:

DeviceReadを0.1秒ごとに最高で10回まで予定し,データを動的に表示する:

予定されたタスクを削除し,接続を閉じる:

0.1秒ごとのデータを5秒間読み取り,デバイスの方向を読取り中頻繁に変えることによって,TimeSeriesを生成する:

測定された照度の値:

照度の変化をプロットする:

照度サンプルの平均値,最小値,最大値を計算する:

デバイス接続を閉じる: