S7ProSim V5.4

Transcription

S7ProSim V5.4
 S7ProSim V5.4
1
___________________
Introduction
2
___________________
Présentation de S7ProSim
SIMATIC
Outils d'ingénierie
S7ProSim V5.4
Manuel d'utilisation
07/2011
A5E00992431-02
3
___________________
Méthodes
4
___________________
Evénements
5
___________________
Définitions de types
Mentions légales
Mentions légales
Signalétique d'avertissement
Ce manuel donne des consignes que vous devez respecter pour votre propre sécurité et pour éviter des
dommages matériels. Les avertissements servant à votre sécurité personnelle sont accompagnés d'un triangle de
danger, les avertissements concernant uniquement des dommages matériels sont dépourvus de ce triangle.
Les avertissements sont représentés ci-après par ordre décroissant de niveau de risque.
DANGER
signifie que la non-application des mesures de sécurité appropriées entraîne la mort ou des blessures graves.
ATTENTION
signifie que la non-application des mesures de sécurité appropriées peut entraîner la mort ou des blessures
graves.
PRUDENCE
accompagné d’un triangle de danger, signifie que la non-application des mesures de sécurité appropriées peut
entraîner des blessures légères.
PRUDENCE
non accompagné d’un triangle de danger, signifie que la non-application des mesures de sécurité appropriées
peut entraîner un dommage matériel.
IMPORTANT
signifie que le non-respect de l'avertissement correspondant peut entraîner l'apparition d'un événement ou d'un
état indésirable.
En présence de plusieurs niveaux de risque, c'est toujours l'avertissement correspondant au niveau le plus élevé
qui est reproduit. Si un avertissement avec triangle de danger prévient des risques de dommages corporels, le
même avertissement peut aussi contenir un avis de mise en garde contre des dommages matériels.
Personnes qualifiées
L’appareil/le système décrit dans cette documentation ne doit être manipulé que par du personnel qualifié pour
chaque tâche spécifique. La documentation relative à cette tâche doit être observée, en particulier les consignes
de sécurité et avertissements. Les personnes qualifiées sont, en raison de leur formation et de leur expérience,
en mesure de reconnaître les risques liés au maniement de ce produit / système et de les éviter.
Utilisation des produits Siemens conforme à leur destination
Tenez compte des points suivants:
ATTENTION
Les produits Siemens ne doivent être utilisés que pour les cas d'application prévus dans le catalogue et dans la
documentation technique correspondante. S'ils sont utilisés en liaison avec des produits et composants d'autres
marques, ceux-ci doivent être recommandés ou agréés par Siemens. Le fonctionnement correct et sûr des
produits suppose un transport, un entreposage, une mise en place, un montage, une mise en service, une
utilisation et une maintenance dans les règles de l'art. Il faut respecter les conditions d'environnement
admissibles ainsi que les indications dans les documentations afférentes.
Marques de fabrique
Toutes les désignations repérées par ® sont des marques déposées de Siemens AG. Les autres désignations
dans ce document peuvent être des marques dont l'utilisation par des tiers à leurs propres fins peut enfreindre les
droits de leurs propriétaires respectifs.
Exclusion de responsabilité
Nous avons vérifié la conformité du contenu du présent document avec le matériel et le logiciel qui y sont décrits.
Ne pouvant toutefois exclure toute divergence, nous ne pouvons pas nous porter garants de la conformité
intégrale. Si l'usage de ce manuel devait révéler des erreurs, nous en tiendrons compte et apporterons les
corrections nécessaires dès la prochaine édition.
Siemens AG
Industry Sector
Postfach 48 48
90026 NÜRNBERG
ALLEMAGNE
A5E00992431-02
Ⓟ 05/2011
Copyright © Siemens AG 2011.
Sous réserve de modifications techniques
Sommaire
1
Introduction................................................................................................................................................ 5
2
Présentation de S7ProSim......................................................................................................................... 7
3
2.1
Ajout d'un objet COM S7ProSim à votre projet .............................................................................7
2.2
Programmation d'une interface vers S7-PLCSIM à l'aide de S7ProSim .......................................8
Méthodes................................................................................................................................................. 11
3.1
BeginScanNotify ..........................................................................................................................13
3.2
Connect........................................................................................................................................14
3.3
ConnectExt...................................................................................................................................15
3.4
Continue.......................................................................................................................................16
3.5
Disconnect ...................................................................................................................................17
3.6
EndScanNotify .............................................................................................................................18
3.7
ExecuteNmsScan ........................................................................................................................19
3.8
ExecuteNScans ...........................................................................................................................20
3.9
ExecuteSingleScan......................................................................................................................21
3.10
GetPauseState.............................................................................................................................22
3.11
GetScanMode ..............................................................................................................................23
3.12
GetStartUpSwitch ........................................................................................................................24
3.13
GetState .......................................................................................................................................25
3.14
HotStartWithSavedValues ...........................................................................................................26
3.15
Pause ...........................................................................................................................................27
3.16
ReadDataBlockValue...................................................................................................................28
3.17
ReadFlagValue ............................................................................................................................30
3.18
ReadOutputImage........................................................................................................................32
3.19
ReadOutputPoint .........................................................................................................................34
3.20
SavePLC ......................................................................................................................................36
3.21
SetScanMode...............................................................................................................................37
3.22
SetStartUpSwitch.........................................................................................................................38
3.23
SetState .......................................................................................................................................39
3.24
StartPLCSim ................................................................................................................................40
3.25
StartPLCSimExt ...........................................................................................................................41
3.26
WriteDataBlockValue ...................................................................................................................42
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
3
Sommaire
4
5
3.27
WriteFlagValue............................................................................................................................ 44
3.28
WriteInputImage.......................................................................................................................... 46
3.29
WriteInputPoint............................................................................................................................ 48
Evénements............................................................................................................................................. 51
4.1
ConnectionError .......................................................................................................................... 51
4.2
PauseStateChanged ................................................................................................................... 52
4.3
PLCSimStateChanged ................................................................................................................ 52
4.4
ScanFinished .............................................................................................................................. 52
4.5
ScanModeChanged .................................................................................................................... 53
Définitions de types ................................................................................................................................. 55
5.1
Définitions de types..................................................................................................................... 55
5.2
CPURunMode ............................................................................................................................. 55
5.3
ImageDataTypeConstants .......................................................................................................... 56
5.4
PauseStateConstants ................................................................................................................. 56
5.5
PointDataTypeConstants ............................................................................................................ 57
5.6
RestartSwitchPosition ................................................................................................................. 57
5.7
ScanModeConstants................................................................................................................... 58
5.8
tagPauseState............................................................................................................................. 58
5.9
Constantes ScanInfo................................................................................................................... 59
5.10
Codes d'erreur............................................................................................................................. 59
Index........................................................................................................................................................ 61
S7ProSim V5.4
4
Manuel d'utilisation, 07/2011, A5E00992431-02
Introduction
1
S7ProSin fournit un accès par programme à l'interface de simulation d'AP de S7-PLCSIM.
S7ProSim vous permet d'écrire du logiciel pour exécuter des actions comme la commutation
de la position du commutateur à clé sur le système cible simulé, l'exécution cyclique du
programme, la lecture et l'écriture des valeurs de l'automate, etc.
Groupe cible
Ce manuel est destiné aux ingénieurs, aux programmeurs et au personnel de maintenance
expérimentés connaissant les automates programmables (AP) S7 et la conception de
logiciels dans Visual Basic (6.0 ou .NET) ou Visual C++ (6.0 ou .NET).
Objet du manuel
Ce document décrit les fonctions et l'utilisation de S7ProSim à partir de V5.4 SP5.
Autres manuels
Pour plus d'informations, référez-vous à l'aide en ligne de STEP 7 et de S7-PLCSIM,
ainsi qu'aux manuels suivants :
● Manuel Programmer avec STEP 7. Ce manuel fournit des informations de base sur la
conception et la programmation de programmes de commande. Servez-vous
de ce manuel pour créer un programme de commande avec le
logiciel d'automatisation STEP 7.
● Manuel de référence Logiciel système pour S7-300/400 Fonctions standard et fonctions
système. Ce manuel décrit les fonctions système, les blocs d'organisation et les fonctions
standard que vous utilisez lors de la conception d'un programme de commande.
● Manuel STEP 7, Mise en route. Ce manuel explique comment utiliser le logiciel
d'automatisation STEP 7. Il présente les procédures utilisées pour configurer un
automate programmable et pour concevoir des programmes de commande.
● S7-PLCSIM – Tester le programme de votre CPU S7. Ce manuel explique
l'interface utilisateur et le fonctionnement de S7-PLCSIM, l'application de
simulation d'automates programmables S7.
Pour trouver ces manuels ou d'autres manuels, sélectionnez la commande Démarrer >
SIMATIC > Documentation dans le menu Démarrer de l'ordinateur où est installé STEP 7.
Aide supplémentaire
Adressez-vous à votre agence Siemens si certaines de vos questions techniques restent
sans réponse, si vous désirez passer une commande ou si vous voulez connaître les offres
de formation.
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
5
Introduction
S7ProSim V5.4
6
Manuel d'utilisation, 07/2011, A5E00992431-02
Présentation de S7ProSim
2
S7ProSim fournit un objet COM qui donne accès par programme à l'interface de simulation
de processus de S7-PLCSIM. Vous pouvez utiliser S7ProSim dans toute application
qui prend en charge les objets COM pour la connexion à la simulation de processus
S7-PLCSIM.
Ce document en ligne décrit comment intégrer S7ProSim à une application, ainsi que les
caractéristiques, interface et fonctionnement de S7ProSim, notamment les définitions objets
logicielles des méthodes et des événements.
2.1
Ajout d'un objet COM S7ProSim à votre projet
Pour ajouter un objet COM S7ProSim dans votre projet, vous insérez une référence à cet
objet. Les étapes nécessaires pour ajouter une référence de projet dépendent de votre
environnement de programmation.
Marche à suivre
Dans Microsoft Visual Basic (6.0 ou .NET) par exemple, vous devez exécuter les étapes
suivantes pour ajouter une référence d'objet COM S7ProSim :
1. Sélectionnez la commande Projet > Références ou Projet > Ajouter référence.
2. Dans la boîte de dialogue "Références", cochez la case pour l'objet COM S7ProSim
Siemens. Dans Visual Basic .NET, cette option se situe dans l'onglet "COM" de la boîte
de dialogue "Références".
3. Confirmez par "OK".
Une fois que vous avez ajouté la référence de projet, vous pouvez utiliser le navigateur
d'objets pour visualiser les méthodes et les événements de l'objet COM S7ProSim.
Dans le navigateur d'objets, sélectionnez S7PROSIMLib dans la liste déroulante des
bibliothèques. La classe S7ProSim contient les méthodes et les événements que vous
pouvez utiliser pour programmer une interface vers S7-PLCSIM.
Dans Microsoft Visual Studio C++ V6.0 ou dans Microsoft Visual C++ .NET,
suivez la procédure d'ajout d'un objet COM correspondant à l'environnement
de programmation concerné.
Dans Microsoft Visual C# .NET, vous pouvez exécuter les étapes suivantes pour ajouter une
référence d'objet COM S7ProSim :
1. Sélectionnez la commande Projet > Ajouter référence.
2. Sélectionnez l'objet "Siemens S7ProSim COM Object" dans l'onglet "COM".
3. Confirmez votre choix en cliquant sur "Sélectionner".
4. Quittez la boîte de dialogue en cliquant sur "OK".
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
7
Présentation de S7ProSim
2.2 Programmation d'une interface vers S7-PLCSIM à l'aide de S7ProSim
2.2
Programmation d'une interface vers S7-PLCSIM à l'aide de
S7ProSim
Marche à suivre
Vous devez exécuter les tâches suivantes pour commander l'automate simulé dans
S7-PLCSIM à l'aide d'un programme avec S7ProSim :
1. Incluez l'objet COM S7ProSim Siemens dans le projet.
2. Ajoutez une déclaration pour S7ProSim à votre projet.
– Exemple : Visual Basic 6.0
Option Explicit
Private WithEvents S7ProSim As S7PROSIMLib.S7ProSim
...
Private Sub Form_Load()
Set S7ProSim = New S7PROSIMLIB.S7ProSim
...
End Sub
– Exemple : Visual Basic .NET
Private WithEvents S7ProSim As New S7PROSIMLib.S7ProSim
– Exemple : Visual C++ 6.0
// la bibliothèque/tlb ProSim est dans la dll
#import <S7wspsmx.dll> named_guids, no_namespace//, raw_interfaces_only
class ProSimWrapper
{
public:
ProSimWrapper() : m_pProSim(OLESTR("S7wspsmx.S7ProSim"), NULL,
CLSCTX_INPROC_SERVER)
{};
// le pointeur intelligent est automatiquement créé dans la pile au
démarrage
// de l'application
virtual ~ProSimWrapper()
{};
// pas d'implémentation, le pointeur intelligent est automatiquement
// libéré
// à l'arrêt de l'application
IS7ProSim * GetPtr()
{
return m_pProSim;
};
S7ProSim V5.4
8
Manuel d'utilisation, 07/2011, A5E00992431-02
Présentation de S7ProSim
2.2 Programmation d'une interface vers S7-PLCSIM à l'aide de S7ProSim
// Attributs
protected:
// IProSimPtr est un pointeur intelligent CComPtr vers
// l'interface IProSim
// Il vient du fichier dll de #import
// CoCreateInstance est appelé automatiquement pour l'objet pointeur dans
// le constructeur
// de cette classe
// la libération de pointeur (release ptr) est automatiquement
// appelée par le destructeur de cette classe
IS7ProSimPtr
m_pProSim;
};
– Exemple : C#
using S7PROSIMLib;
...
private S7ProSim ps;
// create the COM Object connection
ps = new S7ProSim();
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
9
Présentation de S7ProSim
2.2 Programmation d'une interface vers S7-PLCSIM à l'aide de S7ProSim
3. Pour Visual Basic, programmez des gestionnaires d'événements pour les événements
S7ProSim. Les gestionnaires d'événements ne sont pas nécessaires dans
Visual C++ ni Visual C#. Vous pouvez insérer dans chaque gestionnaire d'événement
un code quelconque pour votre application.
Exemple : Visual Basic 6.0
Private Sub S7ProSim_PauseStateChanged(ByVal NewState As String)
DoEvents
...
End Sub
Private Sub S7ProSim_ScanFinished(ByVal ScanInfo As Variant)
DoEvents
...
End Sub
Private Sub S7ProSim_PLCSimStateChanged(ByVal NewState As String)
DoEvents
...
End Sub
Private Sub S7ProSim_ConnectionError(ByVal ControlEngine As String, ByVal error As
Long)
DoEvents
MsgBox "Erreur de connexion"
End Sub
Private Sub S7ProSim_ScanModeChanged(ByVal NewState As String)
DoEvents
...
End Sub
Remarque
Dans Visual Basic .NET, l'appel "DoEvents" n'est pas nécessaire.
4. Ajoutez des boutons de commande, des champs de texte et d'autres objets à votre
application selon vos besoins pour accéder aux diverses méthodes S7ProSim.
Programmez le code pour chaque gestionnaire de bouton de commande pour l'appel de
méthodes S7ProSim et définissez les valeurs correspondantes pour les champs de texte
en fonction de votre application.
S7ProSim V5.4
10
Manuel d'utilisation, 07/2011, A5E00992431-02
3
Méthodes
Présentation
Méthode
Description
BeginScanNotify (Page 13)
Enregistre S7ProSim pour des rappels de l'automate.
L'événement ScanFinished et l'événement PLCSimStateChanged
seront envoyés lorsqu'ils se produisent.
Connect (Page 14)
Connecte S7ProSim à S7-PLCSIM.
ConnectExt (Page 15)
Connecte S7ProSim à l'instance S7-PLCSIM
avec le numéro InstanceNumber.
Continue (Page 16)
Poursuit une simulation qui a été suspendue.
Disconnect (Page 17)
Déconnecte S7ProSim de S7-PLCSIM.
EndScanNotify (Page 18)
Annule l'enregistrement de S7ProSim pour des rappels de l'automate.
Les événements ScanFinished et PLCSimStateChanged ne
seront pas envoyés.
ExecuteNmsScan
(Page 19)
Force S7PLCSIM à exécuter des cycles pendant une durée spécifique
(Nms) et n'attend pas que l'exécution du cycle en cours soit achevée.
Si la notification de cycle est activée, le programme sera averti lorsque
S7-PLCSIM aura terminé les cycles.
ExecuteNScans (Page 20)
Force S7-PLCSIM à exécuter un nombre défini de cycles sans attendre
que l'exécution du cycle en cours s'achève. Si la notification de cycle
est activée, le programme sera averti lorsque S7-PLCSIM
aura terminé les cycles.
ExecuteSingleScan
(Page 21)
Force S7-PLCSIM à exécuter un cycle sans attendre que l'exécution du
cycle en cours s'achève. Si la notification de cycle est activée, le
programme sera averti lorsque S7-PLCSIM aura terminé le cycle.
GetPauseState (Page 22)
Renvoie l'état Pause en cours de S7-PLCSIM.
GetScanMode (Page 23)
Renvoie le mode de fonctionnement de S7-PLCSIM.
GetStartUpSwitch
(Page 24)
Fournit le paramétrage de mise en route (redémarrage,
démarrage à chaud ou démarrage à froid) pour S7PLCSIM.
GetState (Page 25)
Renvoie une chaîne contenant la position en cours du commutateur
à clé de S7-PLCSIM (position RUN, RUN-P ou STOP).
HotStartWithSavedValues
(Page 26)
Définit une valeur booléenne déterminant si S7-PLCSIM doit charger
les valeurs d'E/S sauvegardées de la périphérie lors d'une mise en
route à l'état de redémarrage HotStart.
Pour que S7-PLCSIM démarre et charge la périphérie d'E/S,
l'utilisateur doit appeler HotStartWithSavedValues avec la valeur
TRUE, enregistrer le programme API (SavePLC) et paramétrer l'état de
mise en route pour S7-PLCSIM sur redémarrage HotStart
(SetStartUpSwitch). Lors de son redémarrage,
S7-PLCSIM chargera la périphérie d'E/S.
Pause (Page 27)
Suspend une simulation.
ReadDataBlockValue
(Page 28)
Lit un bit, un octet, un mot ou un double mot spécifique dans la zone de
mémoire DB de S7-PLCSIM.
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
11
Méthodes
Méthode
Description
ReadFlagValue (Page 30)
Lit un bit, un octet, un mot ou un double mot spécifique dans
la zone de mémoire des mémentos (M) de S7-PLCSIM.
ReadOutputImage
(Page 32)
Lit des éléments dans la zone de périphérie des sorties
(zone de mémoire PA) de S7-PLCSIM.
ReadOutputPoint (Page 34) Lit un bit (Boolean), un octet (Byte), un mot (Integer) ou un double mot
(Long) spécifique de la périphérie de sortie (zone PA).
SavePLC (Page 36)
Enregistre les données de l'API en cours de simulation dans un fichier.
Les données sauvegardées comprennent le programme,
la configuration matérielle, la position du commutateur à clé indiquée
par la fenêtre CPU, le mode d'exécution du programme
(automatique ou cyclique), l'état des E/S, les valeurs des
temporisations, les adresses symboliques, ainsi que le paramétrage de
l'alimentation (sous tension ou hors tension).
SetScanMode (Page 37)
Définit le mode de fonctionnement pour S7-PLCSIM.
SetStartUpSwitch
(Page 38)
Définit le type de démarrage (redémarrage, démarrage à chaud ou
démarrage à froid) pour la mise en route de S7-PLCSIM.
SetState (Page 39)
Définit la position en cours du commutateur à clé de S7-PLCSIM
(RUN, RUN-P ou STOP).
StartPLCSim (Page 40)
Lance S7-PLCSIM avec le fichier de simulation API indiqué
(enregistré lors d'un appel précédent de SavePLC).
StartPLCSimExt (Page 41)
Lance une instance de S7-PLCSIM avec le fichier de simulation
API indiqué (enregistré lors d'un appel précédent).
WriteDataBlockValue
(Page 42)
Ecrit un bit, un octet, un mot ou un double mot spécifique dans la zone
de mémoire DB de S7-PLCSIM.
WriteFlagValue (Page 44)
Ecrit un bit, un octet, un mot ou un double mot spécifique dans la zone
de mémoire des mémentos (M) de S7-PLCSIM.
WriteInputImage (Page 46)
Ecrit des éléments dans la zone de périphérie des entrées (zone PE)
de S7-PLCSIM, en commençant à la position StartIndex des données
désignées par pData.
WriteInputPoint (Page 48)
Ecrit un bit (Boolean), un octet (Byte), un mot (Integer) ou un double
mot (Long) spécifique du paramètre Data (de type Variant) dans la
zone de périphérie des entrées (zone PE).
S7ProSim V5.4
12
Manuel d'utilisation, 07/2011, A5E00992431-02
Méthodes
3.1 BeginScanNotify
3.1
BeginScanNotify
STDMETHOD(CS7ProSim::BeginScanNotify)()
Description
Enregistre S7ProSim pour des rappels de l'automate. L'événement ScanFinished
et l'événement PLCSimStateChanged seront envoyés lorsqu'ils se produisent.
Paramètres
Néant
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
E_FAIL
0x80004005 : Erreur non spécifiée
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
PS_E_POWEROFF
0x80040212 : S7-PLCSIM est hors tension.
Utilisation dans Visual Basic
Function BeginScanNotify() As Long
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
13
Méthodes
3.2 Connect
3.2
Connect
STDMETHOD(Connect)()
Description
Connecte S7ProSim à la première instance de S7-PLCSIM, qui a le numéro d'instance "1".
Paramètres
Néant
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
E_FAIL
0x80004005 : Erreur non spécifiée
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
PS_E_PLCISCONNECTED
0x8004020E : S7-PLCSIM est connecté.
PS_E_POWEROFF
0x80040212 : S7-PLCSIM est hors tension.
Utilisation dans Visual Basic
Function Connect() As Long
S7ProSim V5.4
14
Manuel d'utilisation, 07/2011, A5E00992431-02
Méthodes
3.3 ConnectExt
3.3
ConnectExt
STDMETHOD (ConnectExt)(/*[in]*/ long InstanceNumber)
Description
Connecte S7ProSim à l'instance S7-PLCSIM avec le numéro InstanceNumber.
Paramètres
InstanceNumber [in] : Numéro de l'instance à laquelle connecter S7ProSim.
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans
l'appel de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
E_FAIL
0x80004005 : Erreur non spécifiée
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
PS_E_PLCISCONNECTED
0x8004020E : S7-PLCSIM est connecté.
PS_E_POWEROFF
0x80040212 : S7-PLCSIM est hors tension.
Utilisation dans Visual Basic
Function ConnectExt() As Long
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
15
Méthodes
3.4 Continue
3.4
Continue
STDMETHOD(CS7ProSim::Continue)()
Description
Poursuit une simulation qui a été suspendue.
Paramètres
Néant
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
Utilisation dans Visual Basic
Sub Continue()
S7ProSim V5.4
16
Manuel d'utilisation, 07/2011, A5E00992431-02
Méthodes
3.5 Disconnect
3.5
Disconnect
STDMETHOD(CS7ProSim::Disconnect)()
Description
Déconnecte S7ProSim de S7-PLCSIM.
Paramètres
Néant
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
E_FAIL
0x80004005 : Erreur non spécifiée
PS_E_POWEROFF
0x80040212 : S7-PLCSIM est hors tension.
Utilisation dans Visual Basic
Function Disconnect() As Long
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
17
Méthodes
3.6 EndScanNotify
3.6
EndScanNotify
STDMETHOD(CS7ProSim::EndScanNotify)()
Description
Annule l'enregistrement de S7ProSim pour des rappels de l'automate. Les événements
ScanFinished et PLCSimStateChanged ne seront plus envoyés.
Paramètres
Néant
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
E_FAIL
0x80004005 : Erreur non spécifiée
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
PS_E_POWEROFF
0x80040212 : S7-PLCSIM est hors tension.
PS_E_NOTREGISTERED
0x80040209 : S7ProSim n'est pas enregistré pour des
rappels de S7-PLCSIM.
Utilisation dans Visual Basic
Function EndScanNotify() As Long
S7ProSim V5.4
18
Manuel d'utilisation, 07/2011, A5E00992431-02
Méthodes
3.7 ExecuteNmsScan
3.7
ExecuteNmsScan
STDMETHOD(CS7ProSim::ExecuteNmsScan)( long MsNumber)
Description
Force S7-PLCSIM à exécuter des cycles pendant une durée spécifique (Nms) et n'attend
pas que l'exécution du cycle en cours soit achevée. Si la notification de cycle est activée,
le programme sera averti lorsque S7-PLCSIM aura terminé les cycles. S7-PLCSIM doit être
en mode de traitement de programme cyclique pour cette méthode.
Paramètres
Paramètres
Déclaration
Description
MsNumber
Input
Durée (en millisecondes) pendant laquelle les
cycles doivent être exécutés.
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
E_FAIL
0x80004005 : Erreur non spécifiée
PS_E_NOTSINGLESCAN
0x8004020A : S7-PLCSIM n'est pas en mode
"traitement de programme cyclique".
PS_E_PLCNOTRUNNING
0x8004020E : S7-PLCSIM n'est pas en cours d'exécution.
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
Utilisation dans Visual Basic
Function ExecuteNmsScan(MsNumber As Long) As Long
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
19
Méthodes
3.8 ExecuteNScans
3.8
ExecuteNScans
STDMETHOD(CS7ProSim::ExecuteNScans)( long NScanNumber)
Description
Force S7-PLCSIM à exécuter un nombre défini de cycles sans attendre que l'exécution du
cycle en cours s'achève. Si la notification de cycle est activée, le programme sera averti
lorsque S7-PLCSIM aura terminé les cycles. S7-PLCSIM doit être en mode de traitement de
programme cyclique pour cette méthode.
Paramètres
Paramètres
Déclaration
Description
NScanNumber
Input
Nombre de cycles à exécuter
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
E_FAIL
0x80004005 : Erreur non spécifiée
PS_E_NOTSINGLESCAN
0x8004020A : S7-PLCSIM n'est pas en mode
"traitement de programme cyclique".
PS_E_PLCNOTRUNNING
0x8004020E : S7-PLCSIM n'est pas en cours d'exécution.
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
Utilisation dans Visual Basic
Function ExecuteNScans(NScanNumber As Long) As Long
S7ProSim V5.4
20
Manuel d'utilisation, 07/2011, A5E00992431-02
Méthodes
3.9 ExecuteSingleScan
3.9
ExecuteSingleScan
STDMETHOD(CS7ProSim::ExecuteSingleScan)()
Description
Force S7-PLCSIM à exécuter un cycle sans attendre que l'exécution du cycle en cours
s'achève. Si la notification de cycle est activée, le programme sera averti lorsque
S7-PLCSIM aura terminé le cycle. S7-PLCSIM doit être en mode de traitement de
programme cyclique pour cette méthode.
Paramètres
Néant
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
E_FAIL
0x80004005 : Erreur non spécifiée
PS_E_PLCNOTRUNNING
0x8004020E : S7-PLCSIM n'est pas en cours d'exécution.
PS_E_NOTSINGLESCAN
0x8004020A : S7-PLCSIM n'est pas en mode "traitement de
programme cyclique".
PS_E_MODENOTPOSSIBLE
0x8004020C : S7-PLCSIM n'a pas pu paramétrer le mode de
traitement de cycle indiqué.
Utilisation dans Visual Basic
Function ExecuteSingleScan() As Long
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
21
Méthodes
3.10 GetPauseState
3.10
GetPauseState
STDMETHOD(CS7ProSim::GetPauseState)( PauseStateConstants *pVal)
Description
Renvoie l'état Pause en cours de S7-PLCSIM.
Paramètres
Paramètres
Déclaration
Description
pVal
Output
Pointeur désignant l'état S7-PLCSIM renvoyé, qui est l'un des
paramètres PauseStateConstants
Remarques
En cas d'appel depuis Visual Basic et C# , l'état Pause est signalé dans la valeur en retour
de la fonction et il n'y a pas de paramètre pVal.
En cas d'appel depuis C++, l'état est renvoyé dans la valeur désignée par pVal.
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
Utilisation dans Visual Basic
Function GetPauseState() As PauseStateConstants
S7ProSim V5.4
22
Manuel d'utilisation, 07/2011, A5E00992431-02
Méthodes
3.11 GetScanMode
3.11
GetScanMode
STDMETHOD(CS7ProSim::GetScanMode)( ScanModeConstants *pVal)
Description
Renvoie le mode de fonctionnement de S7-PLCSIM.
Paramètres
Paramètres Déclaration
Description
pVal
Pointeur désignant le mode de fonctionnement renvoyé.
Le mode renvoyé est l'une des constantes ScanModeConstants
Output
Remarques
En cas d'appel depuis Visual Basic et C# , le mode est signalé dans la valeur en retour de la
fonction et il n'y a pas de paramètre pVal.
En cas d'appel depuis C++, l'état est renvoyé dans la valeur désignée par pVal.
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
Utilisation dans Visual Basic
Function GetScanMode() As ScanModeConstants
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
23
Méthodes
3.12 GetStartUpSwitch
3.12
GetStartUpSwitch
STDMETHOD(CS7ProSim::GetStartUpSwitch)( RestartSwitchPosition *pPos)
Description
Fournit le paramétrage de mise en route (redémarrage, démarrage à chaud ou démarrage
à froid) pour S7-PLCSIM.
Paramètres
Paramètres
Déclaration
Description
pPos
Output
Pointeur désignant la valeur de mise en route de S7-PLCSIM,
qui est l'un des paramétrages RestartSwitchPosition
Remarques
En cas d'appel depuis Visual Basic et C#, la position du commutateur est signalée dans la
valeur en retour de la fonction et il n'y a pas de paramètre pPos.
En cas d'appel depuis C++, la position est signalée dans la valeur désignée par pPos.
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
Utilisation dans Visual Basic
Function GetStartUpSwitch() As RestartSwitchPosition
S7ProSim V5.4
24
Manuel d'utilisation, 07/2011, A5E00992431-02
Méthodes
3.13 GetState
3.13
GetState
STDMETHOD(CS7ProSim::GetState)( BSTR *pVal)
Description
Renvoie une chaîne contenant la position en cours du commutateur à clé de S7-PLCSIM
(position RUN, RUN-P ou STOP).
Paramètres
Paramètres Déclaration
Description
pVal
Pointeur désignant la valeur renvoyée de la position du commutateur à
clé de S7-PLCSIM.
Output
Remarques
En cas d'appel depuis Visual Basic et C# , l'état est signalé dans la valeur en retour de la
fonction et il n'y a pas de paramètre pVal.
En cas d'appel depuis C++, l'état est renvoyé dans la valeur désignée par pVal.
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
E_FAIL
0x80004005 : Erreur non spécifiée
E_INVALID_STATE
0x00008002 : Etat incorrect
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
Utilisation dans Visual Basic
Function GetState() As String
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
25
Méthodes
3.14 HotStartWithSavedValues
3.14
HotStartWithSavedValues
STDMETHOD(CS7ProSim::HotStartWithSavedValues)( BOOL val)
Description
Définit une valeur booléenne déterminant si S7-PLCSIM doit charger les valeurs d'E/S
sauvegardées de la périphérie lors d'une mise en route à l'état de redémarrage HotStart.
Pour que S7-PLCSIM démarre et charge la périphérie d'E/S, l'utilisateur doit appeler
HotStartWithSavedValues avec la valeur TRUE, enregistrer le programme API (SavePLC)
et paramétrer l'état de mise en route pour S7-PLCSIM à redémarrage HotStart
(SetStartUpSwitch). S7-PLCSIM chargera la périphérie d'E/S au redémarrage.
Paramètres
Paramètres
Déclaration
Description
val
Input
La valeur TRUE signifie que S7-PLCSIM doit charger la périphérie
d'E/S sauvegardée lors d'un redémarrage. La valeur FALSE signifie
qu'il ne doit pas charger ces valeurs.
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
Utilisation dans Visual Basic
Sub HotStartWithSavedValues(val As Long)
S7ProSim V5.4
26
Manuel d'utilisation, 07/2011, A5E00992431-02
Méthodes
3.15 Pause
3.15
Pause
STDMETHOD(CS7ProSim::Pause)()
Description
Suspend une simulation.
Paramètres
Néant
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
Utilisation dans Visual Basic
Sub Pause()
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
27
Méthodes
3.16 ReadDataBlockValue
3.16
ReadDataBlockValue
STDMETHOD(CS7ProSim::ReadDataBlockValue)(
long BlockNumber,
long ByteIndex,
long BitIndex,
PointDataTypeConstants DataType,
VARIANT* pData)
Description
Lit un bit (Boolean), un octet (Byte), un mot (Integer) ou un double mot (Long) spécifique de
la zone de mémoire d'un bloc de données.
Paramètres
Paramètres
Déclaration
BlockNumber
Input
Description
ByteIndex
Input
Position d'octet de début dans le bloc de données à lire. Les
valeurs correctes pour ByteIndex dépendent de la CPU.
BitIndex
Input
Position de bit de début dans le bloc de données à lire en cas de
lecture d'une valeur booléenne (binaire). Les valeurs correctes pour
BitIndex vont de 0 à 7.
DataType
Input
Type de données à lire. DataType doit avoir l'une des valeurs
PointDataTypeConstants.
pData
Input, Output
Pointeur désignant les données lues. Les valeurs correctes pour
Data dépendent du type de données. Vous devez affecter et libérer
cette zone de mémoire dans votre application.
Numéro du bloc de données à lire. Les valeurs correctes pour
BlockNumber dépendent de la CPU.
Remarque
Si le paramètre DataType est S7_Bit, alors ByteIndex et BitIndex doivent tous deux être
paramétrés sur des indices corrects. En cas de succès, la méthode renvoie le bit donné
dans pData et son type de données Variant est BOOL.
Si le paramètre DataType est S7_Byte, S7_Word ou S7_DoubleWord, alors ByteIndex doit
être paramétré sur un indice correct (BitIndex n'est pas pris en compte). En cas de succès,
la méthode renvoie la valeur dans pData. Le type de données Variant est Byte, Integer ou
Long, selon le paramètre DataType.
S7ProSim V5.4
28
Manuel d'utilisation, 07/2011, A5E00992431-02
Méthodes
3.16 ReadDataBlockValue
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
E_FAIL
0x80004005 : Erreur non spécifiée
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
PS_E_POWEROFF
0x80040212 : S7-PLCSIM est hors tension.
PS_E_BADTYPE
0x80040206 : Type de données incorrect
PS_E_BADBYTENDX
0x80040201 : Indice d'octet incorrect
PS_E_BADBYTECOUNT
0x80040202 : La taille du tableau de données est incorrecte
pour l'indice d'octet de début indiqué.
PS_E_READFAILED
0x80040203 : Echec de l'opération de lecture
Utilisation dans Visual Basic
Sub ReadDataBlockValue(BlockNum As Long, ByteIndex As Long, BitIndex As Long,
DataType As PointDataTypeConstants, pData)
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
29
Méthodes
3.17 ReadFlagValue
3.17
ReadFlagValue
STDMETHOD(CS7ProSim::ReadFlagValue)( long ByteIndex,
long BitIndex,
PointDataTypeConstants DataType,
VARIANT* pData)
Description
Lit un bit (Boolean), un octet (Byte), un mot (Integer) ou un double mot (Long) spécifique de
la zone de mémoire des mémentos.
Paramètres
Paramètres
Déclaration
Description
ByteIndex
Input
Représente la position d'octet de début à lire dans la zone de
mémoire des mémentos. Les valeurs correctes pour ByteIndex
dépendent de la CPU.
BitIndex
Input
Représente la position de bit de début à lire dans la zone de
mémoire des mémentos en cas de lecture d'une valeur (binaire)
booléenne. Les valeurs correctes pour BitIndex vont de 0 à 7.
DataType
Input
Représente le type de données à lire. DataType doit avoir l'une des
valeurs PointDataTypeConstants.
pData
Input, Output
Pointeur désignant les données lues. Les valeurs correctes pour
Data dépendent du type de données. Vous devez affecter et libérer
cette zone de mémoire dans votre application.
Remarque
Si le paramètre DataType est S7_Bit, alors ByteIndex et BitIndex doivent tous deux être
paramétrés sur des indices corrects. En cas de succès, la méthode renvoie le bit donné
dans pData et son type de données Variant est BOOL.
Si le paramètre DataType est S7_Byte, S7_Word ou S7_DoubleWord, alors ByteIndex doit
être paramétré sur un indice correct (BitIndex n'est pas pris en compte). En cas de succès,
la méthode renvoie la valeur dans pData. Le type de données Variant est Byte, Integer ou
Long, selon le paramètre DataType.
S7ProSim V5.4
30
Manuel d'utilisation, 07/2011, A5E00992431-02
Méthodes
3.17 ReadFlagValue
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
E_FAIL
0x80004005 : Erreur non spécifiée
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
PS_E_POWEROFF
0x80040212 : S7-PLCSIM est hors tension.
PS_E_BADTYPE
0x80040206 : Type de données incorrect
PS_E_BADBYTENDX
0x80040201 : Indice d'octet incorrect
PS_E_BADBYTECOUNT
0x80040202 : La taille du tableau de données est incorrecte
pour l'indice d'octet de début indiqué.
PS_E_READFAILED
0x80040203 : Echec de l'opération de lecture
Utilisation dans Visual Basic
Sub ReadFlagValue(ByteIndex As Long, BitIndex As Long, DataType As
PointDataTypeConstants, pData)
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
31
Méthodes
3.18 ReadOutputImage
3.18
ReadOutputImage
STDMETHOD(CS7ProSim::ReadOutputImage)( long StartIndex,
long ElementsToRead,
ImageDataTypeConstants DataType,
VARIANT* pData)
Description
Lit des éléments dans la zone de périphérie des sorties (zone de mémoire PA)
de S7-PLCSIM.
Paramètres
Paramètres
Déclaration
Description
StartIndex
Input
Représente la position d'octet de début à lire dans la périphérie
des sorties. Les valeurs correctes pour StartIndex dépendent
de la CPU.
ElementsToRead
Input
Représente le nombre d'octets, de mots ou de doubles mots à
lire dans la mémoire image. Les valeurs correctes pour
ElementsToRead dépendent de la CPU.
DataType
Input
Représente le type de données à lire. La valeur DataType doit
avoir l'une des valeurs ImageDataTypeConstants.
pData
Input, Output
Pointeur désignant les données lues. Les valeurs correctes pour
Data dépendent du type de données. Vous devez affecter et
libérer cette zone de mémoire dans votre application.
Remarque
Si le paramètre DataType est S7_Bit, alors ByteIndex et BitIndex doivent tous deux être
paramétrés sur des indices corrects. En cas de succès, la méthode renvoie le bit donné
dans pData et son type de données Variant est BOOL.
Si le paramètre DataType est S7_Byte, S7_Word ou S7_DoubleWord, alors ByteIndex doit
être paramétré sur un indice correct (BitIndex n'est pas pris en compte). En cas de succès,
la méthode renvoie la valeur dans pData. Le type de données Variant est Byte, Integer ou
Long, selon le paramètre DataType.
S7ProSim V5.4
32
Manuel d'utilisation, 07/2011, A5E00992431-02
Méthodes
3.18 ReadOutputImage
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
E_FAIL
0x80004005 : Erreur non spécifiée
PS_E_BADBYTENDX
0x80040201 : Indice d'octet incorrect
PS_E_BADBYTECOUNT
0x80040202 : La taille du tableau de données est incorrecte
pour l'indice d'octet de début indiqué.
PS_E_READFAILED
0x80040203 : Echec de l'opération de lecture
PS_E_BADTYPE
0x80040206 : Type de données incorrect
PS_E_NOTALLREADSWORKED
0x8004020F : Toutes les opérations de lecture n'ont pas été
exécutées avec succès.
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
PS_E_POWEROFF
0x80040212 : S7-PLCSIM est hors tension.
Utilisation dans Visual Basic
Sub ReadOutputImage(StartIndex As Long, ElementsToRead As Long, DataType As
ImageDataTypeConstants, pData) As Long
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
33
Méthodes
3.19 ReadOutputPoint
3.19
ReadOutputPoint
STDMETHOD(CS7ProSim::ReadOutputPoint)( long ByteIndex,
long BitIndex,
PointDataTypeConstants DataType,
VARIANT* pData)
Description
Lit un bit (Boolean), un octet (Byte), un mot (Integer) ou un double mot (Long) spécifique
de la périphérie de sortie (zone PA).
Paramètres
Paramètres
Déclaration
Description
ByteIndex
Input
Représente la position d'octet de début à lire dans la périphérie.
Les valeurs correctes pour ByteIndex dépendent de la CPU.
BitIndex
Input
Représente la position de bit (en octets) à lire dans la périphérie.
Les valeurs autorisées sont comprises entre 0 et 7.
DataType
Input
L'une des constantes PointDataTypeConstants
pData
Input, Output
Pointeur désignant les données à lire. Les valeurs correctes pour
Data dépendent du type de données.
Remarques
Si le paramètre DataType est S7_Bit, alors ByteIndex et BitIndex doivent tous deux être
paramétrés sur des indices corrects. En cas de succès, la méthode renvoie le bit donné
dans pData et son type de données Variant est BOOL.
Si le paramètre DataType est S7_Byte, S7_Word ou S7_DoubleWord, alors ByteIndex doit
être paramétré sur un indice correct (BitIndex n'est pas pris en compte). En cas de succès,
la méthode renvoie la valeur dans pData. Le type de données Variant est Byte, Integer ou
Long, selon le paramètre DataType.
S7ProSim V5.4
34
Manuel d'utilisation, 07/2011, A5E00992431-02
Méthodes
3.19 ReadOutputPoint
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
E_FAIL
0x80004005 : Erreur non spécifiée
PS_E_BADBYTENDX
0x80040201 : Indice d'octet incorrect
PS_E_BADBYTECOUNT
0x80040202 : La taille du tableau de données est incorrecte pour
l'indice d'octet de début indiqué.
PS_E_READFAILED
0x80040203 : Echec de l'opération de lecture
PS_E_BADBITNDX
0x80040205 : Indice de bit incorrect
PS_E_BADTYPE
0x80040206 : Type de données incorrect
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
PS_E_POWEROFF
0x80040212 : S7-PLCSIM est hors tension.
Utilisation dans Visual Basic
Sub ReadOutputPoint(ByteIndex As Long, BitIndex As Long, DataType As
PointDataTypeConstants, pData) As Long
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
35
Méthodes
3.20 SavePLC
3.20
SavePLC
STDMETHOD(CS7ProSim::SavePLC)( BSTR FileName)
Description
Enregistre les données de l'API en cours de simulation dans un fichier.
Les données sauvegardées comprennent le programme, la configuration matérielle,
la position du commutateur à clé indiquée par la fenêtre CPU, le mode d'exécution du
programme (automatique ou cyclique), l'état des E/S, les valeurs des temporisations,
les adresses symboliques, ainsi que le paramétrage de l'alimentation (sous tension ou hors
tension).
Paramètres
Paramètres
Déclaration
Description
FileName
Input
Nom du fichier dans lequel enregistrer les données du système
cible simulé
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel de
la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
STG_E_CANTSAVE
0x80030103 : Enregistrement impossible
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
Utilisation dans Visual Basic
Sub SavePLC(FileName As String)
S7ProSim V5.4
36
Manuel d'utilisation, 07/2011, A5E00992431-02
Méthodes
3.21 SetScanMode
3.21
SetScanMode
STDMETHOD(CS7ProSim::SetScanMode)( ScanModeConstants newVal)
Description
Définit le mode de fonctionnement pour S7-PLCSIM.
Paramètres
Paramètres
Déclaration
Description
newVal
Input
Mode de fonctionnement à paramétrer pour S7-PLCSIM.
Le mode doit être l'une des constantes ScanModeConstants.
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
Utilisation dans Visual Basic
Sub SetScanMode(newVal As ScanModeConstants)
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
37
Méthodes
3.22 SetStartUpSwitch
3.22
SetStartUpSwitch
STDMETHOD(CS7ProSim::SetStartUpSwitch)( RestartSwitchPosition
postion)
Description
Définit le type de démarrage (redémarrage, démarrage à chaud ou démarrage à froid)
pour la mise en route de S7-PLCSIM.
Paramètres
Paramètres
Déclaration
Description
position
Input
Valeur de la position de mise en route de
S7-PLCSIM à paramétrer
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
Utilisation dans Visual Basic
Sub SetStartUpSwitch(postion As RestartSwitchPosition)
S7ProSim V5.4
38
Manuel d'utilisation, 07/2011, A5E00992431-02
Méthodes
3.23 SetState
3.23
SetState
STDMETHOD(CS7ProSim::SetState)( BSTR newVal)
Description
Définit la position en cours du commutateur à clé de S7-PLCSIM (RUN, RUN-P ou STOP).
Paramètres
Paramètres
Déclaration
Description
newVal
Input
Valeur de la position du commutateur à clé de S7-PLCSIM à
paramétrer ; les valeurs correctes sont : RUN, RUN_P,
STOP et MRES
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
E_FAIL
0x80004005 : Erreur non spécifiée
E_INVALID_STATE
0x00008002 : Etat incorrect
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
Utilisation dans Visual Basic
Sub SetState(newVal As String)
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
39
Méthodes
3.24 StartPLCSim
3.24
StartPLCSim
STDMETHOD(CS7ProSim::StartPLCSim)( BSTR plcFile)
Description
Lance la première instance de S7-PLCSIM avec le fichier de simulation API indiqué
(enregistré lors d'un appel précédent de SavePLC).
Paramètres
Paramètres
Déclaration
Description
plcFile
Input
Nom du fichier avec lequel lancer S7-PLCSIM
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
E_FAIL
0x80004005 : Erreur non spécifiée
Utilisation dans Visual Basic
Sub StartPLCSim(plcFile As String)
S7ProSim V5.4
40
Manuel d'utilisation, 07/2011, A5E00992431-02
Méthodes
3.25 StartPLCSimExt
3.25
StartPLCSimExt
STDMETHOD(StartPLCSimExt)(/*[in]*/ BSTR plcFile)
Description
Lance une instance de S7-PLCSIM avec le fichier de simulation API indiqué (enregistré lors
d'un appel précédent).
Paramètres
Paramètres
Déclaration
Description
plcFile [in]
Input
Nom du fichier avec lequel lancer S7-PLCSIM
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
E_FAIL
0x80004005 : Erreur non spécifiée
PS_E_MAXINSTANCE
0x80040214 : nombre maximal d'instances de
S7 PLCSIM ouvertes atteint
Utilisation dans Visual Basic
Sub StartPLCSimExt(plcFile As String)
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
41
Méthodes
3.26 WriteDataBlockValue
3.26
WriteDataBlockValue
STDMETHOD(CS7ProSim::WriteDataBlockValue)(
long BlockNumber,
long ByteIndex,
long BitIndex,
const VARIANT* pData)
Description
Ecrit un bit (Boolean), un octet (Byte), un mot (Integer) ou un double mot (Long) spécifique
dans la zone de mémoire d'un bloc de données.
Paramètres
Paramètres
Déclaration
Description
BlockNumber
Input
Représente le numéro du bloc de données à écrire. Les valeurs
correctes pour BlockNumber dépendent de la CPU.
ByteIndex
Input
Représente la position d'octet de début dans le bloc de données
à écrire. Les valeurs correctes pour ByteIndex dépendent
de la CPU.
BitIndex
Input
Représente la position de bit de début dans le bloc de données à
écrire en cas d'écriture d'une valeur booléenne (binaire).
Les valeurs correctes pour BitIndex vont de 0 à 7.
pData
Input
Pointeur désignant les données à écrire. Les valeurs correctes
pour Data dépendent du type de données. Vous devez affecter
et libérer cette zone de mémoire dans votre application.
Remarques
Si le paramètre DataType est S7_Bit, alors ByteIndex et BitIndex doivent tous deux être
paramétrés sur des indices corrects. En cas de succès, la méthode écrit le bit donné
(pData) dans le bloc de données avec le numéro BlockNumber.
Si le paramètre DataType est S7_Byte, S7_Word ou S7_DoubleWord, alors ByteIndex doit
être paramétré sur un indice correct (BitIndex n'est pas pris en compte). En cas de succès,
la méthode écrit la valeur de pData. Le type de données Variant est Byte, Integer ou Long,
selon le paramètre DataType.
S7ProSim V5.4
42
Manuel d'utilisation, 07/2011, A5E00992431-02
Méthodes
3.26 WriteDataBlockValue
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
E_FAIL
0x80004005 : Erreur non spécifiée
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
PS_E_POWEROFF
0x80040212 : S7-PLCSIM est hors tension.
PS_E_BADTYPE
0x80040206 : Type de données incorrect
PS_E_BADBYTENDX
0x80040201 : Indice d'octet incorrect
PS_E_BADBYTECOUNT
0x80040202 : La taille du tableau de données est incorrecte
pour l'indice d'octet de début indiqué.
PS_E_WRITEFAILED
0x80040204 : Echec de l'opération d'écriture
Utilisation dans Visual Basic
Sub WriteDataBlockValue(BlockNum As Long, ByteIndex As Long, BitIndex As Long, pData)
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
43
Méthodes
3.27 WriteFlagValue
3.27
WriteFlagValue
STDMETHOD(CS7ProSim::WriteFlagValue)( long ByteIndex,
long BitIndex,
const VARIANT* pData)
Description
Ecrit un bit (Boolean), un octet (Byte), un mot (Integer) ou un double mot (Long)
spécifique dans la zone de mémoire des mémentos.
Paramètres
Paramètres
Déclaration
Description
ByteIndex
Input
Représente la position d'octet de début dans la zone de mémoire
des mémentos à écrire. Les valeurs correctes pour ByteIndex
dépendent de la CPU.
BitIndex
Input
Représente la position de bit de début dans la zone de mémoire
des mémentos à écrire en cas d'écriture d'une valeur booléenne
(binaire). Les valeurs correctes pour BitIndex vont de 0 à 7.
pData
Input
Pointeur désignant les données à écrire. Les valeurs correctes
pour Data dépendent du type de données. Vous devez affecter
et libérer cette zone de mémoire dans votre application.
Remarques
Si le paramètre DataType est S7_Bit, alors ByteIndex et BitIndex doivent tous deux être
paramétrés sur des indices corrects. En cas de succès, la méthode écrit le bit donné (pData)
dans le bloc de données avec le numéro BlockNumber.
Si le paramètre DataType est S7_Byte, S7_Word ou S7_DoubleWord, alors ByteIndex doit
être paramétré sur un indice correct (BitIndex n'est pas pris en compte). En cas de succès,
la méthode écrit la valeur de pData. Le type de données Variant est Byte, Integer ou Long,
selon le paramètre DataType.
S7ProSim V5.4
44
Manuel d'utilisation, 07/2011, A5E00992431-02
Méthodes
3.27 WriteFlagValue
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
E_FAIL
0x80004005 : Erreur non spécifiée
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
PS_E_POWEROFF
0x80040212 : S7-PLCSIM est hors tension.
PS_E_BADTYPE
0x80040206 : Type de données incorrect
PS_E_BADBYTENDX
0x80040201 : Indice d'octet incorrect
PS_E_BADBYTECOUNT
0x80040202 : La taille du tableau de données est incorrecte
pour l'indice d'octet de début indiqué.
PS_E_WRITEFAILED
0x80040204 : Echec de l'opération d'écriture
Utilisation dans Visual Basic
Sub WriteFlagValue(ByteIndex As Long, BitIndex As Long, pData)
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
45
Méthodes
3.28 WriteInputImage
3.28
WriteInputImage
STDMETHOD(CS7ProSim::WriteInputImage)( long StartIndex, const VARIANT* pData)
Description
Ecrit des éléments dans la zone de périphérie des entrées (zone de mémoire PE) de
S7-PLCSIM, en commençant à la position StartIndex des données désignées par pData.
Paramètres
Paramètres
Déclaration
Description
StartIndex
Input
Représente la position d'octet de début à écrire dans la zone de
périphérie des entrées. Les valeurs correctes pour StartIndex
dépendent de la CPU.
pData
Input
Pointeur désignant les données à écrire par S7-PLCSIM.
Les valeurs correctes pour les données dépendent de la CPU.
Vous devez affecter et libérer cette zone de mémoire
dans votre application.
Remarques
Le type des éléments à écrire est déterminé par le type des éléments dans pData.
Tous les éléments doivent avoir le même type de données. Un tableau "Array of Byte" écrit
des octets, un tableau "Array of Integer" écrit des mots et un tableau "Array of Long" écrit
des doubles mots. Les valeurs écrites sont des valeurs brutes que la méthode n'interprète ni
ne convertit en aucune façon. Le nombre d'éléments écrits est déterminé par la taille du
tableau désigné par pData.
S7ProSim V5.4
46
Manuel d'utilisation, 07/2011, A5E00992431-02
Méthodes
3.28 WriteInputImage
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
E_FAIL
0x80004005 : Erreur non spécifiée
PS_E_BADBYTENDX
0x80040201 : Indice d'octet incorrect
PS_E_BADBYTECOUNT
0x80040202 : La taille du tableau de données est
incorrecte pour l'indice d'octet de début indiqué.
PS_E_WRITEFAILED
0x80040204 : Echec de l'opération d'écriture
PS_E_BADTYPE
0x80040206 : Type de données incorrect
PS_E_NOTALLWRITESWORKED
0x80040210 : Toutes les opérations d'écriture n'ont
pas été exécutées avec succès.
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à
S7-PLCSIM.
PS_E_POWEROFF
0x80040212 : S7-PLCSIM est hors tension.
Utilisation dans Visual Basic
Sub WriteInputImage(StartIndex As Long, Data) As Long
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
47
Méthodes
3.29 WriteInputPoint
3.29
WriteInputPoint
STDMETHOD(CS7ProSim::WriteInputPoint)( long ByteIndex,
long BitIndex,
const VARIANT* pData)
Description
Ecrit un bit (Boolean), un octet (Byte), un mot (Integer) ou un double mot (Long) spécifique
du paramètre Data (de type Variant) dans zone de périphérie des entrées (zone PE).
Paramètres
Paramètres
Déclaration
Description
ByteIndex
Input
Représente la position d'octet de début à écrire dans la zone de
périphérie des entrées. Les valeurs correctes pour ByteIndex
dépendent de la CPU.
BitIndex
Input
Représente la position de bit (en octets) à écrire dans la zone de
périphérie. Les valeurs autorisées sont comprises entre 0 et 7.
pData
Input
Pointeur désignant les données à écrire. Les valeurs correctes
pour Data dépendent du type de données.
Remarques
Si Boolean est indiqué comme type de données, alors ByteIndex et BitIndex doivent tous
deux être paramétrés sur des indices corrects. En cas de succès, la méthode écrit
le bit spécifié dans pData.
Si Byte, Integer ou Long sont indiqués comme type de données, alors ByteIndex doit être
paramétré à un indice correct (BitIndex n'est pas pris en compte). En cas de succès,
la méthode écrit les éléments dans pData.
S7ProSim V5.4
48
Manuel d'utilisation, 07/2011, A5E00992431-02
Méthodes
3.29 WriteInputPoint
Traitement des erreurs
Les erreurs sont signalées dans l'événement ConnectionError, et non dans l'appel
de la fonction.
Valeur en retour
Valeur
Signification
S_OK
0x00000000 : Réussite
E_FAIL
0x80004005 : Erreur non spécifiée
PS_E_BADBYTENDX
0x80040201 : Indice d'octet incorrect
PS_E_BADBYTECOUNT
0x80040202 : La taille du tableau de données est incorrecte
pour l'indice d'octet de début indiqué.
PS_E_WRITEFAILED
0x80040204 : Echec de l'opération d'écriture
PS_E_BADBITNDX
0x80040205 : Indice de bit incorrect
PS_E_BADTYPE
0x80040206 : Type de données incorrect
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
PS_E_POWEROFF
0x80040212 : S7-PLCSIM est hors tension.
Utilisation dans Visual Basic
Sub WriteInputPoint(ByteIndex As Long, BitIndex As Long, Data) As Long
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
49
Méthodes
3.29 WriteInputPoint
S7ProSim V5.4
50
Manuel d'utilisation, 07/2011, A5E00992431-02
4
Evénements
Présentation
4.1
Evénement
Signification
ConnectionError (Page 51)
Généré lorsque la connexion au Control Engine ("S7-PLCSIM") est
impossible ou en cas d'erreur à l'appel de toute méthode S7ProSim.
PauseStateChanged
(Page 52)
Généré lorsqu'un changement d'état Pause/Poursuivre est détecté.
NewState est une chaîne représentant l'une des constantes
PauseStateConstants.
PLCSimStateChanged
(Page 52)
Généré lorsqu'un nouvel état du commutateur du système cible est
détecté. NewState est le nouvel état de fonctionnement :
"RUN", "RUN_P" ou "STOP".
ScanFinished (Page 52)
Généré lors de l'achèvement d'un cycle unique. ScanInfo fournit des
informations indexées sur le cycle.
ScanModeChanged
(Page 53)
Généré lorsqu'un changement de mode de fonctionnement est
détecté. NewState est une chaîne représentant l'une des constantes
ScanModeConstants.
ConnectionError
HRESULT ConnectionError(BSTR ControlEngine, long Error)
Description
Généré lorsque la connexion à l'AP simulé dans S7-PLCSIM est impossible ou en cas
d'erreur à l'appel de toute méthode S7ProSim.
Utilisation dans Visual Basic
Event ConnectionError(ControlEngine As String, Error As Long)
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
51
Evénements
4.2 PauseStateChanged
4.2
PauseStateChanged
HRESULT PauseStateChanged(BSTR NewState)
Description
Généré lorsqu'un changement d'état Pause/Poursuivre est détecté.
NewState est une chaîne représentant l'une des constantes PauseStateConstants.
Utilisation dans Visual Basic
Event PauseStateChanged(NewState As String)
4.3
PLCSimStateChanged
HRESULT PLCSimStateChanged(BSTR NewState)
Description
Généré lorsqu'un nouvel état du commutateur du système cible est détecté.
NewState est le nouvel état de fonctionnement : "RUN", "RUN_P" ou "STOP".
Utilisation dans Visual Basic
Event PLCSimStateChanged(NewState As String)
4.4
ScanFinished
HRESULT ScanFinished(VARIANT ScanInfo)
Description
Généré lors de l'achèvement d'un cycle unique. ScanInfo fournit des informations
indexées sur le cycle.
Utilisation dans Visual Basic
Event ScanFinished(ScanInfo)
S7ProSim V5.4
52
Manuel d'utilisation, 07/2011, A5E00992431-02
Evénements
4.5 ScanModeChanged
4.5
ScanModeChanged
HRESULT ScanModeChanged(BSTR NewState)
Description
Généré lorsqu'un changement de mode de fonctionnement est détecté.
NewState est une chaîne représentant l'une des constantes ScanModeConstants.
Utilisation dans Visual Basic
Event ScanModeChanged(NewState As String)
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
53
Evénements
4.5 ScanModeChanged
S7ProSim V5.4
54
Manuel d'utilisation, 07/2011, A5E00992431-02
5
Définitions de types
5.1
Définitions de types
Présentation des définitions de types
5.2
Type
Description
CPURunMode (Page 55)
Constantes pour l'état de traitement de l'état d'exécution
RUN de la CPU
ImageDataTypeConstants
(Page 56)
Constantes pour la méthode ReadOutputImage
PauseStateConstants (Page 56)
Constantes pour l'état Pause
PointDataTypeConstants (Page 57)
Constantes pour la méthode ReadOutputPoint
RestartSwitchPosition (Page 57)
Constantes pour la position du commutateur de mise en route
sur la face avant
ScanModeConstants (Page 58)
Constantes pour le mode de fonctionnement
tagPauseState (Page 58)
Constantes pour l'état Pause
Constantes ScanInfo (Page 59)
Constantes pour des informations sur le cycle
CPURunMode
enum CPURunMode { CONTINUOUS_SCAN, SINGLE_SCAN, SINGLE_STEP }
Description
Constantes pour l'état de traitement de l'état d'exécution RUN de la CPU
Eléments
CONTINUOUS_SCAN
SINGLE_SCAN
SINGLE_STEP
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
55
Définitions de types
5.3 ImageDataTypeConstants
5.3
ImageDataTypeConstants
enum {
S7Byte = 2,
S7Word = 3,
S7DoubleWord = 4
}
Description
Constantes pour la méthode ReadOutputImage
Eléments
S7Byte
S7DoubleWord
S7Word
5.4
PauseStateConstants
enum {
Running = 0,
Paused = 1,
Disabled = 2
}
Description
Constantes pour l'état Pause
Eléments
DISABLED
Paused
Running
S7ProSim V5.4
56
Manuel d'utilisation, 07/2011, A5E00992431-02
Définitions de types
5.5 PointDataTypeConstants
5.5
PointDataTypeConstants
enum {
S7_Bit = 1,
S7_Byte = 2,
S7_Word = 3,
S7_DoubleWord = 4
}
Description
Constantes pour la méthode ReadOutputPoint
Eléments
S7_Bit
S7_Byte
S7_DoubleWord
S7_Word
5.6
RestartSwitchPosition
enum {
WarmStart = 0,
HotStart = 1,
ColdStart = 2
}
Description
Constantes pour la position du commutateur de mise en route sur la face avant
Eléments
ColdStartRemise en route avec l'OB102
Remise en route avec l'OB101
WarmStartRemise en route avec l'OB100
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
57
Définitions de types
5.7 ScanModeConstants
5.7
ScanModeConstants
enum {
SingleScan = 0,
ContinuousScan = 1
}
Description
Constantes pour le mode de fonctionnement
Eléments
ContinuousScan
SingleScan
5.8
tagPauseState
enum tagPauseState { ENABLED_RUNNING, ENABLED_PAUSED,
DISABLED }
Description
Constantes pour l'état Pause
Eléments
DISABLED
ENABLED_PAUSED
ENABLED_RUNNING
S7ProSim V5.4
58
Manuel d'utilisation, 07/2011, A5E00992431-02
Définitions de types
5.5 Constantes ScanInfo
5.5
Constantes ScanInfo
ScanInfo
Le type de données Variant ScanInfo représente un tableau de doubles mots (Long).
Chaque double mot dans le tableau spécifie des informations sur le cycle comme défini
par les constantes ScanInfo.
Tableau 5- 1 Constantes Scan‐Info
5.6
Composants
Signification
Définition
NUM_OF_SCANINFO_ELEMENTS
nombre d'éléments dans le tableau
ScanInfo affiché.
5
EXECUTION_TIME_NDX
indice 0 : temps d'exécution en ms
0
MIN_CYCLE_TIME_NDX
indice 1 : plus petite valeur de temps
d'exécution en ms
1
LARGEST_CYCLE_TIME_NDX
indice 2 : plus grande valeur de temps
d'exécution en ms
2
AVERAGE_CYCLE_TIME_NDX
indice 3 : temps de cycle moyen en ms
3
IS_PLC_RUNNING_NDX
indice 4 : Mémentos : 1=le système cible
s'exécute ; 0=le système cible ne s'exécute
pas.
4
Codes d'erreur
Présentation des codes d'erreur
Code d'erreur
Signification
PS_E_BADBITNDX
0x80040205 : Indice de bit incorrect
PS_E_BADBYTECOUNT
0x80040202 : La taille du tableau de données est incorrecte
pour l'indice d'octet de début indiqué.
PS_E_BADBYTENDX
0x80040201 : Indice d'octet incorrect
PS_E_BADTYPE
0x80040206 : Type de données incorrect
PS_E_INVALIDCALLBACK
0x80040207 : Rappel incorrect
PS_E_INVALIDDISPATCH
0x80040208 : Distribution incorrecte
PS_E_INVALIDINPUT
0x80040213 : Entrée incorrecte
PS_E_INVALIDSCANTYPE
0x8004020B : Type d'exécution incorrect ; doit être l'une des
constantes ScanModeConstants
PS_E_MAXINSTANCE
0x80040214 : nombre maximal d'instances de S7-PLCSIM
ouvertes atteint
PS_E_MODENOTPOSSIBLE
0x8004020C : S7-PLCSIM n'a pas pu paramétrer le mode de
traitement de cycle indiqué.
PS_E_NOTALLREADSWORKED
0x8004020F : Toutes les opérations de lecture n'ont pas été
exécutées avec succès.
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
59
Définitions de types
5.6 Codes d'erreur
Code d'erreur
Signification
PS_E_NOTALLWRITESWORKED
0x80040210 : Toutes les opérations d'écriture n'ont pas été
exécutées avec succès.
PS_E_NOTCONNECTED
0x80040211 : S7ProSim n'est pas connecté à S7-PLCSIM.
PS_E_NOTIFICATION_EXIST
0x8004020D : S7ProSim est déjà enregistré pour la
notification
PS_E_NOTREGISTERED
0x80040209 : S7ProSim n'est pas enregistré pour des rappels
de S7-PLCSIM.
PS_E_NOTSINGLESCAN
0x8004020A : S7-PLCSIM n'est pas en mode "traitement de
programme cyclique".
PS_E_PLCNOTRUNNING
0x8004020E : S7-PLCSIM n'est pas en cours d'exécution.
PS_E_POWEROFF
0x80040212 : S7-PLCSIM est hors tension.
PS_E_READFAILED
0x80040203 : Echec de l'opération de lecture
PS_E_WRITEFAILED
0x80040204 : Echec de l'opération d'écriture
E_FAIL
0x80004005 : Erreur non spécifiée
E_INVALID_STATE
0x00008002 : Etat incorrect
S_OK
0x00000000 : Réussite
STG_E_CANTSAVE
0x80030103 : Enregistrement impossible
S7ProSim V5.4
60
Manuel d'utilisation, 07/2011, A5E00992431-02
Index
A
E
Ecriture
Entrée, 48
Mémento (M), 44
Mémoire image des sorties, 46
Valeurs de blocs de données (DB), 42
C
Enregistrement de fichiers .plc, 36
Chargement de fichiers fichier .plc enregistrés, 40, 41 Etat Pause
Chargement de la périphérie d'E/S au redémarrage, 26
Paramétrage, 16, 27
Codes d'erreur, 59
Renvoi, 22
ColdStart, 57
Evénement ConnectionError, 51
Paramétrage, 38
Evénement PauseStateChanged, 52
Constantes, 55
Evénement PLCSimStateChanged, 52
CPURunMode, 55
Evénement ScanFinished, 52
ImageDataTypeConstants, 56
Evénement ScanModeChanged, 53
PauseStateConstants, 56
Evénements
PointDataTypeConstants, 57
ConnectionError, 51
RestartSwitchPosition, 57
PauseStateChanged, 52
ScanModeConstants, 58
PLCSimStateChanged, 52
tagPauseState, 58
ScanFinished, 52
Constantes définies, 55
ScanModeChanged, 53
CPURunMode, 55
Exécution automatique du programme
ImageDataTypeConstants, 56
GetScanMode, 23
PauseStateConstants, 56
ScanModeConstants, 58
PointDataTypeConstants, 57
SetScanMode, 37
RestartSwitchPosition, 57
Exécution cyclique du programme
ScanModeConstants, 58
ExecuteNmsScan, 19
tagPauseState, 58
ExecuteNScans, 20
Constantes Scan‐Info, 59
ExecuteSingleScan, 21
CPURunMode, 55
GetScanMode, 23
ScanModeConstants, 58
SetScanMode, 37
D
EXECUTION_TIME_NDX, 59
Définitions de types, 55
CPURunMode, 55
G
ImageDataTypeConstants, 56
PauseStateConstants, 56
Gestionnaires d'événements, 8
PointDataTypeConstants, 57
RestartSwitchPosition, 57
ScanModeConstants, 58
H
tagPauseState, 58
HotStart, 57
Paramétrage, 26, 38
AVERAGE_CYCLE_TIME_NDX, 59
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
61
Index
I
ImageDataTypeConstants, 56
Introduction, 7
IS_PLC_RUNNING_NDX, 59
L
LARGEST_CYCLE_TIME_NDX, 59
Lecture
Mémento (M), 30
Mémoire image des sorties, 32
Sortie, 34
Valeurs de blocs de données (DB)T, 28
M
Mémento
Ecriture, 44
Lecture, 30
Méthode BeginScanNotify, 13
Méthode Connect, 14
Méthode ConnectExt, 15
Méthode Continue, 16
Méthode Disconnect, 17
Méthode EndScanNotify, 18
Méthode ExecuteNmsScan, 19
Méthode ExecuteNScans, 20
Méthode ExecuteSingleScan, 21
Méthode GetPauseState, 22
Méthode GetScanMode, 23
Méthode GetStartUpSwitch, 24
Méthode GetState, 25
Méthode HotStartWithSavedValues, 26
Méthode Pause, 27
Méthode ReadDataBlockValue, 28
Méthode ReadFlagValue, 30
Méthode ReadOutputImageT, 32
Méthode ReadOutputPoint, 34
Méthode SavePLC, 36
Méthode SetScanMode, 37
Méthode SetStartUpSwitch, 38
Méthode SetState, 39
Méthode StartPLCSim, 40
Méthode StartPLCSimExt, 41
Méthode WriteDataBlockValue, 42
Méthode WriteFlagValue, 44
Méthode WriteInputImage, 46
Méthode WriteInputPoint, 48
Méthodes
BeginScanNotify, 13
Connect, 14
ConnectExt, 15
Continue, 16
Disconnect, 17
EndScanNotify, 18
ExecuteNmsScan, 19
ExecuteNScans, 20
ExecuteSingleScan, 21
GetPauseState, 22
GetScanMode, 23
GetStartUpSwitch, 24
GetState, 25
HotStartWithSavedValues, 26
Pause, 27
ReadDataBlockValue, 28
ReadFlagValue, 30
ReadOutputImage, 32
ReadOutputPoint, 34
SavePLC, 36
SetScanMode, 37
SetStartUpSwitch, 38
SetState, 39
StartPLCSim, 40
StartPLCSimExt, 41
WriteDataBlockValue, 42
WriteFlagValue, 44
WriteInputImage, 46
WriteInputPoint, 48
Méthodes de traitement de programme
ExecuteNmsScan, 19
ExecuteNScans, 20
ExecuteSingleScan, 21
Méthodes S7ProSim Pro
ReadDataBlockValue, 28
ReadFlagValue, 30
WriteDataBlockValue, 42
WriteFlagValue, 44
MIN_CYCLE_TIME_NDX, 59
Mode de fonctionnement
Paramétrage, 37
Renvoi, 23
N
Notification de cycle, 13, 18
NUM_OF_SCANINFO_ELEMENTS, 59
S7ProSim V5.4
62
Manuel d'utilisation, 07/2011, A5E00992431-02
Index
O
V
Objet COM S7ProSim Siemens, ajout au projet, 7
Valeurs de blocs de données (DB)
Ecriture, 42
Lecture, 28
Valeurs en retour, 59
P
PauseStateConstants, 56
PLCSIM, démarrage, 40, 41
PointDataTypeConstants, 57
Position du commutateur à clé
Paramétrage, 39
Renvoi, 25
Position du commutateur de mise en route, 57
Paramétrage, 38
Renvoi, 24
Présentation, 7
Programmation d'une interface S7ProSim vers S7PLCSIM, 8
W
WarmStart, 57
Paramétrage, 38
R
Référence d'objet COM S7ProSim
Microsoft Visual Basic, 7
Microsoft Visual C#, 7
Microsoft Visual Studio C++, 7
Références, 7
Références de projet, 7
RestartSwitchPosition, 57
S
S7-PLCSIM, démarrage, 26, 40, 41
S7ProSim
Ajout à un projet VB, 7
Interface vers S7-PLCSIM, programmation, 8
Présentation, 7
ScanModeConstants, 58
T
tagPauseState, 58
Types d'énumération, 55
CPURunMode, 55
ImageDataTypeConstants, 56
PauseStateConstants, 56
PointDataTypeConstants, 57
RestartSwitchPosition, 57
ScanModeConstants, 58
tagPauseState, 58
S7ProSim V5.4
Manuel d'utilisation, 07/2011, A5E00992431-02
63
Index
S7ProSim V5.4
64
Manuel d'utilisation, 07/2011, A5E00992431-02

Documents pareils