Ich betreibe eine Rpi W (Rbian Jessie), wie ein Timelapse-Countdown-System mit dem folgenden Skript, mit dem Bild jede Minute und Schlaf, wenn eine Schaltfläche ausgeschaltet ist. Das Programm überprüft die Taste alle 5 Sekunden.python - Wie zu springen os.system() Prozess
# This Python file uses the following encoding: utf-8
from time import sleep
from picamera import PiCamera
import os
import time
import RPi.GPIO as GPIO
import picamera
import datetime as dt
GPIO.setmode(GPIO.BCM)
GPIO.setup(17, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
os.system('sudo python /home/pi/log.py')
check = GPIO.input(17)
while check == 0: #si l'état initial du bouton = 0
check = GPIO.input(17)
print(check)
sleep(5)
while check == 1: #si l'état initial = 1
with picamera.PiCamera() as camera:
camera.resolution = (1280, 720)
sleep(1)
t1 = dt.datetime.now().strftime('-%d_%m_%Y-%H_%M_%S')
t2 = 'IMG'+ t1
camera.capture('/home/pi/Pictures/%s.jpg' % t2)
print('Captured %s' % t2)
sleep(5)
check = GPIO.input(17)
print(check)
sleep(5)
check = GPIO.input(17)
print(check)
sleep(5)
check = GPIO.input(17)
print(check)
sleep(5)
check = GPIO.input(17)
print(check)
sleep(5)
check = GPIO.input(17)
print(check)
sleep(5)
check = GPIO.input(17)
print(check)
sleep(5)
check = GPIO.input(17)
print(check)
sleep(5)
check = GPIO.input(17)
print(check)
sleep(5)
check = GPIO.input(17)
print(check)
sleep(5)
check = GPIO.input(17)
print(check)
sleep(5)
check = GPIO.input(17)
print(check)
sleep(4)
check = GPIO.input(17)
print(check)
while check == 0: #si l'état initial du bouton = 0
check = GPIO.input(17)
print(check)
sleep(5)
Ich bin sicher, dass das Skript ist ein Greuel ...
Aber das ich tun möchte, ist: rufen Sie ein anderes Skript namens log.py (Monitor T ° und Zeit/min). Das Hauptskript stoppt jedoch nach der Zeile: # os.system ('sudo python /home/pi/log.py') ... Das Skript läuft ohne diese Zeile korrekt.
Kann jemand etwas darüber wissen?
Können Sie den Code für 'log.py' angeben? – MLavrentyev
Versuchen Sie, ein Python-Skript zu erstellen, das nur 'os.system ('sudo python /home/pi/log.py')' aufruft - Sie werden es leichter haben, das zu debuggen. – dimo414
Und mit "* das Hauptskript stoppt *" was meinst du? Stürzt es ab? Hängend? Gibt es eine Fehlerausgabe? Ist das 'log.py'-Skript ausgeführt (Ausführen von' ps aux', um alle laufenden Programme zu sehen)? – dimo414