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

Re: Einsteigerfrage multiples Zählgerät mit CC2 Kategorie: Programmierung (von Anderl, http://andy1tech.com - 25.11.2003 15:51)
Als Antwort auf Re: Einsteigerfrage multiples Zählgerät mit CC2 von Tom - 25.11.2003 12:04

> Hallo Anderl,
>
> > 1.) Wie kann ich das im Buch beschriebene Programm Impulszähler soweit aufpoppen, damit
> > ich acht Eingänge abfragen kann
>
> Ich nehme an Du benutzt das Beispiel aus Messen,Steuern und Regeln mit der C-Control II Seite
> 39. Benutze einfach mehrer threads z.B.
> int counter;
>  
>
> int c1;
> int c2;
>
> thread counter1
> {
>  loop
>  {
>  wait (ports.get(8));
>  wait ( not  (ports.get(8)));
>  c1=c1+1;
>  sleep 1;
>  }
> }
>
> thread counter2
> {
>  loop
>  {
>  wait (ports.get(9));
>  wait ( not  (ports.get(9)));
>  c2=c2+1;
>  sleep 1;
>  }
> }
>
> usw.
>
> im thread main dann
>
> thread main
> {
>  int counter12;
>  run counter1;
>  run counter2;
>  loop
>  {
>  counter12=c1+c2;
>  }
> }
>
> >, bzw. wie kann ich die Einzelergebnisse von zwei Eingängen
> > zusammenfassen?
>
> ist ĂĽber die globalen Variablen C1 C2 schon geschehen.
> Wenn das Zählen nur bei laufendem Sortierband geschehen soll
>  
>  wait (ports.get(8) and ports.get(0));
>
> wobei ports.get(0) den Zustand des laufenden Sortierband wiederspiegelt, wobei
> Port 0 dann während des ganzen Zählvorganges 1 bleiben mu�.
>
>
> > 2.) FĂĽr die Weiterverarbeitung im PC verwende ich ein VB Programm mit vbTerm. Kann die CC2
> > die erfassten Daten in realtime an den PC senden?
>
> und wieder ein eigener thread der das erledigt:
>
> thread senden
> {
>   hwcom.init();
>   hwcom.setspeed(hwcom.SPEED_9600);
>   string s;
>   loop
>   {
>     wait hwcom.ready();
>     s="";
>     str.putint(s,c1);
>     hwcom.print(s);
>     hwcom.ret();
>     wait hwcom.ready();
>     s="";
>     str.putint(s,c2);
>     hwcom.print(s);
>     hwcom.ret();
>     sleep 100;
>   }
> }
>
> wenn Du Summen senden willst dann einfach vorher addieren.
>
>
> > 3.) GenĂĽgt der im CC2 vorgesehene Speicherplatz aus zur Erfassung der Daten? Pro Tag werden
> >  etwa 3 Zählvorgänge gestartet, nach jedem abgeschlossenen Zählvorgang kann der
> > Speicherplatz geleert werden.  
>
> Das hab ich jetzt nicht so ganz verstanden da ja eigentlich nur die 8 Zähler laufen, die Du entweder
> über einen Eingang löscht oder per seriellem Befehl vom PC.
>
> Ich hab den Code einfach nur so runtergeschrieben ohne zu testet, aber ich hoffe es hilft
> Dir weiter.
>
> mfg Tom
>
>
>
Hallo Tom,

erst mal tausend Dank fĂĽr die prompte Antwort.

Ja, ich meinte das Beispiel aus dem Buch MSR mit C-Control.

Ich werde es gleich heute noch ausprobieren.
Ich halte Dich auf dem Laufenden, denn es treten mit Sicherheit noch mehr Fragen auf.


GrĂĽĂ?le
Anderl

Meine Seite: http://andy1tech.com


    Antwort schreiben


Antworten: