About

Mycodo è un sistema open-source di monitoraggio e regolazione ambientale costruito per funzionare su computer a scheda singola, in particolare il Raspberry Pi.

Originariamente sviluppato per la coltivazione di funghi commestibili, Mycodo è cresciuto per fare molto di più. Il sistema è composto da due parti, un backend (demone) e un frontend (server web). Il backend esegue compiti quali l'acquisizione di misure da sensori e dispositivi e il coordinamento di una serie di risposte a tali misure, tra cui la capacità di modulare le uscite (commutare relè, generare segnali PWM, azionare pompe, commutare prese wireless, pubblicare/sottoscrivere a MQTT, tra le altre cose), regolare le condizioni ambientali con il controllo PID, programmare timer, catturare foto e trasmettere video, attivare azioni quando le misure soddisfano determinate condizioni e altro ancora. Il frontend ospita un'interfaccia web che consente la visualizzazione e la configurazione da qualsiasi dispositivo abilitato al browser.

Mycodo può essere utilizzato in diversi modi. Alcuni utenti si limitano a memorizzare le misure dei sensori per monitorare le condizioni a distanza, altri regolano le condizioni ambientali di uno spazio fisico, altri ancora scattano fotografie in movimento o in time-lapse, tra gli altri usi.

I controllori di ingresso acquisiscono le misure e le memorizzano nel database delle serie temporali InfluxDB. Le misure provengono in genere da sensori, ma possono anche essere configurate per utilizzare il valore di ritorno di comandi Linux Bash o Python, o equazioni matematiche, rendendo questo sistema molto dinamico per l'acquisizione e la generazione di dati.

I controllori di uscita producono modifiche ai pin di ingresso/uscita generale (GPIO) o possono essere configurati per eseguire comandi Linux Bash o Python, consentendo una varietà di usi potenziali. Esistono diversi tipi di uscite: semplice commutazione dei pin GPIO (ALTO/BASSO), generazione di segnali modulati a larghezza di impulso (PWM), controllo di pompe peristaltiche, pubblicazione MQTT e altro ancora.

Quando gli ingressi e le uscite sono combinati, i controllori di funzione possono essere utilizzati per creare anelli di retroazione che utilizzano il dispositivo di uscita per modulare una condizione ambientale misurata dall'ingresso. Alcuni ingressi possono essere abbinati a determinate uscite per creare una serie di applicazioni di controllo e regolazione diverse. Oltre alla semplice regolazione, i metodi possono essere utilizzati per creare un setpoint variabile nel tempo, consentendo di realizzare applicazioni come i termociclatori, i forni a rifusione, la simulazione ambientale per i terrari, la fermentazione o la stagionatura di alimenti e bevande e la cottura di cibi (sous-vide), per citarne alcune.

I trigger possono essere impostati per attivare eventi in base a date e orari specifici, in base alla durata del tempo o all'alba/tramonto a una specifica latitudine e longitudine.

Mycodo è stato tradotto in diverse lingue. Per impostazione predefinita, la lingua del browser determina la lingua da utilizzare, ma può essere sovrascritta nelle Impostazioni generali, nella pagina [Icona ingranaggio] -> Configura -> Generale. Se si riscontra un problema e si desidera correggere una traduzione o aggiungere un'altra lingua, è possibile farlo all'indirizzo https://translate.kylegabriel.com.