QT SOLAR 愛島発電所
- 本日の発電量
- 3 kWh
- 現在の日射量
- 16 Wh/㎡
- 現在の外気温
- 20.4 ℃
(2024/09/14 07:26 更新)
QT SOLAR 愛島発電所
(2024/09/14 07:26 更新)
QT SOLAR 下増田発電所
(2024/09/14 07:18 更新)
QT SOLAR 北原東発電所
(2024/09/14 07:26 更新)
QT SOLAR 長久良辺発電所
(2024/09/14 07:20 更新)
QT SOLAR 白坂発電所
(2024/09/14 07:30 更新)
QT SOLAR 清水沢発電所
(2024/09/14 07:12 更新)
温度計(Temper)を使った温度計測プログラムをPerlから呼び出す方法の紹介です。
「Perlで作る〜」と言いつつ、cで書かれたソースを見付けてしまったのでそのまま利用することにします。
ソースコードは以下から取得。ありがとうございます。
gccやmakeは別途インストール必要。
$ sudo apt-get update $ sudo apt-get install build-essential
libusb-devも必要。
$ sudo apt-get install libusb-dev
ビルドします。
$ cd ./pcsensor-1.0.2 $ make
一応、これで実行ファイルができあがりますが、スーパーユーザーでないと実行できないかも知れません。
USBデバイスに適切な権限を与えるため、rulesファイルを設定します。
$ make rules-install
何をしているのかはmakeファイルを見て頂くとして、これにより一般ユーザーでも実行できるようになります。単にその場で試すだけなら。
$ sudo chmod -R 777 /dev/bus
以上で終わりですが、手許の「Temper」は「Fatal Error」を出しまくりしやがります。仕方ないので、ソースを少しだけいじります。
$ vi pcsensor.c
変更箇所は、最後のほう。
usb_release_interface(handles[i], INTERFACE1); usb_release_interface(handles[i], INTERFACE2); usb_reset(handles[i]); usb_close(handles[i]);
1行追加でやっていることは機器のリセットです。これで概ね安定します。
再度ビルドします。
$ make clean $ make
一方でPerlスクリプト。
#!/usr/bin/perl sub operation { my $r = readpipe "./pcsensor-1.0.2/pcsensor -c 2>&1"; chomp($r); if( $r =~ /^\d{4}\/\d{2}\/\d{2}\s+\d{2}\:\d{2}\:\d{2}\s+Temperature\s+(-?\d+\.?\d*)C$/){ print $1."\n"; } } &operation; exit;
太陽光発電所のPCS室で、温度計測に使っています。役に立ちます。エアコンも10年に一度くらいは壊れるでしょうから、そのときPCSまで巻き添えにならないよう、温度異常を検知したらメールで知らせる仕組みです。まあ、「Daikin D-irect」の利用で用は足りるのですが。
宮城県仙台市太白区長町一丁目2-11
[運営者]
[発電所]
本ウェブサイト上のQT SOLAR 発電所は、グループ会社の発電所も含まれます。