Dovrebbe venire:
uscita da filtro 1 (r1-c1-r2-c2) 1.25 v
uscita da filtro 2 (r6-c3-r7-c4) 2.5 v
uscita da filtro 3 (r11-c5-r12-c6) 3.75 v
uscita da filtro 4 (r16-c7-r17-c8) 5 v
l'opamp aumenta a 5v le uscite e pilota il transistor
pwm 25% -> L1 on, altri off
pwm 50% -> L2 on, altri off
pwm 75% -> L3 on, altri off
pwm 100% -> L4 on, altri off
Ho messo 2 r in serie cosi ho:
12.68 Kohm (misurato con multimetro)
c1 100 nF a lenticchia
Dovrebbe passare solo < 125.6 Hz però passa tutto :~ sbaglio io o hanno troppa % le resistenze/il condensatore ?
void setup()
{
pinMode(11, OUTPUT);
digitalWrite(11, LOW);
Serial.begin(9600);
Serial.println("Hello Moto TUNZ TUNZ TUNZ");
}
void loop()
{
if (Serial.available())
{
byte sr = Serial.read();
switch (sr)
{
case 49:
Serial.println("25%");
analogWrite(11, 63);
break;
case 50:
Serial.println("50%");
analogWrite(11, 127);
break;
break;
case 51:
Serial.println("75%");
analogWrite(11, 190);
break;
case 52:
Serial.println("100%");
analogWrite(11, 255);
break;
default:
Serial.println("0%");
digitalWrite(11, LOW);
}
}
}
che intendi per passa tutto ? hai un oscilloscopio per controllare visivamente ?
perche' dici di aspettarti che passino frequenze inferiori (hai scritto <) a 126Hz, questo e' un filtro passa banda, quindi tuto cio' che e' pre o post 126 viene attenuato, ma non bloccato del tutto.
attenua 6 dB per ottava
Ho fatto solo la parte passa basso per provare quindi dovrebbero passare solo < 125.6 Hz
Non ho un oscilloscopio ma se taglia > 126 Hz con un multimetro messo dopo non dovrei vedere max 1.25v al 25% di pwm e 0 o poco più con pwm >30% ?
il pwm e' a frequenza fissa, i tuoi filtri passa banda come vorresti usarli ? dovresti ragionare sulla tensione prodotta su una resistenza, non sulla frequenza di taglio di un passa banda
Devo mettere:
Un lcd su uno shift register
un sensore per il telecomando
un buzzer
2 optoisolatori per comandare una cam
un sensore di temperatura
3 motori, 2 sono dc controllati da un l298, i 2 enable li collego assieme ma servono cmq 4 pin pwm
uno stepper
6 fine corsa
MCP23017.. chip I2C con 16 porte I/O
in 8 porte ci colleghi l'LCD direttamente ( si trovano anche le librerie )
nelle restanti 8 porte ci metti i fine corsa e il buzzer.
Quindi tutta questa roba la gestisci in I2C con solo due pin (SDA e SCL )
Ho anche un'altro shift register potrei quindi usarne 2 in cascata per gli out, i finecorsa posso metterli sull'analogico con un partitore e leggere V diversi per ogniuno.
Vorrei però capire se è possibile fare:
controllo frequenza 555 con arduino e non con un pot -> filtri -> amp -> out
un 555 ( in configurazione astabile ) lo puoi controllare da arduino entrando sul pin 5 ( control voltage ) quello che normalmente si collega a massa con un condensatore.
Usi un pin PWM di arduino, seguito da un filtro passabasso , per generare una tensione.
Ma che frequenze volevi generare ?
mica ho capito cosa vuoi combinare..
parrebbe:
Che tu voglia con un pin di arduino generare 4 frequenze. Che poi con il circuito postato all'inizio le riconosca e possa ricavarne 4 uscite digitali.
Edit: Cavolo, solo ora faccio caso al titolo del post...
E comunque non e' che generare quatto frequenze sul pin PWM hai bisogno di fare chissa' cosa. Usi la libreria tone(pin, frequency) e le generi
Cmq credo che nessuno adotterebbe una soluzione come quella che vuoi fare tu per avere 4 uscite, se e' una questione didattica allora va bene, altrimenti ce ne sono altre come lòe gia' citate, i2c o shiftregister
lui vuole usare una configurazione passa banda, perche' vuole 4 on-off
se togliesse il passabasso usando la frequenza massima si accenderebbero tutte e 4 le uscite