Einführung in SD-Kartenbefehle

Verwendung von SD-Kartenbefehlen mit FP-XH-SPSen vom Ethernet-Typ

Tipp
  • Sie können alle SD-Kartenbefehle mit einer FP-XH-Ethernet-SPS verwenden, auch wenn diese keinen SD-Steckplatz hat. Statt Daten per SD-Karte zu lesen/zu schreiben, werden die Daten im internen RAM-Speicher gespeichert.

    Es werden keine Daten gespeichert, wenn die SPS ausgeschaltet ist.

  • Die Speichergröße ist auf 1MB begrenzt.

    FP_SD_GET_FREE_KBYTES gibt den freien Speicherplatz zurück.

Funktionsweise der Befehle

  • Nach Ausführung eines SD-Kartenbefehls wird Folgendes geprüft:

  • Ist eine SD-Karte eingesetzt?

  • Ist die Abdeckung geschlossen?

  • Ist die SD-Karte schreibgeschützt?

  • Während der Ausführung ist der Merker "SD-Kartenzugriff aktiv" (sys_bIsSDMemoryAccessActive) auf TRUE und der Merker "SD-Kartenzugriff beendet" (sys_bIsSDMemoryAccessDone) auf FALSE gesetzt.

  • Die Ausführung eines SD-Kartenbefehls erfolgt über mehrere SPS-Zyklen.

  • Wenn die Ausführung beendet ist, wird der Merker "SD-Kartenzugriffsfehler" (sys_bIsSDMemoryAccessError) je nach Ergebnis entweder auf TRUE oder FALSE gesetzt. Mit diesem Merker können Sie ermitteln, ob bei der Ausführung des SD-Kartenbefehls Fehler aufgetreten sind, wenn der Merker "SD-Kartenzugriff beendet" (sys_bIsSDMemoryAccessDone) auf TRUE gesetzt wird. Der Fehlercode wird in einem Systemdatenregister gespeichert, auf das mit sys_iSDMemoryAccessErrorCode zugegriffen werden kann.

  • Es kann jeweils nur ein SD-Kartenbefehlstyp ausgeführt werden. Verwenden Sie zum Ausführen mehrerer Befehle Merker wie etwa "SD-Kartenzugriff aktiv" (sys_bIsSDMemoryAccessActive).

  • Mit FP_SET_ERROR werden Fehleralarmmerker gelöscht.

  • SD-Kartenbefehle können nicht in Interrupt-Programmen verwendet werden.

Funktionsweise der Merker

  1.  (1) Die Ausführung eines SD-Kartenbefehls erfolgt über mehrere SPS-Zyklen.
  2.  (2) Alle Merker ("SD-Kartenzugriff aktiv", "SD-Kartenzugriff beendet", "SD-Kartenzugriffsfehler") und Datenregister (Fehlercode) werden bei der Befehlsausführung gesetzt.
  3.  (3) Die Beendigung der Ausführung wird am Ende des SPS-Zyklus gemeldet. Wenn ein Fehler aufgetreten ist, wird der Merker "SD-Kartenzugriffsfehler" auf TRUE gesetzt, und der Fehlercode wird in das Systemdatenregister geschrieben.
Anmerkung

Bei einem der folgenden Fehler wird die Beendigung sofort gemeldet und der Merker "SD-Kartenzugriff aktiv" wird nicht auf TRUE gesetzt:

  • Keine SD-Karte
  • Schreibschutz der SD-Karte aktiviert
  • Fehler des Datei-/Verzeichnisnamens

Liste der Fehlercodes

Fehlercode Fehlername Ursache

Betroffene Befehle

0

Fehlerfrei ausgeführt

1

Keine SD-Karte

Es ist keine SD-Karte eingesetzt oder die Abdeckung ist offen.

Alle SD-Kartenbefehle zum Zeitpunkt der Ausführung

2

Schreibschutz der SD-Karte aktiviert

Die SD-Karte ist schreibgeschützt.

  • FP_SD_WRITE*

  • FP_SD_DELETE*

  • FP_SD_MOVE*

  • FP_SD_COPY*

  • FP_SD_RENAME*

3

Fehler des Datei-/Verzeichnisnamens

Die Syntax des Datei- oder Verzeichnisnamens ist falsch oder es wurden zu viele Unterverzeichnisse angegeben.

  • FP_SD_*_FILE

  • FP_SD_*_DIR

4

Datei nicht angegeben

Die angegebene Datei ist nicht vorhanden.

  • FP_SD_*_FILE

  • FP_SD_*_DIR

5

Datei vorhanden

Die angegebene Datei ist bereits vorhanden.

  • FP_SD_MOVE*

  • FP_SD_COPY*

  • FP_SD_RENAME*

6

Lesefehler

Alle Lesebefehle zum Zeitpunkt der Ausführung

7

Schreibfehler

Die angegebene Datei ist schreibgeschützt.

  • FP_SD_WRITE*

  • FP_SD_DELETE*

  • FP_SD_MOVE*

  • FP_SD_COPY*

  • FP_SD_RENAME*

8

Falsche Position

Die Lese- oder Schreibposition ist falsch.

  • FP_SD_WRITE

  • FP_SD_READ

  • FP_SD_READ_LINE

Zum Zeitpunkt der Ausführung

9

SD-Karte voll

Die SD-Karte verfügt nicht über ausreichend freien Speicher.

  • FP_SD_WRITE*

  • FP_SD_DELETE*

  • FP_SD_MOVE*

  • FP_SD_COPY*

  • FP_SD_RENAME*

10

Falsches Leseformat

Fehler des Umwandlungsformats beim Lesen einer Datei

  • FP_SD_READ

Zum Zeitpunkt der Ausführung

11

Konflikt bei Dateizugriff

Die angegebene Datei wird aufgezeichnet oder es wird per FTP auf sie zugegriffen.

  • FP_SD_WRITE*

  • FP_SD_DELETE*

  • FP_SD_MOVE*

  • FP_SD_COPY*

  • FP_SD_RENAME*

-1 bis -99

Sonstiges

Alle SD-Kartenbefehle

Verzeichnis- und Dateinamen auf einer SD-Karte angeben

  • Geben Sie den vollständigen Pfad an (maximal 256 Zeichen).

  • Geben Sie keinen Laufwerksnamen an.

  • Geben Sie eine Dateierweiterung an, z.B. .txt.

  • Um Daten in einer Datei namens abc.txt im Root-Verzeichnis zu speichern, geben Sie Folgendes ein: \abc.txt

  • Um Daten in einer Datei namens def.txt im Unterverzeichnis sub zu speichern, geben Sie Folgendes ein: \sub\def.txt

  • Um Daten in einer Datei namens def.txt im Unterverzeichnis new zu speichern, geben Sie Folgendes ein: \new\def.txt

Anmerkung
  • Ein Unterverzeichnis kann nur direkt unterhalb des entsprechenden übergeordneten Verzeichnisses mit einem Befehl angelegt werden. Für Verzeichnisse auf tiefer liegenden Hierarchieebenen müssen zuerst übergeordnete Verzeichnisse angelegt werden.
  • Wenn zwei oder mehr Dateien angegeben werden, tritt der Fehler 4 "Datei nicht angegeben" auf.

Spezifikationen der SD-Karten

SD

SDHC

Dateisystem

FAT16

FAT32

Max. Länge des Dateinamens

Unterstützt lange Dateinamen (VFAT)

Max. Speicher

2GB

32GB

Max. Dateigröße

2GB

4GB

Max. Anzahl Dateien (8.3-Format) im Root-Verzeichnis

512

65535

Max. Anzahl Dateien (8.3-Format) im Unterverzeichnis

65534

65534

Max. Anzahl Dateien (langes Format) im Root-Verzeichnis

170

21845

Max. Anzahl Dateien (langes Format) im Unterverzeichnis

56634

65534

Merkmal

Beschreibung

Langer Dateiname

255 Byte (256 Byte einschließlich vollständiger Pfad)

Dateiname/Verzeichnisname

ASCII-Zeichen (16#20–16#7E)

Letzte Änderung am: 2020-04-24Feedback zu dieser SeitePanasonic Hotline