Go Down

Topic: (PROBLEEM Code) Draadloos tempratuur opmeten (Read 219 times) previous topic - next topic

BelgiumHacksmods

Hallo

Ik ben bezig voor een project op school met arduino,
De bedoeling is eigenlijk dat we op verschillende plaatsen de tempratuur moeten opmeten en versturen naar 1centralle die dan alles registreerd.
Het enigste waar ik problemen mee heb ik de code zelf. als ik kijk naar de verzender via het progamma zelf van adruino dan zie ik dat hij de tempratuur opneemt maar als ik naar de ontvanger kijk zie ik alleen maar 00 dus hij ontvangt het niet . (waarschijnlijk zal dit iets dom zijn aangezien ik een beginner ben met arduino)

hopelijk kan iemand me code's nakijken en de fouten helpen eruit te halen.
Wat ik ervoor gebruik:
arduino Nano als moeder van de sensor
dht22 als sensor
arduino due als centralle
nRF24L01 om de data te verzenden.

dit zijn mijn schetsen:

https://imgur.com/a/u23Ghl4

codes:

Ontvanger:

Code: [Select]


#include "DHT.h"
#include <SPI.h> 
#include "RF24.h"

#define DHTPIN 4 
#define DHTTYPE DHT22

RF24 myRadio (7, 8);
byte address[][6] = {"00001"};
const int led_pin = 13;

struct package
{
  float temperature ;
  float humidity ;
};


typedef struct package Package;
Package data;

DHT dht(DHTPIN, DHTTYPE);

void setup()
{
    Serial.begin(9600);
    pinMode(led_pin, OUTPUT);
    dht.begin();
    myRadio.begin(); 
    myRadio.setChannel(115);
    myRadio.setPALevel(RF24_PA_MAX);
    myRadio.setDataRate( RF24_250KBPS ) ;
    myRadio.openReadingPipe(0, address);
    myRadio.startListening();
}



void loop()
{
  if (myRadio.available()) {
     char text[32]= "";
     myRadio.read(&text, sizeof(text));
     Serial.println(text);
  }
}




verzender:

Code: [Select]


#include "DHT.h"
#include <SPI.h> 
#include "RF24.h"

#define DHTPIN 4 
#define DHTTYPE DHT22

RF24 myRadio (7, 8);
byte addresses[][6] = {"00001"};
const int led_pin = 13;

struct package
{
  float temperature ;
  float humidity ;
};


typedef struct package Package;
Package data;

DHT dht(DHTPIN, DHTTYPE);

void setup()
{
    Serial.begin(9600);
    pinMode(led_pin, OUTPUT);
    dht.begin();
    myRadio.begin(); 
    myRadio.setChannel(115);
    myRadio.setPALevel(RF24_PA_MAX);
    myRadio.setDataRate( RF24_250KBPS ) ;
    myRadio.openWritingPipe( addresses[0]);
    delay(1000);
}



void loop()
{
  digitalWrite(led_pin, HIGH); // Flash a light to show transmitting
  readSensor();
  Serial.println(data.humidity);
  Serial.println(data.temperature);
  myRadio.write(&data, sizeof(data));
  digitalWrite(led_pin, LOW);
  delay(1000);
}

void readSensor()
{
 data.humidity = dht.readHumidity();
 data.temperature = dht.readTemperature();
 const char text[] = "dht.readTemperature()";
 myRadio.write(&text, sizeof(text));
 delay(1000);
}


Go Up