-         
+ Antworten
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 19

Thema: Manchester Codierung decodieren

  1. #1

    Manchester Codierung decodieren

    Hallo liebe Forumuser.

    Hiermit möchte ich mich erst einmal kurz vorstellen. Ich bin fast 30 Jahre alt und komme aus Coburg. Beruflich bin ich seit ca. 13 Jahren als Instandhaltungselektriker beschäftigt. In meiner Freizeit beschäftige ich mich mit Laser, Modellbau, Bau von Ortungsgeräten für die Schatzsuche und natürlich die Schatzsuche.

    Momentan baue ich gerade ein Gradiometer. Wer wissen will, um was es sich dabei genau handelt, kann hier genaueres dazu nachlesen.

    Dabei kam auch eine C-Control-Unit 2.0 zum Einsatz. Diese hat die Aufgabe die Messdaten, welche vom PIC geliefert werden per RS232 an den PC zu übertragen. Hinzu kommt dann noch das bekannte billige Funkmodul von Conrad.

    Nun habe ich über das Funkmodul und der Manchester-Codierung schon viel gelesen, aber keine Antwort auf meine Frage gefunden.

    Das Problem ist, das bei o.g. Funkmodul die seriellen Daten am Empfänger in Manchester-Codierung ankommen. Nun meine diesbezügliche Frage.

    Welche elektronische Möglichkeit gibt es, die Manchester-Codierung zu decodieren? Vielleicht sehe ich nur den Wald vor lauter Bäumen nicht.

    Leider greift die geophysikalische Software nur auf den COM-Port zu und deshalb brauche ich nach dem Empfänger wieder ein reines RS232-Signal.

    Über zahlreiche Hilfevorschläge möchte ich mich jetzt schon bedanken.

    Wenn das Gradiometer läuft, ist als nächstes der Bau eines Erkundungsfahrzeuges für Hohlräume und Stollen geplant - also ein C-Control-Robi.

    mfg

    BOBO
    www.derschatzsucher.de

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    01.03.2004
    Ort
    Bielefeld (JA, das gibt es!)
    Alter
    28
    Beiträge
    1.614
    hiermit kannste de und encodieren:
    Code:
    $regfile = "m8def.dat" 
    $crystal = 7372800 
    
    Declare Function M2b(byval Minput As Word) As Byte 
    Declare Function B2m(byval Binput As Byte) As Word 
    
    Dim W As Byte 
    Dim W2 As Word 
    Dim I As Byte 
    Dim I2 As Byte 
    Dim S As String * 16 
    
    W = M2b(&B0110011001100110) 
    W2 = B2m(&B01010101) 
    
    Function M2b(byval Minput As Word) As Byte 
    
       For I = 0 To 15 Step 2 
          I2 = I / 2 
          Select Case Minput.i 
             Case 1 : M2b.i2 = 0 
             Case 0 : M2b.i2 = 1 
          End Select 
       Next 
    
    End Function 
    
    Function B2m(byval Binput As Byte ) As Word 
    
       For I = 7 To 0 Step -1 
          Select Case Binput.i 
             Case 0 : S = S + "01" 
             Case 1 : S = S + "10" 
          End Select 
       Next 
    
       B2m = Binval(s) 
    
    End Function 
    
    End
    Ich will Microsoft wirklich nicht zerstören. Das wird nur ein gänzlich unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds, Entwickler von Linux

  3. #3
    Gast
    Äh - vielleicht habe ich mich nicht richtig ausgedrückt. Was muß ich machen, damit der Laptop es wieder versteht?

    Ich möchte mit dem Laptop empfangen. Sprich - das Hyperterminal versteht keinen Manchester-Code.

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    01.03.2004
    Ort
    Bielefeld (JA, das gibt es!)
    Alter
    28
    Beiträge
    1.614
    man könnte zwischen den RS232-Port und den Empfänger noch einen billigeren µc machen wie z.b. nen AT90S2313 und den darauf abrichten einen Manchestercode zu decodieren...

    Martin
    Ich will Microsoft wirklich nicht zerstören. Das wird nur ein gänzlich unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds, Entwickler von Linux

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    15.10.2004
    Beiträge
    6
    Hallo bobo,

    Welche elektronische Möglichkeit gibt es, die Manchester-Codierung zu decodieren?
    Mir ist keine elektronische Schaltung bekannt, die das machen könnte. Vom Ansatz stelle ich mir so eine Schaltung aus Flip-Flops und Monostabile Kippstufen (als Timer) vor. Mit Software läßt sich das Problem leichter erschlagen (aus der Sicht eines Programmierers natürlich gesehen).

    Wenn Du die C-Control-Unit 2.0 als Übermittler der Messdaten vom PIC zu RS232 verwendest, kannst Du mit der C-Control-Unit 2.0 die im Manchestercode vorliegenden Daten dekodieren.

    Wenn ich richtig verstanden habe, ist Dein Gradiometer wie folgt aufgebaut:
    PIC --> Sendemodul - - - -> Empfangsmodul --> C-Control-Unit 2.0 --> RS232 --> PC

    Leider greift die geophysikalische Software nur auf den COM-Port zu und deshalb brauche ich nach dem Empfänger wieder ein reines RS232-Signal.
    Was für ein reines RS232-Signal? Wie sieht das Datenprotokoll aus? Wie muß man der geophysikalische Software die Messdaten übergeben?


    MfG

    Wolfram Hubert

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    01.03.2004
    Ort
    Bielefeld (JA, das gibt es!)
    Alter
    28
    Beiträge
    1.614
    was habt ihr immer mit eurer überteuerten c-control 2.0???
    die kostet 100€ mann kann da doch echt nen atmega8 nehmen das board ist suberbillig aufzubauen und auch im preis superbillig (wenns hochkommt dann nen 4-tel voncer c-control)...

    Martin
    Ich will Microsoft wirklich nicht zerstören. Das wird nur ein gänzlich unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds, Entwickler von Linux

  7. #7

    @kurt

    @kurt:
    Nein, da hast Du mich falsch verstanden.

    Gradiometer-Sensor 1 und Sensor 2 gehen auf einen PIC, welcher den kompletten Abgleich der Sensoren vornimmt und die Differenz beider Sensoren errechnet. Der PIC gibt dann ein 8bit-Byte und ein weiteres Bit (zeigt an, welcher Sensor eine Veränderung erfährt) an die C-Control weiter. Diese gibt den Messwert auf dem seriellen Port an das Sendemodul aus. Das Empfangsmodul gibt das serielle Signal an den MAX232 weiter, welcher am COM-Port vom Laptop sich befindet.

    Problem, am Laptop kommen die Daten im Manchester-Code an.

  8. #8
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    01.03.2004
    Ort
    Bielefeld (JA, das gibt es!)
    Alter
    28
    Beiträge
    1.614
    was war jetzt mit der idee nen atmel (maximal 8€) controller zwischen empfänger und lappy zu hängen?
    Ich will Microsoft wirklich nicht zerstören. Das wird nur ein gänzlich unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds, Entwickler von Linux

  9. #9
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    15.10.2004
    Ort
    Nordschwarzwald
    Alter
    33
    Beiträge
    506
    Wenn er schon nen PIC verwendet, wird er wohl eher auch zum Konvertieren der Daten nen PIC verwenden und keinen Atmel, aber prinzipiell denke ich auch, dass da ein einfacher uC rein sollte und der dann den Manchester-Code nach RS-232 wandelt.

  10. #10
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    08.10.2004
    Ort
    ferd. Waldmüllerg. 7/2
    Alter
    31
    Beiträge
    456
    Also, ich würde eh den C-Controller ganz herausnehmen und einen größeren PIC als Sensor/Motorsteuerungs/Sende-Empfangs-einheit einbauen (z.B.: 18F452, hat sage und schreibe 33 I/O-Ports kostet aber auch >7€ ), der dann die ganze Arbeit übernimmt. Kommt immer noch billiger, als ein C-Controller...

    Und wie alle schon gesagt haben, sollest du einen weiteren PIC nehmen, der die Daten dekodiert und sie dann an den RS323 Port schickt. Dann würde die Kommunikation so aussehen:

    Motor <-
    Sensor -> PIC <-> Sender <-----------------------> Empfänger <-> PIC <-> RS323 <-> Laptop

    Wobei im Abschnitt RS323 noch ein 5V -> 12V Pegelwandler eingesetzt werden sollte (auf anhieb fällt mir nur der MAX232/MAX233 ein)...

    Naja, ich hoffe, alle Klarheiten beseitigt (<-- Dieses Smiley schaut irgendwie fies aus... sollte aber nicht sein )
    MfG
    Mobius

+ Antworten
Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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