|
AufgabeWenn Taster E3 gedrückt wird, soll sich die Tür öffnen und nach 5 Sekunden wieder schließen. Türmotor an M1, Taster TürZu an E1, Taster TürAuf an E2 und Taster TürÖffnen an E3 Anwendungskonstanten mTuer = 1; mLampe = 2; Beschriftung der Textfelder clblTitel = 'Schiebetür 1'; fishMainbegin Was passiert da? ErweiterungenAnzeige des Betriebszustandes in der Statuszeile durch printStatus wie gehabt. Variable Zeiten : Anlegen eines Steuerwertes OffenZeit wie gehabt. Aufgabe 2Modell wie bisher. Es soll jetzt aber durch eine Lichtschranke verhindert werden, daß die Tür schließt, wenn Gegenstände oder Menschen in der Türöffnung sind (Lichtschranke ist unterbrochen).modifiziertes fishMainbegin Vor der Schleife wird wieder die Lichtschranke gestartet. Das Türschließen wird jetzt nicht mehr durch ein einzelnes fitWaitForInput festgestellt, sondern in einer zusätzlichen (geschachtelten) Schleife in der die Lichtschranke geprüft wird. Ist sie unterbrochen wird die Tüer geöffnet. Die Schleife wird beendet, wenn die Tür geschlossen ist. Anschließend wird auf eine ÖffnenAnforderung gewartet. Das TürÖffnen wird hier zweimal benötigt und wird deswegen in ein Unterprogramm gelegt : procedure TuerOeffnen(); Man sollte wieder die printStatus und den Faktor einfügen. Wodurch unterscheidet sich eigentlich die vorgestellte Lösung durch die im "Computing Starter" Begleitheft gestellte Aufgabe 2? |