TIA Anbindung an SQL-Datenbank (Beitrags-ID von Siemens: 109779336)

hansvomberg

Level-1
Beiträge
9
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo, ich bin gerade dabei den fertigen Baustein von Siemens (siehe Beitrag 109779336, https://support.industry.siemens.co...-s7-1500-an-eine-sql-datenbank?dti=0&lc=de-WW) mit meiner SQL-Datenbank anzubinden.

Der FB2, dh. der LSql_Microsoft ist von Siemens geschrieben und ich bin gerade dabei diesen zu verstehen. Nun gibt es in Zeile 70 eine case-Anweisung, bei der mir nicht klar ist woher der Wert für #statFBState kommt. Also Defaultwert wird die Variable #FB_STATE_NO_PROCESSING angegeben, ich hatte einfach versucht der Variable #statFBState nur den Wert 2 zuzuordnen, aber dieser wurde nicht angenommen. Mein Ziel ist es ja in die Case-Anweisung in Zeile 78 zu springen und somit die Verbindung aufzubauen und Werte aus der Datenbank auszulesen.

Fall sich schon jemand mit dem fertigen Baustein beschäftigt hat, kann sich gerne melden.
Vielen Dank schonmal!!
 
Bei deinem Link ist doch auch eine Anleitung dabei.
Da steht doch wenn der Eingang enable auf "True" gesteuert wird, wird die Verbindung aufgebaut.
Bedingung ist das die Verbindungsparameter stimmen.

Versuch doch erst Mal das Beispiel ans laufen zu bringen. In den Siemens Bausteinen was zu steuern macht ja wenig Sinn. Der Baustein soll ja verwendet werden, dann muss man nicht innen drin rumspielen.
Du installierst ja auch nicht Windows und versuchst im source Code zu ändern um ins Internet zu kommen.


Gruß Jens
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo @hansvomberg ,
dieses Beispiel kenne ich nicht. Ich hatte ein älteres vom Herbst 2020. Hier der Beitrag:

Beitrag zur SQL Anbindung

Da musste noch einiges programmiert werden, um es "richtig" einzusetzen. Natürlich muss man auch noch etwas verstehen was darin passiert. Sonst ist es bei der Fehlersuche sehr schwer. Eventuell nutzt mein erweitertes Beispiel, da erspart man sich einiges. Eine Dokumentation dazu habe ich auch schon. Einfach über die Homepage melden.
 
Bei deinem Link ist doch auch eine Anleitung dabei.
Da steht doch wenn der Eingang enable auf "True" gesteuert wird, wird die Verbindung aufgebaut.
Bedingung ist das die Verbindungsparameter stimmen.

Versuch doch erst Mal das Beispiel ans laufen zu bringen. In den Siemens Bausteinen was zu steuern macht ja wenig Sinn. Der Baustein soll ja verwendet werden, dann muss man nicht innen drin rumspielen.
Du installierst ja auch nicht Windows und versuchst im source Code zu ändern um ins Internet zu kommen.


Gruß Jens
Ja das Beispiel hatte ich auch schon gesehen. Ich benutzte hier aber die Datenbank PostgreSQL, deshalb geht es nicht zu 100% mit dem Beispiel. Ich habe auch enable und executeSqlCommand auf true gesetzt, dass sich die Datenbank verbindet.

Vielleicht liegt es doch an den sqlconfig Einstellungen für die PostgreSQL-Datenbank...
 
Hallo @hansvomberg ,
dieses Beispiel kenne ich nicht. Ich hatte ein älteres vom Herbst 2020. Hier der Beitrag:

Beitrag zur SQL Anbindung

Da musste noch einiges programmiert werden, um es "richtig" einzusetzen. Natürlich muss man auch noch etwas verstehen was darin passiert. Sonst ist es bei der Fehlersuche sehr schwer. Eventuell nutzt mein erweitertes Beispiel, da erspart man sich einiges. Eine Dokumentation dazu habe ich auch schon. Einfach über die Homepage melden.
Ich wäre ja schon froh, wenn es überhaupt funktionieren würde. Da muss ich natürlich noch einiges programmieren, dass es macht was ich will.
Um welche Tia Version handelt es sich denn?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo @hansvomberg ,
für die MS SQL Express Datenbank V14 habe ich eine TIA16 und eine TIA15.1 Version.
Ich habe viele Kommunikations-Einstellungen aus dem Siemens Beispiel entnommen.
Die genannte Aufgabe funktioniert nur bei fehlerfreiem Lauf von
a) SPS
b) Netzwerk
c) Datenbank
Ich empfehle mit Tools wie HeidiSQL, Hercules (TCP Test), einer echten SPS und einem eigenen PC mit Adminrechten (Firewall zu Beginn aus) für die Datenbank zu beginnen. Alles einfach halten, nach dem Motto: Überflüssiges MUSS weg. Ich habe zuerst alles genau wie im Siemens Beispiel eingestellt. Erst nachdem es funktionierte, änderte ich Stück für Stück!
Mit viel Fleiß kam ich zur MySQL V8.0.23 Kommunikation für 1500er SPS in TIA V16, oder auch zur MySQL V5.7.35 Kommunikation für 300er SPS in Step7 V5.6.

Ich habe über Deine DB mal nachgedacht:
DB Vergleich

Dort sehe ich keine Tabular Data Stream (TDS) protocol Unterstützung für die PostgreSQL-Datenbank. Genau dieses Protokoll nutzt Siemens und damit verwende ich es auch.
 
Zurück
Oben