- 12V Akku mit 280 Ah bauen         
Ergebnis 1 bis 10 von 16

Thema: I2C-Problem bei laufenden Motoren?? (Oder anderes Kommunikationsproblem)

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter Genie Avatar von SlyD
    Registriert seit
    27.11.2003
    Ort
    Paderborn
    Alter
    40
    Beiträge
    1.516
    Hab das mal kurz angeschaut.


    Also im Slave (RP6Base) kannste erstmal das hier:
    Zeile 489...
    if(getStopwatch1() >= 1000)
    {
    SerialHeartBeat();
    StartErrorFrame();
    writeString_P("RP6 Remotrol ist mit dem Slave-Controller verbunden!\n");
    writeString_P("Das Kabel muss an den Master-Controller angeklemmt werden!\n");
    EndErrorFrame();
    setStopwatch1(0);
    }
    rauswerfen spart schonmal etwas Rechenzeit (die UART Ausgabe ist ja blockierend und die Baudrate ist standardmäßig nur 38.4kBit/s also dauert das länger als man denkt sowas auszugeben - könnte man natürlich auf 500kBit/s erhöhen).
    Ist ja nix an der seriellen Schnittstelle angeschlossen also dürfte das überflüssig sein.

    Dann mal schauen obs was bringt in RP6CCLib.cc
    Zeile 841:
    // I2C Modul initialisieren:
    I2C_Init(I2C_100kHz);

    in 400kHz zu ändern.

    Bei viel Datenverkehr auf dem Bus ist das sinnvoll.


    Dann in M128_PCConnection.cc
    Zeile 725:
    timeBetweenFrames = 240;

    mal probehalber auf 1000 oder 2000 erhöhen.

    Die SRF02 im Code deaktivieren und auch alles andere was nicht benötigt wird.


    Dazu dann noch die Hardwaregeschichten die oben schon vorgeschlagen wurden.

    Dann schrittweise wieder zuschalten und testen.

    MfG,
    SlyD

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    06.11.2010
    Beiträge
    773
    Das ist doch schon mal einiges.
    Ich verwende jetzt 2 Netzgeräte:
    Ein gutes für Base, M32 und M128. Ein nicht ganz so gutes für BTM222, Snake, Kamera, 2D-IR, 2 Sharps, LED-Scheinwerfer, Servos -> Damit kann man denke ich die Stromschwankungen ausgrenzen!?!???
    Das gute Netzgerät zeigt mir einen Stromverbrauch von 250mA an bei 5cm-Motorgeschwindigkeit (Geschwindigkeitsparameter liegt bei 20 von 200) und 160mA ohne Motoren. Kann das so stimmen?

    -> Habe in der Base rausgestrichen, was du sagtest.
    -> Habe die Rate auf 400kHz erhöht.
    Danach ging es schon besser. Die meisten Sorgen machen ACS vorne (ACS hinten mit den beiden Sharps geht einwandfrei), der RC5-Empfang, die Motordrehzahlen. Die Lichtwerte kommen mit geringer Verzögerung (so 2 Sekunden etwa) - solange die Motoren laufen. Ohne Motoren geht alles wunderbar.
    Mit Motoren haben die anderen Sensoren (Mikro und Snakevision, 2D-IR-Sensor und SRF02) eine ganz leichte Verzögerung gegenüber ohne Motoren.

    -> Habe dann die Framerate erhöht auf verschiedene Werte (1000, 300, 100, 2000, ...) mit folgendem "Erfolg":
    Bei geringeren Werte als die 240 kommen die Sensorwerte, die vorher auch gut kamen, schneller an (klar!) und bei zu hohen war einfach zu viel Zeit zwischen den Frames, das kann auch nicht die Lösung sein.

    EDIT:
    Habe gerade noch was verändert: ObstacleLeft bzw -Right werden nun IMMER gesendet, nicht nur, wenn der alte Obstacle-Wert nicht mehr dem neuen entspricht. Und siehe da: Es geht besser, zwar auch mit mehr als 1 Sek Verzögerung, aber es kommt immerhin immer (irgendwann) ein Wert!

  3. #3
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    06.11.2010
    Beiträge
    773
    Juhuuu!
    Habe noch mal die TimeBetweenFrames runter auf 180 und es funzt einfach alles
    Die Daten kommen mit nicht mal 1 Sek Verzögerung
    Ergo: Ein Problem ist, dass die M128 manchmal wohl das "ObjektLinks!" überlaufen hat und es nicht gesendet hat. Man muss also Obstacles immer senden lassen.

    Super, danke Euch!
    Danke Dir SlyD fürs "Korrekturlesen" der Programme.
    Ich hoffe, wenn meine drei Profs das Projekt morgen begutachten, geht auch noch alles...


    -> RC5-Code-Empfang geht aber immer noch nicht. Auch wenn ich die RC5_Data immer senden lasse...
    Geändert von fabqu (08.02.2012 um 13:03 Uhr)

  4. #4
    Erfahrener Benutzer Roboter Genie Avatar von SlyD
    Registriert seit
    27.11.2003
    Ort
    Paderborn
    Alter
    40
    Beiträge
    1.516
    Freut mich

    Es gibt sicher noch viel weiteres Optimierungspotential.
    Dazu müsste man aber den Code mal etwas detaillierter auseinanderpflücken...

  5. #5
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    06.11.2010
    Beiträge
    773
    Ok!
    Traust du mir sowas zu?
    Ich bin in Sachen Programmieren ja ned so der Über-Horst... Ich bin immer noch am Lernen, was das angeht.

    Vielleicht kann ich ja mit dem FabianE. mal was dazu machen.


    Hier mal ein Foto von dem Ungetüm:
    Man erkenn die Kamera mit SRF02, den 2D-IR-Sensor und hinten das SnakeVision.
    Verbaut sind gerade 5 Platinen.

  6. #6
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    06.11.2010
    Beiträge
    773
    Soso. Also mit zwei Netzgeräten klappt das ganze um einiges besser, aber auch da gibts gerne mal Probleme.
    Aber ich schalte jetzt alle "schlimmen" Verbraucher wie IR-LEDs, Scheinwerfer, Snake, Kamera &CO automatisiert an, wenn es das Programm erfordert (z.B. Rückwärtsfahrt) und ab, wenn nicht.
    Das hilft.

    Habe mittlerweile die Vermutung, dass es gar nicht so sehr an der Stromversorgung von außen scheitert, sondern am 5V-Regler der Base.
    Nehmen wir an, Motoren, Scheinwerfer und ACS vorne läuft. Dazu kommen vielleicht drei/vier Status-LEDs, drei ATmega, die anderen Sensoren (Licht, Motorstrom und Drehzahl, Mikro und Temperatur, LCD).
    Dann kommt da doch einiges zusammen, was der 5V-Regler erst nachliefern muss.
    Ich überlege, den Motorstrom noch auf den Zweitakku zu legen mit einem eigenen 5V-Regler und Stromunterstützung durch einen Transistor.
    Die brauchen - nehme ich an - 5V und nicht die Batteriespannung, oder?

    Grüße

  7. #7
    Benutzer Stammmitglied
    Registriert seit
    20.01.2009
    Alter
    61
    Beiträge
    30
    Hallo fabqu,

    die Motoren benötigen die Batteriespannung, aber wenn dein Zusatzakku 7,2V kannst du die Spannung ja vor dem 5V-Regler abgreifen.

    Gruß Thomas

  8. #8
    Benutzer Stammmitglied
    Registriert seit
    31.01.2009
    Ort
    schwabch
    Alter
    40
    Beiträge
    93
    @fabqu
    Erst mal muss ich sagen dein Teil schaut super aus !!

    Du kannst dir auch einiges einsparen wenn du den Spannungsregler der Cam austauschst, kleines schwarzes längliches gummiteil !
    Denn die Cam kann kannst du auch mit 3,3 bis 4,9 V ich glaub 5,0 würde auch noch gehn betreiben ( Hab es mal ohne Spannungsregler an 3,3V dran gehabt, aber bei 4,9V geht es auf jeden fall ) wie es sich aber auf die reichweite auswirkt weiss ich noch nicht!
    Aber ich hab die erfahrung gemacht dass man mit Spannungsregler nicht unter 7,5V kommen sollte, denn ab da hab ich dann kein Bild mehr! Auf den Datenblatt 9 -12V also verbrät das teil viel leistung!
    Ach ja sei beim abschneiden des Gummi sehr vorsichtig ( wegen den Fingern und der Platine ) und wenn das teil weg ist mach nicht den fehler wie ich mehr als 4,9V drauf zu geben so hab ich schon mal eine Cam gekillt.
    vergiss auch nicht eine schutzdiode ( -0,7V an der Diode 1N4002 ) dran zu machen ( verpolungsschutz ) es sei denn es kann dir nicht passieren.

    Auf diesen Bild kannst du Spannungsregler sehn ( Links die kleine Platine ) -> http://www.meinkleinerzoo.eu/MeinRP6/Bilder/Innenansicht1a.jpg
    diesen Spannungsregler hab ich nur noch drin bis ich einen andern hab. Da ich über ein labornetzgerät den Strom bekomme ist das zZ noch egal aber wenn ich ihn über Akkus aufen lass ist der regler weg!
    Wenn du es wilst mach ich mal ein bessers bild des Spannungsreglers.



    Was ich noch wissen wollte ist, dass Programm auf den Bot mit dem du die "SRF02" ansprichst in "C" oder in "Bascom" geschrieben ?
    Denn ich finde keine beispiele für C.

    PS: Für die Uhrzeit könnt ihr die Fehler behalten.

    MFG Oliver G

Ähnliche Themen

  1. Asuro oder Robby RP5? Oder doch etwas anderes?
    Von whitecrane22 im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 4
    Letzter Beitrag: 18.09.2011, 08:01
  2. Yeti, RP6 oder doch was anderes?
    Von julien im Forum Sonstige Roboter- und artverwandte Modelle
    Antworten: 6
    Letzter Beitrag: 07.10.2008, 14:41
  3. PICKit 1 oder 2 oder noch was anderes zum Einsteigen?
    Von robo-sebi im Forum PIC Controller
    Antworten: 22
    Letzter Beitrag: 29.10.2007, 12:02
  4. LCD oder was anderes spinnt
    Von xxrider im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 3
    Letzter Beitrag: 25.07.2007, 19:55
  5. Lichtschranke??oder etwas anderes?
    Von sulu im Forum Elektronik
    Antworten: 7
    Letzter Beitrag: 13.08.2005, 07:15

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress