IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Envoie de trame de lecture vers automate


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Inscrit en
    Juillet 2010
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 14
    Points : 3
    Points
    3
    Par défaut Envoie de trame de lecture vers automate
    Bonjour,

    je suis en stage de DUT 2A, et je cherche à créer sous Adobe dreamweaver 8, une page à partir de laquelle j'enverrai des requetes de lecture à un automate (TWIDO) sur le réseau locale Ethernet.
    Le problème est que je n'ai pas beaucoup de connaissance et je ne sais pas comment créer/écrire ma trame pour communiquer vers mon automate.

    Je dois aller chercher la valeur d'un mot dans l'API puis interpréter ma trame pour afficher l'information ensuite dans ma page dreamweaver.

    Je suis compréhensible?

    Merci pour vos réponses
    Florian

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Je dirais qu'il faut utiliser une socket pour envoyer ton instruction et ecouter la réponse.

  3. #3
    Candidat au Club
    Inscrit en
    Juillet 2010
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 14
    Points : 3
    Points
    3
    Par défaut
    c'est à dire...utiliser un socket consiste à quoi exactement? je dois créer une base de donnée préalablement et ensuite l'associer à mon automate?
    Le problème est déplacé à ce moment là, puisqu'il faut malgré tout réaliser ma trame en php pour aller communiquer avec mon automate sur le réseau...non?

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 388
    Points : 502
    Points
    502
    Par défaut
    Plus de détails sur les sockets en PHP ici.

  5. #5
    Candidat au Club
    Inscrit en
    Juillet 2010
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 14
    Points : 3
    Points
    3
    Par défaut
    OK. Merci.
    Donc en survolant l'article, si je comprend bien, pour mon projet je vais devoir utiliser une socket qui sert de "passerelle" entre 2 équipement sur un réseau ethernet.
    Etant donné que je suis en réseau local, je dois installer sur mon PC un serveur qui fera cette passerelle (ex : Apache), donc mon PC me servira de serveur mais et aussi de client (via mon appli sous dreamweaver).

    Par contre je n'ai pas un très bon niveau en PHP voire quasi nul, donc à réaliser cela va être assez long je pense..

    Est il possible d'avoir un exemple (juste une ligne) de comment on crée une trame en PHP. Ex : je veux récupérer/lire le mot TOTO dans l'équipement X, puis je veux écrire le mot TOTO sur mon PC (appli Dreamweaver).

    Merci

    De plus est-ce vraiment possible , car mon automate lui n'envoie rien après une reception et ne reçoit rien d'ailleurs, il se fait juste lire...

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    je veux récupérer/lire le mot TOTO dans l'équipement X
    Pourrais-tu être plus précis ?
    Qu'est ce que X, où est stocké l'information "TOTO" et comment X fourni "TOTO" ?

  7. #7
    Candidat au Club
    Inscrit en
    Juillet 2010
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 14
    Points : 3
    Points
    3
    Par défaut
    X : mon automate TWIDO
    TOTO : mot dans l'automate, c'est à dire une variable interne (ce qu'il faut lire)

    TOTO est un mot deja programmé dans l'automate préalablement.

    Petite remise au point :

    mon programme PHP devra se composer , dans les grandes lignes, comme suit :

    >Si appuie sur Bouton(ex : Etat pompe n°1);
    >Alors envoie demande de lecture d'un mot(ex : M100) de l'automate d'adresse IP X.X.X.X;
    >Si retour lecture OK
    >Alors on affiche la valeur du mot

    NB : communication par Ethernet TCP/IP.

  8. #8
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Alors envoie demande de lecture d'un mot(ex : M100) de l'automate d'adresse IP X.X.X.X;
    Est-ce que tu sais déjà ce que tu dois envoyer ?
    si non, il faut commencer par cela et c'est un problème en relation avec ton automate, pas avec PHP.

  9. #9
    Candidat au Club
    Inscrit en
    Juillet 2010
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 14
    Points : 3
    Points
    3
    Par défaut
    Non je n'envoie rien dans l'automate je souhaite juste récupérer une information dans l'automate (comme l'état d'une entrée ou d'une sortie ou comme moi la valeur d'un mot).

    Je fais une simple lecture...et ensuite je traite l'information lue pour l'afficher.

  10. #10
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    L'information ne va pas venir d'elle même depuis l'automate à travers le réseau : il y a forcemment une question à lui envoyer.

  11. #11
    Candidat au Club
    Inscrit en
    Juillet 2010
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 14
    Points : 3
    Points
    3
    Par défaut
    A partir du moment où on fait une demande de lecture dans l'automate (ex : "quelle est l'état de l'entrée TOR 001?"), celui-ci va me répondre.

    Dans ma trame il faudra bien dire qu'il s'agit d'une demande lecture, car contrairement à l'exemple sur l'utilisation des sockets, l'automate ne fonctionne pas comme dans un chat. Dans un chat ce sont des demande d'écriture et non de lecture.

    Mon problème : comment rédiger cette trame de demande de lecture?

    NB: Une fois la demande de lecture envoyé à l'automate, celui-ci renvoie automatiquement une réponse...il me suffit de récupérer cette trame sur le réseau et d'en faire l'affichage.

  12. #12
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Je ne vois pas bien ce que tu appelles une trame de lecture et une trame d'ecriture mais un echange tcp/ip fonctionne au contrairement totalement comme un chat :
    - Bonjour Automate
    - Bonjour X
    - Quelle est la valeur ?
    - La valeur est TOTO

    On en revient de toute facon au meme point : tu dois determiner ce que tu dois envoyer a l'automate pour qu'il fournisse la reponse.

  13. #13
    Modérateur
    Avatar de Vil'Coyote
    Homme Profil pro
    Développeur adélia & Web
    Inscrit en
    Février 2008
    Messages
    4 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur adélia & Web
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 4 583
    Points : 7 503
    Points
    7 503
    Par défaut
    en fait je pense, qu'il faudrait utiliser le socket pour envoyer la trame de demande et une fois émise le mettre en écoute.

  14. #14
    Candidat au Club
    Inscrit en
    Juillet 2010
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 14
    Points : 3
    Points
    3
    Par défaut
    En effet c'est ce que je cherche à faire.
    Q : comment je peux programmer cela en PHP? :

    1ere étape : on "click" sur un bouton (ex : etat pompe n°1).

    2eme étape : envoie d'une trame de lecture à l'automate d'@ IP X.X.X.X du mot d'@ %MW100 (qui est dans l'automate avec une certaine valeure).

    3eme étape : par une fonction intégré/géré par l'automate, celui-ci va envoyer une trame de réponse à la trame de lecture effectué en étape 2.

    4eme étape : on prend la valeur récupéré du mot d'@ %MW100 envoyé par l'automate, et on l'affiche.

    NB: réseau Ethernet, trame en protocole modbus TCP-IP.

    (Merci de vos réponses)

  15. #15
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    1 - ca relève de javascript/html pas de PHP ; mais ne mélange pas tout : voit déjà l'aspect technique et tu pourras t'interesser ensuite à l'interface.

    2,3 et 4 - il faut utiliser les sockets PHP http://php.net/manual/fr/function.fsockopen.php
    Pour le contenu de la trame a envoyer, ca relève de ton automate, pas de PHP.

  16. #16
    Candidat au Club
    Inscrit en
    Juillet 2010
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 14
    Points : 3
    Points
    3
    Par défaut
    Bonjour,
    j'ai le code qui existe en VB et qui fonctionne à travers excel, et pour ce qui est des trame modbus, l'automate génére tout seul une trame de réponse. il n'y a rien à configurer dans l'automate tout se passe sur mon PC. Il faut créer un tableau qui correspond à ma trame, dans lequel je dois mettre mon "code fonction" (ex : demande de lecture), etc... bref une trame modbus
    Par contre en quoi cela relève plus de java que de PHP?

  17. #17
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    J'ai dit que cela relevait de l'automate, pas qu'il fallait configurer l'automate : PHP ne fait que le postier, il ne s'occupe pas de ce que contient l'enveloppe.

    Tout ce qui est bouton et interface, c'est du HTML/Javascript.

  18. #18
    Candidat au Club
    Inscrit en
    Juillet 2010
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 14
    Points : 3
    Points
    3
    Par défaut
    Pour l'interface cela n'est pas un problème, je crée ma page grâce à dreamweaver 8 (page HTML), donc le design est réalisé, je peux choisir le type de codage => PHP.
    Par contre je ne comprend pas du tout ce que tu entend par "cela relève de l'automate" , puisque c'est bien depuis le PC que commence la com et se termine...il suffit d'envoyé une trame sous forme de "tableau" en fait dans l'automate, avec les bonne information dedans...et mon automate comprendra se que je lui raconte

    ET merci de tes réponses

  19. #19
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Oui c'est bien ce que je dis mais PHP ne s'occupe pas de ce qu'il transmet, c'est toi qui doit écrire dans le langage de l'automate.

  20. #20
    Candidat au Club
    Inscrit en
    Juillet 2010
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 14
    Points : 3
    Points
    3
    Par défaut
    Est-ce que tu connais les fonctionnements d'un automate sabotage, parce que j'ai besoin d'aide non pas sur comment la com va se dérouler, ça je le sais puisque j'ai le code en VB et ça fonctionne...le soucis est que je suis débutant en php...et j'ai besoin d'aide sur ce point, et un minimum de connaissance sur le modbus TCP-IP est nécessaire pour comprendre ce que je souhaite réaliser

    Cdlt

Discussions similaires

  1. Lecture et envoie de trames ethernet en python
    Par olivierguzzi dans le forum Réseau/Web
    Réponses: 0
    Dernier message: 19/05/2013, 17h24
  2. Envoi de trame vers une interface
    Par boubajazz dans le forum Linux
    Réponses: 4
    Dernier message: 05/06/2007, 11h23
  3. Réponses: 3
    Dernier message: 28/06/2006, 17h13
  4. Envoi d'info d'Access vers Word avec des signets
    Par Laetis dans le forum Access
    Réponses: 1
    Dernier message: 03/05/2006, 20h04
  5. Problème de récéption ou d'envoi de Trame UDP
    Par sniperseb dans le forum Entrée/Sortie
    Réponses: 5
    Dernier message: 11/04/2006, 00h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo