Raspberry Piにカメラと人感センサーを繋いで、感知したときに画像を撮るプログラムを本を参考にして実効しました。
python
1import picamera 2 3import time 4import RPi.GPIO as GPIO 5 6PICTURE_WIDTH = 800 7 8PICTURE_HEIGHT = 600 9 10SAVEDIR = "/usr/share/nginx/www/camera/pictures/" 11 12INTAVAL = 60 13 14SLEEPTIME = 5 15 16SENSOR_PIN = 25 17 18GPIO.cleanup() 19 20GPIO.setmode(GPIO.BCM) 21GPIO.setup(SENSOR_PIN, GPIO.IN) 22cam = picamera.PiCamera() 23cam.resolution = (PICTURE_WIDTH , PICTURE_HEIGHT) 24 25 26st = time.time() - INTAVAL 27 28while True: 29 if (GPIO.input(SENSOR_PIN) == GPIO.HIGH) and (st + INTAVAL < time.time() ): 30 31 st = time.time() 32 33 filename = time.strftime("%Y%m%d%H%M%S") + ".jpg" 34 35 save_file = SAVEDIR + filename 36 37 cam.capture(save_file) 38 39 time.sleep(SLEEPTIME) 40
昨夜はこちらでエラーが出なかったんですが、本日実行したところ下記のようなエラーが出ました
cam.py:18: RuntimeWarning: No channels have been set up yet - nothing to clean up! Try cleaning up at the end of your program instead! GPIO.cleanup() Traceback (most recent call last): File "cam.py", line 37, in <module> cam.capture(save_file) File "/usr/lib/python2.7/dist-packages/picamera/camera.py", line 1377, in capture encoder.start(output) File "/usr/lib/python2.7/dist-packages/picamera/encoders.py", line 1024, in start super(PiCookedOneImageEncoder, self).start(output) File "/usr/lib/python2.7/dist-packages/picamera/encoders.py", line 392, in start self._open_output(output) File "/usr/lib/python2.7/dist-packages/picamera/encoders.py", line 338, in _open_output output = io.open(output, 'wb', buffering=65536) IOError: [Errno 13] Permission denied: '/usr/share/nginx/www/camera/pictures/20160825054457.jpg'
line 1377などそんなに長いコードを書いていないのになぜ表示されるのでしょうか?
根本的な原因はなんでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/08/25 10:36