Datenbaustein die wievielte

ichweisnix

Level-1
Beiträge
2
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,
ich weiss das ich nix weiss, deshalb auch meine username ichweisnix. so nachdem dieses geklärt wäre möchte ich auch mal eine frage zu dem thema datenbausteine stellen. ich habe schon etliche programme in xbase sprachen verbrochen und bin nun aus lust und dollerei an eine s7 steuerung gekommen und mich interessiert ob man in so einen db auch meldungen wie zum beispiel störungen ablegen kann, also wenn zb. M1.0 = 1 ist eine meldung in den db geschrieben wird zb "M1.0" "Druckluft fehlt". um diese dann später in einen PC zu übertragen um auswertungen zu machen. zb betriebsdatenerfassung. den weg von der sps zum pc und zurück, hab ich schon gelöst, über so ein softwaretool das auch hier im forum sehr oft angepriessen wird. mich interessiert die funktionsweise des db´s bei einer xbase datenbank wird diese geöffnet und ein neuer satz angehängt und wieder geschlossen aber wie hänge ich in so einem db einen neuen satz an, anscheinend muss mann da immer eine adresse wissen oder wie geht das ?? könnte mir da jemand ein kleines beispiel machen, ich hab hier bestimmt fünf bücher liegen und auch hier das ganze forum schon durchgeblättert aber nix passendes auf meine frage gefunden. anscheinend ist das eine sache die net beschrieben werden muss nur ich blick es net. vielleicht kennt auch jemand ein buch, wo nicht davon ausgegangen wird das alle schon sps programmierer sind und das thema db auch für dummis beschreiben, so vielen dank für das lesen !!
und ich bin mal gespannt was mir jetzt um die ohren gehauen wird.

gruss ichweissnix
 
Ein Datenbaustein ist nix ;) weiter, als ein stückchen Speicher in der SPS, in dem man Daten ablegen kann. Entweder man erzeugt einen DB bei der Programmerstellung, oder man erzeugt ihn dynamisch im laufenden Programm. Ein DB hat immer eine feste Länge und kann nicht dynamisch erweitert werden. Ich nutze u.a. auch libnodave, habe aber die Texte in meiner Datenbank gespeichert (die übernehme ich durch Export der Texte aus ProTool) und lese nur die Bits aus dem Fehler-DB aus. Das funktioniert aber nur, wenn der PC an der SPS laufend die Fehler "mitliest". Mit einer Datenbank in der SPS, an der du nur sporadisch einen PC hängst, um Daten auszulesen, kommst du evtl. sehr schnell an die Speichergrenzen der SPS, zumal, wenn du auch noch die Texte in der SPS ablegen willst. In diesem Fall kannst du nur, nachdem dein Programm fertig ist, deinen Datenbaustein maximieren, indem du ihn so groß erzeugst, daß er gerade noch in die SPS hineinpaßt. Deine Fehler mußt du dann über einen Zeiger in den jeweils nächsten Datenbereich (Struktur anlegen wäre hier sinnvoll) des Datenbausteins schreiben, die "Datensätze" im Datenbaustein mußt du also quasi vorher schon leer anlegen.
 
Hallo Ralle,
vielen Dank für die schnelle Antwort !!
Also wenn ich es richtig verstanden habe ist es besser einen DB anzulegen mit so vielen angelegten sätzen, wie die maschine fehlermöglichkeiten haben wird.
Dann werden beim Auftreten der Fehler die Fehlermerker auf die für sie
vorbelegte Adresse, also nur zb. M100.1 in den DB geschrieben.

Ich stell mir schon vor das der Pc immer mit der Steuerung verbunden ist um sich die sachen abzuholen, auf der Pc seite werden dann die fehlermerker und die dazugehörigen texte zusammengenuddelt
(über datenbanken)

Ich stell mir da ja auch vor auf dem pc die visualisierung, bde usw. zu machen. was hälst Du davon ?.

Hallo Volker,

auch Dir vielen Dank für deine schnelle Antwort und den Link
Ich muss nur leider zu geben das ich mit dem sps code noch etwas schwierigkeiten habe aber das wird schon noch kommen.
Hoffe ich zumindest.

Was meinst Du mit: schon mal was von <cr> gehört?


Gruss ichweissnix
 
@ichweisnix

Das siehst du schon richtig. Bei Protool (Visu von Siemens) gibt es ein Bitfeld in einem DB, das die Fehlerbits enthält. 1 Wort faßt also 16 Fehler, wenn deine Maschine 160 Fehler anzeigen soll, braucht man demzufolge 10 Wörter. Deine BDE hat dann nichts weiter zu tun, als diese 10 Wörter (am schnellsten geht es immer am Stück) einzulesen, auf Veränderungen zu prüfen und entsprechend zu reagieren. Das macht meine BDE so, die läuft aber nicht als Visualisierung oder Bedienoberfläche, sondern als reine BDE.
Soll auch noch eine Bedienung der Machine realisiert werden, muß man sich auch noch um die Fehlerquittierung etc. kümmern.
Wenn einn Fehlerbit von der BDE erkannt wird, trägt sie den Fehler in der Datenbank mit Uhrzeit als gekommen ein, wenn der Fehler geht (quittiert bzw. behoben) wird er mit Uhrzeit als gegangen eingetragen. Daraus kann man dann prima Statistiken basteln.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
ASCII-Zeichen 013: Carriage Return (CR) - "Strg + M"

...
Was meinst Du mit: schon mal was von <cr> gehört?
...

Ich muss hier grad mal klugscheißen::icon_lol:

Schau dir mal deinen obigen Beitrag oder den von Ralle an. Bei eurer Tastatur ist wahrscheinlich die
RETURN-Taste defekt!

Spaß muss sein! :sm24:
:s18:

Grüße!
 
Zuletzt bearbeitet:
@Supervisor

Ne, das liegt am Eingabefenster für neue Beiträge, das ist halt schmal
und wenn man schreibt bricht es die Texte um, das Anzeigefenster ist
aber breiter. Stört es dich etwa? Die Information bleibt die Gleiche, ich
kanns dir aber in Zukunft auch didaktisch schöner aufbereiten :rolleyes: .

So besser? :cool: !

PS: Mach doch deinen Browser weniger breit, dann kannst du die Texte
vielleicht besser überblicken :ROFLMAO: .
 
Zuletzt bearbeitet:
Mich stört`s nicht...

@Ralle:

Danke für deine Extraformatierung! :s1:

Aber mich stört das nicht. Es kommt nicht auf das Äußere an, sondern auf den Inhalt. Und da kommen von dir und natürlich auch von anderen Forenmitgliedern immer 1A-Spitzenbeiträge. :s10:

Außerdem hatte Volker sich doch dran gestört.
Guckst du hier:
schon mal was von <cr> gehört?

grungsätzlich könnte hier eine lösung liegen http://www.sps-forum.de/showthread.php?t=8887

Peace! :p

PS: Danke für den Tipp mit dem Browser! Hab mir extra auch einen kleineren Monitor zugelegt. Da kann ich den Browser trotzdem im Vollbild-Modus betreiben! :sm24:
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@Supervisor

Klar doch, war natürlich auch nur so :ROFLMAO: :ROFLMAO: gemeint. Werd doch Volker demnächst mal 'ne extra formatierte Grußkarte schicken:s10: .
 
jaja, ist ja gut.

ich hab doch gar nicht gemeckert. ein formatierter text liest sich halt besser.
 
Zurück
Oben