- Labornetzteil AliExpress         
Seite 4 von 5 ErsteErste ... 2345 LetzteLetzte
Ergebnis 31 bis 40 von 42

Thema: Motorproblem: Motor dreht sich nicht

  1. #31
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    37
    Beiträge
    4.063
    Anzeige

    LiFePo4 Akku selber bauen - Video
    mehr teile betreffen die motoren wigentlich nicht. am ende der anleitung ist ein schaltplan des asuro. da kannst du genau sehen welche teile du nochmal prüfen musst.
    kontrolliere genau ob alles richtig rum drin ist, ob alle lötstellen wirklich 1A in ordnung sind, und ob die Nummern auf den transistoren die richtigen sind.
    versuche, mit drahtbrücken die verbindungen neu herzustellen, evtl hat eine leiterbahn etwas gelitten.
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  2. #32
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    06.11.2005
    Ort
    Graz (Österreich)
    Alter
    31
    Beiträge
    212
    Er wurde aber in beide richtungen durchgemessen und hat funktioniert !
    Aber ich verste nicht warum sich der linke Motor statt dem rechten dreht.
    mfg Daniel

  3. #33
    Neuer Benutzer Öfters hier
    Registriert seit
    19.03.2007
    Beiträge
    9
    Hallo,
    ich hab das problem das mein Asuro manchmal einfach nicht fahren will.
    Ob er nun auf dem Schreibtisch oder auf dem Laminat steht.
    Er fährt vieleicht eine Sekunde los und bleibt dann stehen.

    Ich vermute das vieleicht ein Taster klemmt oder das vieleicht auch das Getriebe nicht richtig funktioniert. Die Räder lassen sich leicht drehen und nach überprüfen der Taster keine Ergebnisse...
    Ich habe versucht den Motoren mehr speed zugeben auch daran lag es nicht.

    habt ihr vieleicht eine idee?

    auch habe ich versucht meine Linienfolgesensoren zu optimieren. ich habe gelesen das jemand mit "jogurtbecher-teilen" eine abschirmung um diese herum gebastelt hat.
    Inspiriert bin ich auf die idee gekommen ein stück aus einen milchtetrapack heraus zu schneiden, da die innenseite mit der aluminiumbeschichtung vieleicht ganz gut taugt...was meint ihr? reflektiert das zu sehr? stört das die sensoren? Leider habe ich keine besondere Ergebnisse damit erzielt...
    Mal abgesehen davon das wenn ich mein asuro startbereit auf eine linie stelle, er eine leichte ahnung von der linie hat, einen leichten schwenker macht und er ihr keines wegs folgt...
    Die Pape die ich da herum gebastelt habe ist ca. 5-8mm breit und ca. 2cm lang.

    nun ja...aller anfang ist schwer...aber wenigstens hab ich den selftest überstanden... =D>

    grüße Wolf

  4. #34
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    61
    Beiträge
    5.799
    Blog-Einträge
    8
    Hallo

    Erstmal herzlich willkommen hier.

    ich hab das problem das mein Asuro manchmal einfach nicht fahren will.
    Könnte an einer kalten Lötstelle liegen oder am Programm.

    Abschirmen der Liniensensoren (und auch der Odometriesensoren) bringt bessere Ergebnisse. Zu den Sensoren reflektierende Abschirmungen könnten die Messungen allerdings ungünstig beeinflussen.

    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!

  5. #35
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    37
    Beiträge
    4.063
    zeig uns doch mal deinen programmcode. vielleicht liegt der fehler ja da.

    wenn der asuro anhält, blinkt dann die statusled? dann hat der prozessor zu wenig spannung, er hat einen BrownOut-Reset durchgeführt und meldet durch das blinken (und auch über die infrarotschnittstelle, wenn man den transceiver drüberhält) dass die spannung nicht reicht.
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  6. #36
    Neuer Benutzer Öfters hier
    Registriert seit
    19.03.2007
    Beiträge
    9
    Hallo und danke,
    das anfahrts problem tritt jetzt nicht mehr auf...
    ich habe die programme aus der anleitung benutzt...ich habe jetzt eins von eueren beispiel programmen benutzt und etwas umgeschrieben, da das funktionen enthielt die anscheinend nicht von meiner version unterstütz wurden.

    ich hab mir darauf hin die v2.70 runtergeladen...bekomme aber immer fehler beim compilieren das die ir-asuro.h fehlt? die ich auch sonst nicht finde. muss ich die vorhergehenden updates auch runterladen?

    statt Msleep hab ich dann sleep benutzt....aber mit 3ms...
    nun ja, für was braucht man eigentlich die "sleep()" funktion? warum ist sie so nützlich wenn die verzögerung nur 3ms beträgt? und warum hat die sleep() ein intervall von 216-255 ? ich hab mir gedacht anstatt die Msleep() zu benutzen könnte ich vieleicht die sleep() benutzen und irgend wie umschreiben das ich vieleicht dann auf sekunden komme? geht das
    ich hab mir dabei sowas gedacht:
    (meine Msleep)
    void Msleep(int i)
    { i= Sleep(216) *1000;
    }
    ich weiss,...blöde idee, man kann ja nicht eine funktion multiplizieren...ich hab halt keine ahnung von programmieren...aber könnte es vieleicht so ähnlich funktionieren?

    ich hab mal versucht ob ich mit meinem ir-transceiver datan von handy auf mein computer senden kann. auf meim handy stand dann übertragen....aber ich habe keine dateien oder sonst irgend was auf dem computer gefunden. dabei habe ich das standart hyper-terminal von WinXp benutzt.

    gut dann werde ich eine andere abschirmung benutzen.
    wie finde ich kalte lötstellen?

    soll ich ein neuen thread aufmachen?
    grüße wolf

  7. #37
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    61
    Beiträge
    5.799
    Blog-Einträge
    8
    void Msleep(int i)
    { i= Sleep(216) *1000;
    }
    Mach daraus besser ein
    void Msleep(int i)
    unsigned int j;
    {for (j=0;j<i;j++) {Sleep(216) ; }
    }
    dann wartet die Funktion i mal Sleep(216);

    Wo die 216 herkommen, weis ich auch nicht genau, der Wertebereich ist byte, also 0-255. Bei 36kHz-Timer entspricht 36 einer Milisek. glaube ich irgendwo gelesen zu haben.

    Solche "Zeitschleifen" sind meiner Meinung nach Schrott, weil der Prozessor in dieser Zeit (ausser Interrupts bearbeiten) nichts tun kann.
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  8. #38
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    37
    Beiträge
    4.063
    der wertebereich der sleep-funktion geht vfon 0 bis 255. die 216 hat folgenden grund: es ist die höchstmögliche zahl, welche eingesetzt werden kann, um eine glatte millisekundenzahl zu bekommen. die funktion arbeitet mit 72kHz, also sleep(1) wartet eine 72.000stel sekunde. 72*3=216. also wartet sleep(216) ziemlich exakt 3 millisekunden.

    msleep wartet einen millisekundenwert, also msleep(1000) wartet eine sekunde. lade dir von sourceforge die version 2.6.1 runter (von der lib) dass ist etwas einfacher als mit version 2.70

    geh auf www.sorceforge.net (oder com? oder org?) und gib beim suchen asuro ein, dann findest du die. entpacke die dateien asuro.c und asuro.h in das verzeichnis des quellcodes, und überschreibe die daten die du von der cd kopiert hast. dann kannst du die funktion msleep benutzen.
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  9. #39
    Neuer Benutzer Öfters hier
    Registriert seit
    19.03.2007
    Beiträge
    9
    hallo,

    void Msleep(int i)
    unsigned int j;
    {for (j=0;j<i;j++)
    {Sleep(216) ; }
    }
    Dann würde ich in einem programm i einen wert geben zum beispiel 3 und die funktion noch aufrufen...?...danke,

    und was ist mit: wie finde ich kalte lötstellen?
    und der ir-transciever?

    grüße wolf

  10. #40
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    37
    Beiträge
    4.063
    die geschweifte klammer vor dem for muss vor das unsigned int. dann sollte es klappen. aufrufen kannst du dann so:

    Msleep(100) oder Msleep(10) oder ähnlich. allerdings: um millisekunden zu bekommen, musst du die 216 in eine 72 ändern:

    void Msleep(int i)
    {
    unsigned int j;
    for(j=0;j<i;j++)
    {
    Sleep(72);
    }
    }

    dann wartet Msleep(1000) etwa eine sekunde.

    kalte lötstellen: schau auf deinem lötzinn nach. wenn es bleihaltig ist (es steht igendwo Pb drauf) dann erkennst du kalte lötstellen meistens (!) daran, dass sie nicht glänzen. sie entstehen dadurch, dass das bauteil bewegt wird während der lötpunkt erhärtet. solltest du bleifreies lötzinn verwenden (bei der zusammensetzung steht NICHT Pb, oder es steht irgendwo "ROHS-konform" (kannst auch im katalog oder da wo du es bestellt hast nachsehen) dann funktioniert das leider nicht... dann ist vorsichtiges (!) nachlöten angesagt.

    der ir-transceiver funktioniert nicht zur dateiübertragung. er folgt dem rs232-protokoll (so in etwa) und dein handy folgt dem IrDA-Protokoll, welche beide grundverschieden sind.
    Read... or die.
    ff.mud.de:7600
    Bild hier  

Seite 4 von 5 ErsteErste ... 2345 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen