In dem anderen Thema ging es ja auch schon lang und breit um dieses Problem. Daher ist der Vorwurf des Crossposting nicht sooo weit hergehohlt.
Konntest du mit meinen Tipps was anfangen? Wie gesagt sollte ein Programm zum Ansteuern von Servos funktionieren. Bevor der Regler reagiert muss aber erstmal eine "Initialposition" angefahren werden (entweder Mitte oder Anschlag unten)
Alles ist möglich. Unmögliches dauert nur etwas länger!
Trotzdem sollte dir klar sein, dass dir hier niemand etwas entwickeln wird. Ist eigentlich auch unmöglich, wenn man nicht die Teile, die du hast, bei sich liegen hat.
Für einen Fahrtenregler brauchst du eine Versorgungsspannung für den Motor (vom Motor abhängig) und das Steuersignal, was eine spezielle Form von PWM ist, siehe auch hier. Da findest du sogar Beispielcode. Wichtig wird es jedenfalls dafür, sich mit Timern auseinanderzusetzen.
Hallo
Das stimmt so ja nicht. Projekte die mich selbst interessieren greife ich auch ab und zu mal auf und helfe bei der Entwicklung.Trotzdem sollte dir klar sein, dass dir hier niemand etwas entwickeln wird.
Zum Topic kann ich eigentlich nur sagen, dass alles wichtige bereits gesagt ist. Der Regler möchte zum richtigen Zeitpunkt ein Servosignal. Wie man das bereitstellt kann man sich recht einfach ergoogeln, weil sowohl das verwendete Board wie auch die Fahrtenregler im Web prima dokumentiert sind:
http://www.google.de/search?q=+Fahrt...uino+ansteuern
Gruß
mic
Bild hier
Atmel’s products are not intended, authorized, or warranted for use
as components in applications intended to support or sustain life!
Ja gut, Ausnahmen bestätigen die Regel. Allerdings sieht wohl niemand so recht ein, jemandem anderem die Arbeit abzunehmen, den er noch nichtmal persönlich kennt.Das stimmt so ja nicht. Projekte die mich selbst interessieren greife ich auch ab und zu mal auf und helfe bei der Entwicklung.
Ja also, ich will nicht, das ir jemand die Arbeit abnimmtich wollte den beispielcode, damit ich das besser verstehen und nachvollziehen kann
So, und jetzt hab ich den gesammten Freitag nachmittag damit verbracht ständig wieder neue programme zu schreiben, einfach nur, weil der Regler son behindertes Setup hat :S und ich habs immernochnicht hingkriegt -,-
Aber anscheinend hat er i-ein problem mit den Befehlen, er scheint die nicht richtig anzunehmen... ://
Dann beschreib doch mal, was du ihm für Befehle schickst und wie dein Aufbau derzeit aussieht. Stell auch mal deinen Code rein, dann sieht man vll. schon, was falsch läuft.
So, mein Aufbau
Folgenden Code hab ich fertig:
Das Problem ist jetzt aber, das der Motor stockt nicht, wen ich den einen Hebel (kanal1) nach vorne drücke, aber wenn ich den nach hinten oder einen der anderen betätige stockt der motor, weil er ja immer wieder den befehl von kriegt, das er auf die nullposition gehen soll, weil kanal1 ja nicht LOW ist -,-"PHP-Code:
#include <Servo.h>
Servo myservo;
int kanal1 = 2;
int kanal2 = 3;
int kanal3 = 4;
int kanal4 = 5;
int potpin =4;
int val;
void setup()
{
pinMode(kanal1, INPUT);
pinMode(kanal2, INPUT);
pinMode(kanal3, INPUT);
pinMode(kanal4, INPUT);
digitalWrite(kanal1, HIGH);
digitalWrite(kanal2, HIGH);
digitalWrite(kanal3, HIGH);
digitalWrite(kanal4, HIGH);
myservo.attach(9);
}
void loop()
{
int val = digitalRead(kanal1);
if (val == LOW) {
val = analogRead(potpin);
val = map(val, 0, 1023, 0, 179);
myservo.write(val);
delay(15);
}
else {
myservo.write(90);
delay(15);
}
val = digitalRead(kanal2);
if (val == LOW) {
val = analogRead(potpin);
val = map(val, 0, 1023, 0, 179);
myservo.write(val);
delay(15);
}
else { }
val = digitalRead(kanal3);
if (val == LOW) {
val = analogRead(potpin);
val = map(val, 0, 1023, 0, 179);
myservo.write(val);
delay(15);
}
else { }
val = digitalRead(kanal4);
if (val == LOW) {
val = analogRead(potpin);
val = map(val, 0, 1023, 0, 179);
myservo.write(val);
delay(15);
}
else { }
}
Weiss jemand wie ich das löse? :S
Wäre NEtt![]()
Geändert von Sebastian Meyer (07.03.2012 um 18:38 Uhr)
Lesezeichen