Go Down

Topic: ModelCraft Micro Servo funktioniert nicht! (Read 507 times) previous topic - next topic

Grooxy

Hallo,
Ich hab mir von Modelcraft (Conrad) einen micro Servo bestellt. Ich hab mir jetzt einfach mal aus einem Tutorial heraus den Sketch hochgeladen und richtig Angeschlossen, hat leider nicht funktioniert, hab aber bei einem anderen YouTuber gesehen wie er das an seinem Arduino angeschlossen hatte, das Video ging jedoch nur 13 Sekunden lang und er hat auf seinem Breadboard solche kleinen schwarzen leisten drauf gehabt (siehe Video), was ist das und wenn ich sie brauche wo krieg ich die?
Danke für eure Hilfe!

postmaster-ino

#1
Jan 10, 2018, 06:02 pm Last Edit: Jan 10, 2018, 06:03 pm by postmaster-ino
Hi

Zeigt her, Eure Füße, zeigt her, Eure Schuh' ... vll. packst Du, statt Dessen, den Sketch dazu?

Die schwarzen Leisten sind ... Stiftleisten ;) (werden dort aber nicht verwendet, in den 13 Sekunden).

Der Arduino mag es nicht gerne, wenn ER das Servo versorgen muß - eine separate Spannungsquelle lässt den Arduino länger leben.
Die GND müssen verbunden sein, da das Servo die Signale sonst 'nicht sieht'.

MfG

PS: Dein Servo braucht scheinbar gar keinen Strom - zumindest fand ich in dem üppigem Datenblatt nicht viel dazu.

uwefed

Die Stromaufnahme eines Servos scheint keine nützliche Information zu sein weil ihn kein Hersteller angibt.

Einen Microservo ohne Last kann man an Arduino auch für die Stromversorgung anschließen.

Wie hast Du, Grooxy den Servo angeschlossen?

Grüße Uwe

Grooxy

#3
Jan 10, 2018, 07:23 pm Last Edit: Jan 10, 2018, 08:48 pm by uwefed
Einmal den:
Code: [Select]
#include <Servo.h>
Servo myservo;
int val;

void setup()

 myservo.attach(9); 
 Serial.begin(9600);
}

void loop()
{
 val = analogRead(5);
 val = map(val, 0, 1023, 0, 180); 
 Serial.println(val);
 myservo.write(val); 
 delay(50);
}


Dann den:

Code: [Select]
#include <Servo.h>

Servo motor;

void setup()
{
 motor.attach(9);
}
void loop()
{
 motor.write(30);
 delay(1000);
 motor.write(120);
 delay(1000);
}

Grooxy

Die Stromaufnahme eines Servos scheint keine nützliche Information zu sein weil ihn kein Hersteller angibt.

Einen Microservo ohne Last kann man an Arduino auch für die Stromversorgung anschließen.

Wie hast Du, Grooxy den Servo angeschlossen?

Grüße Uwe
Pin 1 (also ganz rechts vom Servo) hab ich an Pin 9 angeschlossen, den in der mitte also wie am Foto der weiße, auf 5V, den letzten ganz links in rot an GND




HotSystems

#5
Jan 10, 2018, 07:35 pm Last Edit: Jan 10, 2018, 07:36 pm by HotSystems
Ich vermute, du hast den Servo falsch angeschlossen.
Rot und schwarz vertauscht.
Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. 8)

Grooxy

Ich vermute, du hast den Servo falsch angeschlossen.
Rot und schwarz vertauscht.

Okay, danke werd mal nachsehen!

Passt der Sketch zumindest?

HotSystems

Der Sketch ist für mich schwer lesbar. Es fehlen die Code-Tags, die den Sketch erst lesbar machen, auch für mobile User.
Aber der sieht soweit ok aus.
Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. 8)

ElEspanol

#8
Jan 10, 2018, 10:17 pm Last Edit: Jan 10, 2018, 10:17 pm by ElEspanol
Ausserdem nicht an Pin 9 dran, sondern an 8

Und wie gesagt, vertauscht.

servokabel so anschließen:
Rot 5V
Braun Gnd
Orange Signal Pin 9

Doc_Arduino

Hallo,

braun ... Masse
rot ........ +5V
orange ... PWM Signal

Das ist die allgemeine Farbkodierung vom JR Stecker.

Tschau
Doc Arduino '\0'

Messschieber auslesen: http://forum.arduino.cc/index.php?topic=273445
EA-DOGM Display - Demos: http://forum.arduino.cc/index.php?topic=378279

Grooxy


HotSystems

Evtl. hast du ja schon etwas gekillt.

Teste mal deinen Arduino mit einer Led und Widerstand die Pins ob die als Ausgang noch funktionieren.
Dazu verwendest du den Blink-Sketch und änderst den Led-Pin.
Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. 8)

Doc_Arduino

#12
Jan 12, 2018, 05:30 pm Last Edit: Jan 12, 2018, 05:30 pm by Doc_Arduino
Hallo,

wenn die Pins getestet sind, dann halte dich an das Servo Bsp. der Lib. Du kannst nicht einfach das delay nach belieben ändern. Das ist die Pulspause für das Servo. Standard sind 20ms, streng genommen ist das die Periodendauer. Wenn du Glück hast ist nur der eine Pin gekillt wurden vom Kabel vertauschen

Tschau
Doc Arduino '\0'

Messschieber auslesen: http://forum.arduino.cc/index.php?topic=273445
EA-DOGM Display - Demos: http://forum.arduino.cc/index.php?topic=378279

Grooxy

Könntest du mir dann vllt den richtigen sketch schreiben?
Danke!

MicroBahner

#14
Jan 13, 2018, 09:33 am Last Edit: Jan 13, 2018, 09:48 am by MicroBahner
Du kannst nicht einfach das delay nach belieben ändern. Das ist die Pulspause für das Servo.
Das stimmt nicht! Pulslänge und Pulspause werden von der Lib unabhängig vom Sketch erzeugt ( per Timer-Interrupt ). Die delay() bestimmen nur, wie oft die Pulslänge per motor.write verändert wird. Das ist zum Testen vollkommen in Ordnung. Ich vermute auch eher noch einen falschen Anschluß. Wie schon geschrieben ist es auf den Bild definitv fehlerhaft.
Gruß, Franz-Peter

Go Up