Geschwindigkeitseinstellung DC-Motor mit Poti

Hallo,
ich würde gerne mit einem Arduino Uno einen DC-Motor mit einem L293D betreiben und über ein Poti die Geschwindigkeit einstellen.
Leider kann ich das ganze momentan noch nicht in die Praxis umsetzen, daher wollte ich fragen ob jemand mal eben über meine Schaltung und den Code schauen könnte?

int pinA = 7;
int pinB = 8;
int pinPWM = 9;

int sensorValue = 0;
int potiStellung = 0;

void setup()
{
  pinMode(pinA, OUTPUT);
  pinMode(pinB, OUTPUT);
}

void loop()
{
  
  sensorValue = analogRead(potiStellung);
  
  digitalWrite(pinA, HIGH);
  digitalWrite(pinB, LOW);
  analogWrite(pinPWM, sensorValue);
  
}

Zudem hätte ich noch eine Frage. Welche Möglichkeiten gibt es die Geschwindigkeit von dem Motor auszulesen? Ich hatte drüber nachgedacht entweder einen Encoder zu verwenden oder das ganze über eine Lichtschranke zu machen.

Gruß

Hallo,

der Code sieht soweit OK aus.
Wie genau willst Du denn die U/min haben und wie schnell dreht sich der Motor denn maximal ?

Hallo,
danke für deine Antwort.

Es ist alles noch sehr theoretisch, daher ist die Auswahl des Motors bzw der benötigten Leistung noch offen. Fest steht aber das er über zwei Zahnräder einen Bohrer antreiben soll, der so ungefähr 20-30 Rpm haben soll.

Die Anzeige müsste nicht unbedingt hochgenau sein, aber zumindest so dass man einigermassen vernünftige Werte zur Orientierung bekommt.

Bei den geringen Umdrehungszahlen würde ich es eher mal mit einen Stepper-Motor versuchen.
Dafür gibt es dann gleich auch fertige Motortreiber für kleines Geld in kleinen Dimensionen. Z.B. so was hier:

Wie gesagt auch (sehr) viel billiger zu bekommen.
Nächster Vorteil wäre, das es dafür fertige Arduino-Libs und Sketche gibt, die man für sich selbst dann ein wenig abwandeln kann.

naja ... einen Bohrer würde ich nun nicht direkt an einem Schrittmotor betreiben wollen ... da brauchts schon ordentlich Drehmoment und dementsprechend leistungsfähige Motoren wären notwendig. Aber auch die Idee mit der Zahnrad-Übersetzung ist suboptimal: üblicherweise werden Bohrmaschinen über Keilriehmen angetrieben. Das hat den Vorteil, dass der Keilriehmen ggf. "durchrutscht", wenn sich der Bohrer mal festfrist. Da Du mit 20-30 RPM bohren willst, ist das entweder ein echt dickes Ding oder eher eine Reibahle. Wenn dicker Bohrer, dann würde ich auf alle Fälle zum Riehmentrieb raten.

Für die Drehzahlmessung würde ich sowohl an die Welle des Bohrers als auch vielleicht zusätzlich an die Motor-Welle über eigene Sensoren messen. So bekommst Du zum einen die absolute Drehzahl des Bohrers (und kannst damit die gewünschte Schnittgeschwindigkeit regeln) als auch des Schlupf des Antriebes. Zusätzlich kannst Du bei zu starker Abweichung zwischen tatsächlicher und theoretischer (aus der Motordrehzahl berechneter) Bohrer-Drehzahl kannst Du so auch eine mechanische Überlastung feststellen.