Blok funkcji FS_READ

Blok funkcji FS_READ odczytuje dane z pliku.

Uwaga: Przy odczytywaniu bardzo dużych plików sterownik PLC lub cały system może zawiesić się i nie uruchomić ponownie. Używaj wejścia LENGTH=0 z ostrożnością.

System plików musi być wcześniej zainicjowany za pomocą FS_INIT. Wszystkie operacje są wykonywane asynchronicznie dla każdego utworzonego urządzenia magazynującego.

Wejście READ

Na pozytywnej krawędzi dane są odczytywane z urządzenia magazynującego.

Wejście DEV

Definiuje urządzenie, z którego należy uzyskać dostęp do plików. Urządzenie jest używane w projekcie i może być zarządzane w menu kontekstowym pod Projekt Zewnętrzne urządzenie magazynujące.

Wejście PATH

Podaje ścieżkę do pliku na urządzeniu magazynującym. Ścieżka odpowiada ścieżce pliku Unix w formacie UTF-8, jeśli jest on obsługiwany. Ścieżka jest przedstawiana następująco:

Folder/Subfolder/File.txt

Wejście OFFSET

Definiuje offset w bajtach, od którego należy odczytać. Jeśli nie zdefiniowano offsetu, odczyt rozpoczyna się od początku pliku.

Wejście LENGTH

Definiuje maksymalną długość, po osiągnięciu której odczyt zostanie zakończony. Jeśli wejście nie jest zdefiniowane, odczyt trwa do końca pliku.

Uwaga: Maksymalna wielkość odczytu przy LENGTH=0 wynosi z powodów bezpieczeństwa 1024'000 bajtów.

Wyjście DONE

Na wyjściu generowany jest impuls w przypadku powodzenia, aby przeprowadzić następną operację. Impuls występuje po zakończeniu operacji, nawet jeśli wystąpił błąd.

Wyjście DATA

Zwraca odczytane dane. Stan jest zapisywany do późniejszego użycia.

Wyjście EOF

Jeśli koniec pliku został osiągnięty, wejście jest prawdziwe.

Wyjście BOM

Jeśli znaleziono znak porządku bajtów UTF-8, wyjście jest prawdziwe. BOM jest określane podczas każdej operacji odczytu.

Wyjście ERROR

W przypadku błędu zwraca tekst z komunikatem o błędzie. Jest to FALSE, jeśli nie wystąpił żaden błąd. Stan jest zapisywany do późniejszego użycia.

Możliwe przyczyny:

  • Usługa urządzenia magazynującego nie została uruchomiona.
  • Magazyn nie został zainicjowany.
  • Dane logowania są nieprawidłowe.
  • Nie można było połączyć się z zdalnym serwerem.
  • Urządzenie magazynujące nie istnieje.
  • Podana ścieżka jest nieprawidłowa.