Show Posts
Pages: 1 ... 6 7 [8] 9 10 ... 20
106  International / Deutsch / Re: SSR relais mit pwm steuern on: September 28, 2013, 04:31:32 am
Quote
Also soll das eine Leistungsregelung werden, bei der Du die einzuhaltende Leistung in Watt vorgibst?

Du hast also am Ende irgendwelche Einstellelemente (von denen Du bisher noch gar nichts geschrieben hast) und gibst damit eine einzuhaltende Leistung manuell vor?

Genau es soll eine Wattzahl gehalten werden.  zB. für 1h  1000W.

Quote
Sagen wir mal Du hast einen "Drehgeber", den drehst Du rechts und ein Sollwert für die Leistung steigt. Und Du drehst den Drehgeber links und der Sollwert sinkt.

der sollwert ist entweder die wattzahl die manuell gegeben wird oder der sollwert hängt von einem anderen sensor ab, denn gebe ich einen ungefähren leistungswert, also heizen(50); und der sollwert hängt den von einer anderen sensormesseung ab die durch die heizung beeinflusst wird.

Quote
Ein LCD-Display zeigt die eingestellte "Soll-Heizleistung" und die aktuell gemessene "Ist-Heizleistung".

Ich würde gerne wenn die wattzahl manuell steueren( also wenn gerade kein algorythmus läuft) mit einem poti der die der in % auf dem LCD angezeigt wird.
Und der gemessene ist-wert soll angezeigt werden.
Deswegen könnte ich ja eine variable mit dem poti skalieren und das dann bei heizen() einsetzen habe ich mir gedacht.
So ungefähr habe ich mir das gedacht:
Code:
int fade = analogRead (poti2);
    fade = map(fade, 0, 1023, 0, 100);
    heizen(fade);
    lcd.print(fade);


107  International / Deutsch / Re: SSR relais mit pwm steuern on: September 28, 2013, 03:55:08 am
Quote
Du möchtest nun kombinieren:
a) eine Funktion zum Einstellen eines Prozentwerts für das Heizen
b) eine Funktion zum Messen der Heizleistung

Genau das möchte ich. Wobei ja eigentlich der Strom gemessen wird und denn in Leistung umgerechnet wird.

Wie verbinde ich denn die beiden sketche wenn nicht so?
Ich möchte den gesamtstrom, wenn der befehl heizen() läuft messen und ihn denn mit den prozenten verrechnen. Wenn der befehl aus ist soll aber trotzdem gemessen werden, also eig. nichts 0,00A oder 0,05A.

Ich will es ertmal mit dem 10sek intervall versuchen, aber ich muss irgendwie die sketche kombiniert bekommen.


Quote
Soll irgendwas "automatisch geregelt" werden?

Ja. zB will ich die prozentzahl in einer if bedingung mit ++ erhöhen können. Da ist mir eingefallen ich könnte ja ne variable deklarieren zB. int P; P=34; und die könnte ich ja denn bei heizen einfügen: heizen(P); so muss ich immer P ändern.

Die Heizung is nicht sofort aufgeheizt aber auch nicht so lange so ca. 3sek oder mehr. Es ist keine Ifrarotheizung oder ein Heizlüfter.



108  International / Deutsch / Re: SSR relais mit pwm steuern on: September 27, 2013, 02:10:10 pm
Das ganze hier ist eine alternative zum kemo, ich hab den nur gelassen weil hier keine  antworter kamen.

Hab versucht das mal jetzt umzusetzen, meinst du das so?:
Code:
#include <LiquidCrystal.h>

// Zum Testen einfach die Board-LED schalten
#define HEIZPIN 13

#define MEDIAN   512
#define MEAS_INT 1000  // 1sec
#define ACS_ADC  A0
#define K_ACS    0.103 //0.0946   //für 20A version


LiquidCrystal lcd(39, 41, 43, 45, 47, 49, 51);
int backLight = 53;
float I;
uint32_t sum2=0;
  uint16_t n=0;
  uint32_t StartTime, StopTime;
  int16_t adc;
  uint32_t avrg=0xFFFF;

void setup() {
  Serial.begin(9600);
  pinMode(HEIZPIN, OUTPUT);
  pinMode(backLight, OUTPUT);
  digitalWrite(backLight, HIGH);
  lcd.begin(20, 4);
  lcd.setCursor(0, 0);
  lcd.print("I=");
  analogReference(DEFAULT);
}

boolean heizen(byte prozent)
// Parameter Prozent der Heizleistung 0 bis 100 (für 0% bis 100% Heizleistung)
// wobei <10 die Heizung komplett aus- und >90 komplett eingeschaltet ist
{
  static unsigned long letztesIntervallStart;
  unsigned long jetztMillis=millis();
  if (jetztMillis-letztesIntervallStart>10000) // alle 10s ein neues Intervall
    letztesIntervallStart=jetztMillis;
   
    I=(float)avrg*5.14/(K_ACS*1024);
    I=(I*prozent)/100; //I wird mit prozent verrechnet
  if (prozent<10) // unter 10% Heizanforderung Heizung abschalten
  {
    digitalWrite(HEIZPIN, LOW);
    return LOW;
  }
  else if (prozent>90) // über 90% Heizanforderung Heizung voll einschalten
  {
    digitalWrite(HEIZPIN, HIGH);
    return HIGH;
  }
  else if (jetztMillis-letztesIntervallStart<100*prozent) // zwischen 10% und 90% des Intervalls heizen
  {
    digitalWrite(HEIZPIN, HIGH);
    return HIGH;
  } 
  else  // Rest des Intervalls Heizung aus
  {
    digitalWrite(HEIZPIN, LOW);
    return LOW;
  } 
}


byte heizLeistung;
void loop() {
  StartTime=millis()+1;
  StopTime=StartTime+MEAS_INT;
  if(StartTime>millis());
  if(StopTime>millis())
  {
    adc=(MEDIAN-analogRead(ACS_ADC));
    sum2+=(uint32_t)adc*adc;
    n++;
  }
  if (n>0)
  {
    avrg=sqrt(sum2/n);
  }
 
  lcd.setCursor(2, 0);
  lcd.print(I);
  lcd.print("A   ");
 
  if (millis()<60000L)
    heizen(10);
  else if (millis()<120000L)
    heizen(20);
  else if (millis()<180000L)
    heizen(50);
  else if (millis()<240000L)
    heizen(70);
  else if (millis()<300000L)
    heizen(90);
  else
    heizen(100);
}

und denn kann ich auch die while-schleifen in if umwandeln ohne das da komische werte rauskommen.Richtig?

Muss da noch ein return I; rein?

Warum geht eigentlich die heizleistung eigentlich nur von 10-90%?
109  International / Deutsch / Re: Mit ACS 712 Wechselstrom messen on: September 27, 2013, 01:01:44 pm
Ich habe kein Energiemessgerät.

Mit dem Nullpunkt hab ich auch rumprobiert, klappt nicht, wird nur schlimmer.

Hab außerdem heute den alten sketch zum messen ohne Kemo ausprobiert, hat ziehmlich präzise geklappt.
Ich kriege bloß nicht die while schleifen ersetzt. Wäre schön wenn du mir noch bei deiner alternative An-Aus.Modulation helfen könntest mit den strom messen.
http://forum.arduino.cc/index.php?topic=180102.45
110  International / Deutsch / Re: SSR relais mit pwm steuern on: September 27, 2013, 11:44:05 am
Ich habe jetzt mal versucht die while schleichfen durch if zu ersetzen und einfach nur den Wert jede sek anzeigen zu lassen.
Wenn nichts an ist klappts ganz gut aber sobalt ich die Heizung(ohne Kemo) einschalte springt der wert wild rum von 1,6A zu 17,9A usw.

Code:
while(StartTime>millis())
  while(StopTime>millis())

Wie kriege ich denn jetzt die blockschleife weg sodass aber immernoch ein richtiger Wert rauskommt.

Und wie kriege ich denn jetzt aus dem Heizung-An-Aus-sketch die prozente raus?
Ich will wenn der Befehl heizen läuft den gesamtstrom der gemessen wird mit den Prozenten vom heiz-sketch verrechen.
Bitte helft mir mit einem sketchbeispiel.
111  International / Deutsch / Re: Mit ACS 712 Wechselstrom messen on: September 27, 2013, 11:17:33 am
Macht euch keine Sorge, das ist 100%ig so gewolt mit der Leistung. Weil die bisherigen Aufzeichnungen (ohne Arduino) auch mit Watt gemessen wurden.

Hab jetzt den sketch ausprobiert von jurs, hab die zu messenden Werte eingetragen (3,5 kW, 237V Netz, 5,14V Arduino).
Die ergebnisse hab ich fotografiert. Sie kommen dem richtigen recht nah. Leider hatte ich heute mein True-RMS messgerät nicht mit, also habe ich es mit dem messwer vom letzten mal verglichen.
Da habe ich auf einer bestimmten stuffe 150V gemessen also 1406W, der sketch gab ungefähr 1220W wieder.
Morgen messe ich nochmal mit dem RMS-gerät.
112  International / Deutsch / Re: Mit ACS 712 Wechselstrom messen on: September 22, 2013, 10:53:42 am
Boah, da hat sich aber echt jemand Mühe gegeben,  danke.

Quote
Deine 3KW Heizung ist wohl auswärts untergebracht.

Ja das ist sie, außerdem muss die Zeit auch mit meinem Elekriker Kolegen übereinstimmen, weswegen es auch Montag nicht geht.

Aber der sketch wird auf jeden Fall getestet, Danke!!!

Kleines problem ist das die ganze Aparatur in einem Firmengebiet liegt und wenn die Betriebe ihre fetten Geräte anschmeißen den sinkt schonmal die Netzspannung um ein paar Volt.

Könntest du mir bitte auch bei deiner Alternative mit der SSR Ein-Aus modulation helfen? Da hat irgendwann keiner mehr geantwortet.
Ich hatte da ja ne Blockschleife, wußte aber nicht wie ich sie wegbekomme ohne das wert schnell rumspringt. Und ich wußte nicht wie ich die Prozente verrechnen sollte da sie nicht global deklariert waren.



113  International / Deutsch / Re: Mit ACS 712 Wechselstrom messen (dringend) on: September 21, 2013, 02:32:00 pm
Danke, den sketch werde ich auf jeden Fall ausprobieren aber frühstens am montag.
114  International / Deutsch / Re: SSR relais mit pwm steuern on: September 21, 2013, 02:28:36 pm
Quote
static int für den messwert und alle x sekunden aktualiesieren mittels der blinkavoiddelay technik millis()

könntest du bitte anhand meines sketches die änderungen vornehmen und mir erklären was sie bewirken?

wird dadurch die blockschleife ersetzt?
115  International / Deutsch / Re: Mit ACS 712 Wechselstrom messen (dringend) on: September 21, 2013, 02:14:10 pm
Danke für die klare Antwort.

Nun will ich es wieder mit dem Vorschlag von jurs mit der SSR Ein-Aus-Modulation versuchen.

Das Thema wurde hier schon besprochen ist aber irgendwann kam keine Antwort mehr.

http://forum.arduino.cc/index.php?topic=180102.45

Das problem war das ich nicht wusste wie man den sketch von Jurs mit dem sketch zum Strom messen kombinieren sollte.

Ich habe im sketch zum strommessen eine blockschleife die bei jeder Messung für mindestens 20 Millisek den ganzen sketch einfriert.

Wenn ich aber aus dem while ein if machte so spang der wert schnell hin und her sodass man nichts erkennen konnte.

Aber dieses Problem will ich denn jetzt weiter auch dem anderen Topic diskutieren.

Gruß

strohhirn
116  International / Deutsch / Re: Mit ACS 712 Wechselstrom messen (dringend) on: September 21, 2013, 01:18:51 pm
Könnte ich bitte eine klare antwort bekommen das der ACS 712(alleine) keinen Strom von Phasenanschnittreglern messen kann.
117  International / Deutsch / Re: Mit ACS 712 Wechselstrom messen (dringend) on: September 21, 2013, 11:47:25 am
Quote
Das geht nicht! Zumindest nicht mit lediglich einem Strommesser. Du kannst den ua. den Anschnittswinkel nicht berechnen.

Also kann ich nicht nur mit hilfe des ACS 712 den strom von einem Phasenanschnittregler messen.

Steht das 100% fest? Wenn ja muss ich nach alternativen suchen wie zB:

Quote
Im Sommer hatte ich Dir daher irgendwann mal vorgeschlagen, den KEMO-Regler wegzulassen, das Schalten/Regeln über ein Solid-State-Relais zu machen,  und die Heizleistung in Prozentschritten von 10% bis 90% mit einer Ein-Aus-Modulation im 10-Sekunden-Takt zu regeln.
118  International / Deutsch / Re: Mit ACS 712 Wechselstrom messen (dringend) on: September 21, 2013, 11:43:36 am
Ja, schuldigung, wie es so aussieht war das nur die lösung für Sinus. smiley

Der Nullpunkt hält sich bei 0 und springt auch nicht rum. (evt. kleine abweichungen)

Nun habe ich das ganze mit dem Kemo M028 der wohl ein Phasenanschnittregler ist ausprobiert und der sketch funktioniert nicht.

1. Der wert springt in einem bestimmten bereich rum, anstatt wie vorher vllt alle 2 sec sich minimal zu ändern

2. Der Wert ist falsch

es wurde zB. etwas um den wert 1000W angezeigt, gemessen habe ich jetzt mit einem True RMS messgerät 150V Was Ja nach (U*U)/R (R = 16 ohm) 1400W ergibt.

Nun hat Uwe ja schon einen lösung vorgeschlagen:

Quote
Wenn Du die Leistung eines mit Phasenanschnittsteuerung geregelten Verbrauchers messen willst, dann mußt Du den quadatischen Mittelwert der Spannung bzw des Stroms aus den Momentanwerten berechen und dann Strom und Spannung multiplizieren. Bei ohmschen Verbrauchern mußt Du das nur einmal machen, wenn Du die Nennleistung/den Nennstrom kennst. Die Spanung ist dann Phasengleich mit dem Strom und steht im gleichen Verhältnis wie momentane der Effektivwert des Stromes zum Nennstrom.

Du hattest ja schon mal meinen sketch kommentiert:
Code:
uint32_t sum2=0;
     uint16_t n=0;
     uint32_t StartTime, StopTime;
     int16_t adc;
     uint32_t avrg=0xFFFF;
     float I;
  
     StartTime=millis()+1;
     StopTime=StartTime+MEAS_INT;
     while(StartTime>millis());  // Wir warten bis eine neue Millisekunde anfängt...
     while(StopTime>millis()) // Dann summieren wir bis zur StopTime
  {
     adc=(MEDIAN-analogRead(ACS_ADC)); // die Differenz zum Mittelwert
     sum2+=(uint32_t)adc*adc;                 // wird quadriert und aufsummiert
     n++;
  }
  if (n>0)
  {
    avrg=sqrt(sum2/n);   // ... und am Ende die Wurzel aus dem Durchschnitt der Quadrate
  }

  I=(float)avrg*5/(K_ACS*1024);
  W =(I*I)* R; // R=16 Ohm

Nun schaffe ich es aber nicht anhand dieses Vorschlags den sketch zu ändern und bitte euch drum und es mir zu erklären.

Ich weiß zum Beispiel nicht wie man den Momentanwert berechnet und anschließend mit strom und spannung multiplizieren soll, wenn ich den strom ersmal errechnen muss und die spannung höhstens anhand von dem gemessenen Stroms und R ausrechnen kann.
119  International / Deutsch / Re: Mit ACS 712 Wechselstrom messen (dringend) on: September 21, 2013, 09:26:41 am
Oder ist es Unmöglich mit dem ACS 712 den Wechselstrom von einem Phasenanschittregler zu messen?
120  International / Deutsch / Re: Mit ACS 712 Wechselstrom messen (dringend) on: September 21, 2013, 07:42:19 am
Och mensch warum schweift das denn jetzt wieder in eine andere richtung

uwefed hatte doch schon einen anreiz gegeben:

Quote
Wenn Du die Leistung eines mit Phasenanschnittsteuerung geregelten Verbrauchers messen willst, dann mußt Du den quadatischen Mittelwert der Spannung bzw des Stroms aus den Momentanwerten berechen und dann Strom und Spannung multiplizieren. Bei ohmschen Verbrauchern mußt Du das nur einmal machen, wenn Du die Nennleistung/den Nennstrom kennst. Die Spanung ist dann Phasengleich mit dem Strom und steht im gleichen Verhältnis wie momentane der Effektivwert des Stromes zum Nennstrom.

Können wir nicht dabei bleiben. Ich kann das bloß nicht im programm umsetzen und bitte euch drum mir zu helfen.

Das das ganze gefährlich ist weiß ich, da bastelt auch ein anderer Elektriker dran rum.

An eine alternative zum Kemo will estmal nicht denken.

Ich will doch nur mit dem ACS712 Richtig den strom messen und ihn anschließend über die Formel (I*I)*R=P in watt umwandeln.

Bitte ändert doch einfach die messformel so das sie mit dem phasenanschnittregler funktioniert und erklärt sie mir.

Pages: 1 ... 6 7 [8] 9 10 ... 20