Hallo zusammen,
habe einen Fahrstuhl programmiert und das Problem, dass ich mit Hilfe einer Liste die Anforderungen (Reihenfolge) auf den entsprechenden Etagen geregelt habe. Das klappt soweit auch ganz gut.
Allerdings fährt der FS nach der Abarbeitung der Anforderungen wieder ins DG (erste Anfoderung) es es gibt eine Fehlermeldung (siehe Anhang).
Was mache ich falsch? Habe ich einen Denkfehler oder was vergessen?
Hier mein Code:
public partial class Aufzugssteuerung : Form
{
bool _temp_tür_auf = false;
bool _temp_tür_zu = false;
bool _temp_Notruf = false;
int _anzahl_fahrten_wartung = 0;
List<String> mylist= new List<String>();
public Aufzugssteuerung()
{
InitializeComponent();
//Liste Abarbeiten {OGrauf, EGrauf, DG}
// gib erstes element
// führe Anfordewrung OG rauf aus ersters Element aus
// lösche element
}
private void los()
{
while (mylist.Count > 0)
{
String aktuell;
aktuell = mylist.ElementAt(0);
if (aktuell == "OGr") { ogr(); mylist.RemoveAt(0); };
if (aktuell == "2OGr") { og2r(); mylist.RemoveAt(0); };
if (aktuell == "2OGh") { og2h(); mylist.RemoveAt(0); };
if (aktuell == "1OGr") { og1r(); mylist.RemoveAt(0); };
if (aktuell == "1OGh") { og1h(); mylist.RemoveAt(0); };
if (aktuell == "EGh") { egh(); mylist.RemoveAt(0); };
// mylist.RemoveAt(0);
// aktuell = "";
}
}
public void ogr()
{
pictureBox_DG_runter.Visible = true;
pictureBox_DG_runter.Refresh();
fahrstuhl_zum_DG(this, EventArgs.Empty); // ??? Argumente
pictureBox_DG_runter.Visible = false;
pictureBox_DG_runter.Refresh();
}
public void og2r()
{
pictureBox_2OG_runter.Visible = true;
pictureBox_2OG_runter.Refresh();
fahrstuhl_zum_2OG(this, EventArgs.Empty); // ??? Argumente
pictureBox_2OG_runter.Visible = false;
pictureBox_2OG_runter.Refresh();
}
public void og2h()
{
pictureBox_2OG_hoch.Visible = true;
pictureBox_2OG_hoch.Refresh();
fahrstuhl_zum_2OG(this, EventArgs.Empty); // ??? Argumente
pictureBox_2OG_hoch.Visible = false;
pictureBox_2OG_hoch.Refresh();
}
public void og1r()
{
pictureBox_1OG_runter.Visible = true;
pictureBox_1OG_runter.Refresh();
fahrstuhl_zum_1OG(this, EventArgs.Empty); // ??? Argumente
pictureBox_1OG_runter.Visible = false;
pictureBox_1OG_runter.Refresh();
}
public void og1h()
{
pictureBox_1OG_hoch.Visible = true;
pictureBox_1OG_hoch.Refresh();
fahrstuhl_zum_1OG(this, EventArgs.Empty); // ??? Argumente
pictureBox_1OG_hoch.Visible = false;
pictureBox_1OG_hoch.Refresh();
}
public void egh()
{
pictureBox_EG_hoch.Visible = true;
pictureBox_EG_hoch.Refresh();
fahrstuhl_zum_EG(this, EventArgs.Empty); // ??? Argumente
pictureBox_EG_hoch.Visible = false;
pictureBox_EG_hoch.Refresh();
}
//og rauf()
//lampe eins an
//warte 3 sec
//}
private void anf_dg_runter(object sender, EventArgs e) // Anfoderungsbutton "Fahrt nach unten" im DG
{ mylist.Add("OGr"); los(); Application.DoEvents(); }
private void anf_2OG_runter(object sender, EventArgs e) // Anfoderungsbutton "Fahrt nach unten" im 2.OG
{ mylist.Add("2OGr"); los(); Application.DoEvents(); }
private void anf_2OG_hoch(object sender, EventArgs e) // Anfoderungsbutton "Fahrt nach oben" im 2.OG
{ mylist.Add("2OGh"); los(); Application.DoEvents(); }
private void anf_1OG_runter(object sender, EventArgs e) // Anfoderungsbutton "Fahrt nach unten" im 1.OG
{ mylist.Add("1OGr"); los(); Application.DoEvents(); }
private void anf_1OG_hoch(object sender, EventArgs e) // Anfoderungsbutton "Fahrt nach oben" im 1.OG
{ mylist.Add("1OGh"); los(); Application.DoEvents(); }
private void anf_EG_hoch(object sender, EventArgs e) // Anfoderungsbutton "Fahrt nach oben" im EG
{ mylist.Add("EGh"); los(); Application.DoEvents(); }
private void Aufzugssteuerung_Load(object sender, EventArgs e)
{}
private void radioButton1_CheckedChanged(object sender, EventArgs e)
{}
private void label1_Click(object sender, EventArgs e)
{}
private void radioButton9_CheckedChanged(object sender, EventArgs e)
{}
private void label5_Click(object sender, EventArgs e)
{ }
private void label4_Click_2(object sender, EventArgs e)
{}
private void label2_Click(object sender, EventArgs e)
{}
private void fahrstuhl_zum_DG(object sender, EventArgs e)
{
if ((radioButton_FS_EG.Checked == true) // Bedingung_1: wenn sich der Fahrstuhl im EG befindet
&& (checkBox_FS_Lichtschranke.Checked == false) // Bedingung_2: wenn die Lichtschranke nicht anspricht (keine Person dazwischen)
&& (checkBox_FS_Overload.Checked == false) // Bedingung_3: wenn keine Overload-Situation eingetreten ist
&& (checkBox_FS_Stromausfall.Checked == false) // Bedingung_4: wenn es momenan keinen Stromausfall gibt
&& (_temp_Notruf == false)) // Bedingung_5: ein Notruf wird momentan nicht ausgeführt
{
_temp_tür_auf = true; // Variable auf 1 setzen
tür_auf(); // Methode "tür_auf" aufrufen
verzögerungszeit_3sek(); // Methode "verzögerungszeit_3sek" aufrufen
_temp_tür_auf = false; // Variable auf 0 setzen
tür_auf(); // Methode "tür_auf" aufrufen
_temp_tür_zu = true; // Variable auf 1 setzen
tür_zu(); // Methode "tür_zu" aufrufen
radioButton_FS_1OG.Checked = true; // Aktiviere radioButton "1.OG" im Fahrstuhl
radioButton_EG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im Erdgeschoss
radioButton_1OG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im 1.Obergeschoss
radioButton_2OG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im 2.Obergeschoss
radioButton_DG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im Dachgeschoss
verzögerungszeit_3sek(); // Methode "verzögerungszeit_3sek" aufrufen
radioButton_FS_2OG.Checked = true; // Aktiviere radioButton "2.OG" im Fahrstuhl
radioButton_EG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im Erdgeschoss
radioButton_1OG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im 1.Obergeschoss
radioButton_2OG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im 2.Obergeschoss
radioButton_DG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im Dachgeschoss
verzögerungszeit_3sek(); // Methode "verzögerungszeit_3sek" aufrufen
_temp_tür_zu = false; // Variable auf 0 setzen
tür_zu(); // Methode "tür_zu" aufrufen
_temp_tür_auf = true; // Variable auf 1 setzen
tür_auf(); // Methode "tür_auf" aufrufen
radioButton_FS_DG.Checked = true; // Aktiviere radioButton "DG" im Fahrstuhl
radioButton_EG_DG.Checked = true; // Aktiviere radioButton "DG" im Erdgeschoss
radioButton_1OG_DG.Checked = true; // Aktiviere radioButton "DG" im 1.Obergeschoss
radioButton_2OG_DG.Checked = true; // Aktiviere radioButton "DG" im 2.Obergeschoss
radioButton_DG_DG.Checked = true; // Aktiviere radioButton "DG" im Dachgeschoss
ping(); // Methode "ping" aufrufen
_anzahl_fahrten_wartung++; // Variable um Faktor 1 für 1 Fahrt erhöhen
wartung(); // Methode "wartung" aufrufen
Application.DoEvents();
}
if ((radioButton_FS_1OG.Checked == true) // Bedingung_1: wenn sich der Fahrstuhl im 1.OG befindet
&& (checkBox_FS_Lichtschranke.Checked == false) // Bedingung_2: wenn die Lichtschranke nicht anspricht (keine Person dazwischen)
&& (checkBox_FS_Overload.Checked == false) // Bedingung_3: wenn keine Overload-Situation eingetreten ist
&& (checkBox_FS_Stromausfall.Checked == false) // Bedingung_4: wenn es momenan keinen Stromausfall gibt
&& (_temp_Notruf == false)) // Bedingung_5: ein Notruf wird momentan nicht ausgeführt
{
_temp_tür_auf = true; // Variable auf 1 setzen
tür_auf(); // Methode "tür_auf" aufrufen
verzögerungszeit_3sek(); // Methode "verzögerungszeit_3sek" aufrufen
_temp_tür_auf = false; // Variable auf 0 setzen
tür_auf(); // Methode "tür_auf" aufrufen
_temp_tür_zu = true; // Variable auf 1 setzen
tür_zu(); // Methode "tür_zu" aufrufen
radioButton_FS_2OG.Checked = true; // Aktiviere radioButton "2.OG" im Fahrstuhl
radioButton_EG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im Erdgeschoss
radioButton_1OG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im 1.Obergeschoss
radioButton_2OG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im 2.Obergeschoss
radioButton_DG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im Dachgeschoss
verzögerungszeit_3sek(); // Methode "verzögerungszeit_3sek" aufrufen
_temp_tür_zu = false; // Variable auf 0 setzen
tür_zu(); // Methode "tür_zu" aufrufen
_temp_tür_auf = true; // Variable auf 1 setzen
tür_auf(); // Methode "tür_auf" aufrufen
radioButton_FS_DG.Checked = true; // Aktiviere radioButton "DG" im Fahrstuhl
radioButton_EG_DG.Checked = true; // Aktiviere radioButton "DG" im Erdgeschoss
radioButton_1OG_DG.Checked = true; // Aktiviere radioButton "DG" im 1.Obergeschoss
radioButton_2OG_DG.Checked = true; // Aktiviere radioButton "DG" im 2.Obergeschoss
radioButton_DG_DG.Checked = true; // Aktiviere radioButton "DG" im Dachgeschoss
ping(); // Methode "ping" aufrufen
_anzahl_fahrten_wartung++; // Variable um Faktor 1 für 1 Fahrt erhöhen
wartung(); // Methode "wartung" aufrufen
Application.DoEvents();
}
if ((radioButton_FS_2OG.Checked == true) // Bedingung_1: wenn sich der Fahrstuhl im 2.OG befindet
&& (checkBox_FS_Lichtschranke.Checked == false) // Bedingung_2: wenn die Lichtschranke nicht anspricht (keine Person dazwischen)
&& (checkBox_FS_Overload.Checked == false) // Bedingung_3: wenn keine Overload-Situation eingetreten ist
&& (checkBox_FS_Stromausfall.Checked == false) // Bedingung_4: wenn es momenan keinen Stromausfall gibt
&& (_temp_Notruf == false)) // Bedingung_5: ein Notruf wird momentan nicht ausgeführt
{
_temp_tür_auf = true; // Variable auf 1 setzen
tür_auf(); // Methode "tür_auf" aufrufen
verzögerungszeit_3sek(); // Methode "verzögerungszeit_3sek" aufrufen
radioButton_FS_DG.Checked = true; // Aktiviere radioButton "DG" im Fahrstuhl
radioButton_EG_DG.Checked = true; // Aktiviere radioButton "DG" im Erdgeschoss
radioButton_1OG_DG.Checked = true; // Aktiviere radioButton "DG" im 1.Obergeschoss
radioButton_2OG_DG.Checked = true; // Aktiviere radioButton "DG" im 2.Obergeschoss
radioButton_DG_DG.Checked = true; // Aktiviere radioButton "DG" im Dachgeschoss
ping(); // Methode "ping" aufrufen
_anzahl_fahrten_wartung++; // Variable um Faktor 1 für 1 Fahrt erhöhen
wartung(); // Methode "wartung" aufrufen
Application.DoEvents();
}
if (radioButton_FS_DG.Checked == true) // wenn sich der Fahrstuhl im DG befindet
{ ping(); // Methode "ping" aufrufen
Application.DoEvents(); }
}
private void fahrstuhl_zum_2OG(object sender, EventArgs e)
{
if ((radioButton_FS_EG.Checked == true) // Bedingung_1: wenn sich der Fahrstuhl im EG befindet
&& (checkBox_FS_Lichtschranke.Checked == false) // Bedingung_2: wenn die Lichtschranke nicht anspricht (keine Person dazwischen)
&& (checkBox_FS_Overload.Checked == false) // Bedingung_3: wenn keine Overload-Situation eingetreten ist
&& (checkBox_FS_Stromausfall.Checked == false) // Bedingung_4: wenn es momenan keinen Stromausfall gibt
&& (_temp_Notruf == false)) // Bedingung_5: ein Notruf wird momentan nicht ausgeführt
{
_temp_tür_auf = true; // Variable auf 1 setzen
tür_auf(); // Methode "tür_auf" aufrufen
verzögerungszeit_3sek(); // Methode "verzögerungszeit_3sek" aufrufen
_temp_tür_auf = false; // Variable auf 0 setzen
tür_auf(); // Methode "tür_auf" aufrufen
_temp_tür_zu = true; // Variable auf 1 setzen
tür_zu(); // Methode "tür_zu" aufrufen
radioButton_FS_1OG.Checked = true; // Aktiviere radioButton "1.OG" im Fahrstuhl
radioButton_EG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im Erdgeschoss
radioButton_1OG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im 1.Obergeschoss
radioButton_2OG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im 2.Obergeschoss
radioButton_DG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im Dachgeschoss
verzögerungszeit_3sek(); // Methode "verzögerungszeit_3sek" aufrufen
_temp_tür_zu = false; // Variable auf 0 setzen
tür_zu(); // Methode "tür_zu" aufrufen
_temp_tür_auf = true; // Variable auf 1 setzen
tür_auf();
radioButton_FS_2OG.Checked = true; // Aktiviere radioButton "2.OG" im Fahrstuhl
radioButton_EG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im Erdgeschoss
radioButton_1OG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im 1.Obergeschoss
radioButton_2OG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im 2.Obergeschoss
radioButton_DG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im Dachgeschoss
ping(); // Methode "ping" aufrufen
_anzahl_fahrten_wartung++; // Variable um Faktor 1 für 1 Fahrt erhöhen
wartung(); // Methode "wartung" aufrufen
Application.DoEvents();
}
if ((radioButton_FS_1OG.Checked == true) // Bedingung_1: wenn sich der Fahrstuhl im 1.OG befindet
&& (checkBox_FS_Lichtschranke.Checked == false) // Bedingung_2: wenn die Lichtschranke nicht anspricht (keine Person dazwischen)
&& (checkBox_FS_Overload.Checked == false) // Bedingung_3: wenn keine Overload-Situation eingetreten ist
&& (checkBox_FS_Stromausfall.Checked == false) // Bedingung_4: wenn es momenan keinen Stromausfall gibt
&& (_temp_Notruf == false)) // Bedingung_5: ein Notruf wird momentan nicht ausgeführt
{
_temp_tür_auf = true; // Variable auf 1 setzen
tür_auf(); // Methode "tür_auf" aufrufen
verzögerungszeit_3sek(); // Methode "verzögerungszeit_3sek" aufrufen
radioButton_FS_2OG.Checked = true; // Aktiviere radioButton "2.OG" im Fahrstuhl
radioButton_EG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im Erdgeschoss
radioButton_1OG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im 1.Obergeschoss
radioButton_2OG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im 2.Obergeschoss
radioButton_DG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im Dachgeschoss
ping(); // Methode "ping" aufrufen
_anzahl_fahrten_wartung++; // Variable um Faktor 1 für 1 Fahrt erhöhen
wartung(); // Methode "wartung" aufrufen
Application.DoEvents();
}
if (radioButton_FS_2OG.Checked == true) // wenn sich der Fahrstuhl im 2.OG befindet
{ ping(); // Methode "ping" aufrufen
Application.DoEvents(); }
if ((radioButton_FS_DG.Checked == true) // Bedingung_1: wenn sich der Fahrstuhl im DG befindet
&& (checkBox_FS_Lichtschranke.Checked == false) // Bedingung_2: wenn die Lichtschranke nicht anspricht (keine Person dazwischen)
&& (checkBox_FS_Overload.Checked == false) // Bedingung_3: wenn keine Overload-Situation eingetreten ist
&& (checkBox_FS_Stromausfall.Checked == false) // Bedingung_4: wenn es momenan keinen Stromausfall gibt
&& (_temp_Notruf == false)) // Bedingung_5: ein Notruf wird momentan nicht ausgeführt
{
_temp_tür_auf = true; // Variable auf 1 setzen
tür_auf(); // Methode "tür_auf" aufrufen
verzögerungszeit_3sek(); // Methode "verzögerungszeit_3sek" aufrufen
radioButton_FS_2OG.Checked = true; // Aktiviere radioButton "2.OG" im Fahrstuhl
radioButton_EG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im Erdgeschoss
radioButton_1OG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im 1.Obergeschoss
radioButton_2OG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im 2.Obergeschoss
radioButton_DG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im Dachgeschoss
ping(); // Methode "ping" aufrufen
_anzahl_fahrten_wartung++; // Variable um Faktor 1 für 1 Fahrt erhöhen
wartung(); // Methode "wartung" aufrufen
Application.DoEvents();
}
}
private void fahrstuhl_zum_1OG(object sender, EventArgs e)
{
if ((radioButton_FS_EG.Checked == true) // Bedingung_1: wenn sich der Fahrstuhl im EG befindet
&& (checkBox_FS_Lichtschranke.Checked == false) // Bedingung_2: wenn die Lichtschranke nicht anspricht (keine Person dazwischen)
&& (checkBox_FS_Overload.Checked == false) // Bedingung_3: wenn keine Overload-Situation eingetreten ist
&& (checkBox_FS_Stromausfall.Checked == false) // Bedingung_4: wenn es momenan keinen Stromausfall gibt
&& (_temp_Notruf == false)) // Bedingung_5: ein Notruf wird momentan nicht ausgeführt
{
_temp_tür_auf = true; // Variable auf 1 setzen
tür_auf(); // Methode "tür_auf" aufrufen
verzögerungszeit_3sek(); // Methode "verzögerungszeit_3sek" aufrufen
radioButton_FS_1OG.Checked = true; // Aktiviere radioButton "1.OG" im Fahrstuhl
radioButton_EG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im Erdgeschoss
radioButton_1OG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im 1.Obergeschoss
radioButton_2OG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im 2.Obergeschoss
radioButton_DG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im Dachgeschoss
ping(); // Methode "ping" aufrufen
_anzahl_fahrten_wartung++; // Variable um Faktor 1 für 1 Fahrt erhöhen
wartung(); // Methode "wartung" aufrufen
Application.DoEvents();
}
if (radioButton_FS_1OG.Checked == true) // wenn sich der Fahrstuhl im 2.OG befindet
{ ping(); // Methode "ping" aufrufen
Application.DoEvents(); }
if ((radioButton_FS_2OG.Checked == true) // Bedingung_1: wenn sich der Fahrstuhl im 2.OG befindet
&& (checkBox_FS_Lichtschranke.Checked == false) // Bedingung_2: wenn die Lichtschranke nicht anspricht (keine Person dazwischen)
&& (checkBox_FS_Overload.Checked == false) // Bedingung_3: wenn keine Overload-Situation eingetreten ist
&& (checkBox_FS_Stromausfall.Checked == false) // Bedingung_4: wenn es momenan keinen Stromausfall gibt
&& (_temp_Notruf == false)) // Bedingung_5: ein Notruf wird momentan nicht ausgeführt
{
_temp_tür_auf = true; // Variable auf 1 setzen
tür_auf(); // Methode "tür_auf" aufrufen
verzögerungszeit_3sek(); // Methode "verzögerungszeit_3sek" aufrufen
radioButton_FS_1OG.Checked = true; // Aktiviere radioButton "1.OG" im Fahrstuhl
radioButton_EG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im Erdgeschoss
radioButton_1OG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im 1.Obergeschoss
radioButton_2OG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im 2.Obergeschoss
radioButton_DG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im Dachgeschoss
ping(); // Methode "ping" aufrufen
_anzahl_fahrten_wartung++; // Variable um Faktor 1 für 1 Fahrt erhöhen
wartung(); // Methode "wartung" aufrufen
Application.DoEvents();
}
if ((radioButton_FS_DG.Checked == true) // Bedingung_1: wenn sich der Fahrstuhl im DG befindet
&& (checkBox_FS_Lichtschranke.Checked == false) // Bedingung_2: wenn die Lichtschranke nicht anspricht (keine Person dazwischen)
&& (checkBox_FS_Overload.Checked == false) // Bedingung_3: wenn keine Overload-Situation eingetreten ist
&& (checkBox_FS_Stromausfall.Checked == false) // Bedingung_4: wenn es momenan keinen Stromausfall gibt
&& (_temp_Notruf == false)) // Bedingung_5: ein Notruf wird momentan nicht ausgeführt
{
_temp_tür_auf = true; // Variable auf 1 setzen
tür_auf(); // Methode "tür_auf" aufrufen
verzögerungszeit_3sek(); // Methode "verzögerungszeit_3sek" aufrufen
_temp_tür_auf = false; // Variable auf 0 setzen
tür_auf(); // Methode "tür_auf" aufrufen
_temp_tür_zu = true; // Variable auf 1 setzen
tür_zu(); // Methode "tür_zu" aufrufen
radioButton_FS_2OG.Checked = true; // Aktiviere radioButton "2.OG" im Fahrstuhl
radioButton_EG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im Erdgeschoss
radioButton_1OG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im 1.Obergeschoss
radioButton_2OG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im 2.Obergeschoss
radioButton_DG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im Dachgeschoss
verzögerungszeit_3sek(); // Methode "verzögerungszeit_3sek" aufrufen
_temp_tür_zu = false; // Variable auf 1 setzen
tür_zu(); // Methode "tür_zu" aufrufen
_temp_tür_auf = true; // Variable auf 0 setzen
tür_auf(); // Methode "tür_auf" aufrufen
radioButton_FS_1OG.Checked = true; // Aktiviere radioButton "1.OG" im Fahrstuhl
radioButton_EG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im Erdgeschoss
radioButton_1OG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im 1.Obergeschoss
radioButton_2OG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im 2.Obergeschoss
radioButton_DG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im Dachgeschoss
ping(); // Methode "ping" aufrufen
_anzahl_fahrten_wartung++; // Variable um Faktor 1 für 1 Fahrt erhöhen
wartung(); // Methode "wartung" aufrufen
Application.DoEvents();
}
}
private void fahrstuhl_zum_EG(object sender, EventArgs e)
{
if (radioButton_FS_EG.Checked == true) // wenn sich der Fahrstuhl im EG befindet
{
ping(); // Methode "ping" aufrufen
Application.DoEvents();
}
if ((radioButton_FS_1OG.Checked == true) // Bedingung_1: wenn sich der Fahrstuhl im 1.OG befindet
&& (checkBox_FS_Lichtschranke.Checked == false) // Bedingung_2: wenn die Lichtschranke nicht anspricht (keine Person dazwischen)
&& (checkBox_FS_Overload.Checked == false) // Bedingung_3: wenn keine Overload-Situation eingetreten ist
&& (checkBox_FS_Stromausfall.Checked == false) // Bedingung_4: wenn es momenan keinen Stromausfall gibt
&& (_temp_Notruf == false)) // Bedingung_5: ein Notruf wird momentan nicht ausgeführt
{
_temp_tür_auf = true; // Variable auf 1 setzen
tür_auf(); // Methode "tür_auf" aufrufen
verzögerungszeit_3sek(); // Methode "verzögerungszeit_3sek" aufrufen
radioButton_FS_EG.Checked = true; // Aktiviere radioButton "EG" im Fahrstuhl
radioButton_EG_EG.Checked = true; // Aktiviere radioButton "EG" im Erdgeschoss
radioButton_1OG_EG.Checked = true; // Aktiviere radioButton "EG" im 1.Obergeschoss
radioButton_2OG_EG.Checked = true; // Aktiviere radioButton "EG" im 2.Obergeschoss
radioButton_DG_EG.Checked = true; // Aktiviere radioButton "EG" im Dachgeschoss
ping(); // Methode "ping" aufrufen
_anzahl_fahrten_wartung++; // Variable um Faktor 1 für 1 Fahrt erhöhen
wartung(); // Methode "wartung" aufrufen
Application.DoEvents();
}
if ((radioButton_FS_2OG.Checked == true) // Bedingung_1: wenn sich der Fahrstuhl im 2.OG befindet
&& (checkBox_FS_Lichtschranke.Checked == false) // Bedingung_2: wenn die Lichtschranke nicht anspricht (keine Person dazwischen)
&& (checkBox_FS_Overload.Checked == false) // Bedingung_3: wenn keine Overload-Situation eingetreten ist
&& (checkBox_FS_Stromausfall.Checked == false) // Bedingung_4: wenn es momenan keinen Stromausfall gibt
&& (_temp_Notruf == false)) // Bedingung_5: ein Notruf wird momentan nicht ausgeführt
{
_temp_tür_auf = true; // Variable auf 1 setzen
tür_auf(); // Methode "tür_auf" aufrufen
verzögerungszeit_3sek(); // Methode "verzögerungszeit_3sek" aufrufen
_temp_tür_auf = false; // Variable auf 0 setzen
tür_auf(); // Methode "tür_auf" aufrufen
_temp_tür_zu = true; // Variable auf 1 setzen
tür_zu(); // Methode "tür_zu" aufrufen
radioButton_FS_1OG.Checked = true; // Aktiviere radioButton "1.OG" im Fahrstuhl
radioButton_EG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im Erdgeschoss
radioButton_1OG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im 1.Obergeschoss
radioButton_2OG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im 2.Obergeschoss
radioButton_DG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im Dachgeschoss
verzögerungszeit_3sek(); // Methode "verzögerungszeit_3sek" aufrufen
_temp_tür_zu = false; // Variable auf 1 setzen
tür_zu(); // Methode "tür_zu" aufrufen
_temp_tür_auf = true; // Variable auf 0 setzen
tür_auf(); // Methode "tür_auf" aufrufen
radioButton_FS_EG.Checked = true; // Aktiviere radioButton "EG" im Fahrstuhl
radioButton_EG_EG.Checked = true; // Aktiviere radioButton "EG" im Erdgeschoss
radioButton_1OG_EG.Checked = true; // Aktiviere radioButton "EG" im 1.Obergeschoss
radioButton_2OG_EG.Checked = true; // Aktiviere radioButton "EG" im 2.Obergeschoss
radioButton_DG_EG.Checked = true; // Aktiviere radioButton "EG" im Dachgeschoss
ping(); // Methode "ping" aufrufen
_anzahl_fahrten_wartung++; // Variable um Faktor 1 für 1 Fahrt erhöhen
wartung(); // Methode "wartung" aufrufen
Application.DoEvents();
}
if ((radioButton_FS_DG.Checked == true) // Bedingung_1: wenn sich der Fahrstuhl im DG befindet
&& (checkBox_FS_Lichtschranke.Checked == false) // Bedingung_2: wenn die Lichtschranke nicht anspricht (keine Person dazwischen)
&& (checkBox_FS_Overload.Checked == false) // Bedingung_3: wenn keine Overload-Situation eingetreten ist
&& (checkBox_FS_Stromausfall.Checked == false) // Bedingung_4: wenn es momenan keinen Stromausfall gibt
&& (_temp_Notruf == false)) // Bedingung_5: ein Notruf wird momentan nicht ausgeführt
{
_temp_tür_auf = true; // Variable auf 1 setzen
tür_auf(); // Methode "tür_auf" aufrufen
verzögerungszeit_3sek(); // Methode "verzögerungszeit_3sek" aufrufen
_temp_tür_auf = false; // Variable auf 0 setzen
tür_auf(); // Methode "tür_auf" aufrufen
_temp_tür_zu = true; // Variable auf 1 setzen
tür_zu(); // Methode "tür_zu" aufrufen
radioButton_FS_2OG.Checked = true; // Aktiviere radioButton "2.OG" im Fahrstuhl
radioButton_EG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im Erdgeschoss
radioButton_1OG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im 1.Obergeschoss
radioButton_2OG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im 2.Obergeschoss
radioButton_DG_2OG.Checked = true; // Aktiviere radioButton "2.OG" im Dachgeschoss
verzögerungszeit_3sek(); // Methode "verzögerungszeit_3sek" aufrufen
radioButton_FS_1OG.Checked = true; // Aktiviere radioButton "1.OG" im Fahrstuhl
radioButton_EG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im Erdgeschoss
radioButton_1OG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im 1.Obergeschoss
radioButton_2OG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im 2.Obergeschoss
radioButton_DG_1OG.Checked = true; // Aktiviere radioButton "1.OG" im Dachgeschoss
verzögerungszeit_3sek(); // Methode "verzögerungszeit_3sek" aufrufen
_temp_tür_zu = false; // Variable auf 1 setzen
tür_zu(); // Methode "tür_zu" aufrufen
_temp_tür_auf = true; // Variable auf 0 setzen
tür_auf(); // Methode "tür_auf" aufrufen
radioButton_FS_EG.Checked = true; // Aktiviere radioButton "EG" im Fahrstuhl
radioButton_EG_EG.Checked = true; // Aktiviere radioButton "EG" im Erdgeschoss
radioButton_1OG_EG.Checked = true; // Aktiviere radioButton "EG" im 1.Obergeschoss
radioButton_2OG_EG.Checked = true; // Aktiviere radioButton "EG" im 2.Obergeschoss
radioButton_DG_EG.Checked = true; // Aktiviere radioButton "EG" im Dachgeschoss
ping(); // Methode "ping" aufrufen
_anzahl_fahrten_wartung++; // Variable um Faktor 1 für 1 Fahrt erhöhen
wartung(); // Methode "wartung" aufrufen
Application.DoEvents();
}
}
private void tür_auf()
{
if (_temp_tür_auf == true)
{
pictureBox_zu_FS.Visible = false;
pictureBox_auf_FS.Visible = true;
pictureBox_auf_FS.Refresh();
}
else
{
pictureBox_auf_FS.Visible = false;
pictureBox_auf_FS.Refresh();
}
}
private void tür_zu()
{
if (_temp_tür_zu == true)
{
pictureBox_auf_FS.Visible = false;
pictureBox_zu_FS.Visible = true;
pictureBox_zu_FS.Refresh();
}
else
{
pictureBox_zu_FS.Visible = false;
pictureBox_zu_FS.Refresh();
}
}
private void verzögerungszeit_3sek() // Verzögerungszeit 3 Sekunden
{
double zeit = DateTime.Now.Ticks + (3 * 10000000);
while (DateTime.Now.Ticks <= zeit)
{ Application.DoEvents(); }
}
private void ping() // Ping-Ausführung
{
double zeit = DateTime.Now.Ticks + (1 * 10000000); // Ping-Ausführungszeit 1 Sekunde
while (DateTime.Now.Ticks <= zeit)
{
textBox_FS_Ping.Visible = true;
Application.DoEvents();
}
textBox_FS_Ping.Visible = false;
}
private void notruf(object sender, EventArgs e) // Notruf-Ausführung
{
_temp_Notruf = true; // Variable auf 1 setzen
double zeit = DateTime.Now.Ticks + (3 * 10000000); // Anzeigedauer textBox_FS_Notruf = 3 Sekunden
while (DateTime.Now.Ticks <= zeit)
{
textBox_FS_Notruf.Visible = true;
Application.DoEvents();
}
textBox_FS_Notruf.Visible = false;
double zeit1 = DateTime.Now.Ticks + (5 * 10000000); // Anzeigedauer textBox_FS_Notruf_Hilfe = 5 Sekunden
while (DateTime.Now.Ticks <= zeit1)
{
textBox_FS_Notruf_Hilfe.Visible = true;
Application.DoEvents();
}
textBox_FS_Notruf_Hilfe.Visible = false;
_temp_Notruf = false; // Variable auf 0 setzen
}
private void brand(object sender, EventArgs e) // Brandfall
{
fahrstuhl_zum_EG(this, EventArgs.Empty);
}
private void wartung() // Wartungsausführung
{
if (_anzahl_fahrten_wartung >= 5) // Bedingung: mehr als 5 Fahrten durchgeführt
{ textBox_FS_Wartung.Visible = true; } // Aktiviere "textBox_FS_Wartung"
}
private void tür_auf_button(object sender, EventArgs e)
{
if ((checkBox_FS_Overload.Checked == false) // Bedingung_1: wenn keine Overload-Situation eingetreten ist
&& (checkBox_FS_Stromausfall.Checked == false) // Bedingung_2: wenn es momenan keinen Stromausfall gibt
&& (_temp_Notruf == false)) // Bedingung_3: ein Notruf wird momentan nicht ausgeführt
{
_temp_tür_auf = true; // Variable auf 1 setzen
tür_auf(); // Methode "tür_auf" aufrufen
ping(); // Methode "ping" aufrufen
verzögerungszeit_3sek(); // Methode "verzögerungszeit_3sek" aufrufen
_temp_tür_auf = false; // Variable auf 0 setzen
Application.DoEvents();
}
}
private void tür_zu_button(object sender, EventArgs e)
{
if ((checkBox_FS_Overload.Checked == false) // Bedingung_1: wenn keine Overload-Situation eingetreten ist
&& (checkBox_FS_Stromausfall.Checked == false) // Bedingung_2: wenn es momenan keinen Stromausfall gibt
&& (_temp_Notruf == false) // Bedingung_3: ein Notruf wird momentan nicht ausgeführt
&& (checkBox_FS_Lichtschranke.Checked == false)) // Bedingung_4: wenn die Lichtschranke nicht anspricht (keine Person dazwischen)
{
_temp_tür_zu = true; // Variable auf 1 setzen
tür_zu(); // Methode "tür_zu" aufrufen
verzögerungszeit_3sek(); // Methode "verzögerungszeit_3sek" aufrufen
_temp_tür_zu = false; // Variable auf 0 setzen
Application.DoEvents();
}
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
}
}
}