Autor Thema: Heuverteiler  (Gelesen 4664 mal)

Offline Sonnbach

  • Jr. Member
  • **
  • Beiträge: 68
Heuverteiler
« am: Juli 02, 2023, 16:05:17 Nachmittag »
Guten Tag
Ein Bauer auf über 1400müM braucht eine neue Steuerung für den Heuverteiler. Ist ja kein Problem mit einer E4!
Der Schwenkbogen am Ende des Gebläserohrs verteilt das Heu gleichmässig auf dem Heustock nach links und nach rechts.
Ein zweiter Motor fährt das Rohr ein und aus.
Das Problem ist die Schwenkbewegung!
Zeigt der Bogen senkrecht nach unten, betätigt dieser einen Endschalter.
Die beiden Positionen links und rechts werden über zwei Potentiometer am Schaltschrank bestimmt.
d.h. der Schwenkbogen fährt über den Endschalter und das jeweilige Potentiometer bestimmt die Zeit, zum Wendepunkt. (max 10sec)
Die Potentiometer- Stellung (0-10V) in einen Wert für das jeweilige Zeitrelais umzuwandeln, das kann ich. Wie ich den Rest angehen / lösen soll, habe ich keine Ahnung.
So muss zB nach einem Stopp die Bewegung in die selbe Richtung weitergehen für den Rest der Zeit.
Oder nach einem Spannungsausfall, der ev 9Monate dauert, der Schwenkbogen wieder richtig starten, ev nach einer Referenz- Fahrt
Kann mir jemand einen Tipp geben, wie ich das lösen kann?
Besten Dank zum Voraus und noch einen schönen Restsonntag
Fredi

Offline radar17892

  • Sr. Member
  • ****
  • Beiträge: 788
  • Think easy!
    • mollgruppe
Antw:Heuverteiler
« Antwort #1 am: Juli 02, 2023, 17:35:58 Nachmittag »
Hi Fredi,
da kann ich dir weiter helfen. Habe was ähnliches für eine Getreide Wurftrommel geschrieben. Kann dir morgen abend mal einen Vorschlag einstellen.

Gruß Thomas
Weil Einfach einfach Einfach ist!

Offline Sonnbach

  • Jr. Member
  • **
  • Beiträge: 68
Antw:Heuverteiler
« Antwort #2 am: Juli 02, 2023, 18:11:17 Nachmittag »
Sali Thomas
Besten Dank für dein Angebot.
Schönen Abend und guten Wochenstart
Fredi

Offline radar17892

  • Sr. Member
  • ****
  • Beiträge: 788
  • Think easy!
    • mollgruppe
Antw:Heuverteiler
« Antwort #3 am: Juli 02, 2023, 22:08:34 Nachmittag »
Noch ein paar Fragen:
Welche Programmiersprache verwendest du im Hauptprogramm?
Hast du schon die neue Hardware FW2.0?
Kann ich dir einen Baustein "schwenken" mit ST schreiben? Komst du damit zurecht?
 Gruß Thomas
Weil Einfach einfach Einfach ist!

Offline Sonnbach

  • Jr. Member
  • **
  • Beiträge: 68
Antw:Heuverteiler
« Antwort #4 am: Juli 03, 2023, 09:53:11 Vormittag »
Guten Morgen Thomas
Danke für deine Mühe!
Meistens schreibe ich in KOP (oder AWL bei S40/CoDeSys), verstehe und schreibe einfaches ST
Hardware habe ich Easy-E4-12RC1 Version 06-0141 (ist schon etwas älter)
Bei Bedarf kann ich auch etwas neues kaufen.
Gruss Fredi

Offline radar17892

  • Sr. Member
  • ****
  • Beiträge: 788
  • Think easy!
    • mollgruppe
Antw:Heuverteiler
« Antwort #5 am: Juli 03, 2023, 23:13:27 Nachmittag »
Hallo Fredi,
hier mal der Entwurf für einen Anwenderbaustein mit einer Schrittkette
Man könnte mit Tippbetrieb das Schwenkrohr etwa Mittig fahren und dann Schwenkbetrieb freigeben.
Die Schrittkette ist Remanent. Es spielt keine Rolle, wie lange die Steuerung aus ist.
Die Auflösung der Schwenkzeiten in 0,1s sollte ausreichend sein. also ein Wert am IA01 / IA02 von 100 entspricht deinen max 10sec.
Ich könnte mir vorstellen noch eine Überwachung (Zeit) zu integrieren beim zurückfahren zum Endschalter.

Probier es mal aus

Gruß Thomas

//Taktgeber, Auflösung 0,1Sekunde
T01 (
EN := true,
RE := T01Q1,
ST := not I02,
I1 := t#90ms,
I2 := ,
Q1 => ,
QV => );
// Schrittkette ( MB1 und MB2 remanent)
CASE MB01 OF
0: MB02:= 0;
MB01:=1; //gehe zu 1
1:  //von mitte nach rechts fahren bis Sollwert erreicht
Q01:= I02; //fahren nach re
Q02:= false;
IF T01Q1 and I02 then
MB02:= MB02 + 1; //0,1sTakt hochzählen
END_IF;
IF MB02 >= IA01 THEN  //Sollwert erreicht
MB02:= 0;
MB01:=2; //gehe zu 2
END_IF;
2:  //1s anhalten für umsteuern
Q01:= false;
Q02:= false;
IF T01Q1 and I02 then
MB02:= MB02 + 1;
END_IF;
IF MB02 >= 10 THEN
MB02:= 0;
MB01:=3;
END_IF;
3:  //Zurückfahren (li) bis Endschalter Mitte
Q01:= false;
Q02:= I02; //fahren nach li
IF I01 THEN
MB01:=4;
END_IF;
4:  //von mitte nach li fahren bis Sollwert erreicht
Q01:= false;
Q02:= I02; //fahren nach li
IF T01Q1 and I02 then
MB02:= MB02 + 1; //0,1sTakt hochzählen
END_IF;
IF MB02 >= IA02 THEN  //Sollwert erreicht
MB02:= 0;
MB01:=5; //gehe zu 5
END_IF;
5:  //1s anhalten für umsteuern
Q01:= false;
Q02:= false;
IF T01Q1 and I02 then
MB02:= MB02 + 1;
END_IF;
IF MB02 >= 10 THEN
MB02:= 0;
MB01:=6;
END_IF;
6:  //Zurückfahren (re) bis Endschalter Mitte
Q01:= I02; //fahren nach re
Q02:= false;
IF I01 THEN
MB01:=1;
END_IF;
ELSE
;
END_CASE;
Weil Einfach einfach Einfach ist!

Offline Sonnbach

  • Jr. Member
  • **
  • Beiträge: 68
Antw:Heuverteiler
« Antwort #6 am: Juli 03, 2023, 23:51:07 Nachmittag »
Guten Abend Thomas
Das haut mich glatt um!
Das werde ich morgen gleich mal probieren.
Im Moment arbeite ich noch mit Easy Soft V7.41. Dein Programm habe ich mal dort hineingezogen. Fehlermeldungen gab es keine.
Ich melde mich morgen!
Nochmals besten Dank für deinen Einsatz und Grüsse vom Bodensee
Fredi

Offline Sonnbach

  • Jr. Member
  • **
  • Beiträge: 68
Antw:Heuverteiler
« Antwort #7 am: Juli 04, 2023, 07:46:19 Vormittag »
Guten Morgen Thomas
Genial! Funktioniert!
Muss das Programm noch intensiver studieren, damit ich es begreife!
Vorab mal herzlichen Dank für deine Mühe!
Gruss Fredi

Offline radar17892

  • Sr. Member
  • ****
  • Beiträge: 788
  • Think easy!
    • mollgruppe
Antw:Heuverteiler
« Antwort #8 am: Juli 05, 2023, 11:38:53 Vormittag »
Bei Fragen, immer her damit.

Die Beschreibung der Anwenderbaustein Variablen sind ja alles im Bausteinexport hinterlegt.

Gruß Thomas
Weil Einfach einfach Einfach ist!

Offline Sonnbach

  • Jr. Member
  • **
  • Beiträge: 68
Antw:Heuverteiler und mehr
« Antwort #9 am: Mai 28, 2024, 22:51:07 Nachmittag »
Guten Tag an die Experten
Für einen Testlauf muss der Motor im Dauerbetrieb vorwärts und rückwärts laufen je mit Pausezeit.
Also zB 30 Sek vorwärts, 3 Sek Pause, 30 Sek rückwärts, 3 Sek Pause und das selbe wieder von Vorne.
Irgendwie sollte das mit dem oben eingestellten Programm machbar sein, nur weiss ich nicht wie.

Kann mir jemand auf die Sprünge helfen?

Besten Dank und Gruss Fredi

Offline radar17892

  • Sr. Member
  • ****
  • Beiträge: 788
  • Think easy!
    • mollgruppe
Antw:Heuverteiler
« Antwort #10 am: Mai 29, 2024, 00:22:01 Vormittag »
Hallo Fredi,
was funktioniert denn nicht?
Weil Einfach einfach Einfach ist!

Offline Sonnbach

  • Jr. Member
  • **
  • Beiträge: 68
Antw:Heuverteiler
« Antwort #11 am: Mai 29, 2024, 06:35:37 Vormittag »
Sali Thomas
der Heuverteiler funktioniert einwandfrei.
Das Programm möchte ich anpassen wie beschrieben, weiss aber nicht wie
Gruss Fredi

Offline radar17892

  • Sr. Member
  • ****
  • Beiträge: 788
  • Think easy!
    • mollgruppe
Antw:Heuverteiler
« Antwort #12 am: Mai 29, 2024, 19:20:22 Nachmittag »
Hallo Fredi,
30s sind ein zu großer Wert. Da ich das MB2 benutze um die 0,1s Takte hoch zu zählen, geht das nur bis 25s, oder du musst die Einträge mit MB2 in MW2 abändern.
die Funktion steht eigentlich in den Schritten immer dabei was gemacht wird.
Im Prinzip zähle ich vom Endschalter Mitte an die 0,1s Takte beim fahren hoch, bis der Zählwert >= dem Sollwert (30s= Sollwert 300) ist und gehe dann in den nächsten Schritt "Umsteuerpause". Hier zähle ich wieder die Takte, bis die Wartezeit erreicht ist. Die 3s entsprechen dann einem Sollwert von 30.
Momentan habe ich da 10 fest drin.
IF MB02 >= 10 THEN ...
Dann fahre ich zurück zur Mitte und dann weiter bis wieder der Sollwert erreicht ist.

Bitte beachten, der Endschalter ist notwendig für die Schrittkette, auch zum testen.
Gruß Thomas
Weil Einfach einfach Einfach ist!

Offline Sonnbach

  • Jr. Member
  • **
  • Beiträge: 68
Antw:Heuverteiler
« Antwort #13 am: Mai 29, 2024, 23:14:27 Nachmittag »
Guten Abend Thomas
Leider habe ich mich nicht richtig ausgedrückt:
Das Programm soll so funktionieren: Bei Freigabe schaltet Ausgang 1 25 Sek ein, dann ca 3 Sek Pause, dann Ausgang 2 ca 25 Sek ein, dann ca 3 Sek Pause, dann wieder Ausgang ca 25 Sek ein usw. solange die Freigabe besteht.  Wenn Freigabe 0 und wieder 1, fängt Ausgang 1 wieder an ("Position" nicht speichern)
Ich dachte an eine Schrittkette und wollte das Heuverteiler- Programm anpassen, weiss aber doch nicht wie!
Hast du mir einen Tipp?
Danke und Gruss Fredi

Offline radar17892

  • Sr. Member
  • ****
  • Beiträge: 788
  • Think easy!
    • mollgruppe
Antw:Heuverteiler
« Antwort #14 am: Mai 30, 2024, 15:46:02 Nachmittag »
Ah OK,
ich schreib dir kurz den Code:

//Timer1 Ansprechverzögert für Q1 Zeitbereich m:s
T01 (
EN := not M01 and I01,
RE := ,
ST := ,
I1 := T#28s, //25s aktiv + 3s Pause
I2 := ,
Q1 => ,
QV => );
//Timer2 Ansprechverzögert für Q2 Zeitbereich m:s
T02 (
EN := M01 and I01,
RE := ,
ST := ,
I1 := T#28s,
I2 := ,
Q1 => ,
QV => );
//Umschaltmerker steuern
IF T01Q1 THEN
M01:= true;
ELSIF T02Q1 THEN
M01:= false;
ELSE
;
END_IF;
//Ausgang mit Verriegelung einschalten wenn Timer aktiv und kleiner als 25s
Q01:= not Q02 and (T01QV > 0) and (T01QV < t#25s);
Q02:= not Q01 and (T02QV > 0) and (T02QV < t#25s);

Gruß Thomas
Weil Einfach einfach Einfach ist!