Autor Thema: PHP-Programmierung u. Kommunikation via EASY_COM.dll  (Gelesen 73752 mal)

Offline Peter_Pig

  • Jr. Member
  • **
  • Beiträge: 48
Re: PHP-Programmierung u. Kommunikation via EASY_COM.dll
« Antwort #15 am: Juli 03, 2010, 13:37:40 Nachmittag »
z.B. bei Write 0 MB1 0

bekomme ich die Rückmeldung 99 Unbekannter Befehl oder Synthax Fehler!

Gleiche Fehlermeldung bei Read 0 MW1 bzw MDW1.

... das kriegst Du schon noch hin  :) ... oder?   :D

Ich habe in die Doku der DLL reingeschaut ... und es scheint wirklich etwas kompliziert zu sein, mit diesem Write_Object_Value() ...

Also, ich drück Dir (mir) die Daumen.

Gruss,

Peter




Offline holzwurm

  • Jr. Member
  • **
  • Beiträge: 36
Re: PHP-Programmierung u. Kommunikation via EASY_COM.dll
« Antwort #16 am: Juli 03, 2010, 17:21:49 Nachmittag »
eigentlich :-\ sollte das Funktionieren.

Bei mir geht es aber auch nicht bzw. READ MB geht nur mit zweistelligen Merkern :-X.
Da ist wohl in der Abfrage für die Syntax ein logischer Fehler.
Ich werd mir das heute Abend mal näher ansehen und berichtigen.

Für die Doppelworte brauchst du MD (nicht MDW) als PÜarameter, dass sollte aber gehen weil ich das auch für das Lesen meiner Temperaturfühler verwende.

Gruss
Dietmar


Offline Peter_Pig

  • Jr. Member
  • **
  • Beiträge: 48
Re: PHP-Programmierung u. Kommunikation via EASY_COM.dll
« Antwort #17 am: Juli 03, 2010, 19:29:12 Nachmittag »
Ich Dussel!  >:( ... da habe ich mein Denkmuskel nicht genügend getätigt, sorry.

Ja : Read 0 MDx funktioniert tadellos ... (wie komme ich denn nur auf die Idee MDWx ?!!)

 :-\ ... dafür funtzt aber Read 0 MWx (noch) nicht.

Aber :

Zitat von: Holzwurm
READ MB geht nur mit zweistelligen Merkern

Das kann ich nicht nachvollziehen : Read 0 MB1 funktioniert bei mir. Vielleicht hast Du deine easyTCP-Server version schon verschossen?

 ::) mach das gute Stück nicht kaputt.  ;D

Vielen Dank für Deine Bemühungen.

Peter





Offline holzwurm

  • Jr. Member
  • **
  • Beiträge: 36
Re: PHP-Programmierung u. Kommunikation via EASY_COM.dll
« Antwort #18 am: Juli 03, 2010, 22:58:08 Nachmittag »
 >:( des Rätsels Lösung: MW hatte ich noch garnicht vorgesehen, da die DLL auch nur MB und MD unterstützt. Da must du dir im Moment mit dem getrennten lesen und schreiben von den beiden Bytes des Worts behelfen. Sobald ich das Programm überarbeite werde ich das mit aufnehmen.   

Probier mal den Parameter zum schreiben für MB mindestens zweistellig einzugeben. Also 0 als 00.

Gruss
Dietmar

Offline Peter_Pig

  • Jr. Member
  • **
  • Beiträge: 48
Re: PHP-Programmierung u. Kommunikation via EASY_COM.dll
« Antwort #19 am: Juli 04, 2010, 11:01:52 Vormittag »
Hi Dietmar :

>:( des Rätsels Lösung: MW hatte ich noch garnicht vorgesehen, da die DLL auch nur MB und MD unterstützt.

Stimmt, das wird seinen Grund haben...

Probier mal den Parameter zum schreiben für MB mindestens zweistellig einzugeben. Also 0 als 00.

Leider klappt das bei mir nicht so  :'( ... z.B.: Write 0 MB5 10 wirft immernoch Fehler 99 genauso wie Write 0 MB05 10 oder sonstwas.

Klappt es denn bei Dir? Dann wäre wohl was mit meinen Runtimes nicht in Ordnung.

Wenn Write MBx yz funktionieren würde, dann könnte ich, wie Du vorschlägst, Worte aus je zwei Bytes zusammensetzen. Klar doch.

Read 0 MDx hat ein problem : sowie der Rückgabewert größer als 65535 (16 Bit) ist gibt es keine Rückmeldung (irgendwas kackt ab).

Lass Dich nicht nerven von mir.

Gruß,

Peter

Offline holzwurm

  • Jr. Member
  • **
  • Beiträge: 36
Re: PHP-Programmierung u. Kommunikation via EASY_COM.dll
« Antwort #20 am: Juli 04, 2010, 11:40:15 Vormittag »
Hallo Peter,

merkwürdig, bei mir geht das (siehe Screenshot).

Hm...die Probleme mit dem MD hatte ich noch nicht, aber meine Temperaturen die ich damit erfasse sind auch nicht so hoch  :D.

Mals sehen ob ich den Fehler auf die Schnelle ausmachen kann, dann werde ich ne neue version online stellen.

Gruss
Dietmar

Offline Peter_Pig

  • Jr. Member
  • **
  • Beiträge: 48
Re: PHP-Programmierung u. Kommunikation via EASY_COM.dll
« Antwort #21 am: Juli 04, 2010, 13:12:16 Nachmittag »
 :-[ ... das macht mich total eifersüchtig.

Das hier ist meine console :



Ist der Rattenschwanz an leeren Anfragen und 98er Antworten normal?

Ich weiß nicht ... da ist vielleicht was faul an meinem system.

Gruß,

Peter

Offline Peter_Pig

  • Jr. Member
  • **
  • Beiträge: 48
Re: PHP-Programmierung u. Kommunikation via EASY_COM.dll
« Antwort #22 am: Juli 04, 2010, 13:28:34 Nachmittag »
Okay, Fehler behoben  :)

Ich hatte im PHP ein Leerzeichen vor dem "\n" ... das scheint Write 0 MBxx und MDxx - anders als Write Mxx und alle Reads - nicht zu mögen  ::)

Mein Fehler, oups!

Danke,

Peter

« Letzte Änderung: Juli 04, 2010, 14:05:54 Nachmittag von Peter_Pig »

Offline Peter_Pig

  • Jr. Member
  • **
  • Beiträge: 48
Re: PHP-Programmierung u. Kommunikation via EASY_COM.dll
« Antwort #23 am: Juli 04, 2010, 13:57:17 Nachmittag »
Hallo, schon wieder ich ...   :D

Also, wie gesagt, nachdem ich das überflüssige leerzeichen aus meinem $out String entfernt habe, läuft alles wie am Schnürchen.

Zumindest glaube ich jetzt, dass ich bestimmte Rückschlüsse treffen kann ... (oder vielleicht sind es doch nur Trugschlüsse?).

Ich glaube, daß Du mit Write und Read MDxx eigentlich ein ungewolltes Read/Write MW implementiert hast :

Bei Write MDxx wird der Übergabewert nämlich nur auf zwei Byte geschrieben. Werte die 4 Byte brauchen, können somit nicht geschrieben werden.

Ähnliches gilt wohl auch für Read : scheinbar liest das Programm zwar 4 Byte aus der Easy raus, dann wird aber irgendwo versucht den Wert auf 2 Byte unterzubringen, was nicht klappt wenn der Wert größer als 65535 ist.

Übrigens : bei minus Temperaturen könnte deine Temperatur-Erfassung auch Probleme haben  ;)

Vielleicht täusche ich mich...

Na ja, es ist vorerst mal unwichtig. Ich will erstmal damit leben und Dich nicht von deinem Projekt abhalten (Ich weiß wie das ist).

Gruß,

Peter
« Letzte Änderung: Juli 04, 2010, 14:12:08 Nachmittag von Peter_Pig »

Offline holzwurm

  • Jr. Member
  • **
  • Beiträge: 36
Re: PHP-Programmierung u. Kommunikation via EASY_COM.dll
« Antwort #24 am: Juli 04, 2010, 14:34:24 Nachmittag »
jep du liegst richtig.

Gut das wirs bisher nur Warm hatten  ;)

Probier mal die anhängende Version, damit müßte MD jetzt richtig funktionieren und auch MW sollte gehen. (Eventuell gibt es noch Probleme beim Überschreiten der Wertebereiche, das hab ich noch nicht ausgetestet.)

Die zuvielen /n erklären die vielen "98"er in deinem Log.
Das heißt eigentlich das ein unvollständiges Kommando empfangen wurde.
Das macht er aber leider auch wenn ich die Verbindung beende, da ich den Fehler bisher nicht ausmachen konnte hab ich das erstmal "ignoriert".
Warum das aber bei MB passiert und bei den anderen nicht, kann ich mir jetzt nicht erklären.

Gruss
Dietmar

Offline Peter_Pig

  • Jr. Member
  • **
  • Beiträge: 48
Re: PHP-Programmierung u. Kommunikation via EASY_COM.dll
« Antwort #25 am: Juli 04, 2010, 15:51:10 Nachmittag »
 :o das ging aber schnell!!

Hut ab : alles scheint wunderbar zu funktionieren : Write/Read M, MB, MW, MD ... auch negative Werte in einen MD schreiben und lesen funktioniert.

Einfach Klasse, Dietmar.

Vielen Dank für Dein erfolgreiches Bemühen.

Ich werde versuchen heute noch irgend etwas "erstaunliches" damit zustande zu bringen und hier vorzuzeigen.

Macht echt Spaß!

Gruss,

Peter

Offline Peter_Pig

  • Jr. Member
  • **
  • Beiträge: 48
Re: PHP-Programmierung u. Kommunikation via EASY_COM.dll
« Antwort #26 am: Juli 06, 2010, 18:14:02 Nachmittag »
Hallo,

anbei ein kleines Beispiel, wie man die easyTCP-Server Daten vom HTTP-Server fast in Echtzeit an den Visualisierungs-Client schicken kann, ohne alle x-Sekunden zu pollen.

Ich nenne es Ajax-Slow-Load, weil es auf beiden Technologien basiert (Ajax und Slow-Load, halt).

Dietmar's "kleines Programm" eignet sich hierfür besonders gut, da der easyTCP-Server nicht bei jeder Anfrage neu gestartet werden muss.

Ich weiß, es ist nicht besonders beeindruckend... ist halt nur ein Beispiel.

SEHR WICHTIG : der Log-level sollte auf 0 gestellt werden, sonst wächst die Log-Datei schnell ins unmögliche.


 ::) Die schäbige mitgelieferte EasySoft Projektierung schreibt für jeden getätigten eingang ein Bit von MD1 ... wie gesagt  : nur ein Beispiel.
Gruß,

Peter
« Letzte Änderung: Juli 06, 2010, 18:25:02 Nachmittag von Peter_Pig »

Offline holzwurm

  • Jr. Member
  • **
  • Beiträge: 36
Re: PHP-Programmierung u. Kommunikation via EASY_COM.dll
« Antwort #27 am: Juli 06, 2010, 20:30:51 Nachmittag »
Hallo Peter,

das ließt sich ja gut. Sobald ich hier mit den Dingen durch bin die ich für die Visualisierung brauche werde ich das auch mal ausprobieren ::). Genau sowas brauche ich wenn ich die Dimmerwerte ändern möchte.

Halst mich mal auf dem laufenden, mit ajax und java script habe ich mich noch garnicht beschäftigt.

Gruss
Dietmar

Offline Peter_Pig

  • Jr. Member
  • **
  • Beiträge: 48
Re: PHP-Programmierung u. Kommunikation via EASY_COM.dll
« Antwort #28 am: Juli 10, 2010, 10:35:23 Vormittag »
Hallo nochmal,

ich glaube irgendwo gelesen zu haben, dass Du deinen Web-Client auch auf dem IPhone bzw. IPod benutzen willst.

Macht ja auch sinn, wenn man sich schon mit der Herstellung einer Web-App rumschlägt  ;D

Hier finden sich super Tipps.

Ich hoffe es hilft.

Gruß,

Peter

Offline holzwurm

  • Jr. Member
  • **
  • Beiträge: 36
Re: PHP-Programmierung u. Kommunikation via EASY_COM.dll
« Antwort #29 am: August 18, 2010, 07:10:41 Vormittag »
Hallo Peter,

bist du mit deinem Projekt weiter gekommen?

Benutzt du eigentlich ein Framework für das ganze oder machst du das von Hand?

Die letzten Wochen habe ich erstmal die physikalischen Voraussetzungen geschaffen um weiter machen zu können, sprich Kabel verlegt, Rolladen verkabelt, easys vernetzt etc.

Nebenher hab ich den ganzen Aufbau so umgestaltet das die vollständige Konfiguration in einer Datenbank liegt und somit Änderungen jederzeit über den Browser vorgenommen werden können. Bei Gelegenheit werde ich mal eine Kurzvorstellung des Projekts in einem neuen Thread machen.

Was mir jetzt noch fehlt ist die passende Gestaltung der Oberfläche und da bieten Javascript und Ajax Möglichkeiten die ich mit reinem html/php nicht realisieren kann.

Gruss
Dietmar