❖Ctrl-Cが押された後、実行する処理を記述する。
❍ Ctrl-Cを押した後、危険防止のためにリレー回路を遮断する等の処置。❍ whileループのプロセス中、Ctrl-Cが押されるとリレー回路を遮断して終了する。
#############################################
# -*- coding:utf-8 -*-
import signal
import sys
#
#---ラズベリーパイの入出力ピン指定---
#---入力/出力/プルアップ/プルダウン/フローテングなど---
import wiringpi as wp
wp.wiringPiSetupGpio()
#
out_pin_PS = 17
out_pin_PV = 27
p_down = wp.GPIO.PUD_DOWN#プルダウンの場合。
p_up = wp.GPIO.PUD_UP#プルアップの場合。
p_off = wp.GPIO.PUD_OFF #フローテングの場合。
wp.pinMode(out_pin_PS, wp.OUTPUT)#17ピンを出力にする。
wp.pinMode(out_pin_PV, wp.OUTPUT)#27ピンを出力にする。
#-------------
def handler(signal, frame):
wp.digitalWrite(out_pin_PS, 0) #0=電源回路リレーオフ。1=ON。
wp.digitalWrite(out_pin_PV, 0) #0=太陽光パネルリレーオフ。
print('電源回路と太陽光パネル回路を遮断してシステムに復帰しました。')
sys.exit(0)
signal.signal(signal.SIGINT, handler)
#-------------
while(True):
Main program....
#############################################
#--------------------------
❍ while(True):の上に記述しておく。
❍ Ctrl-Cを押すと、電源回路と太陽光パネル回路を遮断してシステムに復帰しました。
を表示して システムに復帰する。
参考サイト:
❍ PythonでCtrl-Cを押した際の処理を書く。
0 件のコメント:
コメントを投稿