Re: stima orari alba e tramonto a date coordinate geografiche (più data calendario)

From: Franco <inewd_at_hotmail.com>
Date: Sun, 16 Aug 2020 11:34:53 +0200

On 08/15/20 17:47, Soviet_Mario wrote:

> La mia intenzione sarebbe aggiungere un filtro a priori al programma di
> controllo delle sonde termiche (quelle dei pannelli solari, quelle della
> fornace no, ovviamente, dovrebbe fare un polling continuo) che ipso facto
> escluderebbe dal polling le sonde pannelli SE IL SOLE PER RAGIONI
> ASTRONOMICHE NON È NEMMENO SOPRA L'ORIZZONTE.
Perche' vuoi evitare la misura della temperatura se il sole non e` sopra
l'orizzonte? Complichi inutilmente il programma per non risparmiare
nulla! Una misura di temperatura ogni cinque minuti (o intervallo
comunque lungo perche' e` un sistema termico con poca potenza in gioco)
non fa risparmiare potenza di calcolo, potenza elettrica o memoria, dato
che non serve memorizzare i valori.

Se sei interessato comunque conoscere l'ora approssimativa del sorgere e
tramonto del sole (per ragioni accademiche ) allora ci sono diverse
soluzioni, che dipendono anche da quanto vuoi ottenere.

Supponiamo che voglia un impianto che puoi vendere e non saprai dove
sara` installato. Serve un sistema programmabile sul campo in cui
introduci la posizione e il programma calcola le due ore che vuoi: good
luck! Bisogna usare le librerie matematiche di calcolo in floating
point. Dovendo fare i conti una volta al giorno non usano molto la CPU,
ma l'occupazione di memoria e` elevato.

Altra possibilita` e` un sistema personalizzabile fuori linea. Sapendo
dove sara` montato l'impianto, con un programma fuori linea calcoli le
ore del sorgere e del tramonto per quattro anni in modo preciso, e poi
le approssimi con funzioni piu` o meno complicate e carichi i
coefficienti delle approssimazioni sul microcontrollore.

L'approssimazione potrebbe essere la somma di due sinusoidi, come
suggerisce Fabri, ma questo richiede che debba valutare delle funzioni
trigonometriche, oppure puoi fare una approssimazione con polinomi di
Chebysheff, e devi solo calcolare polinomi, oppure ancora una look up
table con interpolazione lineare o quadratica: probabilmente questa
soluzione e` la migliore in termini di quantita` di calcoli e
complicazione del programma.

Con le look up table si riesce facilmente a usare l'aritmetica intera,
mentre quando ci sono di mezzo funzioni piu` complicate e` ancora
possibile usare l'aritmetica intera ma ridurre il problema a intero,
facendo attenzione alla dinamica e agli errori numerici, non e` banale.

Infine una osservazione pratica. Per poter usare le ore del sorgere e
tramonto serve sapere che ora e`. Gli oscillatori a basso costo che
tengono l'ora nei sistemi a micro possono avere degli errori di qualche
secondo al giorno, che su un anno puo` dare errori di ben oltre 10
minuti! Bisgna prevedere un oscillatore preciso e stabile oppure la
possibilita` di rimetterlo periodicamente in passo.

DA NOTARE CHE TUTTA QUESTA CHIACCHIERATA E` "ACCEDEMICA": molto
probabilmente NON SERVE conoscere l'ora del sorgere e tramonto del sole
per evitare qualche misura!

-- 
Wovon man nicht sprechen kann...
-- 
This email has been checked for viruses by AVG.
https://www.avg.com
Received on Sun Aug 16 2020 - 11:34:53 CEST

This archive was generated by hypermail 2.3.0 : Fri Nov 08 2024 - 05:09:59 CET