Cx-Programmer
Comment fonctionne la détection automatique
?
Comment
protéger un programme par mot de passe ?
Comment récupérer le programme des anciennes
séries d'automate type C20K, C500 ou C1000 ?
Comment peut-on visualiser le contenu d'un bloc fonction
issu de la bibliothèque ?
Comment peut-on connaitre la taille mémoire
occupée par le programme ?
Comment rétablir le fenêtrage standard de
Cx-P ?
Comment utiliser/affecter différentes langues
aux commentaires ?
Mon instruction TIMX n'est pas reconnue par Cx-P !
Le
Transfert vers l'API n'est pas autorisé (icône grisée)
L'API refuse de passer en mode MONITOR ou RUN
Je parviens à lire mais pas à écrire dans mon API
Impossible de modifier la méthode de connexion à l'API.
Fenêtre grisée
Que signifie l'indication SYNC / No Sync dans la barre de statut de
Cx-Programmer ?
Quelle est la différence entre un symbole
local et un symbole global ?
La temporisation de mon Bloc fonction ne fonctionne
qu'une seule fois !
Comment fonctionne l'allocation
mémoire automatique ?
Conseils sur les manipulations de chaines de caractères en Texte Structuré
Comment sauvegarder l'étape grafcet en cours lors d'une coupure secteur
Comment capturer le front montant d'une entrée en language ST (Texte Structuré) ?
Cx-Supervisor
Quelles sont les versions de Windows
supportées par Cx-Supervisor ?
Comment envoyer un mail d'alerte ?
Comment envoyer un SMS depuis un GSM connecté au PC
Comment accéder en lecture/écriture
à une base Access ou Excel ?
Je
ne parviens pas à importer les symboles d'un fichier .cdm !
Comment
changer à la volée l'adresse IP de l' API ciblé
par le fichier CDM ?
Comment
exécuter un ping à l'aide d'un script ?
Comment
synchroniser l'horloge d'un API depuis Cx-Supervisor ?
A quoi correspondent les fichiers d'un projet Cx-Supervisor ?
Comment interdire à l'utilisateur de quitter l'application de supervison ?
Cx-Designer
Est-il
possible de simuler un projet NS (ou NS Runtime) dialoguant avec un
API via un modem ?
Comment
créer un écran de veille ?
Est-il
possible de transférer un projet NS via une carte de communication
SCU ?
Cx-Server
Lite
Qu'est-ce que Cx-Server Lite ?
Est-il possible de communiquer avec un terminal tactile
NS ?
Cx-Protocol
Je ne parviens pas à émettre/recevoir
des donnée avec ma carte SCU en protocol macro !
Logiciels
Cx-Programmer
Comment fonctionne la détection automatique ?
Cx-P envoie la séquence
"AC01" (8 fois maximum) à l'automate. Ce dernier décrémente
sa vitesse chaque fois qu'il ne comprend pas la séquence et renvoie
"AC01" lorsqu'il est synchronisé.
Comment protéger un programme par mot de passe ?
Cx-Programmer offre
plusieurs niveaux de protection détaillés dans la fiche
technique FT014.
Un mot de passe n'interdit pas la connexion à l'automate. Les changements
de mode (STOP/RUN) sont toujours possible ainsi que la lecture/écriture
des mémoires de données
Comment récupérer le programme des anciennes séries
d'automate type C20K, C500 ou C1000 ?
Cx-Programmer propose cette fonctionnalité depuis le menu Outil/Prise
en charge.
Retour
en Haut
Comment peut-on visualiser le contenu d'un bloc fonction issu de la bibliothèque
?
Affichez la fenêtre
de propriété depuis le menu contextuel (clique droit sur
le FB) et cochez la case Afficher le contenu du bloc fonction.
Comment peut-on connaitre la taille mémoire occupée par
le programme ?
Sélectionnez
dans le menu principal l'option Mémoire utilisée.
Comment rétablir le fenêtrage standard de Cx-P ?
1- Supprimez le fichier
.opt du même nom que votre projet
2- Lancez Cx-P puis ouvrez le projet "tutorial.cxp" situé
dans le répertoire \OMRON\CX-One\CX-Programmer\Examples.
3- Ouvrez de nouveau votre projet Cx-P.
Retour
en Haut
Comment utiliser/affecter différentes langues aux commentaires
?
Dans le menu Editer sélectionner Commentaire d'E/S pour accéder au
tableur de commentaire des symboles.
Sélectionner la langue (colonne) souhaitée avec le bouton Basculer.
Mon instruction TIMX n'est pas reconnue par Cx-P !
Dans la fenêtre
de propriété de l'API, cochez l'option Exécuter tempo/compteur
binaire.
Le Transfert vers l'API n'est pas autorisé (icône grisée)
Un programme remonté partiellement ne peut pas être re-transféré
dans son intégralité.
Cx-P ajoute une petite flèche à l'icône représentant
l'API pour indiqué qu'il s'agit d'une partie de programme (tâche)
Retour
en Haut
L'API refuse de passer en mode MONITOR ou RUN
- vérifiez qu'aucune erreur ne subsiste
- vérifiez que les switchs 2 et 7 en façade sont bien sur
OFF (transfert auto carte CF)
Je parviens à lire mais pas à écrire dans mon API
- vérifiez la position du switch de protection en écriture
situé en façade de l'API.
- vérifiez l'option 'Valider la protection en écriture' située
dans l'onglet 'Protection FINS' des paramètres API
Impossible de modifier la méthode de connexion à
l'API. Fenêtre grisée.
Vérifier que
le l'API n'est pas déjà utilisé en tant que passerelle
par un autre API dans le projet.
Retour
en Haut
Que signifie l'indication SYNC / No Sync dans la barre de statut
de Cx-Programmer ?
SYNC apparaît lorsque
le cycle d'interrogation des variables surveillées dynamiquement
est inférieur au temps de cycle automate. L'affichage est dans
ce cas synchronisé avec l'état réel des E/S de l'API.
Si un trop grand nombre de fenêtre sont surveillées simultanément,
Cx-P ne pourra pas être synchrone (No sync)
Quelle est la différence entre symbole local et symbole
global ?
En local, le symbole
a une portée locale uniquement.
Cela permet d'utiliser un nom de symbole différent suivant le sous
programme utilisé.
Par exemple, la sortie d'un bloc PID de régulation peut être
réutilisée en entrée d'un autre bloc PID dans un
autre sous-programme. Le même symbole aura dans ce cas 2 appellations:
sortie dans l'un et consigne dans l'autre.
Les symboles de portée globale peuvent être liés au
fichier Cx-Server (*.cdm) et être ainsi disponibles pour l'importation
depuis tout autre logiciel basé sur Cx-Server (Cx-Designer ...
voir l'animation)
La temporisation de mon Bloc fonction ne fonctionne qu'une seule fois
!
Les blocs TIMER sont
réinitialisés à la valeur de présélection
uniquement lorsque la condition d'exécution est OFF.
Dans le cas du bloc fonction, cette séquence de réarmement
n'a pas eu lieu car le bloc fonction n'était plus exécuté.
Il faut par conséquent maintenir le BF activé au moins 1
cycle pour permettre au TIMER de réarmer.
Comment fonctionne l'allocation mémoire automatique ?
L'allocation automatique permet de s'affranchir de l'affectation d'une
adresse associée à un symbole.
En attribuant une zone mémoire via le menu API/Allocation mémoire/Adressage
Automatique, Cx-P allouera automatiquement une adresse aux symboles entrés
directement depuis l'éditeur de schéma à contact.

Conseils sur les manipulations de chaines de caractères en Texte Structuré.
- lors d'une conversion STRING_TO_UDINT, les espaces sont convertis en "0" (code ascii #30)
- lors d'une manipulation d'une variable chaine InOut, toujours recopier dans une variable interne
MaChaine := MaVarInOut
MaValeur := STRING_TO_UDINT(CONCAT(RIGHT(LEFT(MaChaine,6),5),RIGHT(LEFT(MaChaine,9),2)))*10;
- pour entrer un caractère de contrôle dans une chaine, il faut saisir le code ascii hexa entre apostrophe :
MonCarac := '$0D' (caractère retour chariot)
Comment sauvegarder l'étape Grafcet en cours lors d'une coupure secteur ?
1- activez la tâche interruptive de coupure d'alimentation dans les paramètres API
2- affectez la zone mémorisée H aux bits et mots SFC dans le menu Allocation mémoire bloc Fonction/SFC
3- dévalidez l'option d'activation de la tâche Grafcet au démarrage de l'API
4- dans la tâche coupure secteur, ajoutez une instruction SFCPR
5- dans la tâche principale, ajoutez une instruction SFCON.
SFCPR: arrêt du Grafcet et RAZ des sorties
SFCOFF: arrêt du Grafcet et maintien dans l'état des sorties
SFCON: démarre le Grafcet à l'étape initiale ou bien au point d'arrêt forcé par une précédente instruction SFCPR .
Attention: ces 3 instructions doivent être exécutée dans des cycles API différents
Exemple: Grafcet.cxp
Comment capturer le front montant d'une entrée en langague ST (Texte Structuré)
Front_Entree := (Entree_OFF AND Mon_Entree);
Entree_OFF := NOT Mon_Entree;
IF Front_Entree THEN Compteur_Front := Compteur_Front + 1; END_IF;
Il peut être préférable d'utiliser un bloc fonction ladder contenant @LD Entree OUT Sortie
Retour
en Haut
Cx-Supervisor
Quelles sont les versions de Windows supportées par Cx-Supervisor
?
| |
V1.3 |
V2.0 |
V2.1 |
V3.1 |
| Windows 98 et NT4 |
|
|
|
|
| Windows 2000 SP4 et plus |
|
|
|
|
| Windows XP Professionnel |
|
|
|
|
| Windows XP Embeded |
|
|
|
|
| Windows Vista Business & ultimate 32 bit |
|
|
|
|
| Windows Vista Business & ultimate 64 bit |
|
|
|
|
| Windows 7 32 et 64 bits |
|
|
|
|
Voir aussi le tableau des compatibilités Windows
Comment envoyer un mail d'alerte ?
Il faut pour cela utiliser
le VBScript suivant:
set r=createobject("CDO.Message")
r.from="automate3@orange.fr"
r.to="Durand@eu.omron.com"
r.subject= "test mail Cx-supervisor"
r.TextBody= "alarm flag"
r.Configuration.fields.item("http://schemas.microsoft.com/cdo/configuration/sendusing")=
2
r.Configuration.fields.item("http://schemas.microsoft.com/cdo/configuration/smtpserver")="smtp.orange.fr"
r.configuration.fields.update
'r.addattachment .......file here ???
r.send
Comment envoyer un SMS depuis un GSM connecté au PC ?
Il faut pour cela utiliser
le VBScript suivant:
Dim AtString
Dim guillemet
'configure et ouvre le port de com sur lequel est connecté le modem GSM
SetupCOMPort 6, "256000,N,8,1", 0, 13, TRUE, 3
OpenCOMPort 6
'message au format texte
AtString = "AT+CMGF=1"
OutputCOMPort 6, AtString
'n° du GSM destinataire du SMS
guillemet = Chr(34)
AtString = "AT+CMGS=" + guillemet + "0607080900" + guillemet
OutputCOMPort 6, AtString
'Envoi du SMS
AtString = SMSMessage
OutputCOMPort 6, AtString
'Fin de message et fermeture du port de com
AtString = Chr(26)
OutputCOMPort 6, AtString
CloseCOMPort 6
Comment accéder en lecture/écriture à une base Acces
ou Excel ?
Cx-Supervisor intègre
un gestionnaire de base de données (voir rubrique Programme/démo)
Je ne parviens pas à importer les symboles de mon fichier .cdm
!
Voir l'animation.
Comment changer à la volée l'adresse IP de l' API
ciblé par le fichier CDM ?
Les propriétés du contrôle ActiveX CX-Server sont accessibles
via VbScript.
Il est alors possible de modifier l'adressage IP, FINS ou d'envoyer des
commandes FINS
Téléchargez l'exemple ChangeIP (aperçu )
Comment exécuter un ping à l'aide d'un sript ?
Ret = RunApplication("C:\WINDOWS\system32\Ping 192.168.1.57")
Comment synchroniser l'horloge d'un API depuis Cx-Supervisor ?
Le script ci-dessous permet ensuite d'exécuter l'instruction
DATE dans le programme de l'API:
MotSource[0]=(($Minute/10-($Minute%10)/10)*16+$Minute%10)*256+(($Second/10-($Second%10)/10)*16+$Second%10)
MotSource[1]=(($DayOfMonth/10-($DayOfMonth%10)/10)*16+$DayOfMonth%10)*256+(($Hour/10-($Hour%10)/10)*16+$Hour%10)
MotSource[2]=(($ShortYear/10-($ShortYear%10)/10)*16+$ShortYear%10)*256+(($Month/10-(
$Month%10)/10)*16+$Month%10)
MotSource[3]=(($WeekDay/10-($WeekDay%10)/10)*16+$WeekDay%10).
Remarque: l'instruction DATE peut être remplacée par une
requêtre FINS '0702' via un autre script.
A quoi correspondent les fichiers d'un projet Cx-Supervisor ?
Le répertoire du projet CX-Supervisor contient plusieurs types de fichier:
SR2 - Runtime du projet - utilisé par SCS.EXE lors du lancement de l'application
SCS - Fichier projet - généré lors de la sauvegarde du projet depuis le développeur
PAG - Page liées au projet SCS
UEL - Fichier de consignation d'erreur et évènement (log file).
UEB - Sauvegarde du fichier erreur/event UELlorsque celui-ci atteint la taille spécifiée.
UAL - Fichier de consignation des alarmes.
UAB - Sauvegarde du fichier UAL lorsque celui atteint la taille spécifiée.
CDM - fichier CX-Server - généré automatiquement par CX-Supervisor Developer
NVP - fichier de sauvegarde des points déclarés en non volatile.
REC - information sur les recettes
UDT - fichier langue utilisé par l'utilitaire de traduction
DLV - fichier de consignation des enregistrements de données exploitable via le Data Log Viewer.
Les version antérieures à V1.3 utilsaient des fichiers ALG, ABK, ELG et EBK pour les alarmes et les erreurs.
Comment interdire à l'utilisateur de quitter l'application de supervison ?
1- dimensionnez l'application à la taille maximum de l'écran depuis le menu 'Conditions de démarrage' et sélectionnez 'afficher la fenêtre principale agrandie'
2- modifiez les propriétés de la page (double click sur la page)
et cochez l'option 'plein écran'.
3- dans le menu 'projet/sécurité exécution', configurer un utilisateur avec un niveau d'accès restreint notamment sur la dernière option 'sortie de l'application'.
Attention: toute modification de base de registre doit être précédée d'une sauvegarde !!!!
4- Désactiver l'usage du raccourci 'ALT-CTRL-SUPP' à partir de la base de registre:
Regedit HKEY_CURRENT_USER\ControlPanel\Desktop puis passez à 0 la valeur du paramètre 'CoolSwitch'.
5- Désactiver l'option 'Arrêter' suivant la séquence ALT-CTRL-SUPP à partir de la base de registre:
Regedit
HKEY_CURRENT_USER\Software/Microsoft\Windows\CurrentVersion\Policies\Explorer puis passez à 1 la valeur des paramètres NoClose et NoLogOff.
6- Désactivez l'accès au changement de mot de passe, au gestionnaire de tâche et au vérouillage de la station à partir de la base de registre :
Regedit
HKEY_CURRENT_USER\Software/Microsoft\Windows\CurrentVersion\Policies\System puis passez à 1 les paramètres DisableChangePassword, DisableWorkStation et DisableTaskManager.
7- désactivez l'affichage de la barre de tâches à partir de la base de registre:
Regedit
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Keyboard Layout et créez (s'il elle n'existe pas) la clé
ScanCode Map avec un type de donnée 'REG_BINARY' et contenant la valeur "00 00 00 00 00 00 00 00 03 00 00 00 00 00 5B E0 00 00 00 00" (sans espace).
Retour
en Haut
Cx-Designer
Est-il possible
de simuler un projet NS (ou NS Runtime) dialoguant avec un API via un
modem ?
Oui, à condition
d'établir la connexion au préalable. Pour ce faire, il est
nécessaire de garder le modem connecté lors du passage de
l'application de numérotation (ex: Multiway) vers Cx-Designer ou
NS RunTime.
La séquence Hayes "AT&D0" permet de ne pas raccrocher
la ligne lors de la disparition du signal CTS.
Comment créer un écran de veille ?
Rendez-vous à la rubrique Programmes/démo dans la quelle
vous trouverez un exemple
d'écran de veille
Est-il possible de transférer un projet NS via une carte
de communication SCU ?
NON.
Les cartes SCU ne sont pas capables de router le protocole utilisé
par Cx-Designer pour transférer un projet.
Retour
en Haut
Cx-Server
Lite
Qu'est-ce que Cx-Server Lite ?
Cx-Server Lite est
un activeX permettant de gérer les communications vers les API
Omron et une application Microsoft de type Excel, Visual Basic etc.. .
Il inclut également des composants graphiques permettant à
une personne non initiée de réaliser une mini-supervision
(voir l'animation).
Est-il possible de communiquer avec un terminal tactile NS ?
Oui car Cx-Lite ne
contrôle pas le type d'équipement connecté.
Retour
en Haut
Je ne parviens pas à émettre/recevoir des données
avec ma carte SCU en protocol macro !
| |
cause
probable |
remède |
| aucune émission de données |
|
vérifiez :
- le port de destination (#0100 ou #0200)
- le n° d'unité n +10 (#001n)
- le n° de séquence (2ème opérande)
|
| |
Port indisponible |
vérifiez
la configuration du port (Protocol macro) |
| |
Signal RTS absent |
strappez 4 et
5 |
| aucune réception
de données |
Prot. macro incomplet |
vérifiez
que :
- la commande de l'étape est en Send/receive
- la quantité d'octet reçu est >= à n (W(1),n)
|
| données reçues
incorrectes |
Prot. macro erroné |
- vérifiez
le format ascii/binaire
- exécutez une trace pour examiner en détail
(voir animation)
|
| Trace TX/RX entrelacée |
|
Aucune incidence
sur l'émission des données |
Retour
en Haut