Funktionsblok FS_READLINE

Funktionsblokken FS_READLINE læser data linje for linje fra en fil.

Advarsel: Ved læsning af meget store filer kan PLC'en eller hele systemet krashe og ikke starte igen.

Note: Den maksimale læselige størrelse på en linje er af sikkerhedsmæssige årsager 1024'000 bytes.

Filssystemet skal først initialiseres ved hjælp af FS_INIT. Alle operationer udføres asynkrone for hvert oprettet lagringsmedium.

Indgang READ

Ved en positiv flanke læses data fra lagringsmediet.

Indgang DEV

Definerer enheden, hvorfra der skal tilgås filerne. Enheden bruges pr. projekt og kan administreres i kontekstmenuen under Projekt Ekstern Lager.

Indgang PATH

Angiver stien til filen på lagringsmediet. Stien svarer til en Unix-filsti i UTF-8-format, hvis dette understøttes. Stien vises som følger:

Mappe/Undermappe/Fil.txt

Indgang LINE

Definerer linjen, der skal læses. Den første linje starter med nummeret 0.

Indgang ENDING

Definerer linjeskiftet. Dette angives med escapes: "\r\n". Hvis indgangen ikke er defineret, antages "\n".

Følgende tegn tager hensyn til escape:

  • "\t" (ASCII 9 (0x09)), et tabulatortegn.
  • "\n" (ASCII 10 (0x0A)), en linjefeed (Line Feed).
  • "\r" (ASCII 13 (0x0D)), et carriage return-tegn (Carriage Return).
  • "\0" (ASCII 0 (0x00)), NUL-byte.
  • '\xEF' Skriveform for bytes.

Note: For at også binære tegn, såsom '\xEF', kan defineres, skal de angives i enkle anførselstegn.

Udgang DONE

Udgangen returnerer ved succes en impuls for at udføre den næste operation. Impulsen opstår ved afslutningen af processen, selvom der er opstået en fejl.

Udgang DATA

Returnerer den læste linje, inklusiv linjens slutning. Tilstanden gemmes til senere brug.

Udgang EOF

Hvis filens ende er nået, er indgangen sand.

Udgang BOM

Hvis UTF-8 Byte Order Mark blev fundet, er udgangen sand. BOM bestemmes ved hver læseoperation.

Udgang ERROR

Returnerer i fejltilfælde en tekst med en fejlmeddelelse. Denne er FALSE, hvis der ikke er opstået nogen fejl. Tilstanden gemmes til senere brug.

Mulige årsager:

  • Tjenesten for lagringsmediet blev ikke startet.
  • Lagringen blev ikke initialiseret.
  • Logindataene er ugyldige.
  • Den fjernede server kunne ikke nås.
  • Lagringsmediet findes ikke.
  • Den angivne sti er ugyldig.