knxnetip über UDP-Verbindung mit S7-1200 - bauche Hilfe

wolder

Level-2
Beiträge
549
Reaktionspunkte
80
Zuviel Werbung?
-> Hier kostenlos registrieren
knxnetip über UDP-Verbindung mit S7-1200 - erster Test geschafft!

Tach zusammen.

Ich versuche gerade über eine UDP eine Verbindung zum KNX herzustellen.
Das ist einfacher gesagt als getan.

Simens will nicht helfen, also versuche ich das mal hier.

Ich hab mit dem TCON eine Verbindung hergestellt. Hoffe ich zumindest.
Daten mit dem TSEND senden macht er auch. Zumindest quittiert mir das die KNX/IP-Schnittstelle mit einem kleinen Blinken der LAN-LED.

Allerdings hab ich noch viele "Fehler" drin.
Zunächstmal versuche ich das KNX-Protokoll nachzubilden und zu senden.
Ich hab mir mit Wireshark das Protokoll angesehen und 1:1 nachgebildet und versucht zu schicken.
21 Byte sende ich, aber es kommen nur 10 an.

wo ist der Rest geblieben?

Anscheinend hat sich da noch niemand rangetraut.
Zumindest gibt es noch nix fertiges.

Ich hoffe ihr könnt mir noch Denkanstöße geben.

Gruß wolder
 

Anhänge

  • tcon1.JPG
    tcon1.JPG
    13,4 KB · Aufrufe: 102
  • tcon2.JPG
    tcon2.JPG
    34,7 KB · Aufrufe: 91
  • tusend1.JPG
    tusend1.JPG
    13 KB · Aufrufe: 86
  • tusend2.JPG
    tusend2.JPG
    126,1 KB · Aufrufe: 80
  • tusend3.JPG
    tusend3.JPG
    64,4 KB · Aufrufe: 86
Zuletzt bearbeitet:
108 Hits und leider keine Antwort.

Vielleicht beschränken wir uns mal auf das UDP-Protokoll und lassen KNX mal aussen vor.

Warum werden die Bytes nicht so gesendet wie ich das in dem DB angelegt hab?

Kann Wireshark auch Protokolle mitlesen, die er nicht kennt?
Ich meine 1:1 die Bytes egal welches Protokoll.

Gruß wolder
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Also, jetzt bin ich ein kleines Stück weiter.
Das Protokoll wird doch einwandfrei gesendet, so wie ich das gerne möchte.
Allerdings scheint die UDP-Verbindung nicht zu stehen.

Hat jemand schonmal mit der 1200-er eine UDP-Verbindung aufgebaut?
Ich hab die Bausteine TCON und TDISCON benutzt, aber zum ersten Mal.
Ich bin mir nicht sicher ob und wie ich die richtig einsetzen muss.

Hat zufällig jemand ein Beispiel dafür parat?

Gruß wolder
 
So.
Erste Erfolge.

Ich muss als erstes zu der IP-Schnittstelle des KNX-Gateways eine Anfrage senden.
Dieser sendet mir eine gültige Channel-ID.
Diese muss in dem KNXIP-Protokoll mit angegeben werden.

Jetzt hab ich es sogar geschafft eine Lampe einzuschalten.

Allerdings sendet mir die KNX-Schnittstelle weitere Anfragen und wenn ich die nicht beantworte, dann unterbricht er mir die Verbindung.

Ich versuchs weiter und werde euch auf dem Laufenden halten. (auch wenns keinem Interessiert)

Gruß wolder
 
Doch, Interesse auf jeden Fall! Nur keine Ahnung, wie ich dir dabei helfen kann ;-)
Halt uns aber gerne auf dem Laufenden.

Gruß
Timo
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Da das ganze zu viel ist hier alles hinzuschreiben.
Leg ich mal ne PDF anbei.

Ich such noch jemanden, der fit in S7-1200 ist und das eventuell weiter Umsetzen kann.
Ich bin bald mit meinem Latein am Ende und meine Zeit ist leider auch rar gesäht.
Das schlimmste ist noch, dass ich den KNX-Gateway bald wieder abgeben muss.
Der ist nur ausgeliehen.

Aber ich denke, der Anfang ist gemacht.
Jetzt fehlen noch einige Schlaue Leute, die das weiterentwickeln.

Gruß wolder

P.S.: Das Projekt könnte ich auch anhängen, aber da ist alles Kraut und Rüben und nix wirklich beschriftet.
War halt nur ein Testprojekt.
 

Anhänge

  • knxnetip.pdf
    1 MB · Aufrufe: 105
Tach zusammen.

Ich hab jetzt mal was gebastelt und möchte das Projekt gerne mit anhängen.

Das TIA in Bezug zur 1200 ist echt gewöhnungsbedürftig.
Leider sind meine Kenntnisse etwas begrenzt bei der 1200-er.
Aber ich denke, dass das jetzt mal ein Anfang war.

Es fehlt noch:
- Verbindung abfragen und aufrechterhalten
Es muss minütlich eine Anfrage an den Gateway gesendet werden. (Connectionstate_request)
Ansonsten bricht die Verbindung ab.
- Fehlererkennung
Besteht die Verbindung noch?
Sind die Daten richtig angekommen.
(Im Moment wird alles einfach quittiert)
- EIS-Typen mit integrieren
Im Moment ist nur 1-Bit realisiert.
- schöner und besserer Aufbau der Bausteine
TCON wollte ich im Kommunikations-FB mit einfügen, geht aber nicht oder zumindest hab ich es noch nicht geschafft.
....

Die Liste kann ich noch weiter schreiben, aber wenn das erstmal realsiert ist, dann wären wir schon ein großes Stück weiter.

Zusammengefasst kann man behaupten, dass ich für 145€ (kleinste Version der S7-1200) einen "Homeserver" basteln kann, der Logikfunktionen, Webinterface, Szenen schalten kann und als z.B. Heizungsregler fungieren kann.
Ist recht preisgünstig dafür.

Ich hoffe, dass sich noch einige Experten daran beteiligen und wir in Zukunft was brauchbares fertiges basteln können, da Siemens das leider nicht für nötig hält.
Die üblichen Experten haben sich ja deutlich zurückgehalten, was wohl daran liegt, dass das Thema KNX hier nicht wirklich verbreitet ist bzw. die meisten damit nichts zu tun haben.

Seis drum. Ich wollte mal nen Anfang machen.

Getestet hab ich das mit einer Busch-Jäger IP-Schnittstelle (6186/32) und ner S7-1214C.
Es sollte aber mit allen anderen Herstellern der IP-Schnittstelle auch gehen.

Viel Spaß beim Ausprobieren und testen.

Gruß wolder

P.S.: ich hatte diverse Problem mit dem Counter und den DB´s. Die scheinen nicht standardmäßig alle remanent zu sein.
 

Anhänge

  • knx_eib_test.rar
    1,6 MB · Aufrufe: 38
Ach so.
Ich werd ab nächste Woche erstmal 4 Wochen im Urlaub sein und danach erst weiter testen können, wenn ich die Schnittstelle behalten kann.

Bis dann und schöne Grüße

wolder
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich hab noch mal etwas herumgefummelt.
Jetzt läuft das schon relativ stabil.
Manchmal verzählt sich der Counter. Weiß der Geier warum.

Ich hab das jetzt mal auf 2 FB´s umgeschrieben.
- einen Kommunikations-FB (1 mal im OB100 und 1 mal im OB1 aufgerufen)
- einen Senden-FB (mehrmals im Programm mit den entsprechenden Gruppenadressen versehen)

Viele Fehler sind schon abgefragt worden.
Spannungsausfall der S7 oder des IP-Gateways ist mit drin.
Ständiges melden bei dem Gateway bzw. IP-Schnittstelle auch.
CPU-Neustart funktioniert auch.

Ich hab noch einen Disconnect mit eingebunden, der im Kommunikations-FB mit drin ist.
Im Moment noch statisch mit E0.6
Damit hab ich die Möglichkeit noch mal die Verbindung zu unterbrechen.
Das Passiert z.B. wenn sich der Zähler verzählt. Warum auch immer.

Wer das ausprobieren will:
- IP des KNX-IP-Schnittstelle: 192.168.0.100 (wollte ich auch noch variable machen.)
- IP der CPU: 192.168.0.1 (soll auch noch variable am Kommunikations-FB mit dran kommen.)

So, ich verabschiede mich in den Urlaub.
Bis dann

Gruß wolder
 

Anhänge

  • knx_eib_test2.rar
    1,5 MB · Aufrufe: 55
ist ja nun schon ein weilchen her. aber das thema holt mich eventuell in den nächsten wochen ein. gibt es neuigkeiten? oder ist das projekt "gestorben"?

vg gochtel
 
Zurück
Oben