Exemple : Utilisation de la CSV Utility SL bibliothèque
Produit: CODESYS IIOT Libraries SL
Le
CSVReaderdossier contient les composants pour lire les fichiers CSV.L'initialisation et le passage du chemin du fichier se fait par le
CSVReaderInitbloc fonctionnel.Les valeurs du fichier CSV peuvent être lues individuellement, ligne par ligne, ou toutes à la fois. Le
NextLine,NextElement, ouReadAlldes blocs fonctions sont utilisés pour lire les valeurs.Le le
CSVReaderExampledemande dans leCSV Utility Examples.projectexemple de projet montre comment utiliser ces composants.La longueur maximale des éléments doit être supérieure ou égale à la longueur maximale des colonnes du fichier CSV.
Le
CSVWriterdossier contient les composants pour écrire des fichiers CSV.Les données sont enregistrées en trois étapes :
La première étape consiste à initialiser la bibliothèque. A ce moment, le chemin et le nom du fichier sont passés.
La deuxième étape consiste à stocker les données dans une mémoire tampon.
La troisième étape consiste à écrire le tampon dans un fichier CSV.
Description
L'exemple décrit comment vous pouvez utiliser les blocs fonctionnels de la bibliothèque dans une application.
Programmation procédurale classique
Les blocs fonctionnels pour la programmation classique basée sur des blocs fonctionnels se trouvent dans le FunctionBlocks dossier.
Les blocs fonctionnels de ce dossier sont conçus pour le traitement asynchrone. Ils étaient issus de la CBM.ETrigA bloc fonctionnel.
Pour chaque bloc fonctionnel, un objet de visualisation a également été créé qui peut être utilisé dans d'autres projets.
On en trouve un exemple dans le CSV Utility Examples.project projet dans le CSVWriterCFCExample application.
Initialisation : Cela se fait au moyen de la Init bloc fonctionnel. Ici, le chemin de stockage et le nom du fichier peuvent être passés.
Pour ajouter des valeurs : Les valeurs peuvent être écrites dans le tampon au moyen de la AddXXX blocs fonctionnels. Une nouvelle ligne peut être ajoutée à l'aide de la NewLine bloc fonctionnel. Un nouveau fichier est créé avec NewFile.
Sauvegarder : Le tampon est sauvegardé au moyen de la WriteFile bloc fonctionnel. Les valeurs sont écrites dans le format standard du type de données correspondant.
Visualisations : Une visualisation des entrées et des sorties sorties pour chaque bloc fonction.
Utilisation des blocs fonction
Tous les blocs fonctionnels du FunctionBlocks dossier réagit à un front montant au xExecute saisir.
Faites attention à ce que ces opérations soient exécutées de manière asynchrone et que le xDone, xError, et eError les sorties doivent être échantillonnées en conséquence. Le traitement n'a pas à être effectué dans un cycle.
Programmation orientée objet
Les blocs fonctionnels et les interfaces pour la programmation orientée objet se trouvent dans le Objects dossier.
On en trouve un exemple dans le CSV Utility Examples.project projet dans le CSVWriterSTExample application.
Le CSVWriter Le bloc de fonction fournit des méthodes de base pour enregistrer des fichiers CSV.
Initialisation : Au début, le InitSave La méthode doit être appelée pour créer un nouveau fichier ou ouvrir un fichier existant.
Pour ajouter des valeurs: Lorsque l'un des Add méthodes est appelée, la valeur est écrite dans le tampon. Une nouvelle ligne est ajoutée dès que la méthode correspondante est appelée. Si le tampon est plein, une erreur est renvoyée. Dès que les données ont été enregistrées, l'espace est à nouveau disponible pour de nouvelles valeurs.
AddXXX: Insère des données à la fin du tamponNewLine: Ajoute une nouvelle ligne
Sauvegarder :
Save: enregistre la valeur du tampon sous forme de fichier CSV
Méthodes supplémentaires :
GetFileSize: Renvoie la taille du fichier courantNewFile: Crée un nouveau fichier, soit avec un nom spécifié, soit avec un nom généré automatiquement
Erreur : Toutes les méthodes ont un champ d'erreur pour stocker une éventuelle erreur du type CSV_ERROR.
Informations Complémentaires
Le CSV Utility SL Examples.project exemple de projet contient un exemple d'application pour CSVReader et deux exemples d'applications pour CSVWriter.
Application: CSVReaderExample
L'exemple montre les trois manières de lire les valeurs d'un fichier CSV. Le Prog programme montre comment utiliser le CSVReaderInit, NextElement, ReadAll, et NextLine blocs fonctionnels. Le contenu de la CSVReader.csv fichier est affiché dans une visualisation.
Astuce
Pour tester les exemples sur un CODESYS Control, le fichier CSV CSVReader peut être copié du répertoire cible de l'installation vers le c:\temp annuaire.
Application : CSVWriterCFCExample
Cet exemple utilise un exemple CFC pour montrer comment utiliser les blocs fonctionnels du CSVWriter bibliothèque. Il montre également comment utiliser la visualisation intégrée.
Fonctionnalité :
Le
WriteValuesprogramme crée un fichier CSV dans le"c:/temp/CSVWriterCFCExampleData.csv"dossier.Dans la visualisation, cliquez sur le Cliquez ici pour ajouter le bouton déclenche l'écriture dans le fichier.
L'initialisation se fait au moyen de la
CSV.Initbloc fonctionnel. Le chemin et le nom du fichier sont passés ici directement.Le
AddWord,AddString, etNewLineles blocs fonctionnels montrent comment ajouter des valeurs au tampon interne.Le
ctucompteur incrémente le numéro de ligne lors de chaque événement. Après l'ajout d'une nouvelle ligne, les valeurs sont écrites dans un fichier CSV au moyen de laWriteFilebloc fonctionnel.
Application : CSVWriterSTExample
Cet exemple montre comment écrire des valeurs de variables dans un fichier CSV au moyen de la programmation orientée objet ou de la programmation séquentielle. Chaque processus est exécuté en deux tâches. Une tâche écrit les valeurs dans le tampon et l'autre enregistre les données du tampon dans le fichier.
Fonctionnalité :
ObjectOriented_Save(sauvegarde orientée objet)Ce programme appelle le
Saveméthode deDataObject, où l'opération de sauvegarde est implémentée.ObjectOriented_Write(écriture orientée objet)Ce programme appelle le
Writeméthode deDataObjectoù l'opération d'écriture est implémentée.DataObjectCe bloc fonction implémente la
ICSVObjectinterface. LeWriteLa méthode inclut les variables locales qui seront sauvegardées ultérieurement. Le correspondantAddXXXLa méthode est appelée pour chaque type de données. Après un certain nombre de lignes, un nouveau fichier est créé avec d'autres valeurs. Dès qu'une erreur survient, leErrorstatut est atteint. Ensuite, rien d'autre ne sera écrit. LeSaveLa méthode implémente l'opération de sauvegarde. Au début, leInitSaveméthode de laCSVWriterl'instance de bloc fonction est appelée. Après cela, seuls lesSavela méthode doit encore être appelée.Pour activer les programmes suivants, les POU dans les tâches doivent être modifiées.
Sequential_Save(sauvegarde séquentielle)L'opération de sauvegarde doit également être démarrée avec le
InitSaveméthode. Une fois que le fichier CSV atteint une taille spécifique, un nouveau fichier est créé. Si aucun nom de fichier n'est spécifié, le nom existant avec la numérotation ajoutée est utilisé.Sequential_Write(écriture séquentielle)Différentes variables sont écrites dans le tampon. Si celui-ci est plein, alors le
EndOfBufferl'erreur est renvoyée. Contrairement à l'opération d'écriture décrite ci-dessus, l'erreur est cette fois ignorée et le buffer continue à être écrit. Par conséquent, certaines données sont perdues, mais le programme continue de s'exécuter. Dès que la prochaine opération de sauvegarde est lancée, le tampon est à nouveau libre.
Configuration système requise et restrictions
Système de programmation | CODESYS Development System (version 3.5.18.0 ou supérieure) |
Système d'exécution | Tous Remarque : utilisez la version gratuite |
Composants complémentaires | - |
Avis
TÉLÉCHARGER projets