忍者ブログ

設備のマニアどっとこむ

IoT開発、設備・DIYのブログ!

ラズパイからAWSへ温湿度CSVのアップロード

今回はかなりオーソドックスなIoTをやってみようかと思います。前回はAWSへの画像のアップロードだけだったんですが、今度はHPまで作ってそこからCSVをダウンロードできるようにしてみます。 

DHT11を使いました。3本足はそれぞれ5V、GND、14ピンに接続します。


ラズパイからCSVファイルを出力できるようにします。
import time
import datetime
import dht11
import RPi.GPIO as GPIO
import csv
Temp_sensor=14
def main():
  GPIO.setwarnings(False)
  GPIO.setmode(GPIO.BCM)       
  instance = dht11.DHT11(pin = Temp_sensor)
  while True:
       
        result = instance.read()
        print"Temperature =",result.temperature,"C"," Humidity = ",result.humidity,"%"
        time.sleep(2)
        with open('dht.csv','a') as f:
           if result.temperature > 0:
            writer = csv.writer(f)
            writer.writerow([datetime.datetime.now(),result.temperature,result.humidity])
           
        f.close()
print('done. see dht.csv')
            
if __name__ == '__main__':
  try:
    main()
  except KeyboardInterrupt:
    pass
これでdht.csvというCSVファイルができました。
このファイル前回の要領でS3へアップロードしていきます。
前回は画像ファイルtest.jpgだったものをdht.csvへ変更するだけでOKです。
(同じフォルダに入れる必要があります)

今度はAWS側の設定です。

S3にindex.htmlファイルを作って公開できる設定にします。




パブリックアクセスをEvery Oneにするとだれでもアクセス可能になります。
アップロードしたファイルを同じバケットにしてhtmlで関連付けました。

こんな具合でできました。CSVがダウンロードできるはずです!


3/31 0のデータが多かったためコード修正しています。







拍手[0回]

PR

コメント

翻訳(Translate)

プロフィール

HN:
佐々木 雅史
性別:
男性
自己紹介:
2021年 ラズパイ、M5stackを用いたIoT開発を専門で受注するアルティメンテを設立。代表を務める。
・2020年ラズパイコンテスト優良賞受賞
・設備系資格多数(電験3種、消防設備士甲4、2級ボイラー技士、危険物乙4、電工2種、技術士補(電気・電子)、エネ電、フォークリフトなど)

AD

カレンダー

02 2024/03 04
S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31