今回は、その他応用について説明します。
AC100Vのオンオフ
”ソリッド・ステート・リレー(SSR)キット 25A(20A)タイプ”を今回LEDオンオフ用に使用したGPIO17(11)に下記の様につなげは、AC100V電灯のオンオフが出来ます。Raspberry PIの3.3Vの出力でAC100Vのオンオフが出来るのは貴重です。
人感センサー
”BISS0001 人体赤外線感応モジュール”。これを使えば、人を感知することが出来ます。今回は、RTCを割り込みに使用しましたが、このセンサーの出力を割り込みに使えば人を認識した時、発動するアプリが出来ます。
温度湿度センサー
”AM2320を使う”はI2Cの温度湿度センサです。リンク先ではESP32で動作させています。Pythonで書き直すと、下記の様になります。これは温度と湿度の測定が出来ます。
import RPi.GPIO as GPIO
import smbus
bus = smbus.SMBus(1)
try:
bus.read_i2c_block_data(0x5c,0,1)
except:
pass
bus.write_i2c_block_data(0x5c,0x03,[0x00,0x04])
_data = bus.read_i2c_block_data(0x5c,0,6)
hu = (_data[2] * 256 + _data[3]) / 10
flg = 1
if (_data[4] & 0x80) != 0: flg = -1
_data[4] &= 0x7f
tp = (_data[4] * 256 + _data[5]) /10 * flg
print("Hu:%f" % hu)
print("temp:%f" % tp)
IPアドレスを固定する
今回は、サーバをホストName、”raspberrypi.local:8080″でアクセツしましたが、DNSの調子が悪いのか上手く繋がらない事が有りました。IPアドレスを固定したい場合、/etc/dhcpcd.confを修正します。これでIPを固定出来ます。
/etc/dhcpcd.conf
interface wlan0
static ip_address=[設定したい固定IPアドレス]/24
static routers=[デフォルトゲートウェイのIPアドレス]
static domain_name_servers=[DNSサーバーのIPアドレス]
ブラウザのクエリを表示させない
現在、HPのボタン等を押した場合、ブラウザのURLにクエリが表示されます。これはプログラムのデバック用に使っていたのですが、プログラムが出来ると意外と邪魔です。
このクエリを表示させない様にするには、JSファイルの最後に、”history.pushState(null,null,’/’);”を追加します。下記は今回使用したJSファイルですが、ファイルの最後に”history.pushState(null,null,’/’);”を追加すれば、クエリは表示されません。
http_server_06.js
..........
}
function onBtn_Set_Inter() {
var a;
var str="";
str += (document.getElementById(String(2)).value + ",");
str += document.getElementById(String(3)).value
document.getElementsByName('4')[0].value=str;
}
history.pushState(null,null,'/');">