Ich bin noch auf der suche nach der besten Methode von AVR zu AVR Daten seriell per Funk zu übertragen. Erste Versuche mit TxD->Sendemodul .... Empfangsmodul->RxD haben zwar funktioniert, aber die Reichweite ist doch sehr eingeschränkt da der UART im AVR auch mit geringen Übertragungsfehlern nicht gut fertig wird. Jetzt habe ich überlegt, ob ich statt des UARTs eigene Software schreibe, welche die Daten auf irgendeine Weise an einem Port ausgeben und senden bzw empfangen kann. Das ganze mit hoher Fehlertoleranz. Die Frage ist nur, welche Methode die beste dafür ist. Gibts schon irgendwelche Erfahrungen, hat jemand sowas schon mal gemacht ? Ich möchte nicht einen UART nachbauen, sondern etwas machen, was mit Übertragungsfehlern deutlich besser fertig wird. Gruß Harry
Der UART ist schon gut. Der braucht seine Nullen und Einsen. Allenfalls muesste man die HF Leistung, die Antennen und die Modulation ueberpruefen. Wenn die dann gut sind, kann man noch eine Forward Errorcorrection reinmachen. Nach dem UART. Das UART bleibt auf alle Faelle. Da gibt's nicht besseres.
> störsichere serielle Übertragung
ist zuerst eine Frage der Anwendung, der Umgebung und den Anspruechen.
Die Frequenz sollte in einem Band sein, das genuegend wenig
Interferenzen hat. Dann kann man eine unempfindlichere Modulation
waehlen, und dort auch Bandbreite gegen Stoerabstand eintauschen. Auf
der digitalen Seite kann man auch Bandbreite gegen Stoerabstand tauschen
und Vorwaertsfehlerkorrigieren mit einem Hamming Code, resp
Nachher-Fehlererkennen mit einem CRC. Die Frage ist auch, was den
gewuenscht ist . Bei einer Sprach-/Bilduebertragung muss man's anders
machen als bei einer Datenuebertragung.
mit dem UART hab ich schon auf 433 versucht. Störungen durch andere habe ich hier keine in der Einöde am Land :-). Dabei habe ich den Sender erhöht aufgestellt, mir im Empfangsgerät die Störungen anzeigen lassen und bin dann über die Wiesen weggegangen. Nach ca. 50m nahmen die Störungen deutlich zu, bis 250m gings noch, danach waren mehr Störungen als gute Daten zu sehen. Ich hab heute mal zum Spaß jedes Bit als Byte über den UART übertragen. Also ein Bit-0 als Byte 0 gesendet und dann im Empfänger wieder zusammengesetzt. So ging es bis 250m fast störungsfrei, ab 350m wurde es dann schlechter. Das ganze braucht natürlich die mehr als 8-fache Datenmenge, war nur ein Versuch. Da muss es doch irgendwelche schlauen Menschen geben, die da schon irgendwelche Übertragungstricks erfunden haben mit denen man das noch besser machen kann ?
Ja, genau, die gibt es! Die haben das mit FEC (Foreward Error Correction) gemacht. Aber das wurde in diesem Thread schon mal erwähnt...
Wenn die Fehlerrate sich erhoeht, kann man ja mit der Bandbreite runter, zumindest auf dem Papier. Welche Art Modulation wird denn verwendet ? Oder eine Richtantenne einsetzen, oder beides. Ich hab hier ein ZigBee Modul, das glaubt 1Meile mit den 100mW zu machen. Hab's aber noch nicht probiert.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.