TIA In-/Outputs von der GSDML Datei nicht sichtbar

matze00

Level-2
Beiträge
19
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo, ich habe von meiner S7 CPU eine GSDML Datei erstellt und meinem Kunden zur Verfügung gestellt. Dieser hat die GSDML Datei seinem Programm hinzugefügt, jedoch meint er dass er keine In- & Outputs sieht.
Diese habe ich jedoch im Transferbereich eingestellt (siehe Bild)

Müssen die Ein- & Ausgänge real existieren? Also einer Karte zugewiesen? Weil die vorhandenen Ein-/Ausgänge gehen nur von 0-3.

Weiß jemand wieso das nicht funktioniert?
 

Anhänge

  • e3d29b90-8ef8-4982-8413-3b57dc9c0de9.jpg
    e3d29b90-8ef8-4982-8413-3b57dc9c0de9.jpg
    69,9 KB · Aufrufe: 33
Der Empfänger der GSDML-Datei muss aus der Datei ein Gerät erzeugen und selbst eigene E/A-Adressen projektieren. Er bekommt nicht die vom Erzeuger der GSDML projektierten Adressen. Also nicht die von dir projektierten Adressen der Transferbereiche. Für ihn ist nur die Größe und Struktur der Transferbereiche relevant.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Der Empfänger der GSDML-Datei muss aus der Datei ein Gerät erzeugen und selbst eigene E/A-Adressen projektieren. Er bekommt nicht die vom Erzeuger der GSDML projektierten Adressen. Also nicht die von dir projektierten Adressen der Transferbereiche. Für ihn ist nur die Größe und Struktur der Transferbereiche relevant.
Ja genau. Das habe ich ihm auch versucht zu erklären. Aber er meinte dennoch dass er keine E/A´s in der GSDML Datei selber sieht und deshalb etwas mit der GSDML Datei nicht stimmt. Und weil ich neu im Bereich der SPS bin hat er mich damit verunsichert ob es wirklich nicht an mir liegt...
 
Die I/O Adressen können unterschiedlich sein auf beide Seiten.
Wenn die Kunde dieselbe Addressen in sein Projekt wie in dein Projekt eingestellt hat (ab byte addressen 1000), und es ein S7-300 oder S7-400 CPU ist, dann kann er die Daten vermutlich nur durch Peripherie Addressierung lesen und schreiben. Dh. PIW1000 und PQW1000 usw.
Abhängig von S7 300/400 CPU ist das Prozessabbild standarmässig auf Byte 255 begrenzt.
Einfach ist. die Kunde wählt niedrige freie Adressen.
 
Die I/O Adressen können unterschiedlich sein auf beide Seiten.
Wenn die Kunde dieselbe Addressen in sein Projekt wie in dein Projekt eingestellt hat (ab byte addressen 1000), und es ein S7-300 oder S7-400 CPU ist, dann kann er die Daten vermutlich nur durch Peripherie Addressierung lesen und schreiben. Dh. PIW1000 und PQW1000 usw.
Abhängig von S7 300/400 CPU ist das Prozessabbild standarmässig auf Byte 255 begrenzt.
Einfach ist. die Kunde wählt niedrige freie Adressen.
Der Kunde hat kein Siemens Produkt. Es handelt sich dabei um ein GSP von der Fa. Bachmann
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Das I-Device in S7-1500 ist ziemlich zuverlässig.
Man kann nicht was falsches machen, wenn nur die HW kompiliert werden kann.

Aber er meinte dennoch dass er keine E/A´s in der GSDML Datei selber sieht und deshalb etwas mit der GSDML Datei nicht stimmt
Hört für mich an als der Programmierer einfach selber Adressen einstellen muss. Sprich ab welche Start-Addresse müssen die Daten ligen.
In Siemens wird die nächste freie Byte Addresse vorgeschlagen. In die Bachmann Steuerung vielleicht nicht.
 
In Zwiefelfall, finde eine Test-S7 CPU, konfiguriere es als die PN IO Controller mit die GSDML Datei.
Dann probier ob es funktioniert (wird es).
Damit hast du Beweiss dass die GSDML korrekt ist.
Es dauert nur 10 Minuten wenn du eine Test-CPU verhanden hast.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
In Zwiefelfall, finde eine Test-S7 CPU, konfiguriere es als die PN IO Controller mit die GSDML Datei.
Dann probier ob es funktioniert (wird es).
Damit hast du Beweiss dass die GSDML korrekt ist.
Es dauert nur 10 Minuten wenn du eine Test-CPU verhanden hast.
So würde ich das auch machen.
Im Grunde brauchst du ja erst mal keine Steuerung sondern nur ein Projekt. Dann siehst du ja schonmal ob du Adressen vergeben kannst.

Ich hatte bei Siemens so was ähnliches auch mal. Ich glaube ich hatte damals vergessen die Verbindung zur SPS zu projektieren. Dann kann man auch keine IO-Adressen am Gerät vergeben.
 
Ich hatte bei Siemens so was ähnliches auch mal. Ich glaube ich hatte damals vergessen die Verbindung zur SPS zu projektieren. Dann kann man auch keine IO-Adressen am Gerät vergeben.
So ist es. In ein TIA Projekt der den Partner-SPS nicht enthält sieht man die Partner-Adressen nicht.
Mit eine nicht-Siemens Partner ist es nicht möglich, aber auch nicht wichtig.
 
In der Datei steht ja auch nur wie groß der Transferbereich ist. Wo dieser anfängt liegt ja an der Steuerung wo es eingebunden eird und wo da noch freie Bereiche sind, das kann der Ersteller ja nicht wissen.

Ausschnitt aus einer GSD, da steht nur Input Legth 64 und Output Length 128 drin.
Code:
                        <VirtualSubmoduleItem SubmoduleIdentNumber="0x7418" FixedInSubslots="1000" ID="VSM_2_1000" Writeable_IM_Records="1 2 3" MayIssueProcessAlarm="false">
                            <IOData>
                                <Input>
                                    <DataItem Length="64" DataType="OctetString" TextId="VSM_2_1000" />
                                </Input>
                            </IOData>
                            <ModuleInfo>
                                <Name TextId="VSM_2_1000_Name" />
                                <InfoText TextId="VSM_2_1000_Comment" />
                            </ModuleInfo>
                        </VirtualSubmoduleItem>
                        <VirtualSubmoduleItem SubmoduleIdentNumber="0x94AB" FixedInSubslots="1001" ID="VSM_2_1001" MayIssueProcessAlarm="false">
                            <IOData>
                                <Output>
                                    <DataItem Length="128" DataType="OctetString" TextId="VSM_2_1001" />
                                </Output>
                            </IOData>
                            <ModuleInfo>
                                <Name TextId="VSM_2_1001_Name" />
                                <InfoText TextId="VSM_2_1001_Comment" />


Wenn man die GSD einbindet kann man ja einfach die Startadresse vergeben und anhand der hinterlegten Länge wird der verwendete Bereich angezeigt.
1726207596163.png
 
Zurück
Oben