よろしくお願いします。
ラズパイで、電圧などのモニタリングを行いたいと思っているのですが、うまくいきません。
間違っている箇所がありましたら、ご指摘願います。
result.txt
に
年月日時分秒,電圧,電流,電力
といった形式で記録していきたいです。
V_A_W.py
python
1#coding utf-8 2import Rpi GPIO as GPIO 3import time 4import commands 5#電圧測定部分の関数 6def GetV(): 7 chek = commands.getoutput("i2cget -y 1 0x40 0x02 w") 8 return (int(check[4:6],16)*256+int(check[2:4],16))*1.25/1000 9#電流測定部分の関数 10def GetA(): 11 chek = commands.getoutput("i2cget -y 1 0x40 0x04 w") 12 if int(check[4:6],16)<128: 13 return (int(check[4:6],16)*256+int(check[2:4],16)) 14 else: 15 return (int(check[4:6],16)*256+int(check[2:4],16)-256*256) 16check = commads.getoutput("i2cset -y 1 0x40 0x05 0x0a 0x00 i") 17print str(GetV())+"_V,"+str(GetA())+"_mA,"+str(GetV()*GetA())+"_W" 18exit
これを
python V_A_W.py
だと
○_V,○_A,○_W
と出ます。
echo $(date '+%F-%H-%M-%S'),$(python V_A_W.py)
と実行すると、うまく表示されます。
しかし、
cron
に
- for i in 'seq 0 5 59'; do (sleep ${i}; echo $(date '+¥%F-¥%H-¥%M-¥%S'),$(python V_A_W.py) >> result.txt)& done;
と登録すると、
result.txt
に
年月日時分秒,
しか記録されません。
原因は何でしょうか?
また、
V_A_W.py
を
python
1#coding utf-8 2import Rpi GPIO as GPIO 3import time 4import commands 5 6print "Hello"
にした場合だと、
年月日時分秒,Hello
になります。
# /bin/bash echo $(date '+¥%F-¥%H-¥%M-¥%S'),$(python V_A_W.py)
という
hoge.sh
を作成し、
- for i in 'seq 0 5 59'; do (sleep ${i}; sh /home/pi/hoge.sh >> result.txt)
としても
年月日時分秒,
しか記録されませんでした。
#知りたいこと
pythonのプログラム、
cronの設定の仕方、
シェルスクリプト、
どこに問題がありそうですか?
また、
どうやれば解決できるでしょうか?
何卒ご教授いただけましたら幸いです。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。