Modulazione PWM pilotare GPIO esterni al Raspberry (ESP8266)

Progetti domotici con il Raspberry .... con o senza il supporto di MeterN e 123Solar
Avatar utente
Flane
Messaggi: 2460
Iscritto il: 16/01/2016, 15:02

Re: Modulazione PWM pilotare GPIO esterni al Raspberry (ESP8266)

Messaggioda Flane » 03/01/2019, 23:07

Con una frequenza di 5Hz ed un range di 20 dovresti poter regolare a impulsi da 10ms (una semionda dei 50Hz) con un duty cycle che varia da 0 a 20 variandolo di una unità alla volta. (0,1,2,3......20).

E' meglio verificare con un oscilloscopio per essere sicuri. ;)


terribiledavide
Messaggi: 73
Iscritto il: 22/02/2017, 20:25

Re: Modulazione PWM pilotare GPIO esterni al Raspberry (ESP8266)

Messaggioda terribiledavide » 03/01/2019, 23:09

GRAZIE Flane,
ti aggiorno

terribiledavide
Messaggi: 73
Iscritto il: 22/02/2017, 20:25

Re: Modulazione PWM pilotare GPIO esterni al Raspberry (ESP8266)

Messaggioda terribiledavide » 07/01/2019, 10:57

ciao.
ho provato con 5 hz.
Ho verificato con Oscilloscopio però non credo sia corretto o probabilmente ho sbagliato l'interpretazione, mi spiego meglio.

Ho misurato la frequenza con lo strumento settato a 500 microS/cm.
il risultato mi da

- 4,4cm X 500 x 10(-3) = 0,0022s

f= 1/T = 1/0,0022 = 454 hz ??
il che non torna con la frequenza di 5hz che ho impostato.

può essere che siccome l'esp ha una cpu clock a 80 MHz mi vada a sballare il pwm a 5hz?

Avatar utente
Flane
Messaggi: 2460
Iscritto il: 16/01/2016, 15:02

Re: Modulazione PWM pilotare GPIO esterni al Raspberry (ESP8266)

Messaggioda Flane » 07/01/2019, 16:50

Purtroppo su questo non ti sò aiutare e ci sono impazzito anch'io con il Raspberry prima che ho trovato in rete la formula che lega la frequenza, il range ed il clock del PWM.

Fai qualche ricerca in rete .....

terribiledavide
Messaggi: 73
Iscritto il: 22/02/2017, 20:25

Re: Modulazione PWM pilotare GPIO esterni al Raspberry (ESP8266)

Messaggioda terribiledavide » 08/01/2019, 11:56

ciao,
purtroppo sembra che l'esp8266 non riesca a raggiungere una frequenza cosi bassa.

secondo te se uso un ciclo loop di questo tipo può crere problema al rele ssr?

void loop() {
digitalWrite(LED, HIGH); // turn the LED on (HIGH is the voltage level)
delay(150); // wait for a second
digitalWrite(LED, LOW); // turn the LED off by making the voltage LOW
delay(50); // wait for a second
}

per avere la stessa resa di duty al 75%.

A differenza del tuo pwm vedo che nel relè il led lampeggia sempre velocemente, con intensità diverse in base ai tempi di ON/OFF però lampeggia.
Può dargli problemi ?

Avatar utente
Flane
Messaggi: 2460
Iscritto il: 16/01/2016, 15:02

Re: Modulazione PWM pilotare GPIO esterni al Raspberry (ESP8266)

Messaggioda Flane » 08/01/2019, 15:41

E' normale che lampeggi.
La regolazione a treni d'onda infatti non si può utilizzare per l'illuminazione, ma solo per resistenza dove il "lampeggio" è ininfluente vista l'inerzia della resistenza.

Secondo me però pensare di fare una regolazione a treni d'onda con dei delay è un pò imprecisa ....
bisogna provare sempre con l'oscilloscopio, verificando l'uscita sinusoidale del SSR se effettivamente passano le semionde che ci sia aspetta.

Forse questo ti può interessare:

Codice: Seleziona tutto

pwm_multiplier = ESP8266_CLOCK/(range * pwm_freq);

L'ho trovato in questo script:
https://github.com/esp8266/Arduino/blob ... ring_pwm.c
Come vedi anche per l'ESP il clock centra ....

Come puoi vedere anche qui:
https://github.com/esp8266/Arduino/issues/1265

il range e la frequenza (o il periodo) pwm sono legati al clock come sul raspberry.
Sempre sopra si parla di un range di frequenza da 100Hz a 1kHz ...

terribiledavide
Messaggi: 73
Iscritto il: 22/02/2017, 20:25

Re: Modulazione PWM pilotare GPIO esterni al Raspberry (ESP8266)

Messaggioda terribiledavide » 08/01/2019, 15:56

anch'io avevo visto questi forum, pero resta da copire come inserire quel fattore di pwm_multiplier


terribiledavide
Messaggi: 73
Iscritto il: 22/02/2017, 20:25

Re: Modulazione PWM pilotare GPIO esterni al Raspberry (ESP8266)

Messaggioda terribiledavide » 08/01/2019, 16:09

si ma è incomprensibile non riesco a capire come usare quella libreria.
purtroppo sn 3 gg interi che ci sto sopra e nn vedo la luce
probabilmente è oltre le mie capacità

Avatar utente
Flane
Messaggi: 2460
Iscritto il: 16/01/2016, 15:02

Re: Modulazione PWM pilotare GPIO esterni al Raspberry (ESP8266)

Messaggioda Flane » 08/01/2019, 16:13

Ti capisco, ho perso nottate intere a capire il PWM del Raspberry .... e poi tutto si è risolto magicamente in un attimo quando ho trovato il funzionamento ed il legame fra le varie grandezze.... ;)

E' bastato uno script fatto bene di test del PWM in c, dove c'erano dei bei commenti ..... :D


Torna a “Domotica”

Chi c’è in linea

Visitano il forum: Nessuno e 4 ospiti