Steuerung eines Frequenzumrichters mit Hilfe eines Temperatursensors

Hallo,
ich versuche derzeit mit dem Arduino einen Frequenzumrichter zu steuern der mit einem Gebläse (380V) verbunden ist. Mit Hilfe eines Temperatursensors soll der FU die Frequenz je nach Temperatur erhöhen oder verringern. Die Messung der Temperatur funktioniert. Den FU steuern funktioniert auch. Aber beides in Kombination führt zu einer Fehlfunktion des Temperatursensors (Anzeige von -127°). Dies passiert sobald der FU eingeschaltet wird. Ohne einschalten des FU's, ist mit meinem Programm eine Temperaturmessung ohne Probleme möglich.

Also nochmal kurz:

  • Arduino anschließen und mit Strom versorgen = Temperatur wird gemessen
  • FU einschalten: keine Temperaturmessung mehr möglich = Anzeige von -127°

Verwendet wird der FU SKI780. Folgende Parameter wurden umgestellt:

  • P0-03 (Main frequency source X selection) : 2 (AI1)
  • P4-15 (AI curve 1 maximum input): 5.00V

Ich verwende den Temperatursensor DS18B20.

Mit folgendem Programm lässt sich der FU problemlos steuern, somit sollten diese Einstellungen korrekt sein:

#include <Wire.h>

#define FU 10

void setup() {
  pinMode(FU, OUTPUT);
}

void loop() {
  analogWrite(FU, 255);
  delay(10000);
  analogWrite(FU, 125);
  delay(10000);
}

Nun mein Code für die Temperaturmessung in Kombination mit dem FU:

#include <OneWire.h>
#include <DallasTemperature.h>
#include <Wire.h>

#define ONE_WIRE_BUS 2

OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors (&oneWire);

#define FU 10
float soll_temp = 30.0;
float ist_temp = 0;


void setup() {
  Serial.begin(9600);
  sensors.begin();
  pinMode(FU, OUTPUT);
}

void loop() {
  sensors.requestTemperatures();
  ist_temp = sensors.getTempCByIndex(0);

  if (ist_temp > 40.0)
  {
    analogWrite(FU, 255);
  }
  else if (ist_temp > 35.0 && ist_temp <= 40.0)
  {
    analogWrite(FU, 230);
  }
  else if (ist_temp <= 35.0)
  {
    analogWrite(FU, 210);
  }

}

Hier ein Foto der Schaltung, der FU ist hier nicht angeschlossen, diesen schließe ich direkt an den Arduino mit dem Pin 10 (= PWM pin) (FU: AI1) und GND (FU: GND) an.

Es wäre wirklich toll wenn mir hier jemand helfen könnte. Danke im Voraus.

That generally indicates a bad or open sensor connection. Check your ground connections.

Im englischen Teil des Forum müssen die Beiträge und Diskussionen in englischer Sprache verfasst werden.
Deswegen wurde diese Diskussion in den deutschen Teil des Forums verschoben.

mfg ein Moderator

Hallo,
typisches EMV Problem.
wie lang ist das Kabel zum Temperatursensor ?
Du könntest noch versuchen den Widerstand zu verkleinern.
Wie lang ist das Kabel vom Umrichter zum Motor.
Ist das Motorkabel abgeschirmt und beidseitig der Schirm mit Schutzleiter verbunden.
Ist der Umrichter vernünftig geerdet.

Eventuell würde ich die Temperaturmessung mit einem PT100 und passendem Messverstärker machen. Wenn man das geschickt auslegt kannst Du auf den Arduino eventuell komplett verzichten.