Sender Empfänger Servoproblem

Hallo zusammen,
ich möchte bei einem Arduino Uno die Lichtstärke mit einem Photowiderstand ermitteln und dann das Messergebnis zu einem weiteren Arduino senden.

Der zweite Arduino soll das Messergebnis empfangen und mit einer IF-Funktion ein Servomotor steuern.

Sender:

#include <RCSwitch.h>
int sensorWert = 0;
int eingang= A0;

RCSwitch mySwitch = RCSwitch();
void setup() {
  Serial.begin(9600);
  mySwitch.enableTransmit(10);  // Der Sender wird an Pin 10 angeschlossen
}
void loop() {
  sensorWert =analogRead(eingang);
  Serial.println(sensorWert);
  mySwitch.send(sensorWert, 24); // Der 433mhz Sender versendet die Dezimalzahl „1234“
  delay(100);  // Eine Sekunde Pause, danach startet der Sketch von vorne

Empfenger:

#include <RCSwitch.h>
#include <Servo.h>
Servo servoblau;
int sensorWert = 0;
int value = 0;

RCSwitch mySwitch = RCSwitch();

void setup() 
{
  Serial.begin(9600);
  servoblau.attach(7);
  mySwitch.enableReceive(0);  // Empfänger ist an Interrupt-Pin "0" - Das ist am UNO der Pin2

}

void loop()
  {

   if (mySwitch.available()) // Wenn ein Code Empfangen wird...
   {
    int value = mySwitch.getReceivedValue(); // Empfangene Daten werden unter der Variable "value" gespeichert.
    Serial.println(value);

          if (value >= 512 ) //Wenn der Sensorwert über 512 beträgt….
      {
      servoblau.write(180);
      mySwitch.resetAvailable();
      }
      if (value < 512 )
      {
      servoblau.write(0);
      mySwitch.resetAvailable();
      }
      value = 0;
   }

  }

Bei den ersten Versuch hat noch alles funktionierd, doch nach kurzer Zeit blieb das Programm stecken.
Der serial Monitor zeigte dann nichts mehr an.
Das Problem beginnt, wenn ich den Servomotor am Arduino anstecke.

Was habe ich beim Lösungsweg falsch gemacht? Kann mir jemand weiterhelfen?

mfg glatzl

glatzl94:
.....
Was habe ich beim Lösungsweg falsch gemacht? Kann mir jemand weiterhelfen?

Du verwendest eine Library, die nicht dafür gedacht ist.
Wie der Name der (RCSwitch) Library schon sagt, ist diese für RemoteControlSwitch, also "schalten" gedacht.

Verwende für dein Vorhaben die Library "VirtualWire", mit der können Daten, wie Messdaten übertragen werden.

Edit:
Zudem sendet dein Sender zu schnell hintereinander. Deine 1 Sek. sind nur 100 mSek.
Selbst wenn du 10 Sek. einstellst, ist das für Messwerte schnell genug.

Das Problem beginnt, wenn ich den Servomotor am Arduino anstecke.

Du sagst nicht wie Du den Arduino mit Spannung versorgst.
Der Servo braucht relativ viel Strom. Das kann die Versorgungsspannung einbrechen lassen und so den arduino resetieren.
Versuch mal den Servo an einer 2. Spannungsquelle anzuschließen (Massen zusammenschalten) oder ein kräftiges 5V Netzteil zu nehmen (1A bis 1,5A) und den Servo direkt (nicht über den Arduino) anzuschließen.

Grüße Uwe