unit Elevator;
interface
uses
System.SysUtils, System.Classes,
Vcl.Controls;
type
TElevatorStart =
procedure (
var starten,motorschutz,stern_ein,
dreieck_ein,motor_ein,schief_oben,schief_unten,drehzahl: boolean)
of object;
TElevator =
class(TGraphicControl)
private
{ Private-Deklarationen }
//Eingänge nur lesen
FAdr_Motorschutz: Integer;
.......
.......
//Ausgänge lesen und schreiben
FStart:Boolean;
........
........
FDoStart :TElevatorStart;
protected
{ Protected-Deklarationen }
procedure Paint;
override;
public
{ Public-Deklarationen }
constructor Create(AOwner: TComponent);
override;
destructor Destroy;
override;
published
{ Published-Deklarationen }
//hiermit wird das im Obkektinspektor angezeigt
property Meldung_Motorschutz: boolean
read FMeldung_Motorschutz
write FMeldung_Motorschutz;
property Meldung_Motor_Ein : boolean
read FMeldung_Motor_Ein
write FMeldung_Motor_Ein;
property Meldung_Stern_Ein : boolean
read FMeldung_Stern_Ein
write FMeldung_Stern_Ein;
property Meldung_Dreieck_Ein : boolean
read FMeldung_Dreieck_Ein
write FMeldung_Dreieck_Ein;
property Meldung_Schief_o : boolean
read FMeldung_Schief_o
write FMeldung_Schief_o;
property Meldung_Schief_u : boolean
read FMeldung_Schief_u
write FMeldung_Schief_u;
property Meldung_Drehzahl : boolean
read FMeldung_Drehzahl
write FMeldung_Drehzahl;
//Methoden
property dostart : TElevatorStart
read FDOStart
write FDOStart;
end;
procedure Register;
implementation
procedure Register;
begin
RegisterComponents('
SPS', [TElevator]);
end;
constructor TElevator.Create(AOwner: TComponent);
begin
inherited;
FStart := true;
end;
destructor TElevator.Destroy;
begin
// Hier deine Freigaben
inherited;
end;
procedure TElevator.Paint;
begin
inherited;
end;
procedure TElevator.dostart(
var starten,motorschutz,stern_ein,
dreieck_ein,motor_ein,schief_oben,schief_unten,drehzahl: boolean);
begin
FStart := starten;
FMeldung_Motorschutz := motorschutz;
FMeldung_Motor_Ein := motor_ein;
FMeldung_Stern_Ein := stern_ein;
FMeldung_Dreieck_Ein := dreieck_ein;
FMeldung_Schief_o:= schief_oben;
FMeldung_Schief_u:= schief_unten;
FMeldung_Drehzahl:= drehzahl;
end;