Forum: Mikrocontroller und Digitale Elektronik noch eine Frage an die Siteplayer Leute: com port fehler


von Tubie (Gast)


Lesenswert?

Hallo an alle Siteplayer User!

Ich habe das Teil fast erfolgreich in betrieb genommen siehe:

Beitrag "kleiner Webserver gesucht Rs232 -> Ethernet"


Jetzt habe ich das folgende Problem festgestellt:

Beim senden von Objekten von meiner Steuerung zum Siteplayer via UART 
werden die Daten zunächst auf die Website übernommen. Nach einer 
gewissen Zeit friert die Webseite von den Werten her ein, allerdings ist 
das Web interface noch am leben (Seite wird vom Explorer geladen). Wenn 
ich die Stromversorgung des Siteplayers kurz unterbreche, funktioniert 
es eine kurze zeit und dann wieder nicht.

Ich kann an Werten senden, was ich will es werden immer die alten Werte 
der Objekte angezeigt. Komischerweise funktioniert der SiteplayerPC 
Simulator einwandfrei. Die Steuerung wurde an COM2 des PC's gehängt und 
da werden alle Werte auch über einen längeren Zeitraum korrekt 
angezeigt.

Die Com Port Settings habe ich auf den Werkseinstellungen mir 9600 
gelassen. Es werden über die UART erst 20 NOP's übertragen und 
anschließend nur die einzelnen Objekte...

Hat jemand von euch schon ähnliches erlebt? Habe das Modul in verdacht, 
möchte aber von vorn herein jeden anderen Fehler ausschließen, bevor ich 
dort anrufe und ein neues verlange.

Gruß,
Tubie

von STK500-Besitzer (Gast)


Lesenswert?

Für den Siteplayer gibt es bei Yahoo eine Usergroup:

http://tech.groups.yahoo.com/group/siteplayer/?v=1&t=search&ch=web&pub=groups&sec=group&slk=1

Fall der Link nicht gehen sollte, einfach auf der Yahoo-Site nach 
"Groups" gucken und da dann nach Siteplayer suchen...

von Tubie (Gast)


Lesenswert?

... Danke für den Link!

Das Problem ist dort nicht bekannt. Werde morgen mal anrufen evtl. ist 
das Modul ja wirklich defekt. Habe festgestellt, wenn es längere Zeit 
aus war, geht es fast eine Stunde ohne ein einziges Problem. Wenn es 
dann einmal ausgefallen war läuft es nach dem Neustart nur wenige 
Minuten bis zu diesem Fehler.

Was mich halt wundert, der Rest des Servers läuft einwandfrei. Wenn der 
hängen würde, würde der Watchdog ansprechen. Oder eben garnichts mehr 
gehen. Evtl. hat die UART selbst einen Fehler, sodass garkeine Daten 
mehr ankommen.

Vielleicht git der COM Port Tester ja noch irgendwelche Anhaltspunkte 
her - hoff.

... werde mich zu diesem Thema dann nochmals melden.


Gruß,
Tubie

von Tubie (Gast)


Lesenswert?

Fehler - wenn man es so nennen kann - gefunden!!!

Falls jemand mal ein ähnliches Problem hat und auf diesen Fred stößt...

Nach dem anschließen des SP1 an den PC(COM2) und starten des Programms 
"Serial Tester" wurde mir, wenn das Modul zuvor nicht mehr reagierte ein 
"Object Read Timeout Error" angezeigt. Ein Neustart des Servers ohne 
meine Steuerung ließ mich sehr lange auf den Fehler warten - er kam 
nicht. Steuerung dran und Fehler war wieder da.

Die Steuerzeichen waren exakt identisch. Habe den COM Port auf COM3 
nämlich aufgezeichnet.

Lange rede kurzer Sinn: Es muß vor jedem Commando 20x ein NOP gesendet 
werden. Wahrscheinlich läuft irgend ein Puffer im Siteplayer über, wenn 
die Daten zu schnell ankommen. Und dann hängt nur der COM Port des 
Siteplayers. Der Rest läuft problemlos weiter.

Das Datenblatt schweigt sich wie immer bei diesen Fertigprodukten wie 
auch beim VDRIVE (VNC1L-1A) über sämtliche Timings aus. Da lob ich mir 
die Datenblätter von Atmel mit >100 Seiten, wo ALLES bis ins aller 
kleinste Detail doppelt und dreifach dargestellt und erklärt wird. Es 
ist wirklich schlimm, wenn man keine 100%igen angaben zu einer Sache hat 
und diesen Teil durch recht Aufwändige und Zeitintensive Versuche 
herausfinden muß.

Viele Grüße,
Tubie

von Mensch_Z (Gast)


Lesenswert?

20 x nop ...es genuegen auch 3 nops um die com zu beginnen !
Ich hatte damit noch nie Probleme....meine SP1er laufen in verschiedenen 
Industriebetrieben 24h/24h.

Wenn die Docu fuer dich zu schmal ist,dann musst du eben zwischen den 
Zeilen lesen und testen !

Was soll da ueberlaufen ? Du du weisst doch wieviel Platz fuer Variablen 
vorhanden ist und du hast definiert was wohin kommen muss.
Vielleicht lohnt es sich die '' kleine'' Docu nochmals durchzulesen !?

von tubie (Gast)


Lesenswert?

@Mensch_Z

... dann hast Du ja richtig viel Erfahrung mit den Dingern und kannst 
mir noch ein wenig Starthilfe geben. Ab und an hängt der Server mal für 
ne minute oder kürzer (Website ist nicht aktuell, COM-Daten werden nicht 
verarbeitet). Der Siteplayer fängt sich dann aber wieder und macht ganz 
normal weiter. Einen Totalausfall habe ich seit meinem Post gestern 
nicht mehr gehabt.

Werde heute abend mal auf 3 NOP's runter gehen und dann wieder laufen 
lassen. Aber im Prinzip ist meine ansteuerung (mit 3 NOP's) richtig, 
oder?

for i:=1 to 35 do
begin
     $00,$00,$00,$81,Object,Wert(l),Wert(h)
end;

... und das ganze Paket wird dann alle 5 sec. zum Siteplayer geschickt. 
Später dann mal alle 30 sec.


> Was soll da überlaufen?
Die 20 NOP's aus dem Datenblatt stehen ja nicht ohne Grund da und ich 
dachte wenn die Befehle zu schnell hintereinander kommen (ohne NOP's) 
'könnte' ja der Empfangsbuffer überlaufen - das ist aber eine reine 
Vermutung. Wäre halt schön, wenn es ein Busy Flag oder Status Register 
geben würde, wo man sieht, was mit dem Kerlchen los ist.

Alternativ könnte ich noch versuchen ein Object zu lesen. Kommt dann 
keine Antwort vom Siteplayer, wird die Reset Leitung kurz runtergezogen 
und das wiederum wird dann einem Object ^Reset_Counter zugewiesen ;) - 
Aber wirklich nur als aller aller letzte Möglichkeeit gedacht.

Gruß,
Tubie

von Tubie (Gast)


Lesenswert?

Zu früh gefreut:(

Er hängt wieder. Habe das Programm von 20 auf 3 NOP's geändert er hing 
sofort. Nach der Änderung auf den ursprünglichen Wert von 20 NOP's keine 
besserung - ich denke das Modul hat wirklich einen Defekt. Zumal es ja 
fast einen ganzen Tag ohne Proboleme gelaufen ist und jett wieder 
rumzickt.

Werde mir morgen ein neues bestellen.

Gruß,
Tubie

von Mensch_Z (Gast)


Lesenswert?

hi,

ist deine Baudrate korrekt ?...oder bist du an der ToleranzGrenze ?

von Tubie (Gast)


Lesenswert?

Hi,
eben grad nochmal schnell nachgeschaut - ist korrekt eingestellt. Die 
Kommunikation mit dem PC klappt ja auch. Ich bin am ende :(

Gruß,
Tubie

von Mensch_Z (Gast)


Lesenswert?

Klappt alles wenn du mit dem SERIAL TESTER arbeitest ?
...damit kannst du checken was du 'geschrieben' hast.

von STK500-Besitzer (Gast)


Lesenswert?

Ist wirklich komisch.
Meine Siteplayer laufen auch 24/7 ohne Probleme.
Allerdings bekommen Sie zur Zeit nur 5 Bytes geschickt, die auch noch 
hintereinander im Speicher liegen.
NOPs habe ich bisher keine schicken müssen
Zwischenzeitlich hatte ich sogar das UDP-Interface in Betrieb und 
damitauch diverse Bytes verschickt. Alles kein Problem.
Vielleicht solltest du die Datenübertragung überdenken, und nur eine 
Adresse mit 16 Bytes schreiben und dann den zweiten und dritten Satz 
Daten hinterher.

von Tubie (Gast)


Lesenswert?

Den habe ich gestern mal angeschlossen. Hat soweit alles funktioniert. 
Senden/Empfangen.

Wenn allerdings meine Hardware dran war und der Fehler einmal da war, 
bekam ich beim drücken von "GET" die Meldung "Object Read Timeout 
Error".

Das ließ mich das mit dem Puffer überlauf vermuten. Werden die Daten 
langsam gesendet(1 Datensatz pro Klick), klappts und wenn's schnell vom 
AVR kommt, bekomme ich irgendwann den Fehler.

Habe jetzt noch einen kleinen Hoffnungsschimmer - werde nach jedem 
Datensatz eine kleine Pause machen und alle Datensätzte (35 Stück) 
innerhalb von mehreren Sekunden übertragen.

Gruß,
Tubie

von Tubie (Gast)


Lesenswert?

Vor allem was mich am meisten wundert, wenn der AVR am SitePlayerPC 
hängt klappt alles wunderbar. Da kann ich ihn alle 0,5sek mit 35 
Objekten "zumüllen" und er tut brav seinen Dienst.

Gruß,
Tubie

von Mensch_Z (Gast)


Lesenswert?

siteplayer_pc definitiv vergessen
steige in die realitaet herunter!
Gut,dass du zum Schluss gekommen bist
dem SP1 mehr Zeit zu goennen.

von Tubie (Gast)


Lesenswert?

so... Programm ist umgeschrieben.

Es werden jetzt alle 35 Datensätze mit 0.2 - 1 Sec Abstand gesendet 
(geschieht in der mainloop, wenn nichts anderes zu tun ist). 
Wiederholung der Sendung alle 20sec. Der Fehler ist immer noch da. Habe 
es mit 0,1,3,20 und sogar 50 NOP's versucht. Immer das selbe Problem.

Gruß,
Tubie

von Mensch_Z (Gast)


Lesenswert?

haenge doch einen sniffer an die Leitungen zwischen AVR und SPeins.
zur Not auch das Bray Terminal + 1 * max232

von Tubie (Gast)


Lesenswert?

habe ich schon gemacht - siehe oben

"Die Steuerzeichen waren exakt identisch. Habe den COM Port auf COM3
nämlich aufgezeichnet."

Jetzt hat sich das nächste Problem eingestellt, die Website baut sich 
nach ein paar Minuten auch nicht mehr auf. Werde morgen mal anrufen und 
dann berichten.

Erstmal Vielen 1000 Dank für eure unterstützung!

Gruß,
Tubie

von Tubie (Gast)


Lesenswert?

Fehler diesmal wirklich gefunden!

Der RX-Pin auf dem Siteplayer Board (UART) war nicht richtig 
festgelötet. Habe ihn gestern abend nochmals nachgelötet und seit dem 
läuft die Kiste einwandfrei ohne Probleme. Ist immer aktuell und läuft 
so, wie ich es eigentlich erwartet habe.


Die NOP's sind alle draußen, allerdings kommt die Sendung der einzelnen 
Objecte immer noch innerhalb von 5 Sekunden und dann wiederholung alle 
60 Sekunden.


Das abstürzen des HTTP-Servers lässt sich damit zwar nicht erklären aber 
es läuft!!!

Gruß,
Tubie

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
Noch kein Account? Hier anmelden.