LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Transmission de données arduino vers labview

Bonjour à tous,

 

Je travaille actuellement à l'université sur un projet dont le but est de lire la température et l'humidité d'un capteur dht11 sur une face avant LabView. Pour cela, on doit écrire un programme sur Arduino et lire les données du moniteur série sur LabView. J'ai déjà le programme Arduino, mais je n'arrive pas à lire les données. Quelles modifications dois-je apporter à mon diagramme LV (en pièce jointe) ? Je dois rendre ce projet au plus tard vendredi 14/06.

0 Kudos
Message 1 of 7
(147 Views)

Does the program create an error? What is the transmission format? Could you show the arduino code?

0 Kudos
Message 2 of 7
(140 Views)

https://youtu.be/J8zw0sS6i1c

 

Follow this presentation. 

 

Now Using LabVIEW 2019SP1 and TestStand 2019
0 Kudos
Message 3 of 7
(101 Views)

Hi, here is the arduino code i'm using : 

 

// Capteur de temperature et d'humidite DHT11
// https://tutoduino.fr/
// Copyleft 2020
#include "DHT.h"
// Definit la broche de l'Arduino sur laquelle la 
// broche DATA du capteur est reliee 
#define DHTPIN 2
// Definit le type de capteur utilise
#define DHTTYPE DHT11
// Declare un objet de type DHT
// Il faut passer en parametre du constructeur 
// de l'objet la broche et le type de capteur
DHT dht(DHTPIN, DHTTYPE);
void setup() {
  Serial.begin(9600);
  
  // Initialise la capteur DHT11
  dht.begin();
}
void loop() {
  // Recupere la temperature et l'humidite du capteur et l'affiche
  // sur le moniteur serie
  Serial.println("Temperature = " + String(dht.readTemperature())+" °C");
  Serial.println("Humidite = " + String(dht.readHumidity())+" %");
  // Attend 10 secondes avant de reboucler
  delay(10000);
}

The only problem is I'm not reading anything on the front panel, but maybe that's because my diagram is incomplete.

I'm not sure what you mean about the transmission format

0 Kudos
Message 4 of 7
(87 Views)

Thank you I'll check this video out

0 Kudos
Message 5 of 7
(86 Views)

Arduino sends data every 10 seconds, which is the same value as the VISA read timeout. Your program might encounter a time out and stop (error 56). Is that why you added a wait before the read?

 

The data you receive will look like this: "Temperature = 10 °C".

Decimal string to number cannot parse this string, first you have to find the start of the number.

 

Instead of bytes at port, use a fixed number of bytes which is larger than the largest message length. VISA read will return when it encounters a termination character, in this case a newline.

0 Kudos
Message 6 of 7
(51 Views)

Thank you for the feedback ! I haven't had the time to do it today but I'll see if it works tomorrow.

0 Kudos
Message 7 of 7
(33 Views)