Controllo motore cc con potenziometro

Ciao a tutti, dovrei controllare un motore cc . Questo è lo schema
motDC-pot e questo il programma, molto semplice

motorecc.ino (484 Byte)

il transistor è un tip122, la resistenza 1kOhm, il motorino è uno di quelli del kit elegoo, cioè questo

motor-cc-holder10

Ho due domande:

  1. La velocità di rotazione dovrebbe essere regolata col potenziometro, eppure, nonostante il monitor seriale mi scrive correttamente i valori quando giro il potenziometro, non mi sembra che il motore cambi velocità. A 0 è correttamente spento, ma poi tra 1 e 255, a me sembra che la velocità sia la stessa, non incrementa man mano...qualcuno ha idea da cosa potrebbe dipendere?

  2. Per ora ho fatto una prova e ho usato il motore che avevo nel kit, però in realtà a me servirebbe collegare un disco di qualche cm di raggioin compensato al motore e poi dovrei inscatolare il tutto. Quindi, avrei bisogno:
    a. il motore deve sopportare il peso del disco
    b. l'albero deve essere a vite, per poterci mettere il disco
    c. il motore deve avere un qualche supporto per fissarlo alla scatola (es. una scatola di derivazione esterna, o qualcosa di simile). Oppure, fissarlo a un'asta di legno che esce dalla scatola...insomma...dovrei fare un disco di newton....
    Sapete consigliarmi un motore che abbia queste 3 caratteristiche?

Grazie

:warning:
Ti segnalo che, nella sezione in lingua Inglese, si può scrivere SOLO in Inglese ... quindi, per favore, la prossima volta presta più attenzione in quale sezione metti i tuoi post; questa volta esso è stato spostato, da un moderatore della sezione di lingua Inglese, nella sezione di lingua Italiana ... la prossima volta potrebbe venire direttamente eliminato.
Grazie.

Il programma mettilo in chiaro
Io non scarico robe strane
Le leggo ma non le scarico

Ciao, ecco

const int potenziometro = 0;  // pin del potenziometro
const int motore = 9; // pin del motore
 
void setup() {
  // inizializza il motore come output
  pinMode(motore, OUTPUT);
 Serial.begin(9600);
}
 
void loop(){
  // Riporta il valore analogico da 0-1023 a 0-255
  byte valore = map(analogRead(potenziometro),0,1023,0,255);
  // Il motore gira con velocità proporzionale alla rotazione del potenziometro
  Serial.println(valore);
  digitalWrite(motore,valore);
}

DigitalWrite ??

Sei sicuro?

oddio hai ragione...
analogWrite....

per il modello sai consigliarmi qualcosa?

No, mi spiace

Grazie comunque!

Prova a vedere: https://www.amazon.it/s?k=flangia+albero+motore e se c'è un motorino con un albero di diametro adatto.

Grazie. Purtroppo, qualcosa che avevo visto con albero filettato, aveva pochi giri... per il mio scopo serve veloce

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.