TIA HTTP-Request (GET und POST) - Von einer S7-1500 an einen Server

Hallo ich will auch mein Rollladen mit Shelly 2.5 auf und abfahre der
Befehl im IE heißt Http://192.168.0.200/roller/0?go=open
wie sende ich den den mit der S7 1511 ich habe keinen plan
Wurde doch hier alles beschrieben:
Mit einer 1200er CPU (FW 4.4) und dem "LHTTP_Post" FB aus der LHTTP-Bibliothek von Siemens ist das wirklich easy...
Einfach den entsprechenden Befehl in den String für die "url" eintragen und das war es.
Hallo Erik,

ich hatte zuvor eine S7-1214C-1AG31-FW3.0. Damit hat es nicht funktioniert.
Nun benutze ich eine S7-1214C-1AG40-FW4.4 und den Baustein LHTTP_Post aus der Siemens-Bibliothek LHTTP V16.
Damit funktioniert es wunderbar. Aus dieser CPU kann man auch FW4.5 einsetzen, aber nur mit TIA V17.
Anbei ein Screenshot vom beschalteten Baustein.

Gruß Michael
 
Hallo

also ich habe Tia 16 cpu 1511 FW 2.9 ich bekomme da nichts hin, hat da mal einer ein beispiel promamm
ich stehe auf dem schlauch

Gruß
Lothar
 
Fehler in unterlagerter Anweisung "TCON"
Der Fehlercode der Anweisung wird an "diagnostics.subfunctionStatus" ausgegeben.
Die Bedeutung des jeweiligen Fehlercodes entnehmen Sie dem TIA Portal
Informationssystem.
 
Guten Morgen in die Runde,

Frage an die die ihre Shelly Komponenten über SPS ansprechen können:
Wie habt ihr euer Shelly Device konfiguriert?

Habe mein Shelly H&T ins WLAN gehängt, kann es aber über die zugewiesene IP in keiner Form auslesen.
Fürchte gerade, dass ich den Sensor doch erst an irgendeine Zentrale melden lassen muss.

Kann mir da jemand etwas Erleuchtung bieten?


Gruß Jens
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Habe mein Shelly H&T ins WLAN gehängt, kann es aber über die zugewiesene IP in keiner Form auslesen.
Sprichst du hier von auslesen über die SPS oder Grundsätzlich schon mit dem Browser nicht?
Die Beschreibung zur API findest du hier. https://shelly-api-docs.shelly.cloud/

Statusabfrage für ein Shelly Plug S sieht z.B. so aus
ip/meter/status/0
Statusabfrage für ein Shelly Plus Plug S (2.Generation) sieht so aus
ip/rpc/switch.getstatus?id=0
 
Sprichst du hier von auslesen über die SPS oder Grundsätzlich schon mit dem Browser nicht?
Es fängt schon mit dem Browser an. Über die zugewiesene IP ist das Shelly H&T im "Normalbetrieb" nicht erreichbar.

Setze ich den Shelly allerdings in den Setup Modus, dann kann ich über den Browser auch die eingestellte IP ansurfen und/oder das Teil mit Postman auslesen.
 
Shelly H&T normally keeps its WiFi controller shut down and only wakes up when an update is due. This can either be a periodic wakeup or sensor reading change greater than the configured threshold. On these events, the device wakes up to report updated sensor values and shuts back down immediately afterwards.

When the user button is pressed, the device switches to a "setup" mode -- it will remain turned on for 3 minutes, allowing configuration over the web interface. Another short button press will put it back to sleep.

Das erklärst glaub ich …
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Über die expliziten Zeilen bin ich noch gar nicht gestolpert.

Dumm ... Las sich aus allen anderen Beschreibungen so als wenn die Web-Seite "dauerhaft" erreichbar wäre. Aber dass das Gerät nur aufwacht um sich bei seiner Cloud zu melden, negiert die angepriesene "WLAN reicht, kein Gateway nötig" Aussage ja komplett.

Heißt für mich, dass ich entweder über die Webhooks was realisiert bekomme, oder das Ding als für mich unbrauchbar zurückschicke und zu meiner ursprünglichen Idee des Wemos mit DHT11 und Settimino zurückkehre.

Danke für die Hilfe und die Infos so weit !!
 
In der Beschreibung steht aber auch
wakes up when an update is due. This can either be a periodic wakeup or sensor reading change
Vlt. funktioniert es auch wenn du MQTT aktivierst.
When configured for MQTT Shelly H&T sends values from its internal sensors on the following topics:
  • shellies/shellyht-<deviceid>/sensor/act_reasons: list of reasons which woke up the device: battery, button, periodic, poweron, sensor, alarm
    shellies/shellyht-<deviceid>/sensor/ext_power: true, if the device is usb powered
 
Guten Abend Zusammen,

ich versuche schon seit Tagen mit dem Baustein LHTTP Daten von einem Webserver abzurufen.
Der Server hat folgende Adresse https://xxx.xxx.xxx.xxx:8443 und zu Authentifikation verlangt der Server Benutzername und Passwort. Am Baustein selbst habe ich am Parameter url die Server Adresse angegeben und am Parameter userFields 'Authorization: Basic benutzername:passwort$00' im Base64 Format eingetragen.

Zertifikat vom Webserver ist importiert und DNS Server in der CPU eingetragen.

Ich bekomme aber bei jedem Versuch eine Anfrage an den Webserver zu stellen den Status 8601 und SubfunctionStatus 80E1.

Ich vermute das Problem liegt an der Authentifikation wie muss ich Benutzername und Passwort am Parameter userFields angeben...? oder hat jemanden einen Tipp wo die Ursache dafür liegen könnte...?

PS: Wenn ich ein Anfrage via einen Webbrowser, Postman oder Python Skript mache funktioniert alles einwandfrei..... nur mit meiner CPU1511- 1PN bekomme ich es nicht hin.

Danke für jede Hilfe !!!
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo in die Runde,

ich bin auch gerade dabei meine ersten Versuche mit einem Webserver zu realisieren. Die HTTP Kommunikation zwischen meiner CPU und Webserver funktioniert schon. Jedoch habe ich so meine Probleme das JSON Format in einem STRING umzuwandeln - kann mir jemand dabei helfen bzw. erklären wie man die Anführungszeichen setzten muss um z.B. dieses JSON Format in einem "TIA kompatiblen" STRING darzustellen:

{
"id": 11,
"action": [{
"action": "drive",
"target": {
"coordinate": [{
"x": 1000,
"y": 1000,
"z": 100,
"angle": 0
}]
}
}]

}

Danke, Swen
 
Nabend

Ich veruche gerade das gleiche.
Wenn ich im Shelly den "RESTRICT LOGIN" ausschalte kann ich mit den Befehl "http://192.xxx.xxx.161/status" alles auslesen was ich brauche.
Mit Get und Put.
Wenn ich den "RESTRICT LOGIN" aktivere bekomme ich auch die Fehlermeldung 8601 und im Buffer steht drin "authentifizierung fehlgeschlagen"

Ich veruche es mit dem Befehl "http://Benutzername:Passwort@192.168.xxx.xxx/<Befehl>" (natürlich richtig ausgefüllt).

Ist dort einer schon weiter gekommen ??

MfG
 
Hallo in die Runde,

ich bin auch gerade dabei meine ersten Versuche mit einem Webserver zu realisieren. Die HTTP Kommunikation zwischen meiner CPU und Webserver funktioniert schon. Jedoch habe ich so meine Probleme das JSON Format in einem STRING umzuwandeln - kann mir jemand dabei helfen bzw. erklären wie man die Anführungszeichen setzten muss um z.B. dieses JSON Format in einem "TIA kompatiblen" STRING darzustellen:

Von Siemens gibt es einige Bibliotheken zur Kommunikation:
https://support.industry.siemens.co...cation-for-simatic-controllers?dti=0&lc=en-DE

Ansonsten ist oft einfacher den Umweg über Char-Array zu gehen als direkt mit Strings zu arbeiten.
 
Zurück
Oben