Archiv verlassen und diese Seite im Standarddesign anzeigen : Übertragungsprotokoll
Hi,
für ein Projekt möchte ich eine Kommunikation zwischen einem Sender und einem Empfänger herstellen. Das Problem ist, dass es eine Funkverbindung ist, und die beiden nicht gleich getaktet sind. Mein Problem ist nun, was man für eine Kodierung nehmen sollte. Ich dachte zuerst an die Manchester-Kodierung. Aber auch hier brauchen die doch immer eine Angabe, wie lang eine Taktphase (ungefähr) ist, oder?
z.B. nach IEEE 802.3: 1 ist 01, 0 ist 10. Woher weiß der Empfänger dann, wenn er eine 0110 bekommt, wann die empfangene 1 zuende ist? Wenn er sie verpasst, dann bekommt er ja nur eine 010, was ja keinen Sinn macht...
Oder gibt es noch andere Kodierungen, die vielleicht besser geeignet sind?
MfG, Ozzy
Hi,
wenn Du den Code komplett selber schreibst dann kannst Du vielleicht selber die Frequenzerkennung Programmieren. Was natürlich wichtig ist, Du musst eine Obergrenze definieren, also z.B. schneller als 10Khz wird das Senden und Empfangen es nicht sein. Der sender sendet dann z.B. 100x hintereinandere zu beginn der Übertragung eine Folge aus 0 und1 1 also 01010101010.... Beim Empfänger tastest Du das gesendete Signal ab und zwar würd ich eine Abtastfrequenz nehmen die min. 10x höher als die Maximale Sendefrequenz ist also z.B. 100Khz.
Wenn Du nun mit der dieser Frequenz misst wie lange es dauert bis ein Wechsel zwischen 1 und 0 stattfindet dann hast Du recht schnell die Übertragungsgeschwindigkeit rausgefunden. Das ganze muss nur 1x geschehen, danach kannst Du dir die Geschwindigkeit merken und bei jeder Kommunikation verwenden.
Gruß
Maruu
Hi,
da ich Sender und Empfänger ja selber programmiere, und weiß, dass das Signal auf Senderseite für 1ms halte, dann kann ich das ja auch auf Empfängerseite einstellen. Also vielleicht ein Schwellwert leicht über 1ms, und wenn dann immer noch eine z.B. 1 anliegt, dann ist das eben schon eine zweite 1. Dann bräuchte ich ja eigentlich auch Manchester nicht...
MfG, Ozzy
Naja Manchaster macht schon sinn, das sorgt für die Gleichanteilsfreiheit, das wird dadurch erreicht das pro übertragener 1 oder 0 jeweils immer ein Spannungswechsel von null auf 1 oder 1 auf null verwendet wird. Deshalb wird Manchaster oft auch in der Funktechnik verwendet. Bedeutet aber natürlich eine reduzierung der Übertragungsrate.
Nur müsste man dazu genauer deine Umgebung kennen, welche Strecken und in welchem Terain überbrückt werden müssen mit welchen Geschwindigkeiten und Datenraten.
Gruß
Maruu
Hi, aber was bringt mir denn diese Gleichanteilsfreiheit?
Hi,
100% kann ich Dir diese Frage leider nicht beantworten. Was ich gelesen habe, ist daß das Signal am Eingang eines Funk-Sender weitestgehend Gleichspannungsfrei sein sollte. Eine weiterer Vorteil des Manchastercodes ist das Rauschen beim Empfänger. Stell Dir vor Du benutzt keine Codierung und hast mal ne Pause zwischen den Übertragungen. Du sendest also sozusagen ne weile Lange immer 0. Durch Rauschen oder Störungen kann aber nun Datenmüll beim Empfänger ankommen der evt schwer erkennbar ist. Beim Manchastercode wird stetig ein Muster geschickt und Rauschen o.ä. kann recht leicht erkannt werden.
Gruß
Maruu
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.