15398 lines
595 KiB
Plaintext
Executable File
15398 lines
595 KiB
Plaintext
Executable File
//**********************************************************************
|
|
//* Nacharbeitssource fuer INPA MSD85 L6.IPS 8-Zyl.
|
|
//**********************************************************************
|
|
|
|
//* History
|
|
//* 21.02.2007 v0.001 ml Inpa zu SGBDen MSD87_R0, MSD87_L0 aus INPA-Skript MSD87 V0.201 ml.
|
|
//* 18.06.2007 v0.010 ml Ident-screen und Dateiausgabe um Softwareinformation erweitert.
|
|
//* 17.08.2007 v0.011 ml Ersetzen der Softwareinformation-Routine in Ident um einfache Textinfofeld-Ausgabe.
|
|
//* 20.08.2007 v0.012 ml Modifikation des EWS4-Abgleichs nach Input v. U.Schlachetzki. Jetzt auch lauffaehig fuer 6.zyl-Motoren.
|
|
//* 10.09.2007 v0.013 ml Entfernen des alten EWS3-Abgleichs.
|
|
//* 25.07.2007 v0.014 ml Anpassung von s_ident und OutputIDENT2File.
|
|
//* 08.10.2007 v0.015 ml Umstellung von s_ident auf verbesserte Infofeld-Ausgabe
|
|
//* 10.10.2007 v0.100 ml Ersetzen der alten STATUS-Jobs mit den entsprechenden MESSWERTBLOCK_LESEN-Jobaufrufen unter m_iostatus.
|
|
//* 16.10.2007 v0.101 ml Ersetzen des STOP_SYSTEMCHECK_EVAUSBL mit START_SYSTEMCHECK_EVAUSBL und Parameter "0".
|
|
//* 29.10.2007 v0.110 ml Ersetzen der alten GLF-Steuerung mit neuem Systemcheck und Steuern-Dialog.
|
|
//* Hinzufuegen des Windkanalmode ueber eine Repeaterstatemachine (universell fuer pollende Aufgaben nutzbar).
|
|
//* 05.11.2007 v0.120 ml Ersetzen der Status-Jobs mit MESSWERTBLOCK_LESEN unter m_status.
|
|
//* 14.11.2007 v0.200 ml Tausch der Bearbeitungsreihenfolge beim EWS4-Abgleich von Master-Slave zu Slave-Master.
|
|
//* Modifikation des EWS-Abgleichs fuer Motoren mit nur einem SG.
|
|
//* 27.11.2007 v0.300 ml Anpassen auf MSD85L6.
|
|
//* 15.01.2008 v1.000 ml Freigabeversion MSD85L6
|
|
//* 17.01.2008 v1.001 jm Angepasst an Standardinclude
|
|
|
|
#pragma winedit
|
|
|
|
#include "inpa.h" // frueher: #include " ...\sgdat\inpa.h"
|
|
#include "bmw_std.h" // frueher: #include " ...\sgdat\bmw_std.h"
|
|
string package="3.01";
|
|
// Version, Verantwortung, Steuergerät
|
|
string titel = ""; // Titel Nacharbeitsprogramm
|
|
string version = "1.001"; // Version Nacharbeitsprogramm
|
|
string origin = "EA-41"; // Verantwortung Nacharbeitsprogramm
|
|
string gruppe = "G_MOTOR"; // Gruppendatei
|
|
bool EAversion = FALSE ; // Abfrage EA-Version TRUE / FALSE fuer Ausblendung nicht-EA-Funktionalitaet.
|
|
|
|
//******************************************************************************
|
|
|
|
// Variablen fuer s_ident- und OutputIdent-Ausgabe.
|
|
string info_feld_1 = "" ;
|
|
string info_feld_2 = "" ;
|
|
string info_feld_3 = "" ;
|
|
|
|
// SGBD-Variablen, unterstuetzen Umschaltung Bank rechts/links
|
|
// DME-Bezeichnervariablen
|
|
string sgbd = "" ; // Steuergerät
|
|
string currentSGBD = ""; // Im Auswahlmenu ausgewaehlte SGBD.
|
|
string dme_text_r = ""; // Steuergerätname fuer lesbare Ausgabe
|
|
string dme_text_l = ""; // Steuergerätname fuer lesbare Ausgabe
|
|
string dme_text = ""; // aktuell benutzter Steuergerätname
|
|
string SG_Verbund_text = "" ; // Gesamtname der SG-Konfiguration
|
|
int zylinderZahl = 8; // Anzahl der Zylinder pro Bank. Wichtig für ev_ausbl.
|
|
|
|
// Entsprechende Steuergeräteadressen
|
|
int sg_adr_r = 0x12;
|
|
int sg_adr_l = 0x13;
|
|
|
|
// Flag für die Koordination der beiden DMEen (Fehlerspeicher lesen...)
|
|
int zurAnderenDmeUmgeschaltet = 0 ;
|
|
|
|
// Dateispeicherpfad, wird bei inpaInit belegt.
|
|
string txtPfad = "" ;
|
|
string txtPfad_l = "" ;
|
|
string txtPfad_r = "" ;
|
|
|
|
// Variablen, in welchen die jew. SGBD-Namen gespeichert werden.
|
|
string dme_r = "" ;
|
|
string dme_l = "" ;
|
|
//******************************************************************************
|
|
|
|
//*** Repeater-Variablen
|
|
int startzeitGlobal = 0;
|
|
int laufzeitGlobal = 0;
|
|
int chosenRepeater = 0;
|
|
bool repeaterSwitch = FALSE;
|
|
string flicker = "x";
|
|
//***
|
|
|
|
int sg_adr = 0x12; // gefundene SG-Adressen
|
|
string datei = ""; // Filename zum Abspeichern der Daten
|
|
string datei_ident = ""; // Filename zum Abspeichern der IDENT-Daten
|
|
string datei_fs = ""; // Filename zum Abspeichern des FehlerSpeichers
|
|
string datei_ddli = ""; // Filename zum Abspeichern der DDLI-Liste
|
|
string datei_nn = ""; // Filename zum Abspeichern der Adaptionswerte aus neuronalen Netzen
|
|
string datei_rbm = ""; // Filename zum Abspeichern der RBM-Werte
|
|
string datei_sp = ""; // Filename zum Abspeichern der Speicherzellen-Werte
|
|
string datei_uds = ""; // Filename zum Abspeichern der Auftrags- und Antworttelegramme aus UDS-Test
|
|
int f_anzahl; // Bildschirm loeschen, wenn Anzahl Fehler sich aendert
|
|
int i_zeilen; // Drucken in File, Kurz - Detail - Freeze Frame
|
|
string s_menue = ""; // Drucken in File, Kurz - Detail - Freeze Frame
|
|
string zeile_hex; // Drucken in File, _TEL_ANTWORT
|
|
string FehlerOrtNr; // BildschirmAufbau und Drucken in File Kurz
|
|
string FehlerOrtText; // BildschirmAufbau und Drucken in File Kurz
|
|
string zeile0; // BildschirmAufbau und Drucken in File Kurz
|
|
string zeile1; // BildschirmAufbau und Drucken in File
|
|
string zeile2; // BildschirmAufbau und Drucken in File
|
|
string zeile3; // BildschirmAufbau und Drucken in File
|
|
string zeile4; // BildschirmAufbau und Drucken in File
|
|
string zeile5; // BildschirmAufbau und Drucken in File
|
|
string zeile6; // BildschirmAufbau und Drucken in File Detail
|
|
string zeile7; // BildschirmAufbau und Drucken in File
|
|
string zeile8; // BildschirmAufbau und Drucken in File
|
|
string zeile9; // BildschirmAufbau und Drucken in File
|
|
string zeile10; // BildschirmAufbau und Drucken in File
|
|
string zeile11; // BildschirmAufbau und Drucken in File
|
|
string zeile12; // BildschirmAufbau und Drucken in File Freeze Frame
|
|
string zeile13; // BildschirmAufbau und Drucken in File
|
|
string zeile14; // BildschirmAufbau und Drucken in File
|
|
string zeile15; // BildschirmAufbau und Drucken in File
|
|
string zeile16; // BildschirmAufbau und Drucken in File
|
|
string zeile17; // BildschirmAufbau und Drucken in File
|
|
string zeile18; // BildschirmAufbau und Drucken in File
|
|
string zeile19; // BildschirmAufbau und Drucken in File
|
|
string zeile20; // BildschirmAufbau und Drucken in File
|
|
string zeile21; // BildschirmAufbau und Drucken in File
|
|
string zeile22; // BildschirmAufbau und Drucken in File
|
|
string zeile23; // BildschirmAufbau und Drucken in File
|
|
string zeile24; // BildschirmAufbau und Drucken in File
|
|
string zeile25; // BildschirmAufbau und Drucken in File
|
|
string zeile26; // BildschirmAufbau und Drucken in File
|
|
string zeile27; // BildschirmAufbau und Drucken in File
|
|
string zeile28; // BildschirmAufbau und Drucken in File
|
|
string zeile29; // BildschirmAufbau und Drucken in File
|
|
string zeilezusatz0; // BildschirmAufbau und Drucken im File für Reset-Fehler
|
|
string zeilezusatz1; // BildschirmAufbau und Drucken im File
|
|
string zeilezusatz2; // BildschirmAufbau und Drucken im File
|
|
string zeilezusatz3; // BildschirmAufbau und Drucken im File
|
|
string zeilezusatz4; // BildschirmAufbau und Drucken im File
|
|
string zeilezusatz5; // BildschirmAufbau und Drucken im File
|
|
string zeilezusatz6; // BildschirmAufbau und Drucken im File
|
|
string zeilezusatz7; // BildschirmAufbau und Drucken im File
|
|
string zeilezusatz8; // BildschirmAufbau und Drucken im File
|
|
string zeilezusatz9; // BildschirmAufbau und Drucken im File
|
|
string zeilezusatz10; // BildschirmAufbau und Drucken im File
|
|
string zeilezusatz11; // BildschirmAufbau und Drucken im File
|
|
string zeilezusatz12; // BildschirmAufbau und Drucken im File
|
|
string zeilezusatz13; // BildschirmAufbau und Drucken im File
|
|
string zeilezusatz14; // BildschirmAufbau und Drucken im File
|
|
string zeilezusatz15; // BildschirmAufbau und Drucken im File
|
|
string zeilezusatz16; // BildschirmAufbau und Drucken im File
|
|
string zeilezusatz17; // BildschirmAufbau und Drucken im File
|
|
string zeilezusatz18; // BildschirmAufbau und Drucken im File
|
|
string zeilezusatz19; // BildschirmAufbau und Drucken im File
|
|
string zeilezusatz20; // BildschirmAufbau und Drucken im File
|
|
int ProgStand = 0;
|
|
int inputstate = 0; // Variable fuer Abbruchbedingung bei Dialogbox
|
|
int llco_wert;
|
|
int ventil;
|
|
int ll_wert;
|
|
int ll_acc_dri; // Variable fuer LL-Abgleich
|
|
int ll_dri;
|
|
int ll_ofs;
|
|
int ll_acc;
|
|
int ll_vb;
|
|
int taste;
|
|
string vartext; // allgemeine Variable
|
|
string vartext1; // allg Textvariable
|
|
string vartext2; // allg Textvariable
|
|
string uds_service; // Variable für UDS-Service
|
|
string ergebnis;
|
|
real r_temp;
|
|
|
|
bool F1,F2,F3,F4,F5,F6,F7,F8,F9,F10,F11,F12,F13,F14,F15,F16,F17,F18,F19,F20;
|
|
|
|
string blank=" ";
|
|
string stati;
|
|
string fehlercode;
|
|
string direction;
|
|
|
|
bool Semaphor;
|
|
|
|
int val1; // Variable 1
|
|
int val2; // Variable 2
|
|
int i_temp; // Variable 3
|
|
string high_low_anz; // Speicher lesen
|
|
string adresse="0000"; // Speicher lesen
|
|
int anzahl=254; // Speicher lesen
|
|
int seg; // Speicher lesen
|
|
int high; // Speicher lesen
|
|
int mid; // Speicher lesen
|
|
int low; // Speicher lesen
|
|
int varInteger; // Hilfsvariable
|
|
real varReal; // allgemeine Variable
|
|
bool varBool; // allgemeine Variable
|
|
string varJobState; // JOB_STATUS Variable
|
|
int durchlauf; // Systemdiagnose
|
|
int durchlauf_ibs; // Systemdiagnose-IBS
|
|
int ews_para; // EWS ABgleich
|
|
int f_reset;
|
|
int speicherart;
|
|
int la; //
|
|
long l_temp;
|
|
|
|
// ************************************************************************************
|
|
// *** Tabelle für Aktivierungsbedingungen der UDS-Services 30_XX_07 ***
|
|
// ************************************************************************************
|
|
|
|
string ev; // Einspritzventil
|
|
string elue; // Elektrolüfter
|
|
string sls; // Sekundär Luftsystem
|
|
string vanos; // VANOS
|
|
string tev; // Tankentlüftungsventil
|
|
string kfk; // Kennfeldkühlung
|
|
string ekp; // Elektrische Kraftstoffpumpe
|
|
string lsh; // Lambdasondenheizung
|
|
string glf; // Gesteuerte Luftführung
|
|
string ewapu; // Elektrische Wasserpumpe
|
|
string korel; // Klima Kompressorrelais
|
|
string eboxlue; // E-Box-Lüfter
|
|
string agk; // Abgasklappe
|
|
string dmtl; // Diagnosemodul Tanklekage
|
|
string disa; // Variable Sauganlage
|
|
string vvt; // Valvetronic
|
|
string vvtr; // Valvetronic-Relais
|
|
string mil_eml; // Malfunction Indication Lamp, Engine Malfunction Lamp
|
|
string fgr; // Fahrgeschwindigkeitsregelung
|
|
string kl87; // Klemme 87-Hauptrelais
|
|
string sr; // Startrelais
|
|
string kgeh; // Kurbelgehäuseentlüftungsheizung
|
|
string sok; // Soundklappe
|
|
string dk; // Drosselklappe
|
|
string gen; // Generatorspannung
|
|
string odr; // Öldruckreglung
|
|
string odv; // Öldruckventil
|
|
string lds; // Ladedrucksteller
|
|
string mls; // Motorlager
|
|
string msv; // Mengensteuerventil
|
|
string agr; // Abgasrückführungsventil
|
|
string dkh; // Drosselklappenheizung
|
|
|
|
string ab_0000 = "Drehzahl < 3000 1/min"; // Aktivierungsbedingung 01
|
|
string ab_0001 = "Klemme 15 = Ein"; // Aktivierungsbedingung 02
|
|
string ab_0002 = "Drehzahl = 0 1/min"; // Aktivierungsbedingung 03
|
|
string ab_0004 = "Leerlauf"; // Aktivierungsbedingung 04
|
|
string ab_0008 = "Drehzahl > 1000 1/min"; // Aktivierungsbedingung 05
|
|
string ab_0010 = "Geschwindigkeit < 5 km/h"; // Aktivierungsbedingung 06
|
|
string ab_0020 = "Motortemperatur > 27 °C"; // Aktivierungsbedingung 07
|
|
string ab_0040 = "Motortemperatur < 95 °C"; // Aktivierungsbedingung 08
|
|
string ab_0080 = "Batteriespannung > 10 V"; // Aktivierungsbedingung 09
|
|
string ab_0200 = "Drehzahl = 0 1/min UND EKP = Aus"; // Aktivierungsbedingung 10
|
|
string ab_0400 = "Öldruck > 2000 hPa UND Drehzahl > 500 1/min"; // Aktivierungsbedingung 11
|
|
string ab_0800 = "Öldruck < 9000 hPa UND Drehzahl < 2000 1/min"; // Aktivierungsbedingung 12
|
|
string ab_1000 = "Raildruck > 50000 hPa"; // Aktivierungsbedingung 13
|
|
string ab_2000 = "Raildruck < 220000 hPa"; // Aktivierungsbedingung 14
|
|
|
|
aktivierungsbedingung(in: string ab_0000,in: string ab_0001,in: string ab_0002,
|
|
in: string ab_0004,in: string ab_0008,in: string ab_0010,
|
|
in: string ab_0020,in: string ab_0040,in: string ab_0080,
|
|
in: string ab_0200,in: string ab_0400,in: string ab_0800,
|
|
in: string ab_1000,in: string ab_2000)
|
|
{
|
|
ev = ab_0200 + " UND " + ab_0080 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Einspritzventil
|
|
elue = ab_0080 + " UND " + ab_0040 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Elektrolüfter
|
|
sls = ab_0080 + " UND " + ab_0002 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Sekundär Luftsystem
|
|
vanos = ab_0008 + ";"; // Aktivierungsbedingung VANOS
|
|
tev = ab_0080 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Tankentlüftungsventil
|
|
kfk = ab_0080 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Kennfeldkühlung
|
|
ekp = ab_0080 + " UND " + ab_0002 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Elektrische Kraftstoffpumpe
|
|
lsh = ab_0080 + " UND " + ab_0002 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Lambdasondenheizung
|
|
glf = ab_0080 + " UND " + ab_0002 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Gesteuerte Luftführung
|
|
ewapu = ab_0080 + " UND " + ab_0040 + " UND " + ab_0002 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Elektrische Wasserpumpe
|
|
korel = ab_0080 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Klima Kompressorrelais
|
|
eboxlue = ab_0080 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung E-Box-Lüfter
|
|
agk = ab_0080 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Abgasklappe
|
|
dmtl = ab_0080 + " UND " + ab_0002 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Diagnosemodul Tanklekage
|
|
disa = ab_0080 + " UND " + ab_0002 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Variable Sauganlage
|
|
vvt = ab_0080 + " UND " + ab_0002 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Valvetronic
|
|
vvtr = ab_0080 + " UND " + ab_0002 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Valvetronic-Relais
|
|
mil_eml = ab_0080 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Malfunction Indication Lamp
|
|
fgr = ab_0080 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Fahrgeschwindigkeitsregelung
|
|
kl87 = ab_0010 + " UND " + ab_0002 + ";"; // Aktivierungsbedingung Klemme 87-Hauptrelais
|
|
sr = ab_0080 + " UND " + ab_0002 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Startrelais
|
|
kgeh = ab_0080 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Kurbelgehäuseentlüftungsheizung
|
|
sok = ab_0080 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Soundklappe
|
|
dk = ab_0080 + " UND " + ab_0002 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Drosselklappe
|
|
gen = ab_0004 + ";"; // Aktivierungsbedingung Generatorspannung
|
|
odr = ab_0400 + " UND " + ab_0800 + ";"; // Aktivierungsbedingung Öldruckregelung
|
|
odv = ab_0080 + " UND " + ab_0002 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Öldruckventil
|
|
lds = ab_0004 + ";"; // Aktivierungsbedingung Ladedrucksteller
|
|
mls = ab_0004 + ";"; // Aktivierungsbedingung Motorlager
|
|
msv = ab_1000 + " UND " + ab_2000 + " UND " + ab_0004 + " UND Betriebsart = Homogen;"; // Aktivierungsbedingung Mengensteuerventil
|
|
agr = ab_0080 + " UND " + ab_0002 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Abgasrückführungsventil
|
|
dkh = ab_0080 + " UND " + ab_0001 + ";"; // Aktivierungsbedingung Drosselklappenheizung
|
|
}
|
|
|
|
// *************************************************************************************
|
|
// *** Tabelle für Definition Parameter Kühlsystementlüftung ***
|
|
// *** Änderung der eingestellten Werte nur in Rücksprache mit Ulrich Hess EA-34 ***
|
|
// *************************************************************************************
|
|
|
|
real tv = 1; // Wartezeit in s notwendig für Erhöhung Drehzahl EWAP von 0% auf 98%
|
|
|
|
string zyklus01;
|
|
string zyklus02;
|
|
string zyklus03;
|
|
string zyklus04;
|
|
string zyklus05;
|
|
string zyklus06="Zyklus 6: Förderleistung von 0% für 44 s ";
|
|
string zyklus07="Zyklus 7: Erhöhung auf 21% in 28 s ";
|
|
string zyklus08="Zyklus 8: Erhöhung auf 42% in 28 s ";
|
|
string zyklus09="Zyklus 9: Förderleistung von 42% für 104 s ";
|
|
string zyklus10="Zyklus 10: Absenkung auf 0% in 28 s ";
|
|
string zyklus11="Zyklus 11: Erhöhung auf 98% in 74 s ";
|
|
string zyklus12="Zyklus 12: Absenkung auf 0% in 19 s ";
|
|
string zyklus13="Zyklus 13: Erhöhung auf 98% in 21 s ";
|
|
string zyklus14="Zyklus 14: Absenkung auf 0% in 25 s ";
|
|
string zyklus15="Zyklus 15: Förderleistung von 0% für 37 s ";
|
|
string zyklus16="Zyklus 16: Erhöhung auf 42% in 8 s ";
|
|
string zyklus17="Zyklus 17: Förderleistung von 42% für 47 s ";
|
|
string zyklus18="Zyklus 18: Absenkung auf 0% in 4 s ";
|
|
|
|
real x001=0; real x101=28; real y001=250; real y101=0; real t01; string st01;
|
|
real x002=29; real x102=57; real y002=250; real y102=0; real t02; string st02;
|
|
real x003=58; real x103=86; real y003=250; real y103=0; real t03; string st03;
|
|
real x004=87; real x104=115; real y004=250; real y104=0; real t04; string st04;
|
|
real x005=116; real x105=144; real y005=250; real y105=0; real t05; string st05;
|
|
real x006=145; real x106=189; real y006=0; real y106=0; real t06; string st06;
|
|
real x007=190; real x107=218; real y007=0; real y107=53; real t07; string st07;
|
|
real x008=219; real x108=247; real y008=54; real y108=107; real t08; string st08;
|
|
real x009=248; real x109=352; real y009=107; real y109=107; real t09; string st09;
|
|
real x010=353; real x110=381; real y010=107; real y110=0; real t10; string st10;
|
|
real x011=382; real x111=456; real y011=3; real y111=250; real t11; string st11;
|
|
real x012=457; real x112=476; real y012=238; real y112=0; real t12; string st12;
|
|
real x013=477; real x113=498; real y013=11; real y113=250; real t13; string st13;
|
|
real x014=499; real x114=524; real y014=240; real y114=0; real t14; string st14;
|
|
real x015=525; real x115=562; real y015=0; real y115=0; real t15; string st15;
|
|
real x016=563; real x116=571; real y016=12; real y116=107; real t16; string st16;
|
|
real x017=572; real x117=619; real y017=107; real y117=107; real t17; string st17;
|
|
real x018=620; real x118=624; real y018=86; real y118=0; real t18; string st18;
|
|
|
|
int iz = 18; int j = 0;
|
|
|
|
zyklusbeschreibung(in: string st01,in: string st02,in: string st03,in: string st04,in: string st05,
|
|
in: real x001,in: real x002,in: real x003,in: real x004,in: real x005,
|
|
in: real x101,in: real x102,in: real x103,in: real x104,in: real x105,
|
|
in: real t01,in: real t02,in: real t03,in: real t04,in: real t05,in: real tv)
|
|
{
|
|
t01 = x101 - x001 + tv+ 1; realtostring(t01,"3.0",st01);
|
|
t02 = x102 - x002 + tv+ 1; realtostring(t01,"3.0",st02);
|
|
t03 = x103 - x003 + tv+ 1; realtostring(t01,"3.0",st03);
|
|
t04 = x104 - x004 + tv+ 1; realtostring(t01,"3.0",st04);
|
|
t05 = x105 - x005 + tv+ 1; realtostring(t01,"3.0",st05);
|
|
|
|
zyklus01="Zyklus 1: Absenkung von 98% auf 0% in" + st01 + " s ";
|
|
zyklus02="Zyklus 2: Absenkung von 98% auf 0% in" + st02 + " s ";
|
|
zyklus03="Zyklus 3: Absenkung von 98% auf 0% in" + st03 + " s ";
|
|
zyklus04="Zyklus 4: Absenkung von 98% auf 0% in" + st04 + " s ";
|
|
zyklus05="Zyklus 5: Absenkung von 98% auf 0% in" + st05 + " s ";
|
|
}
|
|
|
|
// ****************************************************************************
|
|
// *** U S E R - Funktionen ***
|
|
// ****************************************************************************
|
|
|
|
//******************STOPPUHRVERBUND AUS STARTZEIT(..) UND LAUFZEIT(..,..)*****************************
|
|
startzeit(out: int startzeit) {
|
|
//Aktuelle Zeit in Sekunden ausgeben (max.: 59min*60+59sek=3599sek)
|
|
int startzeit_, minuten;//in Sekunden
|
|
string zahl_text, text_var;
|
|
|
|
gettime(text_var);
|
|
zahl_text="";
|
|
midstr(zahl_text,text_var,3,2);
|
|
stringtoint(zahl_text,minuten);
|
|
minuten = minuten*60;
|
|
midstr(zahl_text,text_var,6,2);
|
|
stringtoint(zahl_text,startzeit_);
|
|
startzeit = minuten+startzeit_;
|
|
}
|
|
|
|
laufzeit(in: int startzeit, out: int laufzeit) {
|
|
//Abgelaufene Zeit seit startzeit in sek
|
|
int stopzeit, minuten;//in Sekunden
|
|
string zahl_text, text_var ;
|
|
|
|
gettime(text_var);
|
|
zahl_text="";
|
|
midstr(zahl_text,text_var,3,2); //Minuten auslesen
|
|
stringtoint(zahl_text,minuten);
|
|
minuten = minuten*60;
|
|
midstr(zahl_text,text_var,6,2); //Sekunden auslesen
|
|
stringtoint(zahl_text,stopzeit);
|
|
stopzeit = minuten + stopzeit; //Zeit in Sek.
|
|
|
|
if (startzeit <= stopzeit) laufzeit = stopzeit - startzeit;
|
|
else laufzeit = stopzeit+3599 - startzeit; //Stundensprung: 59min*60sec+59sec=3599
|
|
}
|
|
//****************************************************************************************************
|
|
|
|
// Modulo-Berechnung fuer Integerwerte.
|
|
modInt (in:int argument, in:int divisor, out:int n, out:int rest) {
|
|
|
|
real quotient, argumentReal, divisorReal ;
|
|
int nn ;
|
|
|
|
inttoreal(argument, argumentReal);
|
|
inttoreal(divisor, divisorReal);
|
|
|
|
quotient = argumentReal / divisorReal ;
|
|
|
|
realtoint(quotient, nn) ;
|
|
rest = argument - (nn * divisor) ;
|
|
n = nn;
|
|
}
|
|
|
|
//** Ausgabe eines Ergebnisses als Analogwert des 1. Satzes mit Job-Status-Ueberpruefung
|
|
ergebnisAnalogAusgabe(in: string ergebnis,in: int y,in: int x,
|
|
in: real min,in: real max,in: real minGueltig,in: real maxGueltig,in: string format)
|
|
{
|
|
real r_temp;
|
|
INPAapiResultAnalog(r_temp,ergebnis,1);
|
|
analogout(r_temp,y,x,min,max,minGueltig,maxGueltig,format);
|
|
}
|
|
|
|
// Ausgabe eines Ergebnisses als Digitalwert des 1. Satzes mit Job-Status-Ueberpruefung
|
|
ergebnisDigitalAusgabe(in: string ergebnis,in: int y,in: int x,
|
|
in: string trueText,in: string falseText)
|
|
{
|
|
bool tmpBool;
|
|
|
|
INPAapiResultDigital(tmpBool,ergebnis,1);
|
|
digitalout(tmpBool,y,x,trueText,falseText);
|
|
}
|
|
|
|
|
|
// Ausgabe eines MESSWERTBLOCK_LESEN-Ergebnisses ueber Resultstring-Uebergabe.
|
|
MWBLErgebnisDigitalAusgabe(in: string ergebnisID,in: int y,in: int x,in: string trueText,in: string falseText) {
|
|
|
|
bool tmpBool;
|
|
int i1;
|
|
|
|
INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", ergebnisID, "" ) ;
|
|
INPAapiResultInt(i1,"STAT_MESSWERT0_WERT",1);
|
|
if (i1 == 1) tmpBool = TRUE;
|
|
else tmpBool = FALSE;
|
|
|
|
digitalout(tmpBool,y,x,trueText,falseText);
|
|
}
|
|
|
|
//** Ausgabe eines umzurechnenden Ergebnisses als Analogwert des 1. Satzes mit
|
|
//** Job-Status-Ueberpruefung (Grenzen werden ebenfalls umgerechnet=
|
|
ergebnisUmrechnungAnalogAusgabe(in: string ergebnis,in: real faktor,in: real summe,
|
|
in: int y,in: int x,
|
|
in: real min,in: real max,in: real minGueltig,in: real maxGueltig)
|
|
{
|
|
real r_temp;
|
|
|
|
INPAapiResultAnalog(r_temp,ergebnis,1);
|
|
analogout(r_temp*faktor+summe,y,x,
|
|
min*faktor+summe,max*faktor+summe,
|
|
minGueltig*faktor+summe,maxGueltig*faktor+summe,
|
|
"4.2");
|
|
}
|
|
|
|
//** Neuen Sollwert berechnen
|
|
//** Job-Status-Ueberpruefung, Grenzen werden ebenfalls abgefangen
|
|
llerh(in: int wohin)
|
|
{
|
|
int i_help;
|
|
int temp_ll;
|
|
string s1;
|
|
real r_help;
|
|
real r1;
|
|
|
|
i_help = ll_wert + wohin;
|
|
if (i_help >= 2000) i_help = 2000;
|
|
if (i_help <= 0) i_help = 0;
|
|
inttostring(i_help,s1);
|
|
INPAapiJob(sgbd,"STOP_SYSTEMCHECK_LLERH","","");
|
|
INPAapiJob(sgbd,"START_SYSTEMCHECK_LLERH",s1,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("START_SYSTEMCHECK_LLERH",s1); stop(); }
|
|
ll_wert = i_help;
|
|
}
|
|
|
|
// *** String "s_in" auf gewuenschte Laenge "soll" aufblaehen mit String "append"
|
|
stringappend(inout: string s_in, in: int soll, in: string append)
|
|
{
|
|
int ist;
|
|
|
|
while( ist < soll )
|
|
{
|
|
s_in = s_in + append;
|
|
strlen( ist, s_in ); // Laenge des uebergebenen Strings ermitteln
|
|
}
|
|
}
|
|
|
|
// ** Data ID Auslesen (Datensatz)
|
|
data_id_lesen(out: string s_out)
|
|
{
|
|
string s, s_temp;
|
|
|
|
INPAapiJob( sgbd, "DATEN_REFERENZ_LESEN","","");
|
|
INPAapiResultText( s, "JOB_STATUS", 1,"");
|
|
if( s == "OKAY")
|
|
{
|
|
INPAapiResultText( s_temp, "DATEN_REF_SG_KENNUNG" ,1,"");
|
|
s = s_temp + " ";
|
|
INPAapiResultText( s_temp, "DATEN_REF_PROJEKT" ,1,"");
|
|
s = s + s_temp + " ";
|
|
INPAapiResultText( s_temp, "DATEN_REF_PROGRAMM_STAND",1,"");
|
|
s = s + s_temp + " ";
|
|
INPAapiResultText( s_temp, "DATEN_REF_DATENSATZ" ,1,"");
|
|
s_out = s + s_temp;
|
|
}
|
|
else s_out = "keine Daten-ID";
|
|
}
|
|
|
|
// ** Programm ID Auslesen (Progstand)
|
|
zif_lesen(out: string s_out)
|
|
{
|
|
string s, s_temp;
|
|
|
|
INPAapiJob( sgbd, "ZIF_LESEN","","");
|
|
INPAapiResultText( s, "JOB_STATUS", 1,"");
|
|
if( s == "OKAY")
|
|
{
|
|
INPAapiResultText(s_temp,"ZIF_SG_KENNUNG",1,"");
|
|
s = s_temp + " ";
|
|
INPAapiResultText(s_temp,"ZIF_PROJEKT",1,"");
|
|
s = s + s_temp + " ";
|
|
INPAapiResultText(s_temp,"ZIF_PROGRAMM_STAND",1,"");
|
|
s_out = s + s_temp;
|
|
}
|
|
else s_out = "keine Programm-ID";
|
|
}
|
|
|
|
// ****************************************************************************
|
|
// *** Fehlerbehandlung ***
|
|
// *** 10 07 01 mw Texte geaendert Funktion ok ***
|
|
// ****************************************************************************
|
|
fehlerbehandlung(in:string s_status, in: string s_code)
|
|
{
|
|
userboxclose(0);
|
|
userboxsetcolor(0,4,14);
|
|
userboxopen(0,15,10,11,80,"Fehlerüberwachung","");
|
|
userboxftextout(0,"Das Steuergerät hat den Status: "+s_status,2,5,0,1);
|
|
userboxftextout(0,"Rückgabecode : "+s_code,4,8,0,1);
|
|
userboxftextout(0,"Der Auftrag wird abgebrochen!!!",6,5,0,1);
|
|
userboxftextout(0,"Quittieren Sie diese Meldung bitte mit <F1>",7,5,0,1);
|
|
|
|
}
|
|
|
|
// *******************************************************************************************
|
|
// *** Kommentarfeld als header fuer FS_DETAIL ***
|
|
// *** Dateiname holen, pruefen, speichern in globale Variable datei_fs ***
|
|
// *** oeffnen, 1. mal Ueberschrift SGBD-Name und SW Stand ***
|
|
// *** Datei bleibt geoeffnet !fileclose *** ***
|
|
// *** 19 07 01 mw ***
|
|
// *** 26 11 02 mw SGBD Version hinzu ***
|
|
// *** 19 04 04 ew DME Losnummer auskommentiert, da von Siemens nicht mehr unterstützt ***
|
|
// *******************************************************************************************
|
|
commentlines(in:int speicherart)
|
|
{
|
|
string s1, s2, s3 = "", s4 = "", s5, s6, km_stand_string;
|
|
int i_temp;
|
|
real km_stand_real;
|
|
|
|
i_temp = 2; // keine Eingabe
|
|
if(speicherart == 0)
|
|
{
|
|
if (datei_ident == "")
|
|
{
|
|
while( i_temp == 2 )
|
|
{
|
|
strcat(s1, txtPfad , "ident.txt");
|
|
inputtext( s1 , "Speichern in eine neue Datei oder Anhängen an bestehende","Dateiname und Pfad (Pfad muss bereits existieren! 8.3 Konvention ) z.B. ");
|
|
getinputstate( i_temp ); // 0 = OK 1 = Abbruch
|
|
inputstate = i_temp; // Abbruch merken
|
|
if ( i_temp == 0 )
|
|
{
|
|
fileopen ( s1, "a" ); // kein Abbruch
|
|
fileexist( s1, i_temp); // laesst sich Datei oeffnen?
|
|
if( i_temp != 0 ) i_temp = 2; // nein, neuer Anlauf
|
|
if( i_temp == 0 )
|
|
{
|
|
datei_ident = s1; // Datei angelegt, Namen merken
|
|
filewrite( " ");
|
|
filewrite( " ");
|
|
INPAapiJob(sgbd,"INFO","","");
|
|
INPAapiResultText(s2,"REVISION",1,""); // SGBD Version Nr
|
|
filewrite( "$SGBD: " + sgbd + " Version: " + s2); // 1. mal
|
|
filewrite( "$INPA: " + titel + " Version: " + version); // 1. mal
|
|
}
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
fileopen(datei_ident,"a"); // wenn Name bekannt, anhaengen
|
|
inputstate = 0; // gueltiger Filename existiert
|
|
}
|
|
}
|
|
|
|
if(speicherart == 1 || speicherart == 2 || speicherart == 3)
|
|
{
|
|
if ( datei_fs == "" )
|
|
{
|
|
while( i_temp == 2 )
|
|
{
|
|
if (speicherart == 1) {s1 = txtPfad + "fsdatei.txt";}
|
|
if (speicherart == 2) {s1 = txtPfad + "isdatei.txt";}
|
|
inputtext( s1, "Speichern in eine neue Datei oder Anhängen an bestehende","Dateiname und Pfad (Pfad muss bereits existieren! 8.3 Konvention ) z.B. ");
|
|
getinputstate( i_temp ); // 0 = OK 1 = Abbruch
|
|
inputstate = i_temp; // Abbruch merken
|
|
if ( i_temp == 0 )
|
|
{
|
|
fileopen ( s1, "a" ); // kein Abbruch
|
|
fileexist( s1, i_temp); // laesst sich Datei oeffnen?
|
|
if( i_temp != 0 ) i_temp = 2; // nein, neuer Anlauf
|
|
if( i_temp == 0 )
|
|
{
|
|
datei_fs = s1; // Datei angelegt, Namen merken
|
|
filewrite( " ");
|
|
filewrite( " ");
|
|
INPAapiJob(sgbd,"INFO","","");
|
|
INPAapiResultText(s2,"REVISION",1,""); // SGBD Version Nr
|
|
filewrite( "$SGBD: " + sgbd + " Version: " + s2); // 1. mal
|
|
filewrite( "$INPA: " + titel + " Version: " + version); // 1. mal
|
|
}
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
fileopen(datei_fs,"a"); // wenn Name bekannt, anhaengen
|
|
inputstate = 0; // gueltiger Filename existiert
|
|
}
|
|
}
|
|
|
|
if(speicherart == 4 || speicherart == 5 || speicherart == 6)
|
|
{
|
|
if ( datei_rbm == "" )
|
|
{
|
|
while( i_temp == 2 )
|
|
{
|
|
if (speicherart == 4) {s1 = txtPfad + "rbmmode9.txt";}
|
|
if (speicherart == 5) {s1 = txtPfad + "rbmms1.txt";}
|
|
if (speicherart == 6) {s1 = txtPfad + "rbmms2.txt";}
|
|
inputtext( s1, "Speichern in eine neue Datei oder Anhängen an bestehende","Dateiname und Pfad (Pfad muss bereits existieren! 8.3 Konvention ) z.B. ");
|
|
getinputstate( i_temp ); // 0 = OK 1 = Abbruch
|
|
inputstate = i_temp; // Abbruch merken
|
|
if ( i_temp == 0 )
|
|
{
|
|
fileopen ( s1, "a" ); // kein Abbruch
|
|
fileexist( s1, i_temp); // laesst sich Datei oeffnen?
|
|
if( i_temp != 0 ) i_temp = 2; // nein, neuer Anlauf
|
|
if( i_temp == 0 )
|
|
{
|
|
datei_rbm = s1; // Datei angelegt, Namen merken
|
|
filewrite( " ");
|
|
filewrite( " ");
|
|
INPAapiJob(sgbd,"INFO","","");
|
|
INPAapiResultText(s2,"REVISION",1,""); // SGBD Version Nr
|
|
filewrite( "$SGBD: " + sgbd + " Version: " + s2); // 1. mal
|
|
filewrite( "$INPA: " + titel + " Version: " + version); // 1. mal
|
|
}
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
fileopen(datei_rbm,"a"); // wenn Name bekannt, anhaengen
|
|
inputstate = 0; // gueltiger Filename existiert
|
|
}
|
|
}
|
|
|
|
if (speicherart == 7 || speicherart == 8 || speicherart == 9 || speicherart == 10 || speicherart == 11)
|
|
{
|
|
if ( datei_nn == "" )
|
|
{
|
|
while( i_temp == 2 )
|
|
{
|
|
if (speicherart == 7) {s1 = txtPfad + "eisygd.txt";}
|
|
if (speicherart == 8) {s1 = txtPfad + "eisydr.txt";}
|
|
if (speicherart == 9) {s1 = txtPfad + "krann.txt";}
|
|
if (speicherart == 10) {s1 = txtPfad + "klann.txt";}
|
|
if (speicherart == 11) {s1 = txtPfad + "eisyagr.txt";}
|
|
inputtext( s1, "Speichern in eine neue Datei oder Anhängen an bestehende","Dateiname und Pfad (Pfad muss bereits existieren! 8.3 Konvention ) z.B. ");
|
|
getinputstate( i_temp ); // 0 = OK 1 = Abbruch
|
|
inputstate = i_temp; // Abbruch merken
|
|
if ( i_temp == 0 )
|
|
{
|
|
fileopen ( s1, "a" ); // kein Abbruch
|
|
fileexist( s1, i_temp); // laesst sich Datei oeffnen?
|
|
if( i_temp != 0 ) i_temp = 2; // nein, neuer Anlauf
|
|
if( i_temp == 0 )
|
|
{
|
|
datei_nn = s1; // Datei angelegt, Namen merken
|
|
filewrite( " ");
|
|
filewrite( " ");
|
|
INPAapiJob(sgbd,"INFO","","");
|
|
INPAapiResultText(s2,"REVISION",1,""); // SGBD Version Nr
|
|
filewrite( "$SGBD: " + sgbd + " Version: " + s2); // 1. mal
|
|
filewrite( "$INPA: " + titel + " Version: " + version); // 1. mal
|
|
}
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
fileopen(datei_nn,"a"); // wenn Name bekannt, anhaengen
|
|
inputstate = 0; // gueltiger Filename existiert
|
|
}
|
|
}
|
|
if(speicherart == 12)
|
|
{
|
|
if ( datei_sp == "" )
|
|
{
|
|
while( i_temp == 2 )
|
|
{
|
|
if (speicherart == 12) {s1 = txtPfad + "speicher.txt";}
|
|
inputtext( s1, "Speichern in eine neue Datei oder Anhängen an bestehende","Dateiname und Pfad (Pfad muss bereits existieren! 8.3 Konvention ) z.B. ");
|
|
getinputstate( i_temp ); // 0 = OK 1 = Abbruch
|
|
inputstate = i_temp; // Abbruch merken
|
|
if ( i_temp == 0 )
|
|
{
|
|
fileopen ( s1, "a" ); // kein Abbruch
|
|
fileexist( s1, i_temp); // laesst sich Datei oeffnen?
|
|
if( i_temp != 0 ) i_temp = 2; // nein, neuer Anlauf
|
|
if( i_temp == 0 )
|
|
{
|
|
datei_sp = s1; // Datei angelegt, Namen merken
|
|
filewrite( " ");
|
|
filewrite( " ");
|
|
INPAapiJob(sgbd,"INFO","","");
|
|
INPAapiResultText(s2,"REVISION",1,""); // SGBD Version Nr
|
|
filewrite( "$SGBD: " + sgbd + " Version: " + s2); // 1. mal
|
|
filewrite( "$INPA: " + titel + " Version: " + version); // 1. mal
|
|
}
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
fileopen(datei_sp,"a"); // wenn Name bekannt, anhaengen
|
|
inputstate = 0; // gueltiger Filename existiert
|
|
}
|
|
}
|
|
if(speicherart == 13)
|
|
{
|
|
if ( datei_uds == "" )
|
|
{
|
|
while( i_temp == 2 )
|
|
{
|
|
if (speicherart == 13) {s1 = txtPfad + "uds-test.txt";}
|
|
inputtext( s1, "Speichern in eine neue Datei oder Anhängen an bestehende","Dateiname und Pfad (Pfad muss bereits existieren! 8.3 Konvention ) z.B. ");
|
|
getinputstate( i_temp ); // 0 = OK 1 = Abbruch
|
|
inputstate = i_temp; // Abbruch merken
|
|
if ( i_temp == 0 )
|
|
{
|
|
fileopen ( s1, "a" ); // kein Abbruch
|
|
fileexist( s1, i_temp); // laesst sich Datei oeffnen?
|
|
if( i_temp != 0 ) i_temp = 2; // nein, neuer Anlauf
|
|
if( i_temp == 0 )
|
|
{
|
|
datei_uds = s1; // Datei angelegt, Namen merken
|
|
filewrite( " ");
|
|
filewrite( " ");
|
|
INPAapiJob(sgbd,"INFO","","");
|
|
INPAapiResultText(s2,"REVISION",1,""); // SGBD Version Nr
|
|
filewrite( "$SGBD: " + sgbd + " Version: " + s2); // 1. mal
|
|
filewrite( "$INPA: " + titel + " Version: " + version); // 1. mal
|
|
}
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
fileopen(datei_uds,"a"); // wenn Name bekannt, anhaengen
|
|
inputstate = 0; // gueltiger Filename existiert
|
|
}
|
|
}
|
|
if ( inputstate != 1 )
|
|
{
|
|
input2text( s3, s4, "Kommentarfelder für Datenfile","Ihre Anmerkungen bitte! Bis zu 100 Zeichen pro Zeile","Zeile 1","Zeile 2");
|
|
getinputstate( inputstate ); // 0 = OK 1 = Abbruch
|
|
}
|
|
|
|
if ( inputstate != 1 )
|
|
{
|
|
getdate(s1);
|
|
gettime(s2);
|
|
// INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x58F1",""); // Losnummer
|
|
// INPAapiResultText(s5, "STAT_MESSWERT0_STRING",1,"");
|
|
// INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x480A","");
|
|
// INPAapiResultAnalog(km_stand_real,"STAT_MESSWERT0_WERT",1);
|
|
// realtostring(km_stand_real,"6.0",km_stand_string);
|
|
// data_id_lesen( s6 );
|
|
if(speicherart == 0) {fileopen(datei_ident,"a");}
|
|
if(speicherart == 1 || speicherart == 2 || speicherart == 3) {fileopen( datei_fs,"a");}
|
|
if(speicherart == 4 || speicherart == 5 || speicherart == 6) {fileopen( datei_rbm,"a");}
|
|
if(speicherart == 7 || speicherart == 8 || speicherart == 9 || speicherart == 10 || speicherart == 11) {fileopen(datei_nn,"a");}
|
|
filewrite("___________________________________________________________" );
|
|
// filewrite( "$DATAID: " + s6 );
|
|
filewrite(" ");
|
|
filewrite("Datum : " + s1);
|
|
filewrite("Uhrzeit: " + s2);
|
|
// textout( "=== " + s1 + " === " + s2 + " === DatenReferenz : " + s6,21,5);
|
|
// filewrite("DME Losnummer: " + s5 );
|
|
// filewrite( " ");
|
|
// filewrite("Aktueller Kilometerstand: " + km_stand_string + " km");
|
|
filewrite("___________________________________________________________" );
|
|
filewrite(" ");
|
|
filewrite("Kommentarzeile 1: " + s3 );
|
|
filewrite("Kommentarzeile 2: " + s4 );
|
|
filewrite("___________________________________________________________" );
|
|
}
|
|
else messagebox( "Status der Speicherung" , " Speichern abgebrochen!! " );
|
|
blankscreen();
|
|
}
|
|
|
|
//*************************************
|
|
//*** Adaptionen löschen *****
|
|
//*************************************
|
|
adaption_loesch(in:int was)
|
|
{
|
|
string s1;
|
|
string ausgabetext;
|
|
|
|
if (was == 0) //alle Adaptionswerte loeschen ausser die für die Batterie
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","0xFF;0xEF;0xFF","");
|
|
// INPAapiJob(sgbd,"RESET_CRU_OFF","","");
|
|
ausgabetext = "Alle Adaptionswerte";
|
|
}
|
|
//Byte 1
|
|
if (was == 1)
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","1;0;0","");
|
|
ausgabetext = "Adaption Leerlaufabgleich";
|
|
}
|
|
if (was == 2)
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","2;0;0","");
|
|
ausgabetext = "Adaption Klopfen";
|
|
}
|
|
if (was == 3)
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","4;0;0","");
|
|
ausgabetext = "Adaption Lambdasonden";
|
|
}
|
|
if (was == 4)
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","8;0;0","");
|
|
ausgabetext = "Adaption Tankentlüftung";
|
|
}
|
|
if (was == 5)
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","16;0;0","");
|
|
ausgabetext = "Adaption Saugrohrmodell";
|
|
}
|
|
if (was == 6)
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","32;0;0","");
|
|
ausgabetext = "Adaption Drosselklappe";
|
|
}
|
|
if (was == 7)
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","64;0;0","");
|
|
ausgabetext = "Adaption Lambdaregelung";
|
|
}
|
|
if (was == 8)
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","128;0;0","");
|
|
ausgabetext = "Adaption Abgasrückführungsventil";
|
|
}
|
|
if (was == 9) //Byte 2
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","0;1;0","");
|
|
ausgabetext = "Adaption Laststeuerung";
|
|
}
|
|
if (was == 10)
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","0;2;0","");
|
|
ausgabetext = "Adaption NOx-Sensor";
|
|
}
|
|
if (was == 11)
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","0;4;0","");
|
|
ausgabetext = "Adaption Sekundärluft";
|
|
}
|
|
if (was == 12)
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","0;8;0","");
|
|
ausgabetext = "Adaption Mengensteuerventil";
|
|
}
|
|
if (was == 13)
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_BATTERIETAUSCH_REGISTRIEREN","","");
|
|
ausgabetext = "Adaption Batteriewechsel";
|
|
}
|
|
if (was == 14)
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","0;32;0","");
|
|
ausgabetext = "Adaption Oktanzahl";
|
|
}
|
|
if (was == 15)
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","0;64;0","");
|
|
ausgabetext = "Adaption gelernte Varianten";
|
|
}
|
|
if (was == 16)
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","0;128;0","");
|
|
ausgabetext = "unbenutzt in " + dme_text;
|
|
}
|
|
if (was == 17) //Byte 3
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","0;0;1","");
|
|
ausgabetext = "Adaption Vanos";
|
|
}
|
|
if (was == 18)
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","0;0;2","");
|
|
ausgabetext = "Adaptionen Segmentzeit";
|
|
}
|
|
if (was == 19)
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","0;0;4","");
|
|
ausgabetext = "Adaption Verbrennungsregelung";
|
|
}
|
|
if (was == 20)
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","0;0;8","");
|
|
ausgabetext = "Zylindergleichstellung für EOL-Test und Fahrzyklus";
|
|
}
|
|
if (was == 21)
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","0;0;16","");
|
|
ausgabetext = "Adaption Laufunruhe aus Zylindergleichstellung (Faktor und Offset)";
|
|
}
|
|
if (was == 22)
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","0;0;32","");
|
|
ausgabetext = "Adaption Phaseshift Bank 1";
|
|
}
|
|
if (was == 23)
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","0;0;64","");
|
|
ausgabetext = "Adaption Phaseshift Bank 2";
|
|
}
|
|
if (was == 24)
|
|
{
|
|
INPAapiJob(sgbd,"ADAP_SELEKTIV_LOESCHEN","0;0;128","");
|
|
ausgabetext = "Adaption Energieabgleich";
|
|
}
|
|
INPAapiResultText( s1, "JOB_STATUS", 1, "" );
|
|
if ( s1 != "OKAY" ) { messagebox( "ADAPTON_SELEKTIV_LOESCHEN", s1 ); stop(); }
|
|
else {
|
|
s1 = ausgabetext+" erfolgreich gelöscht!";
|
|
textout( s1, 23, 5 );
|
|
delay(2500);
|
|
textout( blank, 23, 0 );
|
|
}
|
|
// stop();
|
|
}
|
|
|
|
//****************************
|
|
//*** Ansteuerung E-Lüfter ***
|
|
//****************************
|
|
elue_ansteuer(in: int Tastung)
|
|
{
|
|
string s1;
|
|
string help;
|
|
int i_temp;
|
|
real r_temp;
|
|
|
|
if( Tastung == 0xFF )
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_E_LUEFTER","","");
|
|
textout(blank,15,0);
|
|
textout("E-Lüfteransteuerung beendet!",15,5);
|
|
delay(1000);
|
|
}
|
|
if( Tastung == 0xFE ) {
|
|
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x4A79,0x4300,0x4301","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
textout(blank, 19,0);
|
|
textout("Ansteuerung E-Lüfter", 19,5);
|
|
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT",20,5,0,100,0,100,"2.0");
|
|
INPAapiResultText(s1,"STAT_MESSWERT0_EINH",1,"");
|
|
textout(s1, 20,35);
|
|
s1= "Kühlwassertemperatur";
|
|
textout(s1, 23,5);
|
|
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT1_WERT",1);
|
|
INPAapiResultText(s1,"STAT_MESSWERT1_EINH",1,"");
|
|
analogout(r_temp,24,5,-50,150,-30,120,"4.1");
|
|
textout(s1, 24,35);
|
|
s1= "Kühlerauslasstemperatur";
|
|
textout(s1, 23,45);
|
|
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT2_WERT",1);
|
|
INPAapiResultText(s1,"STAT_MESSWERT2_EINH",1,"");
|
|
analogout(r_temp,24,45,-50,150,-30,120,"4.1");
|
|
textout(s1, 24,75);
|
|
}
|
|
if( Tastung < 100 ) {
|
|
inttostring(Tastung,help);
|
|
INPAapiJob(sgbd,"STEUERN_E_LUEFTER",help,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if ( s1 != "OKAY" ) { messagebox( "STEUERN_E_LUEFTER", s1 ); stop(); }
|
|
}
|
|
}
|
|
|
|
//****************************
|
|
//*** Ansteuerung VANOS IN ***
|
|
//****************************
|
|
vanos_in_ansteuer(in: int Tastung)
|
|
{
|
|
string s1;
|
|
string help;
|
|
real r1,r_temp;
|
|
|
|
if( Tastung == 0x1FF )
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_ENWS","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_ENDE_ENWS",s1); stop(); }
|
|
textout("VANOS Einlass: Ansteuerung beendet!",20,5);
|
|
delay(1000);
|
|
textout(blank,20,0);
|
|
}
|
|
if ( Tastung == 0x1FE ) {
|
|
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x4A7A","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
// textout(blank, 20,0); // bringt die Zeile nebenan in vanos_ex_ansteuer zum blinken, daher "//".
|
|
textout("Status Vanoseinlassventil", 20,5);
|
|
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp,21,5,0,100,0,100,"2.0");
|
|
INPAapiResultText(s1,"STAT_MESSWERT0_EINH",1,"");
|
|
textout(s1,21,35);
|
|
|
|
}
|
|
if( Tastung < 0x1FE )
|
|
{
|
|
inttostring(Tastung,help);
|
|
INPAapiJob(sgbd,"STEUERN_ENWS",help,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_ENWS",s1); stop(); }
|
|
}
|
|
}
|
|
|
|
//****************************
|
|
//*** Ansteuerung VANOS EX ***
|
|
//****************************
|
|
vanos_ex_ansteuer(in: int Tastung)
|
|
{
|
|
string s1;
|
|
string help;
|
|
real r1,r_temp;
|
|
|
|
if( Tastung == 0x1FF )
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_ANWS","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_ENDE_ANWS",s1); stop(); }
|
|
textout("VANOS Auslass: Ansteuerung beendet!",20,45);
|
|
delay(1000);
|
|
textout(blank,20,40);
|
|
}
|
|
if( Tastung == 0x1FE )
|
|
{
|
|
INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4A7B", "" ) ;
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp,21,45,0,100,0,100,"2.0");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_EINH",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_TEXT",1,"");
|
|
text(20,45,vartext2);
|
|
text(21,75,vartext1);
|
|
}
|
|
if( Tastung < 0x1FE )
|
|
{
|
|
inttostring(Tastung,help);
|
|
INPAapiJob(sgbd,"STEUERN_ANWS",help,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_ANWS",s1); stop(); }
|
|
}
|
|
}
|
|
|
|
//***********************
|
|
//*** Ansteuerung TEV ***
|
|
//***********************
|
|
tev_ansteuer(in : int Tastung)
|
|
{
|
|
string s1;
|
|
string help;
|
|
real r_temp;
|
|
|
|
if( Tastung == 0xFF )
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_TEV","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if ( s1 != "OKAY" ) { messagebox( "STEUERN_ENDE_TEV", s1 ); stop(); }
|
|
textout(blank,25,0);
|
|
textout("TEV: Ansteuerung beendet!",25,5);
|
|
delay(1000);
|
|
}
|
|
if( Tastung == 0xFE )
|
|
{
|
|
INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4A77", "" ) ;
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp,27,5,0,100,0,100,"2.0");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_EINH",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_TEXT",1,"");
|
|
text(25,5,vartext2);
|
|
text(27,35,vartext1);
|
|
|
|
}
|
|
if( Tastung < 100 )
|
|
{
|
|
inttostring(Tastung,help);
|
|
INPAapiJob(sgbd,"STEUERN_TEV",help,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if ( s1 != "OKAY" ) { messagebox( "STEUERN_TEV", s1 ); stop(); }
|
|
}
|
|
}
|
|
|
|
//***********************
|
|
//*** Ansteuerung KFK ***
|
|
//***********************
|
|
kfk_ansteuer(in : int Tastung)
|
|
{
|
|
string s1;
|
|
string help;
|
|
real r_temp;
|
|
|
|
if( Tastung == 0xFF )
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_KFT","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if ( s1 != "OKAY" ) { messagebox( "STEUERN_KFT_ENDE", s1 ); stop(); }
|
|
textout(blank,27,0);
|
|
textout("KFK: Ansteuerung beendet!",27,5);
|
|
delay(1000);
|
|
}
|
|
if( Tastung == 0xFE ) {
|
|
|
|
INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4A74,0x4300,0x4301", "" ) ;
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp,20,5,0,100,0,100,"2.0");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_EINH",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_TEXT",1,"");
|
|
text( 20,35,vartext1);
|
|
text( 19,5,vartext2);
|
|
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp,24,5,-50,150,-30,120,"4.1");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_EINH",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_TEXT",1,"");
|
|
text(24,35,vartext1);
|
|
text(23,5,vartext2);
|
|
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp,24,45,-50,150,-30,120,"4.1");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_EINH",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_TEXT",1,"");
|
|
text( 24,75,vartext1);
|
|
text( 23,45,vartext2);
|
|
|
|
}
|
|
if( Tastung < 100 )
|
|
{
|
|
inttostring(Tastung,help);
|
|
INPAapiJob(sgbd,"STEUERN_KFT",help,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if ( s1 != "OKAY" ) { messagebox( "STEUERN_KFT", s1 ); stop(); }
|
|
textout(blank,27,0);
|
|
}
|
|
}
|
|
//***********************
|
|
//*** Ansteuerung EKP ***
|
|
//***********************
|
|
ekp_ansteuer(in : int Tastung)
|
|
{
|
|
string s1, s2;
|
|
|
|
if (Tastung == 0) INPAapiJob(sgbd,"STEUERN_EKP","0","");
|
|
if (Tastung == 1) INPAapiJob(sgbd,"STEUERN_EKP","99.609375","");
|
|
if (Tastung == 0xFE) INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4ABA", "" ) ;
|
|
if (Tastung == 0xFF) INPAapiJob(sgbd,"STEUERN_ENDE_EKP","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox( "STEUERN_EKP", s1); stop(); }
|
|
|
|
if (Tastung <= 1)
|
|
{
|
|
|
|
INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4ABA", "" ) ;
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp,21,5,0,100,0,100,"5.1");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_EINH",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_TEXT",1,"");
|
|
textout(blank, 20, 5);
|
|
textout(vartext1, 21, 35);
|
|
textout(vartext2, 20, 5);
|
|
}
|
|
|
|
if (Tastung == 0xFE)
|
|
{
|
|
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp,21,5,0,100,0,100,"5.1");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_EINH",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_TEXT",1,"");
|
|
textout(blank, 20, 5);
|
|
textout(vartext1,21,35);
|
|
textout(vartext2,20,5);
|
|
}
|
|
if (Tastung == 0xFF)
|
|
{
|
|
textout("EKP: Ansteuerung beendet",25,5);
|
|
delay(1000);
|
|
textout(blank, 25,0);
|
|
}
|
|
}
|
|
|
|
//************************
|
|
//*** Ansteuerung HLS1 ***
|
|
//************************
|
|
hls1_ansteuer(in : int Tastung)
|
|
{
|
|
string s1;
|
|
string help;
|
|
real r_temp;
|
|
|
|
if( Tastung == 0xFF )
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_LSH1","","");
|
|
textout(blank,26,0);
|
|
textout("Sondenheizung VK1: Ansteuerung beendet!",26,5);
|
|
delay(1000);
|
|
textout(blank,26,0);
|
|
}
|
|
if( Tastung == 0xFE )
|
|
{
|
|
INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4A58", "" ) ;
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp,21,3,0,100,0,100,"2.0");
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_EINH",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_TEXT",1,"");
|
|
textout(vartext1, 21,32);
|
|
textout(vartext2, 20,3);
|
|
|
|
}
|
|
if( Tastung < 100 )
|
|
{
|
|
inttostring(Tastung,help);
|
|
INPAapiJob(sgbd,"STEUERN_LSH1",help,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_LSH1",s1); stop(); }
|
|
}
|
|
}
|
|
|
|
//***************************
|
|
//*** Ansteuerung HLS HK1 ***
|
|
//***************************
|
|
hls2_ansteuer(in : int Tastung)
|
|
{
|
|
string s1;
|
|
string help;
|
|
real r_temp;
|
|
|
|
if( Tastung == 0xFF )
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_LSH2","","");
|
|
textout("Sondenheizung HK1: Ansteuerung beendet!",26,5);
|
|
delay(1000);
|
|
textout(blank,26,0);
|
|
}
|
|
if( Tastung == 0xFE )
|
|
{
|
|
|
|
INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4A59", "" ) ;
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp,24,3,0,100,0,100,"2.0");
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_EINH",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_TEXT",1,"");
|
|
textout(vartext1, 24,32);
|
|
textout(vartext2, 23,3);
|
|
|
|
}
|
|
if( Tastung < 100 )
|
|
{
|
|
inttostring(Tastung,help);
|
|
INPAapiJob(sgbd,"STEUERN_LSH2",help,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_LSH2",s1); stop(); }
|
|
}
|
|
}
|
|
|
|
//***************************
|
|
//*** Ansteuerung HLS VK2 ***
|
|
//***************************
|
|
hls3_ansteuer(in : int Tastung)
|
|
{
|
|
string s1;
|
|
string help;
|
|
real r_temp;
|
|
|
|
if( Tastung == 0xFF )
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_LSH3","","");
|
|
textout("Sondenheizung VK2: Ansteuerung beendet!",26,5);
|
|
delay(1000);
|
|
textout(blank,26,0);
|
|
}
|
|
if( Tastung == 0xFE )
|
|
{
|
|
INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4A5A", "" ) ;
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp,21,45,0,100,0,100,"2.0");
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_EINH",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_TEXT",1,"");
|
|
textout(vartext1, 21,75);
|
|
textout(vartext2, 20,45);
|
|
|
|
}
|
|
if( Tastung < 100 )
|
|
{
|
|
inttostring(Tastung,help);
|
|
INPAapiJob(sgbd,"STEUERN_LSH3",help,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_LSH3",s1); stop(); }
|
|
}
|
|
}
|
|
//***************************
|
|
//*** Ansteuerung HLS HK2 ***
|
|
//***************************
|
|
hls4_ansteuer(in : int Tastung)
|
|
{
|
|
string s1;
|
|
string help;
|
|
real r_temp;
|
|
|
|
if( Tastung == 0xFF )
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_LSH4","","");
|
|
textout("Sondenheizung HK2: Ansteuerung beendet!",26,5);
|
|
delay(1000);
|
|
textout(blank,26,0);
|
|
}
|
|
if( Tastung == 0xFE )
|
|
{
|
|
INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4A5B", "" ) ;
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp,24,45,0,100,0,100,"2.0");
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_EINH",1,"");
|
|
textout(vartext1, 24,75);
|
|
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_TEXT",1,"");
|
|
|
|
textout(vartext2, 23,45);
|
|
|
|
|
|
|
|
/* INPAapiJob(sgbd,"STATUS_LSH4","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STATUS_LSH4",s1); stop(); }
|
|
else
|
|
{
|
|
s1 = "Heizung Lambdasonde HK 2";
|
|
textout(s1, 23,45);
|
|
INPAapiResultAnalog(r_temp,"STAT_STAT_LSH4_WERT",1);
|
|
INPAapiResultText(s1,"STAT_STAT_LSH4_EINH",1,"");
|
|
analogout(r_temp,24,45,0,100,0,100,"2.0");
|
|
textout(s1, 24,75);
|
|
} */
|
|
}
|
|
if( Tastung < 100 )
|
|
{
|
|
inttostring(Tastung,help);
|
|
INPAapiJob(sgbd,"STEUERN_LSH4",help,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_LSH4",s1); stop(); }
|
|
}
|
|
}
|
|
|
|
//*************************
|
|
//*** Ansteuerung GLF-1 ***
|
|
//*************************
|
|
glf1_ansteuer(in : int Tastung)
|
|
{
|
|
string s1, s2;
|
|
int i_temp;
|
|
|
|
if (Tastung == 0) INPAapiJob(sgbd,"STEUERN_GLF","0","");
|
|
if (Tastung == 1) INPAapiJob(sgbd,"STEUERN_GLF","1","");
|
|
if (Tastung == 0xFE) INPAapiJob(sgbd,"STATUS_SYSTEMCHECK_GLF","","");
|
|
if (Tastung == 0xFF) INPAapiJob(sgbd,"STEUERN_ENDE_GLF","","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
// INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
// if (s1 != "OKAY") { messagebox("STEUERN_GLF",s1); stop(); }
|
|
|
|
if (Tastung == 0xFE) {
|
|
|
|
ftextout("--------------------------------------------------Obere Luftklappe AKKS-LIN-----------------------------------------------------------", 13, 1, 0, 1);
|
|
|
|
// Sollposition in Grad
|
|
INPAapiResultAnalog(r_temp,"STAT_ANG_ECRAS_UP_SP_WERT",1);
|
|
analogout(r_temp,16, 1, 0, 120, 0, 120,"5.1");
|
|
text(15, 1, "Soll-Position in Grad");
|
|
|
|
// Istposition in Grad
|
|
INPAapiResultAnalog(r_temp,"STAT_ANG_ECRAS_UP_WERT",1);
|
|
analogout(r_temp,19, 1, 0, 120, 0, 120,"5.1");
|
|
text(18, 1, "Ist-Position in Grad");
|
|
|
|
textout(blank,16, 40);
|
|
textout(blank,19, 40);
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_UP2" ,16, 40,"Geöffnet"," Nicht offen ");
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_UP1" ,19, 40,"Geschlossen"," Nicht geschlossen ");
|
|
|
|
}
|
|
if (Tastung == 0xFF)
|
|
{
|
|
textout(blank, 26,0);
|
|
textout("Ansteuerung Kühlerjalousie oben beendet",26,25);
|
|
delay(1000);
|
|
textout(blank, 26,0);
|
|
}
|
|
}
|
|
|
|
//*************************
|
|
//*** Ansteuerung GLF-2 ***
|
|
//*************************
|
|
glf2_ansteuer(in : int Tastung)
|
|
{
|
|
string s1, s2;
|
|
int i_temp;
|
|
|
|
if (Tastung == 0) INPAapiJob(sgbd,"STEUERN_GLF2","0","");
|
|
if (Tastung == 1) INPAapiJob(sgbd,"STEUERN_GLF2","1","");
|
|
if (Tastung == 0xFE) INPAapiJob(sgbd,"STATUS_SYSTEMCHECK_GLF","","");
|
|
if (Tastung == 0xFF) INPAapiJob(sgbd,"STEUERN_ENDE_GLF2","","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
//INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
//if (s1 != "OKAY") { messagebox("STEUERN_GLF2",s1); stop(); }
|
|
if (Tastung == 0xFE) {
|
|
|
|
ftextout("--------------------------------------------------Untere Luftklappe PKKS---------------------------------------------------------------", 22, 1, 0, 1);
|
|
|
|
textout(blank,24, 0);
|
|
textout(blank,27, 0);
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_DOWN6" ,24, 1,"Externe Ansteuerung PKKS aktiv"," Externe Ansteuerung PKKS inaktiv ");
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_DOWN7" ,27, 1,"PKKS angesteuert (geschlossen)"," PKKS nicht angesteuert (offen) ");
|
|
|
|
}
|
|
if (Tastung == 0xFF)
|
|
{
|
|
textout(blank, 26,0);
|
|
textout("Ansteuerung Kühlerjalousie oben beendet",26,25);
|
|
delay(1000);
|
|
textout(blank, 26,0);
|
|
}
|
|
}
|
|
|
|
//*******************************
|
|
//*** Ansteuerung Wasserpumpe ***
|
|
//*******************************
|
|
ewap_ansteuer(in : int Tastung)
|
|
{
|
|
string s1, s2;
|
|
string help;
|
|
real r_temp;
|
|
|
|
if( Tastung == 0xFF )
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_EWAP","","");
|
|
textout("Wasserpumpe: Ansteuerung beendet!",26,5);
|
|
delay(1000);
|
|
textout(blank,26,0);
|
|
}
|
|
if( Tastung == 0xFE )
|
|
{
|
|
|
|
INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4305", "" ) ;
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
r_temp = r_temp / 255 * 100;
|
|
analogout(r_temp,20,5,0,100,0,100,"4.1");
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_EINH",1,"");
|
|
textout(vartext1, 20,37);
|
|
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_TEXT",1,"");
|
|
textout(blank, 19,5);
|
|
textout(vartext2, 19,5);
|
|
|
|
/* s1= "Status Wasserpumpe";
|
|
textout(s1, 19,5);
|
|
INPAapiResultAnalog(r_temp,"STAT_STAT_EWAP",1);
|
|
|
|
analogout(r_temp,20,5,0,100,0,100,"4.1");
|
|
s1 = "%";
|
|
textout(s1, 20,37); */
|
|
|
|
|
|
INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4300", "" ) ;
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp,24,5,-50,150,-30,120,"4.1");
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_EINH",1,"");
|
|
textout(vartext1, 24,37);
|
|
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_TEXT",1,"");
|
|
// textout(blank, 23,5); // bringt analogoutput zum blinken.
|
|
textout(vartext2, 23,5);
|
|
|
|
/* s1= "Kühlwassertemperatur";
|
|
textout(s1, 23,5);
|
|
INPAapiResultAnalog(r_temp,"STAT_PHY_TCO_WERT",1);
|
|
INPAapiResultText(s1,"STAT_PHY_TCO_EINH",1,"");
|
|
analogout(r_temp,24,5,-50,150,-30,120,"4.1");
|
|
textout(s1, 24,37); */
|
|
|
|
INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4301", "" ) ;
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp,24,45,-50,150,-30,120,"4.1");
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_EINH",1,"");
|
|
textout(vartext1, 24,77);
|
|
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_TEXT",1,"");
|
|
textout(blank, 23,45);
|
|
textout(vartext2, 23,45);
|
|
|
|
/* s1= "Kühlerauslasstemperatur";
|
|
textout(s1, 23,45);
|
|
INPAapiResultAnalog(r_temp,"STAT_PHY_TCO_2_WERT",1);
|
|
INPAapiResultText(s1,"STAT_PHY_TCO_2_EINH",1,"");
|
|
analogout(r_temp,24,45,-50,150,-30,120,"4.1");
|
|
textout(s1, 24,77); */
|
|
|
|
|
|
}
|
|
if( Tastung < 100 )
|
|
{
|
|
inttostring(Tastung,help);
|
|
INPAapiJob(sgbd,"STEUERN_EWAP",help,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_EWAP",s1); stop(); }
|
|
}
|
|
}
|
|
|
|
//*********************************************
|
|
//*** Ansteuerung EWAP Kühlsystementlüftung ***
|
|
//*********************************************
|
|
ewap_ansteuer_kse(in: int Tastung, inout: int j)
|
|
|
|
{
|
|
string s, s1, s2, sz, sg;
|
|
string help;
|
|
real r_temp_soll, r_temp_ist;
|
|
real t,t0,x,x0,x1,y,y0,y1;
|
|
int i,k,l,m,n,o,z1;
|
|
|
|
i = 1;
|
|
t = 0;
|
|
x = 0; x0 = 0; x1 = 0;
|
|
y = 0; y0 = 0; y1 = 0;
|
|
|
|
if( Tastung == 0xFF )
|
|
{
|
|
INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4305", "" ) ;
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") {
|
|
messagebox("MESSWERTBLOCK_LESEN 0x4305",s1);
|
|
stop();
|
|
}
|
|
else {
|
|
s1= "Status:";
|
|
ftextout(s1,10,5,0,1);
|
|
if (j == 0) {s1= "Kühlsystementlüftung noch nicht gestartet!";}
|
|
else {s1= "Kühlsystementlüftung beendet! ";}
|
|
textout(s1, 11,5);
|
|
s1= "Istwert Wasserpumpe";
|
|
textout(s1, 26,5);
|
|
INPAapiResultAnalog(r_temp_ist,"STAT_MESSWERT0_WERT",1);
|
|
|
|
// Ueberpruefen ob notw.
|
|
r_temp_ist = r_temp_ist / 255 * 100;
|
|
|
|
analogout(r_temp_ist,27,5,0,100,0,100,"4.1");
|
|
s1 = "%";
|
|
textout(s1,27,37);
|
|
s1= "Sollwert Wasserpumpe";
|
|
textout(s1,22,5);
|
|
s1 = "%";
|
|
analogout(r_temp_soll,23,5,0,100,0,100,"4.1");
|
|
textout(s1,23,37);
|
|
|
|
|
|
// Ausgabe der einzelnen Schritte der Kühlsystementlüftung
|
|
|
|
ftextout("Programm Kühlsystementlüftung",10,45,0,1);
|
|
textout(zyklus01,11,45);
|
|
textout(zyklus02,12,45);
|
|
textout(zyklus03,13,45);
|
|
textout(zyklus04,14,45);
|
|
textout(zyklus05,15,45);
|
|
textout(zyklus06,16,45);
|
|
textout(zyklus07,17,45);
|
|
textout(zyklus08,18,45);
|
|
textout(zyklus09,19,45);
|
|
textout(zyklus10,20,45);
|
|
textout(zyklus11,21,45);
|
|
textout(zyklus12,22,45);
|
|
textout(zyklus13,23,45);
|
|
textout(zyklus14,24,45);
|
|
textout(zyklus15,25,45);
|
|
textout(zyklus16,26,45);
|
|
textout(zyklus17,27,45);
|
|
textout(zyklus18,28,45);
|
|
}
|
|
}
|
|
if( Tastung == 1 )
|
|
{
|
|
messagebox("Kühlsystementlüftung " + dme_text,"Nach dem Start muss das gesammte Programm für die Kühlsystementlüftung abgearbeitet werden. Ein vorzeitiger Abbruch ist nicht möglich!");
|
|
inputtext(help,"Kühlsystementlüftung " + dme_text,"Soll die Kühlsystementlüftung gestartet werden?");
|
|
getinputstate(n);
|
|
if (n != 0) {stop(); userboxclose(8);}
|
|
else {
|
|
|
|
ftextout(dme_text + " Kühlsystementlüftung",0,10,1,1);
|
|
z1=2;
|
|
textout("Ansteuerbedingung: ",z1,5);z1=z1+1;
|
|
textout(ewapu,z1,5);z1=z1+2;
|
|
ftextout("Kühlsystementlüftung nur mit angeschlossenem Ladegerät durchführen!",z1,5,0,1);z1=z1+2;
|
|
textout("< F1 > Start Kühlsystementlüftung",z1,5);z1=z1+1;
|
|
textout("< F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
|
|
userboxopen(8,18,25,5,35,"Einstellungen Heizung IHX"," ");
|
|
userboxftextout(8,"1) Temperaturwahl maximal",1,1,0,0);
|
|
userboxftextout(8,"2) AUTO-Taste betätigen",2,1,0,0);
|
|
userboxftextout(8,"3) Gebläseleistung auf minimal zurücknehmen",3,1,0,0);
|
|
inputtext(help,"Einstellung Heizung IHX","Sind die Einstellungen durchgeführt?");
|
|
getinputstate(n);
|
|
if (n != 0) {stop(); userboxclose(8);}
|
|
else
|
|
{
|
|
userboxclose(8);
|
|
j = 1;
|
|
while(i <= iz)
|
|
{
|
|
if (i == 1) {x0 = x001; x1 = x101; y0 = y001; y1 = y101;}
|
|
if (i == 2) {x0 = x002; x1 = x102; y0 = y002; y1 = y102;}
|
|
if (i == 3) {x0 = x003; x1 = x103; y0 = y003; y1 = y103;}
|
|
if (i == 4) {x0 = x004; x1 = x104; y0 = y004; y1 = y104;}
|
|
if (i == 5) {x0 = x005; x1 = x105; y0 = y005; y1 = y105;}
|
|
if (i == 6) {x0 = x006; x1 = x106; y0 = y006; y1 = y106;}
|
|
if (i == 7) {x0 = x007; x1 = x107; y0 = y007; y1 = y107;}
|
|
if (i == 8) {x0 = x008; x1 = x108; y0 = y008; y1 = y108;}
|
|
if (i == 9) {x0 = x009; x1 = x109; y0 = y009; y1 = y109;}
|
|
if (i == 10) {x0 = x010; x1 = x110; y0 = y010; y1 = y110;}
|
|
if (i == 11) {x0 = x011; x1 = x111; y0 = y011; y1 = y111;}
|
|
if (i == 12) {x0 = x012; x1 = x112; y0 = y012; y1 = y112;}
|
|
if (i == 13) {x0 = x013; x1 = x113; y0 = y013; y1 = y113;}
|
|
if (i == 14) {x0 = x014; x1 = x114; y0 = y014; y1 = y114;}
|
|
if (i == 15) {x0 = x015; x1 = x115; y0 = y015; y1 = y115;}
|
|
if (i == 16) {x0 = x016; x1 = x116; y0 = y016; y1 = y116;}
|
|
if (i == 17) {x0 = x017; x1 = x117; y0 = y017; y1 = y117;}
|
|
if (i == 18) {x0 = x018; x1 = x118; y0 = y018; y1 = y118;}
|
|
|
|
t0 = x1 - x0;
|
|
|
|
if (i <= 5) {t0 = t0 + tv;}
|
|
|
|
while(t <= t0)
|
|
{
|
|
ftextout( dme_text + " Kühlsystementlüftung",0,5,1,1);
|
|
z1=2;
|
|
textout("Ansteuerbedingung: ",z1,5);z1=z1+1;
|
|
textout(ewapu,z1,5);z1=z1+2;
|
|
ftextout("Kühlsystementlüftung nur mit angeschlossenem Ladegerät durchführen!",z1,5,0,1);z1=z1+2;
|
|
textout("< F1 > Start Kühlsystementlüftung",z1,5);z1=z1+1;
|
|
textout("< F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
textout("Zyklus",15,5);
|
|
inttostring(i,s1);
|
|
textout(s1,16,5);
|
|
textout("Zykluszeit",15,15);
|
|
realtoint(t,k);
|
|
inttostring(k,sz);
|
|
sz = sz + " s ";
|
|
textout(sz,16,15);
|
|
if (i <= 5)
|
|
{
|
|
if (t >= tv)
|
|
{
|
|
y = ((y1 - y0) / (x1 - x0) * (x - x0) + y0) / 255 * 100;
|
|
textout("Gesamtzeit",15,30);
|
|
realtoint(x,k);
|
|
realtoint(tv,m);
|
|
k = k + i * m;
|
|
inttostring(k,sg);
|
|
sg = sg + " s ";
|
|
textout(sg,16,30);
|
|
x = x + 1;
|
|
}
|
|
else
|
|
{
|
|
y = ((y1 - y0) / (x1 - x0) * (x - x0) + y0) / 255 * 100;
|
|
textout("Gesamtzeit",15,30);
|
|
realtoint(x,k);
|
|
realtoint(t,l);
|
|
realtoint(tv,m);
|
|
k = k + l + (i -1 ) * m;
|
|
inttostring(k,sg);
|
|
sg = sg + " s ";
|
|
textout(sg,16,30);
|
|
delay(750);
|
|
}
|
|
}
|
|
else
|
|
{
|
|
y = ((y1 - y0) / (x1 - x0) * (x - x0) + y0) / 255 * 100;
|
|
textout("Gesamtzeit",15,30);
|
|
realtoint(x,k);
|
|
realtoint(tv,m);
|
|
k = k + 5 * m;
|
|
inttostring(k,sg);
|
|
sg = sg + " s ";
|
|
textout(sg,16,30);
|
|
x = x + 1;
|
|
}
|
|
s1= "Status:";
|
|
ftextout(s1,10,5,0,1);
|
|
s1= "Kühlsystementlüftung läuft! ";
|
|
textout(s1,11,5);
|
|
r_temp_soll = y;
|
|
realtostring(r_temp_soll,"4.1",help);
|
|
stringtoreal(help,r_temp_soll);
|
|
INPAapiJob(sgbd,"STEUERN_EWAP",help,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_EWAP",s1); t = t0 + 1; i = iz + 1;}
|
|
s1= "Istwert Wasserpumpe";
|
|
textout(s1,26,5);
|
|
|
|
INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4305", "" ) ;
|
|
INPAapiResultAnalog(r_temp_ist,"STAT_MESSWERT0_WERT",1);
|
|
|
|
r_temp_ist = r_temp_ist / 255 * 100;
|
|
analogout(r_temp_ist,27,5,0,100,0,100,"4.1");
|
|
s1 = "%";
|
|
textout(s1,27,37);
|
|
delay(1000);
|
|
s1= "Sollwert Wasserpumpe";
|
|
textout(s1,22,5);
|
|
s1 = "%";
|
|
analogout(r_temp_soll,23,5,0,100,0,100,"4.1");
|
|
textout(s1,23,37);
|
|
|
|
// Ausgabe der einzelnen Schritte der Kühlsystementlüftung
|
|
|
|
ftextout("Programm Kühlsystementlüftung",10,45,0,1);
|
|
if (i == 1) {ftextout(zyklus01,11,45,0,1);} else {ftextout(zyklus01,11,45,0,0);}
|
|
if (i == 2) {ftextout(zyklus02,12,45,0,1);} else {ftextout(zyklus02,12,45,0,0);}
|
|
if (i == 3) {ftextout(zyklus03,13,45,0,1);} else {ftextout(zyklus03,13,45,0,0);}
|
|
if (i == 4) {ftextout(zyklus04,14,45,0,1);} else {ftextout(zyklus04,14,45,0,0);}
|
|
if (i == 5) {ftextout(zyklus05,15,45,0,1);} else {ftextout(zyklus05,15,45,0,0);}
|
|
if (i == 6) {ftextout(zyklus06,16,45,0,1);} else {ftextout(zyklus06,16,45,0,0);}
|
|
if (i == 7) {ftextout(zyklus07,17,45,0,1);} else {ftextout(zyklus07,17,45,0,0);}
|
|
if (i == 8) {ftextout(zyklus08,18,45,0,1);} else {ftextout(zyklus08,18,45,0,0);}
|
|
if (i == 9) {ftextout(zyklus09,19,45,0,1);} else {ftextout(zyklus09,19,45,0,0);}
|
|
if (i == 10) {ftextout(zyklus10,20,45,0,1);} else {ftextout(zyklus10,20,45,0,0);}
|
|
if (i == 11) {ftextout(zyklus11,21,45,0,1);} else {ftextout(zyklus11,21,45,0,0);}
|
|
if (i == 12) {ftextout(zyklus12,22,45,0,1);} else {ftextout(zyklus12,22,45,0,0);}
|
|
if (i == 13) {ftextout(zyklus13,23,45,0,1);} else {ftextout(zyklus13,23,45,0,0);}
|
|
if (i == 14) {ftextout(zyklus14,24,45,0,1);} else {ftextout(zyklus14,24,45,0,0);}
|
|
if (i == 15) {ftextout(zyklus15,25,45,0,1);} else {ftextout(zyklus15,25,45,0,0);}
|
|
if (i == 16) {ftextout(zyklus16,26,45,0,1);} else {ftextout(zyklus16,26,45,0,0);}
|
|
if (i == 17) {ftextout(zyklus17,27,45,0,1);} else {ftextout(zyklus17,27,45,0,0);}
|
|
if (i == 18) {ftextout(zyklus18,28,45,0,1);} else {ftextout(zyklus18,28,45,0,0);}
|
|
t = t + 1;
|
|
}
|
|
t = 0;
|
|
i = i +1;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
//*************************
|
|
//*** Ansteuerung KOREL ***
|
|
//*************************
|
|
korel_ansteuer(in : int Tastung)
|
|
{
|
|
string s1;
|
|
int i_temp;
|
|
|
|
if (Tastung == 0) INPAapiJob(sgbd,"STEUERN_KOREL","0","");
|
|
if (Tastung == 1) INPAapiJob(sgbd,"STEUERN_KOREL","1","");
|
|
if (Tastung == 0xFE) INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4A4E", "" ) ;
|
|
if (Tastung == 0xFF) INPAapiJob(sgbd,"STEUERN_ENDE_KOREL","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_KOREL",s1); stop(); }
|
|
if (Tastung == 0xFE)
|
|
{
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_TEXT",1,"");
|
|
textout(blank, 25,0);
|
|
textout(vartext2, 25,5);
|
|
ergebnisDigitalAusgabe("STAT_MESSWERT0_WERT", 26, 5," EIN "," AUS ");
|
|
}
|
|
if (Tastung == 0xFF)
|
|
{
|
|
textout(blank, 25,0);
|
|
textout("KlimaKOmpressorRELais: Ansteuerung beendet",25,5);
|
|
delay(1000);
|
|
textout(blank, 25,0);
|
|
}
|
|
}
|
|
|
|
//********************************
|
|
//*** Ansteuerung E-Box-Lüfter ***
|
|
//********************************
|
|
ebl_ansteuer(in : int Tastung)
|
|
{
|
|
string s1;
|
|
int i_temp;
|
|
|
|
if (Tastung == 0) INPAapiJob(sgbd,"STEUERN_EBL","0","");
|
|
if (Tastung == 1) INPAapiJob(sgbd,"STEUERN_EBL","1","");
|
|
if (Tastung == 0xFE) INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4A63,0x4A22", "" ) ;
|
|
if (Tastung == 0xFF) INPAapiJob(sgbd,"STEUERN_ENDE_EBL","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") {
|
|
messagebox("STEUERN_EBL",s1);
|
|
stop();
|
|
}
|
|
if (Tastung == 0xFE)
|
|
{
|
|
|
|
INPAapiResultText(s1,"STAT_MESSWERT0_TEXT",1,"");
|
|
textout(blank, 24,0);
|
|
textout(s1, 24,5);
|
|
ergebnisDigitalAusgabe("STAT_MESSWERT0_WERT", 25, 5," EIN "," AUS ");
|
|
|
|
|
|
INPAapiResultText(s1,"STAT_MESSWERT1_TEXT",1,"");
|
|
textout(s1, 24,45);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT1_WERT",1);
|
|
INPAapiResultText(s1,"STAT_MESSWERT1_EINH",1,"");
|
|
analogout(r_temp,25,45,-50,150,-30,120,"4.1");
|
|
textout(s1, 25,75);
|
|
|
|
}
|
|
if (Tastung == 0xFF)
|
|
{
|
|
textout(blank, 27,0);
|
|
textout("E-Box-Lüfter: Ansteuerung beendet",27,5);
|
|
delay(1000);
|
|
textout(blank, 27,0);
|
|
}
|
|
}
|
|
|
|
//**************************
|
|
//*** Ansteuerung DISA-1 ***
|
|
//**************************
|
|
disa1_ansteuer(in : int Tastung)
|
|
{
|
|
string s1, km_stand_string;
|
|
int i_temp;
|
|
real km_stand_real;
|
|
|
|
if (Tastung == 0) INPAapiJob(sgbd,"STEUERN_DISA","0","");
|
|
if (Tastung == 1) INPAapiJob(sgbd,"STEUERN_DISA","1","");
|
|
if (Tastung == 0xFE) INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4A71", "" ) ;
|
|
if (Tastung == 0xFF) INPAapiJob(sgbd,"STEUERN_ENDE_DISA","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_DISA",s1);stop(); }
|
|
if (Tastung == 5)
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_DISA","1","");
|
|
textout("8s Klappe auf", 15,5);
|
|
delay(8000);
|
|
INPAapiJob(sgbd,"STEUERN_DISA","0","");
|
|
textout(blank, 15,0);
|
|
textout("8s Klappe zu", 15,5);
|
|
delay(8000);
|
|
INPAapiJob(sgbd,"STEUERN_DISA","1","");
|
|
textout(blank, 15,0);
|
|
textout("8s Klappe auf", 15,5);
|
|
delay(8000);
|
|
INPAapiJob(sgbd,"STEUERN_DISA","0","");
|
|
textout(blank, 15,0);
|
|
textout("8s Klappe zu", 15,5);
|
|
delay(8000);
|
|
textout(blank, 15,0);
|
|
textout("Diagnose beendet", 15,5);
|
|
textout("Fehlerspeicher kontrollieren", 16,5);
|
|
delay(3000);
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_DISA","","");
|
|
textout(blank, 15,0);
|
|
textout(blank, 16,0);
|
|
}
|
|
if (Tastung == 0xFE)
|
|
{
|
|
|
|
|
|
|
|
|
|
s1 = "DISA 1 (grosse Klappe) PWM-Wert";
|
|
textout(s1, 25,5);
|
|
s1 = "15% Bereitschaft 33% Zu 67% Auf";
|
|
textout(s1, 26,5);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp,27,5,0,100,0,100,"2.0");
|
|
INPAapiResultText(s1,"STAT_MESSWERT0_EINH",1,"");
|
|
textout(s1, 27,34);
|
|
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x480A,0x5A5C,0x5A5D","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
s1 = "Aktueller Kilometerstand:";
|
|
textout(s1,13,20);
|
|
INPAapiResultAnalog(km_stand_real,"STAT_MESSWERT0_WERT",1);
|
|
realtostring(km_stand_real,"6.0",km_stand_string);
|
|
textout(km_stand_string,13,45);
|
|
INPAapiResultText(s1,"STAT_MESSWERT0_EINH",1,"");
|
|
textout(s1,13,60);
|
|
s1 = "Fehlerrückmeldung DISA-Klappe 1";
|
|
textout(s1,16,5);
|
|
ergebnisDigitalAusgabe("STAT_MESSWERT1_WERT", 17, 5," aktiv vorhanden "," nicht vorhanden ");
|
|
s1 = "Schalthäufigkeitszähler DISA-Klappe 1";
|
|
textout(s1, 21,5);
|
|
INPAapiResultInt(i_temp,"STAT_MESSWERT2_WERT",1);
|
|
inttostring(i_temp,s1);
|
|
if(i_temp == 0) {s1 = "DISA-Klappe 1 nicht verbaut";}
|
|
else {inttostring(i_temp,s1);}
|
|
textout(s1, 22,5);
|
|
}
|
|
if (Tastung == 0xFF)
|
|
{
|
|
textout(blank, 25,0);
|
|
textout("DISA 1: Ansteuerung beendet",25,5);
|
|
textout("DISA 2 (kleine Klappe) PWM-Wert", 25,45);
|
|
delay(1000);
|
|
textout(blank, 25,0);
|
|
}
|
|
}
|
|
|
|
//**************************
|
|
//*** Ansteuerung DISA-2 ***
|
|
//**************************
|
|
disa2_ansteuer(in : int Tastung)
|
|
{
|
|
string s1, km_stand_string;
|
|
int i_temp;
|
|
real km_stand_real;
|
|
|
|
if (Tastung == 0) INPAapiJob(sgbd,"STEUERN_DISA2","0","");
|
|
if (Tastung == 1) INPAapiJob(sgbd,"STEUERN_DISA2","1","");
|
|
if (Tastung == 0xFE) INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4A72", "" ) ;
|
|
if (Tastung == 0xFF) INPAapiJob(sgbd,"STEUERN_ENDE_DISA2","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_DISA2",s1);stop(); }
|
|
if (Tastung == 5)
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_DISA2","1","");
|
|
textout("8s Klappe auf", 15,40);
|
|
delay(8000);
|
|
INPAapiJob(sgbd,"STEUERN_DISA2","0","");
|
|
textout(blank, 15,0);
|
|
textout("8s Klappe zu", 15,40);
|
|
delay(8000);
|
|
INPAapiJob(sgbd,"STEUERN_DISA2","1","");
|
|
textout(blank, 15,0);
|
|
textout("8s Klappe auf", 15,40);
|
|
delay(8000);
|
|
INPAapiJob(sgbd,"STEUERN_DISA2","0","");
|
|
textout(blank, 15,0);
|
|
textout("8s Klappe zu", 15,40);
|
|
delay(8000);
|
|
textout(blank, 15,0);
|
|
textout("Diagnose beendet", 15,40);
|
|
textout("Fehlerspeicher kontrollieren", 16,40);
|
|
delay(3000);
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_DISA2","","");
|
|
textout(blank, 15,0);
|
|
textout(blank, 16,0);
|
|
}
|
|
if (Tastung == 0xFE)
|
|
{
|
|
s1 = "DISA 2 (kleine Klappe) PWM-Wert";
|
|
textout(s1, 25,45);
|
|
s1 = "15% Bereitschaft 33% Zu 67% Auf";
|
|
textout(s1, 26,45);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp,27,45,0,100,0,100,"2.0");
|
|
INPAapiResultText(s1,"STAT_MESSWERT0_EINH",1,"");
|
|
textout(s1, 27,75);
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x480A,0x5A5E,0x5A5F","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
s1 = "Aktueller Kilometerstand:";
|
|
textout(s1,13,20);
|
|
INPAapiResultAnalog(km_stand_real,"STAT_MESSWERT0_WERT",1);
|
|
realtostring(km_stand_real,"6.0",km_stand_string);
|
|
textout(km_stand_string,13,45);
|
|
INPAapiResultText(s1,"STAT_MESSWERT0_EINH",1,"");
|
|
textout(s1,13,60);
|
|
s1 = "Fehlerrückmeldung DISA-Klappe 2";
|
|
textout(s1,16,45);
|
|
ergebnisDigitalAusgabe("STAT_MESSWERT1_WERT", 17, 45," aktiv vorhanden "," nicht vorhanden ");
|
|
s1 = "Schalthäufigkeitszähler DISA-Klappe 2";
|
|
textout(s1, 21,45);
|
|
INPAapiResultInt(i_temp,"STAT_MESSWERT2_WERT",1);
|
|
inttostring(i_temp,s1);
|
|
if(i_temp == 0) {s1 = "DISA-Klappe 2 nicht verbaut";}
|
|
else {inttostring(i_temp,s1);}
|
|
textout(s1, 22,45);
|
|
}
|
|
if (Tastung == 0xFF)
|
|
{
|
|
textout(blank, 25,45);
|
|
textout("DISA2: Ansteuerung beendet",25,45);
|
|
delay(1000);
|
|
textout(blank, 25,45);
|
|
}
|
|
}
|
|
|
|
//*******************************
|
|
//*** Ansteuerung Abgasklappe ***
|
|
//*******************************
|
|
agk_ansteuer(in : int Tastung)
|
|
{
|
|
string s1;
|
|
int i_temp;
|
|
|
|
if (Tastung == 0) INPAapiJob(sgbd,"STEUERN_AGK","0","");
|
|
if (Tastung == 1) INPAapiJob(sgbd,"STEUERN_AGK","1","");
|
|
if (Tastung == 2) INPAapiJob(sgbd,"STEUERN_AGK","","");
|
|
if (Tastung == 0xFE) INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4A78", "" ) ;
|
|
if (Tastung == 0xFF) INPAapiJob(sgbd,"STEUERN_ENDE_AGK","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") {messagebox("STEUERN_AGK",s1);stop();}
|
|
if (Tastung == 0xFE)
|
|
{
|
|
s1 = "Status Abgasklappe";
|
|
textout(blank, 23,0);
|
|
textout(s1, 23,5);
|
|
MWBLErgebnisDigitalAusgabe("0x4A78", 25, 5," ZU "," AUF ");
|
|
}
|
|
if (Tastung == 0xFF)
|
|
{
|
|
textout(blank, 23,0);
|
|
textout("Abgasklappe: Ansteuerung beendet",23,5);
|
|
delay(1000);
|
|
}
|
|
}
|
|
|
|
//******************************
|
|
//*** Ansteuerung DMTL-Pumpe ***
|
|
//******************************
|
|
dmtl_p_ansteuer(in : int Tastung)
|
|
{
|
|
string s1;
|
|
|
|
if (Tastung == 0) INPAapiJob(sgbd,"STEUERN_DMTL_P","0","");
|
|
if (Tastung == 1) INPAapiJob(sgbd,"STEUERN_DMTL_P","1","");
|
|
if (Tastung == 0xFE) INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4A66", "" );
|
|
if (Tastung == 0xFF) INPAapiJob(sgbd,"STEUERN_ENDE_DMTL_P","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") {messagebox("STEUERN_DMTL_P",s1);stop();}
|
|
else
|
|
{
|
|
if (Tastung == 0xFE)
|
|
{
|
|
textout("DMTL-Pumpe", 27,0);
|
|
MWBLErgebnisDigitalAusgabe("0x4A66" , 28, 0," EIN "," AUS ");
|
|
}
|
|
if (Tastung == 0xFF)
|
|
{
|
|
textout("DMTL-Pumpe: Ansteuerung beendet",25,0);
|
|
delay(1000);
|
|
textout(blank, 25,0);
|
|
}
|
|
}
|
|
}
|
|
|
|
//*******************************
|
|
//*** Ansteuerung DMTL-Ventil ***
|
|
//*******************************
|
|
dmtl_v_ansteuer(in : int Tastung)
|
|
{
|
|
string s1;
|
|
int i1;
|
|
if (Tastung == 0) INPAapiJob(sgbd,"STEUERN_DMTL_V","0","");
|
|
if (Tastung == 1) INPAapiJob(sgbd,"STEUERN_DMTL_V","1","");
|
|
if (Tastung == 0xFE) INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4A67", "" ) ;
|
|
if (Tastung == 0xFF) INPAapiJob(sgbd,"STEUERN_ENDE_DMTL_V","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") {messagebox("STEUERN_DMTL_V",s1); stop();}
|
|
else
|
|
{
|
|
if (Tastung == 0xFE)
|
|
{
|
|
textout("DMTL-Ventil", 27,30);
|
|
// ergebnisDigitalAusgabe("STAT_MOTOR_AUS_WERT" , 28, 30," EIN "," AUS ");
|
|
|
|
MWBLErgebnisDigitalAusgabe("STAT_MESSWERT0_WERT", 28, 30," EIN "," AUS ");
|
|
|
|
}
|
|
if (Tastung == 0xFF)
|
|
{
|
|
textout("DMTL-Ventil: Ansteuerung beendet",25,30);
|
|
delay(1000);
|
|
textout(blank, 25,0);
|
|
}
|
|
}
|
|
}
|
|
|
|
//********************************
|
|
//*** Ansteuerung DMTL-Heizung ***
|
|
//********************************
|
|
dmtl_h_ansteuer(in : int Tastung)
|
|
{
|
|
string s1;
|
|
|
|
if (Tastung == 0) INPAapiJob(sgbd,"STEUERN_DMTL_HEIZUNG","0","");
|
|
if (Tastung == 1) INPAapiJob(sgbd,"STEUERN_DMTL_HEIZUNG","1","");
|
|
if (Tastung == 0xFE) INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4A68", "" ) ;
|
|
if (Tastung == 0xFF) INPAapiJob(sgbd,"STEUERN_ENDE_DMTL_HEIZUNG","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") {messagebox("STEUERN_DMTL_HEIZUNG",s1); stop();}
|
|
else
|
|
{
|
|
if (Tastung == 0xFE)
|
|
{
|
|
textout("DMTL-Heizung", 27,60);
|
|
MWBLErgebnisDigitalAusgabe("STAT_MESSWERT0_WERT" , 28,60," EIN "," AUS ");
|
|
}
|
|
if (Tastung == 0xFF)
|
|
{
|
|
textout("DMTL-Heizung: Ansteuerung beendet",25,60);
|
|
delay(1000);
|
|
textout(blank, 25,0);
|
|
}
|
|
}
|
|
}
|
|
|
|
//***********************
|
|
//*** Ansteuerung MIL ***
|
|
//***********************
|
|
mil_ansteuer(in : int Tastung)
|
|
{
|
|
string s1;
|
|
if (Tastung == 0) INPAapiJob(sgbd,"STEUERN_MIL","0","");
|
|
if (Tastung == 1) INPAapiJob(sgbd,"STEUERN_MIL","1","");
|
|
if (Tastung == 0xFE) INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4A69", "" ) ;
|
|
if (Tastung == 0xFF) INPAapiJob(sgbd,"STEUERN_ENDE_MIL","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_MIL",s1); stop(); }
|
|
else
|
|
{
|
|
if (Tastung != 0xFF)
|
|
{
|
|
textout("MIL", 27,5);
|
|
|
|
MWBLErgebnisDigitalAusgabe("0x4A69" , 28, 5," EIN "," AUS ");
|
|
}
|
|
else
|
|
{
|
|
textout("MIL: Ansteuerung beendet",25,5);
|
|
delay(1000);
|
|
textout(blank, 25,0);
|
|
}
|
|
}
|
|
}
|
|
|
|
//***********************
|
|
//*** Ansteuerung EML ***
|
|
//***********************
|
|
eml_ansteuer(in : int Tastung)
|
|
{
|
|
string s1;
|
|
if (Tastung == 0) INPAapiJob(sgbd,"STEUERN_EML","0","");
|
|
if (Tastung == 1) INPAapiJob(sgbd,"STEUERN_EML","1","");
|
|
if (Tastung == 0xFE) INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4A6B", "" ) ;
|
|
if (Tastung == 0xFF) INPAapiJob(sgbd,"STEUERN_ENDE_EML","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_EML",s1); stop(); }
|
|
else
|
|
{
|
|
if (Tastung != 0xFF) {
|
|
|
|
textout("EML", 27,45);
|
|
|
|
MWBLErgebnisDigitalAusgabe("0x4A6B" , 28, 45," EIN "," AUS ");
|
|
}
|
|
else
|
|
{
|
|
textout("EML: Ansteuerung beendet",25,45);
|
|
delay(1000);
|
|
textout(blank, 25,0);
|
|
}
|
|
}
|
|
}
|
|
|
|
//*********************************************
|
|
//*** Ansteuerung Klemme 87/Hauptrelais DME ***
|
|
//*********************************************
|
|
kl87_ansteuer(in : int Tastung)
|
|
{
|
|
string s1;
|
|
int i_temp;
|
|
|
|
if (Tastung == 0) INPAapiJob(sgbd,"STEUERN_UVSG","0","");
|
|
if (Tastung == 1) INPAapiJob(sgbd,"STEUERN_UVSG","1","");
|
|
if (Tastung == 0xFE) INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x460C,0x4609", "" ) ;
|
|
if (Tastung == 0xFF) INPAapiJob(sgbd,"STEUERN_ENDE_UVSG","","");
|
|
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") {messagebox("STEUERN_UVSG",s1);stop();}
|
|
|
|
if (Tastung == 0xFE)
|
|
{
|
|
s1 = "Status Klemme 87";
|
|
textout(blank, 24,0);
|
|
textout(s1, 24,5);
|
|
ergebnisDigitalAusgabe("STAT_MESSWERT0_WERT", 25, 5," EIN "," AUS ");
|
|
s1 = "Klemme 87/Versorgung DME";
|
|
textout(s1, 24,45);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT1_WERT",1);
|
|
INPAapiResultText(s1,"STAT_MESSWERT1_EINH",1,"");
|
|
analogout(r_temp,25,45,0,16,9,16,"4.2");
|
|
textout(s1, 25,78);
|
|
}
|
|
|
|
if (Tastung == 0xFF)
|
|
{
|
|
textout(blank, 23,0);
|
|
textout("Klemme87: Ansteuerung beendet",23,5);
|
|
delay(1000);
|
|
textout(blank, 23,0);
|
|
}
|
|
}
|
|
|
|
//*******************************
|
|
//*** Ansteuerung Startrelais ***
|
|
//*******************************
|
|
sr_ansteuer(in : int Tastung)
|
|
{
|
|
string s1;
|
|
int i_temp;
|
|
|
|
if (Tastung == 0) INPAapiJob(sgbd,"STEUERN_SR","0","");
|
|
if (Tastung == 1) INPAapiJob(sgbd,"STEUERN_SR","1","");
|
|
if (Tastung == 0xFE) INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4ABD", "" ) ;
|
|
if (Tastung == 0xFF) INPAapiJob(sgbd,"STEUERN_ENDE_SR","","");
|
|
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") {messagebox("STEUERN_KGEH",s1);stop();}
|
|
|
|
if (Tastung == 0xFE)
|
|
{
|
|
s1 = "Status Startrelais";
|
|
textout(blank, 23,0);
|
|
textout(s1, 23,5);
|
|
MWBLErgebnisDigitalAusgabe("0x4ABD", 25, 5," EIN "," AUS ");
|
|
}
|
|
|
|
if (Tastung == 0xFF)
|
|
{
|
|
textout(blank, 23,0);
|
|
textout("Startrelais: Ansteuerung beendet",23,5);
|
|
delay(1000);
|
|
}
|
|
}
|
|
|
|
//**********************************************************
|
|
//*** Ansteuerung Relais Kurbelgehäuseentlüftungsheizung ***
|
|
//**********************************************************
|
|
r_kgeh_ansteuer(in : int Tastung)
|
|
{
|
|
string s1;
|
|
int i_temp;
|
|
|
|
if (Tastung == 0) INPAapiJob(sgbd,"STEUERN_KGEH","0","");
|
|
if (Tastung == 1) INPAapiJob(sgbd,"STEUERN_KGEH","1","");
|
|
if (Tastung == 0xFE) INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4A73", "" ) ;
|
|
if (Tastung == 0xFF) INPAapiJob(sgbd,"STEUERN_ENDE_KGEH","","");
|
|
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") {messagebox("STEUERN_KGEH",s1);stop();}
|
|
|
|
if (Tastung == 0xFE)
|
|
{
|
|
s1 = "Status Kurbelgehäuseentlüftungsheizung";
|
|
textout(blank, 23,0);
|
|
textout(s1, 23,5);
|
|
MWBLErgebnisDigitalAusgabe("0x4A73", 25, 5," EIN "," AUS ");
|
|
}
|
|
|
|
if (Tastung == 0xFF)
|
|
{
|
|
textout(blank, 23,0);
|
|
textout("Kurbelgehäuseentlüftungsheizung: Ansteuerung beendet",23,5);
|
|
delay(1000);
|
|
}
|
|
}
|
|
|
|
//*********************************
|
|
//*** Ansteuerung Drosselklappe ***
|
|
//*********************************
|
|
dk_ansteuer(in : int Tastung)
|
|
{
|
|
string s1, help;
|
|
real r_temp;
|
|
|
|
if (Tastung == 0xFE)
|
|
{
|
|
INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x5858,0x4A06,0x4A07", "" ) ;
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STATUS_DKP_VOLT",s1); stop(); }
|
|
else
|
|
{
|
|
s1= "Status Drosselklappe";
|
|
textout(s1, 19,5);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
INPAapiResultText(s1,"STAT_MESSWERT0_EINH",1,"");
|
|
analogout(r_temp,20,5,0,100,0,100,"4.1");
|
|
textout(s1, 20,37);
|
|
s1= "ADC-Wert 1 Drosselklappe";
|
|
textout(s1, 23,5);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT1_WERT",1);
|
|
INPAapiResultText(s1,"STAT_MESSWERT1_EINH",1,"");
|
|
analogout(r_temp,24,5,0,5,0,5,"4.1");
|
|
textout(s1, 24,37);
|
|
s1= "ADC-Wert 2 Drosselklappe";
|
|
textout(s1, 23,45);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT2_WERT",1);
|
|
INPAapiResultText(s1,"STAT_MESSWERT2_EINH",1,"");
|
|
analogout(r_temp,24,45,0,5,0,5,"4.1");
|
|
textout(s1, 24,77);
|
|
}
|
|
}
|
|
|
|
if (Tastung == 0xFF)
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_DK","","");
|
|
textout(blank, 19,0);
|
|
textout("Drosselklappe: Ansteuerung beendet",19,5);
|
|
delay(1000);
|
|
textout(blank, 19,0);
|
|
}
|
|
|
|
if( Tastung < 100 )
|
|
{
|
|
inttostring(Tastung,help);
|
|
INPAapiJob(sgbd,"STEUERN_DK",help,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_DK",s1); stop(); }
|
|
}
|
|
}
|
|
|
|
//*************************************
|
|
//*** Ansteuerung Generatorspannung ***
|
|
//*************************************
|
|
gen_ansteuer(in : int Tastung)
|
|
{
|
|
string s1, help;
|
|
real r_temp;
|
|
|
|
if (Tastung == 0xFE)
|
|
{
|
|
INPAapiJob(sgbd,"STATUS_UGEN","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STATUS_UGEN",s1); stop(); }
|
|
else
|
|
{
|
|
s1= "Status Generatorspannung";
|
|
textout(s1, 23,5);
|
|
INPAapiResultAnalog(r_temp,"STAT_PHY_UGEN_WERT",1);
|
|
INPAapiResultText(s1,"STAT_PHY_UGEN_EINH",1,"");
|
|
analogout(r_temp,24,5,9,16,9,16,"4.1");
|
|
textout(s1, 24,37);
|
|
}
|
|
}
|
|
|
|
if (Tastung == 0xFF)
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_UGEN","","");
|
|
textout(blank, 23,0);
|
|
textout("Generatorspannung: Ansteuerung beendet",23,5);
|
|
delay(1000);
|
|
textout(blank, 23,0);
|
|
}
|
|
|
|
if( Tastung < 100 )
|
|
{
|
|
inttostring(Tastung,help);
|
|
INPAapiJob(sgbd,"STEUERN_UGEN",help,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_UGEN",s1); stop(); }
|
|
}
|
|
}
|
|
|
|
//***********************************
|
|
//*** Ansteuerung Öldruckregelung ***
|
|
//***********************************
|
|
odr_ansteuer(in : int Tastung)
|
|
{
|
|
string s1, help;
|
|
real r_temp;
|
|
|
|
if (Tastung == 0xFE)
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x4807","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("MESSWERTBLOCK_LESEN",s1); stop(); }
|
|
else
|
|
{
|
|
INPAapiResultText(s1,"STAT_MESSWERT0_TEXT",1,"");
|
|
textout(s1, 19,5);
|
|
ergebnisAnalogAusgabe("STAT_MOTORDREHZAHL_WERT", 20, 5, 0, 2500, 500, 2000,"5.1");
|
|
INPAapiResultText(s1,"STAT_MESSWERT0_EINH",1,"");
|
|
textout(s1, 20,37);
|
|
}
|
|
INPAapiJob(sgbd,"STATUS_ODR","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STATUS_ODR",s1); stop(); }
|
|
else
|
|
{
|
|
s1= "Sollwert Öldruckregelung";
|
|
textout(s1, 23,5);
|
|
INPAapiResultAnalog(r_temp,"STAT_PHY_P_OEL_SOLL_WERT",1);
|
|
INPAapiResultText(s1,"STAT_PHY_P_OEL_SOLL_EINH",1,"");
|
|
analogout(r_temp,24,5,0,10000,2000,9000,"5.1");
|
|
textout(s1, 24,37);
|
|
s1= "Istwert Öldruckregelung";
|
|
textout(s1, 27,5);
|
|
INPAapiResultAnalog(r_temp,"STAT_PHY_P_OEL_IST_WERT",1);
|
|
INPAapiResultText(s1,"STAT_PHY_P_OEL_IST_EINH",1,"");
|
|
analogout(r_temp,28,5,0,10000,2000,9000,"5.1");
|
|
textout(s1, 28,37);
|
|
}
|
|
}
|
|
|
|
if (Tastung == 0xFF)
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_ODR","","");
|
|
textout(blank, 19,0);
|
|
textout("Öldruckregelung Vertrimmung beendet",19,5);
|
|
delay(1000);
|
|
textout(blank, 19,0);
|
|
}
|
|
|
|
if( Tastung < 100 )
|
|
{
|
|
inttostring(Tastung,help);
|
|
strcat(help,help,"00");
|
|
INPAapiJob(sgbd,"STEUERN_ODR",help,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_ODR",s1); stop(); }
|
|
}
|
|
}
|
|
|
|
//*********************************
|
|
//*** Ansteuerung Öldruckventil ***
|
|
//*********************************
|
|
odv_ansteuer(in : int Tastung)
|
|
{
|
|
string s1, help;
|
|
real r_temp;
|
|
|
|
if (Tastung == 0xFE)
|
|
{
|
|
INPAapiJob(sgbd,"STATUS_ODV","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STATUS_ODV",s1); stop(); }
|
|
else
|
|
{
|
|
s1= "Status Öldruckventil";
|
|
textout(s1, 23,5);
|
|
INPAapiResultAnalog(r_temp,"STAT_STAT_ODV_WERT",1);
|
|
INPAapiResultText(s1,"STAT_STAT_ODV_EINH",1,"");
|
|
analogout(r_temp,24,5,0,100,0,100,"4.1");
|
|
textout(s1, 24,37);
|
|
}
|
|
}
|
|
|
|
if (Tastung == 0xFF)
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_ODV","","");
|
|
textout(blank, 23,0);
|
|
textout("Öldruckventil: Ansteuerung beendet",23,5);
|
|
delay(1000);
|
|
textout(blank, 23,0);
|
|
}
|
|
|
|
if( Tastung < 100 )
|
|
{
|
|
inttostring(Tastung,help);
|
|
INPAapiJob(sgbd,"STEUERN_ODV",help,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_ODV",s1); stop(); }
|
|
}
|
|
}
|
|
|
|
//**************************************
|
|
//*** Ansteuerung Ladedrucksteller-1 ***
|
|
//**************************************
|
|
lds1_ansteuer(in : int Tastung)
|
|
{
|
|
string s1, help;
|
|
real r_temp;
|
|
|
|
if (Tastung == 0xFE)
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x4AAB","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STATUS_LDS1",s1); stop(); }
|
|
else
|
|
{
|
|
s1= "Status Ladedrucksteller 1";
|
|
textout(s1, 19,5);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
INPAapiResultText(s1,"STAT_MESSWERT0_EINH",1,"");
|
|
analogout(r_temp,20,5,0,100,0,100,"4.1");
|
|
textout(s1, 20,37);
|
|
}
|
|
}
|
|
|
|
if (Tastung == 0xFF)
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_LDS1","","");
|
|
textout(blank, 19,0);
|
|
textout("Ladedrucksteller 1: Ansteuerung beendet",19,5);
|
|
delay(1000);
|
|
textout(blank, 19,0);
|
|
}
|
|
|
|
if( Tastung < 100 )
|
|
{
|
|
inttostring(Tastung,help);
|
|
INPAapiJob(sgbd,"STEUERN_LDS1",help,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_LDS1",s1); stop(); }
|
|
}
|
|
}
|
|
|
|
//**************************************
|
|
//*** Ansteuerung Ladedrucksteller-2 ***
|
|
//**************************************
|
|
lds2_ansteuer(in : int Tastung)
|
|
{
|
|
string s1, help;
|
|
real r_temp;
|
|
|
|
if (Tastung == 0xFE)
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x4AAB","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("MESSWERTBLOCK_LESEN,0x4AAB",s1); stop(); }
|
|
else {
|
|
s1= "Status Ladedrucksteller 2";
|
|
textout(s1, 23,5);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
INPAapiResultText(s1,"STAT_MESSWERT0_EINH",1,"");
|
|
analogout(r_temp,24,5,0,100,0,100,"4.1");
|
|
textout(s1, 24,37);
|
|
}
|
|
}
|
|
|
|
if (Tastung == 0xFF)
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_LDS2","","");
|
|
textout(blank, 23,0);
|
|
textout("Ladedrucksteller 2: Ansteuerung beendet",23,5);
|
|
delay(1000);
|
|
textout(blank, 23,0);
|
|
}
|
|
|
|
if( Tastung < 100 )
|
|
{
|
|
inttostring(Tastung,help);
|
|
INPAapiJob(sgbd,"STEUERN_LDS2",help,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_LDS2",s1); stop(); }
|
|
}
|
|
}
|
|
|
|
//******************************
|
|
//*** Ansteuerung Motorlager ***
|
|
//******************************
|
|
mls_ansteuer(in : int Tastung)
|
|
{
|
|
string s1;
|
|
int i_temp;
|
|
|
|
if (Tastung == 0) INPAapiJob(sgbd,"STEUERN_MLS","0","");
|
|
if (Tastung == 1) INPAapiJob(sgbd,"STEUERN_MLS","1","");
|
|
if (Tastung == 0xFE) INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x4A64","");
|
|
if (Tastung == 0xFF) INPAapiJob(sgbd,"STEUERN_ENDE_MLS","","");
|
|
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") {messagebox("MESSWERTBLOCK_LESEN, 0x4A64",s1);stop();}
|
|
|
|
if (Tastung == 0xFE)
|
|
{
|
|
s1 = "Status Motorlager";
|
|
textout(blank, 23,0);
|
|
textout(s1, 23,5);
|
|
MWBLErgebnisDigitalAusgabe("0x4A64", 25, 5," EIN "," AUS ");
|
|
}
|
|
|
|
if (Tastung == 0xFF)
|
|
{
|
|
textout(blank, 23,0);
|
|
textout("Motorlager: Ansteuerung beendet",23,5);
|
|
delay(1000);
|
|
}
|
|
}
|
|
|
|
//**************************************
|
|
//*** Ansteuerung Mengensteuerventil ***
|
|
//**************************************
|
|
msv_ansteuer(in : int Tastung)
|
|
{
|
|
string s1, help;
|
|
int i1;
|
|
real r_temp;
|
|
bool b_soll_hom, b_soll_hom_sch, b_soll_sch, b_soll_hom_lam_1;
|
|
bool b_ist_hom, b_ist_hom_sch, b_ist_sch, b_ist_hom_lam_1;
|
|
|
|
if (Tastung == 0xFE)
|
|
{
|
|
INPAapiJob(sgbd,"STATUS_BETRIEBSART","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STATUS_BETRIEBSART",s1); stop(); }
|
|
else
|
|
{
|
|
INPAapiResultInt(i1,"STAT_STAT_BA_SOLL_WERT",1);
|
|
if (i1 == 1) {b_soll_hom = 0; b_soll_hom_sch = 0; b_soll_sch = 1; b_soll_hom_lam_1 = 0;}
|
|
if (i1 == 2) {b_soll_hom = 1; b_soll_hom_sch = 0; b_soll_sch = 0; b_soll_hom_lam_1 = 0;}
|
|
if (i1 == 3) {b_soll_hom = 0; b_soll_hom_sch = 1; b_soll_sch = 0; b_soll_hom_lam_1 = 0;}
|
|
ftextout("Soll-Betriebsart",17,35,0,1);
|
|
text(18, 5,"Homogen");
|
|
digitalout(b_soll_hom ,19, 5," EIN "," AUS ");
|
|
text(18,35,"Homogen-Schicht");
|
|
digitalout(b_soll_hom_sch ,19,35," EIN "," AUS ");
|
|
text(18,65,"Schicht");
|
|
digitalout(b_soll_sch ,19,65," EIN "," AUS ");
|
|
INPAapiResultInt(i1,"STAT_STAT_BA_IST_WERT",1);
|
|
if (i1 == 1) {b_ist_hom = 0; b_ist_hom_sch = 0; b_ist_sch = 1; b_ist_hom_lam_1 = 0;}
|
|
if (i1 == 2) {b_ist_hom = 1; b_ist_hom_sch = 0; b_ist_sch = 0; b_ist_hom_lam_1 = 0;}
|
|
if (i1 == 3) {b_ist_hom = 0; b_ist_hom_sch = 1; b_ist_sch = 0; b_ist_hom_lam_1 = 0;}
|
|
ftextout("Ist-Betriebsart",21,35,0,1);
|
|
text(22, 5,"Homogen");
|
|
digitalout(b_ist_hom ,23, 5," EIN "," AUS ");
|
|
text(22,35,"Homogen-Schicht");
|
|
digitalout(b_ist_hom_sch ,23,35," EIN "," AUS ");
|
|
text(22,65,"Schicht");
|
|
digitalout(b_ist_sch ,23,65," EIN "," AUS ");
|
|
}
|
|
|
|
INPAapiJob(sgbd,"STATUS_MSV","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STATUS_MSV",s1); stop(); }
|
|
else
|
|
{
|
|
s1= "Status Mengensteuerventil";
|
|
textout(s1, 26,5);
|
|
INPAapiResultAnalog(r_temp,"STAT_PHY_MSV_WERT",1);
|
|
INPAapiResultText(s1,"STAT_PHY_MSV_EINH",1,"");
|
|
analogout(r_temp,27,5,0,250000,50000,250000,"7.1");
|
|
textout(s1, 27,40);
|
|
}
|
|
}
|
|
|
|
if (Tastung == 0xFF)
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_MSV","","");
|
|
textout(blank, 26,0);
|
|
textout("Mengensteuerventil: Ansteuerung beendet",26,5);
|
|
delay(1000);
|
|
textout(blank, 26,0);
|
|
}
|
|
|
|
if( Tastung < 200 )
|
|
{
|
|
inttostring(Tastung,help);
|
|
strcat(help,help,"000");
|
|
INPAapiJob(sgbd,"STEUERN_MSV",help,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_MSV",s1); stop(); }
|
|
}
|
|
}
|
|
|
|
//*******************************************
|
|
//*** Ansteuerung Abgasrückführungsventil ***
|
|
//*******************************************
|
|
agr_ansteuer(in : int Tastung)
|
|
{
|
|
string s1, help;
|
|
real r_temp;
|
|
|
|
if (Tastung == 0xFE)
|
|
{
|
|
INPAapiJob(sgbd,"STATUS_AGR","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STATUS_AGR",s1); stop(); }
|
|
else
|
|
{
|
|
s1= "Spannung Abgasrückführungsventil";
|
|
textout(s1, 19,5);
|
|
INPAapiResultAnalog(r_temp,"STAT_ADC_AGR_WERT",1);
|
|
INPAapiResultText(s1,"STAT_ADC_AGR_EINH",1,"");
|
|
analogout(r_temp,20,5,0,5,0,5,"4.1");
|
|
textout(s1, 20,37);
|
|
s1= "Hub Abgasrückführungsventil";
|
|
textout(s1, 23,5);
|
|
INPAapiResultAnalog(r_temp,"STAT_PHY_AGR_WERT",1);
|
|
INPAapiResultText(s1,"STAT_PHY_AGR_EINH",1,"");
|
|
analogout(r_temp,24,5,0,100,0,100,"4.1");
|
|
textout(s1, 24,37);
|
|
}
|
|
}
|
|
|
|
if (Tastung == 0xFF)
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_AGR","","");
|
|
textout(blank, 19,0);
|
|
textout("Abgasrückrührungsventil: Ansteuerung beendet",19,5);
|
|
delay(1000);
|
|
textout(blank, 19,0);
|
|
}
|
|
|
|
if( Tastung < 100 )
|
|
{
|
|
inttostring(Tastung,help);
|
|
INPAapiJob(sgbd,"STEUERN_AGR",help,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_AGR",s1); stop(); }
|
|
}
|
|
}
|
|
|
|
//*****************************************
|
|
//*** Ansteuerung Drosselklappenheizung ***
|
|
//*****************************************
|
|
dkh_ansteuer(in : int Tastung)
|
|
{
|
|
string s1, s2;
|
|
int i_temp;
|
|
|
|
if (Tastung == 0) INPAapiJob(sgbd,"STEUERN_DKH","0","");
|
|
if (Tastung == 1) INPAapiJob(sgbd,"STEUERN_DKH","1","");
|
|
if (Tastung == 0xFE) INPAapiJob(sgbd,"STATUS_DKH","","");
|
|
if (Tastung == 0xFF) INPAapiJob(sgbd,"STEUERN_ENDE_DKH","","");
|
|
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") {messagebox("STEUERN_DKH",s1);stop();}
|
|
|
|
if (Tastung == 0xFE)
|
|
{
|
|
s1 = "Status Drosselklappenheizung";
|
|
textout(blank, 21,0);
|
|
textout(s1, 21,5);
|
|
INPAapiResultInt(i_temp,"STAT_STAT_DKH_WERT",1);
|
|
inttostring(i_temp,s1);
|
|
INPAapiResultText(s2,"STAT_STAT_DKH_TEXT",1,"");
|
|
s1 = s1 + " " + s2;
|
|
textout(s1, 23,5);
|
|
ergebnisDigitalAusgabe("STAT_STAT_DKH_RLY", 25, 5," EIN "," AUS ");
|
|
}
|
|
|
|
if (Tastung == 0xFF)
|
|
{
|
|
textout(blank, 23,0);
|
|
textout("Drosselklappenheizung: Ansteuerung beendet",23,5);
|
|
delay(1000);
|
|
textout(blank, 23,0);
|
|
}
|
|
}
|
|
|
|
//**********************************
|
|
//*** Ausgabe von Ergebnissätzen ***
|
|
//**********************************
|
|
|
|
//**************************
|
|
//*** Ausgabe von Texten ***
|
|
//**************************
|
|
ergebnisAusgabeTxt(in:string text1, in:string ResultText, in:int Zeile, in:int Spalte,
|
|
in:int OffsetY1, in:int OffsetX1)
|
|
{
|
|
int ergSatz;
|
|
string s_temp="";
|
|
|
|
textout(text1,Zeile,Spalte);
|
|
ergSatz=1;
|
|
INPAapiResultText(s_temp,ResultText,ergSatz,"");
|
|
textout(s_temp,Zeile+OffsetY1,Spalte+OffsetX1);
|
|
}
|
|
|
|
//***************************************************************
|
|
//*** Ausgabe von Texten aus unterschiedlichen Ergebnissätzen ***
|
|
//***************************************************************
|
|
ergebnisAusgabeTxt2(in:string text1, in:string ResultText, in:int Zeile, in:int Spalte,
|
|
in:int OffsetY1, in:int OffsetX1, in: int ergSatz)
|
|
{
|
|
string s_temp="";
|
|
|
|
textout(text1,Zeile,Spalte);
|
|
INPAapiResultText(s_temp,ResultText,ergSatz,"");
|
|
textout(s_temp,Zeile+OffsetY1,Spalte+OffsetX1);
|
|
}
|
|
|
|
//*********************************************
|
|
//*** Ausgabe von Strings mit Zeilenumbruch ***
|
|
//*********************************************
|
|
|
|
stringChopper(in:string text1, in:string incomingString, in:int fragmentLaenge, in:int Zeile, in:int Spalte, in:int OffsetY1, in:int OffsetX1) {
|
|
|
|
string s1 = "" ;
|
|
string restString = "" ;
|
|
string stringFragment = "" ;
|
|
|
|
int laengeRestString = 0 ;
|
|
int laengeIncomingString = 0 ;
|
|
int i = 0 ;
|
|
|
|
bool stringChopperEnde = FALSE ;
|
|
bool stringZerteilt = FALSE ;
|
|
|
|
stringFragment = incomingString ;
|
|
restString = incomingString ;
|
|
|
|
textout(text1, Zeile, Spalte) ;
|
|
|
|
strlen (laengeIncomingString, incomingString) ;
|
|
strlen (laengeRestString, restString) ;
|
|
|
|
while (stringChopperEnde == FALSE) {
|
|
|
|
strlen (laengeRestString, restString) ;
|
|
if (laengeIncomingString <= fragmentLaenge) {
|
|
stringChopperEnde = TRUE ;
|
|
textout(restString,Zeile+OffsetY1,Spalte+OffsetX1);
|
|
}
|
|
if (laengeRestString <= fragmentLaenge) {
|
|
stringChopperEnde = TRUE ;
|
|
textout(restString,Zeile+OffsetY1+i,Spalte+OffsetX1);
|
|
}
|
|
else {
|
|
midstr (stringFragment, restString, 0, fragmentLaenge) ;
|
|
strlen (laengeRestString, restString) ;
|
|
midstr (restString, restString, fragmentLaenge, laengeRestString-fragmentLaenge) ;
|
|
textout (stringFragment, Zeile+OffsetY1 + i ,Spalte+OffsetX1) ;
|
|
i = i + 1;
|
|
}
|
|
}
|
|
}
|
|
|
|
//********************************
|
|
//*** Ausgabe von ASCII-Werten ***
|
|
//********************************
|
|
ergebnisAusgabeAscii(in:string text1, in:string ResultText, in:int Zeile, in:int Spalte,
|
|
in:int OffsetY1, in:int OffsetX1)
|
|
{
|
|
int ergSatz;
|
|
string s_temp="";
|
|
|
|
textout(text1,Zeile,Spalte);
|
|
ergSatz=1;
|
|
INPAapiResultText(s_temp,ResultText,ergSatz,"");
|
|
textout(s_temp,Zeile+OffsetY1,Spalte+OffsetX1);
|
|
}
|
|
|
|
//*************************
|
|
//*** Ausgabe Int-Werte ***
|
|
//*************************
|
|
ergebnisAusgabeInt(in:string text1, in:string ResultText, in:int Zeile, in:int Spalte,
|
|
in:int OffsetY1, in:int OffsetX1)
|
|
{
|
|
int ergSatz;
|
|
int i_temp;
|
|
string s_temp,s;
|
|
|
|
textout(text1,Zeile,Spalte);
|
|
ergSatz=1;
|
|
INPAapiResultInt(i_temp,ResultText,ergSatz);
|
|
inttostring(i_temp,s_temp);
|
|
textout(s_temp,Zeile+OffsetY1,Spalte+OffsetX1);
|
|
}
|
|
|
|
//*************************
|
|
//*** Ausgabe Hex-Werte ***
|
|
//*************************
|
|
ergebnisAusgabeHex(in:string text1, in:string ResultText, in: int laenge, in:int Zeile, in:int Spalte,
|
|
in:int OffsetY1, in:int OffsetX1)
|
|
{
|
|
int ergSatz;
|
|
int i_temp;
|
|
string s_temp,s;
|
|
|
|
textout(text1,Zeile,Spalte);
|
|
ergSatz=1;
|
|
INPAapiResultInt(i_temp,ResultText,ergSatz);
|
|
inttohexstring(i_temp,laenge,s_temp);
|
|
textout(s_temp,Zeile+OffsetY1,Spalte+OffsetX1);
|
|
}
|
|
|
|
//****************************
|
|
//*** Ausgabe Analog-Werte ***
|
|
//****************************
|
|
ergebnisAusgabeAnalog(in:string text1, in:string ResultText, in:string format, in:int Zeile, in:int Spalte,
|
|
in:int OffsetY1, in:int OffsetX1)
|
|
{
|
|
int ergSatz;
|
|
real r_temp;
|
|
string s_temp;
|
|
|
|
textout(text1,Zeile,Spalte);
|
|
|
|
ergSatz=1;
|
|
|
|
INPAapiResultAnalog(r_temp,ResultText,ergSatz);
|
|
realtostring(r_temp, format, s_temp);
|
|
textout(s_temp,Zeile+OffsetY1,Spalte+OffsetX1);
|
|
}
|
|
|
|
//***********************************************
|
|
//*** kurze Ausgabe der Fehler auf Bildschirm ***
|
|
//*** 12.07.01 mw Neu mit globalen Varialen ***
|
|
//***********************************************
|
|
AusgabeBildschirmKurz( in: int a_ergSatz )
|
|
{
|
|
string s, s2;
|
|
int i_temp;
|
|
long l_temp;
|
|
real r_temp;
|
|
|
|
if ((f_anzahl >= 1) && (a_ergSatz <= f_anzahl))
|
|
{
|
|
zeile0 = "Fehler: ";
|
|
inttostring(a_ergSatz,s);
|
|
inttostring(f_anzahl,s2);
|
|
zeile0 = zeile0 + s + "("+ s2 + ")";
|
|
INPAapiResultText(s2,"F_ORT_NR",a_ergSatz,"");
|
|
FehlerOrtNr = s2;
|
|
zeile0 = zeile0 + " Nr: " + s2;
|
|
ftextout(zeile0,0,0,0,1);
|
|
stringappend(zeile0,20," ");
|
|
INPAapiResultText(s2,"F_ORT_TEXT",a_ergSatz,"");
|
|
stringappend(s2,65," ");
|
|
ftextout(s2,0,20,0,1);
|
|
zeile0 = zeile0 + s2;
|
|
FehlerOrtText = s2;
|
|
|
|
INPAapiResultBinary( "F_HEX_CODE", a_ergSatz ); // Hex Antwort als data, letzte set
|
|
GetBinaryDataString( s2, i_temp); // umwandeln in hex Code, Laenge
|
|
midstr( s, s2, 5, 1); // Symptom Nr herausfischen
|
|
|
|
zeile1 = " Readines Flag:";
|
|
textout(zeile1,1,0);
|
|
stringappend(zeile1,20," ");
|
|
INPAapiResultInt(i_temp,"F_READY_NR" ,a_ergSatz);
|
|
inttostring(i_temp,s);
|
|
stringappend(s,2," ");
|
|
INPAapiResultText(s2,"F_READY_TEXT",a_ergSatz,"");
|
|
s2 = "(" + s + ") " + s2;
|
|
stringappend(s2,75," ");
|
|
textout(s2,1,20);
|
|
zeile1 = zeile1 + s2;
|
|
|
|
zeile2 = " Fehlerstatus:";
|
|
textout(zeile2,2,0);
|
|
stringappend(zeile2,20," ");
|
|
INPAapiResultInt(i_temp,"F_VORHANDEN_NR" ,a_ergSatz);
|
|
inttostring(i_temp,s);
|
|
stringappend(s,2," ");
|
|
INPAapiResultText(s2,"F_VORHANDEN_TEXT",a_ergSatz,"");
|
|
s2 = "(" + s + ") " + s2;
|
|
stringappend(s2,75," ");
|
|
textout(s2,2,20);
|
|
zeile2 = zeile2 + s2;
|
|
|
|
zeile3 = " MIL - Status:";
|
|
textout(zeile3,3,0);
|
|
stringappend(zeile3,20," ");
|
|
INPAapiResultInt(i_temp,"F_WARNUNG_NR" ,a_ergSatz);
|
|
inttostring(i_temp,s);
|
|
INPAapiResultText(s2,"F_WARNUNG_TEXT",a_ergSatz,"");
|
|
s2 = "(" + s + ") " + s2;
|
|
stringappend(s2,75," ");
|
|
textout(s2,3,20);
|
|
zeile3 = zeile3 + s2;
|
|
|
|
}
|
|
if (a_ergSatz == (f_anzahl + 1)) textout( "ListenEnde", 0, 21);
|
|
}
|
|
|
|
// ****************************************************
|
|
// *** Ausgabe der gesamten Fehler mit Umwelt ***
|
|
// *** BildschirmAufbau und Druckzeilen vorbereiten ***
|
|
// *** 12 07 01 mw Flimmern und Textreste beseitigt ***
|
|
// ****************************************************
|
|
ausgabeBildschirmDetail(in: int f_temp)
|
|
{
|
|
string s, s2, s_temp, s_temp_2;
|
|
real r, r_temp;
|
|
int hfk1, pos, zahl, i_temp, l_temp;
|
|
|
|
INPAapiResultInt(hfk1,"F_HFK" ,1);
|
|
inttostring(hfk1,s); // Aufbewahren fuer Umwelt Anzahl
|
|
ftextout("Häufigkeit:",0,70,0,1); textout(s,0,78);
|
|
s_temp_2 = zeile0;
|
|
zeile0 = zeile0 + "Häufigkeit: " + s;
|
|
|
|
INPAapiResultSets(i_temp); // variable Anzahl Umweltsaetze
|
|
INPAapiResultBinary("_RESPONSE_EXTENDED_DATA",i_temp); // Hex Antwort als data, letzte set
|
|
GetBinaryDataString(zeile_hex,i_temp); // umwandeln in hex Code, Laenge
|
|
|
|
zeile5 = " ";
|
|
// zeile5 = " SAE-Code: ";
|
|
textout(zeile5,5,0);
|
|
// INPAapiResultText(s,"F_PCODE_TEXT",1,"");
|
|
s = " ";
|
|
zeile5 = zeile5 + " " + s;
|
|
stringappend(zeile5,90," ");
|
|
stringappend(s,60," "); // Zeile auffuellen um alte Texte zu loeschen
|
|
textout(s,5,17);
|
|
INPAapiResultInt(i_temp,"F_HLZ" ,1);
|
|
inttostring(i_temp,s);
|
|
zeile5 = zeile5 + " F_HLZ: " + s;
|
|
ftextout("F_HLZ: ",5,70,0,1); textout(s,5,76);
|
|
//
|
|
// zeile6 = "Umwelttext";
|
|
// zeile6 = zeile6 + " / Eintrag bei";
|
|
// ftextout(zeile6,6,0,0,1);
|
|
// stringappend(zeile6,42," "); // UW texte sind 2 eingerueckt
|
|
//
|
|
// INPAapiResultText(s,"F_UW1_TEXT",1,"");
|
|
// ftextout(s,7,0,0,2);
|
|
// stringappend(s,40," ");
|
|
// zeile7 = " " + s;
|
|
//
|
|
// INPAapiResultText(s,"F_UW2_TEXT",1,"");
|
|
// ftextout(s,8,0,0,2);
|
|
// stringappend(s,40," ");
|
|
// zeile8 = " " + s;
|
|
//
|
|
// INPAapiResultText(s,"F_UW3_TEXT",1,"");
|
|
// ftextout(s,9,0,0,2);
|
|
// stringappend(s,40," ");
|
|
// zeile9 = " " + s;
|
|
//
|
|
// INPAapiResultText(s,"F_UW4_TEXT",1,"");
|
|
// ftextout(s,10,0,0,2);
|
|
// stringappend(s,40," ");
|
|
// zeile10 = " " + s;
|
|
//
|
|
//// Ausgabe der Fehlerspeicherzusatzinformationen nur für den Fehler 2D5F Reset (11615)
|
|
// if (f_temp == 11615)
|
|
// {
|
|
// zeilezusatz0 = "Fehlerspeicherzusatzinformation für ";
|
|
// zeilezusatz0 = zeilezusatz0 + s_temp_2;
|
|
// ftextout(zeilezusatz0,11,0,0,1);
|
|
// }
|
|
//
|
|
// if( hfk1 > 2 ) hfk1 = 3; // Begrenzen auf Bildschirmbreite
|
|
//
|
|
// if (hfk1 > 2)
|
|
// {
|
|
// pos = 40 + ( hfk1 - 3 ) * 14; // nach hinten durchschieben
|
|
// INPAapiResultText (s2, "F_UW1_EINH", 3,"");
|
|
// if (s2 == "0-n") { INPAapiResultText( s_temp,"F_UW1_WERT", 3,""); s2 = "";}
|
|
// else { INPAapiResultAnalog( r, "F_UW1_WERT", 3); realtostring(r,"6.2",s_temp);}
|
|
// strlen( i_temp, s_temp);
|
|
// i_temp = 6 - i_temp; // alles auf f6.2 rechtsbuendig
|
|
// s="";
|
|
// stringappend(s, i_temp," ");
|
|
// s = s + s_temp + " " + s2; // Position der Einheit linksbuendig
|
|
// ftextout(s,7,pos,0,2);
|
|
// stringappend(s,14," "); // und nun festen Abstand
|
|
// zeile7 = zeile7 + s;
|
|
// INPAapiResultText( s2, "F_UW2_EINH", 3,"");
|
|
// if (s2 == "0-n") { INPAapiResultText( s_temp, "F_UW2_WERT",3,""); s2 = "";}
|
|
// else { INPAapiResultAnalog( r, "F_UW2_WERT", 3); realtostring(r,"6.2",s_temp);}
|
|
// strlen( i_temp, s_temp);
|
|
// i_temp = 6 - i_temp;
|
|
// s="";
|
|
// stringappend(s, i_temp," ");
|
|
// s = s + s_temp + " " + s2;
|
|
// ftextout(s,8,pos,0,2);
|
|
// stringappend(s,14," ");
|
|
// zeile8 = zeile8 + s;
|
|
// INPAapiResultText( s2, "F_UW3_EINH", 3,"");
|
|
// if (s2 == "0-n") { INPAapiResultText( s_temp, "F_UW3_WERT", 3,""); s2 = "";}
|
|
// else { INPAapiResultAnalog( r, "F_UW3_WERT", 3); realtostring(r,"6.2",s_temp);}
|
|
// strlen( i_temp, s_temp);
|
|
// i_temp = 6 - i_temp;
|
|
// s="";
|
|
// stringappend(s, i_temp," ");
|
|
// s = s + s_temp + " " + s2;
|
|
// ftextout(s,9,pos,0,2);
|
|
// stringappend(s,14," ");
|
|
// zeile9 = zeile9 + s;
|
|
// INPAapiResultText( s2, "F_UW4_EINH", 3,"");
|
|
// if (s2 == "0-n") { INPAapiResultText( s_temp, "F_UW4_WERT", 3,""); s2 = "";}
|
|
// else { INPAapiResultAnalog( r, "F_UW4_WERT", 3); realtostring(r,"6.2",s_temp);}
|
|
// strlen( i_temp, s_temp);
|
|
// i_temp = 6 - i_temp;
|
|
// s="";
|
|
// stringappend(s, i_temp," ");
|
|
// s = s + s_temp + " " + s2;
|
|
// ftextout(s,10,pos,0,2);
|
|
// stringappend(s,14," ");
|
|
// zeile10 = zeile10 + s;
|
|
// INPAapiResultText( s_temp, "F_UW_KM", 3,"");
|
|
// strlen( i_temp, s_temp);
|
|
// i_temp = 6 - i_temp;
|
|
// s="";
|
|
// stringappend(s, i_temp," ");
|
|
// s = s + s_temp + " km(n.)";
|
|
// ftextout(s,6,pos,0,2);
|
|
// stringappend(s,14," ");
|
|
// zeile6 = zeile6 + s;
|
|
// }
|
|
//
|
|
// if (hfk1 > 1)
|
|
// {
|
|
// pos = 40 + ( hfk1 - 2 ) * 14; // nach hinten durchschieben
|
|
// INPAapiResultText(s2, "F_UW1_EINH",2,"");
|
|
// if (s2 == "0-n") { INPAapiResultText( s_temp, "F_UW1_WERT", 2,""); s2 = "";}
|
|
// else { INPAapiResultAnalog( r, "F_UW1_WERT", 2); realtostring(r,"6.2",s_temp);}
|
|
// strlen( i_temp, s_temp);
|
|
// i_temp = 6 - i_temp; // alles auf f6.2 rechtsbuendig
|
|
// s="";
|
|
// stringappend(s, i_temp," ");
|
|
// s = s + s_temp + " " + s2; // Position der Einheit linksbuendig
|
|
// ftextout(s,7,pos,0,2);
|
|
// stringappend(s,14," "); // und nun festen Abstand
|
|
// zeile7 = zeile7 + s;
|
|
// INPAapiResultText( s2, "F_UW2_EINH",2,"");
|
|
// if (s2 == "0-n") { INPAapiResultText( s_temp, "F_UW2_WERT", 2,""); s2 = "";}
|
|
// else { INPAapiResultAnalog( r, "F_UW2_WERT", 2); realtostring(r,"6.2",s_temp);}
|
|
// strlen( i_temp, s_temp);
|
|
// i_temp = 6 - i_temp;
|
|
// s="";
|
|
// stringappend(s, i_temp," ");
|
|
// s = s + s_temp + " " + s2;
|
|
// ftextout(s,8,pos,0,2);
|
|
// stringappend(s,14," ");
|
|
// zeile8 = zeile8 + s;
|
|
// INPAapiResultText( s2, "F_UW3_EINH", 2,"");
|
|
// if (s2 == "0-n") { INPAapiResultText( s_temp, "F_UW3_WERT", 2,""); s2 = "";}
|
|
// else { INPAapiResultAnalog( r, "F_UW3_WERT", 2); realtostring(r,"6.2",s_temp);}
|
|
// strlen( i_temp, s_temp);
|
|
// i_temp = 6 - i_temp;
|
|
// s="";
|
|
// stringappend(s, i_temp," ");
|
|
// s = s + s_temp + " " + s2;
|
|
// ftextout(s,9,pos,0,2);
|
|
// stringappend(s,14," ");
|
|
// zeile9 = zeile9 + s;
|
|
// INPAapiResultText( s2, "F_UW4_EINH", 2,"");
|
|
// if (s2 == "0-n") { INPAapiResultText( s_temp, "F_UW4_WERT", 2,""); s2 = "";}
|
|
// else { INPAapiResultAnalog( r, "F_UW4_WERT", 2); realtostring(r,"6.2",s_temp);}
|
|
// strlen( i_temp, s_temp);
|
|
// i_temp = 6 - i_temp;
|
|
// s="";
|
|
// stringappend(s, i_temp," ");
|
|
// s = s + s_temp + " " + s2;
|
|
// ftextout(s,10,pos,0,2);
|
|
// stringappend(s,14," ");
|
|
// zeile10 = zeile10 + s;
|
|
// INPAapiResultText( s_temp, "F_UW_KM", 2,"");
|
|
// strlen( i_temp, s_temp);
|
|
// i_temp = 6 - i_temp;
|
|
// s="";
|
|
// stringappend(s, i_temp," ");
|
|
// s = s + s_temp + " km(2.)";
|
|
// ftextout(s,6,pos,0,2);
|
|
// stringappend(s,14," ");
|
|
// zeile6 = zeile6 + s;
|
|
// }
|
|
//
|
|
//// Ist immer bei Fehlereintrag, aber wegen copy paste
|
|
// if (hfk1 > 0)
|
|
// {
|
|
// pos = 40 + ( hfk1 - 1 ) * 14; // nach hinten durchschieben
|
|
// INPAapiResultText( s2, "F_UW1_EINH", 1,"");
|
|
// if (s2 == "0-n") { INPAapiResultText(s_temp,"F_UW1_WERT",1,""); s2 = "";}
|
|
// else { INPAapiResultAnalog(r, "F_UW1_WERT", 1); realtostring(r,"6.2",s_temp);}
|
|
// strlen( i_temp, s_temp);
|
|
// i_temp = 6 - i_temp; // alles auf f6.2 rechtsbuendig
|
|
// s="";
|
|
// stringappend(s, i_temp," ");
|
|
// s = s + s_temp + " " + s2; // Position der Einheit linksbuendig
|
|
// ftextout(s,7,pos,0,2);
|
|
// stringappend(s,14," "); // und nun festen Abstand
|
|
// zeile7 = zeile7 + s;
|
|
// INPAapiResultText( s2, "F_UW2_EINH", 1,"");
|
|
// if (s2 == "0-n") { INPAapiResultText( s_temp, "F_UW2_WERT", 1,""); s2 = "";}
|
|
// else { INPAapiResultAnalog( r, "F_UW2_WERT", 1); realtostring(r,"6.2",s_temp);}
|
|
// strlen( i_temp, s_temp);
|
|
// i_temp = 6 - i_temp;
|
|
// s="";
|
|
// stringappend(s, i_temp," ");
|
|
// s = s + s_temp + " " + s2;
|
|
// ftextout(s,8,pos,0,2);
|
|
// stringappend(s,14," ");
|
|
// zeile8 = zeile8 + s;
|
|
// INPAapiResultText( s2, "F_UW3_EINH", 1,"");
|
|
// if (s2 == "0-n") { INPAapiResultText( s_temp, "F_UW3_WERT", 1,""); s2 = "";}
|
|
// else { INPAapiResultAnalog( r, "F_UW3_WERT", 1); realtostring(r,"6.2",s_temp);}
|
|
// strlen( i_temp, s_temp);
|
|
// i_temp = 6 - i_temp;
|
|
// s="";
|
|
// stringappend(s, i_temp," ");
|
|
// s = s + s_temp + " " + s2;
|
|
// ftextout(s,9,pos,0,2);
|
|
// stringappend(s,14," ");
|
|
// zeile9 = zeile9 + s;
|
|
// INPAapiResultText( s2, "F_UW4_EINH", 1,"");
|
|
// if (s2 == "0-n") { INPAapiResultText( s_temp, "F_UW4_WERT", 1,""); s2 = "";}
|
|
// else { INPAapiResultAnalog( r, "F_UW4_WERT", 1); realtostring(r,"6.2",s_temp);}
|
|
// strlen( i_temp, s_temp);
|
|
// i_temp = 6 - i_temp;
|
|
// s="";
|
|
// stringappend(s, i_temp," ");
|
|
// s = s + s_temp + " " + s2;
|
|
// ftextout(s,10,pos,0,2);
|
|
// stringappend(s,14," ");
|
|
// zeile10 = zeile10 + s;
|
|
// INPAapiResultText( s_temp, "F_UW_KM", 1,"");
|
|
// strlen( i_temp, s_temp);
|
|
// i_temp = 6 - i_temp;
|
|
// s="";
|
|
// stringappend(s, i_temp," ");
|
|
// s = s + s_temp + " km(1.)";
|
|
// ftextout(s,6,pos,0,2);
|
|
// stringappend(s,14," ");
|
|
// zeile6 = zeile6 + s;
|
|
// }
|
|
}
|
|
|
|
//********************************************************************
|
|
//** Ausgabe der Fehlerzusatzinformationen für Reset-Fehler 2D5F ***
|
|
//** 2004 06 03 ew Erstellung ***
|
|
//********************************************************************
|
|
ausgabeFehlerZusatzInformation()
|
|
{
|
|
string s, s2, s_temp;
|
|
int i_temp, pos, pos_offset;
|
|
|
|
pos = 60;
|
|
pos_offset = 75;
|
|
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(s2,"STAT_MESSWERT0_EINH", 1,"");
|
|
if (s2 == "0-n") {INPAapiResultText(s_temp,"STAT_MESSWERT0_STRING",1,""); s2 = "";}
|
|
else {if (s2 == "-") {s2 = "";} INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1); realtostring(r_temp,"6.2",s_temp);}
|
|
strlen(i_temp,s_temp);
|
|
i_temp = 6 - i_temp; // alles auf f6.2 rechtsbuendig
|
|
s="";
|
|
stringappend(s, i_temp," ");
|
|
s = s + s_temp + " " + s2; // Position der Einheit linksbuendig
|
|
textout(vartext1,12,0);
|
|
ftextout(s,12,pos,0,2);
|
|
stringappend(vartext1,pos_offset," ");
|
|
zeilezusatz1 = " " + vartext1 + s;
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(s2,"STAT_MESSWERT1_EINH", 1,"");
|
|
if (s2 == "0-n") {INPAapiResultText(s_temp,"STAT_MESSWERT1_STRING",1,""); s2 = "";}
|
|
else {if (s2 == "-") {s2 = "";} INPAapiResultAnalog(r_temp,"STAT_MESSWERT1_WERT",1); realtostring(r_temp,"6.2",s_temp);}
|
|
strlen(i_temp,s_temp);
|
|
i_temp = 6 - i_temp; // alles auf f6.2 rechtsbuendig
|
|
s="";
|
|
stringappend(s, i_temp," ");
|
|
s = s + s_temp + " " + s2; // Position der Einheit linksbuendig
|
|
textout(vartext1,13,0);
|
|
ftextout(s,13,pos,0,2);
|
|
stringappend(vartext1,pos_offset," ");
|
|
zeilezusatz2 = " " + vartext1 + s;
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT2_TEXT",1,"");
|
|
INPAapiResultText(s2,"STAT_MESSWERT2_EINH", 1,"");
|
|
if (s2 == "0-n") {INPAapiResultText(s_temp,"STAT_MESSWERT2_STRING",1,""); s2 = "";}
|
|
else {if (s2 == "-") {s2 = "";} INPAapiResultAnalog(r_temp,"STAT_MESSWERT2_WERT",1); realtostring(r_temp,"6.2",s_temp);}
|
|
strlen(i_temp,s_temp);
|
|
i_temp = 6 - i_temp; // alles auf f6.2 rechtsbuendig
|
|
s="";
|
|
stringappend(s, i_temp," ");
|
|
s = s + s_temp + " " + s2; // Position der Einheit linksbuendig
|
|
textout(vartext1,14,0);
|
|
ftextout(s,14,pos,0,2);
|
|
stringappend(vartext1,pos_offset," ");
|
|
zeilezusatz3 = " " + vartext1 + s;
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT3_TEXT",1,"");
|
|
INPAapiResultText(s2,"STAT_MESSWERT3_EINH", 1,"");
|
|
if (s2 == "0-n") {INPAapiResultText(s_temp,"STAT_MESSWERT3_STRING",1,""); s2 = "";}
|
|
else {if (s2 == "-") {s2 = "";} INPAapiResultAnalog(r_temp,"STAT_MESSWERT3_WERT",1); realtostring(r_temp,"6.2",s_temp);}
|
|
strlen(i_temp,s_temp);
|
|
i_temp = 6 - i_temp; // alles auf f6.2 rechtsbuendig
|
|
s="";
|
|
stringappend(s, i_temp," ");
|
|
s = s + s_temp + " " + s2; // Position der Einheit linksbuendig
|
|
textout(vartext1,15,0);
|
|
ftextout(s,15,pos,0,2);
|
|
stringappend(vartext1,pos_offset," ");
|
|
zeilezusatz4 = " " + vartext1 + s;
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT4_TEXT",1,"");
|
|
INPAapiResultText(s2,"STAT_MESSWERT4_EINH", 1,"");
|
|
if (s2 == "0-n") {INPAapiResultText(s_temp,"STAT_MESSWERT4_STRING",1,""); s2 = "";}
|
|
else {if (s2 == "-") {s2 = "";} INPAapiResultAnalog(r_temp,"STAT_MESSWERT4_WERT",1); realtostring(r_temp,"6.2",s_temp);}
|
|
strlen(i_temp,s_temp);
|
|
i_temp = 6 - i_temp; // alles auf f6.2 rechtsbuendig
|
|
s="";
|
|
stringappend(s, i_temp," ");
|
|
s = s + s_temp + " " + s2; // Position der Einheit linksbuendig
|
|
textout(vartext1,16,0);
|
|
ftextout(s,16,pos,0,2);
|
|
stringappend(vartext1,pos_offset," ");
|
|
zeilezusatz5 = " " + vartext1 + s;
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT5_TEXT",1,"");
|
|
INPAapiResultText(s2,"STAT_MESSWERT5_EINH", 1,"");
|
|
if (s2 == "0-n") {INPAapiResultText(s_temp,"STAT_MESSWERT5_STRING",1,""); s2 = "";}
|
|
else {if (s2 == "-") {s2 = "";} INPAapiResultAnalog(r_temp,"STAT_MESSWERT5_WERT",1); realtostring(r_temp,"6.2",s_temp);}
|
|
strlen(i_temp,s_temp);
|
|
i_temp = 6 - i_temp; // alles auf f6.2 rechtsbuendig
|
|
s="";
|
|
stringappend(s, i_temp," ");
|
|
s = s + s_temp + " " + s2; // Position der Einheit linksbuendig
|
|
textout(vartext1,17,0);
|
|
ftextout(s,17,pos,0,2);
|
|
stringappend(vartext1,pos_offset," ");
|
|
zeilezusatz6 = " " + vartext1 + s;
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT6_TEXT",1,"");
|
|
INPAapiResultText(s2,"STAT_MESSWERT6_EINH", 1,"");
|
|
if (s2 == "0-n") {INPAapiResultText(s_temp,"STAT_MESSWERT6_STRING",1,""); s2 = "";}
|
|
else {if (s2 == "-") {s2 = "";} INPAapiResultAnalog(r_temp,"STAT_MESSWERT6_WERT",1); realtostring(r_temp,"6.2",s_temp);}
|
|
strlen(i_temp,s_temp);
|
|
i_temp = 6 - i_temp; // alles auf f6.2 rechtsbuendig
|
|
s="";
|
|
stringappend(s, i_temp," ");
|
|
s = s + s_temp + " " + s2; // Position der Einheit linksbuendig
|
|
textout(vartext1,18,0);
|
|
ftextout(s,18,pos,0,2);
|
|
stringappend(vartext1,pos_offset," ");
|
|
zeilezusatz7 = " " + vartext1 + s;
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT7_TEXT",1,"");
|
|
INPAapiResultText(s2,"STAT_MESSWERT7_EINH", 1,"");
|
|
if (s2 == "0-n") {INPAapiResultText(s_temp,"STAT_MESSWERT7_STRING",1,""); s2 = "";}
|
|
else {if (s2 == "-") {s2 = "";} INPAapiResultAnalog(r_temp,"STAT_MESSWERT7_WERT",1); realtostring(r_temp,"6.2",s_temp);}
|
|
strlen(i_temp,s_temp);
|
|
i_temp = 6 - i_temp; // alles auf f6.2 rechtsbuendig
|
|
s="";
|
|
stringappend(s, i_temp," ");
|
|
s = s + s_temp + " " + s2; // Position der Einheit linksbuendig
|
|
textout(vartext1,19,0);
|
|
ftextout(s,19,pos,0,2);
|
|
stringappend(vartext1,pos_offset," ");
|
|
zeilezusatz8 = " " + vartext1 + s;
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT8_TEXT",1,"");
|
|
INPAapiResultText(s2,"STAT_MESSWERT8_EINH", 1,"");
|
|
if (s2 == "0-n") {INPAapiResultText(s_temp,"STAT_MESSWERT8_STRING",1,""); s2 = "";}
|
|
else {if (s2 == "-") {s2 = "";} INPAapiResultAnalog(r_temp,"STAT_MESSWERT8_WERT",1); realtostring(r_temp,"6.2",s_temp);}
|
|
strlen(i_temp,s_temp);
|
|
i_temp = 6 - i_temp; // alles auf f6.2 rechtsbuendig
|
|
s="";
|
|
stringappend(s, i_temp," ");
|
|
s = s + s_temp + " " + s2; // Position der Einheit linksbuendig
|
|
textout(vartext1,20,0);
|
|
ftextout(s,20,pos,0,2);
|
|
stringappend(vartext1,pos_offset," ");
|
|
zeilezusatz9 = " " + vartext1 + s;
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT9_TEXT",1,"");
|
|
INPAapiResultText(s2,"STAT_MESSWERT9_EINH", 1,"");
|
|
if (s2 == "0-n") {INPAapiResultText(s_temp,"STAT_MESSWERT9_STRING",1,""); s2 = "";}
|
|
else {if (s2 == "-") {s2 = "";} INPAapiResultAnalog(r_temp,"STAT_MESSWERT9_WERT",1); realtostring(r_temp,"6.2",s_temp);}
|
|
strlen(i_temp,s_temp);
|
|
i_temp = 6 - i_temp; // alles auf f6.2 rechtsbuendig
|
|
s="";
|
|
stringappend(s, i_temp," ");
|
|
s = s + s_temp + " " + s2; // Position der Einheit linksbuendig
|
|
textout(vartext1,21,0);
|
|
ftextout(s,21,pos,0,2);
|
|
stringappend(vartext1,pos_offset," ");
|
|
zeilezusatz10 = " " + vartext1 + s;
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT10_TEXT",1,"");
|
|
INPAapiResultText(s2,"STAT_MESSWERT10_EINH", 1,"");
|
|
if (s2 == "0-n") {INPAapiResultText(s_temp,"STAT_MESSWERT10_STRING",1,""); s2 = "";}
|
|
else {if (s2 == "-") {s2 = "";} INPAapiResultAnalog(r_temp,"STAT_MESSWERT10_WERT",1); realtostring(r_temp,"6.2",s_temp);}
|
|
strlen(i_temp,s_temp);
|
|
i_temp = 6 - i_temp; // alles auf f6.2 rechtsbuendig
|
|
s="";
|
|
stringappend(s, i_temp," ");
|
|
s = s + s_temp + " " + s2; // Position der Einheit linksbuendig
|
|
textout(vartext1,22,0);
|
|
ftextout(s,22,pos,0,2);
|
|
stringappend(vartext1,pos_offset," ");
|
|
zeilezusatz11 = " " + vartext1 + s;
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT11_TEXT",1,"");
|
|
INPAapiResultText(s2,"STAT_MESSWERT11_EINH", 1,"");
|
|
if (s2 == "0-n") {INPAapiResultText(s_temp,"STAT_MESSWERT11_STRING",1,""); s2 = "";}
|
|
else {if (s2 == "-") {s2 = "";} INPAapiResultAnalog(r_temp,"STAT_MESSWERT11_WERT",1); realtostring(r_temp,"6.2",s_temp);}
|
|
strlen(i_temp,s_temp);
|
|
i_temp = 6 - i_temp; // alles auf f6.2 rechtsbuendig
|
|
s="";
|
|
stringappend(s, i_temp," ");
|
|
s = s + s_temp + " " + s2; // Position der Einheit linksbuendig
|
|
textout(vartext1,23,0);
|
|
ftextout(s,23,pos,0,2);
|
|
stringappend(vartext1,pos_offset," ");
|
|
zeilezusatz12 = " " + vartext1 + s;
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT12_TEXT",1,"");
|
|
INPAapiResultText(s2,"STAT_MESSWERT12_EINH", 1,"");
|
|
if (s2 == "0-n") {INPAapiResultText(s_temp,"STAT_MESSWERT12_STRING",1,""); s2 = "";}
|
|
else {if (s2 == "-") {s2 = "";} INPAapiResultAnalog(r_temp,"STAT_MESSWERT12_WERT",1); realtostring(r_temp,"6.2",s_temp);}
|
|
strlen(i_temp,s_temp);
|
|
i_temp = 6 - i_temp; // alles auf f6.2 rechtsbuendig
|
|
s="";
|
|
stringappend(s, i_temp," ");
|
|
s = s + s_temp + " " + s2; // Position der Einheit linksbuendig
|
|
textout(vartext1,24,0);
|
|
ftextout(s,24,pos,0,2);
|
|
stringappend(vartext1,pos_offset," ");
|
|
zeilezusatz13 = " " + vartext1 + s;
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT13_TEXT",1,"");
|
|
INPAapiResultText(s2,"STAT_MESSWERT13_EINH", 1,"");
|
|
if (s2 == "0-n") {INPAapiResultText(s_temp,"STAT_MESSWERT13_STRING",1,""); s2 = "";}
|
|
else {if (s2 == "-") {s2 = "";} INPAapiResultAnalog(r_temp,"STAT_MESSWERT13_WERT",1); realtostring(r_temp,"6.2",s_temp);}
|
|
strlen(i_temp,s_temp);
|
|
i_temp = 6 - i_temp; // alles auf f6.2 rechtsbuendig
|
|
s="";
|
|
stringappend(s, i_temp," ");
|
|
s = s + s_temp + " " + s2; // Position der Einheit linksbuendig
|
|
textout(vartext1,25,0);
|
|
ftextout(s,25,pos,0,2);
|
|
stringappend(vartext1,pos_offset," ");
|
|
zeilezusatz14 = " " + vartext1 + s;
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT14_TEXT",1,"");
|
|
INPAapiResultText(s2,"STAT_MESSWERT14_EINH", 1,"");
|
|
if (s2 == "0-n") {INPAapiResultText(s_temp,"STAT_MESSWERT14_STRING",1,""); s2 = "";}
|
|
else {if (s2 == "-") {s2 = "";} INPAapiResultAnalog(r_temp,"STAT_MESSWERT14_WERT",1); realtostring(r_temp,"6.2",s_temp);}
|
|
strlen(i_temp,s_temp);
|
|
i_temp = 6 - i_temp; // alles auf f6.2 rechtsbuendig
|
|
s="";
|
|
stringappend(s, i_temp," ");
|
|
s = s + s_temp + " " + s2; // Position der Einheit linksbuendig
|
|
textout(vartext1,26,0);
|
|
ftextout(s,26,pos,0,2);
|
|
stringappend(vartext1,pos_offset," ");
|
|
zeilezusatz15 = " " + vartext1 + s;
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT15_TEXT",1,"");
|
|
INPAapiResultText(s2,"STAT_MESSWERT15_EINH", 1,"");
|
|
if (s2 == "0-n") {INPAapiResultText(s_temp,"STAT_MESSWERT15_STRING",1,""); s2 = "";}
|
|
else {if (s2 == "-") {s2 = "";} INPAapiResultAnalog(r_temp,"STAT_MESSWERT15_WERT",1); realtostring(r_temp,"6.2",s_temp);}
|
|
strlen(i_temp,s_temp);
|
|
i_temp = 6 - i_temp; // alles auf f6.2 rechtsbuendig
|
|
s="";
|
|
stringappend(s, i_temp," ");
|
|
s = s + s_temp + " " + s2; // Position der Einheit linksbuendig
|
|
textout(vartext1,27,0);
|
|
ftextout(s,27,pos,0,2);
|
|
stringappend(vartext1,pos_offset," ");
|
|
zeilezusatz16 = " " + vartext1 + s;
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT16_TEXT",1,"");
|
|
INPAapiResultText(s2,"STAT_MESSWERT16_EINH", 1,"");
|
|
if (s2 == "0-n") {INPAapiResultText(s_temp,"STAT_MESSWERT16_STRING",1,""); s2 = "";}
|
|
else {if (s2 == "-") {s2 = "";} INPAapiResultAnalog(r_temp,"STAT_MESSWERT16_WERT",1); realtostring(r_temp,"6.2",s_temp);}
|
|
strlen(i_temp,s_temp);
|
|
i_temp = 6 - i_temp; // alles auf f6.2 rechtsbuendig
|
|
s="";
|
|
stringappend(s, i_temp," ");
|
|
s = s + s_temp + " " + s2; // Position der Einheit linksbuendig
|
|
textout(vartext1,28,0);
|
|
ftextout(s,28,pos,0,2);
|
|
stringappend(vartext1,pos_offset," ");
|
|
zeilezusatz17 = " " + vartext1 + s;
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT17_TEXT",1,"");
|
|
INPAapiResultText(s2,"STAT_MESSWERT17_EINH", 1,"");
|
|
if (s2 == "0-n") {INPAapiResultText(s_temp,"STAT_MESSWERT17_STRING",1,""); s2 = "";}
|
|
else {if (s2 == "-") {s2 = "";} INPAapiResultAnalog(r_temp,"STAT_MESSWERT17_WERT",1); realtostring(r_temp,"6.2",s_temp);}
|
|
strlen(i_temp,s_temp);
|
|
i_temp = 6 - i_temp; // alles auf f6.2 rechtsbuendig
|
|
s="";
|
|
stringappend(s, i_temp," ");
|
|
s = s + s_temp + " " + s2; // Position der Einheit linksbuendig
|
|
textout(vartext1,29,0);
|
|
ftextout(s,29,pos,0,2);
|
|
stringappend(vartext1,pos_offset," ");
|
|
zeilezusatz18 = " " + vartext1 + s;
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT18_TEXT",1,"");
|
|
INPAapiResultText(s2,"STAT_MESSWERT18_EINH", 1,"");
|
|
if (s2 == "0-n") {INPAapiResultText(s_temp,"STAT_MESSWERT18_STRING",1,""); s2 = "";}
|
|
else {if (s2 == "-") {s2 = "";} INPAapiResultAnalog(r_temp,"STAT_MESSWERT18_WERT",1); realtostring(r_temp,"6.2",s_temp);}
|
|
strlen(i_temp,s_temp);
|
|
i_temp = 6 - i_temp; // alles auf f6.2 rechtsbuendig
|
|
s="";
|
|
stringappend(s, i_temp," ");
|
|
s = s + s_temp + " " + s2; // Position der Einheit linksbuendig
|
|
textout(vartext1,30,0);
|
|
ftextout(s,30,pos,0,2);
|
|
stringappend(vartext1,pos_offset," ");
|
|
zeilezusatz19 = " " + vartext1 + s;
|
|
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT19_TEXT",1,"");
|
|
INPAapiResultText(s2,"STAT_MESSWERT19_EINH", 1,"");
|
|
if (s2 == "0-n") {INPAapiResultText(s_temp,"STAT_MESSWERT19_STRING",1,""); s2 = "";}
|
|
else {if (s2 == "-") {s2 = "";} INPAapiResultAnalog(r_temp,"STAT_MESSWERT19_WERT",1); realtostring(r_temp,"6.2",s_temp);}
|
|
strlen(i_temp,s_temp);
|
|
i_temp = 6 - i_temp; // alles auf f6.2 rechtsbuendig
|
|
s="";
|
|
stringappend(s, i_temp," ");
|
|
s = s + s_temp + " " + s2; // Position der Einheit linksbuendig
|
|
textout(vartext1,31,0);
|
|
ftextout(s,31,pos,0,2);
|
|
stringappend(vartext1,pos_offset," ");
|
|
zeilezusatz20 = " " + vartext1 + s;
|
|
}
|
|
|
|
//*************************************************
|
|
//*** Ausgabe der History-Fehler auf Bildschirm ***
|
|
//*** 2001 07 06 mw angepasst an STD_HS_L ***
|
|
//*** 2003 02 06 mw Anzahl, Klasse ergaenzt ***
|
|
//*************************************************
|
|
ausgabeHistoryFehler( in: int set )
|
|
{
|
|
string s, s3, s2;
|
|
int hfk;
|
|
|
|
if ((f_anzahl >= 1) && (set <= f_anzahl))
|
|
{
|
|
AusgabeBildschirmKurz( set );
|
|
INPAapiResultText(s2,"F_CLA" ,set,"");
|
|
zeile5 = "Klasse : " + s2;
|
|
INPAapiResultInt(hfk,"F_HFK" ,set);
|
|
inttostring(hfk,s);
|
|
zeile5 = zeile5 + "; Häufigkeit: " + s + "; Eintrag bei km:";
|
|
textout(zeile5,5,0);
|
|
stringappend(zeile5,15," ");
|
|
INPAapiResultText(s2,"F_HSKM1",set,"");
|
|
INPAapiResultText(s ,"F_HSKM2",set,"");
|
|
INPAapiResultText(s3,"F_HSKM3",set,"");
|
|
s2 = "(1.): " + s2 + " (2.): " + s + " (n.): " + s3;
|
|
stringappend(s2,50," ");
|
|
textout(s2,5,35);
|
|
zeile5 = zeile5 + s2;
|
|
}
|
|
if (set == (f_anzahl + 1)) textout( "ListenEnde", 0, 21);
|
|
}
|
|
|
|
//******************************************************
|
|
//*** Ausgabe der Fehler auf Bildschirm als Hex-Dump ***
|
|
//******************************************************
|
|
ausgabeFehlerHex(in:int a_ergSatz, in:int speicherart)
|
|
{
|
|
string s,s2,s3;
|
|
int f_zahl;
|
|
int sets;
|
|
|
|
if (speicherart == 1) {INPAapiJob( sgbd, "FS_LESEN", "", "");}
|
|
if (speicherart == 2) {INPAapiJob( sgbd, "IS_LESEN", "", "");}
|
|
INPAapiResultSets(sets); //wieviel Fehler wurden abgespeichert
|
|
sets = sets -1;
|
|
if(sets == 0 )
|
|
{
|
|
blankscreen;
|
|
textout("Keine Fehlereinträge",10,20);
|
|
}
|
|
|
|
if ((sets > 0 ) && (a_ergSatz <= sets))
|
|
{
|
|
s2 = "Fehler "; //Zeile 0
|
|
inttostring(a_ergSatz,s);
|
|
inttostring(sets,s3); s2 = s2 + s + " (" + s3 + ")";
|
|
textout(s2,0,0);
|
|
|
|
INPAapiResultText(s,"F_ORT_NR",a_ergSatz,"");
|
|
INPAapiJob(sgbd,"FS_LESEN_HEX",s,"");
|
|
INPAapiResultText(s2,"F_ORT_TEXT",1,"");
|
|
ftextout(s2,0,17,0,1);
|
|
|
|
ftextout("Fehler_Daten:",1,0,0,1);
|
|
|
|
INPAapiResultText(s2,"FS_ZEILE1",1,""); //Zeile 1 (Daten 8Byte)
|
|
ftextout(s2,1,17,0,0);
|
|
|
|
INPAapiResultText(s2,"FS_ZEILE2",1,""); //Zeile 2 (Daten 8Byte)
|
|
ftextout(s2,2,17,0,0);
|
|
|
|
INPAapiResultText(s2,"FS_ZEILE3",1,""); //Zeile 3 (Daten 8 Byte)
|
|
ftextout(s2,3,17,0,0);
|
|
|
|
INPAapiResultText(s2,"FS_ZEILE4",1,"");
|
|
ftextout(s2,4,17,0,0);
|
|
}
|
|
if( a_ergSatz == ( sets + 1 ) ) { textout("ListenEnde ", 0, 21 );}
|
|
}
|
|
|
|
// ****************************************************
|
|
// *** Ausgabe der gesamten Fehler mit Umwelt ***
|
|
// *** BildschirmAufbau und Druckzeilen vorbereiten ***
|
|
// *** 12 07 01 mw Flimmern und Textreste beseitigt ***
|
|
// ****************************************************
|
|
ausgabeFehlerDetail( in:int ergSatz, in:int speicherart, out:int f_reset )
|
|
{
|
|
string s_temp;
|
|
int i_temp, f_temp;
|
|
long l_temp;
|
|
|
|
if ( ( f_anzahl >= 1 ) && ( ergSatz <= f_anzahl ) )
|
|
{
|
|
if (speicherart == 1) {INPAapiJob( sgbd, "FS_LESEN", "", "");}
|
|
if (speicherart == 2) {INPAapiJob( sgbd, "IS_LESEN", "", "");}
|
|
AusgabeBildschirmKurz( ergSatz ); // Statusbyte ist identisch mit Job 18h
|
|
|
|
INPAapiResultText(s_temp,"F_ORT_NR",ergSatz,""); // hole CDK-Nr von diesem Satz 10119
|
|
f_temp = i_temp;
|
|
f_reset = f_temp;
|
|
if (speicherart == 1) {INPAapiJob( sgbd, "FS_LESEN_DETAIL", s_temp, "");}
|
|
if (speicherart == 2) {INPAapiJob( sgbd, "IS_LESEN_DETAIL", s_temp, "");}
|
|
ausgabeBildschirmDetail(f_temp);
|
|
|
|
// Ausgabe der Fehlerspeicherzusatzinformationen nur für den Fehler 2D5F Reset (11615)
|
|
if (f_temp == 11615)
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x583C,0x583D,0x58A9,0x58AA,0x5AC2,0x58D9,0x58DA,0x58DB,0x58DC,0x5AE0,0x5AE1,0x5AE2,0x5AE3,0x5AE4,0x5AE5,0x5AE6,0x5AE7,0x5AE8,0x5AE9,0x5AEA","");
|
|
ausgabeFehlerZusatzInformation();
|
|
}
|
|
}
|
|
if(ergSatz == (f_anzahl + 1)) { textout("ListenEnde",0,21);}
|
|
}
|
|
|
|
//****************************************************************
|
|
//*** Ausgabe Freeze Frame auf Bildschirm ***
|
|
//*** 10 07 01 mw grafische und Textanpassungen mehrere Monate ***
|
|
//****************************************************************
|
|
AusgabeFehlerFreezeFrame(in:int ergSatz, in:int speicherart, in: int sets, out: int f_reset)
|
|
{
|
|
string s, s2, s3, s4, s_temp,s_temp_2;
|
|
real r, r_temp;
|
|
int hfk1, adr, f_nr, zahl, schalter, i_temp, f_temp;
|
|
int z1, f_zahl,i_help;
|
|
|
|
if (speicherart == 1) {INPAapiJob( sgbd, "FS_LESEN", "", "");}
|
|
if (speicherart == 2) {INPAapiJob( sgbd, "IS_LESEN", "", "");}
|
|
if ( ( sets >= 1 ) && ( ergSatz <= sets ) )
|
|
{
|
|
AusgabeBildschirmKurz( ergSatz );
|
|
// **** Daten holen ***********************************************************
|
|
INPAapiResultInt( i_temp, "F_ORT_NR", ergSatz ); // Fehlernummer holen 10119
|
|
f_temp = i_temp;
|
|
f_reset = f_temp;
|
|
inttostring( i_temp, s_temp ); // in hex umwandeln 0x2787
|
|
INPAapiJob( sgbd, "FS_LESEN_FREEZE_FRAME", s_temp, "" ); // Job aufrufen 21_0A_27_87
|
|
|
|
// **** Bildschirmausgabe *****************************************************
|
|
ausgabeBildschirmDetail(f_temp);
|
|
|
|
// **** Freeze Frame **********************************************************
|
|
|
|
// Ausgabe der Fehlerspeicherzusatzinformationen nur für den Fehler 2D5F Reset (11615)
|
|
if (f_temp == 11615)
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x583C,0x583D,0x58A9,0x58AA,0x5AC2,0x58D9,0x58DA,0x58DB,0x58DC,0x5AE0,0x5AE1,0x5AE2,0x5AE3,0x5AE4,0x5AE5,0x5AE6,0x5AE7,0x5AE8,0x5AE9,0x5AEA","");
|
|
ausgabeFehlerZusatzInformation();
|
|
INPAapiJob( sgbd, "FS_LESEN_FREEZE_FRAME", s_temp, "" );// Job aufrufen 21_0A_27_87
|
|
z1 = 33;
|
|
}
|
|
else
|
|
{
|
|
z1 = 11;
|
|
}
|
|
|
|
|
|
//Zeile 11 Status Bank1
|
|
zeile11 = "Freeze Fr.:";
|
|
stringappend( zeile11, 10," ");
|
|
INPAapiResultText(s,"F_FF0_TEXT",1,"");
|
|
stringappend( s, 35," ");
|
|
INPAapiResultText(s2,"F_FF0_WERT",1,"");
|
|
zeile11 = zeile11 + s + s2;
|
|
textout(s,z1,10); textout(s2,z1,45);
|
|
ftextout("Freeze Fr.: ",z1,0,0,3);
|
|
z1=z1+1;
|
|
//Zeile 12 Staus Bank2
|
|
zeile12 = "";
|
|
stringappend( zeile12, 10," ");
|
|
INPAapiResultText(s,"F_FF1_TEXT",1,"");
|
|
stringappend( s, 35," ");
|
|
INPAapiResultText(s2,"F_FF1_WERT",1,"");
|
|
zeile12 = zeile12 + s + s2;
|
|
textout(s,z1,10); textout(s2,z1,45);
|
|
z1=z1+1;
|
|
//Zeile 13 Lastfaktor
|
|
INPAapiResultText(s,"F_FF2_TEXT",1,"");
|
|
stringappend( s, 50," ");
|
|
zeile13 = " " + s;
|
|
ftextout(s,z1,10,0,2);
|
|
INPAapiResultAnalog(r,"F_FF2_WERT",1);
|
|
realtostring(r,"6.1",s);
|
|
INPAapiResultText(s2,"F_FF2_EINH",1,"");s=s+" "+s2;
|
|
zeile13 = zeile13 + s;
|
|
ftextout(s,z1,45,0,2);
|
|
z1=z1+1;
|
|
//Zeile 14 KuehlerTemp
|
|
INPAapiResultText(s,"F_FF3_TEXT",1,"");
|
|
stringappend( s, 50," ");
|
|
zeile14 = " " + s;
|
|
ftextout(s,z1,10,0,2);
|
|
INPAapiResultAnalog(r,"F_FF3_WERT",1);
|
|
realtostring(r,"6.1",s);
|
|
INPAapiResultText(s2,"F_FF3_EINH",1,"");s=s+" "+s2;
|
|
zeile14 = zeile14 + s;
|
|
ftextout(s,z1,45,0,2);
|
|
z1=z1+1;
|
|
//Zeile 15
|
|
INPAapiResultText(s,"F_FF4_TEXT",1,"");
|
|
stringappend( s, 50," ");
|
|
zeile15 = " " + s;
|
|
ftextout(s,z1,10,0,2);
|
|
INPAapiResultAnalog(r,"F_FF4_WERT",1);
|
|
realtostring(r,"6.1",s);
|
|
INPAapiResultText(s2,"F_FF4_EINH",1,"");s=s+" "+s2;
|
|
zeile15 = zeile15 + s;
|
|
ftextout(s,z1,45,0,2);
|
|
z1=z1+1;
|
|
//Zeile 16
|
|
INPAapiResultText(s,"F_FF5_TEXT",1,"");
|
|
stringappend( s, 50," ");
|
|
zeile16 = " " + s;
|
|
ftextout(s,z1,10,0,2);
|
|
INPAapiResultAnalog(r,"F_FF5_WERT",1);
|
|
realtostring(r,"6.1",s);
|
|
INPAapiResultText(s2,"F_FF5_EINH",1,"");s=s+" "+s2;
|
|
zeile16 = zeile16 + s;
|
|
ftextout(s,z1,45,0,2);
|
|
z1=z1+1;
|
|
//Zeile 17
|
|
INPAapiResultText(s,"F_FF6_TEXT",1,"");
|
|
stringappend( s, 50," ");
|
|
zeile17 = " " + s;
|
|
ftextout(s,z1,10,0,2);
|
|
INPAapiResultAnalog(r,"F_FF6_WERT",1);
|
|
realtostring(r,"6.1",s);
|
|
INPAapiResultText(s2,"F_FF6_EINH",1,"");s=s+" "+s2;
|
|
zeile17 = zeile17 + s;
|
|
ftextout(s,z1,45,0,2);
|
|
z1=z1+1;
|
|
//Zeile 18
|
|
INPAapiResultText(s,"F_FF7_TEXT",1,"");
|
|
stringappend( s, 50," ");
|
|
zeile18 = " " + s;
|
|
ftextout(s,z1,10,0,2);
|
|
INPAapiResultAnalog(r,"F_FF7_WERT",1);
|
|
realtostring(r,"6.1",s);
|
|
INPAapiResultText(s2,"F_FF7_EINH",1,"");s=s+" "+s2;
|
|
zeile18 = zeile18 + s;
|
|
ftextout(s,z1,45,0,2);
|
|
z1=z1+1;
|
|
//Zeile 19 Ansaugdruck
|
|
INPAapiResultText(s,"F_FF8_TEXT",1,"");
|
|
stringappend( s, 50," ");
|
|
zeile19 = " " + s;
|
|
ftextout(s,z1,10,0,2);
|
|
INPAapiResultAnalog(r,"F_FF8_WERT",1);
|
|
realtostring(r,"6.1",s);
|
|
INPAapiResultText(s2,"F_FF8_EINH",1,"");s=s+" "+s2;
|
|
zeile19 = zeile19 + s;
|
|
ftextout(s,z1,45,0,2);
|
|
z1=z1+1;
|
|
//Zeile 20 Drehzahl
|
|
INPAapiResultText(s,"F_FF9_TEXT",1,"");
|
|
stringappend( s, 50," ");
|
|
zeile20 = " " + s;
|
|
ftextout(s,z1,10,0,2);
|
|
INPAapiResultAnalog(r,"F_FF9_WERT",1);
|
|
realtostring(r,"6.1",s);
|
|
INPAapiResultText(s2,"F_FF9_EINH",1,"");s=s+" "+s2;
|
|
zeile20 = zeile20 + s;
|
|
ftextout(s,z1,45,0,2);
|
|
z1=z1+1;
|
|
//Zeile 21 Geschwindigkeit
|
|
INPAapiResultText(s,"F_FF10_TEXT",1,"");
|
|
stringappend( s, 50," ");
|
|
zeile21 = " " + s;
|
|
ftextout(s,z1,10,0,2);
|
|
INPAapiResultAnalog(r,"F_FF10_WERT",1);
|
|
realtostring(r,"6.0",s);
|
|
INPAapiResultText(s2,"F_FF10_EINH",1,"");s=s+" "+s2;
|
|
zeile21 = zeile21 + s;
|
|
ftextout(s,z1,45,0,2);
|
|
z1=z1+1;
|
|
//Zeile 22 F_
|
|
INPAapiResultInt(adr,"F_FLC",1);
|
|
inttostring(adr,s2);
|
|
ftextout("F_FLC: ",z1,0,0,1); textout(s2,z1,8);
|
|
zeile22 = "F_FLC: " + s2 + " ";
|
|
INPAapiResultInt(adr,"F_HLC" ,1);
|
|
inttostring(adr,s);
|
|
ftextout("F_HLC: ",z1,15,0,1); textout(s,z1,23);
|
|
zeile22 = zeile22 + "F_HLC: " + s +" ";
|
|
INPAapiResultText(s,"F_CLA" ,1,"");
|
|
ftextout("F_CLA: ",z1,30,0,1); textout(s,z1,38);
|
|
zeile22 = zeile22 + "F_CLA: " + s +" ";
|
|
INPAapiResultInt(adr,"F_DLC" ,1);
|
|
inttostring(adr,s);
|
|
ftextout("F_DLC: ",z1,45,0,1); textout(s,z1,53);
|
|
zeile22 = zeile22 + "F_DLC: " + s;
|
|
z1=z1+1;
|
|
//Zeile 23 Diagnose
|
|
ftextout("Diagnose aktiv: ",z1,0,0,1);
|
|
INPAapiResultText(s2,"F_AKTIV_FLAG",1,""); textout(s2,z1,20);
|
|
zeile23 = "Diagnose aktiv: " + s2;
|
|
ftextout("Diagnose unterbrochen: ",z1,45,0,1);
|
|
INPAapiResultText(s2,"F_STOP_FLAG",1,""); textout(s2,z1,65);
|
|
zeile23 = zeile23 + " Diagnose unterbrochen: " + s2;
|
|
z1=z1+1;
|
|
// Zeile 24 MIL
|
|
ftextout("MIL Status: ",z1,0,0,1);
|
|
INPAapiResultText(s2,"F_MIL_FLAG",1,""); textout(s2,z1,20);
|
|
zeile24 = "MIL Status: " + s2;
|
|
ftextout("MIL entprellt: ",z1,45,0,1);
|
|
INPAapiResultText(s2,"F_ENTPRELL_FLAG",1,""); textout(s2,z1,65);
|
|
zeile24 = zeile24 + " MIL entprellt: " + s2;
|
|
z1=z1+1;
|
|
// Zeile 25 Zyklus
|
|
ftextout("Zyklus Ende: ",z1,0,0,1);
|
|
INPAapiResultText(s2,"F_ZYKLUS_FLAG",1,""); textout(s2,z1,20);
|
|
zeile25 = "Zyklus Ende: " + s2;
|
|
ftextout("Fehler durch Tester: ",z1,45,0,1);
|
|
INPAapiResultText(s2,"F_ERROR_FLAG",1,""); textout(s2,z1,65);
|
|
zeile25 = zeile25 + " Fehler durch Tester: " + s2;
|
|
z1=z1+1;
|
|
}
|
|
if( ergSatz == ( sets + 1 ) ) { textout("ListenEnde",0,21);}
|
|
}
|
|
|
|
//******************************
|
|
//*** Ausgabe von RBM-Größen ***
|
|
//******************************
|
|
Ausgabe_RBM(in: string variante, in: string job_name, in: string ratio_text_1, in: string result_numerator_1, in: string result_denominator_1, in: string ratio_text_2, in: string result_numerator_2, in: string result_denominator_2, in: int speicherflag)
|
|
{
|
|
int i1,z1;
|
|
real r,n,z;
|
|
string s_temp,s1;
|
|
|
|
INPAapiJob(sgbd,job_name,"",""); // Statusergebnisse ermitteln
|
|
INPAapiResultText(vartext1,"JOB_STATUS",1,"");
|
|
if (vartext1 != "OKAY")
|
|
{
|
|
messagebox(job_name,vartext1);
|
|
stop();
|
|
}
|
|
r = 0; z = 0; n = 0;
|
|
vartext1 = ratio_text_1;
|
|
ftextout(vartext1,0,10,0,1);
|
|
s_temp = vartext1 + ";";
|
|
vartext1 = "Numerator:";
|
|
textout(vartext1,1,0);
|
|
INPAapiResultInt(i1,result_numerator_1,1);
|
|
inttostring(i1, s1);
|
|
inttoreal(i1,z);
|
|
textout(s1,1,35);
|
|
s_temp = s_temp + s1 + ";";
|
|
vartext1 = "Denominator:";
|
|
textout(vartext1,2,0);
|
|
INPAapiResultInt(i1,result_denominator_1,1);
|
|
inttostring(i1, s1);
|
|
inttoreal(i1,n);
|
|
textout(s1,2,35);
|
|
s_temp = s_temp + s1 + ";";
|
|
vartext1 = "Ratio:";
|
|
textout(vartext1,3,0);
|
|
if (n !=0) {
|
|
r = z / n * 100;
|
|
realtostring(r,"5.2",s1);
|
|
s1 = s1 + " %";}
|
|
else {
|
|
s1 = "-";}
|
|
textout(s1,3,35);
|
|
s_temp = s_temp + s1 + ";";
|
|
if (speicherflag == 1) filewrite(s_temp);
|
|
if (variante == "lang")
|
|
{
|
|
r = 0; z = 0; n = 0;
|
|
vartext1 = ratio_text_2;
|
|
ftextout(vartext1,0,55,0,1);
|
|
s_temp = vartext1 + ";";
|
|
vartext1 = "Numerator:";
|
|
textout(vartext1,1,45);
|
|
INPAapiResultInt(i1,result_numerator_2,1);
|
|
inttostring(i1, s1);
|
|
inttoreal(i1,z);
|
|
textout(s1,1,80);
|
|
s_temp = s_temp + s1 + ";";
|
|
vartext1 = "Denominator:";
|
|
textout(vartext1,2,45);
|
|
INPAapiResultInt(i1,result_denominator_2,1);
|
|
inttostring(i1, s1);
|
|
inttoreal(i1,n);
|
|
textout(s1,2,80);
|
|
s_temp = s_temp + s1 + ";";
|
|
vartext1 = "Ratio:";
|
|
textout(vartext1,3,0);
|
|
if (n !=0) {
|
|
r = z / n * 100;
|
|
realtostring(r,"5.2",s1);
|
|
s1 = s1 + " %";}
|
|
else {
|
|
s1 = "-";}
|
|
textout(s1,3,80);
|
|
s_temp = s_temp + s1 + ";";
|
|
if (speicherflag == 1) filewrite(s_temp);
|
|
}
|
|
}
|
|
|
|
//*********************************************************
|
|
//*** Ausgabe von Adaptionswerten aus neuronalen Netzen ***
|
|
//*********************************************************
|
|
Ausgabe_NN(in: string groessen, in: int blockzaehler, in: string job_name, in: string argument_1, in: string argument_2, in: string result_1, in: string result_2, in: int speicherflag)
|
|
{
|
|
int i, j, k, durchlaufzaehler;
|
|
string help, result, s_temp;
|
|
|
|
s_temp = groessen;
|
|
durchlaufzaehler = 0;
|
|
if (job_name == "_STATUS_KLANN")
|
|
{
|
|
if (job_name == "_STATUS_EISYAGR")
|
|
{
|
|
i = 0;
|
|
j = 9;
|
|
text(0,1,s_temp);
|
|
}
|
|
else
|
|
{
|
|
i = 0;
|
|
j = 11;
|
|
text(1,1,s_temp);
|
|
}
|
|
while (i <= j) {
|
|
inttostring(i + blockzaehler,help);
|
|
s_temp = "INPA;" + help;
|
|
k = 6 * (i + 2);
|
|
INPAapiJob(sgbd,job_name,s_temp,"");
|
|
INPAapiResultText(s_temp,"JOB_STATUS",1,"");
|
|
if (s_temp != "OKAY")
|
|
{
|
|
messagebox(job_name,s_temp);
|
|
stop();
|
|
}
|
|
if (durchlaufzaehler == 0)
|
|
{
|
|
if (job_name == "_STATUS_KLANN")
|
|
{
|
|
result = "STAT_TMOT_LOC_" + help + "_WERT";
|
|
INPAapiResultInt(i_temp,result,1);
|
|
inttostring(i_temp,s_temp);
|
|
s_temp = "Motortemperatur: " + s_temp + " ";
|
|
INPAapiResultText(result,"STAT_TMOT_LOC_EINH",1,"");
|
|
s_temp = s_temp + result;
|
|
text(0,32,s_temp);
|
|
result = argument_1 + help + "_WERT";
|
|
INPAapiResultInt(i_temp,result,1);
|
|
inttostring(i_temp,s_temp);
|
|
text(2,1,s_temp);
|
|
text(2,6,"B. 1");
|
|
text(3,6,"B. 2");
|
|
}
|
|
else
|
|
{
|
|
result = argument_1 + help + "_WERT";
|
|
INPAapiResultInt(i_temp,result,1);
|
|
inttostring(i_temp,s_temp);
|
|
text(1,1,s_temp);
|
|
}
|
|
durchlaufzaehler = 1;
|
|
}
|
|
if (argument_2 != "")
|
|
{
|
|
result = argument_2 + help + "_WERT";
|
|
INPAapiResultAnalog(r_temp,result,1);
|
|
realtostring(r_temp,"3.1",s_temp);
|
|
if (job_name == "_STATUS_KLANN")
|
|
{
|
|
text(1,k,s_temp);
|
|
}
|
|
else
|
|
{
|
|
text(0,k,s_temp);
|
|
}
|
|
}
|
|
if (result_1 != "")
|
|
{
|
|
result = result_1 + help + "_WERT";
|
|
INPAapiResultAnalog(r_temp,result,1);
|
|
realtostring(r_temp,"3.1",s_temp);
|
|
if (job_name == "_STATUS_KLANN")
|
|
{
|
|
text(2,k,s_temp);
|
|
}
|
|
else
|
|
{
|
|
text(1,k,s_temp);
|
|
}
|
|
}
|
|
if (result_2 != "")
|
|
{
|
|
result = result_2 + help + "_WERT";
|
|
INPAapiResultAnalog(r_temp,result,1);
|
|
realtostring(r_temp,"3.1",s_temp);
|
|
if (job_name == "_STATUS_KLANN")
|
|
{
|
|
text(3,k,s_temp);
|
|
}
|
|
else
|
|
{
|
|
text(2,k,s_temp);
|
|
}
|
|
}
|
|
i = i + 1;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
i = 0;
|
|
j = 11;
|
|
text(0,1,s_temp);
|
|
while (i <= j) {
|
|
inttostring(i * 12 + blockzaehler,help);
|
|
s_temp = "INPA;" + help;
|
|
k = 6 * (i + 2);
|
|
INPAapiJob(sgbd,job_name,s_temp,"");
|
|
INPAapiResultText(s_temp,"JOB_STATUS",1,"");
|
|
if (s_temp != "OKAY")
|
|
{
|
|
messagebox(job_name,s_temp);
|
|
stop();
|
|
}
|
|
if (durchlaufzaehler == 0)
|
|
{
|
|
result = argument_1 + help + "_WERT";
|
|
INPAapiResultInt(i_temp,result,1);
|
|
inttostring(i_temp,s_temp);
|
|
text(1,1,s_temp);
|
|
durchlaufzaehler = 1;
|
|
}
|
|
if (argument_2 != "")
|
|
{
|
|
result = argument_2 + help + "_WERT";
|
|
INPAapiResultAnalog(r_temp,result,1);
|
|
realtostring(r_temp,"3.1",s_temp);
|
|
text(0,k,s_temp);
|
|
}
|
|
if (result_1 != "")
|
|
{
|
|
result = result_1 + help + "_WERT";
|
|
INPAapiResultAnalog(r_temp,result,1);
|
|
realtostring(r_temp,"3.1",s_temp);
|
|
text(1,k,s_temp);
|
|
}
|
|
if (result_2 != "")
|
|
{
|
|
result = result_2 + help + "_WERT";
|
|
INPAapiResultAnalog(r_temp,result,1);
|
|
realtostring(r_temp,"3.1",s_temp);
|
|
text(2,k,s_temp);
|
|
}
|
|
i = i + 1;
|
|
}
|
|
}
|
|
}
|
|
|
|
//*********************
|
|
//*** Dateiausgaben ***
|
|
//*********************
|
|
|
|
// ******************************************************************
|
|
// *** Ausgabe der Identifikationsdaten in eine Datei datei_ident ***
|
|
// *** Inhalt wird vorgegeben durch s_ident ***
|
|
// *** 17 03 06 ew neu erstellt ***
|
|
// ******************************************************************
|
|
OutputIDENT2File(in:int speicherart) {
|
|
|
|
// Variablen fuer PST/DST-Info
|
|
string sx = "" ;
|
|
int laengeInfoFeld = 0;
|
|
string trennzeichen = "#" ;
|
|
string singleChar = "" ;
|
|
int anzahlSets = 0 ; // Anzahl der Softwareeinheitenreferenzen im SG (BTL, PST, DST, Codierdaten, ...)
|
|
int durchlauf = 0 ;
|
|
|
|
int i_help, i1, i2;
|
|
string s_help, s1, s2, date, time;
|
|
|
|
if (speicherart == 0) {
|
|
INPAapiJob(sgbd,"IDENT","","");
|
|
}
|
|
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") {
|
|
messagebox("IDENT",s1);
|
|
stop();
|
|
}
|
|
else {
|
|
userboxclose(0);
|
|
blankscreen();
|
|
textout( "Identifikationsdaten " + dme_text + " werden gespeichert", 20, 5);
|
|
getdate(s1);
|
|
gettime(s2);
|
|
textout( "========== " + s1 + " ========== " + s2 + " ==========",21,5);
|
|
|
|
if (speicherart == 0) {
|
|
commentlines(0);
|
|
}
|
|
|
|
if (inputstate==1) messagebox("Status Datei öffnen"," Kann Datei nicht öffnen ");
|
|
else {
|
|
|
|
if (inputstate != 1) {
|
|
filewrite(" ");
|
|
filewrite("Identifikationsdaten " + dme_text);
|
|
filewrite("-----------------------------------------------------------");
|
|
|
|
if (info_feld_1 == "") {
|
|
|
|
INPAapiJob(sgbd,"_SWE_LESEN","1","");
|
|
INPAapiResultText(info_feld_1,"INFO_FELD",1,"");
|
|
|
|
INPAapiJob(sgbd,"_SWE_LESEN","2","");
|
|
INPAapiResultText(info_feld_2,"INFO_FELD",1,"");
|
|
|
|
INPAapiJob(sgbd,"_SWE_LESEN","3","");
|
|
INPAapiResultText(info_feld_3,"INFO_FELD",1,"");
|
|
}
|
|
filewrite( "Software auf dem Steuergerät : ") ;
|
|
|
|
INPAapiJob(sgbd,"IDENT",s1,"");
|
|
INPAapiResultInt(i_help,"ID_SG_ADR",1);
|
|
i1 = i_help / 16;
|
|
i2 = i_help - 16 * i1;
|
|
inttostring(i1,s1);
|
|
inttostring(i2,s2);
|
|
s_help = "0x" + s1 + s2;
|
|
filewrite("Steuergeräteadresse : " + s_help);
|
|
|
|
INPAapiResultBinary("_REQUEST",1);
|
|
GetBinaryDataString(s1,i1);
|
|
INPAapiResultBinary("_RESPONSE",1);
|
|
GetBinaryDataString(s2,i2);
|
|
textout("SGBD-Index:",4,0);
|
|
i_help = i2 - i1;
|
|
midstr(s_help,s2,i1,i_help);
|
|
s_help = "0x" + s_help;
|
|
filewrite("SGBD-Index : " + s_help);
|
|
|
|
filewrite("");
|
|
|
|
INPAapiJob(sgbd,"SVK_LESEN","","");
|
|
if ( anzahlSets == 0) {
|
|
INPAapiResultSets(anzahlSets) ;
|
|
|
|
if (anzahlSets == 0) {
|
|
messagebox("JOB_STATUS", "Keine Ausgabe der SGBM-ID moeglich!" );
|
|
fileclose();
|
|
stop();
|
|
}
|
|
else {
|
|
if ( anzahlSets > 1) {
|
|
filewrite("Hardware Referenz");
|
|
INPAapiResultText(s1,"PROZESSKLASSE_WERT",1,""); filewrite("Prozessklasse (Wert) : " + s1);
|
|
INPAapiResultText(s1,"PROZESSKLASSE_TEXT",1,""); filewrite("Prozessklasse (Text) : " + s1);
|
|
INPAapiResultText(s1,"SGBM_IDENTIFIER",1,""); filewrite("SGBM-Identifier : " + s1);
|
|
INPAapiResultText(s1,"VERSION",1,""); filewrite("Version : " + s1);
|
|
}
|
|
if ( anzahlSets > 2) {
|
|
filewrite("");
|
|
filewrite("Bootloader Referenz");
|
|
INPAapiResultText(s1,"PROZESSKLASSE_WERT",2,""); filewrite("Prozessklasse (Wert) : " + s1);
|
|
INPAapiResultText(s1,"PROZESSKLASSE_TEXT",2,""); filewrite("Prozessklasse (Text) : " + s1);
|
|
INPAapiResultText(s1,"SGBM_IDENTIFIER",2,""); filewrite("SGBM-Identifier : " + s1);
|
|
INPAapiResultText(s1,"VERSION",2,""); filewrite("Version : " + s1);
|
|
filewrite("Stringformat : #Bordnetzteilnehmer#Musterstand#BTL##BTL-Entwicklerkommentar") ;
|
|
filewrite("Bootloader : " + info_feld_1);
|
|
}
|
|
if ( anzahlSets > 3) {
|
|
filewrite("");
|
|
filewrite("Programm Referenz");
|
|
INPAapiResultText(s1,"PROZESSKLASSE_WERT",3,""); filewrite("Prozessklasse (Wert) : " + s1);
|
|
INPAapiResultText(s1,"PROZESSKLASSE_TEXT",3,""); filewrite("Prozessklasse (Text) : " + s1);
|
|
INPAapiResultText(s1,"SGBM_IDENTIFIER",3,""); filewrite("SGBM-Identifier : " + s1);
|
|
INPAapiResultText(s1,"VERSION",3,""); filewrite("Version : " + s1);
|
|
filewrite("Stringformat : #Bordnetzteilnehmer#Musterstand#PST##PST-Entwicklerkommentar") ;
|
|
filewrite("Programmstand : " + info_feld_2) ;
|
|
}
|
|
if ( anzahlSets > 4) {
|
|
filewrite("");
|
|
filewrite("Daten Referenz");
|
|
INPAapiResultText(s1,"PROZESSKLASSE_WERT",4,""); filewrite("Prozessklasse (Wert) : " + s1);
|
|
INPAapiResultText(s1,"PROZESSKLASSE_TEXT",4,""); filewrite("Prozessklasse (Text) : " + s1);
|
|
INPAapiResultText(s1,"SGBM_IDENTIFIER",4,""); filewrite("SGBM-Identifier : " + s1);
|
|
INPAapiResultText(s1,"VERSION",4,""); filewrite("Version : " + s1);
|
|
filewrite("Stringformat : #Bordnetzteilnehmer#Musterstand#DST##DST-Entwicklerkommentar") ;
|
|
filewrite("Datenstand : " + info_feld_3) ;
|
|
}
|
|
if ( anzahlSets > 5) {
|
|
filewrite("");
|
|
filewrite("Codierdaten Referenz");
|
|
INPAapiResultText(s1, "PROZESSKLASSE_WERT", 5, ""); filewrite("Prozessklasse (Wert) : " + s1);
|
|
INPAapiResultText(s1, "PROZESSKLASSE_TEXT", 5, ""); filewrite("Prozessklasse (Text) : " + s1);
|
|
INPAapiResultText(s1, "SGBM_IDENTIFIER", 5, ""); filewrite("SGBM-Identifier : " + s1);
|
|
INPAapiResultText(s1, "VERSION", 5, ""); filewrite("Version : " + s1);
|
|
}
|
|
|
|
filewrite("");
|
|
filewrite("Zusammenfassung");
|
|
INPAapiJob(sgbd,"SVK_LESEN","","");
|
|
INPAapiResultText(s1,"ANZAHL_EINHEITEN",anzahlSets,""); filewrite("Anzahl Einheiten : " + s1);
|
|
INPAapiResultText(s1,"PROG_DATUM",anzahlSets,""); filewrite("Datum der Programmierung : " + s1);
|
|
INPAapiResultText(s1,"PROG_KM",anzahlSets,""); filewrite("Kilometerstand bei Programmierung : " + s1);
|
|
INPAapiResultText(s1,"JOB_STATUS",anzahlSets,""); filewrite("Status : " + s1);
|
|
filewrite(" ");
|
|
filewrite("===========================================================");
|
|
|
|
}
|
|
}
|
|
}
|
|
else if (inputstate==1) {
|
|
messagebox("Status Datei öffnen"," Kann Datei nicht öffnen ");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
// ******************************************************************
|
|
// *** Ausgabe des FehlerSpeichers in eine Datei datei_fs ***
|
|
// *** Inhalt wird vorgegeben durch s_menue, das aufrufende Menue ***
|
|
// *** 16 07 01 mw neu erstellt ***
|
|
// ******************************************************************
|
|
OutputError2File(in:int speicherart)
|
|
{
|
|
int sets; // Anzahl der Fehlersets
|
|
int ergsatz; // Zaehler newSetOfResults FS_LESEN
|
|
string s1, s2, s3, s4; // Lokale Strings
|
|
int index; // Schleifenzaehler Zeilen
|
|
|
|
if (speicherart == 1) {INPAapiJob( sgbd, "FS_LESEN", "", "");}
|
|
if (speicherart == 2) {INPAapiJob( sgbd, "IS_LESEN", "", "");}
|
|
INPAapiResultSets(sets);
|
|
INPAapiResultText(s1, "JOB_STATUS",sets,"");
|
|
if ( s1 != "OKAY" )
|
|
{
|
|
if (speicherart == 1) messagebox( "FS_LESEN", s1 );
|
|
if (speicherart == 2) messagebox( "IS_LESEN", s1 );
|
|
stop();
|
|
}
|
|
else
|
|
{
|
|
INPAapiResultSets(sets); // wieviel Fehler wurden abgespeichert
|
|
sets = sets -1; // JOB_STATUS und _TEL_ANTWORT
|
|
if ( sets == 0 )
|
|
{
|
|
blankscreen();
|
|
textout("Es sind keine Fehler vorhanden!",20,5);
|
|
if (speicherart == 1) {commentlines(1);}
|
|
if (speicherart == 2) {commentlines(2);}
|
|
if ( datei_fs != "" ) filewrite("Es sind keine Fehler vorhanden!");
|
|
fileclose();
|
|
}
|
|
if ( sets != 0 )
|
|
{
|
|
userboxclose(0);
|
|
blankscreen();
|
|
inttostring( sets, s2 );
|
|
textout( "Es werden " + s2 + " Datensätze gespeichert", 20, 5);
|
|
ergsatz = 1;
|
|
// zif_lesen( s2 ); // SoftwareStand
|
|
// data_id_lesen(s3);
|
|
textout("SoftwareReferenz : " + s2 + " DatenReferenz : " + s3, 22, 5 );
|
|
getdate(s3);
|
|
gettime(s4);
|
|
textout( "========== " + s3 + " ========== " + s4 + " ==========",21,5);
|
|
if (speicherart == 1) {commentlines(1);}
|
|
if (speicherart == 2) {commentlines(2);}
|
|
if( inputstate != 1 )
|
|
{
|
|
filewrite(" ");
|
|
while ( ergsatz <= sets )
|
|
{
|
|
if (speicherart == 1) {INPAapiJob( sgbd, "FS_LESEN", "", "");} // FS_DETAIL ZeilenAufbau und BildschirmAusgabe
|
|
if (speicherart == 2) {INPAapiJob( sgbd, "IS_LESEN", "", "");} // FS_DETAIL ZeilenAufbau und BildschirmAusgabe
|
|
// if( s_menue == "kurz" ) ausgabeFehlerDetail( ergsatz, speicherart, f_reset );
|
|
if( s_menue == "detail" ) ausgabeFehlerDetail( ergsatz, speicherart, f_reset );
|
|
// if( s_menue == "freeze" ) AusgabeFehlerFreezeFrame( ergsatz, speicherart, sets, f_reset);
|
|
inttostring( ergsatz, s1);
|
|
textout("Schreiben von Fehler "+s1,24,5);
|
|
|
|
index = 0;
|
|
i_zeilen = 10; // default mit Umwelt
|
|
if( s_menue == "kurz" ) i_zeilen = 5; // zuweisen in m_fehlersp
|
|
if( s_menue == "detail" ) {if ( f_reset == 11615) {i_zeilen = 31;}
|
|
else {i_zeilen = 10;}}
|
|
if( s_menue == "freeze" ) {if ( f_reset == 11615) {i_zeilen = 46;}
|
|
else {i_zeilen = 25;}}
|
|
filewrite(" ");
|
|
filewrite( "$FehlerOrtNr: " + FehlerOrtNr );
|
|
filewrite( "$FehlerOrtText: " + FehlerOrtText );
|
|
if (speicherart == 1 || speicherart == 2) filewrite(zeile_hex);
|
|
if( index <= i_zeilen ) {filewrite(zeile0 ); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite(zeile1 ); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite(zeile2 ); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite(zeile3 ); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite(zeile4 ); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite(zeile5 ); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite(zeile6 ); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite(zeile7 ); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite(zeile8 ); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite(zeile9 ); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite(zeile10); index = index + 1;}
|
|
if( index <= i_zeilen ) {if (f_reset != 11615) {filewrite (zeile11);}
|
|
else {filewrite (zeilezusatz0);} index = index + 1;}
|
|
if( index <= i_zeilen ) {if (f_reset != 11615) {filewrite (zeile12);}
|
|
else {filewrite (zeilezusatz1);} index = index + 1;}
|
|
if( index <= i_zeilen ) {if (f_reset != 11615) {filewrite (zeile13);}
|
|
else {filewrite (zeilezusatz2);} index = index + 1;}
|
|
if( index <= i_zeilen ) {if (f_reset != 11615) {filewrite (zeile14);}
|
|
else {filewrite (zeilezusatz3);} index = index + 1;}
|
|
if( index <= i_zeilen ) {if (f_reset != 11615) {filewrite (zeile15);}
|
|
else {filewrite (zeilezusatz4);} index = index + 1;}
|
|
if( index <= i_zeilen ) {if (f_reset != 11615) {filewrite (zeile16);}
|
|
else {filewrite (zeilezusatz5);} index = index + 1;}
|
|
if( index <= i_zeilen ) {if (f_reset != 11615) {filewrite (zeile17);}
|
|
else {filewrite (zeilezusatz6);} index = index + 1;}
|
|
if( index <= i_zeilen ) {if (f_reset != 11615) {filewrite (zeile18);}
|
|
else {filewrite (zeilezusatz7);} index = index + 1;}
|
|
if( index <= i_zeilen ) {if (f_reset != 11615) {filewrite (zeile19);}
|
|
else {filewrite (zeilezusatz8);} index = index + 1;}
|
|
if( index <= i_zeilen ) {if (f_reset != 11615) {filewrite (zeile20);}
|
|
else {filewrite (zeilezusatz9);} index = index + 1;}
|
|
if( index <= i_zeilen ) {if (f_reset != 11615) {filewrite (zeile21);}
|
|
else {filewrite (zeilezusatz10);} index = index + 1;}
|
|
if( index <= i_zeilen ) {if (f_reset != 11615) {filewrite (zeile22);}
|
|
else {filewrite (zeilezusatz11);} index = index + 1;}
|
|
if( index <= i_zeilen ) {if (f_reset != 11615) {filewrite (zeile23);}
|
|
else {filewrite (zeilezusatz12);} index = index + 1;}
|
|
if( index <= i_zeilen ) {if (f_reset != 11615) {filewrite (zeile24);}
|
|
else {filewrite (zeilezusatz13);} index = index + 1;}
|
|
if( index <= i_zeilen ) {if (f_reset != 11615) {filewrite (zeile25);}
|
|
else {filewrite (zeilezusatz14);} index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite (zeilezusatz15); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite (zeilezusatz16); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite (zeilezusatz17); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite (zeilezusatz18); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite (zeilezusatz19); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite (zeilezusatz20); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite (zeile11); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite (zeile12); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite (zeile13); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite (zeile14); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite (zeile15); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite (zeile16); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite (zeile17); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite (zeile18); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite (zeile19); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite (zeile20); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite (zeile21); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite (zeile22); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite (zeile23); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite (zeile24); index = index + 1;}
|
|
if( index <= i_zeilen ) {filewrite (zeile25); index = index + 1;}
|
|
filewrite( "___________________________________________________________" );
|
|
ergsatz = ergsatz+1;
|
|
}
|
|
fileclose();
|
|
messagebox("Ausgabe des Fehlerspeichers", "Ausgabe erfolgte in Datei: " + datei_fs);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
// ***********************************************************
|
|
// *** Ausgabe des FehlerSpeichers in eine Datei ***
|
|
// *** Aufbereiten fuer Ausdruck auf Nadeldrucker Werk 1.1 ***
|
|
// *** 11 04 03 mw neu erstellt ***
|
|
// *** 15 05 03 mw neu Zeile hex, Drucken ohne Menu ***
|
|
// ***********************************************************
|
|
OutputError2Filetxt(in:int speicherart, in: string dateiname)
|
|
{
|
|
int sets; // Anzahl der Fehlersets
|
|
int ergsatz; // Zaehler newSetOfResults FS_LESEN
|
|
string s1, s2, s3, s4, km_stand_string; // Lokale Strings
|
|
int index; // Schleifenzaehler Zeilen
|
|
real km_stand_real;
|
|
|
|
if (speicherart == 1) {INPAapiJob( sgbd, "FS_LESEN", "", "");}
|
|
if (speicherart == 2) {INPAapiJob( sgbd, "IS_LESEN", "", "");}
|
|
INPAapiResultSets(sets);
|
|
INPAapiResultText(s1, "JOB_STATUS",sets,"");
|
|
if ( s1 != "OKAY" ) { messagebox( "FS_LESEN", s1 ); stop(); }
|
|
else
|
|
{
|
|
fileopen( dateiname, "w");
|
|
INPAapiResultSets(sets); // wieviel Fehler wurden abgespeichert
|
|
sets = sets -1; // JOB_STATUS und _TEL_ANTWORT nicht
|
|
if ( sets == 0 )
|
|
{
|
|
blankscreen();
|
|
textout("Es sind keine Fehler vorhanden!",20,5);
|
|
filewrite("Es sind keine Fehler vorhanden!");
|
|
}
|
|
if ( sets != 0 )
|
|
{
|
|
blankscreen();
|
|
ergsatz = 1;
|
|
// zif_lesen( s1 ); // SoftwareStand
|
|
// data_id_lesen(s2);
|
|
textout("SoftwareReferenz : " + s1 + " DatenReferenz : " + s2, 20, 5 );
|
|
filewrite("$DATAID: " + s2 );
|
|
getdate(s3);
|
|
gettime(s4);
|
|
INPAapiJob(sgbd,"INFO","","");
|
|
INPAapiResultText(s2,"REVISION",1,""); // SGBD Version Nr
|
|
textout("=== " + s3 + " === " + s4 + " === DME Los: " + s1,21,5);
|
|
getdate(s3);
|
|
gettime(s4);
|
|
textout("======= " + s3 + " ======= " + s4 + " =======" + s1,21,5);
|
|
// INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x480A","");
|
|
// INPAapiResultAnalog(km_stand_real,"STAT_MESSWERT0_WERT",1);
|
|
// realtostring(km_stand_real,"6.0",km_stand_string);
|
|
filewrite("$SGBD: " + sgbd + " Version: " + s2 );
|
|
filewrite(" === " + s3 + " === " + s4 );
|
|
// filewrite("Aktueller Kilometerstand: " + km_stand_string);
|
|
while ( ergsatz <= sets )
|
|
{
|
|
if (speicherart == 1) {INPAapiJob( sgbd, "FS_LESEN", "", "");} // FS_DETAIL ZeilenAufbau und BildschirmAusgabe
|
|
if (speicherart == 2) {INPAapiJob( sgbd, "IS_LESEN", "", "");} // FS_DETAIL ZeilenAufbau und BildschirmAusgabe
|
|
f_anzahl = sets; // sonst nur Leerzeilen
|
|
ausgabeFehlerDetail( ergsatz, speicherart, f_reset );
|
|
inttostring( ergsatz, s1);
|
|
textout("Schreiben von Fehler "+s1,24,5);
|
|
filewrite( "________________________________________________________________________" );
|
|
zeile_hex = "_TEL_ANTWORT: " + zeile_hex;
|
|
filewrite(zeile_hex);
|
|
filewrite(zeile0 );
|
|
filewrite(zeile1 );
|
|
filewrite(zeile2 );
|
|
filewrite(zeile3 );
|
|
filewrite(zeile4 );
|
|
filewrite(zeile5 );
|
|
filewrite(zeile6 );
|
|
filewrite(zeile7 );
|
|
filewrite(zeile8 );
|
|
filewrite(zeile9 );
|
|
filewrite(zeile10);
|
|
ergsatz = ergsatz+1;
|
|
}
|
|
}
|
|
}
|
|
fileclose();
|
|
}
|
|
|
|
// ****************************************************************************
|
|
// *** Ausgabe der Adaptionswerte aus neuronalen Netzen eine Datei datei_nn ***
|
|
// *** Inhalt wird vorgegeben durch s_eisy_xx, ... das aufrufende Menue ***
|
|
// *** 26 12 05 ew neu erstellt ***
|
|
// ****************************************************************************
|
|
OutputNN2File(in:int speicherart)
|
|
{
|
|
int sets; // Anzahl der Stützstellensätze
|
|
int datsatz; // aktueller Stützstellensatz
|
|
string s1, s2, s3, s4, s_temp; // Lokale Strings
|
|
real r_temp;
|
|
int i_temp; // Schleifenzaehler Zeilen
|
|
|
|
if (speicherart == 1) {INPAapiJob( sgbd, "_STATUS_EISYGD", "GROESSE", "");}
|
|
if (speicherart == 2) {INPAapiJob( sgbd, "_STATUS_EISYDR", "GROESSE", "");}
|
|
if (speicherart == 3) {INPAapiJob( sgbd, "_STATUS_KRANN", "GROESSE", "");}
|
|
if (speicherart == 4) {INPAapiJob( sgbd, "_STATUS_KLANN", "GROESSE", "");}
|
|
if (speicherart == 5) {INPAapiJob( sgbd, "_STATUS_EISYAGR", "GROESSE", "");}
|
|
INPAapiResultInt(sets,"STUETZSTELLE_ANZAHL",1);
|
|
INPAapiResultText(s1, "JOB_STATUS",1,"");
|
|
if ( s1 != "OKAY" )
|
|
{
|
|
if (speicherart == 1) messagebox( "_STATUS_EISYGD", s1 );
|
|
if (speicherart == 2) messagebox( "_STATUS_EISYDR", s1 );
|
|
if (speicherart == 3) messagebox( "_STATUS_KRANN", s1 );
|
|
if (speicherart == 4) messagebox( "_STATUS_KLANN", s1 );
|
|
if (speicherart == 5) messagebox( "_STATUS_EISYAGR", s1 );
|
|
stop();
|
|
}
|
|
else
|
|
{
|
|
if ( sets == 0 )
|
|
{
|
|
blankscreen();
|
|
textout("Es sind keine Stützstellen in neuronalen Netzen vorhanden!",20,5);
|
|
if (speicherart == 1) {commentlines( 7);}
|
|
if (speicherart == 2) {commentlines( 8);}
|
|
if (speicherart == 3) {commentlines( 9);}
|
|
if (speicherart == 4) {commentlines(10);}
|
|
if (speicherart == 5) {commentlines(11);}
|
|
if (datei_nn != "") filewrite("Es sind keine Stützstellen in neuronalen Netzen vorhanden!");
|
|
fileclose();
|
|
}
|
|
if ( sets != 0 )
|
|
{
|
|
userboxclose(0);
|
|
blankscreen();
|
|
inttostring( sets, s2 );
|
|
textout( "Es werden " + s2 + " Datensätze gespeichert", 20, 5);
|
|
datsatz = 0;
|
|
// zif_lesen(s2); // SoftwareStand
|
|
// data_id_lesen(s3);
|
|
textout("SoftwareReferenz : " + s2 + " DatenReferenz : " + s3, 22, 5 );
|
|
getdate(s3);
|
|
gettime(s4);
|
|
textout("========== " + s3 + " ========== " + s4 + " ==========",21,5);
|
|
if (speicherart == 1) {commentlines( 7);}
|
|
if (speicherart == 2) {commentlines( 8);}
|
|
if (speicherart == 3) {commentlines( 9);}
|
|
if (speicherart == 4) {commentlines(10);}
|
|
if (speicherart == 5) {commentlines(11);}
|
|
if( inputstate != 1 )
|
|
{
|
|
filewrite(" ");
|
|
if (speicherart == 1) {filewrite("NR;NKW_WERT;NKW_EINH;VSE_SPRI_WERT;VSE_SPRI_EINH;VSA_SPRI_WERT;VSA_SPRI_EINH;WDK_IST_WERT;WDK_IST_EINH;MRNN_TEST_DK_WERT;MRNN_TEST_DK_EINH");}
|
|
if (speicherart == 2) {filewrite("NR;NKW_WERT;NKW_EINH;VSE_SPRI_WERT;VSE_SPRI_EINH;VSA_SPRI_WERT;VSA_SPRI_EINH;WDK_IST_WERT;WDK_IST_EINH;MRNN_TEST_PR_WERT;MRNN_TEST_PR_EINH");}
|
|
if (speicherart == 3) {filewrite("NR;NKW_WERT;NKW_EINH;RF_WERT;RF_EINH;TANS_WERT;TANS_EINH;TMOT_WERT;TMOT_EINH;BA_IST_WERT;BA_IST_EINH;KRNN_TEST_WERT;KRNN_TEST_EINH");}
|
|
if (speicherart == 4) {filewrite("NR;NKW_LOC_WERT;NKW_LOC_EINH;RK_LOC_WERT;RK_LOC_EINH;TMOT_LOC_WERT;TMOT_LOC_EINH;KLANN_TEST1;KLANN_TEST1_EINH;KLANN_TEST2_WERT;KLANN_TEST2_EINH");}
|
|
if (speicherart == 5) {filewrite("NR;AGRPOS_WERT;AGRPOS_EINH");}
|
|
while ( datsatz <= sets - 1)
|
|
{
|
|
inttostring(datsatz,s1);
|
|
s1 = "INPA;" + s1;
|
|
inttostring(datsatz,s2);
|
|
// Job-Namen festlegen
|
|
if (speicherart == 1) {INPAapiJob(sgbd,"_STATUS_EISYGD",s1,"");}
|
|
if (speicherart == 2) {INPAapiJob(sgbd,"_STATUS_EISYDR",s1,"");}
|
|
if (speicherart == 3) {INPAapiJob(sgbd,"_STATUS_KRANN",s1,"");}
|
|
if (speicherart == 4) {INPAapiJob(sgbd,"_STATUS_KLANN",s1,"");}
|
|
if (speicherart == 5) {INPAapiJob(sgbd,"_STATUS_EISYAGR",s1,"");}
|
|
inttostring(datsatz + 1,s_temp);
|
|
s_temp = s_temp + ";";
|
|
// optionales Result auslesen
|
|
if (speicherart == 1) {s3 = "STAT_NKW_" + s2 + "_WERT";}
|
|
if (speicherart == 2) {s3 = "STAT_NKW_" + s2 + "_WERT";}
|
|
if (speicherart == 3) {s3 = "STAT_NKW_" + s2 + "_WERT";}
|
|
if (speicherart == 4) {s3 = "STAT_NKW_LOC_" + s2 + "_WERT";}
|
|
if (speicherart == 5) {s3 = "STAT_AGRPOS_" + s2 + "_WERT";}
|
|
INPAapiResultAnalog(r_temp,s3,1);
|
|
realtostring(r_temp,"4.0",s1);
|
|
s_temp = s_temp + s1 + ";";
|
|
// optionale Einheit auslesen und an String s_temp anhängen
|
|
if (speicherart == 1) {s3 = "STAT_NKW_EINH";}
|
|
if (speicherart == 2) {s3 = "STAT_NKW_EINH";}
|
|
if (speicherart == 3) {s3 = "STAT_NKW_EINH";}
|
|
if (speicherart == 4) {s3 = "STAT_NKW_LOC_EINH";}
|
|
if (speicherart == 5) {s3 = "STAT_AGRPOS_EINH";}
|
|
INPAapiResultText(s1,s3,1,"");
|
|
s_temp = s_temp + s1 + ";";
|
|
// optionales Result auslesen
|
|
if (speicherart == 1) {s3 = "STAT_VSE_SPRI_" + s2 + "_WERT";}
|
|
if (speicherart == 2) {s3 = "STAT_VSE_SPRI_" + s2 + "_WERT";}
|
|
if (speicherart == 3) {s3 = "STAT_RF_" + s2 + "_WERT";}
|
|
if (speicherart == 4) {s3 = "STAT_RK_LOC_" + s2 + "_WERT";}
|
|
if (speicherart == 5) {s3 = "STAT_PRNN_TEST_AGR_" + s2 + "_WERT";}
|
|
INPAapiResultAnalog(r_temp,s3,1);
|
|
realtostring(r_temp,"7.4",s1);
|
|
s_temp = s_temp + s1 + ";";
|
|
// optionale Einheit auslesen und an String s_temp anhängen
|
|
if (speicherart == 1) {s3 = "STAT_VSE_SPRI_EINH";}
|
|
if (speicherart == 2) {s3 = "STAT_VSE_SPRI_EINH";}
|
|
if (speicherart == 3) {s3 = "STAT_RF_EINH";}
|
|
if (speicherart == 4) {s3 = "STAT_RK_LOC_EINH";}
|
|
if (speicherart == 5) {s3 = "STAT_PRNN_TEST_AGR_EINH";}
|
|
INPAapiResultText(s1,s3,1,"");
|
|
s_temp = s_temp + s1 + ";";
|
|
// optionales Result auslesen
|
|
if (speicherart == 1) {s3 = "STAT_VSA_SPRI_" + s2 + "_WERT";}
|
|
if (speicherart == 2) {s3 = "STAT_VSA_SPRI_" + s2 + "_WERT";}
|
|
if (speicherart == 3) {s3 = "STAT_TANS_" + s2 + "_WERT";}
|
|
if (speicherart == 4) {s3 = "STAT_TMOT_LOC_" + s2 + "_WERT";}
|
|
INPAapiResultAnalog(r_temp,s3,1);
|
|
realtostring(r_temp,"7.4",s1);
|
|
s_temp = s_temp + s1 + ";";
|
|
// optionale Einheit auslesen und an String s_temp anhängen
|
|
if (speicherart == 1) {s3 = "STAT_VSA_SPRI_EINH";}
|
|
if (speicherart == 2) {s3 = "STAT_VSA_SPRI_EINH";}
|
|
if (speicherart == 3) {s3 = "STAT_TANS_EINH";}
|
|
if (speicherart == 4) {s3 = "STAT_TMOT_LOC_EINH";}
|
|
INPAapiResultText(s1,s3,1,"");
|
|
s_temp = s_temp + s1 + ";";
|
|
// optionales Result auslesen
|
|
if (speicherart == 1) {s3 = "STAT_WDK_IST_" + s2 + "_WERT";}
|
|
if (speicherart == 2) {s3 = "STAT_WDK_IST_" + s2 + "_WERT";}
|
|
if (speicherart == 3) {s3 = "STAT_TMOT_WERT";}
|
|
if (speicherart == 4) {s3 = "STAT_KLANN_TEST1_" + s2 + "_WERT";}
|
|
INPAapiResultAnalog(r_temp,s3,1);
|
|
realtostring(r_temp,"9.6",s1);
|
|
s_temp = s_temp + s1 + ";";
|
|
// optionale Einheit auslesen und an String s_temp anhängen
|
|
if (speicherart == 1) {s3 = "STAT_WDK_IST_EINH";}
|
|
if (speicherart == 2) {s3 = "STAT_WDK_IST_EINH";}
|
|
if (speicherart == 3) {s3 = "STAT_TMOT_EINH";}
|
|
if (speicherart == 4) {s3 = "STAT_KLANN_TEST1_EINH";}
|
|
INPAapiResultText(s1,s3,1,"");
|
|
s_temp = s_temp + s1 + ";";
|
|
// optionales Result auslesen
|
|
if (speicherart == 3)
|
|
{
|
|
INPAapiResultText(s1,"STAT_BA_IST_WERT",1,"");
|
|
s_temp = s_temp + s1 + ";";
|
|
INPAapiResultText(s1,"STAT_BA_IST_EINH",1,"");
|
|
s_temp = s_temp + s1 + ";";
|
|
}
|
|
// optionales Result auslesen
|
|
if (speicherart == 1) {s3 = "STAT_MRNN_TEST_DK_" + s2 + "_WERT";}
|
|
if (speicherart == 2) {s3 = "STAT_MRNN_TEST_PR_" + s2 + "_WERT";}
|
|
if (speicherart == 3) {s3 = "STAT_KRNN_TEST_" + s2 + "_WERT";}
|
|
if (speicherart == 4) {s3 = "STAT_KLANN_TEST2_" + s2 + "_WERT";}
|
|
if (speicherart <= 4)
|
|
{
|
|
INPAapiResultAnalog(r_temp,s3,1);
|
|
realtostring(r_temp,"7.4",s1);
|
|
s_temp = s_temp + s1 + ";";
|
|
}
|
|
// optionale Einheit auslesen und an String s_temp anhängen
|
|
if (speicherart == 1) {s3 = "STAT_MRNN_TEST_DK_EINH";}
|
|
if (speicherart == 2) {s3 = "STAT_MRNN_TEST_PR_EINH";}
|
|
if (speicherart == 3) {s3 = "STAT_KRNN_TEST_EINH";}
|
|
if (speicherart == 4) {s3 = "STAT_KLANN_TEST2_EINH";}
|
|
if (speicherart <= 4)
|
|
{
|
|
INPAapiResultText(s1,s3,1,"");
|
|
s_temp = s_temp + s1 + ";";
|
|
}
|
|
inttostring(datsatz,s1);
|
|
textout("Schreiben von Stützstellensatz " + s1 + " mit zugehörigem Adaptionswert!",2,5);
|
|
|
|
filewrite(s_temp);
|
|
datsatz = datsatz+1;
|
|
}
|
|
filewrite( "___________________________________________________________" );
|
|
fileclose();
|
|
messagebox( "Ausgabe der Adaptionswerte", "Ausgabe erfolgte in Datei: " + datei_nn);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
// **********************************************************************
|
|
// *** Ausgabe der RBM-Werte zur Ratiobildung in eine Datei datei_rbm ***
|
|
// *** Inhalt wird vorgegeben durch s_mode_9, das aufrufende Menue ***
|
|
// *** 27 12 05 ew neu erstellt ***
|
|
// **********************************************************************
|
|
OutputRBM2File(in:int speicherart)
|
|
{
|
|
int i1;
|
|
string s1, s2, s3, s4, s_temp; // Lokale Strings
|
|
|
|
if (speicherart == 1)
|
|
{
|
|
INPAapiJob(sgbd,"_STATUS_OBD_MODE_09","",""); // Statusergebnisse ermitteln
|
|
INPAapiResultText(vartext1,"JOB_STATUS",1,"");
|
|
if (vartext1 != "OKAY")
|
|
{
|
|
INPAapiJob(sgbd,"_STATUS_RBMMODE9","",""); // Statusergebnisse ermitteln
|
|
INPAapiResultText(vartext1,"JOB_STATUS",1,"");
|
|
if (vartext1 != "OKAY")
|
|
{
|
|
messagebox("_STATUS_OBD_MODE_09",vartext1);
|
|
stop();
|
|
}
|
|
}
|
|
}
|
|
if (speicherart == 2)
|
|
{
|
|
INPAapiJob(sgbd,"STATUS_RBMMS1","",""); // Statusergebnisse ermitteln
|
|
INPAapiResultText(vartext1,"JOB_STATUS",1,"");
|
|
if (vartext1 != "OKAY")
|
|
{
|
|
messagebox("STATUS_RBMMS1",vartext1);
|
|
stop();
|
|
}
|
|
}
|
|
if (speicherart == 3)
|
|
{
|
|
INPAapiJob(sgbd,"STATUS_RBMMS2","",""); // Statusergebnisse ermitteln
|
|
INPAapiResultText(vartext1,"JOB_STATUS",1,"");
|
|
if (vartext1 != "OKAY")
|
|
{
|
|
messagebox("STATUS_RBMMS2",vartext1);
|
|
stop();
|
|
}
|
|
}
|
|
|
|
userboxclose(0);
|
|
blankscreen();
|
|
// zif_lesen(s2); // SoftwareStand
|
|
// data_id_lesen(s3);
|
|
textout("SoftwareReferenz : " + s2 + " DatenReferenz : " + s3, 22, 5 );
|
|
getdate(s3);
|
|
gettime(s4);
|
|
textout("========== " + s3 + " ========== " + s4 + " ==========",21,5);
|
|
if (speicherart == 1) {commentlines( 4);}
|
|
if (speicherart == 2) {commentlines( 5);}
|
|
if (speicherart == 3) {commentlines( 6);}
|
|
if( inputstate != 1 )
|
|
{
|
|
filewrite(" ");
|
|
filewrite("Diagnose;Numerator;Denominator;Ratio;");
|
|
if (speicherart == 1)
|
|
{
|
|
INPAapiJob(sgbd,"_STATUS_OBD_MODE_09","",""); // Statusergebnisse ermitteln
|
|
s_temp = "OBD-Zyklen";
|
|
INPAapiResultInt(i1,"STAT_OBDCOND",1);
|
|
inttostring(i1, s1);
|
|
s_temp = s_temp + ";"+ s1 + ";-;-;";
|
|
filewrite(s_temp);
|
|
s_temp = "Anzahl Motorstarts";
|
|
INPAapiResultInt(i1,"STAT_IGNCNTR",1);
|
|
inttostring(i1, s1);
|
|
s_temp = s_temp + ";-;" + s1 + ";-;";
|
|
filewrite(s_temp);
|
|
Ausgabe_RBM("lang","_STATUS_OBD_MODE_09","Überwachung Katalysator Bank 1","STAT_CATCOMP1","STAT_CATCOND1","Überwachung Katalysator Bank 2","STAT_CATCOMP2","STAT_CATCOND2",1);
|
|
Ausgabe_RBM("lang","_STATUS_OBD_MODE_09","Überwachung Lambdasonden Bank 1","STAT_O2SCOMP1","STAT_O2SCOND1","Überwachung Lambdasonden Bank 2","STAT_O2SCOMP2","STAT_O2SCOND2",1);
|
|
Ausgabe_RBM("lang","_STATUS_OBD_MODE_09","Überwachung Abgasrückführung","STAT_EGRCOMP","STAT_EGRCOND","Überwachung Ansauganlage","STAT_AIRCOMP1","STAT_AIRCOND1",1);
|
|
Ausgabe_RBM("kurz","_STATUS_OBD_MODE_09","Überwachung Tankentlüftung","STAT_EVAPCOMP","STAT_EVAPCOND","","","",1);
|
|
}
|
|
if (speicherart == 2)
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS1","Überwachung Katalysator Sauerstoffspeicherfaehigkeit Bank 1","STAT_CTR_COMP_RBM_CAT_DIAG_1","STAT_CTR_CDN_RBM_CAT_DIAG_1","Überwachung Katalysator Sauerstoffspeicherfaehigkeit Bank 2","STAT_CTR_COMP_RBM_CAT_DIAG_2","STAT_CTR_CDN_RBM_CAT_DIAG_1",1);
|
|
Ausgabe_RBM("lang","STATUS_RBMMS1","Überwachung Dynamikpruefung lineare Lamdasonden Bank 1","STAT_CTR_COMP_RBM_DYN_VLD_LS_UP_1","STAT_CTR_CDN_RBM_DYN_VLD_LS_UP_1","Überwachung Dynamikpruefung lineare Lamdasonden Bank 2","STAT_CTR_COMP_RBM_DYN_VLD_LS_UP_2","STAT_CTR_CDN_RBM_DYN_VLD_LS_UP_2",1);
|
|
Ausgabe_RBM("lang","STATUS_RBMMS1","Überwachung Lamdasondensignalverschiebung mager Bank 1","STAT_CTR_COMP_RBM_SHIFT_AFL_LSL_UP_1","STAT_CTR_CDN_RBM_SHIFT_AFL_LSL_UP_1","Überwachung Lamdasondensignalverschiebung mager Bank 2","STAT_CTR_COMP_RBM_SHIFT_AFL_LSL_UP_2","STAT_CTR_CDN_RBM_SHIFT_AFL_LSL_UP_2",1);
|
|
Ausgabe_RBM("lang","STATUS_RBMMS1","Überwachung Lamdasondensignalverschiebung fett Bank 1","STAT_CTR_COMP_RBM_SHIFT_AFR_LSL_UP_1","STAT_CTR_CDN_RBM_SHIFT_AFR_LSL_UP_1","Überwachung Lamdasondensignalverschiebung fett Bank 2","STAT_CTR_COMP_RBM_SHIFT_AFR_LSL_UP_2","STAT_CTR_CDN_RBM_SHIFT_AFR_LSL_UP_2",1);
|
|
Ausgabe_RBM("lang","STATUS_RBMMS1","Überwachung lineare Lamdasonde korrekt verbaut Bank 1","STAT_CTR_COMP_RBM_AIR_LSL_UP_1","STAT_CTR_CDN_RBM_AIR_LSL_UP_1","Überwachung lineare Lamdasonde korrekt verbaut Bank 2","STAT_CTR_COMP_RBM_AIR_LSL_UP_2","STAT_CTR_CDN_RBM_AIR_LSL_UP_2",1);
|
|
Ausgabe_RBM("lang","STATUS_RBMMS1","Überwachung Tankfeinleckpruefung (DMTL)","STAT_CTR_COMP_RBM_SMALL_LEAK","STAT_CTR_CDN_RBM_SMALL_LEAK","Überwachung mechanische Schwergaengigkeit VANOS (Einlass)","STAT_CTR_COMP_RBM_MEC_IVVT_IN","STAT_CTR_CDN_RBM_MEC_IVVT_IN",1);
|
|
Ausgabe_RBM("lang","STATUS_RBMMS1","Überwachung mechanische Schwergaengigkeit VANOS (Auslass)","STAT_CTR_COMP_RBM_MEC_IVVT_EX","STAT_CTR_CDN_RBM_MEC_IVVT_EX","Überwachung sprunghafte Veraenderung der Steuerzeiten Nockenwelleneinlass","STAT_CTR_COMP_RBM_TOOTH_OFF_IN_1","STAT_CTR_CDN_RBM_TOOTH_OFF_IN_1",1);
|
|
Ausgabe_RBM("lang","STATUS_RBMMS1","Überwachung sprunghafte Veraenderung der Steuerzeiten Nockenwellenauslass","STAT_CTR_COMP_RBM_TOOTH_OFF_EX_1","STAT_CTR_CDN_RBM_TOOTH_OFF_EX_1","Überwachung Sekundaerluftsystem","STAT_CTR_COMP_RBM_SA","STAT_CTR_CDN_RBM_SA",1);
|
|
}
|
|
if (speicherart == 3)
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Tankentlueftungssystem","STAT_CTR_COMP_RBM_DIAGCPS","STAT_CTR_CDN_RBM_DIAGCPS","Überwachung Tankgrobleckpruefung (DMTL)","STAT_CTR_COMP_RBM_ROUGH_LEAK","STAT_CTR_CDN_RBM_ROUGH_LEAK",1);
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Diagnosemodul Tankleckage (DMTL)","STAT_CTR_COMP_RBM_DMTLM","STAT_CTR_CDN_RBM_DMTLM","Überwachung Thermostat","STAT_CTR_COMP_RBM_TH","STAT_CTR_CDN_RBM_TH",1);
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Motortemperatur Plausibilitaet","STAT_CTR_COMP_RBM_TCO_PLAUS","STAT_CTR_CDN_RBM_TCO_PLAUS","Überwachung Motortemperatur haengendes Sensorsignal","STAT_CTR_COMP_RBM_TCO_STUCK","STAT_CTR_CDN_RBM_TCO_STUCK",1);
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Kuehlerauslasstemperatur Plausibilitaet","STAT_CTR_COMP_RBM_TCO_2_PLAUS","STAT_CTR_CDN_RBM_TCO_2_PLAUS","Überwachung Umgebungstemperatur Plausibilitaet","STAT_CTR_COMP_RBM_TAM_PLAUS","STAT_CTR_CDN_RBM_TAM_PLAUS",1);
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Geschwindigkeit Plausibilitaet","STAT_CTR_COMP_RBM_VS_PLAUS","STAT_CTR_CDN_RBM_VS_PLAUS","Überwachung Tankfuellstand","STAT_CTR_COMP_RBM_FTL_OBD","STAT_CTR_CDN_RBM_FTL_OBD",1);
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Lamdasondenheizung nach Katalysator Bank 1","STAT_CTR_COMP_RBM_OBD_LSH_DOWN_1","STAT_CTR_CDN_RBM_OBD_LSH_DOWN_1","Überwachung Lamdasondenheizung nach Katalysator Bank 2","STAT_CTR_COMP_RBM_OBD_LSH_DOWN_2","STAT_CTR_CDN_RBM_OBD_LSH_DOWN_2",1);
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Alterung lineare Lamdasonde Bank 1","STAT_CTR_COMP_RBM_OBD_VLD_LSH_UP_1","STAT_CTR_CDN_RBM_OBD_VLD_LSH_UP_1","Überwachung Alterung lineare Lamdasonde Bank 2","STAT_CTR_COMP_RBM_OBD_VLD_LSH_UP_2","STAT_CTR_CDN_RBM_OBD_VLD_LSH_UP_2",1);
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Kupplungsschalter","STAT_CTR_COMP_RBM_CS","STAT_CTR_CDN_RBM_CS","Überwachung Leerlaufregler","STAT_CTR_COMP_RBM_ISC","STAT_CTR_CDN_RBM_ISC",1);
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Luftmassenmesser","STAT_CTR_COMP_RBM_MAF","STAT_CTR_CDN_RBM_MAF","Überwachung Ansauglufttemperatur Plausibilitaet","STAT_CTR_COMP_RBM_TIA_PLAUS","STAT_CTR_CDN_RBM_TIA_PLAUS",1);
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Umgebungsdruck Plausibilitaet","STAT_CTR_COMP_RBM_AMP_PLAUS","STAT_CTR_CND_RBM_AMP_PLAUS","Überwachung Plausibilitaet Drosselklappeposition zu Signal Luftmassenmesser","STAT_CTR_COMP_RBM_LOAD_TPS_PLAUS","STAT_CTR_CDN_RBM_LOAD_TPS_PLAUS",1);
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Differenzdrucksensor Sauganlage zu Umgebung Plausibilitaet","STAT_CTR_COMP_RBM_MAP_DIP_PLAUS","STAT_CTR_CDN_RBM_MAP_DIP_PLAUS","Überwachung Abweichung Lambdaregelung Bank 1","STAT_CTR_COMP_RBM_VLS_DOWN_DIF_1","STAT_CTR_CDN_RBM_VLS_DOWN_DIF_1",1);
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Abweichung Lambdaregelung Bank 2","STAT_CTR_COMP_RBM_VLS_DOWN_DIF_2","STAT_CTR_CDN_RBM_VLS_DOWN_DIF_2","Überwachung binaere Lamdasonde nach Katalysator Bank 1","STAT_CTR_COMP_RBM_CHK_LS_DOWN_1","STAT_CTR_CDN_RBM_CHK_LS_DOWN_1",1);
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung binaere Lamdasonde nach Katalysator Bank 2","STAT_CTR_COMP_RBM_CHK_LS_DOWN_2","STAT_CTR_CDN_RBM_CHK_LS_DOWN_2","Überwachung Schaltzeit binaere Lamdasonde Bank 1","STAT_CTR_COMP_RBM_SWT_LS_DOWN_1","STAT_CTR_CDN_RBM_SWT_LS_DOWN_1",1);
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Schaltzeit binaere Lamdasonde Bank 2","STAT_CTR_COMP_RBM_SWT_LS_DOWN_2","STAT_CTR_CDN_RBM_SWT_LS_DOWN_2","Überwachung Abstellzeit","STAT_CTR_COMP_RBM_T_ES","STAT_CTR_CDN_RBM_T_ES",1);
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Drosselklappenlagesensoren","STAT_CTR_COMP_RBM_TPS","STAT_CTR_CDN_RBM_TPS","Überwachung Leerlaufregler bei Kaltstart","STAT_CTR_COMP_RBM_ISC_CST","STAT_CTR_CDN_RBM_ISC_CST",1);
|
|
Ausgabe_RBM("kurz","STATUS_RBMMS2","Überwachung Momentenreserve bei Kaltstart","STAT_CTR_COMP_RBM_TQ_CST","STAT_CTR_CDN_RBM_TQ_CST","","","",1);
|
|
}
|
|
filewrite( "___________________________________________________________" );
|
|
fileclose();
|
|
messagebox( "Ausgabe der RBM-Werte", "Ausgabe erfolgte in Datei: " + datei_rbm);
|
|
}
|
|
}
|
|
|
|
// *****************************************************************************
|
|
// *** Ausgabe der Speicherzelleninhalte in eine Datei datei_sp ***
|
|
// *** Inhalt wird vorgegeben durch s_speicher_lar, ... das aufrufende Menue ***
|
|
// *** 02 01 06 ew neu erstellt ***
|
|
// *****************************************************************************
|
|
OutputSpeicher2File()
|
|
{
|
|
int sets; // Anzahl der Stützstellensätze
|
|
int durchlaufzaehler;
|
|
string s1, s2, s3, s4, s_temp; // Lokale Strings
|
|
real r_temp;
|
|
int i_temp; // Schleifenzaehler Zeilen
|
|
|
|
durchlaufzaehler = 0;
|
|
inttostring(anzahl,vartext);
|
|
ftextout(dme_text + " Speicher lesen",1,5,1,0);
|
|
INPAapiJob(sgbd,"SPEICHER_LESEN_ASCII","LAR;0x"+adresse+";"+vartext,"");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(varJobState,"JOB_STATUS",1,"");
|
|
if(varJobState != "OKAY")
|
|
{
|
|
ftextout(varJobState,5,20,0,1);
|
|
stop();
|
|
}
|
|
else
|
|
{
|
|
INPAapiResultBinary("DATEN",1);
|
|
hexdump(adresse,anzahl,5,20);
|
|
i_temp = 2 * anzahl;
|
|
sets = anzahl;
|
|
}
|
|
if ( sets == 0 )
|
|
{
|
|
blankscreen();
|
|
textout("Es wurden keine Speicherzellen ausgelesen!",20,5);
|
|
commentlines(12);
|
|
if (datei_sp != "") filewrite("Es wurden keine Speicherzellen ausgelesen!");
|
|
fileclose();
|
|
}
|
|
if ( sets != 0 )
|
|
{
|
|
userboxclose(0);
|
|
blankscreen();
|
|
textout( "Die Speicherzelleninhalte werden gespeichert!", 20, 5);
|
|
// zif_lesen(s2); // SoftwareStand
|
|
// data_id_lesen(s3);
|
|
textout("SoftwareReferenz : " + s2 + " DatenReferenz : " + s3, 22, 5 );
|
|
getdate(s3);
|
|
gettime(s4);
|
|
textout("========== " + s3 + " ========== " + s4 + " ==========",21,5);
|
|
commentlines(12);
|
|
filewrite("Startadresse: " + adresse);
|
|
filewrite("Anzahl Byte : " + vartext);
|
|
INPAapiJob(sgbd,"SPEICHER_LESEN_ASCII","LAR;0x"+adresse+";"+vartext,"");
|
|
if(varJobState != "OKAY") { ftextout(varJobState,5,20,0,1); stop();}
|
|
else
|
|
{
|
|
INPAapiResultBinary("DATEN",1);
|
|
GetBinaryDataString(s_temp,anzahl);
|
|
val1 = 0;
|
|
// Pakete von 32 abspalten
|
|
while( i_temp > 32 )
|
|
{
|
|
midstr(s2,s_temp,val1,32);
|
|
if (durchlaufzaehler == 0)
|
|
{
|
|
filewrite("Daten : " + s2);
|
|
durchlaufzaehler = 1;
|
|
}
|
|
else
|
|
{
|
|
filewrite(" " + s2);
|
|
}
|
|
val1 = val1 + 32;
|
|
i_temp = i_temp - 32;
|
|
}
|
|
midstr(s2,s_temp,val1,i_temp);
|
|
filewrite(" " + s2);
|
|
textout("Schreiben der Speicherzelleninhalte!",2,5);
|
|
filewrite( "___________________________________________________________" );
|
|
fileclose();
|
|
messagebox("Ausgabe der Speicherzelleninhalte", "Ausgabe erfolgte in Datei: " + datei_sp);
|
|
stringtoint(vartext,anzahl);
|
|
}
|
|
}
|
|
}
|
|
|
|
// *****************************************************************************
|
|
// *** Ausgabe der Adaptionswerte aus neuronalen Netzen eine Datei datei_uds ***
|
|
// *** Inhalt wird vorgegeben durch s_uds_lesen, ... das aufrufende Menue ***
|
|
// *** 26 12 05 ew neu erstellt ***
|
|
// *****************************************************************************
|
|
OutputUDS2File()
|
|
{
|
|
int sets; // Anzahl der Stützstellensätze
|
|
string s1, s2, s3, s4, s_temp; // Lokale Strings
|
|
int i_temp; // Schleifenzaehler Zeilen
|
|
|
|
INPAapiJob(sgbd,"_STATUS_UDS_SERVICE",uds_service,"");
|
|
INPAapiResultText(s_temp,"ANTWORTTELEGRAMM",1,"");
|
|
strlen(sets,s_temp);
|
|
if ( sets == 0 )
|
|
{
|
|
blankscreen();
|
|
textout("Es wurde kein UDS-Service getestet!",20,5);
|
|
commentlines(13);
|
|
if (datei_uds != "") filewrite("Es wurde kein UDS-Service getestet!");
|
|
fileclose();
|
|
}
|
|
if ( sets != 0 )
|
|
{
|
|
userboxclose(0);
|
|
blankscreen();
|
|
textout( "Es wird 1 Datensatz gespeichert", 20, 5);
|
|
// zif_lesen(s2); // SoftwareStand
|
|
// data_id_lesen(s3);
|
|
textout("SoftwareReferenz : " + s2 + " DatenReferenz : " + s3, 22, 5 );
|
|
getdate(s3);
|
|
gettime(s4);
|
|
textout("========== " + s3 + " ========== " + s4 + " ==========",21,5);
|
|
commentlines(13);
|
|
if (inputstate != 1)
|
|
{
|
|
filewrite(" ");
|
|
filewrite("Auftragstelegramm:");
|
|
filewrite(uds_service);
|
|
val1 = 0;
|
|
filewrite("Antworttelegramm:");
|
|
i_temp = anzahl;
|
|
// Pakete von 66 abspalten
|
|
while( i_temp > 66 )
|
|
{
|
|
midstr(s2,s_temp,val1,66);
|
|
filewrite(s2);
|
|
val1 = val1 + 66;
|
|
i_temp = i_temp - 66;
|
|
}
|
|
midstr(s2,s_temp,val1,i_temp);
|
|
filewrite(s2);
|
|
// Ausgabe im Fehlerfall
|
|
if(varJobState != "OKAY")
|
|
{
|
|
val2 = val2 - 2;
|
|
filewrite(varJobState);
|
|
}
|
|
textout("Schreiben der Kommunikationstelegramme!",2,5);
|
|
filewrite( "___________________________________________________________" );
|
|
fileclose();
|
|
messagebox("Ausgabe der Kommunikationstelegramme", "Ausgabe erfolgte in Datei: " + datei_uds);
|
|
}
|
|
}
|
|
}
|
|
|
|
// *****************************************************************************
|
|
// *** Wechsel zwischen den SGBDen, MSD87_R0, MSD87_L0 Anpassung der ***
|
|
// *** Variablen für Pfad, SG-Adresse und Textstring fuer fuer Textausgaben ***
|
|
// *** 04 06 07 ml neu erstellt ***
|
|
// *****************************************************************************
|
|
SGBDswitch () {
|
|
|
|
if (sgbd == dme_r) {
|
|
|
|
sgbd = dme_l ;
|
|
dme_text = dme_text_l ;
|
|
txtPfad = txtPfad_l ;
|
|
sg_adr = sg_adr_l ;
|
|
}
|
|
else if (sgbd == dme_l) {
|
|
|
|
sgbd = dme_r ;
|
|
dme_text = dme_text_r ;
|
|
txtPfad = txtPfad_r ;
|
|
sg_adr = sg_adr_r ;
|
|
}
|
|
}
|
|
|
|
|
|
//********************************
|
|
//*** EWS-Subfunktionen 070514 ***
|
|
//********************************
|
|
CompareInputWithSG(in: string str_in, in: string str_sg, out: int result)
|
|
{
|
|
int i;
|
|
string strCmp, strTmp, strTmp2;
|
|
|
|
strCmp = str_in;
|
|
instr(i, 0, strCmp, "0x"); // 0x entfernen
|
|
while (i>=0)
|
|
{
|
|
midstr(strTmp, strCmp,0,i);
|
|
midstr(strTmp2,strCmp,i+2,99);
|
|
strcat(strCmp, strTmp, strTmp2);
|
|
instr(i, 0, strCmp, "0x");
|
|
}
|
|
instr(i, 0, strCmp, ","); // Komma entfernen
|
|
while (i>=0)
|
|
{
|
|
midstr(strTmp, strCmp,0,i);
|
|
midstr(strTmp2,strCmp,i+1,99);
|
|
strcat(strCmp, strTmp, strTmp2);
|
|
instr(i, 0, strCmp, ",");
|
|
}
|
|
instr(i, 0, strCmp, " "); // Blank entfernen
|
|
while (i>=0)
|
|
{
|
|
midstr(strTmp, strCmp,0,i);
|
|
midstr(strTmp2,strCmp,i+1,99);
|
|
strcat(strCmp, strTmp, strTmp2);
|
|
instr(i, 0, strCmp, " ");
|
|
}
|
|
instr(i,0,str_sg,strCmp); // hier werden die beiden Strings verglichen
|
|
result = i; //0: Vergleich i.O.
|
|
}
|
|
|
|
//*********************
|
|
//*** Statemachines ***
|
|
//*********************
|
|
|
|
STATEMACHINE REPEATER() {
|
|
|
|
// Stoppuhrvariablen. Falls Statemachines in mehreren Instanzen aufgerufen werden koennen,
|
|
// sollten die Variablen fuer jede Substatemachine eigene Variablen definiert werden.
|
|
int repeaterStartzeit = 0;
|
|
int repeaterLaufzeit = 0;
|
|
|
|
// Fuer jede Substatemachine definierbare Zykluszeit in [s], ab der sie neu wiederholt werden soll.
|
|
int repeater_1_zyklusdauer = 15;
|
|
int repeater_2_zyklusdauer = 15;
|
|
int repeater_3_zyklusdauer = 15;
|
|
|
|
INIT {
|
|
startzeit(repeaterStartzeit) ;
|
|
|
|
if (repeaterSwitch == FALSE) setstate(REPEAT_ENDE);
|
|
else setstate(REPEAT);
|
|
}
|
|
REPEAT {
|
|
callstatemachine(REPEATER_1);
|
|
|
|
while (repeaterSwitch == TRUE) {
|
|
|
|
laufzeit(repeaterStartzeit, repeaterLaufzeit);
|
|
|
|
// chosenRepeater == globale Variable, ueber welche die zu wiederholende Substatemachine ausgewaehlt werden kann.
|
|
// chosenRepeater == 1 siehe m_glf(), beide Luftklappen dauerhaft geoeffnet.
|
|
if (chosenRepeater == 1) {
|
|
|
|
setitem( 1, "Oben ZU", FALSE);
|
|
setitem( 2, "Oben AUF", FALSE);
|
|
setitem( 3, "Unten ZU", FALSE);
|
|
setitem( 4, "Unten AUF", FALSE);
|
|
setitem( 5, "DME", FALSE);
|
|
setitem( 6, "WKM unten", FALSE);
|
|
setitem( 7, "WKM oben", FALSE);
|
|
setitem(10, "Zurück", FALSE);
|
|
|
|
if (repeaterLaufzeit >= repeater_1_zyklusdauer) {
|
|
|
|
startzeit(repeaterStartzeit);
|
|
callstatemachine(REPEATER_1);
|
|
setstate(REPEAT);
|
|
delay(50);
|
|
}
|
|
|
|
// Zwingt den Ausfuehrungspfad zum Sprung in Substatemachine und gibt somit fuer Screen etc. Rechenzeit frei.
|
|
else {
|
|
if (flicker == "") flicker ="WKM aktiv";
|
|
else flicker ="";
|
|
|
|
setitem(9, flicker, FALSE);
|
|
repeaterSwitch = FALSE;
|
|
delay(50);
|
|
callstatemachine(REPEATER_1);
|
|
}
|
|
}
|
|
|
|
// chosenRepeater == 2 siehe m_glf(), untere Luftklappe dauerhaft geoeffnet.
|
|
if (chosenRepeater == 2) {
|
|
|
|
setitem( 1, "Oben ZU", FALSE);
|
|
setitem( 2, "Oben AUF", FALSE);
|
|
setitem( 3, "Unten ZU", FALSE);
|
|
setitem( 4, "Unten AUF", FALSE);
|
|
setitem( 5, "DME", FALSE);
|
|
setitem( 7, "WKM oben", FALSE);
|
|
setitem( 8, "WKM komplett", FALSE);
|
|
setitem(10, "Zurück", FALSE);
|
|
|
|
if (repeaterLaufzeit >= repeater_2_zyklusdauer) {
|
|
|
|
startzeit(repeaterStartzeit);
|
|
callstatemachine(REPEATER_1);
|
|
setstate(REPEAT);
|
|
delay(50);
|
|
}
|
|
// Zwingt den Ausfuehrungspfad zum Sprung in Substatemachine und gibt somit fuer Screen etc. Rechenzeit frei.
|
|
else {
|
|
if (flicker == "") flicker ="WKM aktiv";
|
|
else flicker ="";
|
|
|
|
setitem(9, flicker, FALSE);
|
|
repeaterSwitch = FALSE;
|
|
delay(50);
|
|
callstatemachine(REPEATER_1);
|
|
}
|
|
}
|
|
// chosenRepeater == 3 siehe m_glf(), obere Luftklappe dauerhaft geoeffnet.
|
|
if (chosenRepeater == 3) {
|
|
|
|
setitem( 1, "Oben ZU", FALSE);
|
|
setitem( 2, "Oben AUF", FALSE);
|
|
setitem( 3, "Unten ZU", FALSE);
|
|
setitem( 4, "Unten AUF", FALSE);
|
|
setitem( 5, "DME", FALSE);
|
|
setitem( 6, "WKM unten", FALSE);
|
|
setitem( 8, "WKM komplett", FALSE);
|
|
setitem(10, "Zurück", FALSE);
|
|
|
|
if (repeaterLaufzeit >= repeater_3_zyklusdauer) {
|
|
|
|
startzeit(repeaterStartzeit);
|
|
callstatemachine(REPEATER_1);
|
|
setstate(REPEAT);
|
|
delay(50);
|
|
}
|
|
// Zwingt den Ausfuehrungspfad zum Sprung in Substatemachine und gibt somit fuer Screen etc. Rechenzeit frei.
|
|
else {
|
|
if (flicker == "") flicker ="WKM aktiv";
|
|
else flicker ="";
|
|
|
|
setitem(9, flicker, FALSE);
|
|
repeaterSwitch = FALSE;
|
|
delay(50);
|
|
callstatemachine(REPEATER_1);
|
|
}
|
|
}
|
|
}
|
|
setstate(REPEAT_ENDE);
|
|
}
|
|
REPEAT_ENDE {
|
|
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_GLF","","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_GLF2","","");
|
|
setitem(9, "WKM beendet", FALSE);
|
|
|
|
setitem( 1, "Oben ZU", TRUE);
|
|
setitem( 2, "Oben AUF", TRUE);
|
|
setitem( 3, "Unten ZU", TRUE);
|
|
setitem( 4, "Unten AUF", TRUE);
|
|
setitem( 5, "DME", TRUE);
|
|
setitem( 6, "WKM unten", TRUE);
|
|
setitem( 7, "WKM oben", TRUE);
|
|
setitem( 8, "WKM komplett", TRUE);
|
|
setitem(10, "Zurück", TRUE);
|
|
}
|
|
}
|
|
|
|
STATEMACHINE REPEATER_1() {
|
|
|
|
INIT {
|
|
if (repeaterSwitch == FALSE) {
|
|
|
|
repeaterSwitch = TRUE;
|
|
setstate(LEERE_PROZEDUR);
|
|
}
|
|
else {
|
|
// Auswertung chosenRepeater fuer korrekte Prozedurenwahl.
|
|
if (chosenRepeater == 1) setstate(PROZEDUR_1); // WKM komplett.
|
|
if (chosenRepeater == 2) setstate(PROZEDUR_2); // WKM unten.
|
|
if (chosenRepeater == 3) setstate(PROZEDUR_3); // WKM oben.
|
|
}
|
|
}
|
|
LEERE_PROZEDUR {
|
|
returnstatemachine();
|
|
}
|
|
PROZEDUR_1 {
|
|
|
|
INPAapiJob(sgbd,"STEUERN_GLF","1;20","");
|
|
INPAapiJob(sgbd,"STEUERN_GLF2","1;20","");
|
|
returnstatemachine();
|
|
}
|
|
PROZEDUR_2 {
|
|
|
|
INPAapiJob(sgbd,"STEUERN_GLF2","1;20","");
|
|
returnstatemachine();
|
|
}
|
|
PROZEDUR_3 {
|
|
|
|
INPAapiJob(sgbd,"STEUERN_GLF","1;20","");
|
|
returnstatemachine();
|
|
}
|
|
}
|
|
|
|
// ******************
|
|
// *** Menüaufbau ***
|
|
// ******************
|
|
// *******************
|
|
// *** SGBD-Auswahl***
|
|
// *******************
|
|
MENU m_sgbd_auswahl() {
|
|
|
|
INIT {
|
|
setmenutitle("Steuergeräteauswahl für " + SG_Verbund_text );
|
|
}
|
|
|
|
ITEM( 1,"DMER" ) {
|
|
sgbd = dme_r ;
|
|
currentSGBD = sgbd;
|
|
dme_text = dme_text_r ;
|
|
sg_adr = sg_adr_r;
|
|
txtPfad = txtPfad_r ;
|
|
zurAnderenDmeUmgeschaltet = 0 ;
|
|
setscreen(s_main,TRUE) ;
|
|
setmenu(m_main) ;
|
|
}
|
|
|
|
ITEM( 2,"DMEL" ) {
|
|
sgbd = dme_l ;
|
|
currentSGBD = sgbd;
|
|
dme_text = dme_text_l ;
|
|
sg_adr = sg_adr_l;
|
|
txtPfad = txtPfad_l ;
|
|
|
|
zurAnderenDmeUmgeschaltet = 0 ;
|
|
setscreen(s_main,TRUE) ;
|
|
setmenu(m_main) ;
|
|
}
|
|
|
|
ITEM(10,"Exit" ) {
|
|
userboxclose(0) ;
|
|
exit() ;
|
|
}
|
|
}
|
|
|
|
|
|
// *****************
|
|
// *** Hauptmenü ***
|
|
// *****************
|
|
MENU m_main() {
|
|
|
|
INIT {
|
|
setmenutitle("Hauptmenue");
|
|
if (dme_r == dme_l) setitem(10,"Ende",TRUE);
|
|
else if (dme_r != dme_l) setitem (10, "DME wählen",TRUE);
|
|
|
|
if (EAversion == TRUE) {
|
|
setitem (12, "UDS-Test", TRUE);
|
|
setitem (16,"EWS 4",TRUE);
|
|
}
|
|
else {
|
|
setitem (12, "", FALSE);
|
|
setitem (16, "",FALSE);
|
|
}
|
|
}
|
|
ITEM( 1 ,"Info") {setscreen(s_info,TRUE); setmenu(m_main);}
|
|
ITEM( 2 ,"Ident") {setscreen(s_ident,TRUE); setmenu(m_ident);}
|
|
// ITEM( 3 ,"AIF") {taste = 0; setscreen(s_aif,TRUE);setmenu(m_aif);}
|
|
ITEM( 4 ,"Fehler") {setscreen(s_fehlersp_main,TRUE); setmenu(m_fehlersp_main);}
|
|
ITEM( 5 ,"Status") {setscreen(s_status,TRUE); setmenu(m_status);}
|
|
ITEM( 6 ,"Steuern") {setscreen(s_iostatus,TRUE); setmenu(m_iostatus);}
|
|
// ITEM( 7 ,"Speicher") {setscreen(s_speicher,TRUE);setmenu(m_speicher);}
|
|
ITEM( 8 ,"Adaption") {blankscreen();setscreen(s_ada_loe,TRUE); setmenu(m_ada_loe);}
|
|
ITEM( 9 ,"System") {blankscreen();setscreen(s_system,TRUE); setmenu(m_system);}
|
|
ITEM(10 ,"") {
|
|
if (dme_r != dme_l) {
|
|
setmenu(m_sgbd_auswahl);
|
|
setscreen(s_sgbd_auswahl, FALSE);
|
|
}
|
|
else if (dme_r == dme_l) exit();
|
|
}
|
|
// ITEM(11, "OBD-Status") {setscreen(s_obd,TRUE); setmenu(m_obd);}
|
|
ITEM(12, "") {setscreen(s_uds_test,TRUE); setmenu(m_uds_test);}
|
|
ITEM(16, "") {setscreen(s_ews,TRUE);setmenu(m_ews);}
|
|
// ITEM (17, "EWS 3") {setscreen (s_ews_alt,TRUE);setmenu(m_ews_alt);} // Alter EWS-Abgleich. Nicht mehr benutzen!!
|
|
ITEM(20, "SLEEP") {setscreen(s_sleep_funktional,TRUE);setmenu(m_sleep);}
|
|
}
|
|
|
|
// **********************
|
|
// *** Speicher-Menue ***
|
|
// **********************
|
|
MENU m_speicher() {
|
|
|
|
string s_temp;
|
|
INIT {setmenutitle("Speicher lesen");}
|
|
ITEM( 1 ,"LINEAR")
|
|
{
|
|
stop();
|
|
adresse="0";
|
|
anzahl = 254;
|
|
input2hexnum(adresse,anzahl,"Speicher lesen","",
|
|
"Adresse 00000000-FFFFFFFF","Anzahl der Bytes 1-254","00000000","FFFFFFFF",1,254);
|
|
hexconvert(adresse,high,mid,low,seg);
|
|
if (adresse!="" && anzahl!=0) {start();setscreen( s_speicher_lar ,TRUE);}
|
|
}
|
|
ITEM( 7,"Hex->Datei")
|
|
{
|
|
setmenu(m_speicher); setscreen(s_speicher_lar,TRUE); OutputSpeicher2File();
|
|
}
|
|
ITEM( 8 ,"Kommentar")
|
|
{
|
|
blankscreen(); commentlines(12); fileclose(); setmenu(m_speicher); setscreen(s_speicher_lar,TRUE);
|
|
}
|
|
ITEM( 9 ,"Druck") {printscreen();}
|
|
ITEM( 10 ,"Zurück"){setscreen(s_main,TRUE);setmenu( m_main );}
|
|
ITEM( 20 ,"Ende") {exit();}
|
|
}
|
|
|
|
// **************************************
|
|
// *** Menue fuer IBS Powermanagement ***
|
|
// **************************************
|
|
MENU m_main_pm()
|
|
{
|
|
INIT
|
|
{
|
|
setmenutitle("Powermanagement");
|
|
}
|
|
|
|
ITEM(1,"IDENT") { setscreen(s_ibs_ident,TRUE); }
|
|
ITEM(2,"PM Feld 1") { setscreen(s_pm_feld1,TRUE); }
|
|
ITEM(3,"PM Feld 2") { setscreen(s_pm_feld2,TRUE); }
|
|
ITEM(4,"PM Feld 3") { setscreen(s_pm_feld3,TRUE); }
|
|
ITEM(5,"B Tausch")
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_BATTERIETAUSCH_REGISTRIEREN","","");
|
|
INPAapiResultText(vartext, "JOB_STATUS", 1,"");
|
|
if (vartext == "OKAY") { messagebox("Batterietausch B_fabttreg",vartext); }
|
|
else { messagebox("STEUERN_BATTERIETAUSCH_REGISTRIEREN",vartext); stop(); }
|
|
}
|
|
|
|
ITEM(6,"Reset")
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_PM_HISTOGRAM_RESET","","");
|
|
INPAapiResultText(vartext, "JOB_STATUS", 1,"");
|
|
if (vartext == "OKAY") { messagebox("PM_HISTOGRAM_RESET",vartext); }
|
|
else { messagebox("STEUERN_PM_HISTOGRAM_RESET",vartext); stop(); }
|
|
}
|
|
|
|
ITEM(7,"Start")
|
|
{
|
|
INPAapiJob(sgbd,"START_SYSTEMCHECK_PM_MESSEMODE","","");
|
|
INPAapiResultText(vartext, "JOB_STATUS", 1,"");
|
|
if (vartext == "OKAY") { messagebox("Start PM_MESSEMODE",vartext); }
|
|
else { messagebox("START_SYSTEMCHECK_PM_MESSEMODE",vartext); stop(); }
|
|
}
|
|
|
|
ITEM(8,"Stop")
|
|
{
|
|
INPAapiJob(sgbd,"STOP_SYSTEMCHECK_PM_MESSEMODE","","");
|
|
INPAapiResultText(vartext, "JOB_STATUS", 1,"");
|
|
if (vartext == "OKAY") { messagebox("Stop PM_MESSEMODE",vartext); }
|
|
else { messagebox("Stop PM_MESSEMODE",vartext); stop(); }
|
|
}
|
|
|
|
ITEM(10,"Zurück")
|
|
{
|
|
blankscreen();
|
|
setscreen(s_status,TRUE);
|
|
setmenu(m_status);
|
|
}
|
|
ITEM(20 ,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
// ********************************
|
|
// *** Menue fuer EWS4-Abgleich ***
|
|
// ********************************
|
|
|
|
// Alt! darf fuer Programmstaende, welche CP16510 unterstuetzen, nicht mehr verwendet werden.
|
|
// Mit den neuen Programmständen muss dieser Code entfernt werden!
|
|
MENU m_ews_alt()
|
|
{
|
|
INIT { setmenutitle("EWS4-Startwertabgleich"); }
|
|
ITEM(1,"Status") { ews_para = 0; setscreen(s_ews_stell_alt, TRUE); }
|
|
ITEM(2,"Abgleich") { ews_para = 1; setscreen(s_ews_stell_alt, TRUE); }
|
|
ITEM(10,"Zurück") { blankscreen(); setscreen(s_main,TRUE); setmenu(m_main); }
|
|
}
|
|
|
|
// Neuer Code
|
|
MENU m_ews() {
|
|
|
|
INIT { setmenutitle("EWS4-Startwertabgleich"); }
|
|
ITEM( 1 , "Status") { viewclose(); setscreen(s_status_ews_dme2,TRUE); }
|
|
ITEM( 2 , "Abgleich") { viewclose(); setscreen(s_secretkey_dme2,TRUE); }
|
|
ITEM(10,"Zurück") { blankscreen(); setscreen(s_main,TRUE); setmenu(m_main); }
|
|
}
|
|
|
|
// *******************************
|
|
// *** Menue fuer EWS-Abgleich ***
|
|
// *******************************
|
|
MENU m_sleep()
|
|
{
|
|
INIT { setmenutitle("SLEEP_MODE / RESET"); }
|
|
ITEM(1,"DME")
|
|
{
|
|
INPAapiJob(sgbd,"SLEEP_MODE","","");
|
|
INPAapiResultText(vartext1,"JOB_STATUS",1,"");
|
|
if (vartext1 != "OKAY")
|
|
{
|
|
messagebox("SLEEP MODE","Ich mag noch nicht! Du hast etwas vergessen");
|
|
stop();
|
|
}
|
|
}
|
|
ITEM(5,"ALL") { INPAapiJob(sgbd,"SLEEP_MODE_FUNKTIONAL","ALL",""); }
|
|
ITEM(8,"DME Reset") { INPAapiJob(sgbd,"STEUERGERAETE_RESET","",""); }
|
|
ITEM(10,"Zurück") { blankscreen(); setscreen(s_main,TRUE); setmenu(m_main); }
|
|
}
|
|
|
|
// ***********************
|
|
// *** Speicher-Screen ***
|
|
// ***********************
|
|
SCREEN s_speicher()
|
|
{
|
|
ftextout(dme_text + " Speicher lesen",1,5,1,0);
|
|
textout("< F1 > Speicherzellen auslesen" , 4, 5);
|
|
textout("< F7 > SP->Datei" ,16, 5);
|
|
textout("< F8 > Kommentar" ,18, 5);
|
|
textout("< F9 > Bildschirmdruck" ,20, 5);
|
|
textout("< F10> Zurück" ,22, 5);
|
|
textout("< Shift > + < F10> INPA beenden" ,22,45);
|
|
stop();
|
|
}
|
|
|
|
// *******************************
|
|
// *** ROM-Speicher_Screen ***
|
|
// *******************************
|
|
SCREEN s_speicher_lar()
|
|
{
|
|
inttostring(anzahl,vartext);
|
|
ftextout(dme_text + " Speicher lesen",1,5,1,0);
|
|
INPAapiJob(sgbd,"SPEICHER_LESEN_ASCII","LAR;0x"+adresse+";"+vartext,"");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(varJobState,"JOB_STATUS",1,"");
|
|
|
|
LINE("","")
|
|
{
|
|
clearrect(5,20,4,10);
|
|
ftextout("Startadresse",1,0,0,0);
|
|
ftextout(":",1,18,0,1);
|
|
ftextout(adresse,1,20,0,1);
|
|
ftextout("Anzahl Byte",3,0,0,0);
|
|
ftextout(":",3,18,0,1);
|
|
ftextout(vartext,3,20,0,1);
|
|
ftextout("Daten",5,0,0,0);
|
|
ftextout(":",5,18,0,1);
|
|
// Datenausgabe
|
|
if(varJobState != "OKAY") { ftextout(varJobState,5,20,0,1); stop();}
|
|
else
|
|
{
|
|
INPAapiResultBinary("DATEN",1);
|
|
hexdump(adresse,anzahl,5,20);
|
|
INPAapiResultText(vartext1,"DATEN_ASCII",1,"");
|
|
val1 = 0;
|
|
val2 = 5;
|
|
i_temp = anzahl;
|
|
// Pakete von 16 abspalten
|
|
while( i_temp > 16 )
|
|
{
|
|
midstr(vartext2,vartext1,val1,16);
|
|
textout(vartext2,val2,65);
|
|
val1 = val1 + 16;
|
|
val2 = val2 + 1;
|
|
i_temp = i_temp - 16;
|
|
}
|
|
midstr(vartext2,vartext1,val1,i_temp);
|
|
textout(vartext2,val2,65);
|
|
}
|
|
}
|
|
}
|
|
|
|
// **************************
|
|
// *** UDS-Service testen ***
|
|
// **************************
|
|
SCREEN s_uds_test()
|
|
{
|
|
ftextout(dme_text + " UDS-Service",1,5,1,0);
|
|
textout("< F1 > UDS-Service Auftragstelegramm" , 4, 5);
|
|
textout("< F7 > UDS->Datei" ,16, 5);
|
|
textout("< F8 > Kommentar" ,18, 5);
|
|
textout("< F9 > Bildschirmdruck" ,20, 5);
|
|
textout("< F10> Zurück" ,22, 5);
|
|
textout("< Shift > + < F10> INPA beenden" ,22,45);
|
|
stop();
|
|
}
|
|
|
|
// ****************************
|
|
// *** UDS-Service ausgeben ***
|
|
// ****************************
|
|
SCREEN s_uds_lesen()
|
|
{
|
|
ftextout(dme_text + " UDS-Service",1,5,1,0);
|
|
INPAapiJob(sgbd,"_STATUS_UDS_SERVICE",uds_service,"");
|
|
INPAapiResultText(varJobState,"JOB_STATUS",1,"");
|
|
|
|
LINE("","")
|
|
{
|
|
// Datenausgabe
|
|
ftextout("Auftragstelegramm:",5,10,0,1);
|
|
textout(uds_service,6,10);
|
|
INPAapiResultText(vartext1,"ANTWORTTELEGRAMM",1,"");
|
|
val1 = 0;
|
|
val2 = 9;
|
|
ftextout("Antworttelegramm:",8,10,0,1);
|
|
i_temp = anzahl;
|
|
// Pakete von 66 abspalten
|
|
while( i_temp > 66 )
|
|
{
|
|
textout(blank,val2,10);
|
|
midstr(vartext2,vartext1,val1,66);
|
|
textout(vartext2,val2,10);
|
|
val1 = val1 + 66;
|
|
val2 = val2 + 1;
|
|
i_temp = i_temp - 66;
|
|
}
|
|
textout(blank,val2,10);
|
|
midstr(vartext2,vartext1,val1,i_temp);
|
|
textout(vartext2,val2,10);
|
|
// Ausgabe im Fehlerfall
|
|
if(varJobState != "OKAY")
|
|
{
|
|
val2 = val2 - 2;
|
|
ftextout(varJobState,val2,10,0,1);
|
|
}
|
|
}
|
|
}
|
|
|
|
// ***********************************
|
|
// *** Menü Adaptionswerte löschen ***
|
|
// ***********************************
|
|
MENU m_ada_loe()
|
|
{
|
|
INIT { setmenutitle("Adaptionswerte selektiv löschen");}
|
|
ITEM(1,"Adaption 1") {setscreen(s_ada_loe_1,TRUE); setmenu(m_ada_loe_1);}
|
|
// ITEM(2,"Adaption 2") {setscreen(s_ada_loe_2,TRUE); setmenu(m_ada_loe_2);}
|
|
ITEM(10,"Zurück") {blankscreen(); setscreen(s_main,TRUE); setmenu(m_main);}
|
|
ITEM(20 ,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
// ***********************************
|
|
// *** Menü Adaptionswerte löschen ***
|
|
// ***********************************
|
|
MENU m_ada_loe_1()
|
|
{
|
|
INIT { setmenutitle("Adaptionswerte selektiv löschen 1");}
|
|
// ITEM(1,"LLABG") {adaption_loesch( 1);} // LLABG keine Aussage mögl., ML 071112.
|
|
// ITEM(2,"Klopfen") {adaption_loesch( 2);} // Klopfen keine Aussage mögl., ML 071112.
|
|
ITEM(3,"L-Sonden") {adaption_loesch( 3);} // L-Sonden OK, ML 071112.
|
|
// ITEM(4,"TEV") {adaption_loesch( 4);}
|
|
// ITEM(5,"Saugrohr") {adaption_loesch( 5);} // Saugrohr keine Aussage mögl., ML 071112.
|
|
ITEM(6,"DK") {adaption_loesch( 6);} // DK OK, ML 071112.
|
|
// ITEM(7,"L-Regelung") {adaption_loesch( 7);} // L-Regelung keine Aussage mögl., ML 071112.
|
|
// ITEM(8,"AGR") {adaption_loesch( 8);} // AGR keine Aussage mögl., ML 071112.
|
|
// ITEM(9,"Last") {adaption_loesch( 9);}
|
|
ITEM(10,"Zurück") {blankscreen(); setscreen(s_ada_loe,TRUE); setmenu(m_ada_loe);}
|
|
// ITEM(11,"NOx") {adaption_loesch(10);} // NOx keine Aussage mögl., ML 071112.
|
|
// ITEM(12,"SA") {adaption_loesch(11);}
|
|
// ITEM(13,"MSV") {adaption_loesch(12);}
|
|
// ITEM(14,"Batterie") {adaption_loesch(13);} // STEUERN_BATTERIETAUSCH_REGISTRIEREN Job fehlt in SGBD.
|
|
// ITEM(15,"Oktan") {adaption_loesch(14);} // Oktan keine Aussage mögl., ML 071112.
|
|
ITEM(16,"Varianten") {adaption_loesch(15);} // Varianten OK (soweit gesehen fuer LV_VAR_ECRAS und LV_VAR_STST, ML 071112.
|
|
// ITEM(17,"VANOS") {adaption_loesch(17);}
|
|
// ITEM(18,"Segment") {adaption_loesch(18);}
|
|
// ITEM(19,"Verbrennung") {adaption_loesch(19);}
|
|
ITEM(20 ,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
// ***********************************
|
|
// *** Menü Adaptionswerte löschen ***
|
|
// ***********************************
|
|
MENU m_ada_loe_2()
|
|
{
|
|
INIT { setmenutitle("Adaptionswerte selektiv löschen 2");}
|
|
ITEM(1,"BAL-EOL-DC") {adaption_loesch(20);}
|
|
ITEM(2,"BAL-ER-LAM") {adaption_loesch(21);}
|
|
ITEM(3,"Phase-1") {adaption_loesch(22);}
|
|
ITEM(4,"Phase-2") {adaption_loesch(23);}
|
|
ITEM(5,"Energie") {adaption_loesch(24);}
|
|
ITEM(6,"Alle") {adaption_loesch( 0);}
|
|
ITEM(10,"Zurück") {blankscreen(); setscreen(s_ada_loe,TRUE); setmenu(m_ada_loe);}
|
|
ITEM(20 ,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
// **********************
|
|
// *** Identifikation ***
|
|
// **********************
|
|
MENU m_ident() {
|
|
|
|
INIT {setmenutitle("Identifikations-Menue"); }
|
|
ITEM (1,"Datei") {setmenu(m_ident); setscreen(s_ident,TRUE); OutputIDENT2File(0); }
|
|
ITEM ( 8,"Kommentar" ) {
|
|
blankscreen(); commentlines(0); fileclose(); setmenu(m_ident); setscreen(s_ident,TRUE);
|
|
}
|
|
ITEM ( 9,"Drucken" ) { printscreen();}
|
|
ITEM (10,"Zurück") {blankscreen(); setscreen(s_main,TRUE); setmenu(m_main);}
|
|
ITEM (20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
|
|
|
|
// ***********
|
|
// *** AIF ***
|
|
// ***********
|
|
MENU m_aif()
|
|
{
|
|
string s1;
|
|
INIT{setmenutitle("AnwenderInfoFelder-Menue"); }
|
|
ITEM( 1,"aktuell") {taste= 0; setscreen(s_aif,TRUE);}
|
|
ITEM( 2,"Werk") {taste= 1; setscreen(s_aif,TRUE);}
|
|
ITEM( 9,"Drucken") {printscreen();}
|
|
ITEM(10,"Zurück") {blankscreen(); setscreen(s_main,TRUE); setmenu(m_main);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
// ********************************
|
|
// *** Fehlerspeicher-Hauptmenü ***
|
|
// ********************************
|
|
MENU m_fehlersp_main()
|
|
{
|
|
INIT {setmenutitle( SG_Verbund_text + " Fehlerspeicher Hauptmenü" );}
|
|
ITEM( 1,"Fehlersp.") {setscreen(s_fehlersp,TRUE); setmenu(m_fehlersp);}
|
|
ITEM( 2,"Infosp.") {setscreen(s_infosp,TRUE); setmenu(m_infosp);}
|
|
ITEM(10,"Zurück") {userboxclose(0); viewclose(); setscreen(s_main,TRUE); setmenu(m_main);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
// ***************************
|
|
// *** Fehlerspeicher-Menü ***
|
|
// ***************************
|
|
MENU m_fehlersp()
|
|
{
|
|
int errorcode;
|
|
|
|
INIT {
|
|
if (dme_r != dme_l) {
|
|
setitem(1, "Kurz Master", TRUE);
|
|
setitem(2, "Kurz Slave", TRUE);
|
|
setitem(5, "Löschen M/S", TRUE);
|
|
setitem(6, "FS->Datei M", TRUE);
|
|
setitem(7, "FS->Datei S", TRUE);
|
|
}
|
|
else {
|
|
setitem(1, "Kurz", TRUE);
|
|
setitem(2, "", FALSE);
|
|
setitem(5, "Löschen", TRUE);
|
|
setitem(6, "FS->Datei", TRUE);
|
|
setitem(7, "", FALSE);
|
|
}
|
|
setmenutitle( dme_text + " Fehlerspeicher Ausgaben" );
|
|
}
|
|
ITEM( 1,"@" ) { sgbd = dme_r; s_menue = "detail"; setscreen(s_fs_kurz,TRUE); }
|
|
ITEM( 2,"@" ) { sgbd = dme_l; s_menue = "detail"; setscreen(s_fs_kurz,TRUE); }
|
|
// ITEM( 2,"Detail" ) { s_menue = "detail"; setscreen(s_fs_detail,TRUE); }
|
|
// ITEM( 3,"Freeze Frame") { s_menue = "freeze"; setscreen(s_fs_lang,TRUE); }
|
|
// ITEM( 4,"Hex-Dump" ) { setscreen(s_fs_hex,TRUE); }
|
|
ITEM( 5,"Löschen" ) {
|
|
|
|
setscreen(s_fs_loesch,TRUE);
|
|
setscreen(s_fs_loesch, TRUE);;
|
|
}
|
|
ITEM( 6,"FS->Datei R") {
|
|
|
|
stop();
|
|
if (dme_r != dme_l) {
|
|
sgbd = dme_r;
|
|
dme_text = dme_text_r;
|
|
txtPfad = txtPfad_r;
|
|
OutputError2File(1);
|
|
delay(1000);
|
|
sgbd = currentSGBD;
|
|
if (currentSGBD == dme_r) {
|
|
dme_text = dme_text_r;
|
|
txtPfad = txtPfad_r;
|
|
}
|
|
else if (currentSGBD == dme_l) {
|
|
dme_text = dme_text_l;
|
|
txtPfad = txtPfad_l;
|
|
}
|
|
|
|
setmenu(m_fehlersp);
|
|
setscreen(s_fehlersp,TRUE);
|
|
}
|
|
else {
|
|
OutputError2File(1);
|
|
delay(2000);
|
|
setmenu(m_fehlersp);
|
|
setscreen(s_fehlersp,TRUE);
|
|
}
|
|
}
|
|
ITEM( 7,"FS->Datei L") {
|
|
|
|
sgbd = dme_l;
|
|
txtPfad = txtPfad_l;
|
|
dme_text = dme_text_l;
|
|
OutputError2File(1);
|
|
delay(1000);
|
|
sgbd = currentSGBD;
|
|
if (currentSGBD == dme_r) {
|
|
dme_text = dme_text_r;
|
|
txtPfad = txtPfad_r;
|
|
}
|
|
else if (currentSGBD == dme_l) {
|
|
dme_text = dme_text_l;
|
|
txtPfad = txtPfad_l;
|
|
}
|
|
setmenu(m_fehlersp);
|
|
setscreen(s_fehlersp,TRUE);
|
|
|
|
}
|
|
// ITEM( 8,"Kommentar" ) { blankscreen(); commentlines(1);fileclose(); setmenu(m_fehlersp); setscreen(s_fehlersp_main,TRUE); }
|
|
// ITEM( 8,"NadelDrucker")
|
|
// {
|
|
// userboxclose(0);
|
|
// viewclose();
|
|
// userboxopen(0,8,35,5,50,"Fehlerspeicher drucken","");
|
|
// userboxftextout(0,"Der Fehlerspeicher wird gelesen! ... bitte warten",1,3,0,0);
|
|
// OutputError2Filetxt(1,"fsdatei.txt");
|
|
// viewopen("fsdatei.txt","Fehlerspeicher drucken");
|
|
// printfile(errorcode, "fsdatei.txt", "", "",TRUE);
|
|
// userboxclose(0);
|
|
// viewclose();
|
|
// setmenu(m_fehlersp); setscreen(s_fs_kurz,TRUE);
|
|
// }
|
|
// ITEM( 9,"Drucken" ) { printscreen();}
|
|
ITEM(10,"Zurück" ) {
|
|
sgbd = currentSGBD;
|
|
if (currentSGBD == dme_r) {
|
|
dme_text = dme_text_r;
|
|
txtPfad = txtPfad_r;
|
|
}
|
|
else if (currentSGBD == dme_l) {
|
|
dme_text = dme_text_l;
|
|
txtPfad = txtPfad_l;
|
|
}
|
|
userboxclose(0);
|
|
viewclose();
|
|
setscreen(s_fehlersp_main,TRUE);
|
|
setmenu(m_fehlersp_main);
|
|
}
|
|
ITEM(20,"ENDE" ) { userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
// *************************
|
|
// *** Infospeicher-Menü ***
|
|
// *************************
|
|
MENU m_infosp()
|
|
{
|
|
int errorcode;
|
|
|
|
INIT {setmenutitle( dme_text + " Infospeicher Ausgaben" );
|
|
|
|
if (dme_r != dme_l) {
|
|
setitem(1, "Kurz Master", TRUE);
|
|
setitem(2, "Kurz Slave", TRUE);
|
|
setitem(5, "Löschen M/S", TRUE);
|
|
}
|
|
else {
|
|
setitem(1, "Kurz", TRUE);
|
|
setitem(2, "", FALSE);
|
|
setitem(5, "Löschen", TRUE);
|
|
}
|
|
}
|
|
ITEM( 1,"@" ) { sgbd = dme_r; s_menue = "detail"; setscreen(s_is_kurz,TRUE); }
|
|
ITEM( 2,"@" ) { sgbd = dme_l; s_menue = "detail"; setscreen(s_is_kurz,TRUE); }
|
|
// ITEM( 2,"Detail" ) { s_menue = "detail"; setscreen(s_is_detail,TRUE); }
|
|
// ITEM( 3,"Freeze Frame") { s_menue = "freeze"; setscreen(s_is_lang,TRUE); }
|
|
// ITEM( 4,"Hex-Dump" ) { setscreen(s_is_hex,TRUE); }
|
|
ITEM( 5,"" ) { setscreen(s_is_loesch,TRUE); }
|
|
// ITEM( 6,"FS->Datei" ) { stop(); OutputError2File(2); setmenu(m_infosp); setscreen(s_infosp,TRUE); }
|
|
// ITEM( 7,"Kommentar" ) { blankscreen(); commentlines(2);fileclose(); setmenu(m_infosp); setscreen(s_infosp,TRUE); }
|
|
// ITEM( 8,"NadelDrucker")
|
|
// {
|
|
// userboxclose(0);
|
|
// viewclose();
|
|
// userboxopen(0,8,35,5,50,"Infospeicher drucken","");
|
|
// userboxftextout(0,"Der Infospeicher wird gelesen! ... bitte warten",1,3,0,0);
|
|
// OutputError2Filetxt(2,"isdatei.txt");
|
|
// viewopen("isdatei.txt","Infospeicher drucken");
|
|
// printfile(errorcode, "isdatei.txt", "", "",TRUE);
|
|
// userboxclose(0);
|
|
// viewclose();
|
|
// setmenu(m_infosp); setscreen(s_fs_kurz,TRUE);
|
|
// }
|
|
// ITEM( 9,"Drucken" ) { printscreen();}
|
|
ITEM(10,"Zurück" ) { userboxclose(0); viewclose(); setscreen(s_fehlersp_main,TRUE); setmenu(m_fehlersp_main);}
|
|
ITEM(20,"ENDE" ) { userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
// **********************
|
|
// *** OBD-Lesen-Menü ***
|
|
// **********************
|
|
MENU m_obd()
|
|
{
|
|
|
|
INIT {setmenutitle( dme_text + " OBD-Status ausgeben" );}
|
|
ITEM( 1,"Mode 1") {setscreen(s_mode_1,TRUE); }
|
|
// ITEM( 2,"Mode 2") {setscreen(s_mode_2,TRUE); }
|
|
ITEM( 3,"Mode 3") {setscreen(s_mode_3,TRUE); }
|
|
// ITEM( 4,"Mode 4") {setscreen(s_mode_4,TRUE); }
|
|
// ITEM( 5,"Mode 5") {setscreen(s_mode_5,TRUE); }
|
|
// ITEM( 6,"Mode 6") {setscreen(s_mode_6,TRUE); }
|
|
ITEM( 7,"Mode 7") {setscreen(s_mode_7,TRUE); }
|
|
ITEM( 9,"Mode 9") {setscreen(s_mode_9,TRUE); setmenu(m_mode_9); }
|
|
ITEM(10,"Zurück") {userboxclose(0); viewclose(); setscreen(s_main,TRUE); setmenu(m_main);}
|
|
ITEM(20,"ENDE" ) {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
// ****************************
|
|
// *** RBM-Modes-Lesen-Menü ***
|
|
// ****************************
|
|
MENU m_mode_9()
|
|
{
|
|
|
|
INIT {setmenutitle( dme_text + " OBD-Status ausgeben" );}
|
|
ITEM( 1,"RBMMODE9") {setscreen(s_rbmmode9,TRUE); taste = 1;}
|
|
ITEM( 2,"RBMMS1") {setscreen(s_rbmms1,TRUE); taste = 2;}
|
|
ITEM( 3,"RBMMS2") {setscreen(s_rbmms2,TRUE); taste = 3;}
|
|
ITEM( 7,"RBM->Datei")
|
|
{
|
|
if (taste == 1) {setmenu(m_mode_9); setscreen(s_rbmmode9,TRUE); OutputRBM2File(1);}
|
|
if (taste == 2) {setmenu(m_mode_9); setscreen(s_rbmms1,TRUE); OutputRBM2File(2);}
|
|
if (taste == 3) {setmenu(m_mode_9); setscreen(s_rbmms2,TRUE); OutputRBM2File(3);}
|
|
}
|
|
ITEM( 8 ,"Kommentar")
|
|
{
|
|
if (taste == 1) {blankscreen(); commentlines(4); fileclose(); setmenu(m_mode_9); setscreen(s_rbmmode9,TRUE);}
|
|
if (taste == 2) {blankscreen(); commentlines(5); fileclose(); setmenu(m_mode_9); setscreen(s_rbmms1,TRUE);}
|
|
if (taste == 3) {blankscreen(); commentlines(6); fileclose(); setmenu(m_mode_9); setscreen(s_rbmms2,TRUE);}
|
|
}
|
|
ITEM(10,"Zurück") {userboxclose(0); viewclose(); setscreen(s_obd,TRUE); setmenu(m_obd);}
|
|
ITEM(20,"ENDE" ) {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
// *********************
|
|
// *** UDS-Test-Menü ***
|
|
// *********************
|
|
MENU m_uds_test()
|
|
{
|
|
INIT {setmenutitle( dme_text + " UDS-Service" );}
|
|
ITEM( 1 ,"Test")
|
|
{
|
|
inputtext(uds_service, "UDS-Service-Test","Auftragstelegramm (Eingabe wie bei WinDS2; Trennzeichen = Semikolon;) z.B. 22,40,0A");
|
|
if (uds_service != "")
|
|
{
|
|
setscreen(s_uds_lesen,TRUE);
|
|
}
|
|
}
|
|
ITEM( 7,"UDS->Datei")
|
|
{
|
|
setmenu(m_uds_test); setscreen(s_uds_lesen,TRUE); OutputUDS2File();
|
|
}
|
|
ITEM( 8 ,"Kommentar")
|
|
{
|
|
blankscreen(); commentlines(13); fileclose(); setmenu(m_uds_test); setscreen(s_uds_lesen,TRUE);
|
|
}
|
|
ITEM( 9 ,"Druck" ) {printscreen();}
|
|
ITEM( 10 ,"Zurück") {setscreen(s_main,TRUE);setmenu( m_main );}
|
|
ITEM( 20 ,"Ende" ) {exit();}
|
|
}
|
|
|
|
// *********************************
|
|
// *** Menü für Systemdiagnosen ***
|
|
// *********************************
|
|
MENU m_system()
|
|
{
|
|
INIT{setmenutitle("Systemdiagnose");}
|
|
// ITEM( 1,"BA") {blankscreen(); setscreen(s_system_ba,TRUE); setmenu(m_system_ba); }
|
|
ITEM( 2,"EV") {blankscreen(); setscreen(s_systemtest_ev_ausbl,TRUE); setmenu(m_systemtest_ev_ausbl); }
|
|
// ITEM( 4,"LL") {blankscreen(); setscreen(s_system_llerh,TRUE); setmenu(m_system_llerh); }
|
|
// ITEM( 5,"TEV") {blankscreen(); setscreen(s_systemtest_tev,TRUE); setmenu(m_systemtest_tev); }
|
|
// ITEM( 6,"LLABG") {blankscreen(); setscreen(s_llabgl,TRUE); setmenu(m_llabg); }
|
|
// ITEM( 7,"DMTL") {blankscreen(); setscreen(s_systemtest_dmtl,TRUE); setmenu(m_systemtest_dmtl); }
|
|
ITEM( 8,"GLF") {blankscreen(); setscreen(s_systemtest_glf,TRUE); setmenu(m_systemtest_glf); }
|
|
// ITEM( 9,"ODR") {blankscreen(); setscreen(s_systemtest_odr,TRUE); setmenu(m_systemtest_odr); }
|
|
ITEM(10,"Zurück") {blankscreen(); setscreen(s_main,TRUE); setmenu(m_main);}
|
|
// ITEM(11,"GEN") {blankscreen(); setscreen(s_systemtest_gen,TRUE); setmenu(m_systemtest_gen); }
|
|
// ITEM(12,"IBS") {blankscreen(); setscreen(s_systemtest_ibs,TRUE); setmenu(m_systemtest_ibs); }
|
|
// ITEM(13,"DES") {blankscreen(); setscreen(s_systemtest_des,TRUE); setmenu(m_systemtest_des); } // Jobs in Doku noch nicht enthalten.
|
|
ITEM(14,"IMA") {blankscreen(); setscreen(s_systemtest_ima,TRUE); setmenu(m_systemtest_ima); }
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
|
|
// ***************************************
|
|
// *** Menü Systemdiagnose Betriebsart ***
|
|
// ***************************************
|
|
MENU m_system_ba()
|
|
{
|
|
string s, s1;
|
|
int i;
|
|
|
|
INIT
|
|
{
|
|
setmenutitle("Systemdiagnose Betriebsartenumschaltung");
|
|
}
|
|
ITEM(1,"Homogen")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
INPAapiJob(sgbd,"DATEN_REFERENZ_LESEN","","");
|
|
INPAapiResultText(s1,"DATEN_REF_PROGRAMM_STAND",1,"");
|
|
midstr(s,s1,1,1);
|
|
stringtoint(s,i);
|
|
if (i >= 4) {INPAapiJob(sgbd,"STEUERN_BETRIEBSART","1","");}
|
|
else {INPAapiJob(sgbd,"_STEUERN_BETRIEBSART_ALT","1","");}
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY")
|
|
{
|
|
setscreen(s_system_ba,TRUE);
|
|
}
|
|
else messagebox("START Systemtest Betriebsart Homogen",s1);
|
|
}
|
|
ITEM(2,"Hom-Sch")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
INPAapiJob(sgbd,"DATEN_REFERENZ_LESEN","","");
|
|
INPAapiResultText(s1,"DATEN_REF_PROGRAMM_STAND",1,"");
|
|
midstr(s,s1,1,1);
|
|
stringtoint(s,i);
|
|
if (i >= 4) {INPAapiJob(sgbd,"STEUERN_BETRIEBSART","1","");}
|
|
else {INPAapiJob(sgbd,"_STEUERN_BETRIEBSART_ALT","2","");}
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY")
|
|
{
|
|
setscreen(s_system_ba,TRUE);
|
|
}
|
|
else messagebox("START Systemtest Betriebsart Homogen-Schicht",s1);
|
|
}
|
|
ITEM(3,"Schicht")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
INPAapiJob(sgbd,"DATEN_REFERENZ_LESEN","","");
|
|
INPAapiResultText(s1,"DATEN_REF_PROGRAMM_STAND",1,"");
|
|
midstr(s,s1,1,1);
|
|
stringtoint(s,i);
|
|
if (i >= 4) {INPAapiJob(sgbd,"STEUERN_BETRIEBSART","1","");}
|
|
else {INPAapiJob(sgbd,"_STEUERN_BETRIEBSART_ALT","3","");}
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY")
|
|
{
|
|
setscreen(s_system_ba,TRUE);
|
|
}
|
|
else messagebox("START Systemtest Betriebsart Schicht",s1);
|
|
}
|
|
ITEM(4,"Hom-Lam")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
INPAapiJob(sgbd,"DATEN_REFERENZ_LESEN","","");
|
|
INPAapiResultText(s1,"DATEN_REF_PROGRAMM_STAND",1,"");
|
|
midstr(s,s1,1,1);
|
|
stringtoint(s,i);
|
|
if (i >= 4) {INPAapiJob(sgbd,"STEUERN_BETRIEBSART","1","");}
|
|
else {INPAapiJob(sgbd,"_STEUERN_BETRIEBSART_ALT","4","");}
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY")
|
|
{
|
|
setscreen(s_system_ba,TRUE);
|
|
}
|
|
else messagebox("START Systemtest Betriebsart Homogen & Lambda = 1",s1);
|
|
}
|
|
ITEM(5,"STOP")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_BETRIEBSART","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY")
|
|
{
|
|
setscreen(s_system_ba,TRUE);
|
|
}
|
|
else messagebox("STOP Systemtest Betriebsartvorgabe",s1);
|
|
}
|
|
ITEM(10,"Zurück")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
blankscreen();
|
|
setscreen(s_system,TRUE);
|
|
setmenu(m_system);
|
|
}
|
|
ITEM(20,"ENDE") { userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
// *******************************
|
|
// *** Menue für EV-Ausblenden ***
|
|
// *******************************
|
|
MENU m_systemtest_ev_ausbl()
|
|
{
|
|
string s1;
|
|
INIT
|
|
{
|
|
setmenutitle("EV-Ausblenden");
|
|
setscreen(s_systemtest_ev_ausbl,TRUE);
|
|
if (zylinderZahl == 8) {
|
|
setitem(7, "EV 7", TRUE);
|
|
setitem(8, "EV 8", TRUE);
|
|
}
|
|
else {
|
|
setitem(7, "", FALSE);
|
|
setitem(8, "", FALSE);
|
|
}
|
|
}
|
|
ITEM(1,"EV 1")
|
|
{
|
|
INPAapiJob(sgbd,"START_SYSTEMCHECK_EVAUSBL","1","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("SYSTEMCHECK_EVAUSBL",s1); stop(); }
|
|
}
|
|
ITEM(2,"EV 2")
|
|
{
|
|
INPAapiJob(sgbd,"START_SYSTEMCHECK_EVAUSBL","2","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("SYSTEMCHECK_EVAUSBL",s1); stop(); }
|
|
}
|
|
ITEM(3,"EV 3")
|
|
{
|
|
INPAapiJob(sgbd,"START_SYSTEMCHECK_EVAUSBL","3","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("SYSTEMCHECK_EVAUSBL",s1); stop(); }
|
|
}
|
|
ITEM(4,"EV 4")
|
|
{
|
|
INPAapiJob(sgbd,"START_SYSTEMCHECK_EVAUSBL","4","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("SYSTEMCHECK_EVAUSBL",s1); stop(); }
|
|
}
|
|
ITEM(5,"EV 5")
|
|
{
|
|
INPAapiJob(sgbd,"START_SYSTEMCHECK_EVAUSBL","5","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("SYSTEMCHECK_EVAUSBL",s1); stop(); }
|
|
}
|
|
ITEM(6,"EV 6")
|
|
{
|
|
INPAapiJob(sgbd,"START_SYSTEMCHECK_EVAUSBL","6","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("SYSTEMCHECK_EVAUSBL",s1); stop(); }
|
|
}
|
|
|
|
ITEM(7,"")
|
|
{
|
|
INPAapiJob(sgbd,"START_SYSTEMCHECK_EVAUSBL","7","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("SYSTEMCHECK_EVAUSBL",s1); stop(); }
|
|
}
|
|
ITEM(8,"")
|
|
{
|
|
INPAapiJob(sgbd,"START_SYSTEMCHECK_EVAUSBL","8","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("SYSTEMCHECK_EVAUSBL",s1); stop(); }
|
|
}
|
|
|
|
|
|
ITEM(9,"DME")
|
|
{
|
|
INPAapiJob(sgbd,"START_SYSTEMCHECK_EVAUSBL","0","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
textout("Kontrolle zurück an DME",15,15);
|
|
delay(1000) ;
|
|
textout(blank, 15,14) ;
|
|
if (s1 != "OKAY") { messagebox("SYSTEMCHECK_EVAUSBL",s1); stop(); }
|
|
}
|
|
ITEM(10,"Zurück")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
blankscreen();
|
|
setscreen(s_system,TRUE);
|
|
setmenu(m_system);
|
|
}
|
|
ITEM(20,"ENDE") { userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
// ************************************
|
|
// *** Menü Systemdiagnose L-Sonden ***
|
|
// ************************************
|
|
MENU m_system_l_sonde()
|
|
{
|
|
string s1;
|
|
|
|
INIT
|
|
{
|
|
setmenutitle("Systemdiagnose L-Sonde");
|
|
}
|
|
ITEM(1,"START")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
INPAapiJob(sgbd,"START_SYSTEMCHECK_L_SONDE","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY")
|
|
{
|
|
setscreen(s_system_l_sonde,TRUE);
|
|
}
|
|
else messagebox("START Systemtest L-Sonden",s1);
|
|
}
|
|
ITEM(2,"STOP")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
blankscreen();
|
|
INPAapiJob(sgbd,"STOP_SYSTEMCHECK_L_SONDE","","");
|
|
setscreen(s_system_l_sonde,FALSE);
|
|
}
|
|
ITEM(4,"Messwerte")
|
|
{
|
|
setscreen(s_system_l_sonde,TRUE);
|
|
}
|
|
ITEM(10,"Zurück")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
blankscreen();
|
|
setscreen(s_system,TRUE);
|
|
setmenu(m_system);
|
|
}
|
|
ITEM(20,"ENDE") { userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
// ****************************
|
|
// *** Menü für LL-Erhöhung ***
|
|
// ****************************
|
|
MENU m_system_llerh()
|
|
{
|
|
int ll_help;
|
|
|
|
INIT
|
|
{
|
|
setmenutitle("EOL - LeerLauf");
|
|
taste = 0;
|
|
}
|
|
ITEM(1,"+10")
|
|
{
|
|
llerh(10);
|
|
setscreen(s_system_llerh,TRUE);
|
|
taste = 1;
|
|
}
|
|
ITEM(2,"-10")
|
|
{
|
|
llerh(-10);
|
|
setscreen(s_system_llerh,TRUE);
|
|
taste = 1;
|
|
}
|
|
ITEM(3,"+100")
|
|
{
|
|
llerh(100);
|
|
setscreen(s_system_llerh,TRUE);
|
|
taste = 1;
|
|
}
|
|
ITEM(4,"-100")
|
|
{
|
|
llerh(-100);
|
|
setscreen(s_system_llerh,TRUE);
|
|
taste = 1;
|
|
}
|
|
ITEM(6,"Auswahl")
|
|
{
|
|
inputstate = 2;
|
|
while (inputstate != 0)
|
|
{
|
|
ll_help = ll_wert;
|
|
inputint(ll_help,"Vorgabe LL-Sollwert","Drehzahl in den Grenzen von 0 < N < 2000",0,1999);
|
|
getinputstate(inputstate);
|
|
}
|
|
if (inputstate == 0)
|
|
{
|
|
ll_help = ll_help - ll_wert;
|
|
llerh(ll_help);
|
|
blankscreen();
|
|
setscreen(s_system_llerh,TRUE);
|
|
taste = 1;
|
|
}
|
|
}
|
|
ITEM(9,"STOP")
|
|
{
|
|
setscreen(s_system_llerh_stop,TRUE);
|
|
}
|
|
ITEM(10,"Zurück") {blankscreen(); setscreen(s_system,TRUE); setmenu(m_system);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
// *******************************
|
|
// *** Menü Systemdiagnose TEV ***
|
|
// *******************************
|
|
MENU m_systemtest_tev()
|
|
{
|
|
string s1;
|
|
|
|
INIT
|
|
{
|
|
setmenutitle("Systemtest TEV");
|
|
}
|
|
ITEM(1,"Start")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
INPAapiJob(sgbd,"START_SYSTEMCHECK_TEV","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") {messagebox("START SYSTEMCHECK TEV",s1); stop(); }
|
|
else setscreen(s_systemtest_tev,TRUE);
|
|
}
|
|
ITEM(2,"Stop")
|
|
{
|
|
INPAapiJob(sgbd,"STOP_SYSTEMCHECK_TEV","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") {messagebox("STOP SYSTEMCHECK TEV",s1); stop();}
|
|
else setscreen(s_systemtest_tev,TRUE);
|
|
}
|
|
ITEM(10,"Zurück")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
blankscreen();
|
|
setscreen(s_system,TRUE);
|
|
setmenu(m_system);
|
|
}
|
|
ITEM(20,"ENDE") { userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
// *****************************
|
|
// *** Menue für LL-Abgleich ***
|
|
// *****************************
|
|
MENU m_llabg()
|
|
{
|
|
INIT
|
|
{
|
|
setmenutitle("LL-Abgleich");
|
|
taste = 0;
|
|
setscreen(s_llabgl,TRUE);
|
|
}
|
|
ITEM(1,"Klima+Fahrst")
|
|
{
|
|
inputint(ll_acc_dri,"Leerlauf Abgleich mit Klimaanlage und Fahrstufe","Bereich von -250<offset<250 Schrittweite 2",-250,250);
|
|
getinputstate(inputstate);
|
|
taste = 1;
|
|
setscreen(s_llabgl,TRUE);
|
|
}
|
|
ITEM(2,"LL-Fahrstufe")
|
|
{
|
|
inputint(ll_dri,"Leerlauf Abgleich mit Fahrstufe","Bereich von -250<offset<250 Schrittweite 2",-250,250);
|
|
getinputstate(inputstate);
|
|
taste = 1;
|
|
setscreen(s_llabgl,TRUE);
|
|
}
|
|
ITEM(3,"LL")
|
|
{
|
|
inputint(ll_ofs,"Leerlauf Abgleich","Bereich von -250<offset<250 Schrittweite 2",-250,250);
|
|
getinputstate(inputstate);
|
|
taste = 1;
|
|
setscreen(s_llabgl,TRUE);
|
|
}
|
|
ITEM(4,"LL-Klima")
|
|
{
|
|
inputint(ll_acc,"Leerlauf Abgleich mit Klimaanlage","Bereich von -250<offset<250 Schrittweite 2",-250,250);
|
|
getinputstate(inputstate);
|
|
taste = 1;
|
|
setscreen(s_llabgl,TRUE);
|
|
}
|
|
ITEM(5,"LL-Batterie")
|
|
{
|
|
inputint(ll_vb,"Leerlauf Abgleich Batteriezustand","Bereich von -250<offset<250 Schrittweite 2",-250,250);
|
|
getinputstate(inputstate);
|
|
taste = 1;
|
|
setscreen(s_llabgl,TRUE);
|
|
}
|
|
ITEM(8,"Status")
|
|
{
|
|
taste = 0;
|
|
setscreen(s_llabgl,TRUE);
|
|
}
|
|
ITEM(9,"Prog")
|
|
{
|
|
taste = 2;
|
|
setscreen(s_llabgl,TRUE);
|
|
}
|
|
ITEM(10,"Zurück") {blankscreen(); setscreen(s_system,TRUE); setmenu(m_system);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
// ********************************
|
|
// *** Menü Systemdiagnose DMTL ***
|
|
// ********************************
|
|
MENU m_systemtest_dmtl()
|
|
{
|
|
string s1;
|
|
|
|
INIT
|
|
{
|
|
setmenutitle("Systemdiagnose DMTL");
|
|
}
|
|
ITEM(1,"START")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
INPAapiJob(sgbd,"START_SYSTEMCHECK_DMTL","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY")
|
|
{
|
|
setscreen(s_systemtest_dmtl,TRUE); durchlauf=0;
|
|
}
|
|
else
|
|
{
|
|
messagebox("START_SYSTEMCHECK_DMTL",s1);
|
|
stop();
|
|
}
|
|
}
|
|
ITEM(2,"STOP")
|
|
{
|
|
INPAapiJob(sgbd,"STOP_SYSTEMCHECK_DMTL","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") messagebox("START_SYSTEMCHECK_DMTL",s1);
|
|
}
|
|
ITEM(10,"Zurück")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
blankscreen();
|
|
setscreen(s_system,TRUE);
|
|
setmenu(m_system);
|
|
}
|
|
ITEM(20,"ENDE") { userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
// *******************************
|
|
// *** Menü Systemdiagnose GLF ***
|
|
// *******************************
|
|
MENU m_systemtest_glf()
|
|
{
|
|
string s1;
|
|
|
|
INIT
|
|
{
|
|
setmenutitle("Systemdiagnose GLF");
|
|
}
|
|
ITEM(1,"START")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
INPAapiJob(sgbd,"START_SYSTEMCHECK_GLF","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY")
|
|
{
|
|
setscreen(s_systemtest_glf,TRUE); durchlauf=0;
|
|
}
|
|
else
|
|
{
|
|
messagebox("START_SYSTEMCHECK_GLF",s1);
|
|
stop();
|
|
}
|
|
}
|
|
ITEM(2,"STOP")
|
|
{
|
|
INPAapiJob(sgbd,"STOP_SYSTEMCHECK_GLF","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY")
|
|
{
|
|
setscreen(s_systemtest_glf,TRUE); durchlauf=0;
|
|
}
|
|
else
|
|
{
|
|
messagebox("STOP_SYSTEMCHECK_GLF",s1);
|
|
stop();
|
|
}
|
|
}
|
|
ITEM(10,"Zurück")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
blankscreen();
|
|
setscreen(s_system,TRUE);
|
|
setmenu(m_system);
|
|
}
|
|
ITEM(20,"ENDE") { userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
// *******************************
|
|
// *** Menü Systemdiagnose ODR ***
|
|
// *******************************
|
|
MENU m_systemtest_odr()
|
|
{
|
|
string s1;
|
|
|
|
INIT
|
|
{
|
|
setmenutitle("Systemdiagnose ODR");
|
|
}
|
|
ITEM(1,"START")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
INPAapiJob(sgbd,"START_SYSTEMCHECK_ODR","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY")
|
|
{
|
|
setscreen(s_systemtest_odr,TRUE); durchlauf=0;
|
|
}
|
|
else
|
|
{
|
|
messagebox("START_SYSTEMCHECK_ODR",s1);
|
|
stop();
|
|
}
|
|
}
|
|
ITEM(2,"STOP")
|
|
{
|
|
INPAapiJob(sgbd,"STOP_SYSTEMCHECK_ODR","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY")
|
|
{
|
|
setscreen(s_systemtest_odr,TRUE); durchlauf=0;
|
|
}
|
|
else
|
|
{
|
|
messagebox("STOP_SYSTEMCHECK_ODR",s1);
|
|
stop();
|
|
}
|
|
}
|
|
ITEM(10,"Zurück")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
blankscreen();
|
|
setscreen(s_system,TRUE);
|
|
setmenu(m_system);
|
|
}
|
|
ITEM(20,"ENDE") { userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
// *******************************
|
|
// *** Menü Systemdiagnose GEN ***
|
|
// *******************************
|
|
MENU m_systemtest_gen()
|
|
{
|
|
string s1;
|
|
|
|
INIT
|
|
{
|
|
setmenutitle("Systemdiagnose GEN");
|
|
}
|
|
ITEM(1,"START")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
INPAapiJob(sgbd,"START_SYSTEMCHECK_GEN","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY")
|
|
{
|
|
setscreen(s_systemtest_gen,TRUE); durchlauf=0;
|
|
}
|
|
else
|
|
{
|
|
messagebox("START_SYSTEMCHECK_GEN",s1);
|
|
stop();
|
|
}
|
|
}
|
|
ITEM(2,"STOP")
|
|
{
|
|
INPAapiJob(sgbd,"STOP_SYSTEMCHECK_GEN","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY")
|
|
{
|
|
setscreen(s_systemtest_gen,TRUE); durchlauf=0;
|
|
}
|
|
else
|
|
{
|
|
messagebox("STOP_SYSTEMCHECK_GEN",s1);
|
|
stop();
|
|
}
|
|
}
|
|
ITEM(10,"Zurück")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
blankscreen();
|
|
setscreen(s_system,TRUE);
|
|
setmenu(m_system);
|
|
}
|
|
ITEM(20,"ENDE") { userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
// ********************************************
|
|
// *** Menü Systemdiagnose Ruhestrommessung ***
|
|
// ********************************************
|
|
MENU m_systemtest_ibs()
|
|
{
|
|
string s1, s2, max_i, msb, mz, timo;
|
|
bool b1;
|
|
real r1;
|
|
int i1, i2, l1, p1, t1, status;
|
|
|
|
INIT
|
|
{
|
|
setmenutitle("Systemdiagnose Ruhestrommessung");
|
|
}
|
|
ITEM(1,"START")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
max_i = "0.08";
|
|
msb = "0.05";
|
|
mz = "0.05";
|
|
timo = "30.0";
|
|
s1 = max_i + ";" + msb + ";" + mz + ";" + timo;
|
|
inputtext(s1, "Parametereingabe Ruhestrommessung","Trennzeichen beachten (Dezimaltrennzeichen = Punkt, Prametertrennzeichen = Semikolon) z.B.");
|
|
getinputstate(inputstate); // 0 = OK 1 = Abbruch
|
|
if (inputstate != 1)
|
|
{
|
|
i1 = 0;
|
|
i2 = 0;
|
|
strlen(l1,s1);
|
|
while (i1 <= l1)
|
|
{
|
|
midstr(s2,s1,i1,1);
|
|
if (s2 == ";")
|
|
{
|
|
i2 = i2 + 1;
|
|
if(i2 == 3)
|
|
{
|
|
p1 = i1 + 1;
|
|
i1 = l1;
|
|
}
|
|
}
|
|
i1 = i1 + 1;
|
|
}
|
|
i1 = l1 - p1;
|
|
midstr(timo,s1,p1,i1);
|
|
stringtoint(timo,t1);
|
|
INPAapiJob(sgbd,"STEUERN_RUHESTROMMESSUNG",s1,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY")
|
|
{
|
|
INPAapiJob(sgbd,"STATUS_DIGITAL_1","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY")
|
|
{
|
|
messagebox("STATUS_DIGITAL_1",s1);
|
|
stop();
|
|
}
|
|
else
|
|
{
|
|
while(i1 != 0)
|
|
{
|
|
messagebox("Status Ruhestrommessung","Ruhestrommessung läuft! Klemme 15 umgehend deaktivieren!");
|
|
INPAapiJob(sgbd,"STATUS_DIGITAL_1","","");
|
|
INPAapiResultInt(i1,"STAT_KL15_EIN_WERT",1);
|
|
}
|
|
INPAapiJob(sgbd,"SLEEP_MODE_FUNKTIONAL","ALL","");
|
|
while(t1 > 0)
|
|
{
|
|
ftextout(dme_text + " Systemtest Ruhestrommessung",0,15,1,1);
|
|
textout("=========================================================================================",2,0);
|
|
textout(" < F1 > Start Systemtest Ruhestrommessung",3,5);
|
|
textout(" < F10 > Zurück",5,5);
|
|
textout("< Shift > + < F10 > INPA beenden", 5,45);
|
|
textout("=== Status Ruhestrommessung ===",8,5);
|
|
status = 5;
|
|
inttostring(status,s1);
|
|
textout(blank,10,5);
|
|
textout(s1,10,5);
|
|
s1 = "Funktion laeuft";
|
|
textout(blank,12,5);
|
|
textout(s1,12,5);
|
|
textout("=== Status Diagnosezeit ===",14,5);
|
|
inttostring(t1,s1);
|
|
s1 = "Verbleibende Diagnosezeit: " + s1 + " s";
|
|
textout(blank,16,5);
|
|
textout(s1,16,5);
|
|
textout("Klemme 15",21,5);
|
|
b1 = 0;
|
|
digitalout(b1,22, 5," JA "," NEIN ");
|
|
text(25,5,"Ruhestrom");
|
|
r1 = 0;
|
|
analogout(r1,26, 5, 0.0, 0.300, 0.0, 0.08,"5.3");
|
|
text(26,41,"A");
|
|
delay(1000);
|
|
t1 = t1 - 1;
|
|
ftextout("Parametereingabe Ruhestrommessung",22,45,0,1);
|
|
textout("1. Parameter = Maximale Ruhestromschwelle",23,45);
|
|
textout("2. Parameter = Messtartbedingung",24,45);
|
|
textout("3. Parameter = Dauer Mittelwertmessung",25,45);
|
|
textout("4. Parameter = Timeoutzeit",26,45);
|
|
}
|
|
messagebox("Status Ruhestrommessung","Klemme 15 aktivieren!");
|
|
delay(1500);
|
|
INPAapiJob(sgbd,"STATUS_DIGITAL_1","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY")
|
|
{
|
|
messagebox("STATUS_DIGITAL_1",s1);
|
|
stop();
|
|
}
|
|
setscreen(s_systemtest_ibs,TRUE);
|
|
}
|
|
}
|
|
else
|
|
{
|
|
messagebox("STEUERN_RUHESTROMMESSUNG",s1);
|
|
stop();
|
|
}
|
|
}
|
|
else
|
|
{
|
|
messagebox("Status Ruhestrommessung","Ruhestrommessung erneut starten!");
|
|
}
|
|
}
|
|
ITEM(10,"Zurück")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
blankscreen();
|
|
setscreen(s_system,TRUE);
|
|
setmenu(m_system);
|
|
}
|
|
ITEM(20,"ENDE") { userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
// *******************************
|
|
// *** Menü Systemdiagnose DES ***
|
|
// *******************************
|
|
MENU m_systemtest_des()
|
|
{
|
|
string s1;
|
|
|
|
INIT
|
|
{
|
|
setmenutitle("Systemdiagnose Desulfatisierung");
|
|
}
|
|
ITEM(1,"START")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
INPAapiJob(sgbd,"STEUERN_DESULFATISIERUNG","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY")
|
|
{
|
|
setscreen(s_systemtest_des,TRUE);
|
|
}
|
|
else
|
|
{
|
|
messagebox("STEUERN_DESULFATISIERUNG",s1);
|
|
stop();
|
|
}
|
|
}
|
|
ITEM(2,"STOP")
|
|
{
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_DESULFATISIERUNG","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY")
|
|
{
|
|
setscreen(s_systemtest_des,TRUE);
|
|
}
|
|
else
|
|
{
|
|
messagebox("STEUERN_ENDE_DESULFATISIERUNG",s1);
|
|
stop();
|
|
}
|
|
}
|
|
ITEM(10,"Zurück")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
blankscreen();
|
|
setscreen(s_system,TRUE);
|
|
setmenu(m_system);
|
|
}
|
|
ITEM(20,"ENDE") { userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
// *******************************
|
|
// *** Menü Systemdiagnose IMA ***
|
|
// *******************************
|
|
MENU m_systemtest_ima()
|
|
{
|
|
// string s1, s_energie, s_durchfluss;
|
|
// int inputstate;
|
|
|
|
string s1, s2, s_energie, s_durchfluss;
|
|
int inputstate;
|
|
real myReal1, myReal2 ;
|
|
|
|
INIT
|
|
{
|
|
setmenutitle("Injektor-Codierung IMA");
|
|
if (zylinderZahl == 8) {
|
|
setitem(7, "Zylinder 7", TRUE);
|
|
setitem(8, "Zylinder 8", TRUE);
|
|
}
|
|
else {
|
|
setitem(7, "", FALSE);
|
|
setitem(8, "", FALSE);
|
|
}
|
|
}
|
|
ITEM(1,"Injektor 1")
|
|
{
|
|
s1="";
|
|
userboxclose(0);
|
|
viewclose();
|
|
input2text(s_energie, s_durchfluss, "Eingabe Codierdaten Injektor 1","Bitte Trennzeichen beachten (Trennzeichen ist ein Punkt)!","Energieabgleich","Durchflussabgleich");
|
|
getinputstate(inputstate); // 0 = OK 1 = Abbruch
|
|
|
|
if ( inputstate != 1 ) {
|
|
|
|
stringtoreal (s_energie, myReal1) ;
|
|
stringtoreal (s_durchfluss, myReal2) ;
|
|
|
|
if ( ((myReal1 >= 52.802) && (myReal1 <= 78.802)) && ((myReal2 >= 1.53) && (myReal2 <= 2.88)) ) {
|
|
|
|
s1 = s_energie + ";" + s_durchfluss;
|
|
INPAapiJob(sgbd,"STEUERN_PROGRAMM_IMA_ZYL_1",s1,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY") {
|
|
setscreen(s_systemtest_ima,TRUE);
|
|
}
|
|
else messagebox("STEUERN_PROGRAMM_IMA_ZYL_1",s1);
|
|
|
|
}
|
|
else messagebox("Zyl.1 Unerlaubter Wertebereich!","Bitte beachten Sie den erlaubten Wertebereich für Zyl.1!");
|
|
}
|
|
}
|
|
ITEM(2,"Injektor 2")
|
|
{
|
|
s1="";
|
|
userboxclose(0);
|
|
viewclose();
|
|
input2text(s_energie, s_durchfluss, "Eingabe Codierdaten Injektor 2","Bitte Trennzeichen beachten (Trennzeichen ist ein Punkt)!","Energieabgleich","Durchflussabgleich");
|
|
getinputstate(inputstate); // 0 = OK 1 = Abbruch
|
|
|
|
if ( inputstate != 1 ) {
|
|
|
|
stringtoreal (s_energie, myReal1) ;
|
|
stringtoreal (s_durchfluss, myReal2) ;
|
|
|
|
if ( ((myReal1 >= 52.802) && (myReal1 <= 78.802)) && ((myReal2 >= 1.53) && (myReal2 <= 2.88)) ) {
|
|
|
|
s1 = s_energie + ";" + s_durchfluss;
|
|
INPAapiJob(sgbd,"STEUERN_PROGRAMM_IMA_ZYL_2",s1,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY") {
|
|
setscreen(s_systemtest_ima,TRUE);
|
|
}
|
|
else messagebox("STEUERN_PROGRAMM_IMA_ZYL_2",s1);
|
|
|
|
}
|
|
else messagebox("Zyl.2 Unerlaubter Wertebereich!","Bitte beachten Sie den erlaubten Wertebereich für Zyl.2!");
|
|
}
|
|
}
|
|
ITEM(3,"Injektor 3")
|
|
{
|
|
s1="";
|
|
userboxclose(0);
|
|
viewclose();
|
|
input2text(s_energie, s_durchfluss, "Eingabe Codierdaten Injektor 3","Bitte Trennzeichen beachten (Trennzeichen ist ein Punkt)!","Energieabgleich","Durchflussabgleich");
|
|
getinputstate(inputstate); // 0 = OK 1 = Abbruch
|
|
|
|
if ( inputstate != 1 ) {
|
|
|
|
stringtoreal (s_energie, myReal1) ;
|
|
stringtoreal (s_durchfluss, myReal2) ;
|
|
|
|
if ( ((myReal1 >= 52.802) && (myReal1 <= 78.802)) && ((myReal2 >= 1.53) && (myReal2 <= 2.88)) ) {
|
|
|
|
s1 = s_energie + ";" + s_durchfluss;
|
|
INPAapiJob(sgbd,"STEUERN_PROGRAMM_IMA_ZYL_3",s1,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY") {
|
|
setscreen(s_systemtest_ima,TRUE);
|
|
}
|
|
else messagebox("STEUERN_PROGRAMM_IMA_ZYL_3",s1);
|
|
}
|
|
else messagebox("Zyl.3 Unerlaubter Wertebereich!","Bitte beachten Sie den erlaubten Wertebereich für Zyl.3!");
|
|
}
|
|
}
|
|
ITEM(4,"Injektor 4")
|
|
{
|
|
s1="";
|
|
userboxclose(0);
|
|
viewclose();
|
|
input2text(s_energie, s_durchfluss, "Eingabe Codierdaten Injektor 4","Bitte Trennzeichen beachten (Trennzeichen ist ein Punkt)!","Energieabgleich","Durchflussabgleich");
|
|
getinputstate(inputstate); // 0 = OK 1 = Abbruch
|
|
|
|
if ( inputstate != 1 ) {
|
|
|
|
stringtoreal (s_energie, myReal1) ;
|
|
stringtoreal (s_durchfluss, myReal2) ;
|
|
|
|
if ( ((myReal1 >= 52.802) && (myReal1 <= 78.802)) && ((myReal2 >= 1.53) && (myReal2 <= 2.88)) ) {
|
|
|
|
s1 = s_energie + ";" + s_durchfluss;
|
|
INPAapiJob(sgbd,"STEUERN_PROGRAMM_IMA_ZYL_4",s1,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY") {
|
|
setscreen(s_systemtest_ima,TRUE);
|
|
}
|
|
else messagebox("STEUERN_PROGRAMM_IMA_ZYL_4",s1);
|
|
|
|
}
|
|
else messagebox("Zyl.4 Unerlaubter Wertebereich!","Bitte beachten Sie den erlaubten Wertebereich für Zyl.4!");
|
|
}
|
|
}
|
|
ITEM(5,"Injektor 5")
|
|
{
|
|
s1="";
|
|
userboxclose(0);
|
|
viewclose();
|
|
input2text(s_energie, s_durchfluss, "Eingabe Codierdaten Injektor 5","Bitte Trennzeichen beachten (Trennzeichen ist ein Punkt)!","Energieabgleich","Durchflussabgleich");
|
|
getinputstate(inputstate); // 0 = OK 1 = Abbruch
|
|
|
|
if ( inputstate != 1 ) {
|
|
|
|
stringtoreal (s_energie, myReal1) ;
|
|
stringtoreal (s_durchfluss, myReal2) ;
|
|
|
|
if ( ((myReal1 >= 52.802) && (myReal1 <= 78.802)) && ((myReal2 >= 1.53) && (myReal2 <= 2.88)) ) {
|
|
|
|
s1 = s_energie + ";" + s_durchfluss;
|
|
INPAapiJob(sgbd,"STEUERN_PROGRAMM_IMA_ZYL_5",s1,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY") {
|
|
setscreen(s_systemtest_ima,TRUE);
|
|
}
|
|
else messagebox("STEUERN_PROGRAMM_IMA_ZYL_5",s1);
|
|
|
|
}
|
|
else messagebox("Zyl.5 Unerlaubter Wertebereich!","Bitte beachten Sie den erlaubten Wertebereich für Zyl.5!");
|
|
}
|
|
}
|
|
ITEM(6,"Injektor 6")
|
|
{
|
|
s1="";
|
|
userboxclose(0);
|
|
viewclose();
|
|
input2text(s_energie, s_durchfluss, "Eingabe Codierdaten Injektor 6","Bitte Trennzeichen beachten (Trennzeichen ist ein Punkt)!","Energieabgleich","Durchflussabgleich");
|
|
getinputstate(inputstate); // 0 = OK 1 = Abbruch
|
|
|
|
if ( inputstate != 1 ) {
|
|
|
|
stringtoreal (s_energie, myReal1) ;
|
|
stringtoreal (s_durchfluss, myReal2) ;
|
|
|
|
if ( ((myReal1 >= 52.802) && (myReal1 <= 78.802)) && ((myReal2 >= 1.53) && (myReal2 <= 2.88)) ) {
|
|
|
|
s1 = s_energie + ";" + s_durchfluss;
|
|
INPAapiJob(sgbd,"STEUERN_PROGRAMM_IMA_ZYL_6",s1,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY") {
|
|
setscreen(s_systemtest_ima,TRUE);
|
|
}
|
|
else messagebox("STEUERN_PROGRAMM_IMA_ZYL_6",s1);
|
|
|
|
}
|
|
else messagebox("Zyl.6 Unerlaubter Wertebereich!","Bitte beachten Sie den erlaubten Wertebereich für Zyl.6!");
|
|
}
|
|
}
|
|
ITEM(7,"Injektor 7")
|
|
{
|
|
s1="";
|
|
userboxclose(0);
|
|
viewclose();
|
|
input2text(s_energie, s_durchfluss, "Eingabe Codierdaten Injektor 7","Bitte Trennzeichen beachten (Trennzeichen ist ein Punkt)!","Energieabgleich","Durchflussabgleich");
|
|
getinputstate(inputstate); // 0 = OK 1 = Abbruch
|
|
|
|
if ( inputstate != 1 ) {
|
|
|
|
stringtoreal (s_energie, myReal1) ;
|
|
stringtoreal (s_durchfluss, myReal2) ;
|
|
|
|
if ( ((myReal1 >= 52.802) && (myReal1 <= 78.802)) && ((myReal2 >= 1.53) && (myReal2 <= 2.88)) ) {
|
|
|
|
s1 = s_energie + ";" + s_durchfluss;
|
|
INPAapiJob(sgbd,"STEUERN_PROGRAMM_IMA_ZYL_7",s1,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY") {
|
|
setscreen(s_systemtest_ima,TRUE);
|
|
}
|
|
else messagebox("STEUERN_PROGRAMM_IMA_ZYL_7",s1);
|
|
|
|
}
|
|
else messagebox("Zyl.7 Unerlaubter Wertebereich!","Bitte beachten Sie den erlaubten Wertebereich für Zyl.7!");
|
|
}
|
|
}
|
|
ITEM(8,"Injektor 8")
|
|
{
|
|
s1="";
|
|
userboxclose(0);
|
|
viewclose();
|
|
input2text(s_energie, s_durchfluss, "Eingabe Codierdaten Injektor 8","Bitte Trennzeichen beachten (Trennzeichen ist ein Punkt)!","Energieabgleich","Durchflussabgleich");
|
|
getinputstate(inputstate); // 0 = OK 1 = Abbruch
|
|
|
|
if ( inputstate != 1 ) {
|
|
|
|
stringtoreal (s_energie, myReal1) ;
|
|
stringtoreal (s_durchfluss, myReal2) ;
|
|
|
|
if ( ((myReal1 >= 52.802) && (myReal1 <= 78.802)) && ((myReal2 >= 1.53) && (myReal2 <= 2.88)) ) {
|
|
|
|
s1 = s_energie + ";" + s_durchfluss;
|
|
INPAapiJob(sgbd,"STEUERN_PROGRAMM_IMA_ZYL_8",s1,"");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY") {
|
|
setscreen(s_systemtest_ima,TRUE);
|
|
}
|
|
else messagebox("STEUERN_PROGRAMM_IMA_ZYL_8",s1);
|
|
|
|
}
|
|
else messagebox("Zyl.8 Unerlaubter Wertebereich!","Bitte beachten Sie den erlaubten Wertebereich für Zyl.8!");
|
|
}
|
|
}
|
|
ITEM(9,"Reset")
|
|
{
|
|
s1="";
|
|
userboxclose(0);
|
|
viewclose();
|
|
inputtext( s1, "Eingabe Codierdaten rücksetzen!","Wollen Sie die Injektor-Codierdaten wirklich auf Initialwerte rücksetzen? Bitte die OK- oder RETURN-Taste drücken!");
|
|
getinputstate(inputstate); // 0 = OK 1 = Abbruch
|
|
if ( inputstate != 1 )
|
|
{
|
|
s1 = "57.8;2.1;";
|
|
INPAapiJob(sgbd,"STEUERN_PROGRAMM_IMA_ZYL_1",s1,"");
|
|
delay(1000);
|
|
|
|
INPAapiJob(sgbd,"STEUERN_PROGRAMM_IMA_ZYL_2",s1,"");
|
|
delay(1000);
|
|
|
|
INPAapiJob(sgbd,"STEUERN_PROGRAMM_IMA_ZYL_3",s1,"");
|
|
delay(1000);
|
|
|
|
INPAapiJob(sgbd,"STEUERN_PROGRAMM_IMA_ZYL_4",s1,"");
|
|
delay(1000);
|
|
|
|
INPAapiJob(sgbd,"STEUERN_PROGRAMM_IMA_ZYL_5",s1,"");
|
|
delay(1000);
|
|
|
|
INPAapiJob(sgbd,"STEUERN_PROGRAMM_IMA_ZYL_6",s1,"");
|
|
delay(1000);
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY")
|
|
{
|
|
delay(2000);
|
|
setscreen(s_systemtest_ima,TRUE);
|
|
}
|
|
else
|
|
{
|
|
messagebox("STEUERN_PROGRAMM_IMAALLE",s1);
|
|
stop();
|
|
}
|
|
}
|
|
}
|
|
ITEM(10,"Zurück")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
blankscreen();
|
|
setscreen(s_system,TRUE);
|
|
setmenu(m_system);
|
|
}
|
|
ITEM(20,"ENDE") { userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
//********************************
|
|
//*** Menü fuer Statusabfragen ***
|
|
//********************************
|
|
MENU m_status()
|
|
{
|
|
INIT {
|
|
setmenutitle("Status lesen");
|
|
|
|
if (EAversion == TRUE) {
|
|
setitem(17, "Überdrehzahl", TRUE);
|
|
setitem(18, "Übertemp", TRUE);
|
|
}
|
|
else {
|
|
setitem(17, "", FALSE);
|
|
setitem(18, "", FALSE);
|
|
}
|
|
}
|
|
ITEM( 1,"Digital") {setscreen(s_digital,TRUE); setmenu(m_digital); }
|
|
// ITEM( 2,"Analog") {setscreen(s_mwb,TRUE); setmenu(m_mwb); }
|
|
// ITEM( 3,"DK") {setscreen(s_llst_mdk,TRUE); }
|
|
// ITEM( 4,"VANOS") {setscreen(s_vanos_inex,TRUE); }
|
|
// ITEM( 5,"PM - IBS") {setscreen(s_main_pm,TRUE); setmenu(m_main_pm); }
|
|
// ITEM( 6,"Abgas") {setscreen(s_ad_gemisch,TRUE); }
|
|
ITEM( 7,"Laufunruhe") {setscreen(s_laufunruhe,TRUE); }
|
|
// ITEM( 8,"Auswahl") {start(); select(TRUE); }
|
|
// ITEM( 9,"Drucken") {printscreen(); }
|
|
ITEM( 10,"Zurück") {blankscreen(); setscreen( s_main ,TRUE); setmenu( m_main); }
|
|
// ITEM( 11,"Saugrohr") {setscreen(s_saugrohrmodell,TRUE); }
|
|
// ITEM( 12,"NOx-Sensor") {setscreen(s_nox_sensor,TRUE); }
|
|
// ITEM( 13,"AGR") {setscreen(s_agr_ad,TRUE); }
|
|
// ITEM( 14,"LDR") {setscreen(s_ldr_ad,TRUE); }
|
|
// ITEM( 15,"NN") {setscreen(s_nn_ad,TRUE); setmenu(m_nn_ad); }
|
|
ITEM( 17,"") {setscreen(s_ueberdreh,TRUE); setmenu(m_status); }
|
|
ITEM( 18,"") {setscreen(s_uebertemp,TRUE); setmenu(m_status); }
|
|
// ITEM( 19,"Gesamt") {start(); deselect(); }
|
|
ITEM( 20,"ENDE") {exit(); }
|
|
}
|
|
|
|
//*******************************
|
|
//*** Menü für Messwertblöcke ***
|
|
//*******************************
|
|
MENU m_mwb()
|
|
{
|
|
INIT {setmenutitle("Messwertblock lesen");}
|
|
ITEM( 1,"MWB 1") {setscreen(s_f0,TRUE);}
|
|
ITEM( 2,"SAE J1979") {setscreen(s_f1,TRUE);}
|
|
ITEM( 3,"MWB 3") {setscreen(s_f2,TRUE);}
|
|
// ITEM( 4,"ADC") {setscreen(s_messwerte_adc,TRUE);}
|
|
// ITEM( 5,"Rohwerte") {setscreen(s_rohwerte,TRUE);}
|
|
ITEM( 6,"MWB 6") {setscreen(s_f7,TRUE);}
|
|
ITEM( 7,"DDLI Block") {setscreen(s_fdyn,TRUE);}
|
|
ITEM( 8,"Auswahl") {start(); select(TRUE);} // Selektierung einschalten
|
|
ITEM( 9,"Drucken") {printscreen();}
|
|
ITEM(10,"Zurück")
|
|
{
|
|
blankscreen();
|
|
setscreen( s_status ,TRUE);
|
|
setmenu( m_status );
|
|
}
|
|
ITEM(11,"MWB Öl") {setscreen(s_f6,TRUE);}
|
|
ITEM(14,"VS Block") {setscreen( s_fkd, TRUE );}
|
|
ITEM(18,"Gesamt") {start(); deselect();} // Selektierung ausschalten
|
|
ITEM(20,"ENDE") {exit();} // Programmabbruch
|
|
}
|
|
// ***************************
|
|
// *** Menü Status digital ***
|
|
// ***************************
|
|
MENU m_digital()
|
|
{
|
|
INIT {setmenutitle("Menü Digital"); taste = 0;}
|
|
ITEM( 1 ,"Schalter") {setscreen(s_digital1,TRUE); taste = 0;}
|
|
// ITEM( 2 ,"FGR") {setscreen(s_digital2,TRUE); taste = 0;} // Entfaellt komplett.
|
|
ITEM( 3 ,"Funktionen") {setscreen(s_funktions,TRUE); taste = 3;}
|
|
ITEM( 4 ,"OBD_Status") {setscreen(s_digital_obd,TRUE); taste = 0;}
|
|
ITEM( 5 ,"Varianten") {setscreen(s_variants,TRUE); taste = 5;}
|
|
// ITEM( 8 ,"Löschen") {
|
|
// welcher Bildschirm ist eingeschaltet
|
|
// if( taste == 3 ) {
|
|
//
|
|
// INPAapiJob(sgbd,"RESET_CRU_OFF","","");
|
|
// INPAapiResultText(vartext1,"JOB_STATUS",1,"");
|
|
// if (vartext1 == "OKAY") {messagebox("RESET_CRU_OFF",vartext1); setscreen(s_funktions,TRUE);}
|
|
// else {messagebox("RESET_CRU_OFF",vartext1); stop();}
|
|
// }
|
|
// if( taste == 5 ) {setmenu( m_ecu_config_reset ); }
|
|
// }
|
|
ITEM(10 ,"Zurück") {blankscreen(); setscreen( s_status ,TRUE); setmenu( m_status );}
|
|
ITEM(20 ,"ENDE") {exit();} // Programmabbruch
|
|
}
|
|
// ****************************************
|
|
// *** Menü gelernte Varianten loeschen ***
|
|
// ****************************************
|
|
MENU m_ecu_config_reset() {
|
|
INIT { setmenutitle("Varianten löschen"); }
|
|
ITEM( 1 ,"Getriebe" ) { INPAapiJob(sgbd,"ECU_CONFIG_RESET","1;0;1;0;0;0;0;0;1;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;1",""); INPAapiJob(sgbd,"ECU_CONFIG","",""); }
|
|
ITEM( 2 ,"Klima" ) { INPAapiJob(sgbd,"ECU_CONFIG_RESET","0;1;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;1;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0",""); INPAapiJob(sgbd,"ECU_CONFIG","",""); }
|
|
ITEM( 3 ,"Lenkung" ) { INPAapiJob(sgbd,"ECU_CONFIG_RESET","0;0;0;0;0;0;0;0;0;0;1;1;0;0;0;0;0;0;0;0;0;0;0;0;0;1;0;0;0;0;0;0;0;0",""); INPAapiJob(sgbd,"ECU_CONFIG","",""); }
|
|
ITEM( 4 ,"E-BOX/GLF" ) { INPAapiJob(sgbd,"ECU_CONFIG_RESET","0;0;0;0;0;0;0;1;0;0;0;0;0;0;0;0;1;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;1;0",""); INPAapiJob(sgbd,"ECU_CONFIG","",""); }
|
|
ITEM( 5 ,"ACC/ASR" ) { INPAapiJob(sgbd,"ECU_CONFIG_RESET","0;0;0;0;1;0;1;0;0;0;0;0;0;0;0;0;0;0;0;1;1;0;0;0;1;0;0;0;0;0;0;0;0;0",""); INPAapiJob(sgbd,"ECU_CONFIG","",""); }
|
|
ITEM( 9 ,"Alle" ) { INPAapiJob(sgbd,"ECU_CONFIG_RESET","1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1","");
|
|
INPAapiResultText( vartext1, "JOB_STATUS", 1, "" );
|
|
if( vartext1 == "OKAY") { messagebox( "ECU_CONFIG_RESET", "gelernte Varianten gelöscht" ); }
|
|
else { messagebox( "ECU_CONFIG", vartext1 ); stop(); }
|
|
INPAapiJob(sgbd,"ECU_CONFIG","","");
|
|
setscreen( s_variants, TRUE );
|
|
}
|
|
ITEM(10 ,"Zurück") { blankscreen(); setscreen( s_status ,TRUE); setmenu( m_status ); }
|
|
ITEM(20 ,"ENDE") { exit(); } // Programmabbruch
|
|
}
|
|
// ****************************
|
|
// *** Menü neuronale Netze ***
|
|
// ****************************
|
|
MENU m_nn_ad()
|
|
{
|
|
INIT {setmenutitle("Neuronale Netze");}
|
|
ITEM( 1 ,"EISY-GD") {setscreen(s_eisy_gd,TRUE); taste = 1;}
|
|
ITEM( 2 ,"EIDY-DR") {setscreen(s_eisy_dr,TRUE); taste = 2;}
|
|
ITEM( 3 ,"KRANN") {setscreen(s_krann,TRUE); taste = 3;}
|
|
ITEM( 4 ,"KLANN") {setscreen(s_klann,TRUE); taste = 4;}
|
|
// ITEM( 5 ,"EISY-AGR") {setscreen(s_eisy_agr,TRUE); taste = 5;}
|
|
ITEM( 6,"Löschen")
|
|
{
|
|
if (taste == 1) {setscreen(s_eisy_gd,TRUE); adaption_loesch(5);}
|
|
if (taste == 2) {setscreen(s_eisy_dr,TRUE); adaption_loesch(5);}
|
|
if (taste == 3) {setscreen(s_krann,TRUE); adaption_loesch(2);}
|
|
if (taste == 4) {setscreen(s_klann,TRUE); adaption_loesch(7);}
|
|
// if (taste == 5) {setscreen(s_eisy_agr,TRUE); adaption_loesch(5);}
|
|
}
|
|
ITEM( 7,"NN->Datei")
|
|
{
|
|
if (taste == 1) {setmenu(m_nn_ad); setscreen(s_eisy_gd,TRUE); OutputNN2File(1);}
|
|
if (taste == 2) {setmenu(m_nn_ad); setscreen(s_eisy_dr,TRUE); OutputNN2File(2);}
|
|
if (taste == 3) {setmenu(m_nn_ad); setscreen(s_krann,TRUE); OutputNN2File(3);}
|
|
if (taste == 4) {setmenu(m_nn_ad); setscreen(s_klann,TRUE); OutputNN2File(4);}
|
|
// if (taste == 5) {setmenu(m_nn_ad); setscreen(s_eisy_agr,TRUE); OutputNN2File(5);}
|
|
}
|
|
ITEM( 8 ,"Kommentar")
|
|
{
|
|
if (taste == 1) {blankscreen(); commentlines( 7); fileclose(); setmenu(m_nn_ad); setscreen(s_eisy_gd,TRUE);}
|
|
if (taste == 2) {blankscreen(); commentlines( 8); fileclose(); setmenu(m_nn_ad); setscreen(s_eisy_dr,TRUE);}
|
|
if (taste == 3) {blankscreen(); commentlines( 9); fileclose(); setmenu(m_nn_ad); setscreen(s_krann,TRUE);}
|
|
if (taste == 4) {blankscreen(); commentlines(10); fileclose(); setmenu(m_nn_ad); setscreen(s_klann,TRUE);}
|
|
// if (taste == 5) {blankscreen(); commentlines(11); fileclose(); setmenu(m_nn_ad); setscreen(s_eisy_agr,TRUE);}
|
|
}
|
|
ITEM(10 ,"Zurück") {blankscreen(); setscreen( s_status ,TRUE); setmenu( m_status );}
|
|
ITEM(20 ,"ENDE") {exit();} // Programmabbruch
|
|
}
|
|
|
|
// *****************************
|
|
// *** Auswal-Screen-Digital ***
|
|
// *****************************
|
|
SCREEN s_digital()
|
|
{
|
|
ftextout("Auswahl Digitalwerte",1,0,1,0);
|
|
ftextout("< F1 > Schalterpositionen" , 4, 5,0,1);
|
|
// ftextout("< F2 > FGR" , 6, 5,0,1);
|
|
ftextout("< F3 > Status der Regelungen" , 8, 5,0,1);
|
|
ftextout("< F4 > OBD Readiness Flags" ,10, 5,0,1);
|
|
ftextout("< F5 > Fahrzeug Ausstattung" ,12, 5,0,1);
|
|
// ftextout("< F8 > Status zurücksetzen" , 8,45,0,1);
|
|
ftextout("< F10> Zurück" ,22, 5,0,1);
|
|
ftextout("< Shift > + < F10> INPA beenden",22,45,0,1);
|
|
stop();
|
|
}
|
|
|
|
|
|
// *******************************
|
|
// *** Digital-Screen_Schalter ***
|
|
// *******************************
|
|
SCREEN s_digital1()
|
|
{
|
|
ftextout(dme_text + " - Schalterpositionen",0,20,1,0);
|
|
textout("===========================================================================================", 2, 0);
|
|
INPAapiJob(sgbd,"STATUS_DIGITAL_1","",""); // Statusergebnisse ermitteln
|
|
INPAapiResultText(vartext1,"JOB_STATUS",1,"");
|
|
if (vartext1 != "OKAY")
|
|
{
|
|
messagebox("STATUS_DIGITAL_1",vartext1);
|
|
stop();
|
|
}
|
|
delay(200);
|
|
|
|
LINE("Eingang MotorStatus, Kl15, N_Mot","STAT_KL15_EIN_WERT;STAT_MOTOR_AUS_WERT")
|
|
{
|
|
text(1,1,"Klemme 15");
|
|
ergebnisDigitalAusgabe("STAT_KL15_EIN_WERT" , 2, 1," EIN "," AUS ");
|
|
|
|
|
|
text(1,30,"Motor steht");
|
|
ergebnisDigitalAusgabe("STAT_MOTOR_AUS_WERT" , 2,30," EIN "," AUS ");
|
|
}
|
|
|
|
LINE("Eingang Kupplung, BLS, BLTS","STAT_KUPPL_EIN_WERT;STAT_BLS_EIN_WERT;STAT_BTS_EIN_WERT")
|
|
{
|
|
text(1,1,"Kupplungschalter");
|
|
ergebnisDigitalAusgabe("STAT_KUPPL_EIN_WERT" , 2, 1," EIN "," AUS ");
|
|
text(1,30,"Bremslichtschalter-Kanal 1");
|
|
ergebnisDigitalAusgabe("STAT_BLS_EIN_WERT" , 2,30," EIN "," AUS ");
|
|
text(1,60,"Bremslichtschalter-Kanal 2");
|
|
ergebnisDigitalAusgabe("STAT_BTS_EIN_WERT" , 2,60," EIN "," AUS ");
|
|
}
|
|
|
|
LINE("Eingang Klimaanlage","STAT_AC_EIN_WERT")
|
|
{
|
|
text(1,1,"Eingang KlimaAnforderung");
|
|
ergebnisDigitalAusgabe("STAT_AC_EIN_WERT" , 2, 1," EIN "," AUS ");
|
|
}
|
|
}
|
|
|
|
// ***********************
|
|
// *** Digital2-Screen ***
|
|
// ***********************
|
|
SCREEN s_digital2()
|
|
{
|
|
int i1;
|
|
bool b_set, b_plus, b_minus, b_off;
|
|
|
|
ftextout(dme_text + " - Anforderungen Fahrgeschwindigkeitsregelung",0,2,1,0);
|
|
textout("===========================================================================================", 2, 0);
|
|
ftextout("Nicht bei Fahrzeugen mit BN2000 wie E65, E60, ...",4,4,0,1);
|
|
INPAapiJob(sgbd,"STATUS_FGR","","");
|
|
INPAapiResultText(vartext1,"JOB_STATUS",1,"");
|
|
if (vartext1 != "OKAY")
|
|
{
|
|
messagebox("STATUS_FGR",vartext1);
|
|
stop();
|
|
}
|
|
delay(200);
|
|
|
|
LINE("Status MSW_CAN","STAT_MSW_CAN_TEXT")
|
|
{
|
|
INPAapiResultText( vartext1, "STAT_MSW_CAN_TEXT", 1, "" );
|
|
text(1,0,blank);
|
|
text(1,1,vartext1);
|
|
}
|
|
LINE("","")
|
|
{
|
|
ftextout("Statusbits FGR-Hebel",0,25,1,0);
|
|
}
|
|
LINE("Ausgabe der Statusbits","STAT_SET;STAT_OFF;STAT_PLUS;STAT_MINUS")
|
|
{
|
|
INPAapiResultInt(i1,"STAT_MSW_CAN_WERT",1);
|
|
if (i1 == 0) {b_set = 0; b_plus = 0; b_minus = 0; b_off = 0;}
|
|
if (i1 == 1) {b_set = 0; b_plus = 1; b_minus = 0; b_off = 0;}
|
|
if (i1 == 2) {b_set = 0; b_plus = 0; b_minus = 1; b_off = 0;}
|
|
if (i1 == 3) {b_set = 1; b_plus = 0; b_minus = 0; b_off = 0;}
|
|
if (i1 == 4) {b_set = 0; b_plus = 0; b_minus = 0; b_off = 1;}
|
|
text(1, 1,"Taste Set");
|
|
digitalout(b_set , 2, 1," EIN "," AUS ");
|
|
text(1,21,"Taste +");
|
|
digitalout(b_plus , 2,21," EIN "," AUS ");
|
|
text(1,41,"Taste -");
|
|
digitalout(b_minus , 2,41," EIN "," AUS ");
|
|
text(1,61,"Taste I/O");
|
|
digitalout(b_off , 2,61," EIN "," AUS ");
|
|
}
|
|
}
|
|
|
|
// *******************************
|
|
// *** Digital-FunktionsStatus ***
|
|
// *******************************
|
|
SCREEN s_funktions()
|
|
{
|
|
ftextout(dme_text + " - Status der Funktionen",0,20,1,0);
|
|
textout("===========================================================================================", 2, 0);
|
|
INPAapiJob(sgbd,"STATUS_DIGITAL_0","","");
|
|
INPAapiResultText(vartext1,"JOB_STATUS",1,"");
|
|
if (vartext1 != "OKAY")
|
|
{
|
|
messagebox("STATUS_DIGITAL_0",vartext1);
|
|
stop();
|
|
}
|
|
delay(200);
|
|
|
|
LINE("Status Leerlauf, Vollast","STAT_LL_WERT;STAT_VL_WERT;STAT_DK_ABGLEICH_WERT")
|
|
{
|
|
text(0,1,"Status Leerlauf");
|
|
ergebnisDigitalAusgabe("STAT_LL_WERT" , 1, 1," EIN "," AUS ");
|
|
text(0,30,"Status Vollast");
|
|
ergebnisDigitalAusgabe("STAT_VL_WERT" , 1,30," EIN "," AUS ");
|
|
text(0,60,"DK-Neuabgleich notwendig");
|
|
ergebnisDigitalAusgabe("STAT_DK_ABGLEICH_WERT" , 1,60," EIN "," AUS ");
|
|
}
|
|
LINE("Status Kickdown, Schubabschaltung, Fahrstufe","STAT_KICKDOWN_WERT;STAT_SCHUBAB_WERT;STAT_FAHRSTUFE_WERT")
|
|
{
|
|
text(0, 1,"Kickdown erkannt");
|
|
ergebnisDigitalAusgabe("STAT_KICKDOWN_WERT" , 1, 1," EIN "," AUS ");
|
|
text(0,30,"Schubabschaltung");
|
|
ergebnisDigitalAusgabe("STAT_SCHUBAB_WERT" , 1,30," EIN "," AUS ");
|
|
text(0,60,"Fahrstufe = nicht Park/Neutral");
|
|
ergebnisDigitalAusgabe("STAT_FAHRSTUFE_WERT" , 1,60," EIN "," AUS ");
|
|
}
|
|
LINE("Lambdasonde vor Katalysator Bank 1, Lambdasonde hinter Katalysator Bank 1, Regelkreis Bank 1","STAT_LSVK1_WERT;STAT_LSHK1_WERT;STAT_LS1_REGELUNG_WERT")
|
|
{
|
|
text(0, 1,"Lambdasonde vor Kat 1");
|
|
ergebnisDigitalAusgabe("STAT_LSVK1_WERT" , 1, 1," EIN "," AUS ");
|
|
text(0,30,"Lambdasonde hinter Kat 1");
|
|
ergebnisDigitalAusgabe("STAT_LSHK1_WERT" , 1,30," EIN "," AUS ");
|
|
text(0,60,"Regelkreis 1 geschlossen");
|
|
ergebnisDigitalAusgabe("STAT_LS1_REGELUNG_WERT" , 1,60," EIN "," AUS ");
|
|
}
|
|
LINE("Lambdasonde vor Katalysator Bank 2, Lambdasonde hinter Katalysator Bank 2, Regelkreis Bank 2","STAT_LSVK2_WERT;STAT_LSHK2_WERT;STAT_LS2_REGELUNG_WERT")
|
|
{
|
|
text(0, 1,"Lambdasonde vor Kat 2");
|
|
ergebnisDigitalAusgabe("STAT_LSVK2_WERT" , 1, 1," EIN "," AUS ");
|
|
text(0,30,"Lambdasonde hinter Kat 2");
|
|
ergebnisDigitalAusgabe("STAT_LSHK2_WERT" , 1,30," EIN "," AUS ");
|
|
text(0,60,"Regelkreis 2 geschlossen");
|
|
ergebnisDigitalAusgabe("STAT_LS2_REGELUNG_WERT" , 1,60," EIN "," AUS ");
|
|
textout("",2,0);
|
|
}
|
|
// LINE("Text FGR irreversibel","")
|
|
// {
|
|
// textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",0,0);
|
|
// ftextout(dme_text + " - FGR irreversibel abgeschaltet durch",1,25,0,1);
|
|
// textout("",2,15);
|
|
// }
|
|
// LINE("Dynamik Begr 1, Dynamik Begr 2, EGAS Notlauf, Notlauf LL","STAT_DYN_LIM_1_WERT;STAT_DYN_LIM_2_WERT;STAT_EGAS_NOTLAUF_WERT;STAT_NOTLAUF_LL_WERT")
|
|
// {
|
|
// text(0, 1,"Dynamik Begr. 1");
|
|
// ergebnisDigitalAusgabe("STAT_DYN_LIM_1_WERT" , 1, 1," EIN "," AUS ");
|
|
// text(0,20,"Dynamik Begr. 2");
|
|
// ergebnisDigitalAusgabe("STAT_DYN_LIM_2_WERT" , 1,20," EIN "," AUS ");
|
|
// text(0,40,"Notlauf EGAS");
|
|
// ergebnisDigitalAusgabe("STAT_EGAS_NOTLAUF_WERT" , 1,40," JA "," NEIN ");
|
|
// text(0,60,"Notlauf LL-Steller");
|
|
// ergebnisDigitalAusgabe("STAT_NOTLAUF_LL_WERT" , 1,60," EIN "," AUS ");
|
|
// }
|
|
// LINE("Fehler MFL, Fehler Bremse, Fehler Kupplung, Notlauf DK","STAT_FEHLER_MFL_WERT;STAT_FEHLER_BREMSE_WERT;STAT_FEHLER_CLSW_WERT;STAT_NOTLAUF_DK_WERT")
|
|
// {
|
|
// text(0, 1,"Fehler MFL");
|
|
// ergebnisDigitalAusgabe("STAT_FEHLER_MFL_WERT" , 1, 1," EIN "," AUS ");
|
|
// text(0,20,"Fehler Bremse");
|
|
// ergebnisDigitalAusgabe("STAT_FEHLER_BREMSE_WERT" , 1,20," EIN "," AUS ");
|
|
// text(0,40,"Fehler Kupplungsschalter");
|
|
// ergebnisDigitalAusgabe("STAT_FEHLER_CLSW_WERT" , 1,40," EIN "," AUS ");
|
|
// text(0,60,"Notlauf DK");
|
|
// ergebnisDigitalAusgabe("STAT_NOTLAUF_DK_WERT" , 1,60," EIN "," AUS ");
|
|
// }
|
|
// LINE("Mon_LEVEL2, V plausibel, Fehler VS","STAT_MON_LEVEL2_WERT;STAT_V_PLAUSIBEL_WERT;STAT_FEHLER_VS_WERT")
|
|
// {
|
|
// text(0, 1,"Monitoring Level 2");
|
|
// ergebnisDigitalAusgabe("STAT_MON_LEVEL2_WERT" , 1, 1," EIN "," AUS ");
|
|
// text(0,20,"Geschwindigkeit unplausibel");
|
|
// ergebnisDigitalAusgabe("STAT_V_PLAUSIBEL_WERT" , 1,20," JA "," NEIN ");
|
|
// text(0,40,"Fehler Geschwindigkeit");
|
|
// ergebnisDigitalAusgabe("STAT_FEHLER_VS_WERT" , 1,40," JA "," NEIN ");
|
|
// }
|
|
// LINE("Timeout EGS, ASR timeout","STAT_TIMEOUT_EGS1_WERT;STAT_ASR_TIMEOUT_WERT")
|
|
// {
|
|
// text(0, 1,"Timeout EGS1");
|
|
// ergebnisDigitalAusgabe("STAT_TIMEOUT_EGS1_WERT" , 1, 1," JA "," NEIN ");
|
|
// text(0,20,"ASR Timeout");
|
|
// ergebnisDigitalAusgabe("STAT_ASR_TIMEOUT_WERT" , 1,20," JA "," NEIN ");
|
|
// textout("",2,0);
|
|
// }
|
|
// LINE("Text FGR reversibel","")
|
|
// {
|
|
// textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",0,0);
|
|
// ftextout(dme_text + " - FGR reversibel abgeschaltet durch",1,25,0,1);
|
|
// textout("",2,0);
|
|
// }
|
|
// LINE("VS Diff hoch, Übernahme lang, VS SP Max, Ext Momnet","STAT_VS_DIF_HOCH_WERT;STAT_UEBERN_LANG_WERT;STAT_VS_SP_MAX_WERT;STAT_EXT_MOMENT_WERT")
|
|
// {
|
|
// text(0,60,"Abweichung Geschw. zu hoch");
|
|
// ergebnisDigitalAusgabe("STAT_VS_DIF_HOCH_WERT" , 1,60," JA "," NEIN ");
|
|
// text(0,20,"Übernahme zu lange");
|
|
// ergebnisDigitalAusgabe("STAT_UEBERN_LANG_WERT" , 1,20," JA "," NEIN ");
|
|
// text(0,40,"Sollwert Maximum zu lang");
|
|
// ergebnisDigitalAusgabe("STAT_VS_SP_MAX_WERT" , 1,40," JA "," NEIN ");
|
|
// text(0, 1,"Extern Moment Eingriff");
|
|
// ergebnisDigitalAusgabe("STAT_EXT_MOMENT_WERT" , 1, 1," EIN "," AUS ");
|
|
// }
|
|
// LINE("MFL ausgesch, VS_CAN zu lang, Beschl. Überwachung, ","STAT_MFL_AUS_WERT;STAT_VS_CAN_LANG_WERT;STAT_BESCHL_MON_WERT;STAT_HOCHDREH_S_WERT")
|
|
// {
|
|
// text(0, 1,"MFL ausgeschaltet");
|
|
// ergebnisDigitalAusgabe("STAT_MFL_AUS_WERT" , 1, 1," EIN "," AUS ");
|
|
// text(0,20,"VS_CAN zu lang");
|
|
// ergebnisDigitalAusgabe("STAT_VS_CAN_LANG_WERT" , 1,20," EIN "," AUS ");
|
|
// text(0,40,"Beschleunigungsüberw.");
|
|
// ergebnisDigitalAusgabe("STAT_BESCHL_MON_WERT" , 1,40," EIN "," AUS ");
|
|
// text(0,60,"BeschleunigungsBegrenzung");
|
|
// ergebnisDigitalAusgabe("STAT_HOCHDREH_S_WERT" , 1,60," EIN "," AUS ");
|
|
// }
|
|
// LINE("VS_MAX aktiv, VS_FIL gering, Drehzahlbegr., Bremsen","STAT_TAKEOVER_VS_WERT;STAT_VS_FIL_LOW_WERT;STAT_DREHZAHL_BEG_WERT;STAT_BREMSE_AKTIV_WERT")
|
|
// {
|
|
// text(0, 1,"MaximalGeschw. aktiv");
|
|
// ergebnisDigitalAusgabe("STAT_TAKEOVER_VS_WERT" , 1, 1," EIN "," AUS ");
|
|
// text(0,20,"gefilterte Geschw. niedrig");
|
|
// ergebnisDigitalAusgabe("STAT_VS_FIL_LOW_WERT" , 1,20," EIN "," AUS ");
|
|
// text(0,40,"Drehzahlbegrenzung");
|
|
// ergebnisDigitalAusgabe("STAT_DREHZAHL_BEG_WERT" , 1,40," EIN "," AUS ");
|
|
// text(0,60,"Bremse aktiv");
|
|
// ergebnisDigitalAusgabe("STAT_BREMSE_AKTIV_WERT" , 1,60," JA "," NEIN ");
|
|
// }
|
|
// LINE("MFL-Anforderung notaus","STAT_MFL_HARD_OFF_WERT")
|
|
// {
|
|
// text(0, 1,"MFL Anforderung ausgeschaltet");
|
|
// ergebnisDigitalAusgabe("STAT_MFL_HARD_OFF_WERT" , 1, 1," EIN "," AUS ");
|
|
// }
|
|
}
|
|
|
|
// **********************************
|
|
// *** Digital3-Screen OBD Status ***
|
|
// **********************************
|
|
SCREEN s_digital_obd()
|
|
{
|
|
int i1;
|
|
bool b1;
|
|
string s1, s2, pcode;
|
|
i1 = 0;
|
|
|
|
ftextout(dme_text + " - Monitorfunktion und Readiness Flag in DME",0,5,1,0);
|
|
textout("===========================================================================================", 2, 0);
|
|
textout("", 3, 0);
|
|
INPAapiJob(sgbd,"STATUS_READINESS","","");
|
|
INPAapiResultText(vartext1,"JOB_STATUS",1,"");
|
|
if (vartext1 != "OKAY")
|
|
{
|
|
messagebox("STATUS_READINESS",vartext1);
|
|
stop();
|
|
}
|
|
delay(200);
|
|
|
|
LINE("FehlzündungMonitor, Fehlzündung,KraftstoffMonitor, Kraftstoffsystem","STAT_MISSFIRE_MONITOR_WERT;STAT_MISSFIRE_WERT;STAT_FUELSYSTEM_MONITOR_WERT;STAT_FUELSYSTEM_WERT")
|
|
{
|
|
text(0, 8,"Fehlzündung");
|
|
text(1, 0,"MONITOR");
|
|
text(1,20,"READINESS");
|
|
ergebnisDigitalAusgabe("STAT_MISSFIRE_MONITOR_WERT" , 2, 0," Ein"," Aus ");
|
|
INPAapiResultInt(i1,"STAT_MISSFIRE_MONITOR_WERT",1);
|
|
if (i1 != 0)
|
|
{
|
|
INPAapiResultInt(i1,"STAT_MISSFIRE_WERT",1);
|
|
if (i1 == 1) {b1 = 0;} else {b1 = 1;}
|
|
digitalout(b1, 2,20," Ja "," Nein ");
|
|
}
|
|
else
|
|
{
|
|
b1 = 0;
|
|
digitalout(b1, 2,20," Ja "," Nicht unterstützt");
|
|
}
|
|
text(0,52,"Kraftstoffsystem");
|
|
text(1,44,"MONITOR");
|
|
text(1,64,"READINESS");
|
|
ergebnisDigitalAusgabe("STAT_FUELSYSTEM_MONITOR_WERT" , 2,44," Ein "," Aus ");
|
|
INPAapiResultInt(i1,"STAT_FUELSYSTEM_MONITOR_WERT",1);
|
|
if (i1 != 0)
|
|
{
|
|
INPAapiResultInt(i1,"STAT_FUELSYSTEM_WERT",1);
|
|
if (i1 == 1) {b1 = 0;} else {b1 = 1;}
|
|
digitalout(b1, 2,64," Ja "," Nein ");
|
|
}
|
|
else
|
|
{
|
|
b1 = 0;
|
|
digitalout(b1, 2,64," Ja "," Nicht unterstützt");
|
|
}
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("KomponentenMonitor, Komponentenüberwachung","STAT_COMPREHENSIVE_MONITOR_WERT;STAT_COMPREHENSIVE_WERT")
|
|
{
|
|
text(0, 8,"Bauteile");
|
|
text(1, 0,"MONITOR");
|
|
text(1,20,"READINESS");
|
|
ergebnisDigitalAusgabe("STAT_COMPREHENSIVE_MONITOR_WERT", 2, 0," Ein "," Aus ");
|
|
INPAapiResultInt(i1,"STAT_COMPREHENSIVE_MONITOR_WERT",1);
|
|
if (i1 != 0)
|
|
{
|
|
INPAapiResultInt(i1,"STAT_COMPREHENSIVE_WERT",1);
|
|
if (i1 == 1) {b1 = 0;} else {b1 = 1;}
|
|
digitalout(b1, 2,20," Ja "," Nein ");
|
|
}
|
|
else
|
|
{
|
|
b1 = 0;
|
|
digitalout(b1, 2,20," Ja "," Nicht unterstützt");
|
|
}
|
|
textout("===========================================================================================", 4, 0);
|
|
}
|
|
LINE("KATÜberwachungMonitor,KATÜberwachung, KatHeizungMonitor, KatHeizung","STAT_KATMON_EIN_WERT;STAT_KATRDY_EIN_WERT;STAT_HKATMON_EIN_WERT;STAT_HKATRDY_EIN_WERT")
|
|
{
|
|
text(0, 8,"Katalysator");
|
|
text(1, 0,"MONITOR");
|
|
text(1,20,"READINESS");
|
|
ergebnisDigitalAusgabe("STAT_KATMON_EIN_WERT", 2, 0," Ein "," Aus ");
|
|
INPAapiResultInt(i1,"STAT_KATMON_EIN_WERT",1);
|
|
if (i1 != 0)
|
|
{
|
|
INPAapiResultInt(i1,"STAT_KATRDY_EIN_WERT",1);
|
|
if (i1 == 1) {b1 = 0;} else {b1 = 1;}
|
|
digitalout(b1, 2,20," Ja "," Nein ");
|
|
}
|
|
else
|
|
{
|
|
b1 = 0;
|
|
digitalout(b1, 2,20," Ja "," Nicht unterstützt");
|
|
}
|
|
text(0,52,"Katalysatorheizung");
|
|
text(1,44,"MONITOR");
|
|
text(1,64,"READINESS");
|
|
ergebnisDigitalAusgabe("STAT_HKATMON_EIN_WERT" , 2,44," Ein "," Aus ");
|
|
INPAapiResultInt(i1,"STAT_HKATMON_EIN_WERT",1);
|
|
if (i1 != 0)
|
|
{
|
|
INPAapiResultInt(i1,"STAT_HKATRDY_EIN_WERT",1);
|
|
if (i1 == 1) {b1 = 0;} else {b1 = 1;}
|
|
digitalout(b1, 2,64," Ja "," Nein ");
|
|
}
|
|
else
|
|
{
|
|
b1 = 0;
|
|
digitalout(b1, 2,64," Ja "," Nicht unterstützt");
|
|
}
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Lambda Überwachung,LambdaHeizung Überwachung","STAT_LSMON_EIN_WERT;STAT_LSRDY_EIN_WERT;STAT_HSMON_EIN_WERT;STAT_HSRDY_EIN_WERT")
|
|
{
|
|
text(0, 8,"Lambdasonde");
|
|
text(1, 0,"MONITOR");
|
|
text(1,20,"READINESS");
|
|
ergebnisDigitalAusgabe("STAT_LSMON_EIN_WERT" , 2, 0," Ein "," Aus ");
|
|
INPAapiResultInt(i1,"STAT_LSMON_EIN_WERT",1);
|
|
if (i1 != 0)
|
|
{
|
|
INPAapiResultInt(i1,"STAT_LSRDY_EIN_WERT",1);
|
|
if (i1 == 1) {b1 = 0;} else {b1 = 1;}
|
|
digitalout(b1, 2,20," Ja "," Nein ");
|
|
}
|
|
else
|
|
{
|
|
b1 = 0;
|
|
digitalout(b1, 2,20," Ja "," Nicht unterstützt");
|
|
}
|
|
text(0,52,"Lambdasondenheizung");
|
|
text(1,44,"MONITOR");
|
|
text(1,64,"READINESS");
|
|
ergebnisDigitalAusgabe("STAT_HSMON_EIN_WERT" , 2,44," Ein "," Aus ");
|
|
INPAapiResultInt(i1,"STAT_HSMON_EIN_WERT",1);
|
|
if (i1 != 0)
|
|
{
|
|
INPAapiResultInt(i1,"STAT_HSRDY_EIN_WERT",1);
|
|
if (i1 == 1) {b1 = 0;} else {b1 = 1;}
|
|
digitalout(b1, 2,64," Ja "," Nein ");
|
|
}
|
|
else
|
|
{
|
|
b1 = 0;
|
|
digitalout(b1, 2,64," Ja "," Nicht unterstützt");
|
|
}
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Abgasrückführung, Sekundärluft","STAT_AGRMON_EIN_WERT;STAT_AGRRDY_EIN_WERT;STAT_SLSMON_EIN_WERT;STAT_SLSRDY_EIN_WERT")
|
|
{
|
|
text(0, 8,"Abgasrückführung");
|
|
text(1, 0,"MONITOR");
|
|
text(1,20,"READINESS");
|
|
ergebnisDigitalAusgabe("STAT_AGRRDY_EIN_WERT" , 2, 0," Ein "," Aus ");
|
|
INPAapiResultInt(i1,"STAT_AGRRDY_EIN_WERT",1);
|
|
if (i1 != 0)
|
|
{
|
|
INPAapiResultInt(i1,"STAT_AGRRDY_EIN_WERT",1);
|
|
if (i1 == 1) {b1 = 0;} else {b1 = 1;}
|
|
digitalout(b1, 2,20," Ja "," Nein ");
|
|
}
|
|
else
|
|
{
|
|
b1 = 0;
|
|
digitalout(b1, 2,20," Ja "," Nicht unterstützt");
|
|
}
|
|
text(0,52,"Sekundärluft");
|
|
text(1,44,"MONITOR");
|
|
text(1,64,"READINESS");
|
|
ergebnisDigitalAusgabe("STAT_SLSMON_EIN_WERT" , 2,44," Ein "," Aus ");
|
|
INPAapiResultInt(i1,"STAT_SLSMON_EIN_WERT",1);
|
|
if (i1 != 0)
|
|
{
|
|
INPAapiResultInt(i1,"STAT_SLSRDY_EIN_WERT",1);
|
|
if (i1 == 1) {b1 = 0;} else {b1 = 1;}
|
|
digitalout(b1, 2,64," Ja "," Nein ");
|
|
}
|
|
else
|
|
{
|
|
b1 = 0;
|
|
digitalout(b1, 2,64," Ja "," Nicht unterstützt");
|
|
}
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Tankentlüftung, Klimaanlage","STAT_TESMON_EIN_WERT;STAT_TESRDY_EIN_WERT;STAT_KLIMAMON_EIN_WERT;STAT_KLIMARDY_EIN_WERT")
|
|
{
|
|
text(0, 8,"Tankentlüftung");
|
|
text(1, 0,"MONITOR");
|
|
text(1,20,"READINESS");
|
|
ergebnisDigitalAusgabe("STAT_TESMON_EIN_WERT" , 2, 0," Ein "," Aus ");
|
|
INPAapiResultInt(i1,"STAT_TESMON_EIN_WERT",1);
|
|
if (i1 != 0)
|
|
{
|
|
INPAapiResultInt(i1,"STAT_TESRDY_EIN_WERT",1);
|
|
if (i1 == 1) {b1 = 0;} else {b1 = 1;}
|
|
digitalout(b1, 2,20," Ja "," Nein ");
|
|
}
|
|
else
|
|
{
|
|
b1 = 0;
|
|
digitalout(b1, 2,20," Ja "," Nicht unterstützt");
|
|
}
|
|
text(0,52,"Klimasystem");
|
|
text(1,44,"MONITOR");
|
|
text(1,64,"READINESS");
|
|
ergebnisDigitalAusgabe("STAT_KLIMAMON_EIN_WERT" , 2,44," Ein "," Aus ");
|
|
INPAapiResultInt(i1,"STAT_KLIMAMON_EIN_WERT",1);
|
|
if (i1 != 0)
|
|
{
|
|
INPAapiResultInt(i1,"STAT_KLIMARDY_EIN_WERT",1);
|
|
if (i1 == 1) {b1 = 0;} else {b1 = 1;}
|
|
digitalout(b1, 2,64," Ja "," Nein ");
|
|
}
|
|
else
|
|
{
|
|
b1 = 0;
|
|
digitalout(b1, 2,64," Ja "," Nicht unterstützt");
|
|
}
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
}
|
|
|
|
// *************************
|
|
// *** Digital-Varianten ***
|
|
// *************************
|
|
SCREEN s_variants()
|
|
{
|
|
string s1;
|
|
|
|
ftextout(dme_text + " - Fahrzeugausstattung",0,18,1,0);
|
|
textout("===========================================================================================", 2, 0);
|
|
textout("", 3, 0);
|
|
INPAapiJob(sgbd,"ECU_CONFIG","","");
|
|
INPAapiResultText(vartext1,"JOB_STATUS",1,"");
|
|
if (vartext1 != "OKAY") { messagebox("ECU_CONFIG",vartext1); stop(); }
|
|
delay(200);
|
|
|
|
LINE("Automatik Getriebe, Klimaanlage, SMG-Steuergerät, ARS-Steuergerät","STAT_AT;STAT_AC;STAT_AMT;STAT_ARS")
|
|
{
|
|
text(0,1,"Automatik Getriebe");
|
|
ergebnisDigitalAusgabe("STAT_AT" ,1, 1," JA "," NEIN ");
|
|
text(0,21,"Klimaanlage");
|
|
ergebnisDigitalAusgabe("STAT_AC" ,1,21," JA "," NEIN ");
|
|
text(0,41,"SMG-Steuergerät");
|
|
ergebnisDigitalAusgabe("STAT_AMT" ,1,41," JA "," NEIN ");
|
|
text(0,61,"ARS-Steuergerät");
|
|
ergebnisDigitalAusgabe("STAT_ARS" ,1,61," JA "," NEIN ");
|
|
text(3,0,"");
|
|
}
|
|
LINE("ASR-Steuergerät, Bordnetz 2000, Tempomat über CAN, Entfernungsüberwachung","STAT_ASR;STAT_BN;STAT_BN_MSW;STAT_DCC")
|
|
{
|
|
text(0,1,"ASR-Steuergerät");
|
|
ergebnisDigitalAusgabe("STAT_ASR" ,1, 1," JA "," NEIN ");
|
|
text(0,21,"Bordnetz 2000");
|
|
ergebnisDigitalAusgabe("STAT_BN" ,1,21," JA "," NEIN ");
|
|
text(0,41,"Tempomat über CAN");
|
|
ergebnisDigitalAusgabe("STAT_BN_MSW" ,1,41," JA "," NEIN ");
|
|
text(0,61,"Entfernungsüberwachung");
|
|
ergebnisDigitalAusgabe("STAT_DCC" ,1,61," JA "," NEIN ");
|
|
text(3,0,"");
|
|
}
|
|
LINE("E-Box-Lüfter, SMG-/EGS-Steuergerät, Kombi über CAN, Multifunktionslenkrad","STAT_EBOX_CFA;STAT_ETCU;STAT_ICL;STAT_MSW")
|
|
{
|
|
text(0,1,"E-Box-Lüfter");
|
|
ergebnisDigitalAusgabe("STAT_EBOX_CFA" ,1, 1," JA "," NEIN ");
|
|
text(0,21,"SMG-/EGS-Steuergerät");
|
|
ergebnisDigitalAusgabe("STAT_ETCU" ,1,21," JA "," NEIN ");
|
|
text(0,41,"Kombi über CAN");
|
|
ergebnisDigitalAusgabe("STAT_ICL" ,1,41," JA "," NEIN ");
|
|
text(0,61,"Multifunktionslenkrad");
|
|
ergebnisDigitalAusgabe("STAT_MSW" ,1,61," JA "," NEIN ");
|
|
text(3,0,"");
|
|
}
|
|
LINE("Elektrische Lenkung, Soundklappe, Sport-Taster, Komfortstart","STAT_PSTE;STAT_SOF;STAT_SOF_SWI;STAT_GEAR")
|
|
{
|
|
text(0,1,"Elektrische Lenkung");
|
|
ergebnisDigitalAusgabe("STAT_PSTE" ,1, 1," JA "," NEIN ");
|
|
text(0,21,"Soundklappe");
|
|
ergebnisDigitalAusgabe("STAT_SOF" ,1,21," JA "," NEIN ");
|
|
text(0,41,"Sport-Taster");
|
|
ergebnisDigitalAusgabe("STAT_SOF_SWI" ,1,41," JA "," NEIN ");
|
|
text(0,61,"Komfortstart");
|
|
ergebnisDigitalAusgabe("STAT_GEAR" ,1,61," JA "," NEIN ");
|
|
text(3,0,"");
|
|
}
|
|
LINE("Kühlerjalousie unten, Power Modul, Abgasklappe, Klimarelais","STAT_ECRAS_DOWN;STAT_VEH;STAT_EF;STAT_ECRAS_UP;STAT_RLY_ACCOUT")
|
|
{
|
|
text(0,1,"Power Modul");
|
|
ergebnisDigitalAusgabe("STAT_VEH" ,1, 1," JA "," NEIN ");
|
|
text(0,21,"Abgasklappe");
|
|
ergebnisDigitalAusgabe("STAT_EF" ,1,21," JA "," NEIN ");
|
|
text(0,41,"Kühlerjalousie oben");
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_UP" ,1,41," JA "," NEIN ");
|
|
text(0,61,"Klimarelais");
|
|
//ergebnisDigitalAusgabe("STAT_RLY_ACCOUT" ,1,61," JA "," NEIN ");
|
|
text(3,0,"");
|
|
}
|
|
LINE("Starterrelais, ASR3-Steuergerät, Längs-Dynamik-Management, Lampenzustand","STAT_RLY_ST;STAT_ASR3;STAT_BN_LDM;STAT_BN_LTG_HDLP_L")
|
|
{
|
|
text(0,1,"Starterrelais");
|
|
ergebnisDigitalAusgabe("STAT_RLY_ST" ,1, 1," JA "," NEIN ");
|
|
text(0,21,"ASR3-Steuergerät");
|
|
ergebnisDigitalAusgabe("STAT_ASR3" ,1,21," JA "," NEIN ");
|
|
text(0,41,"Längs-Dynamik-Management");
|
|
ergebnisDigitalAusgabe("STAT_BN_LDM" ,1,41," JA "," NEIN ");
|
|
text(0,61,"Lampenzustand");
|
|
ergebnisDigitalAusgabe("STAT_BN_LTG_HDLP_L" ,1,61," JA "," NEIN ");
|
|
text(3,0,"");
|
|
}
|
|
LINE("Lambdasonde hinter Katalysator, Lambdasonde vor Katalysator, ASR4-Steuergerät, AFS-Steuergerät","STAT_LSH_DOWN;STAT_LSH_UP;STAT_ASR_4;STAT_MAF")
|
|
{
|
|
text(0,1,"Lambdasonde hinter Kat");
|
|
ergebnisDigitalAusgabe("STAT_LSH_DOWN" ,1, 1," JA "," NEIN ");
|
|
text(0,21,"Lambdasonde vor Kat");
|
|
ergebnisDigitalAusgabe("STAT_LSH_UP" ,1,21," JA "," NEIN ");
|
|
text(0,41,"ASR4-Steuergerät");
|
|
ergebnisDigitalAusgabe("STAT_ASR_4" ,1,41," JA "," NEIN ");
|
|
text(0,61,"Heissfilmluftmassenmesser");
|
|
ergebnisDigitalAusgabe("STAT_MAF" ,1,61," JA "," NEIN ");
|
|
text(3,0,"");
|
|
}
|
|
LINE("AFS-Steuergerät, Elektrische Kraftstoffpumpe über CAN, Intelligenter Batteriesensor, Anhängermodul","STAT_PSTE_2;STAT_BN_EFP;STAT_SENS_BAT_SMT_DET;STAT_BN_TRL")
|
|
{
|
|
text(0,1,"AFS-Steuergerät");
|
|
ergebnisDigitalAusgabe("STAT_PSTE_2" ,1, 1," JA "," NEIN ");
|
|
text(0,21,"EKP über CAN");
|
|
ergebnisDigitalAusgabe("STAT_BN_EFP" ,1,21," JA "," NEIN ");
|
|
// text(0,41,"Intelligenter Batteriesensor");
|
|
// ergebnisDigitalAusgabe("STAT_SENS_BAT_SMT_DET" ,1,41," JA "," NEIN ");
|
|
// text(0,61,"Anhängermodul");
|
|
// ergebnisDigitalAusgabe("STAT_BN_TRL" ,1,61," JA "," NEIN ");
|
|
// text(3,0,"");
|
|
}
|
|
LINE("Kühlerjalousie unten, Sportgetriebe","STAT_ECRAS_DOWN;STAT_TCT")
|
|
{
|
|
text(0,1,"Kühlerjalousie unten");
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_DOWN" ,1, 1," JA "," NEIN ");
|
|
text(0,21,"Sportgetriebe");
|
|
ergebnisDigitalAusgabe("STAT_TCT" ,1,21," JA "," NEIN ");
|
|
// text(0,41,"Start-Stop-Automatik");
|
|
// ergebnisDigitalAusgabe("STAT_TCT" ,1,41," JA "," NEIN ");
|
|
// text(3,0,"");
|
|
}
|
|
}
|
|
|
|
//***************************************
|
|
//** Menü für Stellgliedansteuerungen ***
|
|
//***************************************
|
|
MENU m_iostatus()
|
|
{
|
|
int i_temp;
|
|
|
|
INIT {setmenutitle(dme_text + " Stellgliedansteuerungen");}
|
|
ITEM(1, "Steuern 1") {setscreen(s_iostatus_1,TRUE); setmenu(m_iostatus_1);}
|
|
ITEM(2, "Steuern 2") {setscreen(s_iostatus_2,TRUE); setmenu(m_iostatus_2);}
|
|
ITEM(10,"Zurück") {blankscreen(); setscreen(s_main,TRUE); setmenu(m_main);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
//******************************************
|
|
//*** Menü für Stellgliedansteuerungen 1 ***
|
|
//******************************************
|
|
MENU m_iostatus_1()
|
|
{
|
|
int i_temp;
|
|
|
|
INIT {setmenutitle(dme_text + " Stellgliedansteuerungen 1");}
|
|
// ITEM( 1,"E-Lüfter") {setscreen(s_elue,TRUE); setmenu(m_elue);}
|
|
// ITEM( 2,"VANOS") {setscreen(s_st_vanos,TRUE); setmenu(m_st_vanos);}
|
|
// ITEM( 3,"TEV") {setscreen(s_tev,TRUE); setmenu(m_tev);}
|
|
// ITEM( 4,"KFK") {setscreen(s_kfk,TRUE); setmenu(m_kfk);}
|
|
// ITEM( 5,"EKP") {setscreen(s_ekp,TRUE); setmenu(m_ekp);}
|
|
// ITEM( 6,"Lambda") {setscreen(s_hls,TRUE); setmenu(m_hls);}
|
|
ITEM( 7,"GLF") {setscreen(s_glf,TRUE); setmenu(m_glf);}
|
|
// ITEM( 8,"EWAP") {setscreen(s_ewap,TRUE); setmenu(m_ewap);}
|
|
// ITEM( 9,"KOREL") {setscreen(s_korel,TRUE); setmenu(m_korel);}
|
|
ITEM(10,"Zurück") {blankscreen(); setscreen(s_iostatus,TRUE); setmenu(m_iostatus);}
|
|
// ITEM(11,"EBL") {setscreen(s_ebl,TRUE); setmenu(m_ebl);}
|
|
// ITEM(12,"AGK") {setscreen(s_agk,TRUE); setmenu(m_agk);}
|
|
// ITEM(13,"DMTL") {setscreen(s_st_dmtl,TRUE); setmenu(m_st_dmtl);}
|
|
// ITEM(14,"VIMDISA") {setscreen(s_disa,TRUE); setmenu(m_disa);}
|
|
// ITEM(15,"MIL/EML") {setscreen(s_mil_eml,TRUE); setmenu(m_mil_eml);}
|
|
// ITEM(16,"Klemme 87") {setscreen(s_kl87,TRUE); setmenu(m_kl87);}
|
|
// ITEM(17,"SR") {setscreen(s_sr,TRUE); setmenu(m_sr);}
|
|
// ITEM(18,"KGEH") {setscreen(s_r_kgeh,TRUE); setmenu(m_r_kgeh);}
|
|
// ITEM(19,"DK") {setscreen(s_dk,TRUE); setmenu(m_dk);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
//******************************************
|
|
//*** Menü für Stellgliedansteuerungen 2 ***
|
|
//******************************************
|
|
MENU m_iostatus_2()
|
|
{
|
|
int i_temp;
|
|
|
|
INIT {setmenutitle(dme_text + " Stellgliedansteuerungen 2");}
|
|
// ITEM( 1,"Generator") {setscreen(s_gen,TRUE); setmenu(m_gen);}
|
|
// ITEM( 2,"ODR") {setscreen(s_odr,TRUE); setmenu(m_odr);}
|
|
// ITEM( 3,"ODV") {setscreen(s_odv,TRUE); setmenu(m_odv);}
|
|
// ITEM( 4,"LDS") {setscreen(s_lds,TRUE); setmenu(m_lds);}
|
|
// ITEM( 5,"Motorlager") {setscreen(s_mls,TRUE); setmenu(m_mls);}
|
|
// ITEM( 6,"MSV") {setscreen(s_msv,TRUE); setmenu(m_msv);}
|
|
// ITEM( 7,"AGR") {setscreen(s_agr,TRUE); setmenu(m_agr);}
|
|
// ITEM( 8,"DKH") {setscreen(s_dkh,TRUE); setmenu(m_dkh);}
|
|
ITEM(10,"Zurück") {blankscreen(); setscreen(s_iostatus,TRUE); setmenu(m_iostatus);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
//*********************************
|
|
//*** Menü Ansteuerung E-Lüfter ***
|
|
//*********************************
|
|
MENU m_elue()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung E-Lüfter"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"15%") {elue_ansteuer(16);}
|
|
ITEM( 2,"50%") {elue_ansteuer(50);}
|
|
ITEM( 3,"90%") {elue_ansteuer(91);}
|
|
ITEM( 4,"DME") {elue_ansteuer(0xFF);}
|
|
ITEM(10,"Zurück") {blankscreen(); setscreen(s_iostatus_1,TRUE); setmenu(m_iostatus_1);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
//******************************
|
|
//*** Menü Ansteuerung VANOS ***
|
|
//******************************
|
|
MENU m_st_vanos()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung VANOS"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"E +10°") {vanos_in_ansteuer(10);}
|
|
ITEM( 2,"E -10°") {vanos_in_ansteuer(-10);}
|
|
ITEM( 3,"E +72°") {vanos_in_ansteuer(72);}
|
|
ITEM( 4,"E -72°") {vanos_in_ansteuer(-72);}
|
|
ITEM( 5,"E/A DME") {vanos_in_ansteuer(0x1FF); vanos_ex_ansteuer(0x1FF);}
|
|
ITEM( 6,"A +10°") {vanos_ex_ansteuer(10);}
|
|
ITEM( 7,"A -10°") {vanos_ex_ansteuer(-10);}
|
|
ITEM( 8,"A +72°") {vanos_ex_ansteuer(72);}
|
|
ITEM( 9,"A -72°") {vanos_ex_ansteuer(-72);}
|
|
ITEM(10,"Zurück") {blankscreen(); setscreen(s_iostatus_1,TRUE); setmenu(m_iostatus_1);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
//****************************
|
|
//*** Menü Ansteuerung TEV ***
|
|
//****************************
|
|
MENU m_tev()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung TEV"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"0%") {tev_ansteuer(0);}
|
|
ITEM( 2,"20%") {tev_ansteuer(20);}
|
|
ITEM( 3,"50%") {tev_ansteuer(50);}
|
|
ITEM( 4,"90%") {tev_ansteuer(90);}
|
|
ITEM( 5,"DME") {tev_ansteuer(0xFF);}
|
|
ITEM(10,"Zurück") {setscreen(s_iostatus_1,TRUE); setmenu(m_iostatus_1);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
//****************************
|
|
//*** Menü Ansteuerung KFK ***
|
|
//****************************
|
|
MENU m_kfk()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung KFK"); ftextout("Setzen der Ansteuerung Über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"0%") {kfk_ansteuer(0);}
|
|
ITEM( 2,"15%") {kfk_ansteuer(15);}
|
|
ITEM( 3,"50%") {kfk_ansteuer(50);}
|
|
ITEM( 4,"90%") {kfk_ansteuer(90);}
|
|
ITEM( 5,"DME") {kfk_ansteuer(0xFF);}
|
|
ITEM(10,"Zurück") {setscreen(s_iostatus_1,TRUE); setmenu(m_iostatus_1);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
//****************************
|
|
//*** Menü Ansteuerung EKP ***
|
|
//****************************
|
|
MENU m_ekp()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung EKP"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"EIN") {ekp_ansteuer(1);}
|
|
ITEM( 2,"AUS") {ekp_ansteuer(0);}
|
|
ITEM( 4,"DME") {ekp_ansteuer(0xFF);}
|
|
ITEM(10,"Zurück") {setscreen(s_iostatus_1,TRUE); setmenu(m_iostatus_1);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
//**********************************************
|
|
//*** Menü Ansteuerung Lambdasondenheizungen ***
|
|
//**********************************************
|
|
MENU m_hls()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung Lambdasondenheizungen"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"5%") {taste=5;}
|
|
ITEM( 2,"15%") {taste=15;}
|
|
ITEM( 3,"90%") {taste=90;}
|
|
ITEM( 4,"DME") {taste=0xFF;}
|
|
ITEM( 5,"LSVK1") {hls1_ansteuer(taste);}
|
|
ITEM( 6,"LSHK1") {hls2_ansteuer(taste);}
|
|
ITEM( 7,"LSVK2") {hls3_ansteuer(taste);}
|
|
ITEM( 8,"LSHK2") {hls4_ansteuer(taste);}
|
|
ITEM(10,"Zurück") {setscreen(s_iostatus_1,TRUE); setmenu(m_iostatus_1);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
//****************************
|
|
//*** Menü Ansteuerung GLF ***
|
|
//****************************
|
|
MENU m_glf()
|
|
{
|
|
bool Variable = TRUE;
|
|
|
|
INIT {
|
|
setmenutitle("Ansteuerung gesteuerte Luftführung GLF");
|
|
ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);
|
|
setitem(8, "WKM komplett", TRUE);
|
|
setitem(7, "WKM oben", TRUE);
|
|
setitem(6, "WKM unten", TRUE);
|
|
}
|
|
ITEM( 1, "Oben ZU") {glf1_ansteuer(0);}
|
|
ITEM( 2, "Oben AUF") {glf1_ansteuer(1);}
|
|
ITEM( 3, "Unten ZU") {glf2_ansteuer(0);}
|
|
ITEM( 4, "Unten AUF"){glf2_ansteuer(1);}
|
|
ITEM( 5, "DME") {glf1_ansteuer(0xFF);glf2_ansteuer(0xFF);repeaterSwitch = FALSE;}
|
|
|
|
ITEM(6, "@") {
|
|
|
|
if (repeaterSwitch == FALSE) {
|
|
setitem(6, "WKM unten", TRUE);
|
|
repeaterSwitch = TRUE;
|
|
chosenRepeater = 2;
|
|
setstatemachine(REPEATER);
|
|
}
|
|
else {
|
|
// setitem(8, "WKM Stopp", TRUE);
|
|
repeaterSwitch = FALSE;
|
|
}
|
|
}
|
|
ITEM(7, "@") {
|
|
|
|
if (repeaterSwitch == FALSE) {
|
|
setitem(7, "WKM oben", TRUE);
|
|
repeaterSwitch = TRUE;
|
|
chosenRepeater = 3;
|
|
setstatemachine(REPEATER);
|
|
}
|
|
else {
|
|
// setitem(7, "WKM Stopp", TRUE);
|
|
repeaterSwitch = FALSE;
|
|
}
|
|
}
|
|
ITEM( 8, "@") {
|
|
|
|
if (repeaterSwitch == FALSE) {
|
|
setitem(8, "WKM komplett", TRUE);
|
|
repeaterSwitch = TRUE;
|
|
chosenRepeater = 1;
|
|
setstatemachine(REPEATER);
|
|
}
|
|
else {
|
|
// setitem(8, "WKM Stopp", TRUE);
|
|
repeaterSwitch = FALSE;
|
|
}
|
|
}
|
|
|
|
ITEM(10, "Zurück") {setscreen(s_iostatus_1,TRUE); setmenu(m_iostatus_1);repeaterSwitch = FALSE;}
|
|
ITEM(20, "ENDE") {repeaterSwitch = FALSE; userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
//************************************
|
|
//*** Menü Ansteuerung Wasserpumpe ***
|
|
//************************************
|
|
MENU m_ewap()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung Wasserpumpe"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"5") {ewap_ansteuer(5);}
|
|
ITEM( 2,"50") {ewap_ansteuer(50);}
|
|
ITEM( 3,"95") {ewap_ansteuer(95);}
|
|
ITEM( 4,"DME") {ewap_ansteuer(0xFF);}
|
|
ITEM( 5,"Entlüftung") {setscreen(s_ewap_kse,TRUE); setmenu(m_ewap_kse);}
|
|
ITEM(10,"Zurück") {setscreen(s_iostatus_1,TRUE); setmenu(m_iostatus_1);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
//****************************
|
|
//*** Menü Ansteuerung KSE ***
|
|
//****************************
|
|
MENU m_ewap_kse()
|
|
{
|
|
INIT {setmenutitle("Kühlsystementlüftung"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"START") {ewap_ansteuer_kse(1,j);}
|
|
// ITEM( 2,"STOP") {ewap_ansteuer_kse(0,j);}
|
|
ITEM(10,"Zurück") {setscreen(s_ewap,TRUE); setmenu(m_ewap);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
//******************************
|
|
//*** Menü Ansteuerung KOREL ***
|
|
//******************************
|
|
MENU m_korel()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung Klimakompressor Endstufe"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"EIN") {korel_ansteuer(1);}
|
|
ITEM( 2,"AUS") {korel_ansteuer(0);}
|
|
ITEM( 4,"DME") {korel_ansteuer(0xFF);}
|
|
ITEM(10,"Zurück") {setscreen(s_iostatus_1,TRUE); setmenu(m_iostatus_1);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
//*************************************
|
|
//*** Menü Ansteuerung E-Box-Lüfter ***
|
|
//*************************************
|
|
MENU m_ebl()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung E-Box Lüfter"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"EIN") {ebl_ansteuer(1);}
|
|
ITEM( 2,"AUS") {ebl_ansteuer(0);}
|
|
ITEM( 4,"DME") {ebl_ansteuer(0xFF);}
|
|
ITEM(10,"Zurück") {setscreen(s_iostatus_1,TRUE); setmenu(m_iostatus_1);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
//********************************
|
|
//*** Menü Ansteuerung VIMDISA ***
|
|
//********************************
|
|
MENU m_disa()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung variable Sauganlage"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"DISA1 AUF"){disa1_ansteuer(1);}
|
|
ITEM( 2,"DISA1 ZU") {disa1_ansteuer(0);}
|
|
ITEM( 3,"DME") {disa1_ansteuer(0xFF);}
|
|
ITEM(11,"DISA2 AUF"){disa2_ansteuer(1);}
|
|
ITEM(12,"DISA2 ZU") {disa2_ansteuer(0);}
|
|
ITEM(13,"DME") {disa2_ansteuer(0xFF);}
|
|
ITEM(10,"Zurück") {setscreen(s_iostatus_1,TRUE); setmenu(m_iostatus_1);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
//************************************
|
|
//*** Menü Ansteuerung Abgasklappe ***
|
|
//************************************
|
|
MENU m_agk()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung Abgasklappe"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"EIN") {agk_ansteuer(1);}
|
|
ITEM( 2,"AUS") {agk_ansteuer(0);}
|
|
ITEM( 4,"DME") {agk_ansteuer(0xFF);}
|
|
ITEM(10,"Zurück") {setscreen(s_iostatus_1,TRUE); setmenu(m_iostatus_1);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
//***********************************
|
|
//*** Menü Ansteuerung DMTL Pumpe ***
|
|
//***********************************
|
|
MENU m_st_dmtl()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung DMTL"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"P EIN") {dmtl_p_ansteuer(1);}
|
|
ITEM( 2,"P AUS") {dmtl_p_ansteuer(0);}
|
|
ITEM( 3,"P DME") {dmtl_p_ansteuer(0xFF);}
|
|
ITEM( 4,"V EIN") {dmtl_v_ansteuer(1);}
|
|
ITEM( 5,"V AUS") {dmtl_v_ansteuer(0);}
|
|
ITEM( 6,"V DME") {dmtl_v_ansteuer(0xFF);}
|
|
ITEM( 7,"H EIN") {dmtl_h_ansteuer(1);}
|
|
ITEM( 8,"H AUS") {dmtl_h_ansteuer(0);}
|
|
ITEM( 9,"H DME") {dmtl_h_ansteuer(0xFF);}
|
|
ITEM(10,"Zurück") {setscreen(s_iostatus_1,TRUE); setmenu(m_iostatus_1);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
//**********************************
|
|
//*** Menü Ansteuerung MIL Lampe ***
|
|
//**********************************
|
|
MENU m_mil_eml()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung MIL/EML"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"MIL EIN") {mil_ansteuer(1);}
|
|
ITEM( 2,"MIL AUS") {mil_ansteuer(0);}
|
|
ITEM( 3,"DME") {mil_ansteuer(0xFF);}
|
|
ITEM( 5,"EML EIN") {eml_ansteuer(1);}
|
|
ITEM( 6,"EML AUS") {eml_ansteuer(0);}
|
|
ITEM( 7,"DME") {eml_ansteuer(0xFF);}
|
|
ITEM(10,"Zurück") {setscreen(s_iostatus_1,TRUE); setmenu(m_iostatus_1);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
//**************************************************
|
|
//*** Menü Ansteuerung Klemme 87/Hauptrelais DME ***
|
|
//**************************************************
|
|
MENU m_kl87()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung Klemme 87/Hauptrelais DME"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"EIN") {kl87_ansteuer(1);}
|
|
ITEM( 2,"AUS") {kl87_ansteuer(0);}
|
|
ITEM( 3,"DME") {kl87_ansteuer(0xFF);}
|
|
ITEM(10,"Zurück") {setscreen(s_iostatus_1,TRUE); setmenu(m_iostatus_1);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
//************************************
|
|
//*** Menü Ansteuerung Startrelais ***
|
|
//************************************
|
|
MENU m_sr()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung Startrelais"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"EIN") {sr_ansteuer(1);}
|
|
ITEM( 2,"AUS") {sr_ansteuer(0);}
|
|
ITEM( 3,"DME") {sr_ansteuer(0xFF);}
|
|
ITEM(10,"Zurück") {setscreen(s_iostatus_1,TRUE); setmenu(m_iostatus_1);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
//***************************************************************
|
|
//*** Menü Ansteuerung Relais Kurbelgehäuseentlüftungsheizung ***
|
|
//***************************************************************
|
|
MENU m_r_kgeh()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung Relais Kurbelgehäuseentlüftungsheizung"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"EIN") {r_kgeh_ansteuer(1);}
|
|
ITEM( 2,"AUS") {r_kgeh_ansteuer(0);}
|
|
ITEM( 3,"DME") {r_kgeh_ansteuer(0xFF);}
|
|
ITEM(10,"Zurück") {setscreen(s_iostatus_1,TRUE); setmenu(m_iostatus_1);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
//**************************************
|
|
//*** Menü Ansteuerung Drosselklappe ***
|
|
//**************************************
|
|
MENU m_dk()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung Drosselklappe"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"0 %") {dk_ansteuer(0);}
|
|
ITEM( 2,"50 %") {dk_ansteuer(50);}
|
|
ITEM( 3,"99 %") {dk_ansteuer(99);}
|
|
ITEM( 4,"DME") {dk_ansteuer(0xFF);}
|
|
ITEM(10,"Zurück") {setscreen(s_iostatus_1,TRUE); setmenu(m_iostatus_1);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
//******************************************
|
|
//*** Menü Ansteuerung Generatorspannung ***
|
|
//******************************************
|
|
MENU m_gen()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung Generatorspannung"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"10 V") {gen_ansteuer(10);}
|
|
ITEM( 2,"11 V") {gen_ansteuer(11);}
|
|
ITEM( 3,"12 V") {gen_ansteuer(12);}
|
|
ITEM( 4,"13 V") {gen_ansteuer(13);}
|
|
ITEM( 5,"14 V") {gen_ansteuer(14);}
|
|
ITEM( 6,"15 V") {gen_ansteuer(15);}
|
|
ITEM( 7,"DME") {gen_ansteuer(0xFF);}
|
|
ITEM(10,"Zurück") {setscreen(s_iostatus_2,TRUE); setmenu(m_iostatus_2);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
//****************************************
|
|
//*** Menü Ansteuerung Öldruckregelung ***
|
|
//****************************************
|
|
MENU m_odr()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung Öldruckregelung"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"3000 hPa") {odr_ansteuer(30);}
|
|
ITEM( 2,"3500 hPa") {odr_ansteuer(35);}
|
|
ITEM( 3,"4000 hPa") {odr_ansteuer(40);}
|
|
ITEM( 4,"4500 hPa") {odr_ansteuer(45);}
|
|
ITEM( 5,"5000 hPa") {odr_ansteuer(50);}
|
|
ITEM( 6,"5500 hPa") {odr_ansteuer(55);}
|
|
ITEM( 7,"6000 hPa") {odr_ansteuer(60);}
|
|
ITEM( 8,"6500 hPa") {odr_ansteuer(65);}
|
|
ITEM( 9,"7000 hPa") {odr_ansteuer(70);}
|
|
ITEM(10,"Zurück") {setscreen(s_iostatus_2,TRUE); setmenu(m_iostatus_2);}
|
|
ITEM(11,"7500 hPa") {odr_ansteuer(75);}
|
|
ITEM(12,"8000 hPa") {odr_ansteuer(80);}
|
|
ITEM(13,"DME") {odr_ansteuer(0xFF);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
//**************************************
|
|
//** Menü Ansteuerung Öldruckventil ****
|
|
//**************************************
|
|
MENU m_odv()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung Öldruckventil"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"0 %") {odv_ansteuer(0);}
|
|
ITEM( 2,"10 %") {odv_ansteuer(10);}
|
|
ITEM( 3,"20 %") {odv_ansteuer(20);}
|
|
ITEM( 4,"30 %") {odv_ansteuer(30);}
|
|
ITEM( 5,"40 %") {odv_ansteuer(40);}
|
|
ITEM( 6,"50 %") {odv_ansteuer(50);}
|
|
ITEM( 7,"60 %") {odv_ansteuer(60);}
|
|
ITEM( 8,"70 %") {odv_ansteuer(70);}
|
|
ITEM( 9,"80 %") {odv_ansteuer(80);}
|
|
ITEM(10,"Zurück") {setscreen(s_iostatus_2,TRUE); setmenu(m_iostatus_2);}
|
|
ITEM(11,"90 %") {odv_ansteuer(90);}
|
|
ITEM(12,"99 %") {odv_ansteuer(99);}
|
|
ITEM(13,"DME") {odv_ansteuer(0xFF);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
//*****************************************
|
|
//*** Menü Ansteuerung Ladrdrucksteller ***
|
|
//*****************************************
|
|
MENU m_lds()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung Ladedrucksteller"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"0 %") {taste=0;}
|
|
ITEM( 2,"25 %") {taste=25;}
|
|
ITEM( 3,"50 %") {taste=50;}
|
|
ITEM( 4,"75 %") {taste=75;}
|
|
ITEM( 5,"99 %") {taste=99;}
|
|
ITEM( 6,"DME") {taste=0xFF;}
|
|
ITEM( 7,"LDS-1") {lds1_ansteuer(taste);}
|
|
ITEM( 8,"LDS-2") {lds2_ansteuer(taste);}
|
|
ITEM(10,"Zurück") {setscreen(s_iostatus_2,TRUE); setmenu(m_iostatus_2);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
//***********************************
|
|
//*** Menü Ansteuerung Motorlager ***
|
|
//***********************************
|
|
MENU m_mls()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung Motorlager"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"Ein") {mls_ansteuer(1);}
|
|
ITEM( 2,"Aus") {mls_ansteuer(0);}
|
|
ITEM( 3,"DME") {mls_ansteuer(0xFF);}
|
|
ITEM(10,"Zurück") {setscreen(s_iostatus_2,TRUE); setmenu(m_iostatus_2);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
//*******************************************
|
|
//*** Menü Ansteuerung Mengensteuerventil ***
|
|
//*******************************************
|
|
MENU m_msv()
|
|
{
|
|
|
|
string s, s1;
|
|
int i;
|
|
|
|
INIT {setmenutitle("Ansteuerung Mengensteuerventil"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"75000 hPa") {msv_ansteuer(75);}
|
|
ITEM( 2,"100000 hPa") {msv_ansteuer(100);}
|
|
ITEM( 3,"125000 hPa") {msv_ansteuer(125);}
|
|
ITEM( 4,"150000 hPa") {msv_ansteuer(150);}
|
|
ITEM( 5,"175000 hPa") {msv_ansteuer(175);}
|
|
ITEM( 6,"DME")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
INPAapiJob(sgbd,"STEUERN_ENDE_BETRIEBSART","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 == "OKAY")
|
|
{
|
|
msv_ansteuer(0xFF);
|
|
}
|
|
else messagebox("STEUERN_ENDE_BETRIEBSART",s1);
|
|
}
|
|
ITEM( 8,"Homogen")
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
INPAapiJob(sgbd,"DATEN_REFERENZ_LESEN","","");
|
|
INPAapiResultText(s1,"DATEN_REF_PROGRAMM_STAND",1,"");
|
|
midstr(s,s1,1,1);
|
|
stringtoint(s,i);
|
|
if (i >= 4) {INPAapiJob(sgbd,"STEUERN_BETRIEBSART","1","");}
|
|
else {INPAapiJob(sgbd,"_STEUERN_BETRIEBSART_ALT","1","");}
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY")
|
|
{
|
|
messagebox("STEUERN_BETRIEBSART",s1);
|
|
}
|
|
}
|
|
ITEM(10,"Zurück") {setscreen(s_iostatus_2,TRUE); setmenu(m_iostatus_2);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
//************************************************
|
|
//*** Menü Ansteuerung Abgasrückführungsventil ***
|
|
//************************************************
|
|
MENU m_agr()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung Abgasrückführungsventil"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"0 %") {agr_ansteuer(0);}
|
|
ITEM( 2,"25 %") {agr_ansteuer(25);}
|
|
ITEM( 3,"50 %") {agr_ansteuer(50);}
|
|
ITEM( 4,"75 %") {agr_ansteuer(75);}
|
|
ITEM( 5,"99 %") {agr_ansteuer(99);}
|
|
ITEM( 6,"DME") {agr_ansteuer(0xFF);}
|
|
ITEM(10,"Zurück") {setscreen(s_iostatus_2,TRUE); setmenu(m_iostatus_2);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
//**********************************************
|
|
//** Menü Ansteuerung Drosselklappenheizung ****
|
|
//**********************************************
|
|
MENU m_dkh()
|
|
{
|
|
INIT {setmenutitle("Ansteuerung Drosselklappenheizung"); ftextout("Setzen der Ansteuerung über I/O Status",3,3,0,3);}
|
|
ITEM( 1,"EIN") {dkh_ansteuer(1);}
|
|
ITEM( 2,"AUS") {dkh_ansteuer(0);}
|
|
ITEM( 3,"DME") {dkh_ansteuer(0xFF);}
|
|
ITEM(10,"Zurück") {setscreen(s_iostatus_2,TRUE); setmenu(m_iostatus_2);}
|
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|
}
|
|
|
|
// ****************************************************************************
|
|
// *** S c r e e n a u f b a u ***
|
|
// ****************************************************************************
|
|
|
|
// ************************
|
|
// *** SGBD-Auswahlmenu ***
|
|
// ************************
|
|
SCREEN s_sgbd_auswahl()
|
|
{
|
|
int z1=2;
|
|
|
|
userboxclose(0);
|
|
textout(blank,0,0);
|
|
|
|
ftextout("Steuergeräteauswahl ( DME 12Zyl )",z1,5,0,3);
|
|
z1=z1+1;
|
|
textout("------------------------------------------------------------------------------------------------------------",z1,5);
|
|
z1=z1+3;
|
|
|
|
textout("< F1 >" ,z1,5); textout("Auswahl DMER" ,z1,16); textout("| Master MSD87 12-Zyl." ,z1,34) ; z1=z1+1 ;
|
|
textout("< F2 >" ,z1,5); textout("Auswahl DMEL" ,z1,16); textout("| Slave MSD87 12-Zyl." ,z1,34) ; z1=z1+3 ;
|
|
textout("< F10 >",z1,5); textout("Exit",z1,16) ;
|
|
stop();
|
|
|
|
} // end: SCREEN s_sgbd_auswahl()
|
|
|
|
|
|
// *******************
|
|
// *** Hauptscreen ***
|
|
// *******************
|
|
SCREEN s_main()
|
|
{
|
|
string s_temp;
|
|
blankscreen();
|
|
userboxclose(0);
|
|
ftextout(dme_text + " Hauptmenü",0,25,1,1);
|
|
|
|
textout("SGBD = "+sgbd,5,5);
|
|
textout("sg_adr = 0x12",6,5);
|
|
|
|
textout("< F1 > SGBD - Info" , 9, 5);
|
|
// textout("< Shift > + < F1 > OBD-Status über Scantool" , 9,45);
|
|
textout("< F2 > SG-Identifikation" ,10, 5);
|
|
if (EAversion == TRUE) textout("< Shift > + < F2 > UDS-Service-Test" ,10,45);
|
|
// textout("< F3 > AnwenderInfoFeld AIF" ,11, 5);
|
|
textout("< F4 > Fehlerspeicher lesen" ,12, 5);
|
|
textout("< F5 > Status Analog / Digital" ,13, 5);
|
|
// textout("< F6 > Stellgliedansteuerungen" ,14, 5);
|
|
// textout("< F7 > Speicher lesen" ,15, 5);
|
|
// textout("< F8 > Adaptionswerte selektiv löschen",16, 5);
|
|
textout("< F9 > Systemdiagnosen" ,17, 5);
|
|
textout("< F10 > INPA beenden" ,19, 5);
|
|
if (EAversion == TRUE) textout("< Shift > + < F6 > EWS4 - Startwertabgleich" ,14,45);
|
|
textout("< Shift > + < F10> SLEEP Mode" ,19,45);
|
|
stop();
|
|
}
|
|
|
|
// **************************************
|
|
// *** Screen für Adaptionen löschen ***
|
|
// **************************************
|
|
SCREEN s_ada_loe()
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Adaptionen selektiv löschen",0,15,1,1);
|
|
textout("< F1 > Adaptionen selektiv löschen 1" , 5, 5);
|
|
// textout("< F2 > Adaptionen selektiv löschen 2" , 6, 5);
|
|
textout("< F10 > Zurück" ,15, 5);
|
|
textout("< Shift > + < F10 > INPA beenden" ,15,45);
|
|
stop();
|
|
}
|
|
|
|
// **************************************
|
|
// *** Screen für Adaptionen löschen ***
|
|
// **************************************
|
|
SCREEN s_ada_loe_1()
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Adaptionen selektiv löschen 1",0,15,1,1);
|
|
ftextout("Aktivierungsbedingung: " + ab_0002 + " UND " + ab_0001 + ";", 3, 5,0,1);
|
|
// textout("< F1 > Leerlaufabgleich" , 5, 5);
|
|
// textout("< F2 > Klopfen" , 6, 5);
|
|
textout("< F3 > Lambdasonden" , 7, 5);
|
|
// textout("< F4 > Tankentlüftung" , 8, 5);
|
|
// textout("< F5 > Saugrohrmodell" , 9, 5);
|
|
textout("< F6 > Drosselklappe" ,10, 5);
|
|
// textout("< F7 > Lambdaregelung" ,11, 5);
|
|
// textout("< F8 > Abgasrückführungsventil" ,12, 5);
|
|
// textout("< F9 > Laststeuerung" ,13, 5);
|
|
textout("< F10 > Zurück" ,15, 5);
|
|
// textout("< Shift > + < F1 > NOx-Sensor" , 5,45);
|
|
// textout("< Shift > + < F2 > Sekundärluft" , 6,45);
|
|
// textout("< Shift > + < F3 > Mengensteuerventil" , 7,45);
|
|
// textout("< Shift > + < F4 > Batteriewechsel" , 8,45);
|
|
// textout("< Shift > + < F5 > Oktanzahl" , 9,45);
|
|
textout("< Shift > + < F6 > gelernte Varianten" ,10,45);
|
|
// textout("< Shift > + < F7 > VANOS" ,11,45);
|
|
// textout("< Shift > + < F8 > Segmentzeit" ,12,45);
|
|
// textout("< Shift > + < F9 > Verbrennungsregelung" ,13,45);
|
|
textout("< Shift > + < F10 > INPA beenden" ,15,45);
|
|
stop();
|
|
}
|
|
|
|
// **************************************
|
|
// *** Screen für Adaptionen löschen ***
|
|
// **************************************
|
|
SCREEN s_ada_loe_2()
|
|
{
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Adaptionen selektiv löschen 2",0,15,1,1);
|
|
ftextout("Aktivierungsbedingung: " + ab_0002 + " UND " + ab_0001 + ";", 3, 5,0,1);
|
|
textout("< F1 > Zylindergleichstellung für EOL-Test und Fahrzyklus" , 5, 5);
|
|
textout("< F2 > Laufunruhe aus Zylindergleichstellung (Faktor und Offset)" , 6, 5);
|
|
textout("< F3 > Lambdasonden Phaseshift Bank 1" , 7, 5);
|
|
textout("< F4 > Lambdasonden Phaseshift Bank 2" , 8, 5);
|
|
textout("< F5 > Energieabgleich Injektoren" , 9, 5);
|
|
ftextout("< F6 > Alle Adaptionen ausser Tempomat" ,10, 5,0,1);
|
|
textout("< F10 > Zurück" ,12, 5);
|
|
textout("< Shift > + < F10 > INPA beenden" ,12,45);
|
|
stop();
|
|
}
|
|
|
|
// **********************************
|
|
// *** Screen für Systemdiagnosen ***
|
|
// **********************************
|
|
SCREEN s_system()
|
|
{
|
|
string f1;
|
|
int y1, z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
blankscreen();
|
|
y1=1;inttostring(y1,f1);z1=3;
|
|
ftextout(dme_text + " Bandende Diagnosen",0,5,1,1);
|
|
// textout("< F" + f1 +" > EOL Betriebsartenumschaltung",z1,5);
|
|
// textout("< Shift > + < F" + f1 +" > EOL GEN Systemtest",z1,45);
|
|
y1=y1+1;inttostring(y1,f1);
|
|
z1=z1+2;
|
|
textout("< F" + f1 +" > EOL EV-Ausblenden",z1,5);
|
|
// textout("< Shift > + < F" + f1 +" > EOL Ruhestrommessung",z1,45);
|
|
y1=y1+1;inttostring(y1,f1);
|
|
z1=z1+2;
|
|
// textout("< F" + f1 +" > EOL vertauschte L-Sonden",z1,5);
|
|
// textout("< Shift > + < F" + f1 +" > EOL Desulfatisierung",z1,45);
|
|
y1=y1+1;inttostring(y1,f1);
|
|
z1=z1+2;
|
|
// textout("< F" + f1 +" > EOL LL-Erhöhung Bandende",z1,5);
|
|
textout("< Shift > + < F" + f1 +" > EOL Injektormengenabgleich",z1,45);
|
|
y1=y1+1;inttostring(y1,f1);z1=z1+2;
|
|
// textout("< F" + f1 +" > EOL TEV Systemtest",z1,5);
|
|
y1=y1+1;inttostring(y1,f1);z1=z1+2;
|
|
// textout("< F" + f1 +" > EOL LL-Abgleich lesen, setzen und programmieren",z1,5);
|
|
y1=y1+1;inttostring(y1,f1);z1=z1+2;
|
|
// textout("< F" + f1 +" > EOL DMTL Systemtest",z1,5);
|
|
y1=y1+1;inttostring(y1,f1);z1=z1+2;
|
|
textout("< F" + f1 +" > EOL GLF Systemtest",z1,5);
|
|
y1=y1+1;inttostring(y1,f1);z1=z1+2;
|
|
// textout("< F" + f1 +" > EOL ODR Systemtest",z1,5);
|
|
z1=z1+4;
|
|
textout("< F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden" ,z1,45);
|
|
stop();
|
|
}
|
|
|
|
// *****************************************
|
|
// *** Screen Systemdiagnose Betriebsart ***
|
|
// *****************************************
|
|
SCREEN s_system_ba()
|
|
{
|
|
string s1;
|
|
int i1;
|
|
bool b_soll_hom, b_soll_hom_sch, b_soll_sch, b_soll_hom_lam_1;
|
|
bool b_ist_hom, b_ist_hom_sch, b_ist_sch, b_ist_hom_lam_1;
|
|
|
|
ftextout(dme_text + " Systemtest Betriebsartenumschaltung",0,15,1,1);
|
|
textout("=========================================================================================",2,0);
|
|
textout(" < F1 > Start Betriebsartenumschaltung Homogen", 3,5);
|
|
textout(" < F2 > Start Betriebsartenumschaltung Homogen-Schicht", 4,5);
|
|
textout(" < F3 > Start Betriebsartenumschaltung Schicht", 5,5);
|
|
textout(" < F4 > Start Betriebsartenumschaltung Homogen & Lambda = 1", 6,5);
|
|
textout(" < F5 > Stop Betriebsartenumschaltung", 7,5);
|
|
textout(" < F10 > Zurück", 9,5);
|
|
textout("< Shift > + < F10 > INPA beenden", 9,45);
|
|
|
|
INPAapiJob(sgbd,"STATUS_BETRIEBSART","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
|
|
LINE("Status Soll-Betriebsart","STAT_STAT_BA_SOLL_WERT")
|
|
{
|
|
INPAapiResultInt(i1,"STAT_STAT_BA_SOLL_WERT",1);
|
|
if (i1 == 1) {b_soll_hom = 0; b_soll_hom_sch = 0; b_soll_sch = 1; b_soll_hom_lam_1 = 0;}
|
|
if (i1 == 2) {b_soll_hom = 1; b_soll_hom_sch = 0; b_soll_sch = 0; b_soll_hom_lam_1 = 0;}
|
|
if (i1 == 3) {b_soll_hom = 0; b_soll_hom_sch = 1; b_soll_sch = 0; b_soll_hom_lam_1 = 0;}
|
|
ftextout("Soll-Betriebsart",1,35,0,1);
|
|
text(2, 1,"Homogen");
|
|
digitalout(b_soll_hom , 3, 1," EIN "," AUS ");
|
|
text(2,31,"Homogen-Schicht");
|
|
digitalout(b_soll_hom_sch , 3,31," EIN "," AUS ");
|
|
text(2,61,"Schicht");
|
|
digitalout(b_soll_sch , 3,61," EIN "," AUS ");
|
|
}
|
|
LINE("Status Ist-Betriebsart","STAT_STAT_BA_IST_WERT")
|
|
{
|
|
INPAapiResultInt(i1,"STAT_STAT_BA_IST_WERT",1);
|
|
if (i1 == 1) {b_ist_hom = 0; b_ist_hom_sch = 0; b_ist_sch = 1; b_ist_hom_lam_1 = 0;}
|
|
if (i1 == 2) {b_ist_hom = 1; b_ist_hom_sch = 0; b_ist_sch = 0; b_ist_hom_lam_1 = 0;}
|
|
if (i1 == 3) {b_ist_hom = 0; b_ist_hom_sch = 1; b_ist_sch = 0; b_ist_hom_lam_1 = 0;}
|
|
ftextout("Ist-Betriebsart",1,35,0,1);
|
|
text(2, 1,"Homogen");
|
|
digitalout(b_ist_hom , 3, 1," EIN "," AUS ");
|
|
text(2,31,"Homogen-Schicht");
|
|
digitalout(b_ist_hom_sch , 3,31," EIN "," AUS ");
|
|
text(2,61,"Schicht");
|
|
digitalout(b_ist_sch , 3,61," EIN "," AUS ");
|
|
}
|
|
LINE("Lambdawert vor Katalysator Bank 1, Lambdawert vor Katalysator Bank 2","STAT_LAMBDA_BANK1_WERT;STAT_LAMBDA_BANK2_WERT")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5A50,0x5A51","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
ergebnisAnalogAusgabe("STAT_LAMBDA_BANK1_WERT", 3, 0, 0.0, 5.0, 0.0, 5.0,"5.2");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
ftextout("Lambdasondenwerte",1,35,0,1);
|
|
text(2,0,vartext1);
|
|
text(3,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
ergebnisAnalogAusgabe("STAT_LAMBDA_BANK2_WERT", 3, 40, 0.0, 5.0, 0.0, 5.0,"5.2");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(2,40,vartext1);
|
|
text(3,71,vartext2);
|
|
}
|
|
}
|
|
|
|
// ********************************
|
|
// *** Screen Systemdiagnose EV ***
|
|
// ********************************
|
|
SCREEN s_systemtest_ev_ausbl()
|
|
{
|
|
string s1;
|
|
bool tmpBool;
|
|
int status = 255;
|
|
|
|
ftextout(dme_text + " Systemtest Einspritzventil ausblenden",0,5,1,1);
|
|
textout("=========================================================================================",2,0);
|
|
textout(" < F1 > Ventil 1",3,5);
|
|
textout(" < F2 > Ventil 2",4,5);
|
|
textout(" < F3 > Ventil 3",5,5);
|
|
textout(" < F4 > Ventil 4",6,5);
|
|
textout(" < F5 > Ventil 5",7,5);
|
|
textout(" < F6 > Ventil 6",8,5);
|
|
|
|
if (zylinderZahl == 8) {
|
|
textout(" < F7 > Ventil 7",9,5);
|
|
textout(" < F8 > Ventil 8",10,5);
|
|
}
|
|
|
|
textout(" < F8 > Zurück an DME",11,5);
|
|
textout(" < F10 > Zurück",12,5);
|
|
textout("< Shift > + < F10 > INPA beenden", 12,45);
|
|
|
|
textout("=== Status Ventil ausblenden ===",14,15);
|
|
|
|
INPAapiJob(sgbd,"STATUS_SYSTEMCHECK_EVAUSBL","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
|
|
if (s1 != "OKAY") messagebox("STATUS_SYSTEMCHECK_EVAUSBL",s1);
|
|
INPAapiResultInt(status,"STAT_VENTIL_NR",1);
|
|
tmpBool = 1;
|
|
|
|
if( status == 1 ) tmpBool = 0;
|
|
digitalout( tmpBool, 20, 5, "", "");
|
|
tmpBool = 1;
|
|
|
|
if( status == 2 ) tmpBool = 0;
|
|
digitalout( tmpBool, 20, 10, "", "");
|
|
tmpBool = 1;
|
|
|
|
if( status == 4 ) tmpBool = 0;
|
|
digitalout( tmpBool, 20, 15, "", "");
|
|
tmpBool = 1;
|
|
|
|
if( status == 8 ) tmpBool = 0;
|
|
digitalout( tmpBool, 20, 20, "", "");
|
|
tmpBool = 1;
|
|
|
|
if( status == 16 ) tmpBool = 0;
|
|
digitalout( tmpBool, 20, 25, "", "");
|
|
tmpBool = 1;
|
|
|
|
if( status == 32) tmpBool = 0;
|
|
digitalout( tmpBool, 20, 30, "", "");
|
|
tmpBool = 1;
|
|
|
|
if (zylinderZahl == 8) {
|
|
if (status ==64 ) tmpBool = 0;
|
|
digitalout( tmpBool, 20, 35, "", "");
|
|
tmpBool = 1;
|
|
|
|
if (status == 128 ) tmpBool = 0;
|
|
digitalout( tmpBool, 20, 40, "", "");
|
|
tmpBool = 1;
|
|
}
|
|
|
|
delay(3000);
|
|
}
|
|
|
|
// **************************************
|
|
// *** Screen Systemdiagnose L-Sonden ***
|
|
// **************************************
|
|
SCREEN s_system_l_sonde()
|
|
{
|
|
string s1;
|
|
string vartext1;
|
|
string vartext2;
|
|
int status = 255;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Systemtest Lambda Sonden",0,15,1,1);
|
|
textout("========================================================================================",2,0);
|
|
textout(" < F1 > Start Systemtest L-Sonden",3,3);
|
|
textout(" < F2 > Stop Systemtest L-Sonden",4,3);
|
|
textout(" < F4 > Messwerte lesen",5,3);
|
|
textout(" < F10 > Zurück",6,3);
|
|
|
|
INPAapiJob(sgbd,"STATUS_SYSTEMCHECK_L_SONDE","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
INPAapiResultText(s1,"STAT_DIAGNOSE_1_TEXT",1,"");
|
|
s1 = "Status Systemtest: " + s1;
|
|
textout(blank,4,38);
|
|
textout(s1,4,38);
|
|
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5A50,0x5A51,0x5A13,0x5A14","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT", 10, 0, 0.0, 1.5, 0.0, 1.5,"5.2");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text( 9,0,vartext1);
|
|
text(10,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT", 10, 40, 0.0, 1.5, 0.0, 1.5,"5.2");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text( 9,40,vartext1);
|
|
text(10,71,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT2_TEXT",1,"");
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT2_WERT", 19, 0, 0.0, 1.5, 0.0, 1.5,"5.2");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT2_EINH",1,"");
|
|
text(18,0,vartext1);
|
|
text(19,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT3_TEXT",1,"");
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT3_WERT", 19, 40, 0.0, 1.5, 0.0, 1.5,"5.2");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT3_EINH",1,"");
|
|
text(18,40,vartext1);
|
|
text(19,71,vartext2);
|
|
|
|
INPAapiJob(sgbd,"STATUS_SYSTEMCHECK_L_SONDE","","");
|
|
INPAapiResultText(vartext1,"STAT_DIAGNOSE_2_TEXT",1,"");
|
|
vartext1 = "Diagnoseschritt: " + vartext1;
|
|
textout(blank,6,38);
|
|
textout(vartext1,6,38);
|
|
|
|
text(12,0,"Lambdawert LAMB_LS_UP_AFR_EOL_1");
|
|
ergebnisAnalogAusgabe("STAT_LAMB_LS_UP_AFR_EOL_1_WERT", 13, 0, 0.0, 1.5, 0.0, 1.5,"5.2");
|
|
text(13,31,"-");
|
|
text(12,40,"Lambdawert LAMB_LS_UP_AFR_EOL_2");
|
|
ergebnisAnalogAusgabe("STAT_LAMB_LS_UP_AFR_EOL_2_WERT", 13, 40, 0.0, 1.5, 0.0, 1.5,"5.2");
|
|
text(13,71,"-");
|
|
text(15,0,"Lambdawert LAMB_LS_UP_AFL_EOL_1");
|
|
ergebnisAnalogAusgabe("STAT_LAMB_LS_UP_AFL_EOL_1_WERT", 16, 0, 0.0, 1.5, 0.0, 1.5,"5.2");
|
|
text(16,31,"-");
|
|
text(15,40,"Lambdawert LAMB_LS_UP_AFL_EOL_2");
|
|
ergebnisAnalogAusgabe("STAT_LAMB_LS_UP_AFL_EOL_2_WERT", 16, 40, 0.0, 1.5, 0.0, 1.5,"5.2");
|
|
text(16,71,"-");
|
|
|
|
text(21,0,"Spannung VLS_DOWN_AFR_EOL_1");
|
|
ergebnisAnalogAusgabe("STAT_VLS_DOWN_AFR_EOL_1_WERT", 22, 0, 0.0, 1.0, 0.0, 1.0,"5.2");
|
|
text(22,31,"V");
|
|
text(21,40,"Spannung VLS_DOWN_AFR_EOL_2");
|
|
ergebnisAnalogAusgabe("STAT_VLS_DOWN_AFR_EOL_2_WERT", 22, 40, 0.0, 1.0, 0.0, 1.0,"5.2");
|
|
text(22,71,"V");
|
|
text(24,0,"Spannung VLS_DOWN_AFL_EOL_1");
|
|
ergebnisAnalogAusgabe("STAT_VLS_DOWN_AFL_EOL_1_WERT", 25, 0, 0.0, 1.0, 0.0, 1.0,"5.2");
|
|
text(25,31,"V");
|
|
text(24,40,"Spannung VLS_DOWN_AFL_EOL_2");
|
|
ergebnisAnalogAusgabe("STAT_VLS_DOWN_AFL_EOL_2_WERT", 25, 40, 0.0, 1.0, 0.0, 1.0,"5.2");
|
|
text(25,71,"V");
|
|
|
|
text(27,0,"Luftmasse MAF_INT_MIN_VLS");
|
|
ergebnisAnalogAusgabe("STAT_MAF_INT_MIN_VLS_EOL_WERT", 28, 0, 0.0, 300.0, 0.0, 300.0,"6.1");
|
|
text(28,31,"g");
|
|
|
|
delay(1000);
|
|
}
|
|
|
|
// **************************
|
|
// *** LL-Erhöhung setzen ***
|
|
// **************************
|
|
SCREEN s_system_llerh()
|
|
{
|
|
string temp;
|
|
string s1;
|
|
string hilfe;
|
|
|
|
ftextout(dme_text + " Systemtest LL-Drehzahl verstellen",0,15,1,1);
|
|
textout("=========================================================================================",2,0);
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x4807","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
|
|
|
|
s1 = "LL - Istwert";
|
|
ftextout(s1,10,10,1,1);
|
|
s1 = "LL - Sollwert";
|
|
ftextout(s1,10,40,1,1);
|
|
INPAapiResultInt(ll_wert,"STAT_MESSWERT0_WERT",1);
|
|
//INPAapiResultInt(ll_wert,"STAT_MOTORDREHZAHL_WERT",1);
|
|
|
|
|
|
|
|
|
|
inttostring(ll_wert,temp);
|
|
ftextout(blank,12,0,1,1);
|
|
ftextout(temp,12,15,1,1);
|
|
INPAapiResultInt(ll_wert,"STAT_MESSWERT0_WERT",1);
|
|
// INPAapiResultInt(ll_wert,"STAT_SOLL_MOTORDREHZAHL_WERT",1);
|
|
inttostring(ll_wert,temp);
|
|
ftextout(temp,12,45,1,1);
|
|
|
|
delay(200);
|
|
}
|
|
|
|
//***********************************
|
|
//*** Ende LL-Drehzahl verstellen ***
|
|
//***********************************
|
|
SCREEN s_system_llerh_stop()
|
|
{
|
|
string s1;
|
|
|
|
INPAapiJob(sgbd,"STOP_SYSTEMCHECK_LLERH","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STOP_SYSTEMCHECK_LLERH",s1); stop(); }
|
|
|
|
INPAapiJob(sgbd,"STATUS_SYSTEMCHECK_LLERH","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY")
|
|
{
|
|
messagebox("STATUS_SYSTEMCHECK_LLERH",s1);
|
|
}
|
|
ftextout("Aktuelle Drehzahl: ",10,10,1,1);
|
|
INPAapiResultInt(ll_wert,"STAT_SYSTEMCHECK_LLERH_WERT",1);
|
|
inttostring(ll_wert,s1);
|
|
ftextout(blank,12,0,1,1);
|
|
ftextout(s1,12,15,1,1);
|
|
}
|
|
|
|
// *********************************
|
|
// *** Screen Systemdiagnose TEV ***
|
|
// *********************************
|
|
SCREEN s_systemtest_tev()
|
|
{
|
|
string s1;
|
|
int z1, status;
|
|
|
|
status = 0;
|
|
|
|
ftextout(dme_text + " Systemstest TankEntlüftungsVentil",0,15,1,1);
|
|
textout("=========================================================================================",2,0);
|
|
textout(" < F1 > Start Systemtest TEV",3,5);
|
|
textout(" < F2 > Stop Systemtest TEV",4,5);
|
|
textout(" < F10 > Zurück",6,5);
|
|
textout("< Shift > + < F10 > INPA beenden", 6,40);
|
|
|
|
INPAapiJob(sgbd,"STATUS_SYSTEMCHECK_TEV","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STATUS_SYSTEMCHECK_TEV",s1); stop(); }
|
|
INPAapiResultInt(i_temp,"STAT_DIAGNOSE_1_WERT",1);
|
|
if( i_temp != 5 ) durchlauf = 0;
|
|
INPAapiResultText(s1,"STAT_DIAGNOSE_1_TEXT",1,"");
|
|
s1 = "Status Systemtest: " + s1;
|
|
textout(blank,9,0);
|
|
textout(s1,9,2);
|
|
delay(1000);
|
|
|
|
INPAapiResultText(s1,"STAT_DIAGNOSE_2_TEXT",1,"");
|
|
textout(blank,12,0);
|
|
textout(s1,12,2);
|
|
textout("Anzahl Diagnosen SUM_DIAG_DIAGCPS_EOL",14, 2);
|
|
textout("Anzahl Schleifen in Stufe 2 SUM_FLOW_SP_DIAGCPS_EOL",14,40);
|
|
INPAapiResultInt(status,"STAT_SYSTEMCHECK_TEV_FUNC_1_WERT",1);
|
|
inttostring(status,s1);
|
|
textout(blank,15,0);
|
|
textout("Zyklus 1 : "+s1,15,2);
|
|
INPAapiResultInt(status,"STAT_SYSTEMCHECK_TEV_FUNC_2_WERT",1);
|
|
inttostring(status,s1);
|
|
textout("Zyklus 2 : "+s1,15,40);
|
|
|
|
INPAapiResultInt(status,"STAT_DIAGNOSE_2_WERT",1);
|
|
inttostring(durchlauf,s1);
|
|
textout(blank,24,0);
|
|
textout("Diagnosezeit : "+s1+" s",24,2);
|
|
durchlauf = durchlauf + 1;
|
|
}
|
|
|
|
// **************************
|
|
// *** LL-Abgleich setzen ***
|
|
// **************************
|
|
SCREEN s_llabgl()
|
|
{
|
|
string temp;
|
|
string s1;
|
|
string unit;
|
|
|
|
blankscreen();
|
|
ftextout(dme_text + " Systemtest Leerlauf Drehzahlabgleich",0,15,1,1);
|
|
textout("=========================================================================================",2,0);
|
|
|
|
if (taste == 1)
|
|
{
|
|
inttostring(ll_acc_dri,temp);
|
|
s1 = temp + ";";
|
|
inttostring(ll_dri,temp);
|
|
s1 = s1 + temp + ";";
|
|
inttostring(ll_ofs,temp);
|
|
s1 = s1 + temp + ";";
|
|
inttostring(ll_acc,temp);
|
|
s1 = s1 + temp + ";";
|
|
inttostring(ll_vb,temp);
|
|
s1 = s1 + temp + ";";
|
|
INPAapiJob(sgbd,"STEUERN_LL_ABGLEICH",s1,"");
|
|
INPAapiResultText(s1, "JOB_STATUS", 1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_LL_ABGLEICH",s1); stop(); }
|
|
}
|
|
|
|
if (taste == 2)
|
|
{
|
|
inttostring(ll_acc_dri,temp);
|
|
s1 = temp + ";";
|
|
inttostring(ll_dri,temp);
|
|
s1 = s1 + temp + ";";
|
|
inttostring(ll_ofs,temp);
|
|
s1 = s1 + temp + ";";
|
|
inttostring(ll_acc,temp);
|
|
s1 = s1 + temp + ";";
|
|
inttostring(ll_vb,temp);
|
|
s1 = s1 + temp + ";";
|
|
INPAapiJob(sgbd,"STEUERN_LLABG_PROG",s1,"");
|
|
INPAapiResultText(s1, "JOB_STATUS", 1,"");
|
|
if (s1 != "OKAY") { messagebox("STEUERN_LLABG_PROG",s1); stop(); }
|
|
textout("Leerlaufabgleich dauerhaft gespeichert",14,5);
|
|
delay(3000);
|
|
}
|
|
|
|
INPAapiJob(sgbd,"STATUS_LL_ABGLEICH","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STATUS_LL_ABGLEICH",s1); stop(); }
|
|
INPAapiResultText(unit,"STAT_OFS_EINH",1,"");
|
|
INPAapiResultInt(ll_wert,"STAT_OFS_ACC_DRI_WERT",1);
|
|
inttostring(ll_wert,s1);
|
|
s1 = s1 + " " + unit;
|
|
textout(blank,3,0);
|
|
textout(s1,3,10);
|
|
s1 = "LL - Abgleich mit Klima und Fahrstufe";
|
|
textout(s1,3,20);
|
|
INPAapiResultInt(ll_wert,"STAT_OFS_DRI_WERT",1);
|
|
inttostring(ll_wert,s1);
|
|
s1 = s1 + " " + unit;
|
|
textout(blank,5,0);
|
|
textout(s1,5,10);
|
|
s1 = "LL - Abgleich mit Fahrstufe";
|
|
textout(s1,5,20);
|
|
INPAapiResultInt(ll_wert,"STAT_OFS_WERT",1);
|
|
inttostring(ll_wert,s1);
|
|
s1 = s1 + " " + unit;
|
|
textout(blank,7,0);
|
|
textout(s1,7,10);
|
|
s1 = "LL - Abgleich";
|
|
textout(s1,7,20);
|
|
INPAapiResultInt(ll_wert,"STAT_OFS_ACC_WERT",1);
|
|
inttostring(ll_wert,s1);
|
|
s1 = s1 + " " + unit;
|
|
textout(blank,9,0);
|
|
textout(s1,9,10);
|
|
s1 = "LL - Abgleich mit Klima";
|
|
textout(s1,9,20);
|
|
INPAapiResultInt(ll_wert,"STAT_OFS_VB_WERT",1);
|
|
inttostring(ll_wert,s1);
|
|
s1 = s1 + " " + unit;
|
|
textout(blank,11,0);
|
|
textout(s1,11,10);
|
|
s1 = "LL - Abgleich für Batterieladen";
|
|
textout(s1,11,20);
|
|
|
|
textout(" < F1 > Setzen LL - Abgleich mit Klima und Fahrstufe",20,5);
|
|
textout(" < F2 > Setzen LL - Abgleich mit Fahrstufe",21,5);
|
|
textout(" < F3 > Setzen LL - Abgleich",22,5);
|
|
textout(" < F4 > Setzen LL - Abgleich mit Klima",23,5);
|
|
textout(" < F5 > Setzen LL - Abgleich für Batterieladen",24,5);
|
|
textout(" < F8 > aktuelle Werte",27,5);
|
|
textout(" < F9 > Werte dauerhaft speichern",28,5);
|
|
textout(" < F10 > Zurück",29,5);
|
|
stop();
|
|
}
|
|
|
|
// **********************************
|
|
// *** Screen Systemdiagnose DMTL ***
|
|
// **********************************
|
|
SCREEN s_systemtest_dmtl()
|
|
{
|
|
string s1;
|
|
string vartext1;
|
|
string vartext2;
|
|
int status = 255;
|
|
|
|
ftextout(dme_text + " Systemtest DiagnoseModulTankLeckage",0,15,1,1);
|
|
textout("=========================================================================================",2,0);
|
|
textout(" < F1 > Start Systemtest DMTL",3,5);
|
|
textout(" < F2 > Stop Systemtest DMTL",4,5);
|
|
textout(" < F10 > Zurück",8,5);
|
|
textout("< Shift > + < F10 > INPA beenden", 8,45);
|
|
|
|
INPAapiJob(sgbd,"STATUS_SYSTEMCHECK_DMTL","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY")
|
|
{
|
|
messagebox("STATUS_SYSTEMCHECK_DMTL",s1);
|
|
stop();
|
|
}
|
|
else
|
|
{
|
|
INPAapiResultText(s1,"STAT_DIAGNOSE_1_TEXT",1,"");
|
|
textout("=== Status Systemcheck ===",11,15);
|
|
textout(blank,12,0);
|
|
textout(s1,12,15);
|
|
INPAapiResultInt(status,"STAT_DIAGNOSE_1_WERT",1);
|
|
if ( status > 7 ) stop();
|
|
}
|
|
|
|
if ( status == 5 )
|
|
{
|
|
inttostring(durchlauf,s1);
|
|
textout(blank,14,0);
|
|
textout("Diagnosezeit: "+s1+" s",14,4);
|
|
durchlauf = durchlauf + 1;
|
|
}
|
|
INPAapiResultText(s1,"STAT_DIAGNOSE_2_TEXT",1,"");
|
|
textout("=== Messergebnisse ===",17,0);
|
|
textout(blank,18,0);
|
|
textout(s1,18,0);
|
|
vartext1 = "Strom bei Referenzleck Messung";
|
|
ergebnisAnalogAusgabe("STAT_STROM_REF_WERT", 21, 0, 0.0, 60.0, 15.0, 40.0,"5.1");
|
|
INPAapiResultText(vartext2,"STAT_STROM_REF_EINH",1,"");
|
|
text(20,0,vartext1);
|
|
text(21,31,vartext2);
|
|
vartext1 = "Strom bei Grobleck Messung";
|
|
ergebnisAnalogAusgabe("STAT_STROM_GROB_WERT", 24, 0, 0.0, 60.0, 15.0, 25.0,"5.1");
|
|
INPAapiResultText(vartext2,"STAT_STROM_GROB_EINH",1,"");
|
|
text(23,0,vartext1);
|
|
text(24,31,vartext2);
|
|
vartext1 = "Strom der laufenden Messung";
|
|
ergebnisAnalogAusgabe("STAT_STROM_WERT",27, 0, 0.0, 60.0, 15.0, 40.0,"5.1");
|
|
INPAapiResultText(vartext2,"STAT_STROM_EINH",1,"");
|
|
text(26,0,vartext1);
|
|
text(27,31,vartext2);
|
|
delay(900);
|
|
}
|
|
|
|
// *********************************
|
|
// *** Screen Systemdiagnose GLF ***
|
|
// *********************************
|
|
SCREEN s_systemtest_glf() {
|
|
|
|
string s1="", s2="";
|
|
int status = 255;
|
|
int n=0, rest=0, version=0;
|
|
string sn="", srest="";
|
|
|
|
ftextout(dme_text + " Systemtest Gesteuerte Luftführung",0,13,1,1);
|
|
textout("=========================================================================================",2,0);
|
|
textout(" < F1 > Start Systemtest GLF",3,1);
|
|
textout(" < F2 > Stop Systemtest GLF",4,1);
|
|
textout(" < F10 > Zurück",5,1);
|
|
textout("< Shift > + < F10 > INPA beenden", 5,43);
|
|
|
|
INPAapiJob(sgbd,"STATUS_SYSTEMCHECK_GLF","","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
// Ausgabe HW- & SW-Stand
|
|
INPAapiResultText(s1,"STAT_STATE_ECRAS_UP_VAR",1,"");
|
|
stringtoint(s1, version);
|
|
modInt (version, 16, n, rest);
|
|
inttostring(n, sn);
|
|
inttostring(rest, srest);
|
|
|
|
|
|
textout("AKKS-LIN Hardwarestand: "+sn, 3, 60);
|
|
textout("AKKS-LIN Softwarestand: "+srest, 4, 60);
|
|
|
|
// Sollposition in Schritten
|
|
INPAapiResultAnalog(r_temp,"STAT_CTR_ECRAS_UP_SP",1);
|
|
analogout(r_temp,8, 1, 7500, 12000, 7500, 12000,"5.1");
|
|
text(7, 1, "Soll-Position in Schritten");
|
|
|
|
// Istposition in Schritten
|
|
INPAapiResultAnalog(r_temp,"STAT_CTR_ECRAS_UP",1);
|
|
analogout(r_temp,8, 41, 7500, 12000, 7500, 12000,"5.1");
|
|
text(7, 41, "Ist-Position in Schritten");
|
|
|
|
// Sollposition in Grad
|
|
INPAapiResultAnalog(r_temp,"STAT_ANG_ECRAS_UP_SP_WERT",1);
|
|
analogout(r_temp,11, 1, 0, 120, 0, 120,"5.1");
|
|
text(10, 1, "Soll-Position in Grad");
|
|
|
|
// Istposition in Grad
|
|
INPAapiResultAnalog(r_temp,"STAT_ANG_ECRAS_UP_WERT",1);
|
|
analogout(r_temp,11, 41, 0, 120, 0, 120,"5.1");
|
|
text(10, 41, "Ist-Position in Grad");
|
|
|
|
//delay(100);
|
|
LINE("","") {
|
|
|
|
text(1, 1, "Systemtest aktiv");
|
|
text(2, 1, blank);
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_UP6" ,2, 1,"aktiv"," inaktiv ");
|
|
|
|
text(1, 31, "Anschlagtest 'zu'");
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_UP4" ,2, 31,"aktiv"," inaktiv ");
|
|
|
|
text(1, 61, "Anschlagtest 'auf'");
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_UP5" ,2, 61,"aktiv"," inaktiv ");
|
|
|
|
}
|
|
LINE("","") {
|
|
|
|
text(2, 1, blank);
|
|
text(1, 1, "Variante AKKS-LIN (oben)");
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_UP0" ,2, 1,"vorhanden"," nicht vorhanden ");
|
|
|
|
text(1, 41, "Variante PKKS (unten)");
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_DOWN0" ,2, 41,"vorhanden"," nicht vorhanden ");
|
|
}
|
|
LINE("","") {
|
|
|
|
// text(1, 1, "AKKS-LIN zu");
|
|
textout(blank,2, 1);
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_UP2" ,2, 1,"AKKS-LIN offen","AKKS-LIN nicht offen");
|
|
|
|
// text(1, 41, "LV_ECRAS_UP_CLOSE");
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_UP1" ,2, 41,"AKKS-LIN zu"," AKKS-LIN nicht zu ");
|
|
}
|
|
LINE("","") {
|
|
|
|
text(1, 1, "Fehler im Luftklappengesamtsystem");
|
|
text(2, 1, blank);
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_UP_ERR0" ,2, 1,"Ja"," Nein ");
|
|
|
|
text(1, 41, "Diagnose LIN-Botschaften");
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_UP_ERR1" ,2, 41,"Beendet"," Nicht beendet ");
|
|
}
|
|
LINE("","") {
|
|
|
|
text(1, 1, "Diagnose PKKS");
|
|
textout(blank, 2, 1);
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_UP_ERR2" ,2, 1,"Beendet"," Nicht beendet ");
|
|
|
|
text(1, 41, "Fehler bei der PKKS");
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_DOWN1" ,2, 41,"Vorhanden"," Nicht vorhanden ");
|
|
}
|
|
LINE("","") {
|
|
|
|
text(1, 1, "Diagnose Kommunikation");
|
|
textout(blank, 2, 1);
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_UP_DIAG_END0" ,2, 1,"Beendet"," Nicht beendet ");
|
|
|
|
text(1, 41, "Diagnose Checksumme");
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_UP_DIAG_END1" ,2, 41,"Beendet"," Nicht beendet ");
|
|
}
|
|
LINE("","") {
|
|
|
|
text(1, 1, "Diagnose Spannungspegel im Steller");
|
|
textout(blank, 2, 1);
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_UP_DIAG_END2" ,2, 1,"Beendet"," Nicht beendet ");
|
|
|
|
text(1, 41, "Diagnose Temperaturüberwachung im Steller");
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_UP_DIAG_END3" ,2, 41,"Beendet"," Nicht beendet ");
|
|
}
|
|
LINE("","") {
|
|
|
|
text(1, 1, "Diagnose Elektroniküberwachung im Steller");
|
|
textout(blank, 2, 1);
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_UP_DIAG_END4" ,3, 1,"Beendet"," Nicht beendet ");
|
|
|
|
text(1, 41, "Diagnose Freigängigkeit");
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_UP_DIAG_END7" ,2, 41,"Beendet"," Nicht beendet ");
|
|
}
|
|
LINE("","") {
|
|
|
|
text(1, 41, "Diagnose Anschlagtest 'zu'");
|
|
textout(blank, 2, 1);
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_UP_DIAG_END5" ,2, 1,"Beendet"," Nicht beendet ");
|
|
|
|
text(1, 1, "Diagnose Anschlagtest 'Auf'");
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_UP_DIAG_END6" ,2, 41,"Beendet"," Nicht beendet ");
|
|
}
|
|
LINE("","") {
|
|
|
|
text(1, 1, "Externe Ansteuerung AKKS-LIN");
|
|
textout(blank, 2, 1);
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_UP7" ,2, 1,"Aktiv"," Nicht aktiv ");
|
|
|
|
text(1, 41, "Spannung am Steller");
|
|
ergebnisDigitalAusgabe("STAT_ECRAS_UP_ERR1" ,2, 41,"IO"," NiO ");
|
|
}
|
|
}
|
|
|
|
// *********************************
|
|
// *** Screen Systemdiagnose ODR ***
|
|
// *********************************
|
|
SCREEN s_systemtest_odr()
|
|
{
|
|
string s1;
|
|
string vartext1;
|
|
string vartext2;
|
|
int status = 255;
|
|
|
|
ftextout(dme_text + " Systemtest Öldruckregelung",0,15,1,1);
|
|
textout("=========================================================================================",2,0);
|
|
textout(" < F1 > Start Systemtest Öldruckregelung",3,5);
|
|
textout(" < F2 > Stop Systemtest Öldruckregelung",4,5);
|
|
textout(" < F10 > Zurück",6,5);
|
|
textout("< Shift > + < F10 > INPA beenden", 6,45);
|
|
|
|
INPAapiJob(sgbd,"STATUS_SYSTEMCHECK_ODR","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY")
|
|
{
|
|
messagebox("STATUS_SYSTEMCHECK_ODR",s1);
|
|
stop();
|
|
}
|
|
else
|
|
{
|
|
INPAapiResultText(s1,"STAT_DIAGNOSE_1_TEXT",1,"");
|
|
textout("=== Status Systemcheck ===",8,5);
|
|
textout(blank,9,0);
|
|
textout(s1,9,10);
|
|
INPAapiResultInt(status,"STAT_DIAGNOSE_1_WERT",1);
|
|
inttostring(status,s1);
|
|
textout(s1,9,5);
|
|
if ( status > 7 ) stop();
|
|
INPAapiResultText(s1,"STAT_DIAGNOSE_2_TEXT",1,"");
|
|
textout(blank,11,0);
|
|
textout(s1,11,10);
|
|
INPAapiResultInt(status,"STAT_DIAGNOSE_2_WERT",1);
|
|
inttostring(status,s1);
|
|
textout(s1,11,5);
|
|
textout("",18,5);
|
|
}
|
|
|
|
LINE("Motoröltemperatur","STAT_TOEL_WERT")
|
|
{
|
|
text(0,0,"Motoröltemperatur");
|
|
ergebnisAnalogAusgabe("STAT_TOEL_WERT", 1, 0, -40.0, 160.0, -40.0, 120.0,"4.1");
|
|
INPAapiResultText(s1,"STAT_TOEL_EINH",1,"");
|
|
text(1,33,s1);
|
|
}
|
|
LINE("Sollwert Öldruck, Istwert Öldruck","STAT_P_OEL_SOLL_WERT;STAT_P_OEL_IST_WERT")
|
|
{
|
|
text(0,0,"Sollwert Öldruck");
|
|
ergebnisAnalogAusgabe("STAT_P_OEL_SOLL_WERT", 1, 0, 0.0, 10000.0, 0.0, 10000.0,"6.1");
|
|
INPAapiResultText(s1,"STAT_P_OEL_SOLL_EINH",1,"");
|
|
text(1,33,s1);
|
|
text(0,40,"Istwert Öldruck");
|
|
ergebnisAnalogAusgabe("STAT_P_OEL_IST_WERT", 1,40, 0.0, 10000.0, 0.0, 10000.0,"6.1");
|
|
INPAapiResultText(s1,"STAT_P_OEL_IST_EINH",1,"");
|
|
text(1,73,s1);
|
|
}
|
|
LINE("Sollwert Drehzahl, Istwert Drehzahl","STAT_NKW_SOLL_WERT;STAT_NKW_WERT")
|
|
{
|
|
text(0,0,"Sollwert Drehzahl");
|
|
ergebnisAnalogAusgabe("STAT_NKW_SOLL_WERT", 1, 0, 0.0, 8200.0, 0.0, 7200.0,"5.1");
|
|
INPAapiResultText(s1,"STAT_NKW_SOLL_EINH",1,"");
|
|
text(1,33,s1);
|
|
text(0,40,"Istwert Drehzahl");
|
|
ergebnisAnalogAusgabe("STAT_NKW_WERT", 1,40, 0.0, 8200.0, 0.0, 7200.0,"5.1");
|
|
INPAapiResultText(s1,"STAT_NKW_EINH",1,"");
|
|
text(1,73,s1);
|
|
delay(250);
|
|
}
|
|
}
|
|
|
|
// *********************************
|
|
// *** Screen Systemdiagnose GEN ***
|
|
// *********************************
|
|
SCREEN s_systemtest_gen()
|
|
{
|
|
string s1;
|
|
string vartext1;
|
|
string vartext2;
|
|
int status = 255;
|
|
int i_in;
|
|
bool b_out;
|
|
|
|
ftextout(dme_text + " Systemtest Generator",0,15,1,1);
|
|
textout("=========================================================================================",2,0);
|
|
textout(" < F1 > Start Systemtest Generator",3,5);
|
|
textout(" < F2 > Stop Systemtest Generator",4,5);
|
|
textout(" < F10 > Zurück",6,5);
|
|
textout("< Shift > + < F10 > INPA beenden", 6,45);
|
|
|
|
INPAapiJob(sgbd,"STATUS_SYSTEMCHECK_GEN","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY")
|
|
{
|
|
messagebox("STATUS_SYSTEMCHECK_GEN",s1);
|
|
stop();
|
|
}
|
|
else
|
|
{
|
|
INPAapiResultText(s1,"STAT_DIAGNOSE_1_TEXT",1,"");
|
|
textout("=== Status Systemcheck ===",8,5);
|
|
textout(blank,9,0);
|
|
textout(s1,9,10);
|
|
INPAapiResultInt(status,"STAT_DIAGNOSE_1_WERT",1);
|
|
inttostring(status,s1);
|
|
textout(s1,9,5);
|
|
textout("",10,5);
|
|
if ( status > 7 ) stop();
|
|
}
|
|
|
|
LINE("Status Plausibilität Generatorregler, Status Hochtemperaturfehler Generator aus Berechnung, Status Plausibilität Generatorspannung aus Berechnung","STAT_FI_GENREGUPL_WERT;STAT_FI_GENHTB_WERT;STAT_FI_GENELB_WERT")
|
|
{
|
|
text(0,1,"Status");
|
|
text(1,1,"Plausibilität Generatorregler");
|
|
INPAapiResultInt(i_in,"STAT_FI_GENREGUPL_WERT",1);
|
|
// Hier Negation des Ergebnisses, da im DME Bit gesetzt wenn Fehler vorhanden!
|
|
if (i_in == 0) {b_out = 1;} else {b_out = 0;}
|
|
digitalout(b_out ,2, 1," JA "," NEIN ");
|
|
text(0,30,"Status Hochtemperaturfehler");
|
|
text(1,30,"Generator aus Berechnung");
|
|
ergebnisDigitalAusgabe("STAT_FI_GENHTB_WERT" ,2,30," JA "," NEIN ");
|
|
text(0,60,"Status Plausibilität");
|
|
text(1,60,"Generatorspannung aus Berechnung");
|
|
INPAapiResultInt(i_in,"STAT_FI_GENELB_WERT",1);
|
|
// Hier Negation des Ergebnisses, da im DME Bit gesetzt wenn Fehler vorhanden!
|
|
if (i_in == 0) {b_out = 1;} else {b_out = 0;}
|
|
digitalout(b_out ,2,60," JA "," NEIN ");
|
|
delay(250);
|
|
}
|
|
LINE("Status Generatorkommunikation, Status Plausibilität Generatortyp, Status Hochtemperaturfehler Generator","STAT_FI_GENKOMM_WERT;STAT_FI_GENUPL_WERT;STAT_FI_GENHT_WERT")
|
|
{
|
|
text(0,1,"Status");
|
|
text(1,1,"Generatorkommunikation");
|
|
INPAapiResultInt(i_in,"STAT_FI_GENKOMM_WERT",1);
|
|
// Hier Negation des Ergebnisses, da im DME Bit gesetzt wenn Fehler vorhanden!
|
|
if (i_in == 0) {b_out = 1;} else {b_out = 0;}
|
|
digitalout(b_out ,2, 1," JA "," NEIN ");
|
|
text(0,30,"Status");
|
|
text(1,30,"Plausibilität Generatortyp");
|
|
INPAapiResultInt(i_in,"STAT_FI_GENUPL_WERT",1);
|
|
// Hier Negation des Ergebnisses, da im DME Bit gesetzt wenn Fehler vorhanden!
|
|
if (i_in == 0) {b_out = 1;} else {b_out = 0;}
|
|
digitalout(b_out ,2,30," JA "," NEIN ");
|
|
text(0,60,"Status");
|
|
text(1,60,"Hochtemperaturfehler Generator");
|
|
ergebnisDigitalAusgabe("STAT_FI_GENHT_WERT" ,2,60," JA "," NEIN ");
|
|
delay(250);
|
|
}
|
|
LINE("Status mechanischer Fehler Generator, Status elektrischer Fehler Generator, Status Generatorauslastung zu hoch","STAT_FI_GENMECH_WERT;STAT_FI_GENEL_WERT;STAT_DF_HIGH_WERT")
|
|
{
|
|
text(0,1,"Status");
|
|
text(1,1,"mechanischer Fehler Generator");
|
|
ergebnisDigitalAusgabe("STAT_FI_GENMECH_WERT" ,2,1," JA "," NEIN ");
|
|
text(0,30,"Status");
|
|
text(1,30,"elektrischer Fehler Generator");
|
|
ergebnisDigitalAusgabe("STAT_FI_GENEL_WERT" ,2,30," JA "," NEIN ");
|
|
text(0,60,"Status");
|
|
text(1,60,"Generatorauslastung zu hoch");
|
|
ergebnisDigitalAusgabe("STAT_DF_HIGH_WERT" ,2,60," JA "," NEIN ");
|
|
}
|
|
LINE("Toleranzbereich fuer Abweichung vom Sollwert Strom, Toleranzbereich fuer Abweichung vom Sollwert Spannung","STAT_GENITEST_TOL_WERT;STAT_GENUTEST_TOL_WERT")
|
|
{
|
|
text(0,0,"Toleranzbereich fuer Abweichung");
|
|
text(1,0,"vom Sollwert Strom");
|
|
ergebnisAnalogAusgabe("STAT_GENITEST_TOL_WERT", 2, 0, 0.0, 100.0, 0.0, 100.0,"4.1");
|
|
INPAapiResultText(s1,"STAT_GENITEST_TOL_EINH",1,"");
|
|
text(2,33,s1);
|
|
text(0,40,"Toleranzbereich fuer Abweichung");
|
|
text(1,40,"vom Sollwert Spannung");
|
|
ergebnisAnalogAusgabe("STAT_GENUTEST_TOL_WERT", 2,40, 0.0, 100.0, 0.0, 100.0,"4.1");
|
|
INPAapiResultText(s1,"STAT_GENUTEST_TOL_EINH",1,"");
|
|
text(2,73,s1);
|
|
}
|
|
LINE("Modellierter Generatorstrom, Generatorsollspannung","STAT_I_GENTEST_WERT;STAT_U_GENTEST_WERT")
|
|
{
|
|
text(0,0,"Modellierter Generatorstrom");
|
|
ergebnisAnalogAusgabe("STAT_I_GENTEST_WERT", 1, 0, 0.0, 255.0, 0.0, 255.0,"4.1");
|
|
INPAapiResultText(s1,"STAT_I_GENTEST_EINH",1,"");
|
|
text(1,33,s1);
|
|
text(0,40,"Generatorsollspannung");
|
|
ergebnisAnalogAusgabe("STAT_U_GENTEST_WERT", 1,40, 10.0, 16.0, 10.0, 16.0,"3.1");
|
|
INPAapiResultText(s1,"STAT_U_GENTEST_EINH",1,"");
|
|
text(1,73,s1);
|
|
delay(250);
|
|
}
|
|
}
|
|
|
|
// **********************************************
|
|
// *** Screen Systemdiagnose Ruhestrommessung ***
|
|
// **********************************************
|
|
SCREEN s_systemtest_ibs()
|
|
{
|
|
string s1, vartext1, vartext2;
|
|
bool b1;
|
|
real r1;
|
|
int i1, t1, status;
|
|
|
|
ftextout(dme_text + " Systemtest Ruhestrommessung",0,15,1,1);
|
|
textout("=========================================================================================",2,0);
|
|
textout(" < F1 > Start Systemtest Ruhestrommessung",3,5);
|
|
textout(" < F10 > Zurück",5,5);
|
|
textout("< Shift > + < F10 > INPA beenden", 5,45);
|
|
|
|
INPAapiJob(sgbd,"STATUS_DIGITAL_1","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY")
|
|
{
|
|
messagebox("STATUS_DIGITAL_1",s1);
|
|
stop();
|
|
}
|
|
else
|
|
{
|
|
textout("Klemme 15",21,5);
|
|
ergebnisDigitalAusgabe("STAT_KL15_EIN_WERT" ,22, 5," JA "," NEIN ");
|
|
INPAapiJob(sgbd,"STATUS_RUHESTROMMESSUNG","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY")
|
|
{
|
|
messagebox("STATUS_RUHESTROMMESSUNG",s1);
|
|
stop();
|
|
}
|
|
else
|
|
{
|
|
textout("=== Status Ruhestrommessung ===",8,5);
|
|
INPAapiResultInt(status,"STAT_FS_RUHESTROM_WERT",1);
|
|
inttostring(status,s1);
|
|
textout(blank,10,5);
|
|
textout(s1,10,5);
|
|
INPAapiResultText(s1,"STAT_FS_RUHESTROM_TEXT",1,"");
|
|
textout(blank,12,5);
|
|
textout(s1,12,5);
|
|
text(25,5,"Ruhestrom");
|
|
ergebnisAnalogAusgabe("STAT_STAT_RUHESTROM_WERT", 26, 5, 0.0, 0.300, 0.0, 0.080,"5.3");
|
|
INPAapiResultText(s1,"STAT_STAT_RUHESTROM_EINH",1,"");
|
|
text(26,41,s1);
|
|
ftextout("Parametereingabe Ruhestrommessung",22,45,0,1);
|
|
textout("1. Parameter = Maximale Ruhestromschwelle",23,45);
|
|
textout("2. Parameter = Messtartbedingung",24,45);
|
|
textout("3. Parameter = Dauer Mittelwertmessung",25,45);
|
|
textout("4. Parameter = Timeoutzeit",26,45);
|
|
}
|
|
}
|
|
}
|
|
|
|
// **********************************************
|
|
// *** Screen Systemdiagnose Desulfatisierung ***
|
|
// **********************************************
|
|
SCREEN s_systemtest_des()
|
|
{
|
|
string s1;
|
|
string vartext1;
|
|
string vartext2;
|
|
int status = 255;
|
|
|
|
ftextout(dme_text + " Systemtest Desulfatisierung",0,15,1,1);
|
|
textout("=========================================================================================",2,0);
|
|
textout(" < F1 > Start Systemtest Desulfatisierung",3,5);
|
|
textout(" < F2 > Stop Systemtest Desulfatisierung",4,5);
|
|
textout(" < F10 > Zurück",6,5);
|
|
textout("< Shift > + < F10 > INPA beenden", 6,45);
|
|
|
|
INPAapiJob(sgbd,"STATUS_DESULFATISIERUNG","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY")
|
|
{
|
|
messagebox("STATUS_DESULFATISIERUNG",s1);
|
|
stop();
|
|
}
|
|
|
|
INPAapiResultText(s1,"STAT_DIAGNOSE_1_TEXT",1,"");
|
|
textout("=== Status Systemcheck ===",8,5);
|
|
textout(blank,9,0);
|
|
textout(s1,9,10);
|
|
INPAapiResultInt(status,"STAT_DIAGNOSE_1_WERT",1);
|
|
inttostring(status,s1);
|
|
textout(s1,9,5);
|
|
INPAapiResultText(s1,"STAT_DIAGNOSE_2_TEXT",1,"");
|
|
textout(blank,11,0);
|
|
textout(s1,11,10);
|
|
INPAapiResultInt(status,"STAT_DIAGNOSE_2_WERT",1);
|
|
inttostring(status,s1);
|
|
textout(s1,11,5);
|
|
textout("",12,5);
|
|
|
|
LINE("Gang, Status Kupplungspedal betätigt","STAT_GEAR;STAT_LV_CLU_SWI")
|
|
{
|
|
text(0,1,"Gang");
|
|
INPAapiResultInt(status,"STAT_GEAR",1);
|
|
inttostring(status,s1);
|
|
textout(s1,1,1);
|
|
text(0,40,"Status Kupplungspedal betätigt");
|
|
ergebnisDigitalAusgabe("STAT_LV_CLU_SWI" ,1,40," JA "," NEIN ");
|
|
}
|
|
LINE("Istwert Temperaturregelung, Temperatur Desulfatisierungsschwelle","STAT_TNT_MDL_L_WERT;STAT_TNT_MDL_MV_WERT")
|
|
{
|
|
text(0,1,"Istwert Temperaturregelung");
|
|
ergebnisAnalogAusgabe("STAT_TNT_MDL_L_WERT", 1, 0, 0.0, 500.0, 0.0, 500.0,"3.1");
|
|
INPAapiResultText(s1,"STAT_TNT_MDL_L_EINH",1,"");
|
|
text(1,31,s1);
|
|
text(0,40,"Temperatur Desulfatisierungsschwelle");
|
|
ergebnisAnalogAusgabe("STAT_TNT_MDL_MV_WERT", 1,40, 0.0, 500.0, 0.0, 500.0,"3.1");
|
|
INPAapiResultText(s1,"STAT_TNT_MDL_MV_EINH",1,"");
|
|
text(1,71,s1);
|
|
}
|
|
LINE("Zeitgeber Desulfatisierung, Schwefelbeladung","STAT_T_NT_SO2P_EXT_ADJ_ACT_WERT;STAT_NT_SUL_WERT")
|
|
{
|
|
text(0,1,"Zeitgeber Desulfatisierung");
|
|
ergebnisAnalogAusgabe("STAT_T_NT_SO2P_EXT_ADJ_ACT_WERT", 1, 0, 0.0, 255.0, 0.0, 255.0,"4.1");
|
|
INPAapiResultText(s1,"STAT_T_NT_SO2P_EXT_ADJ_ACT_EINH",1,"");
|
|
text(1,31,s1);
|
|
text(0,40,"Schwefelbeladung");
|
|
ergebnisAnalogAusgabe("STAT_NT_SUL_WERT", 1,40, 0.0, 10000.0, 0.0, 4000.0,"4.0");
|
|
INPAapiResultText(s1,"STAT_NT_SUL_EINH",1,"");
|
|
text(1,71,s1);
|
|
}
|
|
LINE("Lambdasetpoint Mittelwert, Lambdasetpoint Bank 1","STAT_LAMB_SP_WERT;STAT_LAMB_SP_1_WERT")
|
|
{
|
|
text(0,1,"Lambdasetpoint Mittelwert");
|
|
ergebnisAnalogAusgabe("STAT_LAMB_SP_WERT", 1, 0, 0.5, 1.5, 0.5, 1.5,"3.2");
|
|
text(0,40,"Lambdasetpoint Bank 1");
|
|
ergebnisAnalogAusgabe("STAT_LAMB_SP_1_WERT", 1,40, 0.5, 1.5, 0.5, 1.5,"3.2");
|
|
}
|
|
LINE("Lambdasetpoint Bank 2, Drehzahl","STAT_LAMB_SP_2_WERT;STAT_N_32_WERT")
|
|
{
|
|
text(0,1,"Lambdasetpoint Bank 2");
|
|
ergebnisAnalogAusgabe("STAT_LAMB_SP_2_WERT", 1, 0, 0.5, 1.5, 0.5, 1.5,"3.2");
|
|
text(0,40,"Drehzahl");
|
|
ergebnisAnalogAusgabe("STAT_N_32_WERT", 1,40, 0.0, 8600.0, 0.0, 7200.0,"4.1");
|
|
INPAapiResultText(s1,"STAT_N_32_EINH",1,"");
|
|
text(1,71,s1);
|
|
}
|
|
LINE("Geschwindigkeit, Pedalwert","STAT_VS_WERT;STAT_PV_WERT")
|
|
{
|
|
text(0,1,"Geschwindigkeit");
|
|
ergebnisAnalogAusgabe("STAT_VS_WERT", 1, 0, 0.0, 250.0, 0.0, 250.0,"4.1");
|
|
INPAapiResultText(s1,"STAT_VS_EINH",1,"");
|
|
text(1,31,s1);
|
|
text(0,40,"Pedalwert");
|
|
ergebnisAnalogAusgabe("STAT_PV_WERT", 1,40, 0.0, 16.0, 0.0, 10.0,"3.1");
|
|
INPAapiResultText(s1,"STAT_PV_EINH",1,"");
|
|
text(1,71,s1);
|
|
delay(250);
|
|
}
|
|
}
|
|
|
|
// ************************************************
|
|
// *** Screen Systemdiagnose Injektor-Codierung ***
|
|
// ************************************************
|
|
SCREEN s_systemtest_ima()
|
|
{
|
|
string s1;
|
|
string vartext1;
|
|
string vartext2;
|
|
int status = 255;
|
|
|
|
ftextout(dme_text + " Injektor-Codierung",0,15,1,1);
|
|
textout("=========================================================================================",2,0);
|
|
textout(" < F1 > Injektor 1", 3,5);
|
|
textout(" < F2 > Injektor 2", 4,5);
|
|
textout(" < F3 > Injektor 3", 5,5);
|
|
textout(" < F4 > Injektor 4", 6,5);
|
|
textout(" < F5 > Injektor 5", 7,5);
|
|
textout(" < F6 > Injektor 6", 8,5);
|
|
if (zylinderZahl== 8) textout(" < F7 > Injektor 7", 9,5);
|
|
if (zylinderZahl== 8) textout(" < F8 > Injektor 8", 10,5);
|
|
textout(" < F8 > Reset" , 11,5);
|
|
textout(" < F10 > Zurück" ,12,5);
|
|
textout("< Shift > + < F10 > INPA beenden",12,45);
|
|
|
|
|
|
INPAapiJob(sgbd,"STATUS_IMAALLE","","");
|
|
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
|
|
if (s1 != "OKAY")
|
|
{
|
|
messagebox("STATUS_IMAALLE",s1);
|
|
stop();
|
|
}
|
|
textout("",13,5);
|
|
|
|
LINE("Energieabgleichwert Injektor 1, Durchflussabgleichwert Injektor 1","STAT_ENERGIEABGLEICH_ZYL_1_WERT;STAT_DURCHFLUSSABGLEICH_ZYL_1_WERT")
|
|
{
|
|
text(0,0,"Energieabgleichwert Injektor 1");
|
|
ergebnisAnalogAusgabe("STAT_ENERGIEABGLEICH_ZYL_1_WERT", 1, 0, 35.0, 80.0, 52.802, 78.802,"4.1");
|
|
INPAapiResultText(s1,"STAT_ENERGIEABGLEICH_ZYL_1_EINH",1,"");
|
|
text(1,31,s1);
|
|
text(0,40,"Durchflussabgleichwert Injektor 1");
|
|
ergebnisAnalogAusgabe("STAT_DURCHFLUSSABGLEICH_ZYL_1_WERT", 1,40, 1.3, 3.0, 1.53, 2.88,"4.2");
|
|
INPAapiResultText(s1,"STAT_DURCHFLUSSABGLEICH_ZYL_1_EINH",1,"");
|
|
text(1,71,s1);
|
|
}
|
|
LINE("Energieabgleichwert Injektor 2, Durchflussabgleichwert Injektor 2","STAT_ENERGIEABGLEICH_ZYL_2_WERT;STAT_DURCHFLUSSABGLEICH_ZYL_2_WERT")
|
|
{
|
|
text(0,0,"Energieabgleichwert Injektor 2");
|
|
ergebnisAnalogAusgabe("STAT_ENERGIEABGLEICH_ZYL_2_WERT", 1, 0, 35.0, 80.0, 52.802, 78.802,"4.1");
|
|
INPAapiResultText(s1,"STAT_ENERGIEABGLEICH_ZYL_2_EINH",1,"");
|
|
text(1,31,s1);
|
|
text(0,40,"Durchflussabgleichwert Injektor 2");
|
|
ergebnisAnalogAusgabe("STAT_DURCHFLUSSABGLEICH_ZYL_2_WERT", 1,40, 1.3, 3.0, 1.53, 2.88,"4.2");
|
|
INPAapiResultText(s1,"STAT_DURCHFLUSSABGLEICH_ZYL_2_EINH",1,"");
|
|
text(1,71,s1);
|
|
}
|
|
LINE("Energieabgleichwert Injektor 3, Durchflussabgleichwert Injektor 3","STAT_ENERGIEABGLEICH_ZYL_3_WERT;STAT_DURCHFLUSSABGLEICH_ZYL_3_WERT")
|
|
{
|
|
text(0,0,"Energieabgleichwert Injektor 3");
|
|
ergebnisAnalogAusgabe("STAT_ENERGIEABGLEICH_ZYL_3_WERT", 1, 0, 35.0, 80.0, 52.802, 78.802,"4.1");
|
|
INPAapiResultText(s1,"STAT_ENERGIEABGLEICH_ZYL_3_EINH",1,"");
|
|
text(1,31,s1);
|
|
text(0,40,"Durchflussabgleichwert Injektor 3");
|
|
ergebnisAnalogAusgabe("STAT_DURCHFLUSSABGLEICH_ZYL_3_WERT", 1,40, 1.3, 3.0, 1.53, 2.88,"4.2");
|
|
INPAapiResultText(s1,"STAT_DURCHFLUSSABGLEICH_ZYL_3_EINH",1,"");
|
|
text(1,71,s1);
|
|
}
|
|
LINE("Energieabgleichwert Injektor 4, Durchflussabgleichwert Injektor 4","STAT_ENERGIEABGLEICH_ZYL_4_WERT;STAT_DURCHFLUSSABGLEICH_ZYL_4_WERT")
|
|
{
|
|
text(0,0,"Energieabgleichwert Injektor 4");
|
|
ergebnisAnalogAusgabe("STAT_ENERGIEABGLEICH_ZYL_4_WERT", 1, 0, 35.0, 80.0, 52.802, 78.802,"4.1");
|
|
INPAapiResultText(s1,"STAT_ENERGIEABGLEICH_ZYL_4_EINH",1,"");
|
|
text(1,31,s1);
|
|
text(0,40,"Durchflussabgleichwert Injektor 4");
|
|
ergebnisAnalogAusgabe("STAT_DURCHFLUSSABGLEICH_ZYL_4_WERT", 1,40, 1.3, 3.0, 1.53, 2.88,"4.2");
|
|
INPAapiResultText(s1,"STAT_DURCHFLUSSABGLEICH_ZYL_4_EINH",1,"");
|
|
text(1,71,s1);
|
|
}
|
|
LINE("Energieabgleichwert Injektor 5, Durchflussabgleichwert Injektor 5","STAT_ENERGIEABGLEICH_ZYL_5_WERT;STAT_DURCHFLUSSABGLEICH_ZYL_5_WERT")
|
|
{
|
|
text(0,0,"Energieabgleichwert Injektor 5");
|
|
ergebnisAnalogAusgabe("STAT_ENERGIEABGLEICH_ZYL_5_WERT", 1, 0, 35.0, 80.0, 52.802, 78.802,"4.1");
|
|
INPAapiResultText(s1,"STAT_ENERGIEABGLEICH_ZYL_5_EINH",1,"");
|
|
text(1,31,s1);
|
|
text(0,40,"Durchflussabgleichwert Injektor 5");
|
|
ergebnisAnalogAusgabe("STAT_DURCHFLUSSABGLEICH_ZYL_5_WERT", 1,40, 1.3, 3.0, 1.53, 2.88,"4.2");
|
|
INPAapiResultText(s1,"STAT_DURCHFLUSSABGLEICH_ZYL_5_EINH",1,"");
|
|
text(1,71,s1);
|
|
}
|
|
LINE("Energieabgleichwert Injektor 6, Durchflussabgleichwert Injektor 6","STAT_ENERGIEABGLEICH_ZYL_6_WERT;STAT_DURCHFLUSSABGLEICH_ZYL_6_WERT")
|
|
{
|
|
text(0,0,"Energieabgleichwert Injektor 6");
|
|
ergebnisAnalogAusgabe("STAT_ENERGIEABGLEICH_ZYL_6_WERT", 1, 0, 35.0, 80.0, 52.802, 78.802,"4.1");
|
|
INPAapiResultText(s1,"STAT_ENERGIEABGLEICH_ZYL_6_EINH",1,"");
|
|
text(1,31,s1);
|
|
text(0,40,"Durchflussabgleichwert Injektor 6");
|
|
ergebnisAnalogAusgabe("STAT_DURCHFLUSSABGLEICH_ZYL_6_WERT", 1,40, 1.3, 3.0, 1.53, 2.88,"4.2");
|
|
INPAapiResultText(s1,"STAT_DURCHFLUSSABGLEICH_ZYL_6_EINH",1,"");
|
|
text(1,71,s1);
|
|
}
|
|
LINE("Energieabgleichwert Injektor 7, Durchflussabgleichwert Injektor 7","STAT_ENERGIEABGLEICH_ZYL_7_WERT;STAT_DURCHFLUSSABGLEICH_ZYL_7_WERT")
|
|
{
|
|
if (zylinderZahl == 8) {
|
|
|
|
text(0,0,"Energieabgleichwert Injektor 7");
|
|
ergebnisAnalogAusgabe("STAT_ENERGIEABGLEICH_ZYL_7_WERT", 1, 0, 35.0, 80.0, 52.802, 78.802,"4.1");
|
|
INPAapiResultText(s1,"STAT_ENERGIEABGLEICH_ZYL_7_EINH",1,"");
|
|
text(1,31,s1);
|
|
text(0,40,"Durchflussabgleichwert Injektor 7");
|
|
ergebnisAnalogAusgabe("STAT_DURCHFLUSSABGLEICH_ZYL_7_WERT", 1,40, 1.3, 3.0, 1.53, 2.88,"4.2");
|
|
INPAapiResultText(s1,"STAT_DURCHFLUSSABGLEICH_ZYL_7_EINH",1,"");
|
|
text(1,71,s1);
|
|
}
|
|
}
|
|
LINE("Energieabgleichwert Injektor 8, Durchflussabgleichwert Injektor 8","STAT_ENERGIEABGLEICH_ZYL_8_WERT;STAT_DURCHFLUSSABGLEICH_ZYL_8_WERT")
|
|
{
|
|
if (zylinderZahl==8) {
|
|
|
|
text(0,0,"Energieabgleichwert Injektor 8");
|
|
ergebnisAnalogAusgabe("STAT_ENERGIEABGLEICH_ZYL_8_WERT", 1, 0, 35.0, 80.0, 52.802, 78.802,"4.1");
|
|
INPAapiResultText(s1,"STAT_ENERGIEABGLEICH_ZYL_8_EINH",1,"");
|
|
text(1,31,s1);
|
|
text(0,40,"Durchflussabgleichwert Injektor 8");
|
|
ergebnisAnalogAusgabe("STAT_DURCHFLUSSABGLEICH_ZYL_8_WERT", 1,40, 1.3, 3.0, 1.53, 2.88,"4.2");
|
|
INPAapiResultText(s1,"STAT_DURCHFLUSSABGLEICH_ZYL_8_EINH",1,"");
|
|
text(1,71,s1);
|
|
}
|
|
}
|
|
LINE("","") {
|
|
}
|
|
}
|
|
|
|
// ***************************************
|
|
// *** Screen für Stellgliedansteueung ***
|
|
// ***************************************
|
|
SCREEN s_iostatus()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
blankscreen();
|
|
ftextout(dme_text + " Stellgliedansteuerungen",1,5,1,1);
|
|
z1=5;
|
|
textout(" < F1 > Stellgliedansteuerungen 1",z1,5);z1=z1+1;
|
|
textout(" < F2 > Stellgliedansteuerungen 2",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
stop();
|
|
}
|
|
|
|
|
|
// *****************************************
|
|
// *** Screen für Stellgliedansteueung 1 ***
|
|
// *****************************************
|
|
SCREEN s_iostatus_1()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
blankscreen();
|
|
ftextout(dme_text + " Stellgliedansteuerungen 1",1,5,1,1);
|
|
z1=5;
|
|
// textout(" < F1 > E-Lüfter",z1,5);
|
|
// textout("< Shift > + < F1 > E-Box-Lüfter ",z1,45);
|
|
z1=z1+1;
|
|
// textout(" < F2 > VANOS Einlass/Auslass",z1,5);
|
|
// textout("< Shift > + < F2 > AbGasKlappe AGK",z1,45);
|
|
z1=z1+1;
|
|
// textout(" < F3 > TankEntlüftungsVentil TEV",z1,5);
|
|
// textout("< Shift > + < F3 > DMTL Pumpe/Ventil/Heizung",z1,45);
|
|
z1=z1+1;
|
|
// textout(" < F4 > KennFeldKühlung KFK",z1,5);
|
|
// textout("< Shift > + < F4 > variable Sauganlage VIMDISA",z1,45);
|
|
z1=z1+1;
|
|
// textout(" < F5 > ElektrischeKraftstoffPumpe EKP",z1,5);
|
|
// textout("< Shift > + < F5 > MIL/EML",z1,45);
|
|
z1=z1+1;
|
|
// textout(" < F6 > Lambdasondenheizungen",z1,5);
|
|
// textout("< Shift > + < F6 > Klemme 87/Hauptrelais DME",z1,45);
|
|
z1=z1+1;
|
|
textout(" < F7 > Gesteuerte LuftFührung GLF",z1,5);
|
|
// textout("< Shift > + < F7 > StartRelais",z1,45);
|
|
z1=z1+1;
|
|
// textout(" < F8 > Wasserpumpe",z1,5);
|
|
// textout("< Shift > + < F8 > Relais KurbelGehäuseEntlüftungsHeizung",z1,45);
|
|
z1=z1+1;
|
|
// textout(" < F9 > Klima-KOmpressorRELais KOREL",z1,5);
|
|
// textout("< Shift > + < F9 > Drosselklappe",z1,45);
|
|
z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden ",z1,45);
|
|
stop();
|
|
}
|
|
|
|
// *****************************************
|
|
// *** Screen für Stellgliedansteueung 2 ***
|
|
// *****************************************
|
|
SCREEN s_iostatus_2()
|
|
{
|
|
string f1;
|
|
int y1, z1;
|
|
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
blankscreen();
|
|
y1=1;inttostring(y1,f1);z1=1;
|
|
// ftextout(dme_text + " Stellgliedansteuerungen 2",1,5,1,1);
|
|
z1=z1+4;
|
|
// textout(" < F" + f1 +" > Generatorspannung",z1,5);
|
|
y1=y1+1;inttostring(y1,f1);z1=z1+1;
|
|
// textout(" < F" + f1 +" > Öldruckregelung",z1,5);
|
|
y1=y1+1;inttostring(y1,f1);z1=z1+1;
|
|
// textout(" < F" + f1 +" > Öldruckventil",z1,5);y1=y1+1;inttostring(y1,f1);
|
|
z1=z1+1;
|
|
// textout(" < F" + f1 +" > Ladedrucksteller (nur N54)",z1,5);
|
|
y1=y1+1;inttostring(y1,f1);z1=z1+1;
|
|
// textout(" < F" + f1 +" > Motorlager (nicht N54)",z1,5);
|
|
y1=y1+1;inttostring(y1,f1);z1=z1+1;
|
|
// textout(" < F" + f1 +" > Mengensteuerventil",z1,5);
|
|
y1=y1+1;inttostring(y1,f1);z1=z1+1;
|
|
// textout(" < F" + f1 +" > Abgasrückführungsventil (nicht N54)",z1,5);
|
|
y1=y1+1;inttostring(y1,f1);z1=z1+1;
|
|
// textout(" < F" + f1 +" > Drosselklappenheizung (nur N54)",z1,5);
|
|
y1=y1+1;inttostring(y1,f1);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden ",z1,45);
|
|
stop();
|
|
}
|
|
|
|
// ****************************
|
|
// *** Ansteuerung Eluefter ***
|
|
// ****************************
|
|
SCREEN s_elue()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Stellgliedansteuerung E-Lüfter",0,5,1,1);
|
|
z1=3;
|
|
textout(" Ansteuerbedingung: " + elue,z1,5);z1=z1+2;
|
|
textout(" < F1 > Ansteuerung mit 15 % ",z1,5);z1=z1+1;
|
|
textout(" < F2 > Ansteuerung mit 50 % ",z1,5);z1=z1+1;
|
|
textout(" < F3 > Ansteuerung mit 90 % ",z1,5);z1=z1+1;
|
|
textout(" < F4 > Ansteuerung an DME zurück",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
elue_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
// *************************
|
|
// *** Ansteuerung VANOS ***
|
|
// *************************
|
|
SCREEN s_st_vanos()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
z1=3;
|
|
ftextout(dme_text + " Stellgliedansteuerung Vanos Einlass/Auslass",0,5,1,1);
|
|
textout(" Ansteuerbedingung: " + vanos,z1,5);z1=z1+2;
|
|
ftextout(" Erhöhung über Leerlaufdrehzahl-Anhebung und nicht durch Betätigung des Gaspedals!",z1,5,0,1);z1=z1+2;
|
|
textout(" < F1 > Ansteuerung Einlass mit +10 °",z1,5);z1=z1+1;
|
|
textout(" < F2 > Ansteuerung Einlass mit -10 °",z1,5);z1=z1+1;
|
|
textout(" < F3 > Ansteuerung Einlass mit +72 °",z1,5);z1=z1+1;
|
|
textout(" < F4 > Ansteuerung Einlass mit -72 °",z1,5);z1=z1+1;
|
|
textout(" < F5 > Ansteuerung Ein/Auslass an DME zurück",z1,5);z1=z1+1;
|
|
textout(" < F6 > Ansteuerung Auslass mit +10 °",z1,5);z1=z1+1;
|
|
textout(" < F7 > Ansteuerung Auslass mit -10 °",z1,5);z1=z1+1;
|
|
textout(" < F8 > Ansteuerung Auslass mit +72 °",z1,5);z1=z1+1;
|
|
textout(" < F9 > Ansteuerung Auslass mit -72 °",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
|
|
vanos_in_ansteuer(0x1FE);
|
|
vanos_ex_ansteuer(0x1FE);
|
|
|
|
INPAapiJob(sgbd, "MESSWERTBLOCK_LESEN", "0x4508,0x4505,0x4509,0x4A94", "" ) ;
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp,25, 5, 40.0, 135.0, 40.0, 135.0,"5.1");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_EINH",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_TEXT",1,"");
|
|
text(24, 5,vartext2);
|
|
text(25,36,vartext1);
|
|
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT1_WERT",1);
|
|
analogout(r_temp,25,45, -135.0, -40.0, -135.0,-40.0,"5.1");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_EINH",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_TEXT",1,"");
|
|
text(24, 45,vartext2);
|
|
text(25,77,vartext1);
|
|
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT2_WERT",1);
|
|
analogout(r_temp,28, 5, 40.0, 135.0, 40.0, 135.0,"5.1");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT2_EINH",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT2_TEXT",1,"");
|
|
text(27, 5,vartext2);
|
|
text(28,36,vartext1);
|
|
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT3_WERT",1);
|
|
analogout(r_temp,28,45, -135.0, -40.0, -135.0,-40.0,"5.1");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT3_EINH",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT3_TEXT",1,"");
|
|
text(27, 45,vartext2);
|
|
text(28,77,vartext1);
|
|
delay(250);
|
|
}
|
|
|
|
// ***********************
|
|
// *** Ansteuerung TEV ***
|
|
// ***********************
|
|
SCREEN s_tev()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Stellgliedansteuerung TEV",0,5,1,1);
|
|
z1=3;
|
|
ftextout("Vorsicht! Ansteuerung des TEVs kann zu Motorstillstand führen!",z1,5,0,1);z1=z1+2;
|
|
textout(" Ansteuerbedingung: " + tev,z1,5);z1=z1+2;
|
|
textout(" < F1 > Ansteuerung 0%",z1,5);z1=z1+1;
|
|
textout(" < F2 > Ansteuerung 20%",z1,5);z1=z1+1;
|
|
textout(" < F3 > Ansteuerung 50%",z1,5);z1=z1+1;
|
|
textout(" < F4 > Ansteuerung 90%",z1,5);z1=z1+1;
|
|
textout(" < F5 > An DME zurück",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
tev_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
|
|
// ***********************
|
|
// *** Ansteuerung KFK ***
|
|
// ***********************
|
|
SCREEN s_kfk()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Stellgliedansteuerung KFK",0,5,1,1);
|
|
z1=3;
|
|
textout(" Ansteuerbedingung: " + kfk,z1,5);z1=z1+2;
|
|
textout(" < F1 > Ansteuerung 0%",z1,5);z1=z1+1;
|
|
textout(" < F2 > Ansteuerung 15%",z1,5);z1=z1+1;
|
|
textout(" < F3 > Ansteuerung 50%",z1,5);z1=z1+1;
|
|
textout(" < F4 > Ansteuerung 90%",z1,5);z1=z1+1;
|
|
textout(" < F5 > An DME zurück",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
kfk_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
// ***********************
|
|
// *** Ansteuerung EKP ***
|
|
// ***********************
|
|
SCREEN s_ekp()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Stellgliedansteuerung EKP",0,5,1,1);
|
|
z1=3;
|
|
textout(" Ansteuerbedingung: " + ekp,z1,5);z1=z1+2;
|
|
textout(" < F1 > KraftstoffPumpe ein",z1,5);z1=z1+1;
|
|
textout(" < F2 > KraftstoffPumpe aus",z1,5);z1=z1+2;
|
|
textout(" < F4 > Ansteuerung zurück an DME",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
ekp_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
// *****************************************
|
|
// *** Ansteuerung Lambdasondenheizungen ***
|
|
// *****************************************
|
|
SCREEN s_hls()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
z1=3;
|
|
ftextout(dme_text + " Stellgliedansteuerung Lambdasondenheizung",0,3,1,1);
|
|
ftextout("Vorsicht! Bei Betauung Bruchgefahr bei hoher Heizleistung",z1,0,1,1);z1=z1+2;
|
|
textout(" Ansteuerbedingung: " + lsh,z1,5);z1=z1+2;
|
|
textout(" < F1 > Ansteuerung 5%" ,z1,5);z1=z1+1;
|
|
textout(" < F2 > Ansteuerung 15%" ,z1,5);z1=z1+1;
|
|
textout(" < F3 > Ansteuerung 90%" ,z1,5);z1=z1+1;
|
|
textout(" < F4 > An DME zurück" ,z1,5);z1=z1+1;
|
|
textout(" < F5 > Lambdasondenheizung 1 ( LSVK1 )" ,z1,5);z1=z1+1;
|
|
textout(" < F6 > Lambdasondenheizung 2 ( LSHK1 )" ,z1,5);z1=z1+1;
|
|
textout(" < F7 > Lambdasondenheizung 3 ( LSVK2 )" ,z1,5);z1=z1+1;
|
|
textout(" < F8 > Lambdasondenheizung 4 ( LSHK2 )" ,z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück" ,z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);z1=z1+2;
|
|
textout(" Erst den Wert, 5%, 15%, 90% oder DME, dann die Sonde wählen" ,z1,5);
|
|
|
|
hls1_ansteuer(0xFE);
|
|
hls2_ansteuer(0xFE);
|
|
hls3_ansteuer(0xFE);
|
|
hls4_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
// ***********************
|
|
// *** Ansteuerung GLF ***
|
|
// ***********************
|
|
SCREEN s_glf()
|
|
{
|
|
int z1, version, n, rest;
|
|
string s1, sn, srest;
|
|
|
|
ftextout(dme_text + " Stellgliedansteuerung GLF",0,13,1,1);
|
|
textout("=========================================================================================",2,0);
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
|
|
z1=3;
|
|
textout(" Ansteuerbedingung: " + glf,z1,5);z1=z1+2;
|
|
textout(" < F1 > Kühlerjalousie oben zu",z1,5);z1=z1+1;
|
|
textout(" < F2 > Kühlerjalousie oben auf",z1,5);z1=z1+1;
|
|
textout(" < F3 > Kühlerjalousie unten zu",z1,5);z1=z1+1;
|
|
textout(" < F4 > Kühlerjalousie unten auf",z1,5);z1=z1+1;
|
|
textout(" < F5 > Ansteuerung zurück an DME",z1,5);z1=z1+1;
|
|
textout(" < F8 > WKM-Mode: Dauerhaft geöffnet! Nur für Windkanaltests!",z1,5);z1=z1+1;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
|
|
INPAapiJob(sgbd,"STATUS_SYSTEMCHECK_GLF","","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
// Ausgabe HW- & SW-Stand
|
|
INPAapiResultText(s1,"STAT_STATE_ECRAS_UP_VAR",1,"");
|
|
stringtoint(s1, version);
|
|
modInt (version, 16, n, rest);
|
|
inttostring(n, sn);
|
|
inttostring(rest, srest);
|
|
textout("AKKS-LIN Hardwarestand: "+sn, 5, 59);
|
|
textout("AKKS-LIN Softwarestand: "+srest, 6, 59);
|
|
|
|
|
|
glf1_ansteuer(0xFE);
|
|
glf2_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
// ************************
|
|
// *** Ansteuerung EWAP ***
|
|
// ************************
|
|
SCREEN s_ewap()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Stellgliedansteuerung Wasserpumpe",0,5,1,1);
|
|
z1=3;
|
|
textout(" Ansteuerbedingung:",z1,5);z1=z1+1;
|
|
textout(" " + ewapu,z1,5);z1=z1+2;
|
|
textout(" < F1 > Förderleistung 5%",z1,5);z1=z1+1;
|
|
textout(" < F2 > Förderleistung 50%",z1,5);z1=z1+1;
|
|
textout(" < F3 > Förderleistung 95%",z1,5);z1=z1+1;
|
|
textout(" < F4 > Ansteuerung zurück an DME",z1,5);z1=z1+1;
|
|
textout(" < F5 > Kühlsystementlüftung",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
j = 0;
|
|
ewap_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
// ***********************
|
|
// *** Ansteuerung KSE ***
|
|
// ***********************
|
|
SCREEN s_ewap_kse()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(" Kühlsystementlüftung",0,10,1,1);
|
|
z1=2;
|
|
textout(" Ansteuerbedingung: ",z1,5);z1=z1+1;
|
|
textout(" " + ewapu,z1,5);z1=z1+2;
|
|
ftextout(" Kühlsystementlüftung nur mit angeschlossenem Ladegerät durchführen!",z1,5,0,1);z1=z1+2;
|
|
textout(" < F1 > Start Kühlsystementlüftung",z1,5);z1=z1+1;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
ewap_ansteuer_kse(0xFF,j);
|
|
delay(250);
|
|
}
|
|
// *************************
|
|
// *** Ansteuerung KOREL ***
|
|
// *************************
|
|
SCREEN s_korel()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Stellgliedansteuerung KOREL",0,5,1,1);
|
|
z1=3;
|
|
textout(" Ansteuerbedingung: " + korel,z1,5);z1=z1+2;
|
|
textout(" < F1 > KOmpressorRELais ein",z1,5);z1=z1+1;
|
|
textout(" < F2 > KOmpressorRELais aus",z1,5);z1=z1+2;
|
|
textout(" < F4 > Ansteuerung zurück an DME",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
korel_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
// ********************************
|
|
// *** Ansteuerung E-Box-Lüfter ***
|
|
// ********************************
|
|
SCREEN s_ebl()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Stellgliedansteuerung E-Box-Lüfter",0,5,1,1);
|
|
z1=3;
|
|
textout(" Ansteuerbedingung: " + eboxlue,z1,5);z1=z1+2;
|
|
textout(" < F1 > E-Box-Lüfter ein",z1,5);z1=z1+1;
|
|
textout(" < F2 > E-Box-Lüfter aus",z1,5);z1=z1+2;
|
|
textout(" < F4 > Ansteuerung zurück an DME",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
ebl_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
|
|
// ***************************
|
|
// *** Ansteuerung VIMDISA ***
|
|
// ***************************
|
|
SCREEN s_disa()
|
|
{
|
|
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Stellgliedansteuerung DISA",0,5,1,1);
|
|
z1=3;
|
|
textout("Ansteuerbedingung: " + disa,z1,5);z1=z1+2;
|
|
textout("< F1 > variable Sauganlage 1 auf",z1,5);
|
|
textout("< Shift > + < F1 > variable Sauganlage 2 auf",z1,45);z1=z1+1;
|
|
textout("< F2 > variable Sauganlage 1 zu",z1,5);
|
|
textout("< Shift > + < F2 > variable Sauganlage 2 zu",z1,45);z1=z1+1;
|
|
textout("< F3 > Ansteuerung zurück an DME",z1,5);
|
|
textout("< Shift > + < F3 > Ansteuerung zurück an DME",z1,45);z1=z1+2;
|
|
textout("< F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
disa1_ansteuer(0xFE);
|
|
disa2_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
|
|
// *******************************
|
|
// *** Ansteuerung Abgasklappe ***
|
|
// *******************************
|
|
SCREEN s_agk()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Stellgliedansteuerung AGK",0,5,1,1);
|
|
z1=3;
|
|
textout(" Ansteuerbedingung: " + agk,z1,5);z1=z1+2;
|
|
textout(" < F1 > AbGasKlappe ein",z1,5);z1=z1+1;
|
|
textout(" < F2 > AbGasklappe aus",z1,5);z1=z1+1;
|
|
textout(" < F4 > Ansteuerung zurück an DME",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
agk_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
|
|
// *******************************
|
|
// *** Ansteuerung DMTL System ***
|
|
// *******************************
|
|
SCREEN s_st_dmtl()
|
|
{
|
|
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Stellgliedansteuerung DMTL",0,5,1,1);
|
|
z1=3;
|
|
textout(" Ansteuerbedingung: " + dmtl,z1,5);z1=z1+2;
|
|
textout(" < F1 > DMTL Pumpe ein",z1,5);z1=z1+1;
|
|
textout(" < F2 > DMTL Pumpe aus",z1,5);z1=z1+1;
|
|
textout(" < F3 > DMTL Pumpe von DME",z1,5);z1=z1+2;
|
|
textout(" < F4 > DMTL Ventil ein",z1,5);z1=z1+1;
|
|
textout(" < F5 > DMTL Ventil aus",z1,5);z1=z1+1;
|
|
textout(" < F6 > DMTL Ventil von DME",z1,5);z1=z1+2;
|
|
textout(" < F7 > DMTL Heizung ein",z1,5);z1=z1+1;
|
|
textout(" < F8 > DMTL Heizung aus",z1,5);z1=z1+1;
|
|
textout(" < F9 > DMTL Heizung von DME",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);z1=z1;
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
dmtl_p_ansteuer(0xFE);
|
|
dmtl_v_ansteuer(0xFE);
|
|
dmtl_h_ansteuer(0xFE);
|
|
delay(500);
|
|
}
|
|
|
|
// *****************************
|
|
// *** Ansteuerung MIL Lampe ***
|
|
// *****************************
|
|
SCREEN s_mil_eml()
|
|
{
|
|
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Stellgliedansteuerung MIL/EML",0,5,1,1);
|
|
z1=3;
|
|
textout(" Ansteuerbedingung: " + mil_eml,z1,5);z1=z1+2;
|
|
textout(" < F1 > MIL Lampe ein",z1,5);z1=z1+1;
|
|
textout(" < F2 > MIL Lampe aus",z1,5);z1=z1+2;
|
|
textout(" < F3 > Ansteuerung zurück an DME",z1,5);z1=z1+2;
|
|
textout(" < F5 > EML Lampe ein",z1,5);z1=z1+1;
|
|
textout(" < F6 > EML Lampe aus",z1,5);z1=z1+2;
|
|
textout(" < F7 > Ansteuerung zurück an DME",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
mil_ansteuer(0xFE);
|
|
eml_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
|
|
// *********************************************
|
|
// *** Ansteuerung Klemme 87/Hauptrelais DME ***
|
|
// *********************************************
|
|
SCREEN s_kl87()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Stellgliedansteuerung Klemme 87/Hauptrelais DME",0,0,1,1);
|
|
z1=3;
|
|
textout(" Ansteuerbedingung: " + kl87,z1,5);z1=z1+2;
|
|
textout(" < F1 > Klemme 87 ein",z1,5);z1=z1+1;
|
|
textout(" < F2 > Klemme 87 aus",z1,5);z1=z1+1;
|
|
textout(" < F3 > Ansteuerung zurück an DME",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
kl87_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
|
|
// *******************************
|
|
// *** Ansteuerung Startrelais ***
|
|
// *******************************
|
|
SCREEN s_sr()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Stellgliedansteuerung Startrelais",0,5,1,1);
|
|
z1=3;
|
|
textout(" Ansteuerbedingung: " + sr,z1,5);z1=z1+2;
|
|
textout(" < F1 > Startrelais ein",z1,5);z1=z1+1;
|
|
textout(" < F2 > Startrelais aus",z1,5);z1=z1+1;
|
|
textout(" < F3 > Ansteuerung zurück an DME",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
sr_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
|
|
// **********************************************************
|
|
// *** Ansteuerung Relais Kurbelgehäuseentlüftungsheizung ***
|
|
// **********************************************************
|
|
SCREEN s_r_kgeh()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Stellgliedansteuerung KGEH",0,5,1,1);
|
|
z1=3;
|
|
textout(" Ansteuerbedingung: " + kgeh,z1,5);z1=z1+2;
|
|
textout(" < F1 > Kurbelgehäuseentlüftungsheizung ein",z1,5);z1=z1+1;
|
|
textout(" < F2 > Kurbelgehäuseentlüftungsheizung aus",z1,5);z1=z1+1;
|
|
textout(" < F3 > Ansteuerung zurück an DME",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
r_kgeh_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
|
|
// *********************************
|
|
// *** Ansteuerung Drosselklappe ***
|
|
// *********************************
|
|
SCREEN s_dk()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Stellgliedansteuerung Drosselklappe",0,5,1,1);
|
|
z1=3;
|
|
textout(" Ansteuerbedingung: " + dk,z1,5);z1=z1+2;
|
|
textout(" < F1 > Sollwert 0%",z1,5);z1=z1+1;
|
|
textout(" < F2 > Sollwert 50%",z1,5);z1=z1+1;
|
|
textout(" < F3 > Sollwert 99%",z1,5);z1=z1+1;
|
|
textout(" < F4 > Ansteuerung zurück an DME",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
dk_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
|
|
// *****************************
|
|
// *** Ansteuerung Generator ***
|
|
// *****************************
|
|
SCREEN s_gen()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Stellgliedansteuerung Generatorspannung",0,5,1,1);
|
|
z1=3;
|
|
textout(" Ansteuerbedingung: " + gen,z1,5);z1=z1+2;
|
|
textout(" < F1 > Generatorspannung 10V",z1,5);z1=z1+1;
|
|
textout(" < F2 > Generatorspannung 11V",z1,5);z1=z1+1;
|
|
textout(" < F3 > Generatorspannung 12V",z1,5);z1=z1+1;
|
|
textout(" < F4 > Generatorspannung 13V",z1,5);z1=z1+1;
|
|
textout(" < F5 > Generatorspannung 14V",z1,5);z1=z1+1;
|
|
textout(" < F6 > Generatorspannung 15V",z1,5);z1=z1+1;
|
|
textout(" < F7 > Ansteuerung zurück an DME",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
gen_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
|
|
// ***********************************
|
|
// *** Ansteuerung Öldruckregelung ***
|
|
// ***********************************
|
|
SCREEN s_odr()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Stellgliedansteuerung Öldruckregelung",0,5,1,1);
|
|
z1=3;
|
|
textout(" Ansteuerbedingung:",z1,5);z1=z1+1;
|
|
textout(" " + odr,z1,5);z1=z1+2;
|
|
textout(" < F1 > Öldruck 3000 hPa",z1,5);
|
|
textout("< Shift > + < F1 > Öldruck 7500 hPa",z1,45);z1=z1+1;
|
|
textout(" < F2 > Öldruck 3500 hPa",z1,5);
|
|
textout("< Shift > + < F2 > Öldruck 8000 hPa",z1,45);z1=z1+1;
|
|
textout(" < F3 > Öldruck 4000 hPa",z1,5);
|
|
textout("< Shift > + < F3 > Ansteuerung zurück an DME",z1,45);z1=z1+1;
|
|
textout(" < F4 > Öldruck 4500 hPa",z1,5);z1=z1+1;
|
|
textout(" < F5 > Öldruck 5000 hPa",z1,5);z1=z1+1;
|
|
textout(" < F6 > Öldruck 5500 hPa",z1,5);z1=z1+1;
|
|
textout(" < F7 > Öldruck 6000 hPa",z1,5);z1=z1+1;
|
|
textout(" < F8 > Öldruck 6500 hPa",z1,5);z1=z1+1;
|
|
textout(" < F9 > Öldruck 7000 hPa",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
odr_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
|
|
// *********************************
|
|
// *** Ansteuerung Öldruckventil ***
|
|
// *********************************
|
|
SCREEN s_odv()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Stellgliedansteuerung Öldruckventil",0,5,1,1);
|
|
z1=3;
|
|
textout(" Ansteuerbedingung: " + odv,z1,5);z1=z1+2;
|
|
textout(" < F1 > Sollwert 0 %",z1,5);
|
|
textout("< Shift > + < F1 > Sollwert 90 %",z1,45);z1=z1+1;
|
|
textout(" < F2 > Sollwert 10 %",z1,5);
|
|
textout("< Shift > + < F2 > Sollwert 99 %",z1,45);z1=z1+1;
|
|
textout(" < F3 > Sollwert 20 %",z1,5);
|
|
textout("< Shift > + < F3 > Ansteuerung zurück an DME",z1,45);z1=z1+1;
|
|
textout(" < F4 > Sollwert 30 %",z1,5);z1=z1+1;
|
|
textout(" < F5 > Sollwert 40 %",z1,5);z1=z1+1;
|
|
textout(" < F6 > Sollwert 50 %",z1,5);z1=z1+1;
|
|
textout(" < F7 > Sollwert 60 %",z1,5);z1=z1+1;
|
|
textout(" < F8 > Sollwert 70 %",z1,5);z1=z1+1;
|
|
textout(" < F9 > Sollwert 80 %",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
odv_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
|
|
// ************************************
|
|
// *** Ansteuerung Ladedrucksteller ***
|
|
// ************************************
|
|
SCREEN s_lds()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Stellgliedansteuerung LDS",0,5,1,1);
|
|
z1=3;
|
|
textout(" Ansteuerbedingung: " + lds,z1,5);z1=z1+2;
|
|
textout(" < F1 > Ansteuerung 0 %",z1,5);z1=z1+1;
|
|
textout(" < F2 > Ansteuerung 25 %",z1,5);z1=z1+1;
|
|
textout(" < F3 > Ansteuerung 50 %",z1,5);z1=z1+1;
|
|
textout(" < F4 > Ansteuerung 75 %",z1,5);z1=z1+1;
|
|
textout(" < F5 > Ansteuerung 99 %",z1,5);z1=z1+1;
|
|
textout(" < F6 > Ansteuerung zurück an DME",z1,5);z1=z1+1;
|
|
textout(" < F7 > Ladedrucksteller-1",z1,5);z1=z1+1;
|
|
textout(" < F8 > Ladedrucksteller-2",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);z1=z1+2;
|
|
textout(" Erst den jeweiligen Sollwert, dann den Ladedrucksteller wählen!",z1,5);
|
|
lds1_ansteuer(0xFE);
|
|
lds2_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
|
|
// ******************************
|
|
// *** Ansteuerung Motorlager ***
|
|
// ******************************
|
|
SCREEN s_mls()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Stellgliedansteuerung Motorlager",0,5,1,1);
|
|
z1=3;
|
|
textout(" Ansteuerbedingung: " + mls,z1,5);z1=z1+2;
|
|
textout(" < F1 > Motorlager ein",z1,5);z1=z1+1;
|
|
textout(" < F2 > Motorlager aus",z1,5);z1=z1+1;
|
|
textout(" < F3 > Ansteuerung zurück an DME",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
mls_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
|
|
// **************************************
|
|
// *** Ansteuerung Mengensteuerventil ***
|
|
// **************************************
|
|
SCREEN s_msv()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Stellgliedansteuerung MSV",0,5,1,1);
|
|
z1=3;
|
|
textout("Ansteuerbedingung:",z1,5);z1=z1+1;
|
|
textout(msv,z1,5);z1=z1+2;
|
|
textout(" < F1 > Raildruck 75000 hPa",z1,5);z1=z1+1;
|
|
textout(" < F2 > Raildruck 100000 hPa",z1,5);z1=z1+1;
|
|
textout(" < F3 > Raildruck 125000 hPa",z1,5);z1=z1+1;
|
|
textout(" < F4 > Raildruck 150000 hPa",z1,5);z1=z1+1;
|
|
textout(" < F5 > Raildruck 175000 hPa",z1,5);z1=z1+1;
|
|
textout(" < F6 > Ansteuerung zurück an DME",z1,5);z1=z1+2;
|
|
textout(" < F8 > Homogen",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
msv_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
|
|
// *******************************************
|
|
// *** Ansteuerung Abgasrückführungsventil ***
|
|
// *******************************************
|
|
SCREEN s_agr()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Stellgliedansteuerung AGR",0,5,1,1);
|
|
z1=3;
|
|
textout(" Ansteuerbedingung: " + agr,z1,5);z1=z1+2;
|
|
textout(" < F1 > Sollwert 0 %",z1,5);z1=z1+1;
|
|
textout(" < F2 > Sollwert 25 %",z1,5);z1=z1+1;
|
|
textout(" < F3 > Sollwert 50 %",z1,5);z1=z1+1;
|
|
textout(" < F4 > Sollwert 75 %",z1,5);z1=z1+1;
|
|
textout(" < F5 > Sollwert 99 %",z1,5);z1=z1+1;
|
|
textout(" < F6 > Ansteuerung zurück an DME",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
agr_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
|
|
// *****************************************
|
|
// *** Ansteuerung Drosselklappenheizung ***
|
|
// *****************************************
|
|
SCREEN s_dkh()
|
|
{
|
|
int z1;
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
ftextout(dme_text + " Drosselklappenheizung DKH",0,5,1,1);
|
|
z1=3;
|
|
textout(" Ansteuerbedingung: " + dkh,z1,5);z1=z1+2;
|
|
textout(" < F1 > Drosselklappenheizung ein",z1,5);z1=z1+1;
|
|
textout(" < F2 > Drosselklappenheizung aus",z1,5);z1=z1+1;
|
|
textout(" < F3 > Ansteuerung zurück an DME",z1,5);z1=z1+2;
|
|
textout(" < F10 > Zurück",z1,5);
|
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|
dkh_ansteuer(0xFE);
|
|
delay(250);
|
|
}
|
|
|
|
// ****************************************************************************
|
|
// *** INFO - Screen *
|
|
// ****************************************************************************
|
|
SCREEN s_info()
|
|
{
|
|
INPAapiJob(sgbd,"INFO","","");
|
|
ftextout("SGBD - INFO " + dme_text,0,20,1,1);
|
|
textout("=================================================================================",3,0);
|
|
ergebnisAusgabeTxt("Steuergerät: " ,"ECU" , 6,5,0,30);
|
|
ergebnisAusgabeTxt("Verantwortlicher: " ,"ORIGIN" , 7,5,0,30);
|
|
ergebnisAusgabeTxt("SGBD RevisionsNr.: " ,"REVISION", 8,5,0,30);
|
|
ergebnisAusgabeTxt("Author: " ,"AUTHOR" , 9,5,0,30);
|
|
ergebnisAusgabeTxt("Kommentar: " ,"COMMENT" ,10,5,0,30);
|
|
ergebnisAusgabeTxt("Sprache der SGBD: " ,"SPRACHE" ,11,5,0,30);
|
|
ergebnisAusgabeTxt("SW - Include Pakete: " ,"PACKAGE" ,12,5,0,30);
|
|
stop();
|
|
}
|
|
|
|
// ********************
|
|
// *** Ident-Screen ***
|
|
// ********************
|
|
SCREEN s_ident() {
|
|
|
|
int laenge;
|
|
int i_help, i1, i2;
|
|
string s_help, s1, s2, text_var, sx;
|
|
|
|
int laengeInfoFeld = 0;
|
|
string trennzeichen = "#" ;
|
|
string singleChar = "" ;
|
|
|
|
int anzahlSets = 0 ;
|
|
int anzahlSWESets = 0 ;
|
|
|
|
bool auslesenErfolgreich = FALSE ;
|
|
int counter = 0 ;
|
|
|
|
ftextout("Identifikation " + dme_text,0,20,1,1);
|
|
datei_ident = "";
|
|
|
|
textout("============================================================================================",2,0);
|
|
textout("Status:" , 3, 0 );
|
|
|
|
INP1apiJob(sgbd,"IDENT","","");
|
|
INP1apiResultText(auslesenErfolgreich, s1, "JOB_STATUS", 1, "");
|
|
if(auslesenErfolgreich != TRUE) {
|
|
// messagebox ("IDENT", s1) ;
|
|
ftextout( s1 + " " + dme_text + " ist offline", 3, 20 , 0, 1) ;
|
|
stop() ;
|
|
}
|
|
else ftextout( s1 + " " + dme_text + " - SG ist online", 3, 20, 0, 1 );
|
|
|
|
INPAapiResultInt(i_help,"ID_SG_ADR",1);
|
|
i1 = i_help / 16;
|
|
i2 = i_help - 16 * i1;
|
|
inttostring(i1,s1);
|
|
inttostring(i2,s2);
|
|
s_help = "0x" + s1 + s2;
|
|
textout("Steuergeräteadresse:",4,0);
|
|
textout(s_help,4,20);
|
|
INPAapiResultBinary("_REQUEST",1);
|
|
GetBinaryDataString(s1,i1);
|
|
INPAapiResultBinary("_RESPONSE",1);
|
|
GetBinaryDataString(s2,i2);
|
|
textout("SGBD-Index:",5,0);
|
|
i_help = i2 - i1;
|
|
midstr(s_help,s2,i1,i_help);
|
|
s_help = "0x" + s_help;
|
|
textout(s_help,5,20);
|
|
|
|
|
|
INPAapiJob(sgbd,"SVK_LESEN","","");
|
|
|
|
if ( anzahlSets == 0) {
|
|
INPAapiResultSets(anzahlSets) ;
|
|
|
|
if (anzahlSets == 0) {
|
|
messagebox("JOB_STATUS", "Keine Ausgabe der SGBM-ID moeglich!" );
|
|
stop();
|
|
}
|
|
else {
|
|
|
|
INPAapiJob(sgbd,"_SWE_LESEN","1","");
|
|
INPAapiResultSets(anzahlSWESets) ;
|
|
|
|
if (anzahlSWESets > 0) {
|
|
auslesenErfolgreich = FALSE ;
|
|
while (auslesenErfolgreich != TRUE && counter <= 10) {
|
|
INPAapiJob(sgbd,"_SWE_LESEN","1","");
|
|
INP1apiResultText(auslesenErfolgreich,info_feld_1,"INFO_FELD",1,"");
|
|
counter = counter + 1 ;
|
|
}
|
|
counter = 0 ;
|
|
auslesenErfolgreich = FALSE ;
|
|
|
|
while (auslesenErfolgreich != TRUE && counter <= 10) {
|
|
INPAapiJob(sgbd,"_SWE_LESEN","2","");
|
|
INP1apiResultText(auslesenErfolgreich,info_feld_2,"INFO_FELD",1,"");
|
|
counter = counter + 1 ;
|
|
}
|
|
counter = 0 ;
|
|
auslesenErfolgreich = FALSE ;
|
|
|
|
while (auslesenErfolgreich != TRUE && counter <= 10) {
|
|
INPAapiJob(sgbd,"_SWE_LESEN","3","");
|
|
INP1apiResultText(auslesenErfolgreich,info_feld_3,"INFO_FELD",1,"");
|
|
counter = counter + 1 ;
|
|
}
|
|
counter = 0 ;
|
|
auslesenErfolgreich = FALSE ;
|
|
}
|
|
else {
|
|
messagebox("JOB_STATUS", "Keine Ausgabe der Developer-Infofelder moeglich! Ansicht neu laden." );
|
|
stop();
|
|
|
|
}
|
|
}
|
|
}
|
|
INPAapiJob(sgbd,"SVK_LESEN","","");
|
|
|
|
LINE("Hardware Referenz","")
|
|
{
|
|
if ( anzahlSets > 1) {
|
|
ftextout("Hardware Referenz:",1,0,0,1);
|
|
ergebnisAusgabeTxt2("Prozessklasse (Wert):" ,"PROZESSKLASSE_WERT" ,2,0,0,20,1);
|
|
ergebnisAusgabeTxt2("Prozessklasse (Text):" ,"PROZESSKLASSE_TEXT" ,3,0,0,20,1);
|
|
ergebnisAusgabeTxt2("SGBM-Identifier:" ,"SGBM_IDENTIFIER" ,4,0,0,20,1);
|
|
ergebnisAusgabeTxt2("Version:" ,"VERSION" ,5,0,0,20,1);
|
|
}
|
|
}
|
|
|
|
LINE("Bootloader Referenz","info_feld_1")
|
|
{
|
|
if ( anzahlSets > 2) {
|
|
ftextout("Bootloader Referenz:",1,0,0,1);
|
|
ergebnisAusgabeTxt2("Prozessklasse (Wert):" ,"PROZESSKLASSE_WERT" ,2,0,0,20,2);
|
|
ergebnisAusgabeTxt2("Prozessklasse (Text):" ,"PROZESSKLASSE_TEXT" ,3,0,0,20,2);
|
|
ergebnisAusgabeTxt2("SGBM-Identifier:" ,"SGBM_IDENTIFIER" ,4,0,0,20,2);
|
|
ergebnisAusgabeTxt2("Version:" ,"VERSION" ,5,0,0,20,2);
|
|
textout ("Stringformat:" , 6, 0) ;
|
|
textout ("#Bordnetzteilnehmer#Musterstand#BTL##BTL-Entwicklerkommentar", 6, 20) ;
|
|
//textout ("Bootloader : ", 7, 0 ) ;
|
|
stringChopper("Bootloader : ", info_feld_1, 50, 7, 0, 0, 20) ;
|
|
}
|
|
}
|
|
|
|
LINE("Programm Referenz","info_feld_2")
|
|
{
|
|
if ( anzahlSets > 3) {
|
|
ftextout("Programm Referenz:",1,0,0,1);
|
|
ergebnisAusgabeTxt2("Prozessklasse (Wert):" ,"PROZESSKLASSE_WERT" ,2,0,0,20,3);
|
|
ergebnisAusgabeTxt2("Prozessklasse (Text):" ,"PROZESSKLASSE_TEXT" ,3,0,0,20,3);
|
|
ergebnisAusgabeTxt2("SGBM-Identifier:" ,"SGBM_IDENTIFIER" ,4,0,0,20,3);
|
|
ergebnisAusgabeTxt2("Version:" ,"VERSION" ,5,0,0,20,3);
|
|
textout ("Stringformat:", 6, 0) ;
|
|
textout ("#Bordnetzteilnehmer#Musterstand#PST##PST-Entwicklerkommentar", 6, 20) ;
|
|
textout( " : ", 7, 0 ) ;
|
|
//textout( info_feld_2, 7, 20 ) ;
|
|
stringChopper("Programmstand : ", info_feld_2, 50, 7, 0, 0, 20) ;
|
|
}
|
|
}
|
|
LINE("Daten Referenz","info_feld_3")
|
|
{
|
|
if ( anzahlSets > 4) {
|
|
ftextout("Daten Referenz:",1,0,0,1);
|
|
ergebnisAusgabeTxt2("Prozessklasse (Wert):" ,"PROZESSKLASSE_WERT" ,2,0,0,20,4);
|
|
ergebnisAusgabeTxt2("Prozessklasse (Text):" ,"PROZESSKLASSE_TEXT" ,3,0,0,20,4);
|
|
ergebnisAusgabeTxt2("SGBM-Identifier:" ,"SGBM_IDENTIFIER" ,4,0,0,20,4);
|
|
ergebnisAusgabeTxt2("Version:" ,"VERSION" ,5,0,0,20,4);
|
|
textout ("Stringformat:", 6, 0) ;
|
|
textout ("#Bordnetzteilnehmer#Musterstand#DST##DST-Entwicklerkommentar", 6, 20) ;
|
|
stringChopper("Datenstand : ", info_feld_3, 50, 7, 0, 0, 20) ;
|
|
}
|
|
}
|
|
LINE ("Codierdaten Referenz", "")
|
|
{
|
|
if ( anzahlSets > 5) {
|
|
ftextout("Codierdaten Referenz:",1,0,0,1);
|
|
ergebnisAusgabeTxt2("Prozessklasse (Wert):" ,"PROZESSKLASSE_WERT" ,2,0,0,20,5);
|
|
ergebnisAusgabeTxt2("Prozessklasse (Text):" ,"PROZESSKLASSE_TEXT" ,3,0,0,20,5);
|
|
ergebnisAusgabeTxt2("SGBM-Identifier:" ,"SGBM_IDENTIFIER" ,4,0,0,20,5);
|
|
ergebnisAusgabeTxt2("Version:" ,"VERSION" ,5,0,0,20,5);
|
|
}
|
|
else ftextout ("Keine Codierung erfolgt", 1, 0, 0, 1);
|
|
}
|
|
LINE("Zusammenfassung","") {
|
|
INPAapiJob(sgbd,"SVK_LESEN","","");
|
|
ftextout("Zusammenfassung:",1,0,0,1);
|
|
ergebnisAusgabeTxt2("Anzahl Einheiten:", "ANZAHL_EINHEITEN",2,0,0,30,anzahlSets);
|
|
ergebnisAusgabeTxt2("Datum der Programmierung:", "PROG_DATUM",3,0,0,30,anzahlSets);
|
|
ergebnisAusgabeTxt2("Kilometerstand bei Programmierung:", "PROG_KM",4,0,0,30,anzahlSets);
|
|
ergebnisAusgabeTxt2("Status:", "JOB_STATUS", 5,0,0,30,anzahlSets);
|
|
}
|
|
}
|
|
|
|
|
|
// ********************
|
|
// *** AIF - Screen ***
|
|
// ********************
|
|
SCREEN s_aif()
|
|
{
|
|
string text_var;
|
|
int ganz_zahl;
|
|
string job_status="???"; // für Job_Statuskontrolle
|
|
bool fehlerflag; // Fehlerflag
|
|
int errorcode; // EDIABAS Fehlernummer
|
|
|
|
ftextout(dme_text + " Anwender-Information",0,5,1,1);
|
|
|
|
inttostring( taste, text_var);
|
|
LINE("Anwender-Information","")
|
|
{
|
|
INPAapiJob(sgbd,"AIF_LESEN",text_var,"");
|
|
INP1apiResultText(fehlerflag,job_status,"JOB_STATUS",1,"");
|
|
INP1apiErrorCode(errorcode);
|
|
ftextout("",10,0,0,0);
|
|
|
|
if (((fehlerflag == FALSE) && (errorcode == 98)) || (job_status != "OKAY"))
|
|
{
|
|
ftextout("Kein Anwenderinfofeld vorhanden" ,3,0,0,0);
|
|
}
|
|
else
|
|
{
|
|
INPAapiResultInt(ganz_zahl,"AIF_ANZ_DATEN",1);
|
|
if (ganz_zahl > 18) // lange AIF ausgeben
|
|
{
|
|
ftextout("Fahrgestell Nr.",1,0,0,0);
|
|
ftextout(":",1,43,0,0);
|
|
INPAapiResultText(text_var,"AIF_FG_NR",1,"");
|
|
ftextout(text_var,1,45,0,1);
|
|
|
|
ftextout("Zusammenbau Nr.",3,0,0,0);
|
|
ftextout(":",3,43,0,0);
|
|
INPAapiResultText(text_var,"AIF_ZB_NR",1,"");
|
|
ftextout(text_var,3,45,0,1);
|
|
|
|
ftextout("Programmier-Datum",5,0,0,0);
|
|
ftextout(":",5,43,0,0);
|
|
INPAapiResultText(text_var,"AIF_DATUM",1,"");
|
|
ftextout(text_var,5,45,0,1);
|
|
|
|
ftextout("Datensatz Nr.",7,0,0,0);
|
|
ftextout(":",7,43,0,0);
|
|
INPAapiResultText(text_var,"AIF_SW_NR",1,"");
|
|
ftextout(text_var,7,45,0,1);
|
|
|
|
ftextout("Behörden Nr.",9,0,0,0);
|
|
ftextout(":",9,43,0,0);
|
|
INPAapiResultText(text_var,"AIF_BEHOERDEN_NR",1,"");
|
|
ftextout(text_var,9,45,0,1);
|
|
|
|
ftextout("Händler Nr.",11,0,0,0);
|
|
ftextout(":",11,43,0,0);
|
|
INPAapiResultText(text_var,"AIF_HAENDLER_NR",1,"");
|
|
ftextout(text_var,11,45,0,1);
|
|
|
|
ftextout("Tester Nr.",13,0,0,0);
|
|
ftextout(":",13,43,0,0);
|
|
INPAapiResultText(text_var,"AIF_SERIEN_NR",1,"");
|
|
ftextout(text_var,13,45,0,1);
|
|
|
|
ftextout("Kilometerstand",15,0,0,0);
|
|
ftextout(":",15,43,0,0);
|
|
INPAapiResultText(text_var,"AIF_KM",1,"");
|
|
ftextout(text_var,15,45,0,1);
|
|
|
|
ftextout("Programm-Stand",17,0,0,0);
|
|
ftextout(":",17,43,0,0);
|
|
INPAapiResultText(text_var,"AIF_PROG_NR",1,"");
|
|
ftextout(text_var,17,45,0,1);
|
|
|
|
ftextout("Adresse AIF",19,0,0,0);
|
|
ftextout(":",19,43,0,0);
|
|
INPAapiResultInt(ganz_zahl,"AIF_ADRESSE_LOW",1);
|
|
inttohexstring(ganz_zahl,4,text_var);
|
|
ftextout(text_var,19,45,0,1);
|
|
|
|
ftextout("Anzahl freie AIF",21,0,0,0);
|
|
ftextout(":",21,43,0,0);
|
|
INPAapiResultText(text_var,"AIF_ANZ_FREI",1,"");
|
|
ftextout(text_var,21,45,0,1);
|
|
|
|
ftextout("Anzahl Daten AIF",23,0,0,0);
|
|
ftextout(":",23,43,0,0);
|
|
INPAapiResultText(text_var,"AIF_ANZ_DATEN",1,"");
|
|
ftextout(text_var,23,45,0,1);
|
|
stop();
|
|
}
|
|
else //18 Byte -> kurze AIF ausgeben
|
|
{
|
|
ftextout("Fahrgestell Nr.",1,0,0,0);
|
|
ftextout(":",1,43,0,0);
|
|
INPAapiResultText(text_var,"AIF_FG_NR",1,"");
|
|
ftextout(text_var,1,45,0,1);
|
|
|
|
ftextout("Zusammenbau Nr.",3,0,0,0);
|
|
ftextout(":",3,43,0,0);
|
|
INPAapiResultText(text_var,"AIF_ZB_NR",1,"");
|
|
ftextout(text_var,3,45,0,1);
|
|
|
|
ftextout("Programmier-Datum",5,0,0,0);
|
|
ftextout(":",5,43,0,0);
|
|
INPAapiResultText(text_var,"AIF_DATUM",1,"");
|
|
ftextout(text_var,5,45,0,1);
|
|
|
|
ftextout("Adresse AIF",19,0,0,0);
|
|
ftextout(":",19,43,0,0);
|
|
INPAapiResultInt(ganz_zahl,"AIF_ADRESSE_LOW",1);
|
|
inttohexstring(ganz_zahl,4,text_var);
|
|
ftextout(text_var,19,45,0,1);
|
|
|
|
ftextout("Anzahl freie AIF",21,0,0,0);
|
|
ftextout(":",21,43,0,0);
|
|
INPAapiResultText(text_var,"AIF_ANZ_FREI",1,"");
|
|
ftextout(text_var,21,45,0,1);
|
|
|
|
ftextout("Anzahl Daten AIF",23,0,0,0);
|
|
ftextout(":",23,43,0,0);
|
|
INPAapiResultText(text_var,"AIF_ANZ_DATEN",1,"");
|
|
ftextout(text_var,23,45,0,1);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
// ************************
|
|
// *** Fehler-Hauptmenü ***
|
|
// ************************
|
|
SCREEN s_fehlersp_main()
|
|
{
|
|
ftextout("Fehlerspeicher Hauptmenü " + SG_Verbund_text,0,5,1,1);
|
|
textout("========================================================================================",2,0);
|
|
textout("< F1 > Fehlerspeicher lesen (nur für Fehlerspeichereinträge mit Fehlerklassenbedatung >= 10h)" , 4,5);
|
|
textout("< F2 > Infospeicher lesen (nur für Fehlerspeichereinträge mit Fehlerklassenbedatung < 10h)" , 5,5);
|
|
// textout("< F3 > Historyspeicher lesen" , 6,5);
|
|
textout("< F10 > Zurück" , 8,5);
|
|
textout("< Shift > + < F10> INPA beenden" , 8,45);
|
|
datei_fs = "";
|
|
stop();
|
|
}
|
|
|
|
// *********************
|
|
// *** Fehler-Screen ***
|
|
// *********************
|
|
SCREEN s_fehlersp()
|
|
{
|
|
ftextout("Fehlerspeicher " + SG_Verbund_text,0,25,1,1);
|
|
textout("========================================================================================",2,0);
|
|
if (dme_r != dme_l) textout("< F1 > Fehlerspeicher Master lesen, kurz" , 4,5);
|
|
else textout("< F1 > Fehlerspeicher lesen, kurz" , 4,5);
|
|
if (dme_r != dme_l) textout("< F2 > Fehlerspeicher Slave lesen, kurz" , 5,5);
|
|
// textout("< F > Fehlerspeicher lesen Detail" , 5,5);
|
|
// textout("< F3 > Fehlerspeicher mit freeze frame Daten" , 6,5);
|
|
// textout("< F4 > Fehlerspeicher HEX-Dump (Detail)" , 7,5);
|
|
if (dme_r != dme_l) textout("< F5 > Fehlerspeicher löschen Master und Slave" , 8,5);
|
|
else textout("< F5 > Fehlerspeicher löschen" , 8,5);
|
|
if (dme_r != dme_l) {
|
|
textout("< F6 > Abspeicherung des Master-Fehlerspeichers in eine Datei", 9,5);
|
|
textout("< F7 > Abspeicherung des Slave-Fehlerspeichers in eine Datei" ,10,5);
|
|
}
|
|
else textout("< F6 > Abspeicherung des Fehlerspeichers in eine Datei", 9,5);
|
|
// textout("< F8 > Werk 1.1 Nadeldrucker nicht grafikfähig" ,11,5);
|
|
// textout("< F9 > Bildschirm drucken" ,12,5);
|
|
textout("< F10 > Zurück" ,14,5);
|
|
textout("< Shift > + < F10> INPA beenden" ,14,45);
|
|
stop();
|
|
}
|
|
|
|
// *******************
|
|
// *** Info-Screen ***
|
|
// *******************
|
|
SCREEN s_infosp()
|
|
{
|
|
if (sgbd == dme_r) dme_text = dme_text_r;
|
|
else dme_text = dme_text_l;
|
|
|
|
ftextout("Infospeicher " + SG_Verbund_text ,0,27,1,1);
|
|
ftextout("Nur für Entwicklung!",2,35,0,1);
|
|
textout("========================================================================================",3,0);
|
|
|
|
if (dme_r != dme_l) textout("< F1 > Fehlerspeicher Master lesen, kurz" , 5,5);
|
|
else textout("< F1 > Infospeicher lesen" , 5,5);
|
|
if (dme_r != dme_l) textout("< F2 > Fehlerspeicher Slave lesen, kurz" , 6,5);
|
|
|
|
|
|
|
|
// textout("< F3 > Infospeicher mit freeze frame Daten" , 7,5);
|
|
// textout("< F4 > Infospeicher HEX-Dump (Detail)" , 8,5);
|
|
// textout("< F5 > Infospeicher löschen" , 9,5);
|
|
// textout("< F6 > Abspeicherung aller Fehler in eine Datei",10,5);
|
|
// textout("< F7 > Kommentar einfügen" ,11,5);
|
|
// textout("< F8 > Werk 1.1 Nadeldrucker nicht grafikfähig" ,12,5);
|
|
// textout("< F9 > Bildschirm drucken" ,13,5);
|
|
textout("< F10 > Zurück" ,15,5);
|
|
textout("< Shift > + < F10> INPA beenden" ,15,45);
|
|
stop();
|
|
}
|
|
|
|
// **********************
|
|
// *** History-Screen ***
|
|
// **********************
|
|
SCREEN s_historysp()
|
|
{
|
|
ftextout("Historyspeicher " + dme_text,0,25,1,1);
|
|
ftextout("Nur für Entwicklung!",2,35,0,1);
|
|
textout("========================================================================================",3,0);
|
|
textout("< F1 > Historyspeicher lesen" , 5,5);
|
|
textout("< F2 > Historyspeicher löschen" , 6,5);
|
|
textout("< F3 > Abspeicherung aller Fehler in eine Datei", 7,5);
|
|
textout("< F4 > Kommentar einfügen" , 8,5);
|
|
textout("< F5 > Werk 1.1 Nadeldrucker nicht grafikfähig" , 9,5);
|
|
textout("< F6 > Bildschirm drucken" ,10,5);
|
|
textout("< F10 > Zurück" ,12,5);
|
|
textout("< Shift > + < F10> INPA beenden" ,12,45);
|
|
stop();
|
|
}
|
|
|
|
// **************************************
|
|
// *** Fehlerspeicher Lesen - Screen ***
|
|
// **************************************
|
|
SCREEN s_fs_kurz()
|
|
{
|
|
int i_sets;
|
|
string s1;
|
|
|
|
if (sgbd == dme_r) dme_text = dme_text_r;
|
|
else dme_text = dme_text_l;
|
|
|
|
INPAapiJob(sgbd,"FS_LESEN","","");
|
|
INPAapiResultSets( i_sets ); // wieviel Sets wurden abgespeichert
|
|
INPAapiResultText( s1, "JOB_STATUS", i_sets,""); // JOBSTATUS im letzten Satz
|
|
if ( s1 != "OKAY" ) { messagebox( "FS_LESEN", s1 ); stop(); }
|
|
i_sets = i_sets -1;
|
|
if( i_sets != f_anzahl ) { blankscreen; f_anzahl = i_sets; } // BildAufbau neu beseitigt Leichen
|
|
if(f_anzahl == 0 ) { textout("Keine Fehlereinträge",10,20); }
|
|
ftextout(dme_text + " Fehlerspeicher lesen",0,20,1,1);
|
|
textout("=============================================================================================",2,0);
|
|
delay(500);
|
|
LINE(" 1","") {AusgabeBildschirmKurz( 1);}
|
|
LINE(" 2","") {AusgabeBildschirmKurz( 2);}
|
|
LINE(" 3","") {AusgabeBildschirmKurz( 3);}
|
|
LINE(" 4","") {AusgabeBildschirmKurz( 4);}
|
|
LINE(" 5","") {AusgabeBildschirmKurz( 5);}
|
|
LINE(" 6","") {AusgabeBildschirmKurz( 6);}
|
|
LINE(" 7","") {AusgabeBildschirmKurz( 7);}
|
|
LINE(" 8","") {AusgabeBildschirmKurz( 8);}
|
|
LINE(" 9","") {AusgabeBildschirmKurz( 9);}
|
|
LINE("10","") {AusgabeBildschirmKurz(10);}
|
|
LINE("11","") {AusgabeBildschirmKurz(11);}
|
|
LINE("12","") {AusgabeBildschirmKurz(12);}
|
|
LINE("13","") {AusgabeBildschirmKurz(13);}
|
|
LINE("14","") {AusgabeBildschirmKurz(14);}
|
|
LINE("15","") {AusgabeBildschirmKurz(15);}
|
|
LINE("16","") {AusgabeBildschirmKurz(16);}
|
|
}
|
|
|
|
// **************************************
|
|
// *** Fehlerspeicher Lesen - Screen ***
|
|
// **************************************
|
|
SCREEN s_is_kurz()
|
|
{
|
|
int i_sets;
|
|
string s1;
|
|
|
|
if (sgbd == dme_r) dme_text = dme_text_r;
|
|
else dme_text = dme_text_l;
|
|
|
|
INPAapiJob(sgbd,"IS_LESEN","","");
|
|
INPAapiResultSets( i_sets ); // wieviel Sets wurden abgespeichert
|
|
INPAapiResultText( s1, "JOB_STATUS", i_sets,""); // JOBSTATUS im letzten Satz
|
|
if ( s1 != "OKAY" ) { messagebox( "IS_LESEN", s1 ); stop(); }
|
|
i_sets = i_sets -1;
|
|
if( i_sets != f_anzahl ) { blankscreen; f_anzahl = i_sets; } // BildAufbau neu beseitigt Leichen
|
|
if(f_anzahl == 0 ) { textout("Keine Infoeinträge",10,20); }
|
|
ftextout(dme_text + " Infospeicher lesen",0,20,1,1);
|
|
textout("=============================================================================================",2,0);
|
|
delay(500);
|
|
LINE(" 1","") {AusgabeBildschirmKurz( 1);}
|
|
LINE(" 2","") {AusgabeBildschirmKurz( 2);}
|
|
LINE(" 3","") {AusgabeBildschirmKurz( 3);}
|
|
LINE(" 4","") {AusgabeBildschirmKurz( 4);}
|
|
LINE(" 5","") {AusgabeBildschirmKurz( 5);}
|
|
LINE(" 6","") {AusgabeBildschirmKurz( 6);}
|
|
LINE(" 7","") {AusgabeBildschirmKurz( 7);}
|
|
LINE(" 8","") {AusgabeBildschirmKurz( 8);}
|
|
LINE(" 9","") {AusgabeBildschirmKurz( 9);}
|
|
LINE("10","") {AusgabeBildschirmKurz(10);}
|
|
LINE("11","") {AusgabeBildschirmKurz(11);}
|
|
LINE("12","") {AusgabeBildschirmKurz(12);}
|
|
LINE("13","") {AusgabeBildschirmKurz(13);}
|
|
LINE("14","") {AusgabeBildschirmKurz(14);}
|
|
LINE("15","") {AusgabeBildschirmKurz(15);}
|
|
LINE("16","") {AusgabeBildschirmKurz(16);}
|
|
}
|
|
|
|
// ***************************************************************************
|
|
// *** Fehlerspeicher Lesen Detail-Screen *
|
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
|
SCREEN s_fs_detail()
|
|
{
|
|
int i_temp; // Anzahl der Fehlersets
|
|
string s1;
|
|
|
|
INPAapiJob(sgbd,"FS_LESEN","","");
|
|
INPAapiResultSets(i_temp); //wieviel Sets wurden abgespeichert
|
|
INPAapiResultText(s1, "JOB_STATUS",i_temp,"");
|
|
if ( s1 != "OKAY" ) { messagebox( "FS_LESEN", s1 ); stop(); }
|
|
i_temp = i_temp -1; // n Fehler + JOB_STATUS
|
|
delay(500);
|
|
if( i_temp != f_anzahl ) { blankscreen; f_anzahl = i_temp;}
|
|
if(f_anzahl == 0 ) { blankscreen; textout("Keine Fehlereinträge",10,20);}
|
|
ftextout(dme_text + " Fehlerspeicher mit Umwelt",0,15,1,1);
|
|
textout("=============================================================================================",2,0);
|
|
LINE("Fehler 1","") {ausgabeFehlerDetail( 1,1,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 2","") {ausgabeFehlerDetail( 2,1,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 3","") {ausgabeFehlerDetail( 3,1,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 4","") {ausgabeFehlerDetail( 4,1,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 5","") {ausgabeFehlerDetail( 5,1,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 6","") {ausgabeFehlerDetail( 6,1,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 7","") {ausgabeFehlerDetail( 7,1,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 8","") {ausgabeFehlerDetail( 8,1,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 9","") {ausgabeFehlerDetail( 9,1,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 10","") {ausgabeFehlerDetail(10,1,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 11","") {ausgabeFehlerDetail(11,1,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 12","") {ausgabeFehlerDetail(12,1,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 13","") {ausgabeFehlerDetail(13,1,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 14","") {ausgabeFehlerDetail(14,1,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 15","") {ausgabeFehlerDetail(15,1,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 16","") {ausgabeFehlerDetail(16,1,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
}
|
|
|
|
// *************************************************************************
|
|
// *** Infospeicher Lesen Detail-Screen *
|
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
|
SCREEN s_is_detail()
|
|
{
|
|
int i_temp; // Anzahl der Fehlersets
|
|
string s1;
|
|
|
|
INPAapiJob(sgbd,"IS_LESEN","","");
|
|
INPAapiResultSets(i_temp); //wieviel Sets wurden abgespeichert
|
|
INPAapiResultText(s1, "JOB_STATUS",i_temp,"");
|
|
if ( s1 != "OKAY" ) { messagebox( "IS_LESEN", s1 ); stop(); }
|
|
i_temp = i_temp -1; // n Fehler + JOB_STATUS
|
|
delay(500);
|
|
if( i_temp != f_anzahl ) { blankscreen; f_anzahl = i_temp;}
|
|
if(f_anzahl == 0 ) { blankscreen; textout("Keine Infoeinträge",10,20); }
|
|
ftextout(dme_text + " Infospeicher mit Umwelt",0,15,1,1);
|
|
textout("=============================================================================================",2,0);
|
|
LINE("Fehler 1","") {ausgabeFehlerDetail( 1,2,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 2","") {ausgabeFehlerDetail( 2,2,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 3","") {ausgabeFehlerDetail( 3,2,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 4","") {ausgabeFehlerDetail( 4,2,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 5","") {ausgabeFehlerDetail( 5,2,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 6","") {ausgabeFehlerDetail( 6,2,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 7","") {ausgabeFehlerDetail( 7,2,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 8","") {ausgabeFehlerDetail( 8,2,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 9","") {ausgabeFehlerDetail( 9,2,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 10","") {ausgabeFehlerDetail(10,2,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 11","") {ausgabeFehlerDetail(11,2,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 12","") {ausgabeFehlerDetail(12,2,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 13","") {ausgabeFehlerDetail(13,2,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 14","") {ausgabeFehlerDetail(14,2,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 15","") {ausgabeFehlerDetail(15,2,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 16","") {ausgabeFehlerDetail(16,2,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
}
|
|
|
|
//******************************************************************************
|
|
//*** Fehlerspeicher Lesen Lang-Screen *
|
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
|
SCREEN s_fs_lang()
|
|
{
|
|
int sets; // Anzahl der Fehlersets
|
|
string s1;
|
|
|
|
INPAapiJob(sgbd,"FS_LESEN","","");
|
|
INPAapiResultSets(sets); //wieviel Sets wurden abgespeichert
|
|
INPAapiResultText(s1, "JOB_STATUS",sets,"");
|
|
if ( s1 != "OKAY" ) { messagebox( "FS_LESEN", s1 ); stop(); }
|
|
sets = sets -1; // Fehler und JOB_STATUS
|
|
delay(500);
|
|
if( sets != f_anzahl ) { blankscreen; f_anzahl = sets;}
|
|
if(sets == 0 )
|
|
{
|
|
textout("Keine Fehlereinträge",10,20);
|
|
}
|
|
ftextout(dme_text + " Fehlerspeicher lesen Freeze Frame",0,10,1,1);
|
|
textout("=============================================================================================",2,0);
|
|
LINE("Fehler 1","") {AusgabeFehlerFreezeFrame( 1,1,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 2","") {AusgabeFehlerFreezeFrame( 2,1,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 3","") {AusgabeFehlerFreezeFrame( 3,1,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 4","") {AusgabeFehlerFreezeFrame( 4,1,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 5","") {AusgabeFehlerFreezeFrame( 5,1,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 6","") {AusgabeFehlerFreezeFrame( 6,1,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 7","") {AusgabeFehlerFreezeFrame( 7,1,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 8","") {AusgabeFehlerFreezeFrame( 8,1,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 9","") {AusgabeFehlerFreezeFrame( 9,1,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 10","") {AusgabeFehlerFreezeFrame(10,1,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 11","") {AusgabeFehlerFreezeFrame(11,1,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 12","") {AusgabeFehlerFreezeFrame(12,1,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 13","") {AusgabeFehlerFreezeFrame(13,1,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 14","") {AusgabeFehlerFreezeFrame(14,1,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 15","") {AusgabeFehlerFreezeFrame(15,1,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 16","") {AusgabeFehlerFreezeFrame(16,1,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
}
|
|
|
|
//****************************************************************************
|
|
//*** Infospeicher Lesen Lang-Screen *
|
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
|
SCREEN s_is_lang()
|
|
{
|
|
int sets; // Anzahl der Fehlersets
|
|
string s1;
|
|
|
|
INPAapiJob(sgbd,"IS_LESEN","","");
|
|
INPAapiResultSets(sets); //wieviel Sets wurden abgespeichert
|
|
INPAapiResultText(s1, "JOB_STATUS",sets,"");
|
|
if ( s1 != "OKAY" ) { messagebox( "IS_LESEN", s1 ); stop(); }
|
|
sets = sets -1; // Fehler und JOB_STATUS
|
|
delay(500);
|
|
if( sets != f_anzahl ) { blankscreen; f_anzahl = sets;}
|
|
if(sets == 0 )
|
|
{
|
|
textout("Keine Infoeinträge",10,20);
|
|
}
|
|
ftextout(dme_text + " Infospeicher lesen Freeze Frame",0,10,1,1);
|
|
textout("=============================================================================================",2,0);
|
|
LINE("Fehler 1","") {AusgabeFehlerFreezeFrame( 1,2,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 2","") {AusgabeFehlerFreezeFrame( 2,2,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 3","") {AusgabeFehlerFreezeFrame( 3,2,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 4","") {AusgabeFehlerFreezeFrame( 4,2,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 5","") {AusgabeFehlerFreezeFrame( 5,2,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 6","") {AusgabeFehlerFreezeFrame( 6,2,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 7","") {AusgabeFehlerFreezeFrame( 7,2,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 8","") {AusgabeFehlerFreezeFrame( 8,2,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 9","") {AusgabeFehlerFreezeFrame( 9,2,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 10","") {AusgabeFehlerFreezeFrame(10,2,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 11","") {AusgabeFehlerFreezeFrame(11,2,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 12","") {AusgabeFehlerFreezeFrame(12,2,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 13","") {AusgabeFehlerFreezeFrame(13,2,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 14","") {AusgabeFehlerFreezeFrame(14,2,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 15","") {AusgabeFehlerFreezeFrame(15,2,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 16","") {AusgabeFehlerFreezeFrame(16,2,sets,f_reset);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
}
|
|
|
|
// **************************************
|
|
// *** FehlerspeicherHexDump-Screen ***
|
|
// **************************************
|
|
SCREEN s_fs_hex()
|
|
{
|
|
delay(500);
|
|
ftextout(dme_text + " Fehlerspeicher Detail als HEX-Dump",0,8,1,1);
|
|
textout("=============================================================================================",2,0);
|
|
LINE("Fehler 1","") {ausgabeFehlerHex( 1,1);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 2","") {ausgabeFehlerHex( 2,1);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 3","") {ausgabeFehlerHex( 3,1);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 4","") {ausgabeFehlerHex( 4,1);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 5","") {ausgabeFehlerHex( 5,1);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 6","") {ausgabeFehlerHex( 6,1);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 7","") {ausgabeFehlerHex( 7,1);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 8","") {ausgabeFehlerHex( 8,1);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 9","") {ausgabeFehlerHex( 9,1);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 10","") {ausgabeFehlerHex(10,1);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 11","") {ausgabeFehlerHex(11,1);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 12","") {ausgabeFehlerHex(12,1);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 13","") {ausgabeFehlerHex(13,1);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 14","") {ausgabeFehlerHex(14,1);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 15","") {ausgabeFehlerHex(15,1);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 16","") {ausgabeFehlerHex(16,1);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
}
|
|
|
|
// ***********************************
|
|
// *** InfospeicherHexDump-Screen ***
|
|
// ***********************************
|
|
SCREEN s_is_hex()
|
|
{
|
|
delay(500);
|
|
ftextout(dme_text + " Infospeicher Detail als HEX-Dump",0,8,1,1);
|
|
textout("=============================================================================================",2,0);
|
|
LINE("Fehler 1","") {ausgabeFehlerHex( 1,2);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 2","") {ausgabeFehlerHex( 2,2);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 3","") {ausgabeFehlerHex( 3,2);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 4","") {ausgabeFehlerHex( 4,2);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 5","") {ausgabeFehlerHex( 5,2);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 6","") {ausgabeFehlerHex( 6,2);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 7","") {ausgabeFehlerHex( 7,2);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 8","") {ausgabeFehlerHex( 8,2);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 9","") {ausgabeFehlerHex( 9,2);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 10","") {ausgabeFehlerHex(10,2);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 11","") {ausgabeFehlerHex(11,2);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 12","") {ausgabeFehlerHex(12,2);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 13","") {ausgabeFehlerHex(13,2);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 14","") {ausgabeFehlerHex(14,2);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 15","") {ausgabeFehlerHex(15,2);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
LINE("Fehler 16","") {ausgabeFehlerHex(16,2);} // 1 = Fehlerspeicher; 2 = Infospeicher;
|
|
}
|
|
|
|
// ****************************************************************************
|
|
// *** Fehlerspeicher Löschen SCREEN ***
|
|
// *** 17 07 01 mw Abfrage und Ausstieg hinzu ueberfluessige Variable weg ***
|
|
// ****************************************************************************
|
|
SCREEN s_fs_loesch()
|
|
{
|
|
string s1;
|
|
int i_temp = 2;
|
|
|
|
s1 = "";
|
|
inputtext( s1, "Soll der Fehlerspeicher wirklich gelöscht werden?","Die OK- oder RETURN-Taste löscht!");
|
|
getinputstate( i_temp );
|
|
|
|
|
|
if (dme_r != dme_l) {
|
|
if( i_temp == 0) {
|
|
sgbd = dme_r;
|
|
INPAapiJob(sgbd,"FS_LOESCHEN","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("FS_LOESCHEN",s1); stop(); }
|
|
|
|
sgbd = dme_l;
|
|
INPAapiJob(sgbd,"FS_LOESCHEN","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
sgbd = currentSGBD;
|
|
if (s1 != "OKAY") { messagebox("FS_LOESCHEN",s1); stop(); }
|
|
else {
|
|
blankscreen();
|
|
ftextout("Fehlerspeicher wurde gelöscht",10,10,1,1);
|
|
delay(600);
|
|
setmenu(m_fehlersp);
|
|
setscreen(s_fs_kurz,TRUE);
|
|
}
|
|
}
|
|
else {
|
|
blankscreen();
|
|
ftextout("Fehlerspeicher nicht gelöscht",12,10,1,1);
|
|
delay(3000);
|
|
setmenu(m_fehlersp);
|
|
setscreen(s_fs_kurz,TRUE);
|
|
}
|
|
}
|
|
else {
|
|
if( i_temp == 0) {
|
|
|
|
INPAapiJob(sgbd,"FS_LOESCHEN","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
|
|
if (s1 != "OKAY") { messagebox("FS_LOESCHEN",s1); stop(); }
|
|
else {
|
|
|
|
blankscreen();
|
|
ftextout("Fehlerspeicher wurde gelöscht",10,10,1,1);
|
|
delay(600);
|
|
setmenu(m_fehlersp);
|
|
setscreen(s_fs_kurz,TRUE);
|
|
}
|
|
}
|
|
else {
|
|
blankscreen();
|
|
ftextout("Fehlerspeicher nicht gelöscht",12,10,1,1);
|
|
delay(3000);
|
|
setmenu(m_fehlersp);
|
|
setscreen(s_fs_kurz,TRUE);
|
|
}
|
|
|
|
}
|
|
|
|
|
|
setmenu(m_fehlersp);
|
|
setscreen(s_fs_kurz,TRUE);
|
|
}
|
|
|
|
// ****************************************************************************
|
|
// *** Infospeicher Löschen SCREEN ***
|
|
// *** 17 07 01 mw Abfrage und Ausstieg hinzu ueberfluessige Variable weg ***
|
|
// ****************************************************************************
|
|
SCREEN s_is_loesch()
|
|
{
|
|
string s1;
|
|
int i_temp = 2;
|
|
|
|
s1 = "";
|
|
inputtext( s1, "Soll der Infospeicher wirklich gelöscht werden?","Die OK- oder RETURN-Taste löscht!");
|
|
getinputstate( i_temp );
|
|
if( i_temp == 0)
|
|
{
|
|
if (dme_r != dme_l) {
|
|
INPAapiJob(dme_r,"FS_LOESCHEN","","");
|
|
INPAapiJob(dme_l,"FS_LOESCHEN","","");
|
|
}
|
|
else INPAapiJob(sgbd,"FS_LOESCHEN","","");
|
|
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("FS_LOESCHEN",s1); stop(); }
|
|
else
|
|
{
|
|
blankscreen();
|
|
ftextout("Infospeicher wurde gelöscht",10,10,1,1);
|
|
delay(600);
|
|
setmenu(m_infosp);
|
|
setscreen(s_is_kurz,TRUE);
|
|
}
|
|
}
|
|
else
|
|
{
|
|
blankscreen();
|
|
ftextout("Infospeicher nicht gelöscht",12,10,1,1);
|
|
delay(3000);
|
|
setmenu(m_infosp);
|
|
setscreen(s_is_kurz,TRUE);
|
|
}
|
|
|
|
setmenu(m_infosp);
|
|
setscreen(s_is_kurz,TRUE);
|
|
}
|
|
|
|
// **********************
|
|
// *** P-Codes-Screen ***
|
|
// **********************
|
|
SCREEN s_obd()
|
|
{
|
|
string f1;
|
|
int y1, z1;
|
|
y1=1;inttostring(y1,f1);z1=1;
|
|
|
|
ftextout("OBD-Modes " + dme_text,0,20,z1,1);z1=z1+3;
|
|
textout("========================================================================================",2,0);
|
|
textout("< F" + f1 +" > Status OBD Mode 1 PID 01" ,z1, 5);y1=y1+1;inttostring(y1,f1);z1=z1+1;
|
|
textout("< F" + f1 +" > Status OBD Mode 2 (nicht unterstützt)" ,z1, 5);y1=y1+1;inttostring(y1,f1);z1=z1+1;
|
|
textout("< F" + f1 +" > Status OBD Mode 3" ,z1, 5);y1=y1+1;inttostring(y1,f1);z1=z1+1;
|
|
textout("< F" + f1 +" > Status OBD Mode 4 (nicht unterstützt)" ,z1, 5);y1=y1+1;inttostring(y1,f1);z1=z1+1;
|
|
textout("< F" + f1 +" > Status OBD Mode 5 (nicht unterstützt)" ,z1, 5);y1=y1+1;inttostring(y1,f1);z1=z1+1;
|
|
textout("< F" + f1 +" > Status OBD Mode 6 (nicht unterstützt)" ,z1, 5);y1=y1+1;inttostring(y1,f1);z1=z1+1;
|
|
textout("< F" + f1 +" > Status OBD Mode 7" ,z1, 5);y1=y1+1;inttostring(y1,f1);z1=z1+1;
|
|
textout("< F" + f1 +" > Status OBD Mode 8 (nicht unterstützt)" ,z1, 5);y1=y1+1;inttostring(y1,f1);z1=z1+1;
|
|
textout("< F" + f1 +" > Status OBD Mode 9" ,z1, 5);z1=z1+2;
|
|
textout("< F10 > Zurück" ,z1, 5);
|
|
textout("< Shift > + < F10> INPA beenden" ,z1,45);
|
|
datei_rbm = "";
|
|
stop();
|
|
}
|
|
|
|
// *************************************
|
|
// *** Stauts OBD Mode1 PID01-Screen ***
|
|
// *************************************
|
|
SCREEN s_mode_1()
|
|
{
|
|
int i1,z1;
|
|
bool b1;
|
|
string s1, s2, pcode;
|
|
i1 = 0;
|
|
z1 = 0;
|
|
ftextout(dme_text + " - Scantoolausgabe",z1,22,1,1);z1=z1+2;
|
|
ftextout("Monitorfunktionen und Readiness Flags",z1,26,0,1);z1=z1+1;
|
|
textout("=========================================================================================",z1,0);z1=z1+4;
|
|
INPAapiJob(sgbd,"_STATUS_OBD_MODE_01","",""); // Statusergebnisse ermitteln
|
|
INPAapiResultText(vartext1,"JOB_STATUS",1,"");
|
|
if (vartext1 != "OKAY")
|
|
{
|
|
messagebox("_STATUS_OBD_MODE_01",vartext1);
|
|
stop();
|
|
}
|
|
LINE("Mil-Status,Anzahl gespeicherter P-Codes","STAT_MIL_WERT;STAT_ANZAHL_PCODE_WERT;")
|
|
{
|
|
text(0, 0,"MIL - Status");
|
|
ergebnisDigitalAusgabe("STAT_MIL_WERT", 2, 0," Ja "," Nein ");
|
|
text(0,45,"Anzahl gespeicherter P-Codes");
|
|
INPAapiResultInt(i1,"STAT_ANZAHL_PCODE_WERT",1);
|
|
inttostring(i1,s1);
|
|
textout(s1,1,45);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Verbrennungsaussetzer,Kraftstoffsystem","STAT_MONITOR_VA_WERT;STAT_READINESS_VA_WERT;STAT_MONITOR_KSS_WERT;STAT_READINESS_KSS_WERT")
|
|
{
|
|
text(0, 8,"Verbrennungsaussetzer");
|
|
text(1, 0,"MONITOR");
|
|
text(1,20,"READINESS");
|
|
ergebnisDigitalAusgabe("STAT_MONITOR_VA_WERT", 2, 0," Ein "," Aus ");
|
|
INPAapiResultInt(i1,"STAT_MONITOR_VA_WERT",1);
|
|
if (i1 != 0)
|
|
{
|
|
INPAapiResultInt(i1,"STAT_READINESS_VA_WERT",1);
|
|
if (i1 == 1) {b1 = 0;} else {b1 = 1;}
|
|
digitalout(b1, 2,20," Ja "," Nein ");
|
|
}
|
|
else
|
|
{
|
|
b1 = 0;
|
|
digitalout(b1, 2,20," Ja "," Nicht unterstützt");
|
|
}
|
|
text(0,52,"Kraftstoffsystem");
|
|
text(1,44,"MONITOR");
|
|
text(1,64,"READINESS");
|
|
ergebnisDigitalAusgabe("STAT_MONITOR_KSS_WERT", 2,44," Ein "," Aus ");
|
|
INPAapiResultInt(i1,"STAT_MONITOR_KSS_WERT",1);
|
|
if (i1 != 0)
|
|
{
|
|
INPAapiResultInt(i1,"STAT_READINESS_KSS_WERT",1);
|
|
if (i1 == 1) {b1 = 0;} else {b1 = 1;}
|
|
digitalout(b1, 2,64," Ja "," Nein ");
|
|
}
|
|
else
|
|
{
|
|
b1 = 0;
|
|
digitalout(b1, 2,64," Ja "," Nicht unterstützt");
|
|
}
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Übrige Komponenten","STAT_MONITOR_CC_WERT;STAT_READINESS_CC_WERT")
|
|
{
|
|
text(0, 8,"Bauteile");
|
|
text(1, 0,"MONITOR");
|
|
text(1,20,"READINESS");
|
|
ergebnisDigitalAusgabe("STAT_MONITOR_CC_WERT", 2, 0," Ein "," Aus ");
|
|
INPAapiResultInt(i1,"STAT_MONITOR_CC_WERT",1);
|
|
if (i1 != 0)
|
|
{
|
|
INPAapiResultInt(i1,"STAT_READINESS_CC_WERT",1);
|
|
if (i1 == 1) {b1 = 0;} else {b1 = 1;}
|
|
digitalout(b1, 2,20," Ja "," Nein ");
|
|
}
|
|
else
|
|
{
|
|
b1 = 0;
|
|
digitalout(b1, 2,20," Ja "," Nicht unterstützt");
|
|
}
|
|
textout("=========================================================================================",4,0);
|
|
}
|
|
LINE("Katalysator, Katalysatorheizung","STAT_MONITOR_KAT_WERT;STAT_READINESS_KAT_WERT;STAT_MONITOR_KH_WERT;STAT_READINESS_KH_WERT")
|
|
{
|
|
text(0, 8,"Katalysator");
|
|
text(1, 0,"MONITOR");
|
|
text(1,20,"READINESS");
|
|
ergebnisDigitalAusgabe("STAT_MONITOR_KAT_WERT", 2, 0," Ein "," Aus ");
|
|
INPAapiResultInt(i1,"STAT_MONITOR_KAT_WERT",1);
|
|
if (i1 != 0)
|
|
{
|
|
INPAapiResultInt(i1,"STAT_READINESS_KAT_WERT",1);
|
|
if (i1 == 1) {b1 = 0;} else {b1 = 1;}
|
|
digitalout(b1, 2,20," Ja "," Nein ");
|
|
}
|
|
else
|
|
{
|
|
b1 = 0;
|
|
digitalout(b1, 2,20," Ja "," Nicht unterstützt");
|
|
}
|
|
text(0,52,"Katalysatorheizung");
|
|
text(1,44,"MONITOR");
|
|
text(1,64,"READINESS");
|
|
ergebnisDigitalAusgabe("STAT_MONITOR_KH_WERT", 2,44," Ein "," Aus ");
|
|
INPAapiResultInt(i1,"STAT_MONITOR_KH_WERT",1);
|
|
if (i1 != 0)
|
|
{
|
|
INPAapiResultInt(i1,"STAT_READINESS_KH_WERT",1);
|
|
if (i1 == 1) {b1 = 0;} else {b1 = 1;}
|
|
digitalout(b1, 2,64," Ja "," Nein ");
|
|
}
|
|
else
|
|
{
|
|
b1 = 0;
|
|
digitalout(b1, 2,64," Ja "," Nicht unterstützt");
|
|
}
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Tankentlüftung, Sekundärluft","STAT_MONITOR_TEV_WERT;STAT_READINESS_TEV_WERT;STAT_MONITOR_SLS_WERT;STAT_READINESS_SLS_WERT")
|
|
{
|
|
text(0, 8,"Tankentlüftung");
|
|
text(1, 0,"MONITOR");
|
|
text(1,20,"READINESS");
|
|
ergebnisDigitalAusgabe("STAT_MONITOR_TEV_WERT", 2, 0," Ein "," Aus ");
|
|
INPAapiResultInt(i1,"STAT_MONITOR_TEV_WERT",1);
|
|
if (i1 != 0)
|
|
{
|
|
INPAapiResultInt(i1,"STAT_READINESS_TEV_WERT",1);
|
|
if (i1 == 1) {b1 = 0;} else {b1 = 1;}
|
|
digitalout(b1, 2,20," Ja "," Nein ");
|
|
}
|
|
else
|
|
{
|
|
b1 = 0;
|
|
digitalout(b1, 2,20," Ja "," Nicht unterstützt");
|
|
}
|
|
text(0,52,"Sekundärluft");
|
|
text(1,44,"MONITOR");
|
|
text(1,64,"READINESS");
|
|
ergebnisDigitalAusgabe("STAT_MONITOR_SLS_WERT", 2,44," Ein "," Aus ");
|
|
INPAapiResultInt(i1,"STAT_MONITOR_SLS_WERT",1);
|
|
if (i1 != 0)
|
|
{
|
|
INPAapiResultInt(i1,"STAT_READINESS_SLS_WERT",1);
|
|
if (i1 == 1) {b1 = 0;} else {b1 = 1;}
|
|
digitalout(b1, 2,64," Ja "," Nein ");
|
|
}
|
|
else
|
|
{
|
|
b1 = 0;
|
|
digitalout(b1, 2,64," Ja "," Nicht unterstützt");
|
|
}
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Lambdasonde Überwachung,Lambdasondenheizung Überwachung","STAT_MONITOR_LS_WERT;STAT_READINESS_LS_WERT;STAT_MONITOR_LSH_WERT;STAT_READINESS_LSH_WERT")
|
|
{
|
|
text(0, 8,"Lambdasonde");
|
|
text(1, 0,"MONITOR");
|
|
text(1,20,"READINESS");
|
|
ergebnisDigitalAusgabe("STAT_MONITOR_LS_WERT", 2, 0," Ein "," Aus ");
|
|
INPAapiResultInt(i1,"STAT_MONITOR_LS_WERT",1);
|
|
if (i1 != 0)
|
|
{
|
|
INPAapiResultInt(i1,"STAT_READINESS_LS_WERT",1);
|
|
if (i1 == 1) {b1 = 0;} else {b1 = 1;}
|
|
digitalout(b1, 2,20," Ja "," Nein ");
|
|
}
|
|
else
|
|
{
|
|
b1 = 0;
|
|
digitalout(b1, 2,20," Ja "," Nicht unterstützt");
|
|
}
|
|
text(0,52,"Lambdasondenheizung");
|
|
text(1,44,"MONITOR");
|
|
text(1,64,"READINESS");
|
|
ergebnisDigitalAusgabe("STAT_MONITOR_LSH_WERT", 2,44," Ein "," Aus ");
|
|
INPAapiResultInt(i1,"STAT_MONITOR_LSH_WERT",1);
|
|
if (i1 != 0)
|
|
{
|
|
INPAapiResultInt(i1,"STAT_READINESS_LSH_WERT",1);
|
|
if (i1 == 1) {b1 = 0;} else {b1 = 1;}
|
|
digitalout(b1, 2,64," Ja "," Nein ");
|
|
}
|
|
else
|
|
{
|
|
b1 = 0;
|
|
digitalout(b1, 2,64," Ja "," Nicht unterstützt");
|
|
}
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Klimaanlage, Abgasrückführung","STAT_MONITOR_KLIMA_WERT;STAT_READINESS_KLIMA_WERT;STAT_MONITOR_ARS_WERT;STAT_READINESS_ARS_WERT")
|
|
{
|
|
text(0, 8,"Klimaanlage");
|
|
text(1, 0,"MONITOR");
|
|
text(1,20,"READINESS");
|
|
ergebnisDigitalAusgabe("STAT_MONITOR_KLIMA_WERT", 2, 0," Ein "," Aus ");
|
|
INPAapiResultInt(i1,"STAT_MONITOR_KLIMA_WERT",1);
|
|
if (i1 != 0)
|
|
{
|
|
INPAapiResultInt(i1,"STAT_READINESS_KLIMA_WERT",1);
|
|
if (i1 == 1) {b1 = 0;} else {b1 = 1;}
|
|
digitalout(b1, 2,20," Ja "," Nein ");
|
|
}
|
|
else
|
|
{
|
|
b1 = 0;
|
|
digitalout(b1, 2,20," Ja "," Nicht unterstützt");
|
|
}
|
|
text(0,52,"Abgasrückführung");
|
|
text(1,44,"MONITOR");
|
|
text(1,64,"READINESS");
|
|
ergebnisDigitalAusgabe("STAT_MONITOR_ARS_WERT", 2,44," Ein "," Aus ");
|
|
INPAapiResultInt(i1,"STAT_MONITOR_ARS_WERT",1);
|
|
if (i1 != 0)
|
|
{
|
|
INPAapiResultInt(i1,"STAT_READINESS_ARS_WERT",1);
|
|
if (i1 == 1) {b1 = 0;} else {b1 = 1;}
|
|
digitalout(b1, 2,64," Ja "," Nein ");
|
|
}
|
|
else
|
|
{
|
|
b1 = 0;
|
|
digitalout(b1, 2,64," Ja "," Nicht unterstützt");
|
|
}
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
}
|
|
|
|
// **********************************
|
|
// *** P-Codes-lesen-Mode3-Screen ***
|
|
// **********************************
|
|
SCREEN s_mode_3()
|
|
{
|
|
int i,r,z1;
|
|
string s1, s2, pcode;
|
|
i = 1;
|
|
r = 0;
|
|
z1 = 0;
|
|
ftextout(dme_text + " - P-Codes lesen Mode 3",z1,15,1,1);z1=z1+2;
|
|
textout("========================================================================================",z1,0);z1=z1+4;
|
|
INPAapiJob(sgbd,"_STATUS_OBD_MODE_03","",""); // Statusergebnisse ermitteln
|
|
INPAapiResultText(vartext1,"JOB_STATUS",1,"");
|
|
if (vartext1 != "OKAY")
|
|
{
|
|
messagebox("_STATUS_OBD_MODE_03",vartext1);
|
|
stop();
|
|
}
|
|
else
|
|
{
|
|
INPAapiResultInt(r,"STAT_PCODE_M3_ANZAHL",1);
|
|
if(r != 0)
|
|
{
|
|
textout("-----------------------------------------------------------------------------------------------------------------------------------------------------------------",z1,0);z1=z1+1;
|
|
while(i <= r)
|
|
{
|
|
inttostring(i,s1);
|
|
s2=s1 + ". P-Code";
|
|
textout(s2,z1,0);
|
|
s2="STAT_PCODE_" + s1 + "_HEX";
|
|
INPAapiResultText(pcode,s2,1,"");
|
|
textout("P-Code-Hex: " + pcode,z1,10);
|
|
z1=z1+1;
|
|
s2="STAT_PCODE_" + s1 + "_TEXT";
|
|
INPAapiResultText(pcode,s2,1,"");
|
|
textout(pcode,z1,0);
|
|
i=i+1;
|
|
z1=z1+1;
|
|
textout("-----------------------------------------------------------------------------------------------------------------------------------------------------------------",z1,0);z1=z1+1;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
ftextout("Es sind keine P-Codes gespeichert!",12,15,1,1);
|
|
}
|
|
}
|
|
}
|
|
|
|
// **********************************
|
|
// *** P-Codes-lesen-Mode7-Screen ***
|
|
// **********************************
|
|
SCREEN s_mode_7()
|
|
{
|
|
int i,r,z1;
|
|
string s1, s2, pcode;
|
|
i = 1;
|
|
r = 0;
|
|
z1 = 0;
|
|
ftextout(dme_text + " - P-Codes lesen Mode 7",z1,15,1,1);z1=z1+2;
|
|
textout("========================================================================================",z1,0);z1=z1+4;
|
|
INPAapiJob(sgbd,"_STATUS_OBD_MODE_07","",""); // Statusergebnisse ermitteln
|
|
INPAapiResultText(vartext1,"JOB_STATUS",1,"");
|
|
if (vartext1 != "OKAY")
|
|
{
|
|
messagebox("_STATUS_OBD_MODE_07",vartext1);
|
|
stop();
|
|
}
|
|
else
|
|
{
|
|
INPAapiResultInt(r,"STAT_PCODE_M7_ANZAHL",1);
|
|
if(r != 0)
|
|
{
|
|
textout("-----------------------------------------------------------------------------------------------------------------------------------------------------------------",z1,0);z1=z1+1;
|
|
while(i <= r)
|
|
{
|
|
inttostring(i,s1);
|
|
s2=s1 + ". P-Code";
|
|
textout(s2,z1,0);
|
|
s2="STAT_PCODE_" + s1 + "_HEX";
|
|
INPAapiResultText(pcode,s2,1,"");
|
|
textout("P-Code-Hex: " + pcode,z1,10);
|
|
z1=z1+1;
|
|
s2="STAT_PCODE_" + s1 + "_TEXT";
|
|
INPAapiResultText(pcode,s2,1,"");
|
|
textout(pcode,z1,0);
|
|
i=i+1;
|
|
z1=z1+1;
|
|
textout("-----------------------------------------------------------------------------------------------------------------------------------------------------------------",z1,0);z1=z1+1;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
ftextout("Es sind keine P-Codes gespeichert!",12,15,1,1);
|
|
}
|
|
}
|
|
}
|
|
|
|
// *************************************
|
|
// *** RBM-Ratios-lesen-Mode9-Screen ***
|
|
// *************************************
|
|
SCREEN s_mode_9()
|
|
{
|
|
int z1;
|
|
z1=1;
|
|
|
|
ftextout(dme_text + " - RBM-Ratios lesen",z1,20,1,1);z1=z1+2;
|
|
textout("========================================================================================",z1,0);z1=z1+2;
|
|
textout("< F1 > RBM-Mode 9 lesen" ,z1, 5);z1=z1+1;
|
|
textout("< F2 > RBM-Block 1 lesen" ,z1, 5);z1=z1+1;
|
|
textout("< F3 > RBM-Block 2 lesen" ,z1, 5);z1=z1+1;
|
|
textout("< F8 > Ausgabe der RBM-Werte in Datei" ,z1, 5);z1=z1+1;
|
|
textout("< F10 > Zurück" ,z1, 5);
|
|
textout("< Shift > + < F10> INPA beenden" ,z1,45);
|
|
}
|
|
|
|
// *************************************
|
|
// *** RBM-Ratios-lesen-Mode9-Screen ***
|
|
// *************************************
|
|
SCREEN s_rbmmode9()
|
|
{
|
|
int i1,z1;
|
|
real r,n,z;
|
|
string s_temp,s1;
|
|
z1 = 0;
|
|
datei_rbm = "";
|
|
|
|
ftextout(dme_text + " - RBM-Ratios lesen Mode 9",z1,15,1,1);z1=z1+2;
|
|
textout("========================================================================================",z1,0);z1=z1+4;
|
|
INPAapiJob(sgbd,"_STATUS_OBD_MODE_09","",""); // Statusergebnisse ermitteln
|
|
INPAapiResultText(vartext1,"JOB_STATUS",1,"");
|
|
if (vartext1 != "OKAY")
|
|
{
|
|
INPAapiJob(sgbd,"_STATUS_RBMMODE9","",""); // Statusergebnisse ermitteln
|
|
INPAapiResultText(vartext1,"JOB_STATUS",1,"");
|
|
if (vartext1 != "OKAY")
|
|
{
|
|
messagebox("_STATUS_OBD_MODE_09",vartext1);
|
|
stop();
|
|
}
|
|
}
|
|
LINE("OBD Monitoring Conditions Encountered Counts, Anzahl Motorstarts","STAT_OBDCOND;STAT_IGNCNTR")
|
|
{
|
|
vartext1 = "OBD-Zyklen:";
|
|
textout(vartext1,1,0);
|
|
INPAapiResultInt(i1,"STAT_OBDCOND",1);
|
|
inttostring(i1, s1);
|
|
textout(s1,1,35);
|
|
vartext1 = "Anzahl Motorstarts:";
|
|
textout(vartext1,1,45);
|
|
INPAapiResultInt(i1,"STAT_IGNCNTR",1);
|
|
inttostring(i1, s1);
|
|
textout(s1,1,80);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",3,0);
|
|
}
|
|
LINE("Überwachung Katalysator Bank 1, Überwachung Katalysator Bank 2","STAT_CATCOMP1;STAT_CATCOND1;STAT_CATCOMP2;STAT_CATCOND2")
|
|
{
|
|
Ausgabe_RBM("lang","_STATUS_OBD_MODE_09","Überwachung Katalysator Bank 1","STAT_CATCOMP1","STAT_CATCOND1","Überwachung Katalysator Bank 2","STAT_CATCOMP2","STAT_CATCOND2",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung Lambdasonden Bank 1, Überwachung Lambdasonden Bank 2","STAT_O2SCOMP1;STAT_O2SCOND1;STAT_O2SCOMP2;STAT_O2SCOND2")
|
|
{
|
|
Ausgabe_RBM("lang","_STATUS_OBD_MODE_09","Überwachung Lambdasonden Bank 1","STAT_O2SCOMP1","STAT_O2SCOND1","Überwachung Lambdasonden Bank 2","STAT_O2SCOMP2","STAT_O2SCOND2",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung Abgasrückführung, Überwachung Ansauganlage","STAT_EGRCOMP;STAT_EGRCOND;STAT_AIRCOMP1;STAT_AIRCOND1")
|
|
{
|
|
Ausgabe_RBM("lang","_STATUS_OBD_MODE_09","Überwachung Abgasrückführung","STAT_EGRCOMP","STAT_EGRCOND","Überwachung Ansauganlage","STAT_AIRCOMP1","STAT_AIRCOND1",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung Tankentlüftung","STAT_EVAPCOMP;STAT_EVAPCOND")
|
|
{
|
|
Ausgabe_RBM("kurz","_STATUS_OBD_MODE_09","Überwachung Tankentlüftung","STAT_EVAPCOMP","STAT_EVAPCOND","","","",0);
|
|
textout("========================================================================================",4,0);
|
|
}
|
|
}
|
|
|
|
// *************************************
|
|
// *** RBM-Ratios-lesen-Mode9-Screen ***
|
|
// *************************************
|
|
SCREEN s_rbmms1()
|
|
{
|
|
int i1,z1;
|
|
real r,n,z;
|
|
string s_temp,s1;
|
|
z1 = 0;
|
|
datei_rbm = "";
|
|
|
|
ftextout(dme_text + " - RBM-Ratios lesen Block 1 (nicht reportpflichtig)",z1,3,1,1);z1=z1+2;
|
|
textout("========================================================================================",z1,0);z1=z1+4;
|
|
LINE("Überwachung Katalysator Sauerstoffspeicherfaehigkeit Bank 1, Überwachung Katalysator Sauerstoffspeicherfaehigkeit Bank 2","STAT_CTR_COMP_RBM_CAT_DIAG_1;STAT_CTR_CDN_RBM_CAT_DIAG_1;STAT_CTR_COMP_RBM_CAT_DIAG_2;STAT_CTR_CDN_RBM_CAT_DIAG_1")
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS1","Überwachung Katalysator Sauerstoffspeicherfaehigkeit Bank 1","STAT_CTR_COMP_RBM_CAT_DIAG_1","STAT_CTR_CDN_RBM_CAT_DIAG_1","Überwachung Katalysator Sauerstoffspeicherfaehigkeit Bank 2","STAT_CTR_COMP_RBM_CAT_DIAG_2","STAT_CTR_CDN_RBM_CAT_DIAG_1",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung Dynamikpruefung lineare Lamdasonden Bank 1, Überwachung Dynamikpruefung lineare Lamdasonden Bank 2","STAT_CTR_COMP_RBM_DYN_VLD_LS_UP_1;STAT_CTR_CDN_RBM_DYN_VLD_LS_UP_1;STAT_CTR_COMP_RBM_DYN_VLD_LS_UP_2;STAT_CTR_CDN_RBM_DYN_VLD_LS_UP_2")
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS1","Überwachung Dynamikpruefung lineare Lamdasonden Bank 1","STAT_CTR_COMP_RBM_DYN_VLD_LS_UP_1","STAT_CTR_CDN_RBM_DYN_VLD_LS_UP_1","Überwachung Dynamikpruefung lineare Lamdasonden Bank 2","STAT_CTR_COMP_RBM_DYN_VLD_LS_UP_2","STAT_CTR_CDN_RBM_DYN_VLD_LS_UP_2",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung Lamdasondensignalverschiebung mager Bank 1, Überwachung Lamdasondensignalverschiebung mager Bank 2","STAT_CTR_COMP_RBM_SHIFT_AFL_LSL_UP_1;STAT_CTR_CDN_RBM_SHIFT_AFL_LSL_UP_1;STAT_CTR_COMP_RBM_SHIFT_AFL_LSL_UP_2;STAT_CTR_CDN_RBM_SHIFT_AFL_LSL_UP_2")
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS1","Überwachung Lamdasondensignalverschiebung mager Bank 1","STAT_CTR_COMP_RBM_SHIFT_AFL_LSL_UP_1","STAT_CTR_CDN_RBM_SHIFT_AFL_LSL_UP_1","Überwachung Lamdasondensignalverschiebung mager Bank 2","STAT_CTR_COMP_RBM_SHIFT_AFL_LSL_UP_2","STAT_CTR_CDN_RBM_SHIFT_AFL_LSL_UP_2",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung Lamdasondensignalverschiebung fett Bank 1, Überwachung Lamdasondensignalverschiebung fett Bank 2","STAT_CTR_COMP_RBM_SHIFT_AFR_LSL_UP_1;STAT_CTR_CDN_RBM_SHIFT_AFR_LSL_UP_1;STAT_CTR_COMP_RBM_SHIFT_AFR_LSL_UP_2;STAT_CTR_CDN_RBM_SHIFT_AFR_LSL_UP_2")
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS1","Überwachung Lamdasondensignalverschiebung fett Bank 1","STAT_CTR_COMP_RBM_SHIFT_AFR_LSL_UP_1","STAT_CTR_CDN_RBM_SHIFT_AFR_LSL_UP_1","Überwachung Lamdasondensignalverschiebung fett Bank 2","STAT_CTR_COMP_RBM_SHIFT_AFR_LSL_UP_2","STAT_CTR_CDN_RBM_SHIFT_AFR_LSL_UP_2",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung lineare Lamdasonde korrekt verbaut Bank 1, Überwachung lineare Lamdasonde korrekt verbaut Bank 2","STAT_CTR_COMP_RBM_AIR_LSL_UP_1;STAT_CTR_CDN_RBM_AIR_LSL_UP_1;STAT_CTR_COMP_RBM_AIR_LSL_UP_2;STAT_CTR_CDN_RBM_AIR_LSL_UP_2")
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS1","Überwachung lineare Lamdasonde korrekt verbaut Bank 1","STAT_CTR_COMP_RBM_AIR_LSL_UP_1","STAT_CTR_CDN_RBM_AIR_LSL_UP_1","Überwachung lineare Lamdasonde korrekt verbaut Bank 2","STAT_CTR_COMP_RBM_AIR_LSL_UP_2","STAT_CTR_CDN_RBM_AIR_LSL_UP_2",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung Tankfeinleckpruefung (DMTL), Überwachung mechanische Schwergaengigkeit VANOS (Einlass)","STAT_CTR_COMP_RBM_SMALL_LEAK;STAT_CTR_CDN_RBM_SMALL_LEAK;STAT_CTR_COMP_RBM_MEC_IVVT_IN;STAT_CTR_CDN_RBM_MEC_IVVT_IN")
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS1","Überwachung Tankfeinleckpruefung (DMTL)","STAT_CTR_COMP_RBM_SMALL_LEAK","STAT_CTR_CDN_RBM_SMALL_LEAK","Überwachung mechanische Schwergaengigkeit VANOS (Einlass)","STAT_CTR_COMP_RBM_MEC_IVVT_IN","STAT_CTR_CDN_RBM_MEC_IVVT_IN",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung mechanische Schwergaengigkeit VANOS (Auslass), Überwachung sprunghafte Veraenderung der Steuerzeiten Nockenwelleneinlass","STAT_CTR_COMP_RBM_MEC_IVVT_EX;STAT_CTR_CDN_RBM_MEC_IVVT_EX;STAT_CTR_COMP_RBM_TOOTH_OFF_IN_1;STAT_CTR_CDN_RBM_TOOTH_OFF_IN_1")
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS1","Überwachung mechanische Schwergaengigkeit VANOS (Auslass)","STAT_CTR_COMP_RBM_MEC_IVVT_EX","STAT_CTR_CDN_RBM_MEC_IVVT_EX","Überwachung sprunghafte Veraenderung der Steuerzeiten Nockenwelleneinlass","STAT_CTR_COMP_RBM_TOOTH_OFF_IN_1","STAT_CTR_CDN_RBM_TOOTH_OFF_IN_1",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung sprunghafte Veraenderung der Steuerzeiten Nockenwellenauslass, Überwachung Sekundaerluftsystem","STAT_CTR_COMP_RBM_TOOTH_OFF_EX_1;STAT_CTR_CDN_RBM_TOOTH_OFF_EX_1;STAT_CTR_COMP_RBM_SA;STAT_CTR_CDN_RBM_SA")
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS1","Überwachung sprunghafte Veraenderung der Steuerzeiten Nockenwellenauslass","STAT_CTR_COMP_RBM_TOOTH_OFF_EX_1","STAT_CTR_CDN_RBM_TOOTH_OFF_EX_1","Überwachung Sekundaerluftsystem","STAT_CTR_COMP_RBM_SA","STAT_CTR_CDN_RBM_SA",0);
|
|
textout("========================================================================================",4,0);
|
|
}
|
|
}
|
|
// *************************************
|
|
// *** RBM-Ratios-lesen-Mode9-Screen ***
|
|
// *************************************
|
|
SCREEN s_rbmms2()
|
|
{
|
|
int i1,z1;
|
|
real r,n,z;
|
|
string s_temp,s1;
|
|
z1 = 0;
|
|
datei_rbm = "";
|
|
|
|
ftextout(dme_text + " - RBM-Ratios lesen Block 2 (nicht reportpflichtig)",z1,3,1,1);z1=z1+2;
|
|
textout("========================================================================================",z1,0);z1=z1+4;
|
|
LINE("Überwachung Tankentlueftungssystem, Überwachung Tankgrobleckpruefung (DMTL)","STAT_CTR_COMP_RBM_DIAGCPS;STAT_CTR_CDN_RBM_DIAGCPS;STAT_CTR_COMP_RBM_ROUGH_LEAK;STAT_CTR_CDN_RBM_ROUGH_LEAK")
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Tankentlueftungssystem","STAT_CTR_COMP_RBM_DIAGCPS","STAT_CTR_CDN_RBM_DIAGCPS","Überwachung Tankgrobleckpruefung (DMTL)","STAT_CTR_COMP_RBM_ROUGH_LEAK","STAT_CTR_CDN_RBM_ROUGH_LEAK",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung Diagnosemodul Tankleckage (DMTL), Überwachung Thermostat","STAT_CTR_COMP_RBM_DMTLM;STAT_CTR_CDN_RBM_DMTLM;STAT_CTR_COMP_RBM_TH;STAT_CTR_CDN_RBM_TH")
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Diagnosemodul Tankleckage (DMTL)","STAT_CTR_COMP_RBM_DMTLM","STAT_CTR_CDN_RBM_DMTLM","Überwachung Thermostat","STAT_CTR_COMP_RBM_TH","STAT_CTR_CDN_RBM_TH",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung Motortemperatur Plausibilitaet, Überwachung Motortemperatur haengendes Sensorsignal","STAT_CTR_COMP_RBM_TCO_PLAUS;STAT_CTR_CDN_RBM_TCO_PLAUS;STAT_CTR_COMP_RBM_TCO_STUCK;STAT_CTR_CDN_RBM_TCO_STUCK")
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Motortemperatur Plausibilitaet","STAT_CTR_COMP_RBM_TCO_PLAUS","STAT_CTR_CDN_RBM_TCO_PLAUS","Überwachung Motortemperatur haengendes Sensorsignal","STAT_CTR_COMP_RBM_TCO_STUCK","STAT_CTR_CDN_RBM_TCO_STUCK",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung Kuehlerauslasstemperatur Plausibilitaet, Überwachung Umgebungstemperatur Plausibilitaet","STAT_CTR_COMP_RBM_TCO_2_PLAUS;STAT_CTR_CDN_RBM_TCO_2_PLAUS;STAT_CTR_COMP_RBM_TAM_PLAUS;STAT_CTR_CDN_RBM_TAM_PLAUS")
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Kuehlerauslasstemperatur Plausibilitaet","STAT_CTR_COMP_RBM_TCO_2_PLAUS","STAT_CTR_CDN_RBM_TCO_2_PLAUS","Überwachung Umgebungstemperatur Plausibilitaet","STAT_CTR_COMP_RBM_TAM_PLAUS","STAT_CTR_CDN_RBM_TAM_PLAUS",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung Geschwindigkeit Plausibilitaet, Überwachung Tankfuellstand","STAT_CTR_COMP_RBM_VS_PLAUS;STAT_CTR_CDN_RBM_VS_PLAUS;STAT_CTR_COMP_RBM_FTL_OBD;STAT_CTR_CDN_RBM_FTL_OBD")
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Geschwindigkeit Plausibilitaet","STAT_CTR_COMP_RBM_VS_PLAUS","STAT_CTR_CDN_RBM_VS_PLAUS","Überwachung Tankfuellstand","STAT_CTR_COMP_RBM_FTL_OBD","STAT_CTR_CDN_RBM_FTL_OBD",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung Lamdasondenheizung nach Katalysator Bank 1, Überwachung Lamdasondenheizung nach Katalysator Bank 2","STAT_CTR_COMP_RBM_OBD_LSH_DOWN_1;STAT_CTR_CDN_RBM_OBD_LSH_DOWN_1;STAT_CTR_COMP_RBM_OBD_LSH_DOWN_2;STAT_CTR_CDN_RBM_OBD_LSH_DOWN_2")
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Lamdasondenheizung nach Katalysator Bank 1","STAT_CTR_COMP_RBM_OBD_LSH_DOWN_1","STAT_CTR_CDN_RBM_OBD_LSH_DOWN_1","Überwachung Lamdasondenheizung nach Katalysator Bank 2","STAT_CTR_COMP_RBM_OBD_LSH_DOWN_2","STAT_CTR_CDN_RBM_OBD_LSH_DOWN_2",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung Alterung lineare Lamdasonde Bank 1, Überwachung Alterung lineare Lamdasonde Bank 2","STAT_CTR_COMP_RBM_OBD_VLD_LSH_UP_1;STAT_CTR_CDN_RBM_OBD_VLD_LSH_UP_1;STAT_CTR_COMP_RBM_OBD_VLD_LSH_UP_2;STAT_CTR_CDN_RBM_OBD_VLD_LSH_UP_2")
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Alterung lineare Lamdasonde Bank 1","STAT_CTR_COMP_RBM_OBD_VLD_LSH_UP_1","STAT_CTR_CDN_RBM_OBD_VLD_LSH_UP_1","Überwachung Alterung lineare Lamdasonde Bank 2","STAT_CTR_COMP_RBM_OBD_VLD_LSH_UP_2","STAT_CTR_CDN_RBM_OBD_VLD_LSH_UP_2",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung Kupplungsschalter, Überwachung Leerlaufregler","STAT_CTR_COMP_RBM_CS;STAT_CTR_CDN_RBM_CS;STAT_CTR_COMP_RBM_ISC;STAT_CTR_CDN_RBM_ISC")
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Kupplungsschalter","STAT_CTR_COMP_RBM_CS","STAT_CTR_CDN_RBM_CS","Überwachung Leerlaufregler","STAT_CTR_COMP_RBM_ISC","STAT_CTR_CDN_RBM_ISC",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung Luftmassenmesser, Überwachung Ansauglufttemperatur Plausibilitaet","STAT_CTR_COMP_RBM_MAF;STAT_CTR_CDN_RBM_MAF;STAT_CTR_COMP_RBM_TIA_PLAUS;STAT_CTR_CDN_RBM_TIA_PLAUS")
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Luftmassenmesser","STAT_CTR_COMP_RBM_MAF","STAT_CTR_CDN_RBM_MAF","Überwachung Ansauglufttemperatur Plausibilitaet","STAT_CTR_COMP_RBM_TIA_PLAUS","STAT_CTR_CDN_RBM_TIA_PLAUS",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung Umgebungsdruck Plausibilitaet, Überwachung Plausibilitaet Drosselklappeposition zu Signal Luftmassenmesser","STAT_CTR_COMP_RBM_AMP_PLAUS;STAT_CTR_CND_RBM_AMP_PLAUS;STAT_CTR_COMP_RBM_LOAD_TPS_PLAUS;STAT_CTR_CDN_RBM_LOAD_TPS_PLAUS")
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Umgebungsdruck Plausibilitaet","STAT_CTR_COMP_RBM_AMP_PLAUS","STAT_CTR_CND_RBM_AMP_PLAUS","Überwachung Plausibilitaet Drosselklappeposition zu Signal Luftmassenmesser","STAT_CTR_COMP_RBM_LOAD_TPS_PLAUS","STAT_CTR_CDN_RBM_LOAD_TPS_PLAUS",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung Differenzdrucksensor Sauganlage zu Umgebung Plausibilitaet, Überwachung Abweichung Lambdaregelung Bank 1","STAT_CTR_COMP_RBM_MAP_DIP_PLAUS;STAT_CTR_CDN_RBM_MAP_DIP_PLAUS;STAT_CTR_COMP_RBM_VLS_DOWN_DIF_1;STAT_CTR_CDN_RBM_VLS_DOWN_DIF_1")
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Differenzdrucksensor Sauganlage zu Umgebung Plausibilitaet","STAT_CTR_COMP_RBM_MAP_DIP_PLAUS","STAT_CTR_CDN_RBM_MAP_DIP_PLAUS","Überwachung Abweichung Lambdaregelung Bank 1","STAT_CTR_COMP_RBM_VLS_DOWN_DIF_1","STAT_CTR_CDN_RBM_VLS_DOWN_DIF_1",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung Abweichung Lambdaregelung Bank 2, Überwachung binaere Lamdasonde nach Katalysator Bank 1","STAT_CTR_COMP_RBM_VLS_DOWN_DIF_2;STAT_CTR_CDN_RBM_VLS_DOWN_DIF_2;STAT_CTR_COMP_RBM_CHK_LS_DOWN_1;STAT_CTR_CDN_RBM_CHK_LS_DOWN_1")
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Abweichung Lambdaregelung Bank 2","STAT_CTR_COMP_RBM_VLS_DOWN_DIF_2","STAT_CTR_CDN_RBM_VLS_DOWN_DIF_2","Überwachung binaere Lamdasonde nach Katalysator Bank 1","STAT_CTR_COMP_RBM_CHK_LS_DOWN_1","STAT_CTR_CDN_RBM_CHK_LS_DOWN_1",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung binaere Lamdasonde nach Katalysator Bank 2, Überwachung Schaltzeit binaere Lamdasonde Bank 1","STAT_CTR_COMP_RBM_CHK_LS_DOWN_2;STAT_CTR_CDN_RBM_CHK_LS_DOWN_2;STAT_CTR_COMP_RBM_SWT_LS_DOWN_1;STAT_CTR_CDN_RBM_SWT_LS_DOWN_1")
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung binaere Lamdasonde nach Katalysator Bank 2","STAT_CTR_COMP_RBM_CHK_LS_DOWN_2","STAT_CTR_CDN_RBM_CHK_LS_DOWN_2","Überwachung Schaltzeit binaere Lamdasonde Bank 1","STAT_CTR_COMP_RBM_SWT_LS_DOWN_1","STAT_CTR_CDN_RBM_SWT_LS_DOWN_1",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung Schaltzeit binaere Lamdasonde Bank 2, Überwachung Abstellzeit","STAT_CTR_COMP_RBM_SWT_LS_DOWN_2;STAT_CTR_CDN_RBM_SWT_LS_DOWN_2;STAT_CTR_COMP_RBM_T_ES;STAT_CTR_CDN_RBM_T_ES")
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Schaltzeit binaere Lamdasonde Bank 2","STAT_CTR_COMP_RBM_SWT_LS_DOWN_2","STAT_CTR_CDN_RBM_SWT_LS_DOWN_2","Überwachung Abstellzeit","STAT_CTR_COMP_RBM_T_ES","STAT_CTR_CDN_RBM_T_ES",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung Drosselklappenlagesensoren, Überwachung Leerlaufregler bei Kaltstart","STAT_CTR_COMP_RBM_TPS;STAT_CTR_CDN_RBM_TPS;STAT_CTR_COMP_RBM_ISC_CST;STAT_CTR_CDN_RBM_ISC_CST")
|
|
{
|
|
Ausgabe_RBM("lang","STATUS_RBMMS2","Überwachung Drosselklappenlagesensoren","STAT_CTR_COMP_RBM_TPS","STAT_CTR_CDN_RBM_TPS","Überwachung Leerlaufregler bei Kaltstart","STAT_CTR_COMP_RBM_ISC_CST","STAT_CTR_CDN_RBM_ISC_CST",0);
|
|
textout("-------------------------------------------------------------------------------------------------------------------------------------------------------------------",4,0);
|
|
}
|
|
LINE("Überwachung Momentenreserve bei Kaltstart","STAT_CTR_COMP_RBM_TQ_CST;STAT_CTR_CDN_RBM_TQ_CST")
|
|
{
|
|
Ausgabe_RBM("kurz","STATUS_RBMMS2","Überwachung Momentenreserve bei Kaltstart","STAT_CTR_COMP_RBM_TQ_CST","STAT_CTR_CDN_RBM_TQ_CST","","","",0);
|
|
textout("========================================================================================",4,0);
|
|
}
|
|
}
|
|
|
|
// *********************
|
|
// *** Status-Screen ***
|
|
// *********************
|
|
SCREEN s_status() {
|
|
|
|
ftextout("Status lesen",1,0,1,0);
|
|
ftextout("",3,0,0,0);
|
|
ftextout("< F1 > Digitalwerte" , 4, 5,0,1);
|
|
// ftextout("< Shift > + < F1 > Saugrohrmodell" , 4,45,0,1);
|
|
// ftextout("< F2 > Analoge Messwertblöcke" , 6, 5,0,1);
|
|
// ftextout("< Shift > + < F2 > NOx-Sensor" , 6,45,0,1);
|
|
// ftextout("< F3 > Adaption Drosselklappe" , 8, 5,0,1);
|
|
// ftextout("< Shift > + < F3 > Abgasrückführungsventil" , 8,45,0,1);
|
|
// ftextout("< F4 > Gebersignale VANOS" ,10, 5,0,1);
|
|
// ftextout("< Shift > + < F4 > Ladedruckregelung (nur N54)" ,10,45,0,1);
|
|
// ftextout("< F5 > IBS - Powermanagement" ,12, 5,0,1);
|
|
// ftextout("< Shift > + < F5 > Neuronale Netze" ,12,45,0,1);
|
|
// ftextout("< F6 > Abgasregelung - Lambda Sonden" ,14, 5,0,1);
|
|
ftextout("< F7 > Laufunruhe" ,16, 5,0,1);
|
|
if (EAversion == TRUE) ftextout("< Shift > + < F7> Überdrehzahl" ,16,45,0,1);
|
|
// ftextout("< F8 > Teilergebnisse wählen" ,18, 5,0,1);
|
|
if (EAversion == TRUE) ftextout("< Shift > + < F8> Übertemperatur" ,18,45,0,1);
|
|
// ftextout("< F9 > Bildschirmdruck" ,20, 5,0,1);
|
|
// ftextout("< Shift > + < F9> Auswahl löschen" ,20,45,0,1);
|
|
ftextout("< F10> Zurück" ,22, 5,0,1);
|
|
ftextout("< Shift > + < F10> INPA beenden" ,22,45,0,1);
|
|
datei_ident = "";
|
|
stop();
|
|
}
|
|
|
|
// ****************************
|
|
// *** Messwerteblock lesen ***
|
|
// ****************************
|
|
SCREEN s_mwb()
|
|
{
|
|
ftextout("Messwerteblock lesen",1,0,1,0);
|
|
// ftextout("< F1 > MWB 1" , 4, 5,0,1);
|
|
// ftextout("< Shift > + < F1 > MWB Öl" , 4,45,0,1);
|
|
// ftextout("< F2 > OBD II" , 6, 5,0,1);
|
|
// ftextout("< F3 > MWB 3" , 8, 5,0,1);
|
|
// ftextout("< F4 > ADC Rohwerte" ,10, 5,0,1);
|
|
// ftextout("< Shift > + < F4 > VS Block" ,10,45,0,1);
|
|
// ftextout("< F5 > Rohwerte" ,12, 5,0,1);
|
|
// ftextout("< F6 > MWB 6" ,14, 5,0,1);
|
|
// ftextout("< F7 > DDLI.TXT definiert" ,16, 5,0,1);
|
|
// ftextout("< F8 > Teilergebnisse wählen" ,18, 5,0,1);
|
|
// ftextout("< Shift > + < F8> Auswahl löschen" ,18,45,0,1);
|
|
ftextout("< F9 > Bildschirmdruck" ,20, 5,0,1);
|
|
ftextout("< F10> Ende" ,22, 5,0,1);
|
|
ftextout("< Shift > + < F10> INPA beenden" ,22,45,0,1);
|
|
stop();
|
|
}
|
|
|
|
// *******************************
|
|
// *** Messwertblock 0 Analog1 ***
|
|
// *******************************
|
|
SCREEN s_f0()
|
|
{
|
|
ftextout("Messwertblock 1",0,0,1,0);
|
|
// INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN",",,,,,,","");
|
|
// INPAapiCheckJobStatus("OKAY");
|
|
|
|
LINE("Kl_87, Geschwindigkeit","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x4609,0x5AB1","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT", 2, 0, 0.0, 26.0, 9.0, 15.0,"4.1");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT",2,40, 0.0, 260.0, 0.0, 200.0,"3.0");
|
|
text(2,72,vartext2);
|
|
}
|
|
|
|
LINE("Drehzahl,LL_Soll","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x4807,0x4808","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT", 2,0, 0.0, 8200.0, 0.0, 6000.0,"4.0");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT", 2,40,0.0, 2600.0, 0.0, 1600.0,"4.0");
|
|
text(2,72,vartext2);
|
|
}
|
|
|
|
LINE("MotorTemp, KühlmittelTemp","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5AB7,0x5A21","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT",2, 0, -50.0, 150.0, -30.0, 120.0,"5.1");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT",2,40, -50.0, 150.0, -30.0, 120.0,"5.1");
|
|
text(2,72,vartext2);
|
|
}
|
|
|
|
LINE("AnsaugTemp, ÖlTemp","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5AB6,0x4402","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT",2, 0, -50.0, 130.0, -50.0, 130.0,"5.0");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT",2,40, -40.0, 160.0, -40.0, 140.0,"5.0");
|
|
text(2,72,vartext2);
|
|
}
|
|
|
|
LINE("Luftmasse, LuftDruck","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5ABC,0x4201","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT",2, 0, 0.0, 800.0, 0.0, 800.0,"5.0");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT",2,40, 800.0, 1200.0, 800.0, 1200.0,"6.1");
|
|
text(2,72,vartext2);
|
|
}
|
|
|
|
LINE("SollWert_DK, Fahrpedal","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5A24,0x5A29","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT",2, 0, 0.0, 130.0, 0.0, 130.0,"5.0");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT",2,40, 0.0, 100.0, 0.0, 100.0,"5.1");
|
|
text(2,72,vartext2);
|
|
}
|
|
|
|
LINE("DK_Poti1, DK_Poti2","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5A06,0x5A07","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT",2, 0, 0.0, 5.0, 0.0, 5.0,"4.2");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT",2,40, 0.0, 5.0, 0.0, 5.0,"4.2");
|
|
text(2,72,vartext2);
|
|
}
|
|
}
|
|
|
|
// ****************************
|
|
// *** Messwertblock 1 Test ***
|
|
// ****************************
|
|
SCREEN s_f1()
|
|
{
|
|
ftextout("OBD II Messwerte SAE J1979",0,0,1,0);
|
|
// INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN",",,,,,,,","");
|
|
// INPAapiCheckJobStatus("OKAY");
|
|
|
|
LINE("Lambda Status Bank 1, Lambda Status Bank 2","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5802,0x5803","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_STRING",1,"");
|
|
text(1,0,vartext1);
|
|
text(2,0,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_STRING",1,"");
|
|
text(1,40,vartext1);
|
|
text(2,40,vartext2);
|
|
}
|
|
|
|
LINE("Calculated load, Motor Temperatur","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5804,0x5805","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp, 2,0, 0.0, 100.0, 0.0, 100.0,"4.1");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT1_WERT",1);
|
|
analogout(r_temp, 2,40,-40.0, 215.0, -40.0, 125.0,"3.0");
|
|
text(2,72,vartext2);
|
|
}
|
|
|
|
LINE("Lambda Control 1, Lambda Adaption 1","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5806,0x5807","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp,2, 0, -100.0, 100.0, -50.0, 50.0,"4.1");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT1_WERT",1);
|
|
analogout(r_temp, 2,40, -100.0, 100.0, -50.0, 50.0,"4.1");
|
|
text(2,72,vartext2);
|
|
}
|
|
|
|
LINE("Lambda Control 2, Lambda Adaption 2","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5808,0x5809","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp,2, 0, -100.0, 100.0, -50.0, 50.0,"4.1");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT1_WERT",1);
|
|
analogout(r_temp,2,40, -100.0, 100.0, -50.0, 50.0,"4.1");
|
|
text(2,72,vartext2);
|
|
}
|
|
|
|
LINE("Raildruck, SaugrohrDruck","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5876,0x5877,0x580B","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
vartext1 = "Raildruck OBD";
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
INPAapiResultAnalog(varReal,"STAT_MESSWERT0_WERT",1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
r_temp = varReal + r_temp;
|
|
analogout(r_temp, 2,0, 0.0, 25000.0, 0.0, 22500.0,"6.1");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT1_WERT",1);
|
|
analogout(r_temp, 2, 40, 0.0, 255.0, 0.0, 255.0,"3.0");
|
|
text(2,72,vartext2);
|
|
}
|
|
|
|
LINE("Drehzahl, Geschwindigkeit","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x580C,0x580D","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp, 2,0, 0.0, 8200.0, 0.0, 6000.0,"4.0");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT1_WERT",1);
|
|
analogout(r_temp, 2, 40, 0.0, 250.0, 0.0, 250.0,"3.0");
|
|
text(2,72,vartext2);
|
|
}
|
|
|
|
LINE("Zündzeit, AnsaugluftTemp","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x580E,0x580F","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp, 2,0, -65.0, 65.0, -65.0, 65.0,"5.1");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT1_WERT",1);
|
|
analogout(r_temp, 2, 40, -40.0, 150.0, -40.0, 110.0,"3.0");
|
|
text(2,72,vartext2);
|
|
}
|
|
LINE("Luftdurchsatz, ","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5810","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp, 2,0, 0.0, 650.0, 0.0, 650.0,"3.0");
|
|
text(2,31,vartext2);
|
|
delay(250);
|
|
}
|
|
}
|
|
// ****************************
|
|
// *** Messwertblock 2 Test ***
|
|
// ****************************
|
|
SCREEN s_f2()
|
|
{
|
|
ftextout("Messwertblock 3",0,0,1,0);
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN",",,,,","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
|
|
LINE("Motordrehzahl, Luftmasse","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5811,0x5812","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT", 2, 0, 0.0, 8200.0, 0.0, 6000.0,"4.0");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT",2,40, 0.0, 800.0, 0.0, 800.0,"4.0");
|
|
text(2,72,vartext2);
|
|
}
|
|
|
|
LINE("Fahrpedal,Lambda Setpoint","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5814,0x5816","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT", 2,0, 0.0, 100.0, 0.0, 100.0,"4.1");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT", 2,40,0.0, 2.0, 0.0, 2.0,"5.1");
|
|
text(2,72,vartext2);
|
|
}
|
|
|
|
LINE("Umgebungstemperatur, Batteriespannung","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5817,0x5815","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT",2, 0, -50.0, 50.0, -50.0, 50.0,"5.1");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT", 2,40, 0.0, 20.0, 0.0, 20.0,"5.2");
|
|
text(2,72,vartext2);
|
|
}
|
|
|
|
LINE("Drehzahl OBD-Byte, Ansauglufttemperatur","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5819,0x581E","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT",2, 0, 0.0, 2600.0, 0.0, 1600.0,"4.0");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT",2,40, -50.0, 150.0, -20.0, 80.0,"4.2");
|
|
text(2,72,vartext2);
|
|
}
|
|
|
|
LINE("Motortemperatur, Kühlmitteltemperatur Kühlerausgang","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x581F,0x5820","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT", 2,0, -50.0, 150.0, -30.0, 120.0,"5.1");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT", 2,40, -50.0, 150.0, -30.0, 120.0,"4.2");
|
|
text(2,72,vartext2);
|
|
}
|
|
}
|
|
|
|
// ****************************
|
|
// *** Messwertblock 4 Test ***
|
|
// ****************************
|
|
SCREEN s_f4()
|
|
{
|
|
ftextout("Messwertblock 5",0,0,1,0);
|
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_4","","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
LINE("LambdaVK1, LambdaVK2","")
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT", 2, 0, 0.0, 3.0, 0.0, 2.75,"4.2");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT",2,40, 0.0, 3.0, 0.0, 2.75,"4.2");
|
|
text(2,72,vartext2);
|
|
}
|
|
|
|
LINE("LambdaHK1, LambdaHK2","")
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT2_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT2_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT2_WERT", 2, 0, 0.0, 1.5, 0.0, 1.2,"4.2");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT3_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT3_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT3_WERT",2,40, 0.0, 1.5, 0.0, 1.2,"4.2");
|
|
text(2,72,vartext2);
|
|
}
|
|
|
|
LINE("Pedalwert1, Pedalwert2","")
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT4_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT4_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT4_WERT", 2, 0, 0.0, 5.0, 0.0, 5.0,"4.2");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT5_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT5_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT5_WERT", 2,40, 0.0, 5.0, 0.0, 5.0,"4.2");
|
|
text(2,72,vartext2);
|
|
}
|
|
|
|
LINE("DK_Poti1, DK_Poti2","")
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT6_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT6_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT6_WERT",2, 0, 0.0, 5.0, 0.0, 5.0,"4.2");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT7_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT7_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT7_WERT",2,40, 0.0, 5.0, 0.0, 5.0,"4.2");
|
|
text(2,72,vartext2);
|
|
}
|
|
|
|
LINE("Durchfluss_TEV, Versorgung_DK2","")
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT8_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT8_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT8_WERT", 2,0, 0.0, 8.0, 0.0, 8.0,"4.2");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT9_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT9_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT9_WERT", 2,40,4.0, 6.0, 4.7, 5.2,"4.2");
|
|
text(2,72,vartext2);
|
|
}
|
|
|
|
LINE("ZeitAbStartende,","")
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT10_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT10_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT10_WERT", 2,0, 0.0, 6500.0, 0.0, 6500.0,"6.1");
|
|
text(2,33,vartext2);
|
|
delay(250);
|
|
}
|
|
}
|
|
|
|
// ***************************************
|
|
// *** Messwertblock alle ADC Rohwerte ***
|
|
// ***************************************
|
|
SCREEN s_messwerte_adc()
|
|
{
|
|
ftextout("Messwertblock ADC",1,0,1,0);
|
|
delay(250);
|
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_ADC","","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
LINE("VCC_PV1, VCC_PV2","")
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT", 1, 0, 4.5, 5.5, 4.9, 5.1,"4.2");
|
|
text(1,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT", 1,40, 4.5, 5.5, 4.9, 5.1,"4.2");
|
|
text(1,72,vartext2);
|
|
}
|
|
|
|
LINE("PVS1, TPS1","")
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT2_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT2_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT2_WERT", 1, 0, 0.0, 5.0, 0.3, 4.7,"4.2");
|
|
text(1,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT3_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT3_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT3_WERT", 1,40, 0.0, 5.0, 0.3, 4.7,"4.2");
|
|
text(1,72,vartext2);
|
|
}
|
|
|
|
LINE("PVS2, TPS2","")
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT4_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT4_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT4_WERT", 1, 0, 0.0, 5.0, 0.3, 4.7,"4.2");
|
|
text( 1,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT5_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT5_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT5_WERT", 1,40, 0.0, 5.0, 0.3, 4.7,"4.2");
|
|
text( 1,72,vartext2);
|
|
}
|
|
|
|
LINE("TCO, TCO_EX","")
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT6_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT6_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT6_WERT", 1, 0, 0.0, 5.0, 0.3, 4.8,"4.2");
|
|
text( 1,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT7_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT7_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT7_WERT", 1,40, 0.0, 5.0, 0.3, 4.8,"4.2");
|
|
text( 1,72,vartext2);
|
|
}
|
|
LINE("AMP, TIA","")
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT8_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT8_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT8_WERT", 1, 0, 0.0, 5.0, 0.0, 5.0,"4.2");
|
|
text( 1,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT9_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT9_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT9_WERT", 1,40, 0.0, 5.0, 0.0, 5.0,"4.2");
|
|
text( 1,72,vartext2);
|
|
}
|
|
LINE("UB, IGK","")
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERTA_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERTA_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERTA_WERT", 1, 0, 0.0, 5.0, 0.0, 5.0,"4.2");
|
|
text( 1,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERTB_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERTB_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERTB_WERT", 1,40, 0.0, 5.0, 0.0, 5.0,"4.2");
|
|
text( 1,72,vartext2);
|
|
}
|
|
LINE("SAF, VCC_VVT","")
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERTC_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERTC_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERTC_WERT", 1, 0, 0.0, 5.0, 0.0, 5.0,"4.2");
|
|
text( 1,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERTD_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERTD_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERTD_WERT", 1,40, 0.0, 5.0, 0.0, 5.0,"4.2");
|
|
text( 1,72,vartext2);
|
|
}
|
|
LINE("TECU, MAF","")
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERTE_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERTE_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERTE_WERT", 1, 0, 0.0, 5.0, 0.0, 5.0,"4.2");
|
|
text( 1,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERTF_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERTF_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERTF_WERT", 1,40, 0.0, 5.0, 0.0, 5.0,"4.2");
|
|
text( 1,72,vartext2);
|
|
}
|
|
}
|
|
|
|
// ****************************************
|
|
// *** Messwertblock alle ADC Rohwerte ***
|
|
// ****************************************
|
|
SCREEN s_rohwerte()
|
|
{
|
|
ftextout("Rohwerte ADC und Messwert",1,0,1,0);
|
|
delay(250);
|
|
|
|
text(3,0,"Ansaugluft Temperatur");
|
|
INPAapiJob(sgbd,"STATUS_AN_LUFTTEMPERATUR","","");
|
|
INPAapiResultText(vartext2,"STAT_ADC_TANS1_EINH",1,"");
|
|
ergebnisAnalogAusgabe("STAT_ADC_TANS1_WERT", 4, 0, 0.0, 5.0, 0.0, 5.0,"4.2");
|
|
text(4,31,vartext2);
|
|
INPAapiResultText(vartext2,"STAT_AN_LUFTTEMPERATUR_EINH",1,"");
|
|
ergebnisAnalogAusgabe("STAT_AN_LUFTTEMPERATUR_WERT", 4,40, -50.0, 145.0, -35.0, 120.0,"5.1");
|
|
text(4,72,vartext2);
|
|
|
|
text(6,0,"Motor Temperatur");
|
|
INPAapiJob(sgbd,"STATUS_MOTORTEMPERATUR","","");
|
|
INPAapiResultText(vartext2,"STAT_ADC_TMOT_EINH",1,"");
|
|
ergebnisAnalogAusgabe("STAT_ADC_TMOT_WERT", 7, 0, 0.0, 5.0, 0.0, 5.0,"4.2");
|
|
text(7,31,vartext2);
|
|
INPAapiResultText(vartext2,"STAT_MOTORTEMPERATUR_EINH",1,"");
|
|
ergebnisAnalogAusgabe("STAT_MOTORTEMPERATUR_WERT", 7,40, -50.0, 145.0, -35.0, 120.0,"5.1");
|
|
text(7,72,vartext2);
|
|
|
|
text(9,0,"Drosselklappe Position");
|
|
INPAapiJob(sgbd,"STATUS_DKP_VOLT","","");
|
|
INPAapiResultText(vartext2,"STAT_DKP_VOLT_EINH",1,"");
|
|
ergebnisAnalogAusgabe("STAT_DKP_VOLT_WERT", 10, 0, 0.0, 5.0, 0.0, 5.0,"4.2");
|
|
text(10,31,vartext2);
|
|
INPAapiResultText(vartext2,"STAT_STAT_DK_EINH",1,"");
|
|
ergebnisAnalogAusgabe("STAT_STAT_DK_WERT", 10,40, 0.0, 90.0, 0.0, 90.0,"4.2");
|
|
text(10,72,vartext2);
|
|
}
|
|
|
|
// ************************
|
|
// *** Messwertblock Öl ***
|
|
// ************************
|
|
SCREEN s_f6()
|
|
{
|
|
ftextout("Messwertblock Öl",1,0,1,0);
|
|
// INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN",",,,,,,0x4405,0x4406,0x4407,0x440B,0x440C,0x4410,0x4412,0x4413,0x4414,0x4415,0x4416,0x4417,","");
|
|
// INPAapiCheckJobStatus("OKAY");
|
|
LINE("Ölstand Mittelwert, Kurzmittelwert","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x4400,0x440F","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT", 2, 0, 0.0, 75.0, 0.0, 75.0,"4.2");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT", 2,40, 0.0, 75.0, 0.0, 75.0,"4.2");
|
|
text(2,72,vartext2);
|
|
}
|
|
|
|
LINE("Füllstand Motoröl, Kraftstoffverbrauch seit letztem Service","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x4401,0x4403","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT", 2, 0, 0.0, 125.0, 25.0, 125.0,"4.2");
|
|
text(2,33,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT",2,40, 0.0, 4000.0, 0.0, 4000.0,"6.2");
|
|
text(2,72,vartext2);
|
|
}
|
|
|
|
LINE("km seit letztem Service, Restweg aus Kraftsottverbrauch abgeleitet","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x4404,0x4411","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT", 2, 0, 0.0, 40000.0, 0.0, 40000.0,"5.0");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT", 2,40, 0.0, 35000.0, 0.0, 35000.0,"5.0");
|
|
text(2,72,vartext2);
|
|
delay(250);
|
|
}
|
|
|
|
LINE("Ölsensor Temperatur, Länderfaktor 1","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x4408,0x440D","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT", 2, 0, 0.0, 200.0, 0.0, 140.0,"4.2");
|
|
text(2,33,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT", 2,40, 0.0, 1.0, 0.0, 1.0,"1.2");
|
|
text(2,72,vartext2);
|
|
delay(250);
|
|
}
|
|
|
|
LINE("Ölsensor Niveau, Länderfaktor 2","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x4409,0x440E","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT", 2, 0, 0.0, 75.0, 0.0, 75.0,"4.2");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT", 2,40, 0.0, 1.0, 0.0, 1.0,"1.2");
|
|
text(2,72,vartext2);
|
|
delay(250);
|
|
}
|
|
|
|
LINE("Ölsensor Qualität","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x440A","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT", 2, 0, 1.0, 4.0, 1.0, 4.0,"3.2");
|
|
text(2,31,vartext2);
|
|
delay(250);
|
|
}
|
|
}
|
|
|
|
// ****************************
|
|
// *** Messwertblock 6 Test ***
|
|
// ****************************
|
|
SCREEN s_f7()
|
|
{
|
|
ftextout("Messwertblock 6",1,0,1,0);
|
|
ftextout("",3,0,0,0);
|
|
|
|
LINE("MAF, PedalWert","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5ABC,0x5814","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT", 1, 0, 0.0, 500.0, 0.0, 500.0,"5.1");
|
|
text(1,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT",1,40, 0.0, 100.0, 0.0, 100.0,"5.0");
|
|
text(1,75,vartext2);
|
|
}
|
|
|
|
LINE("TLuft,TMot","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x581E,0x581F","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT", 1, 0, -50.0, 150.0, -30.0, 100.0,"5.0");
|
|
text(1,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT", 1,40, -50.0, 150.0, -30.0, 100.0,"5.0");
|
|
text(1,75,vartext2);
|
|
|
|
}
|
|
|
|
LINE("KühlmittelTemp, TECU","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5820,0x5821","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT",1, 0, -50.0, 150.0, -30.0, 120.0,"5.0");
|
|
text(1,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT",1,40, -50.0, 150.0, -30.0, 120.0,"5.0");
|
|
text(1,75,vartext2);
|
|
}
|
|
|
|
LINE("ÖlTemp, Umgebungstemperatur bei Start","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5822,0x5833","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT",2, 0, -40.0, 200.0, -40.0, 140.0,"5.0");
|
|
text(2,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT",2,40, -50.0, 85.0, -50.0, 85.0,"3.1");
|
|
text(2,75,vartext2);
|
|
}
|
|
|
|
LINE("LuftDruck, Kraftstoffniederdruck","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5834,0x5A2E","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT",1, 0, 800.0, 1200.0, 800.0, 1200.0,"5.0");
|
|
text(1,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT",1,40, 0.0, 7650.0, 0.0, 7650.0,"5.0");
|
|
text(1,75,vartext2);
|
|
}
|
|
|
|
LINE("Drosselklappe aktueller Wert, Raildruck","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5858,0x5A2F","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT",1, 0, 0.0, 90.0, 0.0, 90.0,"5.2");
|
|
text(1,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT",1,40, 0.0, 250000.0, 0.0, 250000.0,"7.0");
|
|
text(1,75,vartext2);
|
|
}
|
|
|
|
LINE("R-Lambda-VK1, R-Lambda-NK1","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5860,0x585C","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT",1, 0, 0.0, 70000.0, 0.0, 70000.0,"5.0");
|
|
text(1,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT",1,40, 0.0, 70000.0, 0.0, 70000.0,"5.0");
|
|
text(1,75,vartext2);
|
|
}
|
|
LINE("R-Lambda-VK2, R-Lambda-NK2","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5861,0x585D","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT",1, 0, 0.0, 70000.0, 0.0, 70000.0,"5.0");
|
|
text(1,31,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT",1,40, 0.0, 70000.0, 0.0, 70000.0,"5.0");
|
|
text(1,75,vartext2);
|
|
delay(250);
|
|
}
|
|
}
|
|
|
|
// *******************************
|
|
// *** dyn Messwertblock lesen ***
|
|
// *******************************
|
|
SCREEN s_fdyn()
|
|
{
|
|
int i_temp_1, i_temp_2;
|
|
bool b1;
|
|
string vartext1;
|
|
string s_inhalt;
|
|
string s1, s2, s3 = "", s4 = "", s5, s6, s_temp;
|
|
if ( datei_ddli == "" )
|
|
{
|
|
s1 = txtPfad + "DDLI.TXT"; // Definition des Quellpfades für DDLI-Liste; Pfad und Dateiname dürfen nicht verändert werden, sonst funktioniert es nicht mehr
|
|
fileopen ( s1, "a" ); // Datei öffnen um Daten anzuhängen, wenn Datei noch nicht vorhanden, dann Datei anlegen mit leerem Inhalt
|
|
filewrite(s3); // Inhalt von s3 wird angehängt (in diesem Falle ist s3 leer, somit werden keine neuen UW-ID angehängt)
|
|
fileclose();
|
|
|
|
fileopen( s1, "r" ); // Datei öffnen um zu lesen
|
|
fileread( s_inhalt, varBool ); // Auslesen des Dateiinhalts
|
|
|
|
if ( s_inhalt == "" ) // wenn Dateiinhalt leer, dann Aufforderung um neue DDLI-Werte einzugeben
|
|
{
|
|
inputtext( s1, "DDLI-Liste anlegen?","Dateiname und Pfad nicht abändern (Pfad muss bereits existieren)!");
|
|
getinputstate( i_temp_1 ); // 0 = OK 1 = Abbruch
|
|
inputstate = i_temp_1; // Abbruch merken
|
|
if ( i_temp_1 == 0 )
|
|
{
|
|
fileopen ( s1, "w" ); // Datei öffne um zu schreiben
|
|
inputtext( s3, "DDLI-Werte definieren?","Umwelt-ID's aus Messwertetabelle (z.B.: 0x4200,0x5899,)! Trennzeichen = ',' letztes Zeichen der ID-Sequenz = ','");
|
|
getinputstate( i_temp_1 ); // 0 = OK 1 = Abbruch
|
|
inputstate = i_temp_1; // Abbruch merken
|
|
if ( i_temp_1 == 0 )
|
|
{
|
|
filewrite(s3); // DDLI-Werte speichern
|
|
fileclose();
|
|
datei_ddli = s1; // Datei angelegt, Namen merken
|
|
}
|
|
else
|
|
{
|
|
blankscreen();
|
|
stop();
|
|
}
|
|
}
|
|
else
|
|
{
|
|
blankscreen();
|
|
stop();
|
|
}
|
|
}
|
|
else // wenn Datei nicht leer, dann Übergabe des Quellpfades an datei_ddl
|
|
{
|
|
datei_ddli = s1; // Datei angelegt, Namen merken
|
|
}
|
|
fileopen( datei_ddli, "r" ); // datei_ddli öffnen und Werte auslesen
|
|
fileread( s_inhalt, varBool );
|
|
ftextout("DDLI-Block",1,5,1,0);
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN",s_inhalt,"");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultInt(i_temp_2,"STAT_ANZAHL_WERTE",1);
|
|
inttostring( i_temp_2, vartext1 );
|
|
text( 1, 35, vartext1 + " Werte" );
|
|
delay(500);
|
|
}
|
|
else
|
|
{
|
|
fileopen( datei_ddli, "r" );
|
|
fileread( s_inhalt, varBool );
|
|
if ( s_inhalt == "" )
|
|
{
|
|
blankscreen();
|
|
stop();
|
|
}
|
|
else
|
|
{
|
|
ftextout("DDLI-Block",1,5,1,0);
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN",s_inhalt,"");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultInt(i_temp_2,"STAT_ANZAHL_WERTE",1);
|
|
inttostring( i_temp_2, vartext1 );
|
|
text( 1, 35, vartext1 + " Werte" );
|
|
delay(500);
|
|
}
|
|
}
|
|
|
|
LINE("Wert0, Wert1","")
|
|
{
|
|
if( i_temp_2 > 0 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,10,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_STRING",1,"");
|
|
text(1,0,vartext1);
|
|
}
|
|
if( i_temp_2 > 1 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,50,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_STRING",1,"");
|
|
text(1,40,vartext1);
|
|
}
|
|
text(2,0,"----------------------------------------------------------------------------------------------");
|
|
}
|
|
LINE("Wert2,Wert3","")
|
|
{
|
|
if( i_temp_2 > 2 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT2_TEXT",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT2_EINH",1,"");
|
|
text(1,10,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT2_STRING",1,"");
|
|
text(1,0,vartext1);
|
|
}
|
|
if( i_temp_2 > 3 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT3_TEXT",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT3_EINH",1,"");
|
|
text(1,50,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT3_STRING",1,"");
|
|
text(1,40,vartext1);
|
|
}
|
|
text(2,0,"----------------------------------------------------------------------------------------------");
|
|
}
|
|
LINE("Wert4,Wert5","")
|
|
{
|
|
if( i_temp_2 > 4 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT4_TEXT",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT4_EINH",1,"");
|
|
text(1,10,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT4_STRING",1,"");
|
|
text(1,0,vartext1);
|
|
}
|
|
if( i_temp_2 > 5 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT5_TEXT",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT5_EINH",1,"");
|
|
text(1,50,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT5_STRING",1,"");
|
|
text(1,40,vartext1);
|
|
}
|
|
text(2,0,"----------------------------------------------------------------------------------------------");
|
|
}
|
|
LINE("Wert6,Wert7","")
|
|
{
|
|
if( i_temp_2 > 6 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT6_TEXT",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT6_EINH",1,"");
|
|
text(1,10,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT6_STRING",1,"");
|
|
text(1,0,vartext1);
|
|
}
|
|
if( i_temp_2 > 7 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT7_TEXT",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT7_EINH",1,"");
|
|
text(1,50,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT7_STRING",1,"");
|
|
text(1,40,vartext1);
|
|
}
|
|
text(2,0,"----------------------------------------------------------------------------------------------");
|
|
}
|
|
LINE("Wert8,Wert9","")
|
|
{
|
|
if( i_temp_2 > 8 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT8_TEXT",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT8_EINH",1,"");
|
|
text(1,10,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT8_STRING",1,"");
|
|
text(1,0,vartext1);
|
|
}
|
|
if( i_temp_2 > 9 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT9_TEXT",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT9_EINH",1,"");
|
|
text(1,50,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT9_STRING",1,"");
|
|
text(1,40,vartext1);
|
|
}
|
|
text(2,0,"----------------------------------------------------------------------------------------------");
|
|
}
|
|
LINE("Wert10,Wert11","")
|
|
{
|
|
if( i_temp_2 > 10 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT10_TEXT",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT10_EINH",1,"");
|
|
text(1,10,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT10_STRING",1,"");
|
|
text(1,0,vartext1);
|
|
}
|
|
if( i_temp_2 > 11 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT11_TEXT",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT11_EINH",1,"");
|
|
text(1,50,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT11_STRING",1,"");
|
|
text(1,40,vartext1);
|
|
}
|
|
text(2,0,"----------------------------------------------------------------------------------------------");
|
|
}
|
|
LINE("Wert12,Wert13","")
|
|
{
|
|
if( i_temp_2 > 12 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT12_TEXT",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT12_EINH",1,"");
|
|
text(1,10,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT12_STRING",1,"");
|
|
text(1,0,vartext1);
|
|
}
|
|
if( i_temp_2 > 13 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT13_TEXT",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT13_EINH",1,"");
|
|
text(1,50,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT13_STRING",1,"");
|
|
text(1,40,vartext1);
|
|
}
|
|
text(2,0,"----------------------------------------------------------------------------------------------");
|
|
}
|
|
LINE("Wert14,Wert15","")
|
|
{
|
|
if( i_temp_2 > 14 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT14_TEXT",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT14_EINH",1,"");
|
|
text(1,10,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT14_STRING",1,"");
|
|
text(1,0,vartext1);
|
|
}
|
|
if( i_temp_2 > 15 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT15_TEXT",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT15_EINH",1,"");
|
|
text(1,50,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT15_STRING",1,"");
|
|
text(1,40,vartext1);
|
|
}
|
|
text(2,0,"----------------------------------------------------------------------------------------------");
|
|
}
|
|
LINE("Wert16,Wert17","")
|
|
{
|
|
if( i_temp_2 > 16 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT16_TEXT",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT16_EINH",1,"");
|
|
text(1,10,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT16_STRING",1,"");
|
|
text(1,0,vartext1);
|
|
}
|
|
if( i_temp_2 > 17 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT17_TEXT",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT17_EINH",1,"");
|
|
text(1,50,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT17_STRING",1,"");
|
|
text(1,40,vartext1);
|
|
}
|
|
text(2,0,"----------------------------------------------------------------------------------------------");
|
|
}
|
|
LINE("Wert18,Wert19","")
|
|
{
|
|
if( i_temp_2 > 18 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT18_TEXT",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT18_EINH",1,"");
|
|
text(1,10,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT18_STRING",1,"");
|
|
text(1,0,vartext1);
|
|
}
|
|
if( i_temp_2 > 19 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT19_TEXT",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT19_EINH",1,"");
|
|
text(1,50,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT19_STRING",1,"");
|
|
text(1,40,vartext1);
|
|
}
|
|
text(2,0,"----------------------------------------------------------------------------------------------");
|
|
}
|
|
LINE("Wert20,Wert21","")
|
|
{
|
|
if( i_temp_2 > 20 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT20_TEXT",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT20_EINH",1,"");
|
|
text(1,10,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT20_STRING",1,"");
|
|
text(1,0,vartext1);
|
|
}
|
|
if( i_temp_2 > 21 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT21_TEXT",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT21_EINH",1,"");
|
|
text(1,50,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT21_STRING",1,"");
|
|
text(1,40,vartext1);
|
|
}
|
|
text(2,0,"----------------------------------------------------------------------------------------------");
|
|
}
|
|
LINE("Wert22,Wert23","")
|
|
{
|
|
if( i_temp_2 > 22 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT22_TEXT",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT22_EINH",1,"");
|
|
text(1,10,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT22_STRING",1,"");
|
|
text(1,0,vartext1);
|
|
}
|
|
if( i_temp_2 > 23 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT23_TEXT",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT23_EINH",1,"");
|
|
text(1,50,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT23_STRING",1,"");
|
|
text(1,40,vartext1);
|
|
}
|
|
text(2,0,"----------------------------------------------------------------------------------------------");
|
|
}
|
|
LINE("Wert24,Wert25","")
|
|
{
|
|
if( i_temp_2 > 24 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT24_TEXT",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT24_EINH",1,"");
|
|
text(1,10,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT24_STRING",1,"");
|
|
text(1,0,vartext1);
|
|
}
|
|
if( i_temp_2 > 25 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT25_TEXT",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT25_EINH",1,"");
|
|
text(1,50,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT25_STRING",1,"");
|
|
text(1,40,vartext1);
|
|
}
|
|
text(2,0,"----------------------------------------------------------------------------------------------");
|
|
}
|
|
LINE("Wert26,Wert27","")
|
|
{
|
|
if( i_temp_2 > 26 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT26_TEXT",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT26_EINH",1,"");
|
|
text(1,10,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT26_STRING",1,"");
|
|
text(1,0,vartext1);
|
|
}
|
|
if( i_temp_2 > 27 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT27_TEXT",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT27_EINH",1,"");
|
|
text(1,50,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT27_STRING",1,"");
|
|
text(1,40,vartext1);
|
|
}
|
|
text(2,0,"----------------------------------------------------------------------------------------------");
|
|
}
|
|
LINE("Wert28,Wert29","")
|
|
{
|
|
if( i_temp_2 > 28 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT28_TEXT",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT28_EINH",1,"");
|
|
text(1,10,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT28_STRING",1,"");
|
|
text(1,0,vartext1);
|
|
}
|
|
if( i_temp_2 > 29 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT29_TEXT",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT29_EINH",1,"");
|
|
text(1,50,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT29_STRING",1,"");
|
|
text(1,40,vartext1);
|
|
}
|
|
text(2,0,"----------------------------------------------------------------------------------------------");
|
|
}
|
|
LINE("Wert30,Wert31","")
|
|
{
|
|
if( i_temp_2 > 30 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT30_TEXT",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT30_EINH",1,"");
|
|
text(1,10,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT30_STRING",1,"");
|
|
text(1,0,vartext1);
|
|
}
|
|
if( i_temp_2 > 31 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT31_TEXT",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT31_EINH",1,"");
|
|
text(1,50,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT31_STRING",1,"");
|
|
text(1,40,vartext1);
|
|
}
|
|
text(2,0,"----------------------------------------------------------------------------------------------");
|
|
}
|
|
LINE("Wert32,Wert33","")
|
|
{
|
|
if( i_temp_2 > 32 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT32_TEXT",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT32_EINH",1,"");
|
|
text(1,10,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT32_STRING",1,"");
|
|
text(1,0,vartext1);
|
|
}
|
|
if( i_temp_2 > 33 )
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT33_TEXT",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT33_EINH",1,"");
|
|
text(1,50,vartext1);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT33_STRING",1,"");
|
|
text(1,40,vartext1);
|
|
}
|
|
text(2,0,"----------------------------------------------------------------------------------------------");
|
|
}
|
|
}
|
|
// ******************************
|
|
// *** VS Messwertblock lesen ***
|
|
// ******************************
|
|
SCREEN s_fkd() {
|
|
|
|
int i, i_line;
|
|
int i_loop;
|
|
string vartext1, result;
|
|
|
|
ftextout("VS - Block",1,5,1,0);
|
|
|
|
LINE("","") {
|
|
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5804,0x580B,0x580D,0x580E,0x5813,0x5814,0x4808,0x5820","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultInt(i_loop,"STAT_ANZAHL_WERTE",1);
|
|
inttostring( i_loop, vartext1 );
|
|
// text( 1, 35, vartext1 + " Werte" );
|
|
delay( 500 );
|
|
i_line = 1;
|
|
i = 0;
|
|
|
|
while( i < i_loop ) {
|
|
|
|
inttostring ( i, result ); // "x"
|
|
result = "STAT_MESSWERT" + result; // STAT_MESSWERTx"
|
|
result = result + "_TEXT"; // STAT_MESSWERTx_TEXT
|
|
INPAapiResultText(vartext1,result,1,"");
|
|
text( i_line, 0, vartext1 );
|
|
inttostring ( i, result );
|
|
result = "STAT_MESSWERT" + result;
|
|
result = result + "_EINH";
|
|
INPAapiResultText( vartext1, result, 1, ""); // STAT_MESSWERTx_EINH
|
|
text( i_line + 1, 10, vartext1 );
|
|
inttostring ( i, result );
|
|
result = "STAT_MESSWERT" + result;
|
|
result = result + "_STRING";
|
|
INPAapiResultText( vartext1, result, 1, "" ); // STAT_MESSWERTx_STRING
|
|
text( i_line + 1,0,vartext1);
|
|
i = i + 1;
|
|
|
|
if( i < i_loop ) { // ungerade Anzahl abfangen
|
|
|
|
inttostring ( i, result ); // "x"
|
|
result = "STAT_MESSWERT" + result; // STAT_MESSWERTx"
|
|
result = result + "_TEXT"; // STAT_MESSWERTx_TEXT
|
|
INPAapiResultText(vartext1,result,1,"");
|
|
text( i_line, 40, vartext1 );
|
|
inttostring ( i, result );
|
|
result = "STAT_MESSWERT" + result;
|
|
result = result + "_EINH";
|
|
INPAapiResultText(vartext1,result,1,""); // STAT_MESSWERTx_EINH
|
|
text( i_line + 1,50,vartext1);
|
|
inttostring ( i, result );
|
|
result = "STAT_MESSWERT" + result;
|
|
result = result + "_STRING";
|
|
INPAapiResultText( vartext1, result, 1, "" ); // STAT_MESSWERTx_STRING
|
|
text( i_line + 1,40,vartext1);
|
|
i_line = i_line + 3;
|
|
}
|
|
i = i + 1;
|
|
}
|
|
}
|
|
|
|
LINE("","") {
|
|
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5822,0x5824,0x5834,0x4601,0x4802,0x5821","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultInt(i_loop,"STAT_ANZAHL_WERTE",1);
|
|
inttostring( i_loop, vartext1 );
|
|
// text( 1, 35, vartext1 + " Werte" );
|
|
delay( 500 );
|
|
i_line = 1;
|
|
i = 0;
|
|
|
|
while( i < i_loop ) {
|
|
|
|
inttostring ( i, result ); // "x"
|
|
result = "STAT_MESSWERT" + result; // STAT_MESSWERTx"
|
|
result = result + "_TEXT"; // STAT_MESSWERTx_TEXT
|
|
INPAapiResultText(vartext1,result,1,"");
|
|
text( i_line, 0, vartext1 );
|
|
inttostring ( i, result );
|
|
result = "STAT_MESSWERT" + result;
|
|
result = result + "_EINH";
|
|
INPAapiResultText( vartext1, result, 1, ""); // STAT_MESSWERTx_EINH
|
|
text( i_line + 1, 10, vartext1 );
|
|
inttostring ( i, result );
|
|
result = "STAT_MESSWERT" + result;
|
|
result = result + "_STRING";
|
|
INPAapiResultText( vartext1, result, 1, "" ); // STAT_MESSWERTx_STRING
|
|
text( i_line + 1,0,vartext1);
|
|
i = i + 1;
|
|
|
|
if( i < i_loop ) { // ungerade Anzahl abfangen
|
|
|
|
inttostring ( i, result ); // "x"
|
|
result = "STAT_MESSWERT" + result; // STAT_MESSWERTx"
|
|
result = result + "_TEXT"; // STAT_MESSWERTx_TEXT
|
|
INPAapiResultText(vartext1,result,1,"");
|
|
text( i_line, 40, vartext1 );
|
|
inttostring ( i, result );
|
|
result = "STAT_MESSWERT" + result;
|
|
result = result + "_EINH";
|
|
INPAapiResultText(vartext1,result,1,""); // STAT_MESSWERTx_EINH
|
|
text( i_line + 1,50,vartext1);
|
|
inttostring ( i, result );
|
|
result = "STAT_MESSWERT" + result;
|
|
result = result + "_STRING";
|
|
INPAapiResultText( vartext1, result, 1, "" ); // STAT_MESSWERTx_STRING
|
|
text( i_line + 1,40,vartext1);
|
|
i_line = i_line + 3;
|
|
}
|
|
i = i + 1;
|
|
}
|
|
}
|
|
}
|
|
|
|
// *********************
|
|
// *** Drosselklappe ***
|
|
// *********************
|
|
SCREEN s_llst_mdk()
|
|
{
|
|
delay(500);
|
|
ftextout("Adaption Drosselklappe",1,10,1,0);
|
|
ftextout("",3,0,0,0);
|
|
INPAapiJob(sgbd,"STATUS_ADAPTION_DK","","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
LINE("Adaption DK Offset, Adaption DK Faktor","AD_ADD,AD_FAC")
|
|
{
|
|
vartext1 = "Adaption Drosselkappe Offset";
|
|
INPAapiResultText(vartext2,"STAT_DK_ADD_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_DK_ADD_WERT",1);
|
|
analogout(r_temp, 1, 0, -1024.0, 1024.0, -1024.0, 1024.0,"4.0");
|
|
text(1,32,vartext2);
|
|
vartext1 = "Adaption Drosselkappe Faktor";
|
|
text(0,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_DK_FAC_WERT",1);
|
|
analogout(r_temp,1,40, 0.0, 2.0, 0.0, 2.0,"6.5");
|
|
textout("",3,0);
|
|
}
|
|
LINE("Adaption EV Offset, Adaption EV Faktor","AD_ADD,AD_FAC")
|
|
{
|
|
vartext1 = "Adaption Einspritzventile Offset";
|
|
INPAapiResultText(vartext2,"STAT_EV_ADD_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_EV_ADD_WERT",1);
|
|
analogout(r_temp, 1, 0, -1024.0, 1024.0, -1024.0, 1024.0,"4.0");
|
|
text(1,32,vartext2);
|
|
vartext1 = "Adaption Einspritzventile Faktor";
|
|
text(0,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_EV_FAC_WERT",1);
|
|
analogout(r_temp,1,40, 0.0, 2.0, 0.0, 2.0,"6.5");
|
|
textout("",3,0);
|
|
}
|
|
}
|
|
|
|
// ****************************
|
|
// *** PWM Wert VANOS IN EX ***
|
|
// ****************************
|
|
SCREEN s_vanos_inex()
|
|
{
|
|
delay(100);
|
|
ftextout("Gebersignale VANOS",1,10,1,0);
|
|
ftextout("",3,0,0,0);
|
|
INPAapiJob(sgbd,"STATUS_NOCKENWELLE_ADAPTION","","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
LINE("AdaptionEinlass, AdaptionAuslass","PSN_EDGE_1_AD_CAM_IN_1,PSN_EDGE_1_AD_CAM_EX_1")
|
|
{
|
|
vartext1 = "Adaption NW-Einlass - Referenzflanke";
|
|
INPAapiResultText(vartext2,"STAT_PSN_EDGE_AD_CAM_IN_1_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_PSN_EDGE_AD_CAM_IN_1_WERT",1);
|
|
analogout(r_temp, 1, 0, -20.0, 20.0, -10.0, 10.0,"5.1");
|
|
text(1,33,vartext2);
|
|
vartext1 = "Adaption NW-Auslass - Referenzflanke";
|
|
INPAapiResultText(vartext2,"STAT_PSN_EDGE_AD_CAM_EX_1_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_PSN_EDGE_AD_CAM_EX_1_WERT",1);
|
|
analogout(r_temp,1,40, -20.0, 20.0, -10.0, 10.0,"5.1");
|
|
text(1,72,vartext2);
|
|
}
|
|
// LINE("EinlassFlanke0, AuslassFlanke0","AD_IN_10,AD_EX_10")
|
|
// {
|
|
// INPAapiJob(sgbd,"STATUS_GEBERRAD_ADAPTION","","");
|
|
// INPAapiCheckJobStatus("OKAY");
|
|
// INPAapiResultText(vartext1,"STAT_GEBERRAD_ADAPTION_VSE_TEXT",1,"");
|
|
// INPAapiResultText(vartext2,"STAT_GEBERRAD_ADAPTION_EINH",1,"");
|
|
// text(0,0,vartext1);
|
|
// INPAapiResultAnalog(r_temp,"STAT_GEBERRAD_ADAPTION_VSE_WERT",1);
|
|
// analogout(r_temp,1, 0, -20.0, 20.0, -10.0, 10.0,"5.1");
|
|
// text(1,33,vartext2);
|
|
// INPAapiResultText(vartext1,"STAT_GEBERRAD_ADAPTION_VSA_TEXT",1,"");
|
|
// INPAapiResultText(vartext2,"STAT_GEBERRAD_ADAPTION_EINH",1,"");
|
|
// text(0,40,vartext1);
|
|
// INPAapiResultAnalog(r_temp,"STAT_GEBERRAD_ADAPTION_VSA_WERT",1);
|
|
// analogout(r_temp,1,40, -20.0, 20.0, -10.0, 10.0,"5.1");
|
|
// text(1,72,vartext2);
|
|
// }
|
|
// LINE("Einlass, Auslass","STAT_EINLASS_WERT,STAT_AUSLASS_WERT")
|
|
// {
|
|
// INPAapiJob(sgbd,"STATUS_MESSWERTE_VANOS","","");
|
|
// INPAapiCheckJobStatus("OKAY");
|
|
// INPAapiResultText(vartext1,"STAT_EINLASS_TEXT",1,"");
|
|
// INPAapiResultText(vartext2,"STAT_EINLASS_EINH",1,"");
|
|
// text(3,0,vartext1);
|
|
// INPAapiResultAnalog(r_temp,"STAT_EINLASS_WERT",1);
|
|
// analogout(r_temp, 4, 0, 40.0, 135.0, 40.0, 135.0,"5.1");
|
|
// text(4,33,vartext2);
|
|
// INPAapiResultText(vartext1,"STAT_AUSLASS_TEXT",1,"");
|
|
// INPAapiResultText(vartext2,"STAT_AUSLASS_EINH",1,"");
|
|
// text(3,40,vartext1);
|
|
// INPAapiResultAnalog(r_temp,"STAT_AUSLASS_WERT",1);
|
|
// analogout(r_temp, 4,40, -135.0, -40.0, -135.0,-40.0,"5.1");
|
|
// text(4,72,vartext2);
|
|
//
|
|
// INPAapiResultText(vartext1,"STAT_EINLASS_SOLL_TEXT",1,"");
|
|
// INPAapiResultText(vartext2,"STAT_EINLASS_SOLL_EINH",1,"");
|
|
// text(6,0,vartext1);
|
|
// INPAapiResultAnalog(r_temp,"STAT_EINLASS_SOLL_WERT",1);
|
|
// analogout(r_temp, 7, 0, 40.0, 135.0, 40.0, 135.0,"5.1");
|
|
// text(7,33,vartext2);
|
|
// INPAapiResultText(vartext1,"STAT_AUSLASS_SOLL_TEXT",1,"");
|
|
// INPAapiResultText(vartext2,"STAT_AUSLASS_SOLL_EINH",1,"");
|
|
// text(6,40,vartext1);
|
|
// INPAapiResultAnalog(r_temp,"STAT_AUSLASS_SOLL_WERT",1);
|
|
// analogout(r_temp, 7,40, -135.0, -40.0, -135.0,-40.0,"5.1");
|
|
// text(7,72,vartext2);
|
|
// }
|
|
LINE("Einlass, Auslass","STAT_EINLASS_WERT,STAT_AUSLASS_WERT")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5A97","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
text(3,0,vartext1);
|
|
ergebnisDigitalAusgabe("STAT_MESSWERT0_WERT" , 4, 1," Ja "," Nein ");
|
|
}
|
|
}
|
|
|
|
// ************************
|
|
// *** Adaption Gemisch ***
|
|
// ************************
|
|
SCREEN s_ad_gemisch()
|
|
{
|
|
delay(500);
|
|
ftextout("Adaption Gemisch",1,0,1,0);
|
|
ftextout("",3,0,0,0);
|
|
INPAapiJob(sgbd,"STATUS_ADAPTION_GEMISCH","","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
LINE("Lambda Heizung UP1, Lambda Heizung UP2","LSHPWM_UP[1];LSHPWM_UP[2]")
|
|
{
|
|
vartext1 = "LambdasondenHeizung vor Kat Bank 1";
|
|
INPAapiResultText(vartext2,"STAT_PWM_UP_1_EINH",1,"");
|
|
text(0, 0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_PWM_UP_1_WERT",1);
|
|
analogout(r_temp, 1, 0, 0.0, 100.0, 0.0, 100.0,"5.2");
|
|
text(1,33,vartext2);
|
|
vartext1 = "LambdasondenHeizung vor Kat Bank 1";
|
|
INPAapiResultText(vartext2,"STAT_PWM_UP_2_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_PWM_UP_2_WERT",1);
|
|
analogout(r_temp, 1,40, 0.0, 100.0, 0.0, 100.0,"5.2");
|
|
text(1,72,vartext2);
|
|
}
|
|
LINE("Lambda Heizung DOWN1, Lambda Heizung DOWN2","LSHPWM_DOWN[1];LSHPWM_DOWN[2]")
|
|
{
|
|
vartext1 = "LambdasondenHeizung hinter Kat Bank 1";
|
|
INPAapiResultText(vartext2,"STAT_PWM_DOWN_1_EINH",1,"");
|
|
text(0, 0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_PWM_DOWN_1_WERT",1);
|
|
analogout(r_temp,1, 0, 0.0, 100.0, 0.0, 100.0,"5.2");
|
|
text(1,33,vartext2);
|
|
vartext1 = "LambdasondenHeizung hinter Kat Bank 2";
|
|
INPAapiResultText(vartext2,"STAT_PWM_DOWN_2_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_PWM_DOWN_2_WERT",1);
|
|
analogout(r_temp,1,40, 0.0, 100.0, 0.0, 100.0,"5.2");
|
|
text(1,72,vartext2);
|
|
}
|
|
|
|
/* // neu
|
|
LINE("Adaption ADD Bank1, Adaption ADD Bank2","MFF_ADD_LAM_AD_OUT[1], MFF_ADD_LAM_AD_OUT[2]")
|
|
{
|
|
INPAapiJob(sgbd,"STATUS_MESSWERTE","","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
vartext1 = "Integrator Bank 1";
|
|
text(0,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_LR1_MW_WERT",1);
|
|
analogout(r_temp, 1, 0, -50, 49.9, -50, 49.9,"7.1");
|
|
|
|
vartext1 = "Integrator Bank 2";
|
|
text(0,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_LR2_MW_WERT",1);
|
|
analogout(r_temp, 1,40, -50, 49.9, -50, 49.9,"7.1");
|
|
}
|
|
// neu eol */
|
|
|
|
LINE("Adaption ADD Bank1, Adaption ADD Bank2","MFF_ADD_LAM_AD_OUT[1], MFF_ADD_LAM_AD_OUT[2]")
|
|
{
|
|
vartext1 = "Additiver Adaptionsfaktor Bank 1";
|
|
INPAapiResultText(vartext2,"STAT_ADD_1_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_ADD_1_WERT",1);
|
|
analogout(r_temp, 1, 0, -700.0, 700.0, -700.0, 700.0,"7.1");
|
|
text(1,33,vartext2);
|
|
vartext1 = "Additiver Adaptionsfaktor Bank 2";
|
|
INPAapiResultText(vartext2,"STAT_ADD_2_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_ADD_2_WERT",1);
|
|
analogout(r_temp, 1,40, -700.0, 700.0, -700.0, 700.0,"7.1");
|
|
text(1,72,vartext2);
|
|
}
|
|
LINE("Adaption FAC Bank1, Adaption FAC Bank2","FAC_LAM_AD_OUT[1], FAC_LAM_AD_OUT[2]")
|
|
{
|
|
vartext1 = "Multiplikativer Adaptionsfaktor Bank 1";
|
|
INPAapiResultText(vartext2,"STAT_FAC_1_EINH",1,"");
|
|
text(0, 0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_FAC_1_WERT",1);
|
|
analogout(r_temp,1, 0, -50.0, 50.0, -50.0, 50.0,"6.3");
|
|
text(1,33,vartext2);
|
|
vartext1 = "Multiplikativer Adaptionsfaktor Bank 2";
|
|
INPAapiResultText(vartext2,"STAT_FAC_2_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_FAC_2_WERT",1);
|
|
analogout(r_temp,1,40, -50.0, 50.0, -50.0, 50.0,"6.3");
|
|
text(1,72,vartext2);
|
|
}
|
|
/* LINE("Korrektur TI Bank1, Korrektur TI Bank2","STAT_INT_WERT;STAT_INT_2_WERT")
|
|
{
|
|
INPAapiJob(sgbd,"STATUS_INT","","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultAnalog(r_temp,"STAT_INT_WERT",1);
|
|
text(0, 0,"Korrektur EinspritzZeit Bank 1");
|
|
analogout(r_temp, 1, 0, -50.0, 50.0, -50.0, 50.0,"5.2");
|
|
text(1,33,"%");
|
|
INPAapiJob(sgbd,"STATUS_INT_2","","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultAnalog(r_temp,"STAT_INT_2_WERT",1);
|
|
text(0,40,"Korrektur EinspritzZeit Bank 2");
|
|
analogout(r_temp, 1,40, -50.0, 50.0, -50.0, 50.0,"5.2");
|
|
text(1,72,"%");
|
|
}*/
|
|
LINE("Lambdawert Bank1, Lambdawert Bank2","")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5A50,0x5A51","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT0_WERT", 1, 0, 0.0, 5.0, 0.0, 5.0,"5.2");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
text(1,33,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
ergebnisAnalogAusgabe("STAT_MESSWERT1_WERT", 1, 40, 0.0, 5.0, 0.0, 5.0,"5.2");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
text(1,72,vartext2);
|
|
}
|
|
/* LINE("Lambda Spannung VK1, Lambda Spannung VK2","STAT_L_SONDE_WERT;STAT_L_SONDE_2_WERT")
|
|
{
|
|
INPAapiJob(sgbd,"STATUS_L_SONDE","","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultAnalog(r_temp,"STAT_L_SONDE_WERT",1);
|
|
text(0, 0,"Lambda Spannung vor Kat Bank 1");
|
|
analogout(r_temp, 1, 0, 0.0, 3.5, 0.0, 2.7,"5.2");
|
|
text(1,33,"V");
|
|
INPAapiJob(sgbd,"STATUS_L_SONDE_2","","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultAnalog(r_temp,"STAT_L_SONDE_2_WERT",1);
|
|
text(0,40,"Lambda Spannung vor Kat Bank 2");
|
|
analogout(r_temp, 1,40, 0.0, 3.5, 0.0, 2.7,"5.2");
|
|
text(1,72,"V");
|
|
}
|
|
LINE("Lambda Spannung HK1, Lambda Spannung HK2","STAT_L_SONDE_H_WERT;STAT_L_SONDE_2_H_WERT")
|
|
{
|
|
INPAapiJob(sgbd,"STATUS_L_SONDE_H","","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultAnalog(r_temp,"STAT_L_SONDE_H_WERT",1);
|
|
text(0, 0,"Lambda Spannung hinter Kat Bank 1");
|
|
analogout(r_temp, 1, 0, 0.0, 1.5, 0.0, 0.9,"5.2");
|
|
text(1,33,"V");
|
|
INPAapiJob(sgbd,"STATUS_L_SONDE_2_H","","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultAnalog(r_temp,"STAT_L_SONDE_2_H_WERT",1);
|
|
text(0,40,"Lambda Spannung hinter Kat Bank 2");
|
|
analogout(r_temp, 1,40, 0.0, 1.5, 0.0, 0.9,"5.2");
|
|
text(1,72,"V");
|
|
} */
|
|
LINE("Adaptionswerte Lambdasonde Bank 1, Adaptionswerte Lambdasonde Bank 2","STAT_0x5A87_WERT;STAT_0x5A88_WERT")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5A87,0x5A88","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(0, 0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp, 1, 0, -0.05, 0.05, -0.05, 0.05,"3.2");
|
|
text(1,33,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT1_WERT",1);
|
|
analogout(r_temp, 1,40, -0.05, 0.05, -0.05, 0.05,"3.2");
|
|
text(1,72,vartext2);
|
|
}
|
|
LINE("Adaptionswerte Lambdasonde Bank 1, Adaptionswerte Lambdasonde Bank 2","STAT_0x5A87_WERT;STAT_0x5A88_WERT")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5A89,0x5A8A","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(0, 0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp, 1, 0, -25.0, 25.0, -25.0, 25.0,"4.2");
|
|
text(1,33,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT1_WERT",1);
|
|
analogout(r_temp, 1,40, -25.0, 25.0, -25.0, 25.0,"4.2");
|
|
text(1,72,vartext2);
|
|
}
|
|
LINE("Adaptionswerte Lambdasonde Bank 1, Adaptionswerte Lambdasonde Bank 2","STAT_0x5A87_WERT;STAT_0x5A88_WERT")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5A8B,0x5A8C","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(0, 0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp, 1, 0, -25.0, 25.0, -25.0, 25.0,"4.2");
|
|
text(1,33,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT1_WERT",1);
|
|
analogout(r_temp, 1,40, -25.0, 25.0, -25.0, 25.0,"4.2");
|
|
text(1,72,vartext2);
|
|
}
|
|
LINE("Adaptionswerte Lambdasonde Bank 1, Adaptionswerte Lambdasonde Bank 2","STAT_0x5A87_WERT;STAT_0x5A88_WERT")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5A8D,0x5A8E","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(0, 0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp, 1, 0, -5.0, 5.0, -5.0, 5.0,"3.2");
|
|
text(1,33,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT1_WERT",1);
|
|
analogout(r_temp, 1,40, -5.0, 5.0, -5.0, 5.0,"3.2");
|
|
text(1,72,vartext2);
|
|
}
|
|
}
|
|
|
|
// *****************************
|
|
// *** Status Saugrohrmodell ***
|
|
// *****************************
|
|
SCREEN s_saugrohrmodell()
|
|
{
|
|
ftextout("Saugrohrmodell",0,30,1,0);
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN",",,,,,","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
LINE("Motor Drehzahl, Luftmasse gerechnet","STAT_MOTORDREHZAHL_WERT, STAT_LUFTMASSE_PRO_HUB_WERT")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x4807,0x5818","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp, 2, 0, 0, 8200, 0, 7200,"5.0");
|
|
text(2,32,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT1_WERT",1);
|
|
analogout(r_temp, 2, 40, 0, 250, 0, 250,"4.1");
|
|
text(2,75,vartext2);
|
|
}
|
|
LINE("Istwert Einlassspreizung, Istwert Auslassspreizung","STAT_NW_EINLASSSPREIZUNG_WERT;STAT_NW_AUSLASSSPREIZUNG_WERT")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x4508,0x4509","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp, 2, 0, 0, 180, 0, 180,"4.1");
|
|
text(2,32,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT1_WERT",1);
|
|
analogout(r_temp, 2, 40, -180, 0, -180, 0,"4.1");
|
|
text(2,75,vartext2);
|
|
}
|
|
LINE("Abgleich Einlassventilmodell (Faktor), Abgleich Drosselklappenmodell (Faktor)","STAT_0x58E2_WERT;STAT_0x58E0_WERT")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x58E2,0x58E0","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp, 2, 0, 0, 2, 0, 2,"4.3");
|
|
text(2,32,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT1_WERT",1);
|
|
analogout(r_temp, 2, 40, 0, 2, 0, 2,"4.3");
|
|
text(2,75,vartext2);
|
|
}
|
|
LINE("aktuelle Position Disaklappen, Drosselklappe aktueller Wert","STAT_DISAKLAPPEN_POSITION_WERT;STAT_DROSSELKLAPPENWINKEL_WERT")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x4610,0x4600","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp, 2, 0, 0, 100, 0, 100,"4.1");
|
|
text(2,32,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT1_WERT",1);
|
|
analogout(r_temp, 2, 40, 0, 100, 0, 100,"3.1");
|
|
text(2,75,vartext2);
|
|
}
|
|
LINE("TankEntlüftungsVentil TEV PWM, Saugrohrdruck 1 / Ladedruck 1","STAT_TEV_PWM_WERT;STAT_LADEDRUCK_WERT")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5A77,0x4205","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp, 2, 0, 0, 100, 0, 100,"4.1");
|
|
text(2,32,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT1_WERT",1);
|
|
analogout(r_temp,2,40, 0, 1100, 0, 1100,"5.1");
|
|
text(2,75,vartext2);
|
|
}
|
|
LINE("Umgebungsdruck, Betriebsart Istwert","STAT_0x4201_WERT;STAT_0x58E4")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x4201,0x58E4","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp, 2, 0, 0, 1100, 0, 1100,"5.1");
|
|
text(2,32,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_STRING",1,"");
|
|
text(1,40,vartext1);
|
|
text(2,40,blank);
|
|
text(2,40,vartext2);
|
|
}
|
|
}
|
|
|
|
// *************************
|
|
// *** Status NOx-Sensor ***
|
|
// *************************
|
|
SCREEN s_nox_sensor()
|
|
{
|
|
ftextout("NOx-Sensor / Abgastemperaturfühler",0,15,1,0);
|
|
INPAapiJob(sgbd,"STATUS_NOX1","","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
LINE("NOx-Konzentration","STAT_PHY_NOX1_WERT")
|
|
{
|
|
text(1,0,"NOx-Konzentration");
|
|
INPAapiResultText(vartext2,"STAT_PHY_NOX1_EINH",1,"");
|
|
INPAapiResultAnalog(r_temp,"STAT_PHY_NOX1_WERT",1);
|
|
analogout(r_temp, 2, 0, -150, 2000, -150, 2000,"4.0");
|
|
text(2,32,vartext2);
|
|
}
|
|
LINE("binaeres Spannungssignal, lineares Lambdasignal","STAT_PHY_ULNOX1_WERT;STAT_PHY_LLNOX1_WERT")
|
|
{
|
|
text(1,0,"Binaeres Spannungssignal");
|
|
INPAapiResultText(vartext2,"STAT_PHY_ULNOX1_EINH",1,"");
|
|
INPAapiResultAnalog(r_temp,"STAT_PHY_ULNOX1_WERT",1);
|
|
analogout(r_temp, 2, 0, -250, 1200, -250, 1200,"4.0");
|
|
text(2,32,vartext2);
|
|
text(1,40,"Lineares Lambdasignal");
|
|
INPAapiResultAnalog(r_temp,"STAT_PHY_LLNOX1_WERT",1);
|
|
analogout(r_temp, 2, 40, 0, 32, 0, 32,"4.2");
|
|
}
|
|
LINE("Schubabschaltung, Beladungsbetrieb NOx-Katalysator","STAT_0x5AD6_WERT;STAT_0x5AD7_WERT")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5AD6,0x5AD7","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_0x5AD6_WERT",1);
|
|
analogout(r_temp, 2, 0, 0, 5, 0, 5,"3.2");
|
|
text(2,32,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_0x5AD7_WERT",1);
|
|
analogout(r_temp, 2, 40, 0, 1100, 0, 1100,"6.2");
|
|
text(2,75,vartext2);
|
|
}
|
|
LINE("Spannung Abgastemperatursensor, Abgastemperatur","STAT_0x5A18_WERT;STAT_0x5A1F_WERT")
|
|
{
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5A18,0x5A1F","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_0x5A18_WERT",1);
|
|
analogout(r_temp, 2, 0, 0, 5, 0, 5,"3.2");
|
|
text(2,32,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_0x5A1F_WERT",1);
|
|
analogout(r_temp, 2, 40, 0, 1100, 0, 1100,"6.2");
|
|
text(2,75,vartext2);
|
|
}
|
|
}
|
|
|
|
// **************************************
|
|
// *** Status Abgasrückführungsventil ***
|
|
// **************************************
|
|
SCREEN s_agr_ad()
|
|
{
|
|
ftextout("Abgasrückführungsventil",0,30,1,0);
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5AC6,0x5AC7,0x5AC8,0x5AC9,0x5ACA,0x5ACB","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
LINE("Sensorspannung AGR, Hub des AGR-Tellerventils","STAT_0x5AC6_WERT, STAT_0x5AC7_WERT")
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp, 2, 0, 0, 5, 0.5, 4.5,"2.1");
|
|
text(2,32,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT1_WERT",1);
|
|
analogout(r_temp, 2, 40, 0, 100, 0, 100,"4.1");
|
|
text(2,75,vartext2);
|
|
}
|
|
LINE("Adaptionswert oberer Anschlag (einmalig gelernt), Adaptionswert unterer Anschlag (immer wieder neu gelernt)","STAT_0x5AC8_WERT;STAT_0x5AC9_WERT")
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT2_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT2_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT2_WERT",1);
|
|
analogout(r_temp, 2, 0, 4, 5, 4.199, 4.8,"4.3");
|
|
text(2,32,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT3_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT3_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT3_WERT",1);
|
|
analogout(r_temp, 2, 40, 0, 1, 0.249, 0.752,"4.3");
|
|
text(2,75,vartext2);
|
|
}
|
|
LINE("Adaptionswert unterer Anschlag (einmalig am Anfang gelernt, Uradaption), Status des Erlernens der AGR-Adaption","STAT_0x5ACA_WERT;STAT_0x5ACB_WERT")
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT4_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT4_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT4_WERT",1);
|
|
analogout(r_temp, 2, 0, 0, 1, 0.249, 0.752,"4.3");
|
|
text(2,32,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT5_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT5_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT5_STRING",1,"");
|
|
text(2,40,vartext2);
|
|
}
|
|
}
|
|
|
|
// ********************************
|
|
// *** Status Ladedruckregelung ***
|
|
// ********************************
|
|
SCREEN s_ldr_ad()
|
|
{
|
|
ftextout("Ladedruckregelung",0,30,1,0);
|
|
INPAapiJob(sgbd,"MESSWERTBLOCK_LESEN","0x5AB0,0x5AAD,0x5A2C,0x5AAE,0x5AAB,0x5AAF,0x5AAC,","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
LINE("Solladedruck, Vorsteuerung Ladedruckregelung","STAT_0x5AB0_WERT, STAT_0x5AAD_WERT")
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT0_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT0_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT0_WERT",1);
|
|
analogout(r_temp, 2, 0, 600, 2400, 600, 2400,"5.1");
|
|
text(2,32,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT1_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT1_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT1_WERT",1);
|
|
analogout(r_temp, 2, 40, 0, 100, 0, 100,"4.1");
|
|
text(2,75,vartext2);
|
|
}
|
|
LINE("Druck vor Drosselklappe, Reglerausgang und Vorsteuerung","STAT_0x5A2C_WERT;STAT_0x5AAE_WERT")
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT2_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT2_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT2_WERT",1);
|
|
analogout(r_temp, 2, 0, 600, 2400, 600, 2400,"5.1");
|
|
text(2,32,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT3_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT3_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT3_WERT",1);
|
|
analogout(r_temp, 2, 40, 0, 100, 0, 100,"4.1");
|
|
text(2,75,vartext2);
|
|
}
|
|
LINE("Wastegate 1 PWM, Adaptionswert von der Ladedruckregelung","STAT_0x5AAB_WERT;STAT_0x5AAF_WERT")
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT4_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT4_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT4_WERT",1);
|
|
analogout(r_temp, 2, 0, 0, 100, 0, 100,"3.1");
|
|
text(2,32,vartext2);
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT5_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT5_EINH",1,"");
|
|
text(1,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT5_WERT",1);
|
|
analogout(r_temp, 2, 40, 0.8, 1.2, 0.8, 1.2,"3.2");
|
|
text(2,75,vartext2);
|
|
}
|
|
LINE("Wastegate 2 PWM","STAT_0x5AAC_WERT")
|
|
{
|
|
INPAapiResultText(vartext1,"STAT_MESSWERT4_TEXT",1,"");
|
|
INPAapiResultText(vartext2,"STAT_MESSWERT4_EINH",1,"");
|
|
text(1,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_MESSWERT4_WERT",1);
|
|
analogout(r_temp, 2, 0, 0, 100, 0, 100,"3.1");
|
|
text(2,32,vartext2);
|
|
}
|
|
}
|
|
|
|
// ******************************
|
|
// *** Status Neuronale Netze ***
|
|
// ******************************
|
|
SCREEN s_nn_ad()
|
|
{
|
|
ftextout("Neuronale Netze",1,0,1,0);
|
|
ftextout("< F1 > Saugrohrmodell im gedrosselten Betrieb" , 4, 5,0,1);
|
|
ftextout("< F2 > Saugrohrmodell mit Druckregelung (nur N54)" , 6, 5,0,1);
|
|
ftextout("< F3 > Klopfadaption" , 8, 5,0,1);
|
|
ftextout("< F4 > Kraftstoff-Luftgemisch-Adaption" ,10, 5,0,1);
|
|
ftextout("< F5 > Saugrohrmodell mit Abgasrückführung (nur N53)" ,12, 5,0,1);
|
|
ftextout("< F6 > Löschen der Adaptionswerte" ,14, 5,0,1);
|
|
ftextout("< F7 > Ausgabe der Adaptionswerte in Datei" ,16, 5,0,1);
|
|
ftextout("< F8 > Kommentar einfügen" ,18, 5,0,1);
|
|
ftextout("< F10> Zurück" ,22, 5,0,1);
|
|
ftextout("< Shift > + < F10> INPA beenden" ,22,45,0,1);
|
|
datei_nn = "";
|
|
stop();
|
|
}
|
|
|
|
// *********************
|
|
// *** Status EISYGD ***
|
|
// *********************
|
|
SCREEN s_eisy_gd()
|
|
{
|
|
int i, j, k, blockzaehler, durchlaufzaehler;
|
|
string help, result, s_temp;
|
|
blockzaehler = 0;
|
|
|
|
ftextout(dme_text + " Saugrohrmodell gedrosselt",0,15,1,0);
|
|
text(2,0,blank);
|
|
datei_nn = "";
|
|
|
|
LINE("Wertepaar 0 bis 11","STAT_MRNN_TEST_DK_0_WERT ==> STAT_MRNN_TEST_DK_11_WERT")
|
|
{
|
|
blockzaehler = 0;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYGD","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_DK_","",0);
|
|
}
|
|
LINE("Wertepaar 12 bis 23","STAT_MRNN_TEST_DK_12_WERT ==> STAT_MRNN_TEST_DK_23_WERT")
|
|
{
|
|
blockzaehler = 1;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYGD","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_DK_","",0);
|
|
}
|
|
LINE("Wertepaar 24 bis 35","STAT_MRNN_TEST_DK_24_WERT ==> STAT_MRNN_TEST_DK_35_WERT")
|
|
{
|
|
blockzaehler = 2;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYGD","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_DK_","",0);
|
|
}
|
|
LINE("Wertepaar 36 bis 47","STAT_MRNN_TEST_DK_36_WERT ==> STAT_MRNN_TEST_DK_47_WERT")
|
|
{
|
|
blockzaehler = 3;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYGD","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_DK_","",0);
|
|
}
|
|
LINE("Wertepaar 48 bis 59","STAT_MRNN_TEST_DK_48_WERT ==> STAT_MRNN_TEST_DK_59_WERT")
|
|
{
|
|
blockzaehler = 4;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYGD","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_DK_","",0);
|
|
}
|
|
LINE("Wertepaar 60 bis 71","STAT_MRNN_TEST_DK_60_WERT ==> STAT_MRNN_TEST_DK_71_WERT")
|
|
{
|
|
blockzaehler = 5;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYGD","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_DK_","",0);
|
|
}
|
|
LINE("Wertepaar 72 bis 83","STAT_MRNN_TEST_DK_72_WERT ==> STAT_MRNN_TEST_DK_83_WERT")
|
|
{
|
|
blockzaehler = 6;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYGD","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_DK_","",0);
|
|
}
|
|
LINE("Wertepaar 84 bis 95","STAT_MRNN_TEST_DK_84_WERT ==> STAT_MRNN_TEST_DK_95_WERT")
|
|
{
|
|
blockzaehler = 7;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYGD","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_DK_","",0);
|
|
}
|
|
LINE("Wertepaar 96 bis 107","STAT_MRNN_TEST_DK_96_WERT ==> STAT_MRNN_TEST_DK_107_WERT")
|
|
{
|
|
blockzaehler = 8;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYGD","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_DK_","",0);
|
|
}
|
|
LINE("Wertepaar 108 bis 119","STAT_MRNN_TEST_DK_108_WERT ==> STAT_MRNN_TEST_DK_119_WERT")
|
|
{
|
|
blockzaehler = 9;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYGD","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_DK_","",0);
|
|
}
|
|
LINE("Wertepaar 120 bis 131","STAT_MRNN_TEST_DK_120_WERT ==> STAT_MRNN_TEST_DK_131_WERT")
|
|
{
|
|
blockzaehler = 10;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYGD","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_DK_","",0);
|
|
}
|
|
LINE("Wertepaar 132 bis 143","STAT_MRNN_TEST_DK_132_WERT ==> STAT_MRNN_TEST_DK_143_WERT")
|
|
{
|
|
blockzaehler = 11;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYGD","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_DK_","",0);
|
|
}
|
|
}
|
|
|
|
// *********************
|
|
// *** Status EISYDR ***
|
|
// *********************
|
|
SCREEN s_eisy_dr()
|
|
{
|
|
int i, j, k, blockzaehler, durchlaufzaehler;
|
|
string help, result, s_temp;
|
|
blockzaehler = 0;
|
|
|
|
ftextout(dme_text + " Saugrohrmodell mit Druckregelung",0,10,1,0);
|
|
text(2,0,blank);
|
|
datei_nn = "";
|
|
|
|
LINE("Wertepaar 0 bis 11","STAT_MRNN_TEST_PR_0_WERT ==> STAT_MRNN_TEST_PR_11_WERT")
|
|
{
|
|
blockzaehler = 0;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYDR","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_PR_","",0);
|
|
}
|
|
LINE("Wertepaar 12 bis 23","STAT_MRNN_TEST_PR_12_WERT ==> STAT_MRNN_TEST_PR_23_WERT")
|
|
{
|
|
blockzaehler = 1;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYDR","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_PR_","",0);
|
|
}
|
|
LINE("Wertepaar 24 bis 35","STAT_MRNN_TEST_PR_24_WERT ==> STAT_MRNN_TEST_PR_35_WERT")
|
|
{
|
|
blockzaehler = 2;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYDR","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_PR_","",0);
|
|
}
|
|
LINE("Wertepaar 36 bis 47","STAT_MRNN_TEST_PR_36_WERT ==> STAT_MRNN_TEST_PR_47_WERT")
|
|
{
|
|
blockzaehler = 3;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYDR","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_PR_","",0);
|
|
}
|
|
LINE("Wertepaar 48 bis 59","STAT_MRNN_TEST_PR_48_WERT ==> STAT_MRNN_TEST_PR_59_WERT")
|
|
{
|
|
blockzaehler = 4;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYDR","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_PR_","",0);
|
|
}
|
|
LINE("Wertepaar 60 bis 71","STAT_MRNN_TEST_PR_60_WERT ==> STAT_MRNN_TEST_PR_71_WERT")
|
|
{
|
|
blockzaehler = 5;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYDR","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_PR_","",0);
|
|
}
|
|
LINE("Wertepaar 72 bis 83","STAT_MRNN_TEST_PR_72_WERT ==> STAT_MRNN_TEST_PR_83_WERT")
|
|
{
|
|
blockzaehler = 6;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYDR","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_PR_","",0);
|
|
}
|
|
LINE("Wertepaar 84 bis 95","STAT_MRNN_TEST_PR_84_WERT ==> STAT_MRNN_TEST_PR_95_WERT")
|
|
{
|
|
blockzaehler = 7;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYDR","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_PR_","",0);
|
|
}
|
|
LINE("Wertepaar 96 bis 107","STAT_MRNN_TEST_PR_96_WERT ==> STAT_MRNN_TEST_PR_107_WERT")
|
|
{
|
|
blockzaehler = 8;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYDR","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_PR_","",0);
|
|
}
|
|
LINE("Wertepaar 108 bis 119","STAT_MRNN_TEST_PR_108_WERT ==> STAT_MRNN_TEST_PR_119_WERT")
|
|
{
|
|
blockzaehler = 9;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYDR","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_PR_","",0);
|
|
}
|
|
LINE("Wertepaar 120 bis 131","STAT_MRNN_TEST_PR_120_WERT ==> STAT_MRNN_TEST_PR_131_WERT")
|
|
{
|
|
blockzaehler = 10;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYDR","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_PR_","",0);
|
|
}
|
|
LINE("Wertepaar 132 bis 143","STAT_MRNN_TEST_PR_132_WERT ==> STAT_MRNN_TEST_PR_143_WERT")
|
|
{
|
|
blockzaehler = 11;
|
|
Ausgabe_NN("NKW/WDK",blockzaehler,"_STATUS_EISYDR","STAT_NKW_","STAT_WDK_IST_","STAT_MRNN_TEST_PR_","",0);
|
|
}
|
|
}
|
|
|
|
// ********************
|
|
// *** Status KRANN ***
|
|
// ********************
|
|
SCREEN s_krann()
|
|
{
|
|
int i, j, k, blockzaehler, durchlaufzaehler;
|
|
string help, result, s_temp;
|
|
blockzaehler = 0;
|
|
|
|
ftextout(dme_text + " Klopfadaption",0,20,1,0);
|
|
text(2,0,blank);
|
|
datei_nn = "";
|
|
|
|
LINE("Wertepaar 0 bis 11","STAT_KRNN_TEST_0_WERT ==> STAT_KRNN_TEST_11_WERT")
|
|
{
|
|
blockzaehler = 0;
|
|
Ausgabe_NN("NKW/RF",blockzaehler,"_STATUS_KRANN","STAT_NKW_","STAT_RF_","STAT_KRNN_TEST_","",0);
|
|
}
|
|
LINE("Wertepaar 12 bis 23","STAT_KRNN_TEST_12_WERT ==> STAT_KRNN_TEST_23_WERT")
|
|
{
|
|
blockzaehler = 1;
|
|
Ausgabe_NN("NKW/RF",blockzaehler,"_STATUS_KRANN","STAT_NKW_","STAT_RF_","STAT_KRNN_TEST_","",0);
|
|
}
|
|
LINE("Wertepaar 24 bis 35","STAT_KRNN_TEST_24_WERT ==> STAT_KRNN_TEST_35_WERT")
|
|
{
|
|
blockzaehler = 2;
|
|
Ausgabe_NN("NKW/RF",blockzaehler,"_STATUS_KRANN","STAT_NKW_","STAT_RF_","STAT_KRNN_TEST_","",0);
|
|
}
|
|
LINE("Wertepaar 36 bis 47","STAT_KRNN_TEST_36_WERT ==> STAT_KRNN_TEST_47_WERT")
|
|
{
|
|
blockzaehler = 3;
|
|
Ausgabe_NN("NKW/RF",blockzaehler,"_STATUS_KRANN","STAT_NKW_","STAT_RF_","STAT_KRNN_TEST_","",0);
|
|
}
|
|
LINE("Wertepaar 48 bis 59","STAT_KRNN_TEST_48_WERT ==> STAT_KRNN_TEST_59_WERT")
|
|
{
|
|
blockzaehler = 4;
|
|
Ausgabe_NN("NKW/RF",blockzaehler,"_STATUS_KRANN","STAT_NKW_","STAT_RF_","STAT_KRNN_TEST_","",0);
|
|
}
|
|
LINE("Wertepaar 60 bis 71","STAT_KRNN_TEST_60_WERT ==> STAT_KRNN_TEST_71_WERT")
|
|
{
|
|
blockzaehler = 5;
|
|
Ausgabe_NN("NKW/RF",blockzaehler,"_STATUS_KRANN","STAT_NKW_","STAT_RF_","STAT_KRNN_TEST_","",0);
|
|
}
|
|
LINE("Wertepaar 72 bis 83","STAT_KRNN_TEST_72_WERT ==> STAT_KRNN_TEST_83_WERT")
|
|
{
|
|
blockzaehler = 6;
|
|
Ausgabe_NN("NKW/RF",blockzaehler,"_STATUS_KRANN","STAT_NKW_","STAT_RF_","STAT_KRNN_TEST_","",0);
|
|
}
|
|
LINE("Wertepaar 84 bis 95","STAT_KRNN_TEST_84_WERT ==> STAT_KRNN_TEST_95_WERT")
|
|
{
|
|
blockzaehler = 7;
|
|
Ausgabe_NN("NKW/RF",blockzaehler,"_STATUS_KRANN","STAT_NKW_","STAT_RF_","STAT_KRNN_TEST_","",0);
|
|
}
|
|
LINE("Wertepaar 96 bis 107","STAT_KRNN_TEST_96_WERT ==> STAT_KRNN_TEST_107_WERT")
|
|
{
|
|
blockzaehler = 8;
|
|
Ausgabe_NN("NKW/RF",blockzaehler,"_STATUS_KRANN","STAT_NKW_","STAT_RF_","STAT_KRNN_TEST_","",0);
|
|
}
|
|
LINE("Wertepaar 108 bis 119","STAT_KRNN_TEST_108_WERT ==> STAT_KRNN_TEST_119_WERT")
|
|
{
|
|
blockzaehler = 9;
|
|
Ausgabe_NN("NKW/RF",blockzaehler,"_STATUS_KRANN","STAT_NKW_","STAT_RF_","STAT_KRNN_TEST_","",0);
|
|
}
|
|
LINE("Wertepaar 120 bis 131","STAT_KRNN_TEST_120_WERT ==> STAT_KRNN_TEST_131_WERT")
|
|
{
|
|
blockzaehler = 10;
|
|
Ausgabe_NN("NKW/RF",blockzaehler,"_STATUS_KRANN","STAT_NKW_","STAT_RF_","STAT_KRNN_TEST_","",0);
|
|
}
|
|
LINE("Wertepaar 132 bis 143","STAT_KRNN_TEST_132_WERT ==> STAT_KRNN_TEST_143_WERT")
|
|
{
|
|
blockzaehler = 11;
|
|
Ausgabe_NN("NKW/RF",blockzaehler,"_STATUS_KRANN","STAT_NKW_","STAT_RF_","STAT_KRNN_TEST_","",0);
|
|
}
|
|
}
|
|
|
|
// ********************
|
|
// *** Status KLANN ***
|
|
// ********************
|
|
SCREEN s_klann()
|
|
{
|
|
int i, j, k, blockzaehler, durchlaufzaehler;
|
|
string help, result, s_temp;
|
|
blockzaehler = 0;
|
|
|
|
ftextout(dme_text + " Kraftstoff-Luftgemisch-Adaption",0,15,1,0);
|
|
text(2,0,blank);
|
|
datei_nn = "";
|
|
|
|
LINE("Wertepaar 0 bis 11","STAT_KLANN_TEST1_0_WERT ==> STAT_KLANN_TEST1_11_WERT;STAT_KLANN_TEST2_0_WERT ==> STAT_KLANN_TEST2_11_WERT")
|
|
{
|
|
blockzaehler = 0 * 12;
|
|
Ausgabe_NN("NKW/RK",blockzaehler,"_STATUS_KLANN","STAT_NKW_LOC_","STAT_RK_LOC_","STAT_KLANN_TEST1_","STAT_KLANN_TEST2_",0);
|
|
}
|
|
LINE("Wertepaar 12 bis 23","STAT_KLANN_TEST1_12_WERT ==> STAT_KLANN_TEST1_23_WERT;STAT_KLANN_TEST2_12_WERT ==> STAT_KLANN_TEST2_23_WERT")
|
|
{
|
|
blockzaehler = 1 * 12;
|
|
Ausgabe_NN("NKW/RK",blockzaehler,"_STATUS_KLANN","STAT_NKW_LOC_","STAT_RK_LOC_","STAT_KLANN_TEST1_","STAT_KLANN_TEST2_",0);
|
|
}
|
|
LINE("Wertepaar 24 bis 35","STAT_KLANN_TEST1_24_WERT ==> STAT_KLANN_TEST1_35_WERT;STAT_KLANN_TEST2_24_WERT ==> STAT_KLANN_TEST2_35_WERT")
|
|
{
|
|
blockzaehler = 2 * 12;
|
|
Ausgabe_NN("NKW/RK",blockzaehler,"_STATUS_KLANN","STAT_NKW_LOC_","STAT_RK_LOC_","STAT_KLANN_TEST1_","STAT_KLANN_TEST2_",0);
|
|
}
|
|
LINE("Wertepaar 36 bis 47","STAT_KLANN_TEST1_36_WERT ==> STAT_KLANN_TEST1_47_WERT;STAT_KLANN_TEST2_36_WERT ==> STAT_KLANN_TEST2_47_WERT")
|
|
{
|
|
blockzaehler = 3 * 12;
|
|
Ausgabe_NN("NKW/RK",blockzaehler,"_STATUS_KLANN","STAT_NKW_LOC_","STAT_RK_LOC_","STAT_KLANN_TEST1_","STAT_KLANN_TEST2_",0);
|
|
}
|
|
LINE("Wertepaar 48 bis 59","STAT_KLANN_TEST1_48_WERT ==> STAT_KLANN_TEST1_59_WERT;STAT_KLANN_TEST2_48_WERT ==> STAT_KLANN_TEST2_59_WERT")
|
|
{
|
|
blockzaehler = 4 * 12;
|
|
Ausgabe_NN("NKW/RK",blockzaehler,"_STATUS_KLANN","STAT_NKW_LOC_","STAT_RK_LOC_","STAT_KLANN_TEST1_","STAT_KLANN_TEST2_",0);
|
|
}
|
|
LINE("Wertepaar 60 bis 71","STAT_KLANN_TEST1_60_WERT ==> STAT_KLANN_TEST1_71_WERT;STAT_KLANN_TEST2_60_WERT ==> STAT_KLANN_TEST2_71_WERT")
|
|
{
|
|
blockzaehler = 5 * 12;
|
|
Ausgabe_NN("NKW/RK",blockzaehler,"_STATUS_KLANN","STAT_NKW_LOC_","STAT_RK_LOC_","STAT_KLANN_TEST1_","STAT_KLANN_TEST2_",0);
|
|
}
|
|
LINE("Wertepaar 72 bis 83","STAT_KLANN_TEST1_72_WERT ==> STAT_KLANN_TEST1_83_WERT;STAT_KLANN_TEST2_72_WERT ==> STAT_KLANN_TEST2_83_WERT")
|
|
{
|
|
blockzaehler = 6 * 12;
|
|
Ausgabe_NN("NKW/RK",blockzaehler,"_STATUS_KLANN","STAT_NKW_LOC_","STAT_RK_LOC_","STAT_KLANN_TEST1_","STAT_KLANN_TEST2_",0);
|
|
}
|
|
LINE("Wertepaar 84 bis 95","STAT_KLANN_TEST1_84_WERT ==> STAT_KLANN_TEST1_95_WERT;STAT_KLANN_TEST2_84_WERT ==> STAT_KLANN_TEST2_95_WERT")
|
|
{
|
|
blockzaehler = 7 * 12;
|
|
Ausgabe_NN("NKW/RK",blockzaehler,"_STATUS_KLANN","STAT_NKW_LOC_","STAT_RK_LOC_","STAT_KLANN_TEST1_","STAT_KLANN_TEST2_",0);
|
|
}
|
|
LINE("Wertepaar 96 bis 107","STAT_KLANN_TEST1_96_WERT ==> STAT_KLANN_TEST1_107_WERT;STAT_KLANN_TEST2_96_WERT ==> STAT_KLANN_TEST2_107_WERT")
|
|
{
|
|
blockzaehler = 8 * 12;
|
|
Ausgabe_NN("NKW/RK",blockzaehler,"_STATUS_KLANN","STAT_NKW_LOC_","STAT_RK_LOC_","STAT_KLANN_TEST1_","STAT_KLANN_TEST2_",0);
|
|
}
|
|
LINE("Wertepaar 108 bis 119","STAT_KLANN_TEST1_108_WERT ==> STAT_KLANN_TEST1_119_WERT;STAT_KLANN_TEST2_108_WERT ==> STAT_KLANN_TEST2_119_WERT")
|
|
{
|
|
blockzaehler = 9 * 12;
|
|
Ausgabe_NN("NKW/RK",blockzaehler,"_STATUS_KLANN","STAT_NKW_LOC_","STAT_RK_LOC_","STAT_KLANN_TEST1_","STAT_KLANN_TEST2_",0);
|
|
}
|
|
LINE("Wertepaar 120 bis 131","STAT_KLANN_TEST1_120_WERT ==> STAT_KLANN_TEST1_131_WERT;STAT_KLANN_TEST2_120_WERT ==> STAT_KLANN_TEST2_131_WERT")
|
|
{
|
|
blockzaehler = 10 * 12;
|
|
Ausgabe_NN("NKW/RK",blockzaehler,"_STATUS_KLANN","STAT_NKW_LOC_","STAT_RK_LOC_","STAT_KLANN_TEST1_","STAT_KLANN_TEST2_",0);
|
|
}
|
|
LINE("Wertepaar 132 bis 143","STAT_KLANN_TEST1_132_WERT ==> STAT_KLANN_TEST1_143_WERT;STAT_KLANN_TEST2_132_WERT ==> STAT_KLANN_TEST2_143_WERT")
|
|
{
|
|
blockzaehler = 11 * 12;
|
|
Ausgabe_NN("NKW/RK",blockzaehler,"_STATUS_KLANN","STAT_NKW_LOC_","STAT_RK_LOC_","STAT_KLANN_TEST1_","STAT_KLANN_TEST2_",0);
|
|
}
|
|
LINE("Wertepaar 144 bis 155","STAT_KLANN_TEST1_144_WERT ==> STAT_KLANN_TEST1_155_WERT;STAT_KLANN_TEST2_144_WERT ==> STAT_KLANN_TEST2_155_WERT")
|
|
{
|
|
blockzaehler = 12 * 12;
|
|
Ausgabe_NN("NKW/RK",blockzaehler,"_STATUS_KLANN","STAT_NKW_LOC_","STAT_RK_LOC_","STAT_KLANN_TEST1_","STAT_KLANN_TEST2_",0);
|
|
}
|
|
LINE("Wertepaar 156 bis 167","STAT_KLANN_TEST1_156_WERT ==> STAT_KLANN_TEST1_167_WERT;STAT_KLANN_TEST2_156_WERT ==> STAT_KLANN_TEST2_167_WERT")
|
|
{
|
|
blockzaehler = 13 * 12;
|
|
Ausgabe_NN("NKW/RK",blockzaehler,"_STATUS_KLANN","STAT_NKW_LOC_","STAT_RK_LOC_","STAT_KLANN_TEST1_","STAT_KLANN_TEST2_",0);
|
|
}
|
|
LINE("Wertepaar 168 bis 179","STAT_KLANN_TEST1_168_WERT ==> STAT_KLANN_TEST1_179_WERT;STAT_KLANN_TEST2_168_WERT ==> STAT_KLANN_TEST2_179_WERT")
|
|
{
|
|
blockzaehler = 14 * 12;
|
|
Ausgabe_NN("NKW/RK",blockzaehler,"_STATUS_KLANN","STAT_NKW_LOC_","STAT_RK_LOC_","STAT_KLANN_TEST1_","STAT_KLANN_TEST2_",0);
|
|
}
|
|
LINE("Wertepaar 180 bis 191","STAT_KLANN_TEST1_180_WERT ==> STAT_KLANN_TEST1_191_WERT;STAT_KLANN_TEST2_180_WERT ==> STAT_KLANN_TEST2_191_WERT")
|
|
{
|
|
blockzaehler = 15 * 12;
|
|
Ausgabe_NN("NKW/RK",blockzaehler,"_STATUS_KLANN","STAT_NKW_LOC_","STAT_RK_LOC_","STAT_KLANN_TEST1_","STAT_KLANN_TEST2_",0);
|
|
}
|
|
LINE("Wertepaar 192 bis 203","STAT_KLANN_TEST1_192_WERT ==> STAT_KLANN_TEST1_203_WERT;STAT_KLANN_TEST2_192_WERT ==> STAT_KLANN_TEST2_203_WERT")
|
|
{
|
|
blockzaehler = 16 * 12;
|
|
Ausgabe_NN("NKW/RK",blockzaehler,"_STATUS_KLANN","STAT_NKW_LOC_","STAT_RK_LOC_","STAT_KLANN_TEST1_","STAT_KLANN_TEST2_",0);
|
|
}
|
|
LINE("Wertepaar 204 bis 215","STAT_KLANN_TEST1_204_WERT ==> STAT_KLANN_TEST1_215_WERT;STAT_KLANN_TEST2_204_WERT ==> STAT_KLANN_TEST2_215_WERT")
|
|
{
|
|
blockzaehler = 17 * 12;
|
|
Ausgabe_NN("NKW/RK",blockzaehler,"_STATUS_KLANN","STAT_NKW_LOC_","STAT_RK_LOC_","STAT_KLANN_TEST1_","STAT_KLANN_TEST2_",0);
|
|
}
|
|
LINE("Wertepaar 216 bis 227","STAT_KLANN_TEST1_216_WERT ==> STAT_KLANN_TEST1_227_WERT;STAT_KLANN_TEST2_216_WERT ==> STAT_KLANN_TEST2_227_WERT")
|
|
{
|
|
blockzaehler = 18 * 12;
|
|
Ausgabe_NN("NKW/RK",blockzaehler,"_STATUS_KLANN","STAT_NKW_LOC_","STAT_RK_LOC_","STAT_KLANN_TEST1_","STAT_KLANN_TEST2_",0);
|
|
}
|
|
}
|
|
|
|
// **********************
|
|
// *** Status EISYAGR ***
|
|
// **********************
|
|
SCREEN s_eisy_agr()
|
|
{
|
|
int i, j, k, blockzaehler, durchlaufzaehler;
|
|
string help, result, s_temp;
|
|
blockzaehler = 0;
|
|
|
|
ftextout(dme_text + " Saugrohrmodell mit Abgasrückführung",0,10,1,0);
|
|
text(2,0,blank);
|
|
datei_nn = "";
|
|
|
|
LINE("Wertepaar 0 bis 9","STAT_PRNN_TEST_AGR_0_WERT ==> STAT_PRNN_TEST_AGR_0_WERT")
|
|
{
|
|
blockzaehler = 0;
|
|
Ausgabe_NN("NKW/VSE",blockzaehler,"_STATUS_EISYAGR","STAT_AGRPOS_","STAT_PRNN_TEST_AGR_","","",0);
|
|
}
|
|
LINE("Wertepaar 10 bis 19","STAT_PRNN_TEST_AGR_10_WERT ==> STAT_PRNN_TEST_AGR_19_WERT")
|
|
{
|
|
blockzaehler = 1;
|
|
Ausgabe_NN("NKW/VSE",blockzaehler,"_STATUS_EISYAGR","STAT_AGRPOS_","STAT_PRNN_TEST_AGR_","","",0);
|
|
}
|
|
LINE("Wertepaar 20 bis 29","STAT_PRNN_TEST_AGR_20_WERT ==> STAT_PRNN_TEST_AGR_29_WERT")
|
|
{
|
|
blockzaehler = 2;
|
|
Ausgabe_NN("NKW/VSE",blockzaehler,"_STATUS_EISYAGR","STAT_AGRPOS_","STAT_PRNN_TEST_AGR_","","",0);
|
|
}
|
|
LINE("Wertepaar 30 bis 39","STAT_PRNN_TEST_AGR_30_WERT ==> STAT_PRNN_TEST_AGR_39_WERT")
|
|
{
|
|
blockzaehler = 3;
|
|
Ausgabe_NN("NKW/VSE",blockzaehler,"_STATUS_EISYAGR","STAT_AGRPOS_","STAT_PRNN_TEST_AGR_","","",0);
|
|
}
|
|
LINE("Wertepaar 40 bis 49","STAT_PRNN_TEST_AGR_40_WERT ==> STAT_PRNN_TEST_AGR_49_WERT")
|
|
{
|
|
blockzaehler = 4;
|
|
Ausgabe_NN("NKW/VSE",blockzaehler,"_STATUS_EISYAGR","STAT_AGRPOS_","STAT_PRNN_TEST_AGR_","","",0);
|
|
}
|
|
LINE("Wertepaar 50 bis 59","STAT_PRNN_TEST_AGR_50_WERT ==> STAT_PRNN_TEST_AGR_59_WERT")
|
|
{
|
|
blockzaehler = 5;
|
|
Ausgabe_NN("NKW/VSE",blockzaehler,"_STATUS_EISYAGR","STAT_AGRPOS_","STAT_PRNN_TEST_AGR_","","",0);
|
|
}
|
|
LINE("Wertepaar 60 bis 69","STAT_PRNN_TEST_AGR_60_WERT ==> STAT_PRNN_TEST_AGR_69_WERT")
|
|
{
|
|
blockzaehler = 6;
|
|
Ausgabe_NN("NKW/VSE",blockzaehler,"_STATUS_EISYAGR","STAT_AGRPOS_","STAT_PRNN_TEST_AGR_","","",0);
|
|
}
|
|
LINE("Wertepaar 70 bis 79","STAT_PRNN_TEST_AGR_70_WERT ==> STAT_PRNN_TEST_AGR_79_WERT")
|
|
{
|
|
blockzaehler = 7;
|
|
Ausgabe_NN("NKW/VSE",blockzaehler,"_STATUS_EISYAGR","STAT_AGRPOS_","STAT_PRNN_TEST_AGR_","","",0);
|
|
}
|
|
LINE("Wertepaar 80 bis 89","STAT_PRNN_TEST_AGR_80_WERT ==> STAT_PRNN_TEST_AGR_89_WERT")
|
|
{
|
|
blockzaehler = 8;
|
|
Ausgabe_NN("NKW/VSE",blockzaehler,"_STATUS_EISYAGR","STAT_AGRPOS_","STAT_PRNN_TEST_AGR_","","",0);
|
|
}
|
|
LINE("Wertepaar 90 bis 99","STAT_PRNN_TEST_AGR_90_WERT ==> STAT_PRNN_TEST_AGR_99_WERT")
|
|
{
|
|
blockzaehler = 9;
|
|
Ausgabe_NN("NKW/VSE",blockzaehler,"_STATUS_EISYAGR","STAT_AGRPOS_","STAT_PRNN_TEST_AGR_","","",0);
|
|
}
|
|
}
|
|
|
|
// ****************************
|
|
// *** Status UeberDrehzahl ***
|
|
// ****************************
|
|
SCREEN s_ueberdreh()
|
|
{
|
|
ftextout(dme_text + " mit N53/N54 Überdrehzahl",1,0,1,0);
|
|
ftextout("",3,0,0,0);
|
|
INPAapiJob(sgbd,"_STATUS_UEBERDREHZAHL","","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
LINE("ÜberdrehZahl, BetriebsStunden","STAT_N_MAX_WERT, STAT_ZEIT_WERT")
|
|
{
|
|
vartext1 = "Überdrehzahl";
|
|
INPAapiResultText(vartext2,"STAT_N_MAX_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultInt(i_temp,"STAT_N_MAX_WERT",1);
|
|
inttoreal(i_temp,r_temp);
|
|
analogout(r_temp, 1, 0, 0, 8200, 0, 7200,"5.0");
|
|
text(1,32,vartext2);
|
|
vartext1 = "BetriebsStunden Zähler";
|
|
INPAapiResultText(vartext2,"STAT_ZEIT_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_ZEIT_WERT",1);
|
|
analogout(r_temp,1,40, 0, 10000, 0, 10000,"9.3");
|
|
text(1,78,vartext2);
|
|
}
|
|
LINE("Zähler Überdrehzahl, km Stand","STAT_ANZAHL_WERT, STAT_KM_STAND_WERT")
|
|
{
|
|
vartext1 = "Anzahl Überdrehzahl";
|
|
text(0,0,vartext1);
|
|
INPAapiResultInt(i_temp,"STAT_ANZAHL",1);
|
|
inttoreal(i_temp,r_temp);
|
|
analogout(r_temp, 1, 0, 0, 255, 0, 255,"5.0");
|
|
text(1,32,"-");
|
|
vartext1 = "Kilometerstand";
|
|
INPAapiResultText(vartext2,"STAT_KM_STAND_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_KM_STAND_WERT",1);
|
|
analogout(r_temp,1,40, 0, 700000, 0, 700000,"9.0");
|
|
text(1,75,vartext2);
|
|
}
|
|
LINE("Gradient, Geschwindigkeit","STAT_GRADIENT_N_WERT;LSHPWM_DOWN_1")
|
|
{
|
|
vartext1 = "Drehzahlgradient";
|
|
INPAapiResultText(vartext2,"STAT_GRADIENT_N_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultInt(i_temp,"STAT_GRADIENT_N_WERT",1);
|
|
inttoreal(i_temp,r_temp);
|
|
analogout(r_temp, 1, 0, -4100, 4100, -4100, 4100,"5.0");
|
|
text(1,32,vartext2);
|
|
vartext1 = "Geschwindigkeit";
|
|
INPAapiResultText(vartext2,"STAT_GESCHWINDIGKEIT_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultInt(i_temp,"STAT_GESCHWINDIGKEIT_WERT",1);
|
|
inttoreal(i_temp,r_temp);
|
|
analogout(r_temp,1,40, 0, 255, 0, 255,"5.0");
|
|
text(1,75,vartext2);
|
|
}
|
|
LINE("PedalWert, Untersetzung","STAT_PEDALWERT_MITTELWERT_WERT;LSHPWM_DOWN_2")
|
|
{
|
|
vartext1 = "Pedalwert Mittelwert";
|
|
INPAapiResultText(vartext2,"STAT_PEDALWERT_MITTELWERT_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultInt(i_temp,"STAT_PEDALWERT_MITTELWERT_WERT",1);
|
|
inttoreal(i_temp,r_temp);
|
|
analogout(r_temp, 1, 0, 0, 100, 0, 100,"5.0");
|
|
text(1,32,vartext2);
|
|
vartext1 = "Verhältnis Drehzahl/Geschwindigkeit";
|
|
text(0,40,vartext1);
|
|
INPAapiResultInt(i_temp,"STAT_UNTERSETZUNG",1);
|
|
inttoreal(i_temp,r_temp);
|
|
analogout(r_temp,1,40, 0, 255, 0, 255,"5.0");
|
|
text(1,75,"-");
|
|
}
|
|
LINE("Zeit, Summe Zeiten","STAT_ZEIT_MAX_WERT;STAT_ZEIT_SUMMIERT_WERT")
|
|
{
|
|
vartext1 = "Zeit bei maximaler Überdrehzahl";
|
|
INPAapiResultText(vartext2,"STAT_ZEIT_MAX_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_ZEIT_MAX_WERT",1);
|
|
analogout(r_temp, 1, 0, 0, 6500, 0, 6500,"6.1");
|
|
text(1,32,vartext2);
|
|
vartext1 = "Summe aller Überdrehzahlzeiten";
|
|
INPAapiResultText(vartext2,"STAT_ZEIT_SUMMIERT_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_ZEIT_SUMMIERT_WERT",1);
|
|
analogout(r_temp,1,40, 0, 6500, 0, 6500,"6.1");
|
|
text(1,75,vartext2);
|
|
}
|
|
LINE("Kupplung, Schubabschaltung","STAT_KUPPLUNG_WERT;STAT_ZEIT_SUMMIERT_WERT")
|
|
{
|
|
vartext1 = "KupplungsSchalter";
|
|
text(0,0,vartext1);
|
|
ergebnisDigitalAusgabe("STAT_KUPPLUNG" , 1, 15," EIN "," AUS ");
|
|
text(1,32,"-");
|
|
vartext1 = "Muster SchubAbschaltung";
|
|
text(0,40,vartext1);
|
|
INPAapiResultInt(i_temp,"STAT_SCHUB_ABSCHALTUNG",1);
|
|
inttoreal(i_temp,r_temp);
|
|
analogout(r_temp,1,40, 0, 255, 0, 255,"5.0");
|
|
text(1,75,"-");
|
|
}
|
|
}
|
|
// ******************************
|
|
// *** Status UeberTemperatur ***
|
|
// ******************************
|
|
SCREEN s_uebertemp()
|
|
{
|
|
ftextout(dme_text + " mit N53/N54 Übertemperatur",1,0,1,0);
|
|
ftextout("",3,0,0,0);
|
|
INPAapiJob(sgbd,"_STATUS_UEBERTEMPERATUR","","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
LINE("Oeltemperatur, Drehzahl","STAT_TOIL_MAX_WERT, STAT_N_WERT")
|
|
{
|
|
vartext1 = "Höchste Öltemperatur";
|
|
INPAapiResultText(vartext2,"STAT_TOIL_MAX_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_TOIL_MAX_WERT",1);
|
|
analogout(r_temp, 1, 0, 0, 200, 0, 120,"5.0");
|
|
text(1,32,vartext2);
|
|
vartext1 = "Drehzahl";
|
|
INPAapiResultText(vartext2,"STAT_N_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultInt(i_temp,"STAT_N_WERT",1);
|
|
inttoreal(i_temp,r_temp);
|
|
analogout(r_temp, 1, 40, 0, 8200, 0, 7200,"5.0");
|
|
text(1,75,vartext2);
|
|
}
|
|
LINE("Zähler Übertemperatur, km Stand","STAT_CTR_WERT, STAT_CTR_KM_WERT")
|
|
{
|
|
vartext1 = "Zähler Übertemperatur";
|
|
text(0,0,vartext1);
|
|
INPAapiResultInt(i_temp,"STAT_CTR",1);
|
|
inttoreal(i_temp,r_temp);
|
|
analogout(r_temp, 1, 0, 0, 255, 0, 255,"5.0");
|
|
text(1,32,"-");
|
|
vartext1 = "Kilometerstand";
|
|
INPAapiResultText(vartext2,"STAT_CTR_KM_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_CTR_KM_WERT",1);
|
|
analogout(r_temp,1,40, 0, 500000, 0, 500000,"7.0");
|
|
text(1,75,vartext2);
|
|
}
|
|
LINE("Drehmoment, Geschwindigkeit","STAT_TQI_AV_WERT;STAT_VS_WERT")
|
|
{
|
|
vartext1 = "Drehmoment";
|
|
INPAapiResultText(vartext2,"STAT_TQI_AV_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_TQI_AV_WERT",1);
|
|
analogout(r_temp, 1, 0, -500, 500, -350, 350,"6.1");
|
|
text(1,32,vartext2);
|
|
vartext1 = "Geschwindigkeit";
|
|
INPAapiResultText(vartext2,"STAT_VS_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultInt(i_temp,"STAT_VS_WERT",1);
|
|
inttoreal(i_temp,r_temp);
|
|
analogout(r_temp,1,40, 0, 255, 0, 255,"5.0");
|
|
text(1,75,vartext2);
|
|
}
|
|
LINE("PedalWert, Untersetzung","STAT_PV_AV_WERT;STAT_GEAR_WERT")
|
|
{
|
|
vartext1 = "Pedalwert";
|
|
INPAapiResultText(vartext2,"STAT_PV_AV_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_PV_AV_WERT",1);
|
|
analogout(r_temp, 1, 0, 0, 100, 0, 100,"5.0");
|
|
text(1,32,vartext2);
|
|
vartext1 = "Gang";
|
|
text(0,40,vartext1);
|
|
INPAapiResultInt(i_temp,"STAT_GEAR",1);
|
|
inttoreal(i_temp,r_temp);
|
|
analogout(r_temp,1,40, 0, 10, 0, 6,"5.0");
|
|
text(1,75,"-");
|
|
}
|
|
LINE("Umgebungstemperatur, Motortemperatur","STAT_TAM_WERT;STAT_TCO_WERT")
|
|
{
|
|
vartext1 = "Umgebungstemperatur";
|
|
INPAapiResultText(vartext2,"STAT_TAM_EINH",1,"");
|
|
text(0,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_TAM_WERT",1);
|
|
analogout(r_temp, 1, 0, -50, 150, -50, 150,"6.1");
|
|
text(1,32,vartext2);
|
|
vartext1 = "Motortemperatur";
|
|
INPAapiResultText(vartext2,"STAT_TCO_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_TCO_WERT",1);
|
|
analogout(r_temp,1,40, -50, 150, -50, 150,"6.1");
|
|
text(1,75,vartext2);
|
|
}
|
|
LINE("Kupplung, Warnschwelle","STAT_LV_CS_WERT;STAT_WARN_THD_WERT")
|
|
{
|
|
vartext1 = "Kupplungsschalter";
|
|
text(0,0,vartext1);
|
|
ergebnisDigitalAusgabe("STAT_LV_CS", 1, 15," EIN "," AUS ");
|
|
text(1,32,"-");
|
|
vartext1 = "Schwelle Übertemperatur";
|
|
INPAapiResultText(vartext2,"STAT_WARN_THD_EINH",1,"");
|
|
text(0,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_WARN_THD_WERT",1);
|
|
analogout(r_temp, 1, 40, -40, 215, 100, 160, "5.0");
|
|
text(1,75,vartext2);
|
|
}
|
|
}
|
|
|
|
// ****************************
|
|
// *** Laufunruhe gefiltert ***
|
|
// ****************************
|
|
SCREEN s_laufunruhe()
|
|
{
|
|
delay(500);
|
|
ftextout("Gefilterte Laufunruhe und Lambdasonden Spannung",1,5,1,0);
|
|
INPAapiJob(sgbd,"STATUS_MOTORLAUFUNRUHE","","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
LINE("gefilterte Laufunruhe Zylinder 1","STAT_ER_IS_1")
|
|
{
|
|
vartext1 = "Laufunruhe Zylinder 1";
|
|
text(0,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_ZYL1_WERT",1);
|
|
analogout(r_temp, 1, 0, -8.0, 8.0, -8.0, 3.0,"5.3");
|
|
|
|
vartext1 = "Laufunruhe Zylinder 2";
|
|
text(0,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_ZYL2_WERT",1);
|
|
analogout(r_temp, 1, 40, -8.0, 8.0, -8.0, 3.0,"5.3");
|
|
}
|
|
LINE("gefilterte Laufunruhe Zylinder 3","STAT_ER_IS_3")
|
|
{
|
|
vartext1 = "Laufunruhe Zylinder 3";
|
|
text(0,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_ZYL3_WERT",1);
|
|
analogout(r_temp, 1, 0, -8.0, 8.0, -8.0, 3.0,"5.3");
|
|
|
|
vartext1 = "Laufunruhe Zylinder 4";
|
|
text(0,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_ZYL4_WERT",1);
|
|
analogout(r_temp, 1, 40, -8.0, 8.0, -8.0, 3.0,"5.3");
|
|
}
|
|
LINE("gefilterte Laufunruhe Zylinder 5","STAT_ER_IS_5")
|
|
{
|
|
vartext1 = "Laufunruhe Zylinder 5";
|
|
text(0,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_ZYL5_WERT",1);
|
|
analogout(r_temp, 1, 0, -8.0, 8.0, -8.0, 3.0,"5.3");
|
|
|
|
vartext1 = "Laufunruhe Zylinder 6";
|
|
text(0,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_ZYL6_WERT",1);
|
|
analogout(r_temp, 1, 40, -8.0, 8.0, -8.0, 3.0,"5.3");
|
|
}
|
|
|
|
LINE("gefilterte Laufunruhe Zylinder 5","STAT_ER_IS_5")
|
|
{
|
|
vartext1 = "Laufunruhe Zylinder 7";
|
|
text(0,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_ZYL7_WERT",1);
|
|
analogout(r_temp, 1, 0, -8.0, 8.0, -8.0, 3.0,"5.3");
|
|
|
|
vartext1 = "Laufunruhe Zylinder 8";
|
|
text(0,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_ZYL8_WERT",1);
|
|
analogout(r_temp, 1, 40, -8.0, 8.0, -8.0, 3.0,"5.3");
|
|
}
|
|
|
|
LINE("Spannung Sonde VK1","STAT_VLS_UP_1")
|
|
{
|
|
vartext1 = "Spannung Lambdasonde Bank 1";
|
|
text(0,0,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_VLS_UP_1_WERT",1);
|
|
analogout(r_temp, 1, 0, 0.0, 5.0, 0.0, 5.0,"5.2");
|
|
|
|
vartext1 = "Spannung Lambdasonde Bank 2";
|
|
text(0,40,vartext1);
|
|
INPAapiResultAnalog(r_temp,"STAT_VLS_UP_2_WERT",1);
|
|
analogout(r_temp, 1, 40, 0.0, 5.0, 0.0, 5.0,"5.2");
|
|
}
|
|
LINE("Status Segmentadaption","STAT_GEBERRAD_ADAPTION")
|
|
{
|
|
text(0,1,"Status Segmentadaption");
|
|
ergebnisDigitalAusgabe("STAT_GEBERRAD_ADAPTION" , 1, 1," beendet "," läuft ");
|
|
delay(500);
|
|
}
|
|
}
|
|
|
|
// *******************
|
|
// *** EWS4-Screen ***
|
|
// *******************
|
|
SCREEN s_ews()
|
|
{
|
|
ftextout("EWS4-Startwertabgleich "+ SG_Verbund_text ,3,20,1,1);
|
|
ftextout("NUR FÜR ENTWICKLUNGSFAHRZEUGE!" ,5,27,0,1);
|
|
textout("< F1 > Status" ,12,5);
|
|
textout("< F2 > DME abgleichen" ,13,5);
|
|
textout("< F10> Zurück" ,15,5);
|
|
stop();
|
|
}
|
|
|
|
SCREEN s_ews_alt()
|
|
{
|
|
ftextout("EWS-Startwertabgleich alt "+ SG_Verbund_text ,3,20,1,1);
|
|
ftextout("NUR FÜR ENTWICKLUNGSFAHRZEUGE! Alter Code!!" ,5,27,0,1);
|
|
ftextout("Wenn PST CP16510 unterstützt, dann nicht mehr verwenden!" ,7,27,0,1);
|
|
textout("< F1 > Status" ,12,5);
|
|
textout("< F2 > DME abgleichen" ,13,5);
|
|
textout("< F10> Zurück" ,15,5);
|
|
stop();
|
|
}
|
|
|
|
// ********************
|
|
// *** SLEEP-Screen ***
|
|
//*********************
|
|
SCREEN s_sleep_funktional()
|
|
{
|
|
ftextout("Steuergeräte in SLEEP-MODE / DME Reset" ,3,20,1,1);
|
|
ftextout("Sleep Mode: Klemme 15 aus" ,9,20,1,1);
|
|
textout("< F1 > DME" ,12,5);
|
|
// textout("< F3 > Alle PowerTrain" ,14,5);
|
|
textout("< F5 > Alle Steuergeräte" ,16,5);
|
|
textout("< F8 > DME Reset" ,19,5);
|
|
textout("< F10> Zurück" ,21,5);
|
|
stop();
|
|
}
|
|
|
|
// *********************
|
|
// *** IBS Hauptmenu ***
|
|
// *********************
|
|
SCREEN s_main_pm()
|
|
{
|
|
ftextout(dme_text + " PM Hauptmenü",3,20,1,1);
|
|
textout("< F1 > IBS Identifikation", 9,5);
|
|
textout("< F2 > PM 1 Byte Feld" ,10,5);
|
|
textout("< F3 > PM 2 Byte Feld" ,11,5);
|
|
textout("< F4 > PM 3 Byte Feld" ,12,5);
|
|
textout("< F5 > Batterietausch registrieren" ,13,5);
|
|
textout("< F6 > Histogramm Reset" ,14,5);
|
|
textout("< F7 > Start PM MESSEMODE",15,5);
|
|
textout("< F8 > Stop PM MESSEMODE",16,5);
|
|
textout("< F10> Zurück" ,19,5);
|
|
textout("< Shift > + < F10> INPA beenden" ,19,45);
|
|
stop();
|
|
}
|
|
|
|
// ************************
|
|
// *** IBS Ident-Screen ***
|
|
// ************************
|
|
SCREEN s_ibs_ident()
|
|
{
|
|
string s1;
|
|
long l1;
|
|
|
|
INPAapiJob(sgbd,"IDENT_IBS","","");
|
|
|
|
ftextout("Identifikation Batteriesensor",0,20,1,1);
|
|
INPAapiResultText(s1, "JOB_STATUS", 1,"");
|
|
if (s1 != "OKAY")
|
|
{
|
|
messagebox("IDENT_IBS",s1);
|
|
}
|
|
else
|
|
{
|
|
textout("=============================================================================================",2,0);
|
|
ergebnisAusgabeTxt("BMWTeilenummer:" ,"ID_BMW_NR" ,3,0,0,30);
|
|
ergebnisAusgabeTxt("Seriennummer:" ,"SERIENNUMMER" ,4,0,0,30);
|
|
ergebnisAusgabeInt("Hardwareversion:" ,"HW_REF" ,5,0,0,30);
|
|
ergebnisAusgabeInt("Programmstand:" ,"ZIF_PROGRAMMSTAND" ,7,0,0,30);
|
|
ergebnisAusgabeInt("Programmversion:" ,"ZIF_STATUS" ,8,0,0,30);
|
|
}
|
|
}
|
|
|
|
// ************************
|
|
// *** PM 1 Byte-Feld ***
|
|
// ************************
|
|
SCREEN s_pm_feld1()
|
|
{
|
|
string s1;
|
|
|
|
INPAapiJob(sgbd,"STATUS_SYSTEMCHECK_PM_INFO_1","","");
|
|
|
|
INPAapiResultText(s1, "JOB_STATUS", 1,"");
|
|
if (s1 != "OKAY")
|
|
{
|
|
messagebox("PM_FELD1",s1);
|
|
}
|
|
else
|
|
{
|
|
ftextout(dme_text + " PM Infofeld 1",0,20,1,1);
|
|
ergebnisAusgabeAnalog("km Stand aktuell" , "STAT_KM_STAND_AKTUELL_WERT" , "7.2", 5, 0, 0,25);
|
|
ergebnisAusgabeAnalog("km Stand vor 1 Tag" , "STAT_KM_STAND_VOR_1_TAG_WERT", "7.2", 6, 0, 0,25);
|
|
ergebnisAusgabeAnalog("km Stand vor 2 Tagen", "STAT_KM_STAND_VOR_2_TAG_WERT", "7.2", 7, 0, 0,25);
|
|
ergebnisAusgabeAnalog("km Stand vor 3 Tagen", "STAT_KM_STAND_VOR_3_TAG_WERT", "7.2", 8, 0, 0,25);
|
|
ergebnisAusgabeAnalog("km Stand vor 4 Tagen", "STAT_KM_STAND_VOR_4_TAG_WERT", "7.2", 9, 0, 0,25);
|
|
ergebnisAusgabeAnalog("km Stand vor 5 Tagen", "STAT_KM_STAND_VOR_5_TAG_WERT", "7.2", 10, 0, 0,25);
|
|
ergebnisAusgabeAnalog(" letzter Batterietausch bei km", "STAT_BATTERIETAUSCH_LETZTER_WERT" , "7.2",6,35, 0,25);
|
|
ergebnisAusgabeAnalog("2letzter Batterietausch bei km", "STAT_BATTERIETAUSCH_ZWEITLETZTER_WERT", "7.2",7,35, 0,25);
|
|
ergebnisAusgabeAnalog("3letzter Batterietausch bei km", "STAT_BATTERIETAUSCH_DRITTLETZTER_WERT", "7.2",8,35, 0,25);
|
|
ergebnisAusgabeAnalog("4letzter Batterietausch bei km", "STAT_BATTERIETAUSCH_VIERTLETZTER_WERT", "7.2",9,35, 0,25);
|
|
//ergebnisAusgabeAnalog("5letzter Batterietausch bei km", "STAT_BATTERIETAUSCH_FUENFTLETZTER_WERT","7.2",8,35, 0,25);
|
|
ergebnisAusgabeAnalog("Stunden im Ladungsbereich 0 - 20", "STAT_ZEIT_IM_LADUNGSBEREICH_0_20_WERT" ,"7.2",13,35, 0,25);
|
|
ergebnisAusgabeAnalog("Stunden im Ladungsbereich 20 - 40", "STAT_ZEIT_IM_LADUNGSBEREICH_20_40_WERT" ,"7.2",14,35, 0,25);
|
|
ergebnisAusgabeAnalog("Stunden im Ladungsbereich 40 - 60", "STAT_ZEIT_IM_LADUNGSBEREICH_40_60_WERT" ,"7.2",15,35, 0,25);
|
|
ergebnisAusgabeAnalog("Stunden im Ladungsbereich 60 - 80", "STAT_ZEIT_IM_LADUNGSBEREICH_60_80_WERT" ,"7.2",16,35, 0,25);
|
|
ergebnisAusgabeAnalog("Stunden im Ladungsbereich 80 -100", "STAT_ZEIT_IM_LADUNGSBEREICH_80_100_WERT","7.2",17,35, 0,25);
|
|
ergebnisAusgabeAnalog("Minuten bei Temperatur bis 0" , "STAT_ZEIT_IM_TEMPERATURBEREICH_BIS_0_WERT","7.2",13, 0, 0,25);
|
|
ergebnisAusgabeAnalog("Minuten bei Temperatur 0 - 20" , "STAT_ZEIT_IM_TEMPERATURBEREICH_0_20_WERT" ,"7.2",14, 0, 0,25);
|
|
ergebnisAusgabeAnalog("Minuten bei Temperatur 20 - 40" , "STAT_ZEIT_IM_TEMPERATURBEREICH_20_40_WERT","7.2",15, 0, 0,25);
|
|
ergebnisAusgabeAnalog("Minuten bei Temperatur 40 - 60" , "STAT_ZEIT_IM_TEMPERATURBEREICH_40_60_WERT","7.2",16, 0, 0,25);
|
|
ergebnisAusgabeAnalog("Minuten bei Temperatur über 60" , "STAT_ZEIT_IM_TEMPERATURBEREICH_AB_60_WERT","7.2",17, 0, 0,25);
|
|
ergebnisAusgabeAnalog("Batterieladung gesamte Ah", "STAT_BATTERIELADUNG_GESAMT_WERT" ,"7.2",20, 0, 0,25);
|
|
ergebnisAusgabeAnalog("Batterieentladung gesamte Ah","STAT_BATTERIEENTLADUNG_GESAMT_WERT","7.2",20,35, 0,25);
|
|
ergebnisAusgabeAnalog("Batterieladung Bilanz Ah", "STAT_BATTERIELADUNG_BILANZ_WERT" ,"7.2",21, 0, 0,25);
|
|
ergebnisAusgabeAnalog("Batterieentladung während Motorlauf", "STAT_BATTENTLADUNG_GESAMT_BEI_MOTOR_LAEUFT_WERT" ,"7.2",21, 35, 0,25); // Von MSD87 L6 SGBD nicht unterstützt!
|
|
// ergebnisAusgabeAnalog("Minuten Ruhestrom ges 0 - 80" , "STAT_RUHESTROM_0_80_GESAMT_WERT" ,"7.2",10, 0, 0,25);
|
|
// ergebnisAusgabeAnalog("Minuten Ruhestrom ges 80 - 200" , "STAT_RUHESTROM_80_200_GESAMT_WERT" ,"7.2",11, 0, 0,25);
|
|
// ergebnisAusgabeAnalog("Minuten Ruhestrom ges 200 - 1000", "STAT_RUHESTROM_200_1000_GESAMT_WERT" ,"7.2",12, 0, 0,25);
|
|
// ergebnisAusgabeAnalog("Minuten Ruhestrom ges über 1000" , "STAT_RUHESTROM_AB_1000_GESAMT_WERT" ,"7.2",13, 0, 0,25);
|
|
// ergebnisAusgabeAnalog("Minuten Ruhestrom oSV 0 - 80" , "STAT_RUHESTROM_0_80_GESAMT_OHNE_SV_WERT" ,"7.2",10,35, 0,25);
|
|
// ergebnisAusgabeAnalog("Minuten Ruhestrom oSV 80 - 200" , "STAT_RUHESTROM_80_200_GESAMT_OHNE_SV_WERT" ,"7.2",11,35, 0,25);
|
|
// ergebnisAusgabeAnalog("Minuten Ruhestrom oSV 200 - 1000", "STAT_RUHESTROM_200_1000_GESAMT_OHNE_SV_WERT" ,"7.2",12,35, 0,25);
|
|
// ergebnisAusgabeAnalog("Minuten Ruhestrom oSV über 1000" , "STAT_RUHESTROM_AB_1000_GESAMT_OHNE_SV_WERT" ,"7.2",13,35, 0,25);
|
|
ergebnisAusgabeAnalog("IBS Fehler BSD Parity", "STAT_IBS_FEHLERZAEHLER_BSD_PARITY_WERT", "5.0",24, 0, 0,25);
|
|
ergebnisAusgabeAnalog("IBS Fehler Watchdog Reset", "STAT_IBS_FEHLERZAEHLER_WATCHDOG_RESET_WERT", "5.0",25, 0, 0,25);
|
|
ergebnisAusgabeAnalog("IBS Fehler Power on Reset", "STAT_IBS_FEHLERZAEHLER_POWER_ON_RESET_WERT", "5.0",26, 0, 0,25);
|
|
ergebnisAusgabeAnalog("KTBS Fehler BSD erweitert", "STAT_KTBS_FEHLERZAEHLER_BSD_ERWEITERT_WERT", "5.0",24,35, 0,25);
|
|
ergebnisAusgabeAnalog("KTIBS Fehler BSD", "STAT_KTIBS_FEHLERZAEHLER_BSD_WERT", "5.0",25,35, 0,25);
|
|
ergebnisAusgabeAnalog("KTIBS Fehler EBSD Checksumme","STAT_KTIBS_FEHLERZAEHLER_EBSD_CHECKSUMME_WERT","5.0",26,35, 0,25);
|
|
delay(1000);
|
|
}
|
|
}
|
|
|
|
// ************************
|
|
// *** PM 2 Byte-Feld ***
|
|
// ************************
|
|
SCREEN s_pm_feld2()
|
|
{
|
|
string s1;
|
|
|
|
INPAapiJob(sgbd,"STATUS_SYSTEMCHECK_PM_INFO_2","","");
|
|
|
|
INPAapiResultText(s1, "JOB_STATUS", 1,"");
|
|
if (s1 != "OKAY")
|
|
{
|
|
messagebox("PM_FELD2",s1);
|
|
}
|
|
else
|
|
{
|
|
ftextout(dme_text + " PM Infofeld 2",0,20,1,1);
|
|
ergebnisAusgabeAnalog("Ah Q SOC aktuell" , "STAT_Q_SOC_AKTUELL_WERT" , "7.2", 3, 0, 0,25);
|
|
ergebnisAusgabeAnalog("Ah Q SOC vor 1 Tag" , "STAT_Q_SOC_VOR_1_TAG_WERT", "7.2", 4, 0, 0,25);
|
|
ergebnisAusgabeAnalog("Ah Q SOC vor 2 Tagen", "STAT_Q_SOC_VOR_2_TAG_WERT", "7.2", 5, 0, 0,25);
|
|
ergebnisAusgabeAnalog("Ah Q SOC vor 3 Tagen", "STAT_Q_SOC_VOR_3_TAG_WERT", "7.2", 6, 0, 0,25);
|
|
ergebnisAusgabeAnalog("Ah Q SOC vor 4 Tagen", "STAT_Q_SOC_VOR_4_TAG_WERT", "7.2", 7, 0, 0,25);
|
|
ergebnisAusgabeAnalog("Ah Q SOC vor 5 Tagen", "STAT_Q_SOC_VOR_5_TAG_WERT", "7.2", 8, 0, 0,25);
|
|
ergebnisAusgabeAnalog("% Startfähigkeit aktuell" , "STAT_STARTFAEHIGKEITSGRENZE_AKTUELL_WERT" , "7.2", 3,35, 0,25);
|
|
ergebnisAusgabeAnalog("% Startfähigkeit vor 1 Tag" , "STAT_STARTFAEHIGKEITSGRENZE_VOR_1_TAG_WERT", "7.2", 4,35, 0,25);
|
|
ergebnisAusgabeAnalog("% Startfähigkeit vor 2 Tagen", "STAT_STARTFAEHIGKEITSGRENZE_VOR_2_TAG_WERT", "7.2", 5,35, 0,25);
|
|
ergebnisAusgabeAnalog("% Startfähigkeit vor 3 Tagen", "STAT_STARTFAEHIGKEITSGRENZE_VOR_3_TAG_WERT", "7.2", 6,35, 0,25);
|
|
ergebnisAusgabeAnalog("% Startfähigkeit vor 4 Tagen", "STAT_STARTFAEHIGKEITSGRENZE_VOR_4_TAG_WERT", "7.2", 7,35, 0,25);
|
|
ergebnisAusgabeAnalog("% Startfähigkeit vor 5 Tagen", "STAT_STARTFAEHIGKEITSGRENZE_VOR_5_TAG_WERT", "7.2", 8,35, 0,25);
|
|
ergebnisAusgabeAnalog("% Ladungszustand aktuell" , "STAT_LADUNGSZUSTAND_AKTUELL_WERT" , "7.2",10,35, 0,25);
|
|
ergebnisAusgabeAnalog("% Ladungszustand vor 1 Tag" , "STAT_LADUNGSZUSTAND_VOR_1_TAG_WERT", "7.2",11,35, 0,25);
|
|
ergebnisAusgabeAnalog("% Ladungszustand vor 2 Tagen", "STAT_LADUNGSZUSTAND_VOR_2_TAG_WERT", "7.2",12,35, 0,25);
|
|
ergebnisAusgabeAnalog("% Ladungszustand vor 3 Tagen", "STAT_LADUNGSZUSTAND_VOR_3_TAG_WERT", "7.2",13,35, 0,25);
|
|
ergebnisAusgabeAnalog("% Ladungszustand vor 4 Tagen", "STAT_LADUNGSZUSTAND_VOR_4_TAG_WERT", "7.2",14,35, 0,25);
|
|
ergebnisAusgabeAnalog("% Ladungszustand vor 5 Tagen", "STAT_LADUNGSZUSTAND_VOR_5_TAG_WERT", "7.2",15,35, 0,25);
|
|
ergebnisAusgabeAnalog("Batterie Kapazität in Ah", "STAT_BATTERIE_KAPAZITAET_WERT", "7.2",10, 0, 0,25);
|
|
ergebnisAusgabeAnalog("SOH", "STAT_SOH_WERT", "7.2",11, 0, 0,25);
|
|
ergebnisAusgabeAnalog("SOC-Fit", "STAT_SOC_FIT_WERT", "7.2",12, 0, 0,25);
|
|
ergebnisAusgabeAnalog("Saison Temperatur in C", "STAT_TEMP_SAISON_WERT", "7.2",13, 0, 0,25);
|
|
ergebnisAusgabeAnalog("Kalibrier Ereignisse", "STAT_KALIBRIER_EVENT_CNT_WERT", "4.0",14, 0, 0,25);
|
|
ergebnisAusgabeAnalog("IBS Fehler Download Checksumme", "STAT_IBS_FEHLERZAEHLER_DOWNLOAD_CHECKSUMME_WERT", "4.0",17, 0, 0,25);
|
|
ergebnisAusgabeAnalog("IBS Fehler EEPROM Diagnose", "STAT_IBS_FEHLERZAEHLER_EEPROM_DIAGNOSE_WERT", "4.0",18, 0, 0,25);
|
|
ergebnisAusgabeAnalog("IBS Fehler RAM Diagnose", "STAT_IBS_FEHLERZAEHLER_RAM_DIAGNOSE_WERT", "4.0",19, 0, 0,25);
|
|
ergebnisAusgabeAnalog("IBS Fehler PROM Diagnose", "STAT_IBS_FEHLERZAEHLER_PROM_DIAGNOSE_WERT", "4.0",17,35, 0,25);
|
|
ergebnisAusgabeAnalog("IBS Fehler I2C NAC Diagnose", "STAT_IBS_FEHLERZAEHLER_I2C_NAC_DIAGNOSE_WERT", "4.0",18,35, 0,25);
|
|
ergebnisAusgabeAnalog("IBS Fehler I2C Bus Collision", "STAT_IBS_FEHLERZAEHLER_I2C_BUS_COLLISION_WERT", "4.0",19,35, 0,25);
|
|
delay(1000);
|
|
}
|
|
}
|
|
|
|
// *******************************
|
|
// *** PM 3 Byte-Feld Seite 2 ***
|
|
// *******************************
|
|
SCREEN s_pm_feld3()
|
|
{
|
|
string s1;
|
|
|
|
INPAapiJob(sgbd,"STATUS_SYSTEMCHECK_PM_INFO_1","","");
|
|
|
|
INPAapiResultText(s1, "JOB_STATUS", 1,"");
|
|
if (s1 != "OKAY")
|
|
{
|
|
messagebox("PM_FELD3",s1);
|
|
}
|
|
else
|
|
{
|
|
ftextout(dme_text + " PM Infofeld 3",0,20,1,1);
|
|
// ergebnisAusgabeAnalog("Minuten Ruhestrom ges 0 - 80" , "STAT_RUHESTROM_0_80_GESAMT_WERT" ,"7.2", 5, 0, 0,25);
|
|
// ergebnisAusgabeAnalog("Minuten Ruhestrom ges 80 - 200" , "STAT_RUHESTROM_80_200_GESAMT_WERT" ,"7.2", 6, 0, 0,25);
|
|
// ergebnisAusgabeAnalog("Minuten Ruhestrom ges 200 - 1000", "STAT_RUHESTROM_200_1000_GESAMT_WERT" ,"7.2", 7, 0, 0,25);
|
|
// ergebnisAusgabeAnalog("Minuten Ruhestrom ges über 1000" , "STAT_RUHESTROM_AB_1000_GESAMT_WERT" ,"7.2", 8, 0, 0,25);
|
|
// ergebnisAusgabeAnalog("Minuten Ruhestrom oSV 0 - 80" , "STAT_RUHESTROM_0_80_GESAMT_OHNE_SV_WERT" ,"7.2", 5,35, 0,25);
|
|
// ergebnisAusgabeAnalog("Minuten Ruhestrom oSV 80 - 200" , "STAT_RUHESTROM_80_200_GESAMT_OHNE_SV_WERT" ,"7.2", 6,35, 0,25);
|
|
// ergebnisAusgabeAnalog("Minuten Ruhestrom oSV 200 - 1000", "STAT_RUHESTROM_200_1000_GESAMT_OHNE_SV_WERT" ,"7.2", 7,35, 0,25);
|
|
// ergebnisAusgabeAnalog("Minuten Ruhestrom oSV über 1000" , "STAT_RUHESTROM_AB_1000_GESAMT_OHNE_SV_WERT" ,"7.2", 8,35, 0,25);
|
|
|
|
text(3,0,"Status Ruhestrom aktuell:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_AKTUELL",1,"");
|
|
ftextout(vartext,3,25,0,0);
|
|
|
|
text(4,0,"Status Ruhestrom vor 1 Zyklus:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_1_ZYKLUS",1,"");
|
|
ftextout(vartext,4,25,0,0);
|
|
|
|
text(5,0,"Status Ruhestrom vor 2 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_2_ZYKLEN",1,"");
|
|
ftextout(vartext,5,25,0,0);
|
|
|
|
text(6,0,"Status Ruhestrom vor 3 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_3_ZYKLEN",1,"");
|
|
ftextout(vartext,6,25,0,0);
|
|
|
|
text(7,0,"Status Ruhestrom vor 4 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_4_ZYKLEN",1,"");
|
|
ftextout(vartext,7,25,0,0);
|
|
|
|
text(8,0,"Status Ruhestrom vor 5 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_5_ZYKLEN",1,"");
|
|
ftextout(vartext,8,25,0,0);
|
|
|
|
text(9,0,"Status Ruhestrom vor 6 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_6_ZYKLEN",1,"");
|
|
ftextout(vartext,9,25,0,0);
|
|
|
|
text(10,0,"Status Ruhestrom vor 7 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_7_ZYKLEN",1,"");
|
|
ftextout(vartext,10,25,0,0);
|
|
|
|
text(11,0,"Status Ruhestrom vor 8 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_8_ZYKLEN",1,"");
|
|
ftextout(vartext,11,25,0,0);
|
|
|
|
text(12,0,"Status Ruhestrom vor 9 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_9_ZYKLEN",1,"");
|
|
ftextout(vartext,12,25,0,0);
|
|
|
|
text(13,0,"Status Ruhestrom vor 10 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_10_ZYKLEN",1,"");
|
|
ftextout(vartext,13,25,0,0);
|
|
|
|
text(14,0,"Status Ruhestrom vor 11 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_11_ZYKLEN",1,"");
|
|
ftextout(vartext,14,25,0,0);
|
|
|
|
text(15,0,"Status Ruhestrom vor 12 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_12_ZYKLEN",1,"");
|
|
ftextout(vartext,15,25,0,0);
|
|
|
|
text(16,0,"Status Ruhestrom vor 13 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_13_ZYKLEN",1,"");
|
|
ftextout(vartext,16,25,0,0);
|
|
|
|
text(17,0,"Status Ruhestrom vor 14 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_14_ZYKLEN",1,"");
|
|
ftextout(vartext,17,25,0,0);
|
|
|
|
text(18,0,"Status Ruhestrom vor 15 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_15_ZYKLEN",1,"");
|
|
ftextout(vartext,18,25,0,0);
|
|
|
|
text(19,0,"Status Ruhestrom vor 16 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_16_ZYKLEN",1,"");
|
|
ftextout(vartext,19,25,0,0);
|
|
|
|
text(20,0,"Status Ruhestrom vor 17 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_17_ZYKLEN",1,"");
|
|
ftextout(vartext,20,25,0,0);
|
|
|
|
text(21,0,"Status Ruhestrom vor 18 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_18_ZYKLEN",1,"");
|
|
ftextout(vartext,21,25,0,0);
|
|
|
|
text(22,0,"Status Ruhestrom vor 19 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_19_ZYKLEN",1,"");
|
|
ftextout(vartext,22,25,0,0);
|
|
|
|
text(23,0,"Status Ruhestrom vor 20 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_20_ZYKLEN",1,"");
|
|
ftextout(vartext,23,25,0,0);
|
|
|
|
text(24,0,"Status Ruhestrom vor 21 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_21_ZYKLEN",1,"");
|
|
ftextout(vartext,24,25,0,0);
|
|
|
|
text(25,0,"Status Ruhestrom vor 22 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_22_ZYKLEN",1,"");
|
|
ftextout(vartext,25,25,0,0);
|
|
|
|
text(26,0,"Status Ruhestrom vor 23 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_23_ZYKLEN",1,"");
|
|
ftextout(vartext,26,25,0,0);
|
|
|
|
text(27,0,"Status Ruhestrom vor 24 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_24_ZYKLEN",1,"");
|
|
ftextout(vartext,27,25,0,0);
|
|
|
|
text(28,0,"Status Ruhestrom vor 25 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_25_ZYKLEN",1,"");
|
|
ftextout(vartext,28,25,0,0);
|
|
|
|
text(29,0,"Status Ruhestrom vor 26 Zyklen:");
|
|
INPAapiResultText(vartext,"STAT_RUHESTROM_VOR_26_ZYKLEN",1,"");
|
|
ftextout(vartext,29,25,0,0);
|
|
|
|
delay(1000);
|
|
}
|
|
}
|
|
|
|
//************************
|
|
//*** EWS4 Abgleich alt***
|
|
//************************
|
|
|
|
SCREEN s_ews_stell_alt()
|
|
{
|
|
string lock_status_wert_string_alt, lock_status_wert_string, lock_status_text_string_alt, lock_status_text_string;
|
|
string EKey, strData, strCmp, strTmp, strTmp2;
|
|
string s1, s2, s3;
|
|
int lock_status_wert_int, i, anzahl_zeichen, anzahl_bytes, intDataLen, zeile;
|
|
|
|
|
|
EKey = "0x63,0x47,0x15,0xA9,0x3B,0xE0,0x2A,0x74,0xFD,0x74,0x0E,0xDA,0xA1,0x9A,0x45,0x31";
|
|
|
|
zeile = 14;
|
|
|
|
ftextout("EWS4-Startwertabgleich " + dme_text,0,20,1,1);
|
|
ftextout("NUR FÜR ENTWICKLUNGSFAHRZEUGE!",2,27,0,1);
|
|
|
|
if(ews_para == 1) {
|
|
INPAapiJob(sgbd,"STATUS_EWS","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STATUS_EWS",s1); stop(); }
|
|
INPAapiResultText(lock_status_wert_string,"STAT_EWS4_CLIENT_SK_LOCKED",1,"");
|
|
stringtoint(lock_status_wert_string,i);
|
|
if(i == 1) {
|
|
textout(blank, zeile, 5);
|
|
textout(blank, zeile + 2, 5);
|
|
textout(blank, zeile + 4, 5);
|
|
textout(blank, zeile + 6, 5);
|
|
textout(blank, zeile + 8, 5);
|
|
textout("DME-Status:", zeile, 5);
|
|
textout("DME " + dme_text + "bereits abgeglichen!" , zeile, 25);
|
|
stop();
|
|
}
|
|
else {
|
|
textout(blank, zeile + 4, 5);
|
|
textout(blank, zeile + 6, 5);
|
|
textout(blank, zeile + 8, 5);
|
|
INPAapiJob(sgbd,"STEUERN_EWS4_SK","WRITE_CLIENT_SK"+";"+"0x63,0x47,0x15,0xA9,0x3B,0xE0,0x2A,0x74,0xFD,0x74,0x0E,0xDA,0xA1,0x9A,0x45,0x31","");
|
|
|
|
// Gegenlesen des Keys
|
|
textout("DME-Status:", zeile, 5);
|
|
textout("Entwickluns-Schlüssel von Client auslesen", zeile, 25); zeile = zeile + 2;
|
|
INPAapiJob(sgbd,"STATUS_EWS4_SK","","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
INPAapiResultBinary("STAT_EWS4_CLIENT_SK",1);
|
|
GetBinaryDataString(strData, intDataLen);
|
|
|
|
if (intDataLen!=32)
|
|
{
|
|
messagebox("EKey schreiben nicht möglich","Der Schlüssel hat nicht die erforderliche Länge");
|
|
}
|
|
else
|
|
{
|
|
textout("Entwickluns-Schlüssel von Client vergleichen", zeile, 25); zeile = zeile + 2;
|
|
strCmp = EKey;
|
|
instr(i, 0, strCmp, "0x"); // 0x entfernen
|
|
while (i>=0)
|
|
{
|
|
midstr(strTmp, strCmp,0,i);
|
|
midstr(strTmp2,strCmp,i+2,99);
|
|
strcat(strCmp, strTmp, strTmp2);
|
|
instr(i, 0, strCmp, "0x");
|
|
}
|
|
instr(i, 0, strCmp, ","); // Komma entfernen
|
|
while (i>=0)
|
|
{
|
|
midstr(strTmp, strCmp,0,i);
|
|
midstr(strTmp2,strCmp,i+1,99);
|
|
strcat(strCmp, strTmp, strTmp2);
|
|
instr(i, 0, strCmp, ",");
|
|
}
|
|
instr(i, 0, strCmp, " "); // Blank entfernen
|
|
while (i>=0)
|
|
{
|
|
midstr(strTmp, strCmp,0,i);
|
|
midstr(strTmp2,strCmp,i+1,99);
|
|
strcat(strCmp, strTmp, strTmp2);
|
|
instr(i, 0, strCmp, " ");
|
|
}
|
|
|
|
instr(i,0,strData,strCmp); // hier werden die beiden Strings verglichen
|
|
|
|
if (i!=0)
|
|
{
|
|
messagebox("EKey schreiben nicht möglich","Der zurückgelesene Schlüssel ist ungleich");
|
|
}
|
|
else
|
|
{
|
|
// Locken des Client
|
|
textout("DME " + dme_text + " locken", zeile, 25); zeile = zeile + 2;
|
|
INPAapiJob(sgbd,"STEUERN_EWS4_SK","LOCK_CLIENT_SK","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
delay(1000);
|
|
|
|
while (i != 1)
|
|
{
|
|
textout("Aktueller Lockzustand:", zeile, 5);
|
|
INPAapiJob(sgbd,"STATUS_EWS","","");
|
|
INPAapiResultText(lock_status_wert_string_alt,"STAT_EWS4_CLIENT_SK_LOCKED",1,"");
|
|
stringtoint(lock_status_wert_string_alt,i);
|
|
textout(lock_status_wert_string_alt, zeile, 25);
|
|
textout(blank, zeile + 2, 5);
|
|
INPAapiResultText(lock_status_text_string_alt,"STAT_CLIENT_AUTHENTICATED_TXT", 1,"");
|
|
textout(lock_status_text_string_alt, zeile + 2, 5);
|
|
}
|
|
delay(1000);
|
|
INPAapiJob(sgbd,"STATUS_EWS","","");
|
|
textout(blank, zeile, 5);
|
|
textout("Aktueller Lockzustand:", zeile, 5);
|
|
INPAapiResultText(lock_status_wert_string,"STAT_EWS4_CLIENT_SK_LOCKED",1,"");
|
|
textout(lock_status_wert_string, zeile, 25);zeile = zeile + 2;
|
|
delay(2000);
|
|
INPAapiResultText(lock_status_text_string,"STAT_CLIENT_AUTHENTICATED_TXT", 1,"");
|
|
textout(lock_status_text_string, zeile, 5);zeile = zeile + 2;
|
|
delay(1000);
|
|
textout("DME-Status:", zeile, 5);
|
|
textout("DME " + dme_text + "abgeglichen!" , zeile, 25);
|
|
stop();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
if(ews_para == 0) {
|
|
textout("Aktueller Lockzustand:", zeile, 5);
|
|
INPAapiJob(sgbd,"STATUS_EWS","","");
|
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|
if (s1 != "OKAY") { messagebox("STATUS_EWS",s1); stop(); }
|
|
INPAapiResultText(lock_status_wert_string,"STAT_EWS4_CLIENT_SK_LOCKED",1,"");
|
|
textout(lock_status_wert_string, zeile, 25);zeile = zeile + 2;
|
|
INPAapiResultText(lock_status_text_string,"STAT_CLIENT_AUTHENTICATED_TXT", 1,"");
|
|
textout(lock_status_text_string, zeile, 5);zeile = zeile + 2;
|
|
textout(blank, zeile, 5);zeile = zeile + 2;
|
|
textout(blank, zeile, 5);zeile = zeile + 2;
|
|
textout(blank, zeile, 5);zeile = zeile + 2;
|
|
}
|
|
}
|
|
|
|
|
|
// ***********************************
|
|
// *** STATUS_EWS von DME und DME2 ***
|
|
// ***********************************
|
|
|
|
SCREEN s_status_ews_dme2() {
|
|
|
|
int zeile;
|
|
int spalte, spalte2;
|
|
int pos;
|
|
int api_state;
|
|
int zweimalWiederholt = 0;
|
|
int anzahlWiederholungen = 2;
|
|
string selected_sg;
|
|
string strResult;
|
|
string ewssgbd;
|
|
|
|
|
|
ewssgbd = sgbd ;
|
|
zeile = 1 ;
|
|
|
|
if (dme_text_r==dme_text_l) setmenutitle("STATUS_EWS von "+dme_text_r) ;
|
|
else setmenutitle("STATUS_EWS von "+dme_text_r + " und " + dme_text_l) ;
|
|
|
|
if (dme_l == dme_r) anzahlWiederholungen = 1;
|
|
|
|
while (zweimalWiederholt < anzahlWiederholungen) {
|
|
|
|
zweimalWiederholt = zweimalWiederholt + 1 ;
|
|
|
|
if (zweimalWiederholt == 1) {
|
|
// Zuweisung der anderen SGBD
|
|
ewssgbd = dme_r;
|
|
spalte = 0 ;
|
|
spalte2 = 15;
|
|
|
|
// hat keine Bedeutung mehr. Altlast aus dem Vorbildcode
|
|
// Dort wurde Parameter an SGBD-Job übergeben, jetzt wird SGBD umgeschalten
|
|
selected_sg = "MSD87 Master";
|
|
}
|
|
else if (zweimalWiederholt == 2) {
|
|
// Zuweisung der anderen SGBD
|
|
ewssgbd = dme_l ;
|
|
spalte = 30;
|
|
spalte2 = 45;
|
|
|
|
// hat keine Bedeutung mehr. Altlast aus dem Vorbildcode
|
|
selected_sg = "MSD87 Slave";
|
|
}
|
|
|
|
INP1apiJob(ewssgbd,"STATUS_EWS","","");
|
|
INP1apiState(api_state);
|
|
ftextout("Steuergeraet", zeile, spalte,0,1);
|
|
ftextout(selected_sg, zeile, spalte2,0,1);
|
|
zeile = zeile+2;
|
|
|
|
if (api_state == 1) {
|
|
|
|
INPAapiResultText(strResult,"STAT_EWS3_CAPABLE",1,"");
|
|
ftextout("EWS3 möglich", zeile, spalte,0,0);
|
|
ftextout(strResult, zeile, spalte2,0,0);
|
|
zeile = zeile + 1;
|
|
|
|
INPAapiResultText(strResult,"STAT_EWS4_CAPABLE",1,"");
|
|
ftextout("EWS4 möglich", zeile, spalte,0,0);
|
|
ftextout(strResult, zeile, spalte2,0,0);
|
|
zeile = zeile + 2;
|
|
|
|
INPAapiResultText(strResult,"STAT_EWS3_ACTIVE",1,"");
|
|
ftextout("EWS3 aktiv", zeile, spalte,0,0);
|
|
ftextout(strResult, zeile, spalte2,0,0);
|
|
zeile = zeile + 1;
|
|
|
|
INPAapiResultText(strResult,"STAT_EWS4_ACTIVE",1,"");
|
|
ftextout("EWS4 aktiv", zeile, spalte,0,0);
|
|
ftextout(strResult, zeile, spalte2,0,0);
|
|
zeile = zeile + 2;
|
|
|
|
INPAapiResultText(strResult,"STAT_EWS4_CLIENT_SK_LOCKED",1,"");
|
|
ftextout("Client locked", zeile, spalte,0,1);
|
|
ftextout(strResult, zeile, spalte2,0,1);
|
|
zeile = zeile + 2;
|
|
|
|
INPAapiResultText(strResult,"STAT_CLIENT_AUTHENTICATED",1,"");
|
|
ftextout("Freigabe Client", zeile, spalte,0,1);
|
|
ftextout(strResult, zeile, spalte2,0,1);
|
|
zeile = zeile + 2;
|
|
|
|
INPAapiResultText(strResult,"_STAT_FREE_SK0_TXT",1,"");
|
|
ftextout("Freie Plaetze SK0", zeile, spalte,0,0);
|
|
ftextout(strResult, zeile, spalte2,0,0);
|
|
zeile = zeile + 1;
|
|
|
|
INPAapiResultText(strResult,"_STAT_FREE_SK1_TXT",1,"");
|
|
ftextout("Freie Plaetze SK1", zeile, spalte,0,0);
|
|
ftextout(strResult, zeile, spalte2,0,0);
|
|
zeile = zeile + 1;
|
|
|
|
INPAapiResultText(strResult,"_STAT_VERSION_TXT",1,"");
|
|
ftextout("Version : ", zeile, spalte,0,0);
|
|
ftextout(" " + strResult, zeile+1, spalte,0,0);
|
|
zeile = zeile + 1;
|
|
}
|
|
|
|
delay(500); // Verzögerungszeit nur, damit Trace-Buffer sich nicht zu schnell füllt
|
|
zeile = 1;
|
|
}
|
|
zweimalWiederholt = 0 ;
|
|
}
|
|
|
|
|
|
//*****************************************************************
|
|
//**** SCREEN für EWS-Abgleich, Entwicklerschluessel_EWS *****
|
|
//*****************************************************************
|
|
|
|
SCREEN s_secretkey_dme2()
|
|
{
|
|
int zeile = 1 ;
|
|
int api_state;
|
|
int iDataClient;
|
|
int iDataServer;
|
|
int res, res2;
|
|
int ende = 0;
|
|
int intResult;
|
|
string sDataClient;
|
|
string sDataServer;
|
|
string sDiagSG;
|
|
string strOut;
|
|
string ewssgbd ;
|
|
string strInpClientSK ;
|
|
string Entwicklerschluessel_EWS = "0x63,0x47,0x15,0xA9,0x3B,0xE0,0x2A,0x74,0xFD,0x74,0x0E,0xDA,0xA1,0x9A,0x45,0x31";
|
|
|
|
// In der while-Schleife wird eingangs somit auf dme_l umgeschalten. Nach dem Locken der dme_r wird ein Reset ausgefuehrt, wobei nachtraeglich
|
|
// die Diagnosekommunikation abbrechen kann. Nach Locken der dme_l passiert das noch nicht, daher wird mit ihr begonnen.
|
|
ewssgbd = dme_r;
|
|
sDiagSG = dme_text_r;
|
|
|
|
if (dme_text_r==dme_text_l) strOut = "Entwicklungsschlüssel in " + dme_text_r + " schreiben" ;
|
|
else strOut = "Entwicklungsschlüssel in " + dme_text_r + " und " + dme_text_l + " schreiben" ;
|
|
|
|
setmenutitle(strOut);
|
|
textout(strOut,zeile,1);
|
|
|
|
inputtext(Entwicklerschluessel_EWS, strOut, "Bestätigen mit OK / Abbruch mit Abbruch");
|
|
getinputstate(intResult);
|
|
|
|
if (intResult == 0){
|
|
delay(100);
|
|
textout(strOut,zeile,1); zeile = zeile + 2;
|
|
|
|
while (ende==0) {
|
|
|
|
// Wenn 2 versch. DMEen beteiligt sind (12zyl.), dann laeuft Schleife 2x durch und SG wird gewechselt.
|
|
if (dme_r != dme_l) {
|
|
|
|
// Durchwechseln der SGBDen findet statt.
|
|
if (ewssgbd == dme_r) {
|
|
ewssgbd = dme_l ;
|
|
sDiagSG = dme_text_l;
|
|
}
|
|
else if (ewssgbd == dme_l) {
|
|
ewssgbd = dme_r ;
|
|
sDiagSG = dme_text_r;
|
|
}
|
|
}
|
|
// Wenn nur ein SG beteiligt ist, wird somit die Schleife nicht zweimal ausgefuehrt.
|
|
else ende = 1 ;
|
|
|
|
textout(sDiagSG+" Lock-Status lesen",zeile,1); zeile = zeile + 1;
|
|
INP1apiJob(ewssgbd,"STATUS_EWS","","");
|
|
INP1apiState(api_state);
|
|
|
|
if (api_state != 1) {
|
|
textout("ERROR "+sDiagSG+" Status kann nicht gelesen werden",zeile,1);
|
|
zeile = zeile + 2;
|
|
}
|
|
|
|
else {
|
|
intResult = 0; // damit bei unterbrochener Datenkommunikation nur einmal abgebrochen werden muß
|
|
INPAapiResultInt(intResult,"STAT_EWS4_CLIENT_SK_LOCKED",1);
|
|
|
|
if (intResult != 0) {
|
|
textout("ERROR "+sDiagSG+" Schlüssel schreiben nicht möglich, da bereits abgeglichen ist",zeile,1);
|
|
zeile = zeile + 2;
|
|
}
|
|
else
|
|
{
|
|
textout(sDiagSG+" Schreiben SecretKey Client",zeile,1);
|
|
zeile = zeile + 1;
|
|
INPAapiJob(ewssgbd, "STEUERN_EWS4_SK", "WRITE_CLIENT_SK;"+Entwicklerschluessel_EWS,"");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
textout(sDiagSG+" Schreiben SecretKey Server",zeile,1);
|
|
zeile = zeile + 1;
|
|
|
|
// Bei einzelnen SGs wird nur der Client-Schluessel, nicht der Server-Schluessel geschrieben.
|
|
if (dme_r != dme_l) {
|
|
INPAapiJob(ewssgbd, "STEUERN_EWS4_SK", "WRITE_SERVER_SK;"+Entwicklerschluessel_EWS,"");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
}
|
|
else ;
|
|
|
|
// Gegenlesen des Keys
|
|
textout(sDiagSG+" Auslesen SecretKey Client und Server",zeile,1);
|
|
zeile = zeile + 1;
|
|
INPAapiJob(ewssgbd,"STATUS_EWS4_SK","","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
|
|
INPAapiResultBinary("STAT_EWS4_CLIENT_SK",1);
|
|
GetBinaryDataString(sDataClient, iDataClient);
|
|
INPAapiResultBinary("STAT_EWS4_SERVER_SK",1);
|
|
GetBinaryDataString(sDataServer, iDataServer);
|
|
|
|
if ((iDataClient!=32) || (iDataServer!=32)) {
|
|
textout("ERROR "+sDiagSG+" Schlüssel schreiben nicht möglich, der Schlüssel hat nicht die erforderliche Länge",zeile,1);
|
|
zeile = zeile + 2;
|
|
}
|
|
|
|
else {
|
|
textout(sDiagSG+" Schlüssel von Client vergleichen",zeile,1); zeile = zeile + 1;
|
|
CompareInputWithSG(Entwicklerschluessel_EWS, sDataClient, res);
|
|
|
|
if (res!=0) {
|
|
textout("ERROR "+sDiagSG+" Schlüssel schreiben nicht möglich, der zurückgelesene Schlüssel ist ungleich",zeile,1);
|
|
zeile = zeile + 2;
|
|
}
|
|
textout(sDiagSG+" Schlüssel von Server vergleichen",zeile,1); zeile = zeile + 1;
|
|
CompareInputWithSG(Entwicklerschluessel_EWS, sDataServer, res2);
|
|
|
|
if ((res2!=0) && (dme_l != dme_r)) {
|
|
textout("ERROR "+sDiagSG+" Schlüssel schreiben nicht möglich, der zurückgelesene Schlüssel ist ungleich",zeile,1);
|
|
zeile = zeile + 2;
|
|
}
|
|
|
|
// Fuer 12-zyl.-Motoren.
|
|
if ( ((res==0) && (res2==0)) && (dme_r != dme_l) ) {
|
|
// Locken
|
|
textout(sDiagSG+" Locken",zeile,1); zeile = zeile + 2;
|
|
INPAapiJob(ewssgbd,"STEUERN_EWS4_SK","LOCK_CLIENT_SK;","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
strInpClientSK = Entwicklerschluessel_EWS;
|
|
}
|
|
|
|
// Fuer 6/8-zyl.-Motoren.
|
|
if ( (res==0) && (dme_r == dme_l) ) {
|
|
// Locken
|
|
textout(sDiagSG+" Locken",zeile,1); zeile = zeile + 2;
|
|
INPAapiJob(ewssgbd,"STEUERN_EWS4_SK","LOCK_CLIENT_SK;","");
|
|
INPAapiCheckJobStatus("OKAY");
|
|
strInpClientSK = Entwicklerschluessel_EWS;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
if (sDiagSG == dme_text_l) {
|
|
sDiagSG = dme_text_r ;
|
|
delay(500); // delay ueberbrueckt Instabilitaet des Flexray durch Reset der ersten DME.
|
|
}
|
|
|
|
else ende = 1;
|
|
}
|
|
}
|
|
stop();
|
|
setscreen(s_status_ews_dme2,TRUE);
|
|
}
|
|
|
|
|
|
//*****************************************************************
|
|
//**** SCREEN für Fehlerbehandlung ***************************
|
|
//*****************************************************************
|
|
SCREEN s_fehlerbehandlung()
|
|
{
|
|
|
|
userboxclose(0);
|
|
viewclose();
|
|
fehlerbehandlung(stati,fehlercode);
|
|
stop();
|
|
|
|
}
|
|
|
|
// **************************
|
|
// *** inpainit, inpaexit ***
|
|
// **************************
|
|
|
|
inpainit() {
|
|
string s1;
|
|
|
|
INPAapiInit();
|
|
|
|
settitle(titel+" Version "+version);
|
|
aktivierungsbedingung(ab_0000,ab_0001,ab_0002,ab_0004,ab_0008,ab_0010,ab_0020,ab_0040,ab_0080,ab_0200,ab_0400,ab_0800,ab_1000,ab_2000);
|
|
zyklusbeschreibung(st01,st02,st03,st04,st05,x001,x002,x003,x004,x005,x101,x102,x103,x104,x105,t01,t02,t03,t04,t05,tv);
|
|
/* Über Identifikation wird der Programmstand abgefragt */
|
|
|
|
// Bei 6zyl.-Motoren mit nur einem Steuergeraet sind fuer dme_l und dme_r etc. jew. der gleiche Eintrag einzufuegen.
|
|
// Bei 12zyl.-Motoren entsprechend die Daten fuer das linke und rechte SG.
|
|
// Durch gleiche oder unterschiedliche Eintragungen bietet das Skript die Diagnosedienste fuer
|
|
// ein oder zwei SGs an.
|
|
|
|
titel = "MSD85L6";
|
|
sgbd = "MSD85L6" ; // Steuergerät
|
|
dme_r = "MSD85L6" ; // rechtes Master-SG
|
|
dme_l = "MSD85L6" ; // linkes Slave-SG
|
|
currentSGBD = sgbd;
|
|
zylinderZahl = 8;
|
|
|
|
dme_text_r = "MSD85L6" ; // Steuergerätname fuer lesbare Ausgabe
|
|
dme_text_l = "MSD85L6" ; // Steuergerätname fuer lesbare Ausgabe
|
|
dme_text = "MSD85L6" ; // aktuell benutzter Steuergerätname
|
|
SG_Verbund_text = "MSD85L6 8zyl." ;
|
|
|
|
// Backslash am Ende des Strings geht nicht, daher + Leerzeichen, was über midstr wieder entfernt wird
|
|
txtPfad_r = "c:\daten\MSD85L6\ ";
|
|
midstr (txtPfad_r, txtPfad_r, 0, 18) ;
|
|
|
|
txtPfad_l = "c:\daten\MSD85L6\ ";
|
|
midstr (txtPfad_l, txtPfad_l, 0, 18) ;
|
|
|
|
txtPfad = txtPfad_r ;
|
|
|
|
sg_adr=0x12;
|
|
sg_adr_r = 0x12; // Master-Adresse
|
|
sg_adr_l = 0x12; // Slave-Adresse
|
|
|
|
if (dme_r == dme_l) {
|
|
setscreen(s_main, FALSE) ;
|
|
setmenu(m_main) ;
|
|
}
|
|
else if (dme_r != dme_l) {
|
|
setscreen(s_sgbd_auswahl, FALSE) ;
|
|
setmenu(m_sgbd_auswahl) ;
|
|
}
|
|
|
|
stop();
|
|
}
|
|
|
|
inpaexit() {
|
|
|
|
INPAapiEnd();
|
|
}
|