Stanze

ftComputing : Programme für die fischertechnik-Interfaces und -konstruktionskästen
  
ftComputing.de
Home
Back
Sitemap
Index
Links
Impressum
Mail
 

Programmbeispiel : Stanzmaschine

Modell Stanzmaschine aus Kasten Profi E-Tec

 Funktion :
Fahren in Ausgangslage Oben (I3, Schließer parallel zur Lichtschranke) Warten auf Start durch Taster an I1 (in Reihe geschaltet, Schließer), Fahren nach Unten bis entweder Lichtschranke an I3 (Öffner) oder Unten (I2, Schließer) erreicht, dann wieder nach Oben.

ROBO Version mit Verdrahtung wie eTec :
I1 : 2 x Taster, Schließer, Reihe
I2 : Reed-Kontakt
I3 : Lichtschranke, Endtaster Oben, Öffner
M1 : Motor, Rechts nach Oben

 

Const mStanze = 1
Const eObenLicht = 3
Const eZweiHand = 1
Const eUntenReed = 2

Sub Main
Do
SetMotor mStanze, ftiRechts
WaitForInput eObenLicht, False
SetMotor mStanze, ftiAus
WaitForInput eZweiHand
SetMotor mStanze, ftiLinks
Pause 300
Do
If Not GetInput(eObenLicht) Then
SetMotor mStanze, ftiAus
Exit Do
End If
Loop Until GetInput(eUntenReed)
Loop Until Finish
End Sub

Programmiersprache : VBA, erstellt mit vbaFish40.


Variante mit vier Eingängen

Anmerkungen :

  • Die ROBO Pro und VBA Versionen entsprechen der E-Tec Lösung. 
  • Die VBA Lösung erfordert eine neue Version von vbaFish40 (2.3.06) für die dort verwendete Methode WaitForInput eObenLicht, False. Es geht auch (stattdessen) mit 
    Do
    Loop While GetInput(eObenLicht)
  • In der ROBO Pro Variante mit vier Eingängen kann man erkennen, wie durch eine kleine Änderung und durch Nutzen der zusätzlichen Resourcen ein deutlich anderes Verhalten bei Unterbrechung der Lichtschranke erzielt wird. Da die Unterbrechung der Lichtschranke jetzt von der Endlage Oben unterschieden werden kann, ist es möglich gezielt nach Oben zu fahren. Eine Unterbrechung bei Stanze nach Oben findet nicht mehr statt.

Renesas C

UCHAR main(void) {
  InitFish();
  do {
    SetMotor(mStanze, dRechts);
    WaitForInput(eOben, FALSE);
    SetMotor(mStanze, dAus);
    WaitForInput(eZweiHand);
    SetMotor(mStanze, dLinks);
    FtDelay(300);
    do {
      if(!GetInput(eLicht)) break;
    } while(!GetInput(eUntenReed));
  } while(1);
  return(0);

}

Für Fan der C-Programmierung eine Download-Lösung wie die ROBO Pro Variante mit vier Eingängen. Siehe auch roboFish

Download

Alle Sources in eTec.ZIP

Stand : 03.03.2006