Skocz do zawartości

Automatyczne uruchomienie kamery/skryptu pythona po włączeniu raspberry


A10

Pomocna odpowiedź

Cześć,

Chcę uruchamiać kamerkę i przesyłać obraz na ekran automatycznie po uruchomieniu raspberry pi zero.

Mam napisany program do wyświetlania obrazu z warunkowym wyjściem z programu przez naciśnięcie spacji

from picamera import PiCamera
from time import sleep
import readchar

camera=PiCamera()
camera.rotation = 270

camera.start_preview()
sleep(10)
while(1):
  sleep(1)
  x=readchar.readkey()
  if x == " ":
    break
camera.stop_preview()

przy uruchomieniu kodu przez terminal wszystko działa w porządku.

Do uruchomienia używam pliku *.desktop w folderze autostart w .config

[Desktop Entry]
Exec = python /home/pi/Desktop/nv.py

Przy uruchomieniu rpi włącza mi kamerkę na chwile (10 sekund ze sleepa) a potem wyłącza się i przechodzi do pulpitu.

Próbowałem już z rc.local i crontabem ale nie działa.

Jak temu zaradzić? Czy jest to w jakiś sposób powodowane przez breaka w kodzie?

Link do komentarza
Share on other sites

13 minut temu, A10 napisał:

Jak temu zaradzić?

Masz program który używa readchar, a readchar działa wyłącznie w konsoli/terminalu. Jak sobie wyobrażasz działanie tego czegoś? Chcesz nacisnąć spację i program ma przestać działać? Jakie okno ma być aktywne w czasie naciskania tej spacji? Najprościej - uruchomić program w terminalu - np. dodaj do aktywatora linijkę:

Terminal=true

W tej sytuacji jaką masz program wywołuje readchar.readkey(), funkcja stwierdza że nie ma terminala i rzuca wyjątkiem, w efekcie program kończy się błędem. Ty tego nie widzisz, bo program nie ma gdzie wyświetlić komunikatu (to znaczy gdzieś go wyświetla, ale Ty tego nie widzisz). I żaden break nie jest tu winien, bo program nawet do niego nie dochodzi...

 

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.