-
-
Erfahrener Benutzer
Fleißiges Mitglied
Hallo!
Also das "alleinige" Kabel zum Display geht lt. Buch auf jeden Fall ("Programmieren der AVR RISC Mikriocontroller mit BASCOM-AVR").
Und das zum PC müsste doch eigentlich auch funktionieren! Schließlich benutze ich selbst auch nur zwei Kabel zur Kommunikation zwischen Serieller Schnittstelle und meinem ATmega16.
Oder liegt ein grundlegender Denkfehler bei mir vor?
Grüße,
Jonas
-
Neuer Benutzer
Öfters hier
Hallo Engineer
Es ist so das ich einen Datenlogger habe der die Daten der Phtovoltaikanlage mit schreibt und auch über 365 Tage speichern kann.
An diesem Datenlogger ist ein RS 232 Ausgang an dem der PC hängt.
Der PC verwertet die Daten mit einer Software um diese dann ins Web zu stellen(www.bocomsun.de).
Außerdem kann man die Schnittstelle auch für ein Dispslay verwenden, welches ASCII Zeichen lesen kann.
Nun ist es so das die Daten zum PC mit 19200 Baud gesendet werden.
Die ASCII Zeichen aber zum Dsiplay nur mit 2400 Baud gesendet werden.
Laut der Firma vom Datenlogger ist es nicht möglich PC und Display zusammen laufen zu lassen.
Wäre schön wenn ich denen eines besseren belehren könnte.
Hallo vish
Bin noch nicht zum Aufbau der Platine gekommen.
Aber wenn ich die Meinung vom Ingeneer lese warte ich lieber noch, oder ?
Gruss
Günter
-
Erfahrener Benutzer
Begeisterter Techniker
Also mein Gedanke war, das nur ein Kabel alleine mit dem hardware splitting aus obiger Zeichung nicht laufen kann, und zwar deshalb, weil ja ein Protokoll abgewickelt werden muss: Datenempfang wird ja quitiert!
Man könnte natürlich alle Rückmeldeleitungen der Empfänger unterbrechen und diese nur "hören" lassen - dann allerdings ohne jegliches Protokoll / Handshake. Dies klappt aber bei Dir nicht, wegen der unterschiedlichen speeds!
Ergo: Mit einem AVR-System drei virtuelle Schnittstellen bauen und - wie oben von mir beschrieben - einen Softwarerouter programmieren.
Ist eigenlich ganz einfach: Man muss nur auf dem einen Ausgangskanal die Daten durchreichen und auf dem anderen die Daten seltener senden, sodaß die Speed passt. Natürlich muessen auch die Schnittstellen selber unterschiedlich laufen -> zwei Timer / interrupts
Ein Protokoll muss man nicht unbedngt benutzen, es reichen 2 Leitungen je Kanal mit gfs 3 der MAX 232.
Dein AVR kommuniziert also mit der Anlage akls Empfänger und ist für die beiden anderen ein Sender. Die sehen nur den AVR - es gibt keine Kabelprobleme.
klar ?
-
Neuer Benutzer
Öfters hier
Hallo engineer
Da ich so ziemlich Anfänger bin ist mir das nicht so klar.
Ich kann wohl verstehen das wenn ich über eine Leitung mit 19200 Baud den Pc bedienen will und ich dann auch noch eine Anzeige mit ASCII Zeichen und 2400 Baud versorgen will, dieses nicht ohne Probleme möglich ist.
Deshalb war mir der Schaltplan von vish(der sich viel Mühe gibt) schon logisch. Habe mir die Teile auch schon gekauft.
Aber was nun gemacht werden muß, keine Ahnung..
Danke auch schon mal für die Mühe.
Gruss
Günter
-
Erfahrener Benutzer
Fleißiges Mitglied
Hallo Günter,
ich glaube Du solltest wirklich noch mit dem Aufbau warten.
Mir ist da nämlich gerade noch ein weiterer Gedanke (leider kein so ganz positiver) gekommen, nämlich, dass die Anlage wenn sie Daten zum Rechner schickt, vermutlich andere Daten schickt, als wie wenn sie zum Display Daten schicken würde.
Das heißt, dass der Mikrocontroller die Daten, die an den Rechner gesandt werden, erst interpretieren muss um dann das Display anzusteuern. Das dürfte natürlich sehr viel schwieriger sein.
Kannst du den Datenlogger auslesen, sodass du gucken kannst, was da ankommt? Dann könnte man nämlich sehen, ob das wirklich nur die Displaydaten sind, die dann der Rechner interpretiert oder Daten, die das Display nicht verstehen würde.
Grüße,
Jonas
-
Erfahrener Benutzer
Begeisterter Techniker
Das obige ist in der Tat kritisch!
Kannst Du das am Hyperterminal verfolgen, was da ruaskommt ?
Muss man die Solaranalage umschalten von Display auf Logger ?
Du solltest mit einem Terminal wie WTERM von www.iftools.com den output der Analge amangen und ansehen.
Dann per Hand modifieren um zu lernen und den Endgeräten schicken. Diese müssen das dann ja anzeigen.
Wenn das hinhaut, hast Du die Sache im Griff und kannst bauen.
-
Neuer Benutzer
Öfters hier
Hallo Engineer
Es ist, das der Datenlogger merkt ob ein PC oder ein Display an seinem RS232 Port hängt.
Wenn der PC abgeklemmt wird, dauert es ca. 10 sec. dann werden auf dem Terminalprgramm die ASCII Daten angezeigt die sonst das Display liefern würde.
Wenn der PC dranhängt wird nichts angezeigt,(bis jetzt) bin noch am probieren.
Gruss
Günter
-
Neuer Benutzer
Öfters hier
Nochmal Hallo Engineer
Habe nun am Datenlogger den PC
und
wxterm am Notebook angeschlossen.
Die Software am PC läuft wie immer.
Der Datenlogger läuft wie immer.
Wxterm zeichnet mit 19200 Baud in Hex Einstellung Daten auf.
Wie könnte ich diese verwerten und dann mit 2400 Baud weitergeben?
Gruss
Günter
-
Erfahrener Benutzer
Begeisterter Techniker
Du musst die Aufzeichnungsfunktion benutzen und speichern. Dann man etwas manipulieren und an das Endgerät senden. Dann solltest du das Protokoll im Griff haben.
-
Neuer Benutzer
Öfters hier
Hallo Engineer und vish
Also ich habe das Protokoll mitlaufen lassen, wenn der Pc angeschlossen ist. Dann stehen dort wirre Zeichen drin die man nicht entschlüsseln kann.
Wenn der nur WXterminal läuft dann werden sauber die ASCII ausgegeben und ins Protokoll geschrieben wie sie auch auf dem Display zu sehen sind.
Wenn der PC angeschlosssen und Wxterminal auf dem Notebook läuft sind wieder nur wirre Zeichen zu sehen.
Habt Ihr noch ne Idee?
Laut Hersteller des Datenloggers kann man immer nur ein Gerät verwenden.
Gruss und Danke für die Mühen
Günter
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen