Beruflich Dokumente
Kultur Dokumente
COMMUNICATIONS EN SUPERVISION
1
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
Besoins en communication
Pierre BONNET
2012-2013
2
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
3
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
Besoins en communication Un systme SCADA doit pouvoir communiquer avec des ressources externes :
- liaison matrielle locale (liaison srie, carte spcialise ASI, CAN...) vers une ressource spcialise (E/S distantes, automate...) - liaison matrielle de type standard (Ethernet) vers un matriel distant (E/S , automate...) [ventuellement modifie (Profinet)] - liaison radio (Bluetooth, ZigBee, WiFi) vers des E/S spcialises - liaison avec un autre module logiciel local (IHM, tableur, base de donne, serveur Web... ) - liaison avec un autre module logiciel distant (serveur de donnes, serveur SQL autre superviseur, logiciel MES...)
4
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
SCADA SCADA
Interface matrielle
Interface lectrique
Carte/module d'interface/communication
Le module de communication peut tre: - intgr matriellement la structure SCADA (carte de couplage spcialise selon le bus de terrain choisi ) - spar (liaison intermdiaire vers une passerelle de bus )
5
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
SCADA SCADA
Interface logicielle
Interface logicielle
Serveur Serveur
Bus logiciel
Interface logicielle
IHM IHM
SCADA SCADA
Interface logicielle
Serveur Serveur
6
Microsoft a introduit le concept OLE avec la possibilit d'excution des fonctions par le client. C'est ce principe qui est employ dans les serveurs OPC.
7
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
Ressource
appel Tche principale suspendue retour criture lecture
8
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
appel vnementiel Suspension de la tche principale Reprise de la tche principale Traitement vnementiel
lecture
9
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
appel serveur retour appel Reprise de la tche appel vnementiel Traitement vnementiel criture
lecture
Autre client
11
12
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
Je programme les interfaces de mon PC sous Windows : B. Kainka & H-J Berndt - Publitronic/Elektor - 1999 Cet ouvrage s'intresse surtout aux aspects matriels en vue de faire des mesures directes sur PC. Devient obsolte pour la programmation qui ne respecte pas les principes de protection de Windows XP .
13
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
Communication srie
14
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
15
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
Superviseur Superviseur
Coupleur UART
Coupleur UART
Priphrique Priphrique
la base de la transmission est l'octet (8 bits + contrle de parit ) avec dlimiteurs (bit de start, bit de stop)
une trame est constitue d'un ensemble d'octet avec dlimiteurs (dbut de trame , crc, fin de trame )
le couplage peut tre synchrone [attente de la rponse par le client avec blocage] ou asynchrone [vnement signalant l'arrive de la rponse]
16
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
- le start et le stop permettent au matriel de reconstruire la donne - le bit de parit permet de vrifier l'intgrit du message - la vitesse d'change est dfinie en bits/sec ou bauds
Cette liaison est encore trs largement utilise sous forme de port com virtuel avec Bluetooth ou USB , en particulier sur les automates .
17
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
ESCLAVES MAITRE
18
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
Superviseur Superviseur
Liaison srie
Priphrique Priphrique
nEsclave
trame de requte
nEsclave
trame de rponse
le couplage peut tre synchrone [attente de la rponse par le client avec blocage] ou
asynchrone [vnement signalant l'arrive de la rponse]
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
19
20
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
21
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
22
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
23
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
Settings : Fixe les paramtres de la connexion (vitesse, parit, nb bits, bits de stop) MSComm1.Settings = "9600,N,8,1" PortOpen: permet d'ouvrir ou de fermer la liaison MSComm1.PortOpen = True 'ouvre la liaison (prise de contrle par l'application)
24
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
Input : permet de lire les donnes contenues dans le buffer d'entre Dim Tampon as String Tampon = Tampon + MSComm1.Input Exemple : lecture jusqu' rception de fin de trame CRLF Do DoEvents 'indispensable pour redonner la "main" au gestionnaire d'vnements Tampon$ = Tampon$ & MSComm1.Input Loop Until InStr(Tampon$, vbCrLf)
25
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
Sub Mon_acces ... ... On Err GoTo ... ... Exit Sub Fin_si_Err:
'mes dclarations, mon code sans erreur Fin_si_err 'section avec gnration d'erreur 'sortie de la fonction sans erreur 'sortie si erreur
26
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
Case comEvReceive ' rception de caractres Case comEvSend ' fin d'mission d'un caractre End Select End Sub
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
27
Communication UDP/TCP
Communication Ethernet
29
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
api/dcs
superviseur
Pseudo-entte IPv4
31
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
La source envoie ses donnes qui sont mises dans le rseau Ethernet (diffusion possible) La destination reoit [ventuellement] le datagramme et rcupre les donnes Avantages et inconvnients UDP utilise un modle de transmission simple sans dialogues de hand-shaking pour garantir
la fiabilit, l'ordonnancement des paquets ou l'intgrit des donnes. De ce fait, UDP fournit un service peu fiable dans lequel les datagrammes peuvent arriver en dsordre, dupliqus ou absents sans avertissement. UDP suppose que la recherche des erreurs et leur correction se feront au niveau applicatif si ncessaire.
UDP est un moyen d'change rapide de donnes et faible cot logiciel. Il est bien adapt
pour des machines embarques (automates par exemple)
32
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
33
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
'Paramtrage du Socket MySocket.Protocol = sckUDPProtocol IP_machine_A = MySocket.LocalIP MySocket.LocalPort = 0 MySocket.RemoteHost = "172.19.7.248" MySocket.RemotePort = "5001" 'Emission d'un message sur le rseau MySocket.SendData "Message transmettre B sur port 5001"
'Pas d'acquittement en mode UDP!!! 34
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
'mise en coute du socket sur le port 5000 MySocket.Bind "5000", IP_Machine_A 'Procdure vnementielle appele par le socket ' en cas de rception d'une trame UDP sur le port 5000 Sub MySocket_DataArrival(ByVal bytesTotal As Long) MySocket.GetData paquet_recu UserForm1.TextBox_Receive.Caption = paquet_recu & vbCrLf UserForm1.TextBox_Emetteur.Caption = MySocket.RemoteHostIP End Sub
35
Supervision Industrielle Master Smart & GSI - Pierre Bonnet
Communication TCP: mme socket , mode programmation plus avanc avec vrification de la connexion
sources d'info: http://www.spi.ens.fr/beig/systeme/sockets.html Linux Magazine n141 Septembre 2011 pages 44-58
36
Supervision Industrielle Master Smart & GSI - Pierre Bonnet