-         

Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 23

Thema: U-Blox GPS über Bascom Konfigurieren

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    12.08.2006
    Beiträge
    70

    U-Blox GPS über Bascom Konfigurieren

    Anzeige

    Hallo,
    ich lese mit einem ATMega8 und Bascom ein GPS-Modul von U-Blox aus. Funktioniert auch alles ganz gut. Ich betreibe das Modul mit 4Hz. Leider fällt das Modul aber immer wieder nach ein paar Wochen (wenn die SRam Batterie leer ist) in die Factory Default Werte zurück und die sind leider 1Hz. Damit das nicht passiert und ich das GPS-Modul nicht jedesmal nach längeren Stillstandszeiten mit der U-Blox Software neu konfigurieren muß würde ich es gerne über den ATMega zum beginn des Programms entsprechend konfigurieren........ich habe nur leider keine Ahnung wie das funktioniert. Die diversen USER-Manuals haben mich da auch nicht weiter gebracht. Hat von Euch jemand Erfahrung darin und weis wie das geht?



    Gruß



    Andreas

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    13.07.2004
    Ort
    bei Stuttgart
    Alter
    35
    Beiträge
    760
    hoi,
    zeichne doch einfach die zeichebnkette auuf, die die u-blox-software sende beim konfigurieren, und sende diese automatisch beim programmstart.
    mfg jeffrey

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    12.08.2006
    Beiträge
    70
    Coole Idee,

    so einen pragmatischen Tipp habe ich noch nie bekommen. Ich glaub ich mag Dich.



    Gruß



    Andreas

  4. #4
    Benutzer Stammmitglied
    Registriert seit
    12.08.2006
    Beiträge
    70
    hallo Jeffrey,

    so einfach scheint es wohl doch nicht zu sein. Ich hab das ausgelesen was an die Maus gesendet wird........ viele Y mit Ü-Pünktchen. Wie macht man sowas in Bascom???

  5. #5
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.02.2006
    Beiträge
    1.112
    Sieht aus, als hättest du die ankommenden Hex-Werte einfach als String ausgegeben.
    ÿ = FF = 255
    Kommen denn nur diese Zeichen oder auch noch andere?
    Gib sie mal als Hex-Werte aus.

    Gruß

    Rolf

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    12.08.2006
    Beiträge
    70
    Hallo Rolf,
    ich muß die Werte leider so nehmen wie sie sind. Ich lese sie mit einem Terminalprogramm aus der Konfigurationssoftware von U-Blox ( nennt sich U-Center) aus. Inzwischen habe ich gelesen das das wohl binäre Kommandos sind. Weitergeholfen hat mir das aber auch noch nicht. Kannst Du mit dieser "binären" Info was anfangen?

    Gruß

    Andreas

  7. #7
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.02.2006
    Beiträge
    1.112
    Kommen denn noch andere Zeichen?

    Kopier dir die zeichen mal in einen Hex-Editor, z.B.
    http://www.chip.de/downloads/Hex-Edi..._30351843.html

    Gruß

    Rolf

  8. #8
    Benutzer Stammmitglied
    Registriert seit
    12.08.2006
    Beiträge
    70
    Ja es kommen auch noch andere Zeichen. Ich probier das mal mit dem HEX-Editor. Danke für den TIP.

  9. #9
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    14.05.2006
    Beiträge
    260
    Hallo,

    anbei die Anleitung zu den Antaris Protokoll Spezifikationen. Datei speichern und .txt in .chm ändern.

    Vor einiger Zeit habe ich Versuche mit 2 U-Blox zu DGPS gemacht. Ich habe das Basic-Programm wieder ausgegraben. Danach kann man folgendermaßen mit U-Blox kommunizieren:


    Beispiel: Abruf der Ephimeriden:
    RXM-EPH:
    Message Structure Header ID Length Payload Checksum
    0xB5 0x62 0x02 0x31 0 0 Bytes CK_A CK_B

    CK_A und CK_B sind Checksummen


    Umgesetzt habe ich das mit folgenden BASIC Programm. Daran kann man auch erkennen wie die Checksumme berechnet wird:


    Dim buffer(100) As Byte, CK_A As Byte, CK_B As Byte
    buffer(1) = &HB5: buffer(2) = &H62: buffer(3) = &H2: buffer(4) = &H31: buffer(5) = &H0: buffer(6) = &H0
    CK_A = 0: CK_B = 0
    For i = 3 To 6
    A = (CK_A + buffer(i)): CK_A = A Mod 256
    B = (CK_B + CK_A): CK_B = B Mod 256
    Next

    B = "": For i = 1 To 6: B = B + Chr(buffer(i)): Next
    MSComm1.Output = B + Chr(CK_A) + Chr(CK_B)


    Die Einstellung der Übertragungsrate habe ich selbst nicht ausprobiert. Die Anweisung müßte aber folgende sein:

    CFG-RATE:
    Message Structure Header ID Length Payload Checksum
    0xB5 0x62 0x06 0x08 6 6 Bytes CK_A CK_B
    Payload Contents:

    Byte Offset Number Format Scaling Name Unit Purpose / Comment
    0 U2 - Meas Rate ms Measurement Rate
    2 U2 - Nav Rate cycles Navigation Rate (in number of measurement cycles)
    4 U2 - Time Ref - alignment to reference time:0 = UTC time, !0 = GPS time

    U2 bedeutet 2 Bytes bzw Word.

    Zu senden wäre also:
    buffer(1) = &HB5: buffer(2) = &H62: buffer(3) = &H6: buffer(4) = &H8: buffer(5) = &H6: 'Länge
    buffer(6) = &H0:buffer(7) = &HFA 'measurement rate 250 ms ?
    buffer( = &H0:buffer(9) = &H4 'nav rate 4 ?
    buffer(10) = &H0:buffer(11) = &H0 'UTC-Time
    CK_A CK_B s.o.

    Wie gesagt CFG-RATE habe ich nicht ausprobiert. Ich hoffe aber, dass Dir die Beispiele weiterhelfen.

    Grüße
    Christian
    Angehängte Dateien Angehängte Dateien

  10. #10
    Benutzer Stammmitglied
    Registriert seit
    12.08.2006
    Beiträge
    70
    Hallo Christian,



    danke für Deine Tipps, aber das ist für mich alles zu hoch. Buffer, checksummen usw kenne ich alles noch nicht. Ich habe jetzt eiine Beschreibung für mein GPS-Modul. Da steht auf seite 7 genau das was ich brauche. Nur ist das glaube ich alles in C. Kannst Du mir sagen wie ich die entsprechenden Befehle in Bascom abschicken muß?

    Gruß

    Andreas
    Angehängte Dateien Angehängte Dateien

Seite 1 von 3 123 LetzteLetzte

Berechtigungen

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