yama286です
9/23以前に温度センサDS18B20とLCDの組み合わせで、表示を試みましたがうまくいっていません。そこで、秋月電子のELを購入し、下記のURL
https://www.itmedia.co.jp/news/articles/1902/22/news025_2.html
“ラズパイで作る「気温・湿度・気圧センサー」 有機ELディスプレイを取り付け (2/2)”
の記事を参考に下記組み合わせで再チャレンジしてみましたがうまくいきません。
センサー :BME280気温・湿度・気圧センサー
EL表示器 :SO1602AWGB(16*2) 秋月電子
標準開発環境 :Thonny Python IDE、LXTerminal
なおこの組み合わせは、上記記事の使用機器と同一です。
1.不具合内容
BME280センサーのThonny Python IDEへの温度・湿度・気圧表示は正常、またSO1602AWGB表
示器への文字表示も正常です。
ところが上記URLに載っているサンプルプログラム(後述)を実行すると次のエラーが出ます。
1)LXTerminal
BME280センサーのThonny Python IDEへの温度・湿度・気圧表示は正常、またSO1602AWGB表示器への文字表示も正常です。
ところが上記URLに載っているサンプルプログラム(後述)を実行すると次のエラーが出ます。
attributeerrorが出ています。
2)Thonny Python IDE
importerrorが出ています。
2.サンプルプログラム sokuteikekka.py
次のプログラムは /home/pi/programs/に入れています。
#!usr/bin/env python # -*- coding: utf-8 -*- import smbus2 import time import bme280 import so1602 #パラメーターの設定 port = 1 address = 0x76 bus = smbus2.SMBus(port) I2C_BUS_NUM = 1 i2c = bus data = 0x40 address2 = 0x3e command = 0x00 bme280.load_calibration_params(bus, address) calibration_params = bme280.load_calibration_params(bus, address) data = bme280.sample(bus, address, calibration_params) so1602.setaddr(0x3c) # LCD初期化 so1602.command(0x0c) so1602.command(0x01) # 気温と湿度、圧力のデータ temp = str(round(data.temperature, 1)) hum = str(round(data.humidity, 1)) press = str(round(data.pressure, 1)) # LCD表示 so1602.command(0x80) so1602.write("T=" + temp + "C") 9 so1602.command(0x89) so1602.write("H=" + hum + "%") so1602.command(0xa0) so1602.write("P=" + press + "hPa") print ("Temperature : %s C" % temp) print ("Humidity : %s %%" % hum) print ("Pressure : %s hPa" % press)
3.依頼事項
Q1. “ラズパイで作る「気温・湿度・気圧センサー」 有機ELディスプレイを取り付け (2/2)”の
記事と同じ機器構成なのになぜエラーが出て動かないのでしょうか?
Q2.pathは特別に設定する必要がありますか?
Q3.pythonのバージョン或はインストール先が違うのでしょうか?
はっきり覚えていませんが、
/usr/local/lib/python2.7/dist_packages
と
/usr/local/lib/python3.5/dist_packages
違っていました。
それぞれ単独では動くのに、ELに表示するようにするとエラーになるのはなぜでしょうか?
以上よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。