barney Geschrieben 5. September 2013 Geschrieben 5. September 2013 Mir ist noch was allgemeines aufgefallen: Seit der Version 2.6 wird bei Überstrom gedrosselt und bei Kurzschluss abgeschaltet. Diejenigen, die keinen Stromsensor einsetzen, müssen den Messeingang Pin A0 mit einem Widerstand (1-10K Ohm) auf Masse legen. Es besteht sonst die Möglichkeit, dass durch das Floaten den Eingangspin die Überstromroutine ausgelöst wird. Der Pin A1 für die Spannungsmessung kann, muss aber nicht auf Masse gelegt werden. VG Barney Zitieren
gerald-z Geschrieben 5. September 2013 Geschrieben 5. September 2013 Hallo Barney Ich habs gerade erfolgreich an meinem Baord testen können. Und es funktioniert einwandfrei. Mir ist aufgefallen das sich die Neutralstellung bei gedrückter Z Taste ein bisschen verschiebt. Wenn man die Z Taste gedrückt hält bremst das Board leicht erst wenn ich sie loslasse ist der Freilauf drin. Das stört mich allerdings nicht und kann so bleiben. Den Igel habe ich trotz dem noch nicht aktivieren können. Stick nach links und dreimal die Z Taste drücken hat bei mir nicht funktioniert. Den Widerstand auf A0 habe ich auch schon eingelötet (5kOhm) Danke! Gruß Gerald Zitieren
barney Geschrieben 5. September 2013 Geschrieben 5. September 2013 Den Igel habe ich trotz dem noch nicht aktivieren können. Stick nach links und dreimal die Z Taste drücken hat bei mir nicht funktioniert. Links dabei festgehalten? Es kann sein, dass dein Stick keine X-Werte unter 30 liefert. Ändere mal im Quelltext die <30 auf <40. Kannst du den das Licht auf Pin 11 ein- und ausschalten? // Geschwindingkeitsumschaltung per X-Joystick und dreimal Z-Taste druecken if (nunchuk.zButton == HIGH && nunchuk.analogX < 30) { // wenn Z-Knopf getastet und Nunchuk X < 3 -> Counter für Geschwindigkeitsumschaltung hochzaehlen ObererStellWertMotorUmschaltCounter ++; // Es muss dreimal die Z-Taste und der X-Joystick ausgeloest werden digitalWrite(Pin_Hupe, HIGH); // Zur Bestaetigung 200ms hupen delay (200); digitalWrite(Pin_Hupe, LOW); if (ObererStellWertMotorUmschaltCounter == 3) { // Wenn dreimal gedrueckt // Umschalten der maximalen Geschwindigkeit if (ObererStellWertMotor == ObererStellWertMotorHase) ObererStellWertMotor = ObererStellWertMotorIgel; else if (ObererStellWertMotor == ObererStellWertMotorIgel) ObererStellWertMotor = ObererStellWertMotorHase; ObererStellWertMotorUmschaltCounter = 0; // Counter zurücksetzen digitalWrite(Pin_Hupe, HIGH); // Zur Bestaetigung der Umschaltung 500ms hupen delay (500); digitalWrite(Pin_Hupe, LOW); } } zButtonZero = HIGH; // Routine gegen Festhalten des Z-Tasters sperren } Zitieren
gerald-z Geschrieben 5. September 2013 Geschrieben 5. September 2013 Den Abschnitt vom Programm den du gerade geschrieben hast ist in meinem Programm noch gar nicht enthalten. Wo soll ich den hineinkopieren? Gruß Gerald Zitieren
barney Geschrieben 5. September 2013 Geschrieben 5. September 2013 Den Abschnitt vom Programm den du gerade geschrieben hast ist in meinem Programm noch gar nicht enthalten.Wo soll ich den hineinkopieren? Gruß Gerald Whatn, kann nicht sein. habe ich dir gestern keine neue Version 2.9 zugesendet? Per E-Mail? ähhhh. Mache ich gleich mal. Diese lautet 2.9_Test! Zitieren
gerald-z Geschrieben 5. September 2013 Geschrieben 5. September 2013 Ich dummi hab seit längerem nicht in meiner email nachgesehen. Habs bekommen. Werde es gleich Testen. Sorry gruß Gerald Zitieren
barney Geschrieben 5. September 2013 Geschrieben 5. September 2013 Ist per E-Mail raus. Bitte die Integrationssteuerung löschen oder auskommentieren. Deine Steuerung "direct drive" aus dem Kommentar rausholen! /* */ löschen! VG Barney Zitieren
gerald-z Geschrieben 5. September 2013 Geschrieben 5. September 2013 Sorry ich versteh gerad nicht was ich ändern oder löschen soll? Gruß Gerald Zitieren
barney Geschrieben 5. September 2013 Geschrieben 5. September 2013 Sorry ich versteh gerad nicht was ich ändern oder löschen soll? Gruß Gerald Ab: // Subroutine fuer die Motorsteuerung und Integrationssteuerung Bis einschließlich : /* Direkt Drive Zitieren
gerald-z Geschrieben 5. September 2013 Geschrieben 5. September 2013 Jetzt hab ich es kapiert. :thumbsup: Beim test mit dem Servo verschiebt sich durch den Igel die Neutralstellung ein bisschen. Werde das gleich am Baord testen Gruß Gerald Zitieren
barney Geschrieben 5. September 2013 Geschrieben 5. September 2013 (bearbeitet) Jetzt hab ich es kapiert. :thumbsup:Beim test mit dem Servo verschiebt sich durch den Igel die Neutralstellung ein bisschen. Gruß Gerald Sieht nur so aus! Ich habe als Igel den Wert die 3200 genommen. Die Neutralstellung ist die 3000! Daher sieht das so geringfügig aus. Am Motor hat der Wert 3200 eine ganz andere Auswirkung! bearbeitet 5. September 2013 von barney Zitieren
gerald-z Geschrieben 5. September 2013 Geschrieben 5. September 2013 Beim mir funkt das nicht. Wenn ich den Igel aktiviere verschiebt sich die Neutralstellung so stark das der Regler auf bremse geht. Bei Vollgas bin ich dann in der Neutrallstellung. Gruß Grald Zitieren
barney Geschrieben 5. September 2013 Geschrieben 5. September 2013 Beim mir funkt das nicht.Wenn ich den Igel aktiviere verschiebt sich die Neutralstellung so stark das der Regler auf bremse geht. Bei Vollgas bin ich dann in der Neutrallstellung. Gruß Grald Du kannst den Wert für Igel ändern. Suche mal die Konstante: ObererStellWertMotorIgel = 3200 und verändere ihn auf 3500! Zitieren
barney Geschrieben 5. September 2013 Geschrieben 5. September 2013 Beim mir funkt das nicht.Wenn ich den Igel aktiviere verschiebt sich die Neutralstellung so stark das der Regler auf bremse geht. Bei Vollgas bin ich dann in der Neutrallstellung. Gruß Grald Du hast hier den Effekt, das der Motorregler richtig angelernt sein muss. Du solltest die drei verschiedenen Stellungen Vollgas, Neutral und Bremsen max. richtig anlernen, sonst wirst Du immer wieder Probleme mit meinem Programm bekommen. Ich habe das einmal richtig gemacht und seit dem keine Probleme dieser Art gehabt. Ich habe Hase Igel getestet und es geht bei mir wie erwartet. Jeder Regler hat seine Tücken. Ich habe extra alles in Konstanten am Anfang des Programms definiert, damit man die, zu ein passenden Parameter, leicht einstellen kann. Die Werte anpassen muss schon Du, da kann ich Dir kaum helfen.:thumbsup: VG Barney Zitieren
gerald-z Geschrieben 5. September 2013 Geschrieben 5. September 2013 Ich hab den Igel auf auf 3400 erhöht und es funktioniert wirklich gut. Das hat mit dem Anlernen nichts zu tun. Wenn ich beim Regler die Nullposition ohne drücken der Z Taste anlerne da habe ich später auch den Leerlauf bei losgelassener Taste. Dafür ein leichtes bremsen bei gedrückter Taste. Bei igel ist das noch stärker. Wenn ich den Regler sage das die Nullposition mit gedrückter Z Taste ist. Kann ich die Z Taste später nicht loslassen da sonst das board von selber davon fährt. Aber ich bin trotz der leichten bremse glücklich. Da ich so immer weis das, das board eine verbindung mit dem Controller hat und ich jeder Zeit brems bereit bin. Bein meiner Hupe habe ich irgend wo noch einen Murks drin. Wenn ich fahre geht öfter die Hupe kurz an. Eine Diode habe ich auch eingebaut. Ich hab sie zwischen Transistor Collector Ausgang und Reilai gehängt. Stimmt das so? Und zwischen Arduino und Transistor (Basis) einen 5kOhm Widerstand gelötet. Kann es sein das der zu klein ist und dadurch die Hupe öfters angeht. Gruß Gerald Zitieren
barney Geschrieben 5. September 2013 Geschrieben 5. September 2013 Ich hab den Igel auf auf 3400 erhöht und es funktioniert wirklich gut. Das hat mit dem Anlernen nichts zu tun. Wenn ich beim Regler die Nullposition ohne drücken der Z Taste anlerne da habe ich später auch den Leerlauf bei losgelassener Taste. Dafür ein leichtes bremsen bei gedrückter Taste. Bei igel ist das noch stärker. Wenn ich den Regler sage das die Nullposition mit gedrückter Z Taste ist. Kann ich die Z Taste später nicht loslassen da sonst das board von selber davon fährt. Aber ich bin trotz der leichten bremse glücklich. Da ich so immer weis das, das board eine verbindung mit dem Controller hat und ich jeder Zeit brems bereit bin. Leider haben die Nunchuks in der Neutralstellung keine perfekte 127 als Wert. Genauso wenig wie das Minimum keine 0 und das Maximum keine 255 liefert. Ich hatte bewusst die Integrationsroutine gewählt, um diese Fertigungstoleranzen zu umgehen. Du kannst nachprüfen, welchen Wert dein Nunchuk in der Mittelstellung liefert und nachrechnen welchen Konstantenwert Du für den Motorleerlauf benötigst. Jede Einheit Abweichung vom Idealwert hat eine Wertigkeit von ca. 8 Werten Motorleerlauf. D.h. anstatt 127 z.b. 137 -> Motorleerlauf=3080! So wirst Du dich leider ranarbeiten dürfen. Ich würde auf "direct drive"verzichten und lieber den Dämpfungswert von 30 auf 10 verringern. Ist aber wie gesagt Geschmackssache. Bein meiner Hupe habe ich irgend wo noch einen Murks drin. Wenn ich fahre geht öfter die Hupe kurz an. Eine Diode habe ich auch eingebaut. Ich hab sie zwischen Transistor Collector Ausgang und Reilai gehängt. Stimmt das so? Nein, ich hatte Dir einen Wikipedia Link gesendet, der aufzeigt, wo die Diode hinkommt. Leider habe ich auch keinen Röntgen-Blick und kann durch die Leiterplatte durchsehen, um die Verschaltung der Unterseite zu sehen. Und zwischen Arduino und Transistor (Basis) einen 5kOhm Widerstand gelötet. Kann es sein das der zu klein ist und dadurch die Hupe öfters angeht. Benutzt Du einen Transistor oder MOSFET? Zitieren
gerald-z Geschrieben 5. September 2013 Geschrieben 5. September 2013 Das mit den Röntgenaugen dachte ich mir schon. Mit der Wikipedia Zeichnung konnte ich nicht nichts anfangen. Auch mit der Beschreibung nicht. Dann habe ich bei Google gesucht und bin auf etliche verschiedene Schaltungen gestoßen. Was eine Freilaufdiode angeht. Ich habe gerade ein bisschen gezeichnet um es verständlicher zu machen. Zitieren
barney Geschrieben 5. September 2013 Geschrieben 5. September 2013 Das mit den Röntgenaugen dachte ich mir schon. Mit der Wikipedia Zeichnung konnte ich nicht nichts anfangen. Auch mit der Beschreibung nicht. Dann habe ich bei Google gesucht und bin auf etliche verschiedene Schaltungen gestoßen. Was eine Freilaufdiode angeht. Ich habe gerade ein bisschen gezeichnet um es verständlicher zu machen. Ich bin der Meinung Beatbuzzer hat... Nee, leider falsch: und goggle mal nach Freilaufdiode und siehe dir die Bilder an. Externe Links nur für Mitglieder sichtbar ganz unten! VG Barney Zitieren
gerald-z Geschrieben 5. September 2013 Geschrieben 5. September 2013 Danke jetzt hab ich es als anti Elektriker verstanden. Benötige ich den Widerstand zwischen Transistor und Ardiuno überhaut? Gruß Gerald Zitieren
barney Geschrieben 6. September 2013 Geschrieben 6. September 2013 (bearbeitet) Hallo Gerald, ich habe gestern die Version 3.0 abends fertiggestellt. Folgendes wurde verändert: 1. Umschaltung Hase- Igel -> Funktioniert jetzt, wie beim Licht mit Verriegelung der ggf. festgehaltenen Z-Taste. Die Umschaltung ist aus meiner Sicht damit fertig und abgeschlossen. 2. Umschaltung DirectDrive/ Integrationssteuerung -> Es ist jetzt möglich, durch ein #define DirectDrive TRUE/FALSE Flag den Compiler anzuweisen, die entsprechende Routine zu kompilieren. Die Pflege des Quelltextes wird deutlich leichter. 3. Intern: zentrale Abfrage der Nunchukwerte (7/Sekunde) zur Reduktion der Nunchukkommunikation. Tastenprellen wird dadurch besser gefiltert. 4. Kommentare Erweitert. Und ich habe alles selbst getestet. Es funktioniert (bei mir*,**,***)! :peace:**** VG Barney * Bei Abweichungen kann die Adresse meines Rechtsbeistandes angefragt werden ** Keine Garantie! *** Macht doch was ihr wollt, ist doch euer Ding **** Ich habe damit nichts zu tun! bearbeitet 6. September 2013 von barney Zitieren
gerald-z Geschrieben 6. September 2013 Geschrieben 6. September 2013 Danke barney Ich hatte heute wegen der Arbeit leider nicht Zeit. Morgen werde ich das neue Programm von dir ausprobieren. Gestern ist es mir wider passiert das ich nicht mehr stehen bleiben konnte. Das arduino dürfte sich beim anfahren durch ein kurzes hupen aufgehängt haben. Ich hab dann den wii controlle ausgeschaltet. Nach ca 10sec ist dann der Motor ausgegangen. Es muss etwas mit der Stromversorgung zu tun haben. Passiert wenn dann nur beim wegfahren. Der wii Controller schaltet bei mir während dem fahren leider öfters in den sleep Modus. Gruß Gerald Zitieren
barney Geschrieben 6. September 2013 Geschrieben 6. September 2013 Hi Gerald, welchen MOSFET oder Transistor verwendest Du und was ist das für eine Hupe? Du scheinst dir beim Hupen irgendetwas einzufangen. VG Barney Zitieren
gerald-z Geschrieben 7. September 2013 Geschrieben 7. September 2013 Hallo Auf meinem Transistor steht C546B, W82. Bei der Hupe handelt es sich um diese hier: Externe Links nur für Mitglieder sichtbar Geschaltet wird die Hupe von einem Relai. Gruß Gerald Zitieren
barney Geschrieben 7. September 2013 Geschrieben 7. September 2013 Hi Gerald, ich muss dir sagen, dass aus meiner Sicht der Aufbau keinen Sinn macht. Du schaltest mit einen Transistor ein Relais an mit viel mehr mA Strombedarf, als die eigendliche Hupe. Lass das Relais weg und mache die Hupe dafür dazwischen. Für 8mA Hupenstrom brauchst Du kein Relais! Kannst Du die Beschaltung des Transistors noch in das Forum stellen? VG Barney Zitieren
Empfohlene Beiträge
Tritt dem Gespräch bei
Du kannst jetzt posten und dich später registrieren. Wenn du bereits einen Account hast kannst du dich hier anmelden.