Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Wichtig: Bevor Du wegen einem Problem mit der CC2 postest, stelle sicher, daß Du
die neueste OS-Version, die neuseste Compiler-DLL und die neuesten Modulversionen benutzt!
Beachte, daß sich auf der CD zur CC2-Unit/Station auch jetzt noch die ältesten Dateien befinden!
Es gelten folgende Anleitung und Regeln: Regeln CC2Net.de-Forum
Zurück zum Artikel  (Blaue Felder sind Pflichtfelder)


Name:   UserID: 
 E-Mail:
Kategorie
Betreff
Homepage:
Link-Titel:
Link-URL:
Cookie für Name, UserID, E-Mail, Homepage-URL setzen
(Erspart die Neueingabe bei Beiträgen und Antworten)
(Zum Löschen des Cookies hier klicken)
Ich nutze:
C-Control II Unit
C164CI-Controllerboard
C-Control II Station
CCRP5 mit CC2-Unit (Conrad Roboter)
CC2-Application-Board
CC2-StarterBoard
CC2-ReglerBoard
eigenes Board
original OS     OSOPT_V2     OSOPT V3.0 OSOPT V3.1

Kommentar:
Einfügen von HTML im Kommentar:

Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a>
Bild einfügen: <img src="BILDURL">
Text formatieren: <b>fetter Text</b>  <i>kursiver Text</i> <u>unterstrichener Text</u>
Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b>
C2 Quellcode formatieren: <code>Quellcode</code>
ASM Quellcode formatieren: <asm>Quellcode</asm>
(Innerhalb eines Quellcodeabschnitts ist kein html möglich.)
Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst !  

> Hallo, > > ich habe ein kleine PRg geschrieben, mit dem eine > Zirkulationspumpe gesteuert werden soll. Die Routint wird mit Anforderung aufgerufen und sollte dann von selbst > weiter laufen - tut sie soweit auch. > Zur Funktion: Sobald nach einem Start ein Zeitsignal anliegt soll die Steuerung in Abhängigkeit von Werktags (Wt) und > Wochenende (We) zu festgelegten Zeiten eine Pumpesteuerung einschalten und nach Ablauf der max Zeit für die > Einschaltung wieder ausschalten. Bei Betätigung eines Kontaktes soll die Pumpensteuerung 1 mal eingeschaltet > werden und die Zeitautomatik soll dann bis zum nächsten Tag ausgeschaltet werden. In einem anderen thread werden die Daten der > Restlaufzeit bzw Blockadezeit auf dem LCD angezeigt. > Manchmal - bisher habe ich noch keine Idee wann - setzt das Programm den Status nach ablauf der Bockiertzeit nicht wieder auf 0 und > die Anzeige zeigt negative Werte an. Das Prg reagiert natürlich auch nicht mehr auf den Kontakt. > > Hat jemand eine Idee was das sein könnte - oder sehe ich den Fehler einfach nur nicht? > > <code> > /* On anforderung Pumpe > 0= Aus / 1=Ein Schalter / 2=Ein Werktag / 3=Ein Wochenende*/ > > int On; > > thread Pump //Pumpe ein und ausschalten > { > var.RunTimeZ= var.NowTimeSZ + var.OnTime; // Eindauer setzen > var.pstatus=1; // Status setzen Pumpe Ein > var.Modbus[2]=var.pstatus; // Status an Modbus > station_io.RELon(1); // Pume Einschalten > wait var.RunTimeZ<=var.NowTimeSZ; // Einschaltdauer warten > var.RunTimeZ= var.NowTimeSZ + var.OffTime; // Blockadezeit Ende setzen > var.pstatus=2; // Status setzen blockiert > var.Modbus[2]=var.pstatus; // Status an Modbus > station_io.RELoff(1); // Pumpe Aus > wait var.RunTimeZ<=var.NowTimeSZ; // Blockdauer warten > var.pstatus=0; // Status setzen Pumpe Aus > var.Modbus[2]=var.pstatus; // Status an Modbus > halt;} // Unterprogramm anhalten > > thread Anforderung //anforderung Zikulationspumpe > { > // Automatische Einschaltung > if system.dcferr()==0 // Wenn DCF O > {if var.PAuto>=1 // Pumpe Auto Anforderung > {if system.dow()>0 // von Montag > {if system.dow()<6 // bis Freitag > {if var.NowTimeMZ>=var.PonWtZ // Einschaltzeit Erreicht > {On=2;var.PAuto=2; // Anforderung Wochentags - Auto Aktiv > if var.NowTimeMZ>=var.PonWtZ+var.PonWtZ // Ausschaltzeit erreicht > {On=0;var.PAuto=0;} // Anforderung aus - Auto blcokierten > } > } > else // Sammstag > {if var.NowTimeMZ>=var.PonWeZ // Einschaltzeit erreicht > {On=3;var.PAuto=2; // Anforderung Wochenende > if var.NowTimeMZ>=var.PonWeZ+var.PonWeZ // Ausschaltzeit erreicht > {On=0;var.PAuto=0;} // Anforderung aus - Auto blcokierten > } > } > } > else // Sonntag > {if var.NowTimeMZ>=var.PonWeZ // Einschaltzeit erreicht > {On=3;var.PAuto=2; // Anforderung Wochende > if var.NowTimeMZ>=var.PonWeZ+var.PonWeZ // Ausschaltzeit erreicht > {On=0;var.PAuto=0;} // Anforderung aus - Auto blcokierten > } > } > var.Modbus[9]=On; // On an Modbus > var.Modbus[11]=var.PAuto; // Pauto an Modbus > } > } > if ports.get(15)==0 // Port P15 Ein > {On=1;var.Modbus[9]=On; // Anforderung von Schalter > var.PAuto=0;var.Modbus[11]=var.PAuto;} // Automatikfreigabe blockieren > > if var.pstatus==0 // Bei Pumpe aus > {if On>=1 // Bei Anforderung > {run Pump;} // Unterprogramm ausführen > } > else // Bei Pumpe im Zyklus > {On=0;var.Modbus[9]=On; // Anforderung Aus und an Modbus > var.PAuto=0; // Automatikfreigabe blockieren > var.Modbus[9]=On; // On an Modbus > var.Modbus[11]=var.PAuto; // Pauto an Modbus > } > } > </code> > > mfg > MaWo
Dateianhang: (.gif, .png., .jpg, .zip, .rar)
max. 256kB
max. 256kB