Usando python su un Raspberry Pi, come faccio a registrare video e continuo a leggere altri sensori contemporaneamente?

1

Per il mio sistema mi piacerebbe registrare costantemente, cosa che posso fare indipendentemente. Inoltre, ho bisogno di leggere costantemente alcuni sensori (usando SPI), che in modo indipendente posso anche fare.

Il mio problema attuale è la combinazione dei due compiti. Ho bisogno di registrare tutto il tempo, ma anche di leggere i sensori 10-50 volte al secondo.

Usando picamera e camera.start_recording () di solito è seguito da un ritardo sleep (). Ecco le soluzioni che ho intenzione di esplorare, ma speravo in alcuni suggerimenti e indicazioni prima di immergermi in ciascuna per diverse ore.

Poiché in pratica ho bisogno di registrare dall'inizio alla fine del programma, che dura diverse ore, stavo pensando di mettere tutte le mie funzioni di lettura del sensore dopo la .start_recording (), permettendo al programma solo di stop_recording () dopo il mio finale le condizioni del test sono state soddisfatte (per informazione del sensore).

Potrei provare a eseguire due programmi python, una registrazione e uno sensing. Credo che questo richiederebbe multi-threading? O multiprocessing?

Condividi le tue opinioni e i suggerimenti di altri approcci a questo problema.

    
posta A.S. 27.08.2018 - 22:26
fonte

1 risposta

-1

Il multithreading è un buon approccio a questo problema ma non è richiesto.

Logicamente ciò che puoi fare è chiamato cooperare multitasking.

Avere un ciclo con contatori di tempo per l'ultima volta che hai letto il sensore e quando hai scattato l'ultima immagine. Definisci costanti per quanto frequentemente devi catturare un'immagine da scansionare frequentemente devi leggere sensori. Finché c'è tolleranza enuf quando leggi (ci devono essere alcuni con qualsiasi approccio) dovresti essere tutto pronto.

Il multithreading può aiutarti a ottenere tolleranze più strette quando leggi. Inoltre, l'esecuzione simultanea di due programmi python può anche stringere le tolleranze temporali (come suggerito da te)

    
risposta data 28.08.2018 - 02:55
fonte

Leggi altre domande sui tag