INSIGHT

情報・インサイト

RasberryPiを使用したIOT開発(第2回)

2019.03.05

おまたせしました!!【RasberryPiを使用したIOT開発】第2回となります!

※第1回目をまだ読めていないという方は、こちらもご覧くださいね↓
https://whizz-tech.3good-house.com/wp/1813/

天気データを取得し、LEDに反映する。

今回は第1回で設定したLEDの点滅に続き、電気データを取得して、その結果に応じてLEDの点灯回数を変化させます。

配線

前回と同じです。

天気データの取得

下記のコードを使用し、天気データを取得します。

今回は固定で大阪の住所を使用しますが、次回以降で現在位置のGPS情報から天気データを取得する予定です。

詳細は以下です。

import RPi.GPIO as GPIO
from time import sleep
import requests
import pprint
 
r = requests.get('http://weather.livedoor.com/forecast/webservice/json/v1?city=130010')

r_data = r.json()

data = r_data['forecasts']

LED

取得した天気によってLEDの点灯回数を変更します。

晴れ:1回

曇り:2回

雨: 3回

詳細は以下です。

# -*- coding: utf-8 -*-

import RPi.GPIO as GPIO
from time import sleep
import requests
import pprint
 
r = requests.get('http://weather.livedoor.com/forecast/webservice/json/v1?city=130010')

r_data = r.json()

data = r_data['forecasts']

dic = {'晴れ':1, '曇り':2, '雨':3}
count_value = dic[data[0]['telop']]

GPIO.setmode(GPIO.BCM)
GPIO.setup(22, GPIO.OUT)

while count_value > 0:
    GPIO.output(22, GPIO.HIGH)
    sleep(0.5)
    GPIO.output(22, GPIO.LOW)
    sleep(0.5)
    count_value = count_value-1

そして、これを実行することで天気データと連動して、LEDの点灯回数を変更させることができます。

#晴れのち曇りなど、細かい天気には対応できていません。。。

#こちらについては次回以降にLCDを使用して実際に取得したデータを表示させてみたいと考えています。

 

今回は以上となります。

ここまで読んでいただきありがとうございました。

WORKS

導入事例

ウィズテクノロジーは大阪を拠点に、システム開発の分野で20年の実績を持つパートナー企業です。
業務効率化やDX支援など、さまざまな課題にワンストップで対応。
経験豊富なエンジニアが、企業の成長を技術面からしっかりサポートします。

導入事例一覧を見る
導入事例一覧を見る

RECRUIT

採用情報

未来に、価値ある選択を。

All WhizzTechnologyは、期待を超える価値をともにつくり、より良い未来へ導く仲間を募集しています。