begin process at 2010 02 10 14:22:34
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Java

 > 

Archives

 > 

Au secours

 > 

communication avec automate


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

communication avec automate

jeudi 13 avril 2006 à 20:55:08 | communication avec automate

bilel60

Bonjour

Je suis debutant en java, et j'ai un gros probleme, je dois communique avec un automate via un port com, mais qd je lui envnoi une commande celjui-ci ne me repond pas alors je ne c pas s'il a bien recu la commande.
Je vous met mon source pour savoir si il y a un probleme avec lui:

je veux afficher la reponse de l'automate, mais le probleme c qu'il n'y a rien du tout meme pas un mesage d'erreur

import javax.comm.*;
import com.sun.comm.Win32Driver;

import java.io.*;
import java.util.*;

/*
Cette classe permet de tester les ports séries disponibles
en les listant puis en créant un stream d'entrée et de sortie
*/
public class Comm
{
 CommPortIdentifier portId;
 BufferedReader in;
 BufferedWriter out;
 //PrintWriter out;
 //InputStream in;
 OutputStream outStream;
 SerialPort serialPort;

/*
Constructeur de la classe Comm qui prend en paramètre le port série à utiliser.
Dans un premier temps on liste les ports disponibles sur le pc
*/
  public Comm (String com)
  {
  //System.out.println("listage des ports série disponibles:");
  listePortsDispo();
   
   //initialisation du driver
   Win32Driver w32Driver = new Win32Driver();
   w32Driver.initialize();

   
  try
  {
   //ouverture du port série:
   portId=CommPortIdentifier.getPortIdentifier(com);
   serialPort=(SerialPort)portId.open("UtilisationFlux",30000);
  
  
   //on sélectionne tous les paramètres de la connexion série:
   serialPort.setSerialPortParams(9600,SerialPort.DATABITS_8,
   SerialPort.STOPBITS_1,SerialPort.PARITY_NONE);
   System.out.println("Ouverture du port "+com);
   
   //pour lire et écrire avec des streams:
   in=new BufferedReader(
     new InputStreamReader(serialPort.getInputStream()));
   outStream=serialPort.getOutputStream();
   out=new BufferedWriter(
     new OutputStreamWriter(serialPort.getOutputStream()));

  }
  catch (Exception e)
  {
   e.printStackTrace();
  }
 }//fin constructeur

  /**
   * Méthode de communication.
   */
  public String communique() {
   String compteur = null;
   String commande=null;
   try {
    
    commande="$01S0A0002";
    int longueur=commande.length();
    
    //demande de lecture des compteurs
    out.write(commande, 0 ,longueur);
    out.flush();
    
    
    //lecture des compteurs
    compteur =  in.readLine();
    
    
   } catch (IOException e) {
    
    e.printStackTrace();
   }
   return compteur;
  }//fin comunique

  
 public void listePortsDispo()
 {
  System.err.println("recherche...");
  Enumeration portList=CommPortIdentifier.getPortIdentifiers();
  if (portList==null)
   {
   System.err.println("Aucun port de communication détecté");
   return;
   }
  while (portList.hasMoreElements())
  {
   portId=(CommPortIdentifier)portList.nextElement();
   System.out.println("* "+portId.getName());
  } // while
 } //fin de la methode listePortsDispo()**/

 /**
  * Méthode de fermeture des flux et port.
  */
 public void close(){
  try {
   in.close();
   outStream.close();
  } catch (IOException e) {
   e.printStackTrace();
  }
  serialPort.close();
 }// fin close

public static void main(String args[])
 {
  Comm test=new Comm ("COM1");
  
  String reponse = test.communique();
  
  System.out.println(reponse);
  
  test.close();
}
}//fin de la classe Comm

Merci d'avance



Cette discussion est classée dans : port, commande, out, serialport, comm


Répondre à ce message

Sujets en rapport avec ce message

installation de javacomm #HELP PLEASE# [ par ff79 ] salut j'ai telechargé l'api javacom.Mais y a rien qui marche!.... j'ai pourtant suivi les consignes de sun: Copy win32com.dll to your \bin directory. installation de javacomm #HELP PLEASE# [ par ff79 ] salut j'ai telechargé l'api javacom.Mais y a rien qui marche!.... j'ai pourtant suivi les consignes de sun: Copy win32com.dll to your \bin directory. installation de javacomm #HELP PLEASE# [ par ff79 ] salut j'ai telechargé l'api javacom.Mais y a rien qui marche!.... j'ai pourtant suivi les consignes de sun: Copy win32com.dll to your \bin directory. Programmation avec l'api javacomm [ par Gwillherm ] Bonjour, je suis en ce moment en train de tester l'API javacomm en vu de l'utiliser dans un futur projet perso.Dans mon code de test je suis tombé sur Test ecriture / Lecture en Java : Port Serie RS232 [ par lionkid007 ] Bonjour, Je dois faire un programme permettant de communiquer sur le port serie RS232 en Java. Je dois donc pouvoir lire et ecrire. J'ai bien regardé nombre de connecter ... [ par eragon77 ] bonjour à tous alors voila mon probléme je n'arrive pas a utiliser ce code et surtout dans quelle extension l'enregistrer : import java.io.*;import Lecture sur Port serie [ par gethy ] Salut a tous.J'ai fait des recherche sur ce theme et je n'ai pas trouvé mon probleme evoqué quelque part.Alors voila.J'ai un flasheur de code a barre Récupérer valeur d'un Thread dans des JTextField [ par nowicki ] Bonjour.Depuis quelques semaines je travaille sur un projet et je n'arrive pas à récupérer mes valeurs provenant d'un Thread dans des JTextField.Je vo Comment lire sur un port série [ par barbie45 ] Salut, j'ai un grand problème das mon pfe , en faite je ne puisse pas recevoir ce que j'ai envoyer par hypeterminal à l'autre PC ou il y a mon code j Pb d'erreur avec ma classe [ par mimi1255 ] Bonjour, j'ai un problème au niveau de mon code, voici mon erreur:D:\projet\Integration\src\Test\GestionLecteur.java:9: Test.GestionLecteur is not abs


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,406 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales