Je suis automaticien débutant.
Je rencontre trois soucis avec Vijeo 6.2.3 et un HMIGTO5310 pour le transfert d'un groupe d’alarme vers un fichier *.csv vers sa carte SD ou clé USB.
J'ai programmé 30 alarmes et j'ai mis le nombre d'enregistrement dans l'historique à 150 et le nombre d'enregistrement dans le journal à 300.
C'est l'automate qui mémorise et qui acquit les défauts. Donc je n'ai que 2 états pour chaque alarme (ON OFF).
L'enregistrement est programmé vers le lecteur secondaire, donc la carte SD en cas de plantage.
J'utilise une variable pour indiquer le nombre d'alarmes en historique (Nb_Histo) et programmé un script périodique toute les 1 sec:
Code : Tout sélectionner
if (Nb_Histo >= 50 && STATUS = 0 )
{
Nb_Histo = 0;
CONTROL = 2; (enregistré le csv en fichier historique)
}
IF (STATUS >= 2 && Nb_Histo >= 1) CONTROL = 0;
Problème avec base de 50 alarmes par jour, (en réel j'ai peut être 5 à 10 alarmes par jour):
Numéro 1.
Le 1er jour, j'ai un fichier csv avec 50 lignes,
le 2ieme jour, j'ai un autre fichier avec 100 lignes (50 du 1er jour + 50 du 2ieme jour),
le 3ième jour un autre fichier avec 150 lignes (50 du 1er jour + 50 du 2ieme jour + 50 du 3ième jour).
le 4ième jour un autre fichier avec 150 lignes (50 du 2ième jour + 50 du 3ieme jour + 50 du 4ième jour).
Actuellement j'utilise un un bouton verrouillé pour mettre _Maintenance = 1 pour retiré la carte SD, je récupère les données puis je la remet à l’intérieur et j’appuie sur l'autre bouton pour mettre _Maintenance = 0.
Comment enregistrer que les 50 ou xx derniers défauts automatiquement vers le csv de la carte SD pour sauvegarde en cas de crash IHM ?
Je ne peux pas réduire le nombre d'enregistrement ou appuyer sur la touche "Supprimer tout" dans le RESUME_Alm car je veux que "l'opérateur" puisse voir les xx derniers jour d'alarmes de sa machine.
Numéro 2.
Comment récupérer toutes les alarmes depuis le dernier enregistrement manuel vers une clé USB pour le technicien ou moi sans devoir enlever la carte SD, car j'ai un port USB en facade avant ?
Avec un commutateur j'ai trouvé sa: Opération/Copier les données vers le lecteur/Lecteur Optionnel/Fichier à copier=Alarmes et événements /Ajouter
Mais il copie toutes les alarmes et non les dernières.
Code : Tout sélectionner
Code de @itasoft, si j'ai tout compris ;)
//===== Script périodique toutes les secondes ========
// Variable "yaUSB" Pour animation couleur voyant clé USB présente
// Variable "Tusb" Pour animation clignotant si Tusb < 10
// Variable "Start" Le commutateur
//Détection de la Clef USB branchée
String sMSG=_LastErrorString.getStringValue();
if (sMSG.indexOf("USB est branch")>0) yaUSB.write(1);
if (sMSG.indexOf("USB est débranch")>0) yaUSB.write(0);
if (sMSG.indexOf("est manquan")>0) yaUSB.write(0);
//Tempo voyant enregistrement en cours
Tusb.add(-1);
if (STATUS.X(0)) Tusb.write(10);
if (Start.getIntValue()>0)
{
//Je fais quoi ici ???
Start.write(0);
}J'ai 5 courbes avec 1 valeur en groupe de journalisation toutes les 1 minute "SRAM et fichier" et quand je fais une mise à jour de l'IHM car je fait de la mise au point tout les jours, je pers à chaque fois tous. J'ai vu que l'on pouvait conservé les données de recettes et de sécurité mais pas les courbes.
Peut-on gardé les courbes ou les relire depuis la carte SD ?
J'ai mis 300 (le max) en enregistrement dans la SRAM, est-il utile de mettre le maximum ou je réduis pour qu'il stocke plus régulièrement dans la carte SD pour les relire ?
Je vous remerci pour ceux qui ont reussi à tous comprendre.
