Voir les contributions

Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.


Messages - TOTOarduino

Pages: [1]
1
Bonjour,

Effectivement, la balance ne s'avère pas très pratique à intégrer, dommage car c'était très précis pour les faibles grammages.
En tout cas cela a marché. Et merci pour le éléments de code (pardon d'avoir surchargé le fil de la discussion)
J'ai juste du résoudre des problèmes de connexions sur la carte méga 2560 car toutes E/S digitales ne se valent pas.

En tout cas merci pour tous ces conseils. Ils me sont précieux.

Cordialement.

2
J'ai essayé ça mais marche pas  :-\

 
#define RX 52 // affectation des broches
#define TX 50

#include <SoftwareSerial.h> // appel de la bibliothèque
SoftwareSerial RS232(RX, TX); // création de l'objet RS232

String mesure ;

void setup()
{
Serial.begin(9600); // initialisation du moniteur série
RS232.begin(9600); // initialisation de la liaison série RS232
}

void loop()
{
  if (RS232.available())
    {
    char caractere = RS232.read();
    if ((caractere >= '0' && caractere <= '9') || caractere == '.')
    {
      /* Chiffre de la mesure */
      mesure += caractere;
    }
    else {
      /* Si mesure n'est pas vide alors une valeur a été récupérée */
      if (mesure.length() > 0) {
        float valeurMesure = mesure.toFloat();
        /* faire ce qu'on a à faire de la valeur en flottant */
       Serial.println(valeurMesure,3);
         mesure = "";
     
       
      }
    }
  }
}

3
Bonjour merci pour cette réponse mais quand je branche le convertisseur , il ne ressort rien alors qu'en direct cela marche au poil.

Quelle bibliothèque utiliser ou quelle partie du code modifier ?
 

#include  <SoftwareSerial.h>
String mesure;

SoftwareSerial mySerial(50, 52,true); // RX, TX
void setup()
{
  Serial.begin(9600);
   while (!Serial) {
    ; // wait for serial port to connect. Needed for native USB port only
  }

  mySerial.begin(9600);
}

void loop()
{
  if (mySerial.available()) {
    char caractere = mySerial.read();
    if ((caractere >= '0' && caractere <= '9') || caractere == '.')
    {
      /* Chiffre de la mesure */
      mesure += caractere;
    }
    else {
      /* Si mesure n'est pas vide alors une valeur a été récupérée */
      if (mesure.length() > 0) {
        float valeurMesure = mesure.toFloat();
        /* faire ce qu'on a à faire de la valeur en flottant */
       Serial.println(valeurMesure,3);
         mesure = "";
      if (valeurMesure > 10)
       {
        Serial.println("Ca marche !!!!!!");
        delay(1000);
       }
        /* remet mesure à la chaine vide */
       
      }
    }
  }
}

4
Bonjour,

Le projet est pas encore très abouti, il faudra attendre un peu pour les photos du train de marchandise.

Sans vouloir abuser j'ai une question. Je pensais que les sorties RS232 avaient des niveaux trop élevés pour les arduino.
En fait j'ai acheter un module max3232 mais impossible de récupérer les données du port série dessus.
Est ce que quelqu'un sait pourquoi.

Je ne trouve pas d'exemple de code qui marche avec un tel convertisseur RS232 TTL.

Cordialement



5
Merci

Pour peser un vielle balance mettler.
J'essaie le code et je réfléchis dessus. Et vous fais un retour.

Le code marche nickel c'est parfait merci beaucoup !
Je vais pouvoir continuer

Cordialement

6
Bonjour,

Débutant sur arduino j'ai beaucoup à apprendre.

Je m'adresse humblement à vous car je débute sur Arduino et je souhaite peser un train afin de l'aiguiller vers une voie ou l'autre.
Je récupère la valeur de la balance :"        56.2300 g S       "
Pour comparer la valeur de la balance et faire un test je ne suis intéressé que par 56.23 et pas les espaces ni l'unité ni le S ni les espaces qui suivent"
J'ai essayé substring.  toFloat. mais en vain
Il semblerait que je sois obligé de décomposer toute la chaine de caractère et reconstruire la partie qui m'intéresse.
Est ce que quelqu'un a déjà réussi à extraire un float d'une chaine de caractère ?
Faut il utiliser plutôt string ou char ?
Merci si vous avez des exemples
Cordialement :D :D :D


#include  <SoftwareSerial.h>
float toto;
String Txt_Toto ;
char data[10] ;
// string data ;

SoftwareSerial mySerial(10, 11,true); // RX, TX

void setup()
{
  Serial.begin(9600);
   while (!Serial) {
   
  }

  mySerial.begin(9600);
}

void loop()
{
  if (mySerial.available())
  {

   data[1] = mySerial.read();
   //Serial.write(mySerial.read());
 
 
  }
}

Pages: [1]