- LiTime Speicher und Akkus         
Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 22

Thema: RNBFRA-CO als I2C Slave

  1. #1
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842

    RNBFRA-CO als I2C Slave

    Anzeige

    Praxistest und DIY Projekte
    Da ich mit der RS232-Versíon des Servo Coprozessor nicht recht glückling war/bin, habe ich versucht, das ganze als I2C-Sklave zu machen. Beim RNKC10 gab's das zwar schon, aber da konnte man keine normalen I2c-Routinen verwenden, wegen der Geschwindigkeit.

    Ich teste diese neue Version dzt. mit 100-400 kHz Master-Speed und versuche das Programm in einen Fehler zu hetzen.
    Versuchen tu ich am Mega32 mit HW-TWI & Bascom-Soft I2C

    Ihr würdet mir einen Gefallen tun , wenn sich es weitere Versuch-Kaninchen geben würde, die das Zeugs ein wenig testen könnten und ev. darüber berichten.
    Es ist auch ein Test-Demo-Versuchsprogramm für dem AtMega32 dabei, also gewissermassen mundgerecht für die RNBFRA-Karte

    Edit: Das RNSI2C.HEX ist für den AT90S1213 und
    RNSTEST.BAS für den AtMega32
    Angehängte Dateien Angehängte Dateien
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  2. #2
    Erfahrener Benutzer Roboter Experte Avatar von marvin42x
    Registriert seit
    02.08.2005
    Ort
    Berlin
    Alter
    75
    Beiträge
    703
    Mach mich gleich ran.

    Netter Gruß
    Die ersten zehn Millionen Jahre waren die schlimmsten. Und die zweiten Zehn Millionen Jahre, die waren auch die schlimmsten.url

  3. #3
    Erfahrener Benutzer Roboter Experte Avatar von marvin42x
    Registriert seit
    02.08.2005
    Ort
    Berlin
    Alter
    75
    Beiträge
    703
    So, damit das nicht ganz so trocken ist, ein Bild Deiner Servo-farm.
    Dazu ein Stück Terminalmitschnitt. Der ist mir noch nicht klar, schaue ich mir morgen noch mal an.
    8 Servos laufen, jedenfalls dem Auge nach gleichzeitig und synchron, jetzt schon über eine Stunde, furchtbar, ticker, tickker, ticcker, tickker, tickker....., sssssst,
    Die restlichen 2 Servoports machen exakt das gleiche wenn man die Servos mal umsteckt.
    Ich meine wer hat den 10 Servos so auf die schnelle.
    Die 3 LEDs blinken brav und der Kühlkörper auf dem Board wird richtig schön warm.

    So, das war’s erstmal für Heute
    Netter Gruß nach Wien und Kompliment der Herr
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken servo_klein.jpg  
    Angehängte Dateien Angehängte Dateien

  4. #4
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    Zitat Zitat von marvin42x
    ...schon über eine Stunde, furchtbar, ticker, tickker, ticcker, tickker, tickker....., sssssst,
    Siehst, so geht's mir auch.

    Netter Gruß nach Wien und Kompliment der Herr
    Küß' die Hand und g'schamster Diener !

    EDIT: Das Log:
    "S" / ServoNr / Position / TWI-Status (20 = "Schreibadresse not Acked")

    Da hat der Co nicht geantwortet, vermutlich, weil grad bei der I2C-Startbedingung ein Timer-Interrupt aufgetreten ist.

    Das läßt sich auch bei langsameren Geschwindigkeiten nie ganz vermeiden, deswegen auch eine einfache sendewiederholung.

    Wenn wir dann Multimaster machen, kommen Konflikte ja dann häufiger vor (Arbitrierung der Master), das ist wie bei Ethernit Netzen.
    Das muß ein Master dann abkönnen, das gehört dazu.

    Ich find die Häufigkeit aber erträglich. Ich wär wirklich froh, wenn man den Co zuverlässig als I2C Slave einsetzen könnte.

    Für unsere Routerei wär's auch gut, wenn da mal was weitergehen würde.


    EDIT II: Du siehst, daß dieser Fall hauptsächlich (oder nur) beim ersten Servo auftritt. die anderen 9 Servos kommen ja gleich hinten nach (ohne stop mit repeated Start), da klappt's dann besser
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  5. #5
    Erfahrener Benutzer Roboter Experte Avatar von marvin42x
    Registriert seit
    02.08.2005
    Ort
    Berlin
    Alter
    75
    Beiträge
    703
    Was Du für Wörter kannst, da musste ich erstmal in google nachgucken was „Arbitrierung“ überhaupt heißt.
    Ich habe meinem Seriel-Jumper schon mal vorgewarnt, dass er möglicherweise Urlaub bekommt.
    Bis dahin drück ich Dir die Daumen das da nix blödes mehr in den Weg kommt.
    Zumindest haben wir schon mal eine Maschine mit der man jemanden in den Wahnsinn treiben kann

    Netter Gruß
    Die ersten zehn Millionen Jahre waren die schlimmsten. Und die zweiten Zehn Millionen Jahre, die waren auch die schlimmsten.url

  6. #6
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    .. jemanden in den Wahnsinn treiben ..
    Vielleicht noch ein rhythmischeres Servo-Programm
    Walzer: ssssssst, rtz, rtz, ssssssst, rtz, rtz, ssssssst, rtz, rtz, ...

    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  7. #7
    Erfahrener Benutzer Robotik Einstein Avatar von Dirk
    Registriert seit
    30.04.2004
    Ort
    NRW
    Beiträge
    3.803

    I2C-Servoansteuerung

    Einsame Spitze!

    Darauf habe ich lange gewartet!
    Jetzt kann es ja losgehen mit der I2C-Servoansteuerung auf der RNBFRA!

    Vielen Dank PicNick!

    Jetzt kommt noch was ganz dreistes:
    Gibt es eine Chance, dein Prog auf dem 2313 kennen zu lernen? Wie hast du das hingekriegt? Ich würde das gern kapieren!

    P.S.: Ich teste natürlich eifrig mit,- und das auf 2 RNBFRAs gleichzeitig (leider habe ich nur 8 Servos, die ich locker verteile).

    Gruß Dirk

  8. #8
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    @Dirk: freut mich, wenn's gefällt.
    Das Programm besteht aus zwei Schweinereien: Die I2C Geschichte
    und das Servofummeln. Letzteres ist dem RNS1 entnommen, und da sitzt der Frank drauf, da hat er sozusagen Copyright.

    Aber die I2C-Geschichte kannst du schon haben, die derzeitige Version ist allerdings noch nicht konfektioniert, sprich, man muß im Bascom doch noch etwas rumwursteln. Ist eben ein Prototype.
    Ich bin noch nicht sicher, wie ich das am besten einpacke (Schnittstellen), damit man vernünftig damit arbeiten kann.

    Ich muß dazu kurz den Computer wechseln, ich stell das Zeugs mal rein, bis dann halt !
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  9. #9
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    So , da sind wir wieder. In der zip sind drei dinge:

    2313.bas für den 2313 Co Prozessor
    MyTwi.LIB die braucht er, die muß zu den anderen Bascom-libraries (muttu gucken, wo)

    M32s.bas für den ATmega32

    ABlauf : Master schickt 3 byte an der 2313. macht stop und PRINT
    dann schickt er ein Byte an der 2313 (überschreibt das erste von den dreien)
    macht gleich wieder START
    und liest jetzt die drei Byte vom Slave
    macht stop
    und PRINT
    Status sollte immer 28 oder 58 sein (ack)

    Dann sendet er noch an das Powerport und blinkt
    und PRINT sol auch 28 sein (ack)


    Der Slave steht Lade-bei-fuß. Will der Master schreiben, empfängt er das, will er lesen, sendet er den gleichen Buffer zurück

    Hat er ein Stop-gekriegt, sendet der Slave an den anderen PCF (Output) das erste Byte vom Buffer. Sollten also binär aufsteigend sein.


    Wildes rumschicken, sollte auf keinen Fall wo hängen bleiben.

    Alles Prototypes ohne Gewähr

    Sachdienliche Hinweise erbeten, Fragen gerne
    Angehängte Dateien Angehängte Dateien
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  10. #10
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    ..2 RNBFRAs gleichzeitig ..
    Dzt. noch keine Möglichkeit eingebaut, die I2C adresse zu ändern.
    Ist ja irgendeine Hausnummer. Gehört zu der "konfektionierung" dazu.
    Weiss auch nicht recht, wie. Ich hab keine Pins auf dem 2313, die man jumpern könnte. Vielleicht irgenwas software-mäßiges und im ERAM speichern ?
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

Seite 1 von 3 123 LetzteLetzte

Berechtigungen

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

LiTime Speicher und Akkus