TIA LHTTP_PostPut für HTTP Kommunikation

LS_98

Level-2
Beiträge
9
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

ich versuche von einer S7-1200 G2 eine HTTP Verbindung zu einem übergeordnetem MDE herzustellen. Versuchsweise habe ich dazu einen Webserver am Arduino laufen.
Im Browser kann ich durch ändern des URL eine LED am Arduino ein- bzw. ausschalten. Das soll auch über einen Befehl von der S7 aus möglich sein.
Könnte mir jemand weiterhelfen, wie ich den LHTTP_PostPut verschalten muss, damit ich die Verbindung zum Webserver aufbauen kann?

Ein paar Infos:
TIA V20 Update 3
6ES71212-1AG50-0XB0 (Firmware: V1.0.0)
Arduino läuft auf Port 80
Drahtlosverbindung erfolgt über TP Link AccessPoint an CPU, der Access Point ist ins WLAN vom Arduino eingewählt

Vielen Dank schonmal!
Grüße
 

Anhänge

  • Screenshot 2026-01-19 111800.png
    Screenshot 2026-01-19 111800.png
    34,1 KB · Aufrufe: 15
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi Oberchefe,
danke für deinen Tipp!
Der LHTTP_Get funktioniert soweit, wenn ich wie oben beschrieben direkt im ULR sämtliche Daten hinterlege.
Könntest du mir vielleicht noch einen Wink geben, wie es mit dem PostPut funktioniert, bzw. wieso es nicht funktioniert wie ich es umgesetzt habe? Über kurz oder lang werde ich ein paar Daten per Json in beide Richtungen austauschen müssen, benötige ich dann den PostPut überhaupt?
 
So lange Du keine größeren Datenobjekte sendest und die Daten in der URL untergebracht werden, nutzt Du ein Get: Du erstellst eine Abfrage und der Server wertet die CGI-Parameter aus.
Wenn Du ein Objekt sendest, daß der Server selbständig im Speicher verwalten soll, z.B. Formulardaten, dann ist das ein POST.
Wenn Du ein Objekt sendest, für das Du den Speicherort vorgibst, z.B. eine Datei, dann ist das ein PUT.
Wenn Du JSON austauschst, kommt das am Ende auf den Server an, wie der die verarbeitei: Als CGI, als Objekt oder ob Du eine JS-Datei irgendwohin speicherst.

Aber über URL einen Parameter übertragen, um eine LED einzuschalten, wie man das bei einer CGI- oder REST-API machst, nutzt Du einfach GET, weil die quasi eine URL "abfragst" und der Server dann die Parameter der URL auswertet.
 
Okay, vielen Dank für die Erklärung! Das habe ich soweit verstanden.

Dann habe ich jetzt quasi mein Versuchsstadium mit LEDs schalten überwunden. Ich muss weiterhin noch den Verbindungssaufbau so realisieren, dass ich JSON senden und empfangen kann. Die LStream Bibliothek habe ich eingebunden.
Die Frage wäre jetzt noch, wie ich am LHTTP_PostPut die Parameter URL, contentType und data angeben muss?
Stoße hier untergeordnet bei TCON auf den Fehler 80C5
 
Zurück
Oben