Files
CPXV2/CPXV2 PTS/References/GaudiCfg/help/module/l_kam_konfig.html
2025-03-20 08:38:05 +09:00

210 lines
12 KiB
HTML

<HTML>
<HEAD>
<TITLE>L_KAM_KONFIG</TITLE>
<META NAME="Generator" CONTENT="KDOC ">
</HEAD>
<BODY bgcolor="#ffffff" text="#000000" link="#0000ff" vlink="#000099" alink= "#ffffff">
<table BORDER=0 COLS=1 WIDTH="100%" BGCOLOR="#FFFFCC" NOSAVE >
<tr ALIGN=CENTER VALIGN=CENTER NOSAVE>
<td NOSAVE><font face="Arial,Helvetica"><font size=+2></font></font>
<br><font face="Arial,Helvetica"><font size=+2>CCS Modul &nbsp;&nbsp;<b>L_KAM_KONFIG</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
Funktionsbeschreibung:
Festlegung der Grundkonfiguration fuer das KAM
Dieses Modul stellt - ebenso wie das 'F_ANSTEUER'-Modul -
die Schnittstelle vom GAUDI zum nachgeordneten Hardware-
Treiber dar.
Der Hardwaretreiber fuer das KAM kann sowohl durch aus-
schliesslichen Aufruf des 'F_ANSTEUER'-Moduls (mit den
entsprechenden, in der Datei 'hw_units_....cnf',
angegebenen Ansteuerunits) bedient werden, als auch
zusaetzlich mit diesem Modul.
Dieses Modul wird nur fuer spezielle Features , die in der
PAV keine Erwaehnung finden (EIN-/ZWEI-Konstanter-Betrieb,
Kaskadierung) benoetigt.
Seine Verwendung ist auf solche PAM's beschraenkt, die mit
neuer Hardware (6278) ausgestattet sind!
Die 6278 verfuegt ueber insgesamt 6 Ausgangskanaele:
ULAST, UBATT 1 - 5
Mit dem 'F_ANSTEUER'-Modul koennen diese gesteuert werden,
benutzt man die Ansteuerunits:
U_KON_ULx,
U_KON_UAx, U_KON_UBx, U_KON_UCx, U_KON_UDx, U_KON_UEx
(mit x = 2, 4)
Vorgehensweise fuer die Nutzung des F_ANSTEUER-Moduls:
- Auswahl der Ansteuer-Unit;
- Vergabe eines Ansteuernamens;
- Vorbelegung der Parameter ANSTEUER_PIN und ANSTEUER_BEZUG
mit den im Adapterfile definierten Bezeichnern;
- Vorbelegung des Parameters ANSTEUER_ART auf ANSTEUER_PAR
- zum Schalten der UBatt-/ULast-Zweige ist im Ansteuerblock
nur noch der Parameter fuer den ANSTEUER_WERT zu belegen,
z.B. mit dem Namen UB (fuer U-Batterie);
zum einfachen Abschalten wird ANSTEUER_WERT mit dem
Minus-Zeichen ('-') belegt;
Zuordnung der Unit-Namen zu den Ausgangs-Pin's:
U_KON_UAx - d18/d24
U_KON_UBx - d28/d30 kompatibel zu KON_UB_x (in SaW)
U_KON_UCx - b18/b24
U_KON_UDx - z28/z30 kompatibel zu KON_UD_x (in SaW)
U_KON_UEx - z18/z24
U_KON_ULx - dbz16/dbz32 kompatibel zu KON_UL_x (in SaW)
Die Zuordnung der Units U_KON_UBx, U_KON_UDx, U_KON_ULx
ist derart gewaehlt, dass sie kompatibel zu den bisher
fuer das aeltere KAM (6267) festgelegten Units sind
Besonderheit:
Der fuenfte UBATT-Zweig (U_KON_UEx) kann verpolt (durch
Vertauschen von PIN und BEZUG im 'F_ANSTEUER'-Modul)
angeschaltet werden. Dann darf jedoch kein weiterer
UBATT-Zweig angeschaltet sein!
Dieses Modul wird mit der Ansteuerunit U_KON_KONFIGx
kontrolliert (vgl. L_KAM_ZUSATZ), welche nicht im Modul
F_ANSTEUER benutzt werden darf!
Beschreibung der Modulparameter:</pre><b><a name="param1">1</a> PRUEFSCHRITT</b><pre>
GAUDI Pruefschritt
------------------------------</pre><b><a name="param2">2</a> POSITION</b><pre>
PAV- Position
------------------------------</pre><b><a name="param3">3</a> ANSTEUER_UNIT</b><pre>
aktueller Unitname (siehe 'hw_units....cnf')
z.Zt. gemaess Uebereinkunft RtW/SaW: U_KON_KONFIG2
U_KON_KONFIG4
------------------------------</pre><b><a name="param4">4</a> KON_A</b><pre>
A-Eingang des KAM's
hier wird angegeben, welcher der beiden Ausgaenge von
dem hieran angeschlossenen Konstanter versorgt werden
soll;
Prmtr.: UBATT_ULAST (EIN-Konstanter-Betrieb)
ULAST (nur ULAST-Anschaltung oder bei
ZWEI-Konstanter-Betrieb)
UBATT (nur UBATT-Anschaltung)
- (entspricht UBATT_ULAST = Default)
An diesen Eingang wird in der Regel der erste Konstanter
(siehe Datei "hw_units_....cnf") verdrahtet.
------------------------------</pre><b><a name="param5">5</a> KON_B</b><pre>
B-Eingang des KAM's
hier wird angegeben, welcher der beiden Ausgaenge von
dem hieran angeschlossenen Konstanter versorgt werden
soll;
Prmtr.: UBATT_ULAST (EIN-Konstanter-Betrieb)
ULAST (nur ULAST-Anschaltung bei
ausschliesslicher Versorgung der
ULAST)
UBATT (UBATT-Anschaltung bei ZWEI-
Konstanter-Betrieb)
- (keine Anschaltung = Default)
An diesen Eingang wird in der Regel der zweite
Konstanter (siehe Datei "hw_units_....cnf") verdrahtet.
Wichtig:
Bei ZWEI-Konstanter-Betrieb muss KON_A = ULAST
und KON_B = UBATT sein!
Das bedeutet: der erste Konstanter versorgt nur ULAST
der zweite nur UBATT.
------------------------------</pre><b><a name="param6">6</a> KON_KASK</b><pre>
Kaskadierung der beiden angeschlossen Konstanter (fuer
hoehere Ausgangsspannungen);
Prmtr.: NEIN (keine Kaskadierung)
JA (Kaskadierung schalten, naeheres siehe
HW-Doku)
- (wie NEIN = Default)
Wichtig:
Kaskadierung ist nur mit zwei angeschlossenen
Konstantern sinnvoll! Entsprechend muessen die
Parameter fuer ZWEI-Konstanter-Betrieb gesetzt sein.
Input:
Output:
none
----------------------------------------------------------
Return Value:
= 0: Successful completion
sonst Fehler
----------------------------------------------------------
Beispiel (optional):
----------------------------------------------------------
&lt;\userdoc&gt;
C4
int l_kam_konfig( shm_stringpointer *zeilen_wert
,long index_on_expPrfLst
,long anzahl_parameter )
{
define lokale Variablen
int ret_val = 0;
int unit_index = -1;
int i;
int schritt;
Modul-Parameter fuer KAM_KONFIG umladen
unit_index = suche_unit_index( *zeilen_wert-&gt;ptr[index_on_expPrfLst + ANST_UNIT] );
if ( unit_index &gt;= 0 ) {
i = get_platzmemory( STRING_VERWALTUNG, unit_index, ANZAHL_PARAMETER );
Ssp_pp_verwaltung-&gt;unit_ablage[unit_index].put_unit_aenderung(1);
Ssp_pp_verwaltung-&gt;string_f[i + 0] = *zeilen_wert-&gt;ptr[index_on_expPrfLst + KON_A];
Ssp_pp_verwaltung-&gt;string_f[i + 1] = *zeilen_wert-&gt;ptr[index_on_expPrfLst + KON_B];
Ssp_pp_verwaltung-&gt;string_f[i + 2] = *zeilen_wert-&gt;ptr[index_on_expPrfLst + KON_KASK];
debug_message( __FILE__, __LINE__, DEB_GAUDI
,"\nkam_konfig Unit-Index : %d"
"\nkam_konfig Anzahl Parameter : %d"
"\nkam_konfig Pruefschritt : %s"
"\nkam_konfig Pruefposition : %s"
"\nkam_konfig Ansteuer Unit : %s"
"\nkam_konfig KON_A : %s"
"\nkam_konfig KON_B : %s"
"\nkam_konfig KON_KASK : %s\n"
,unit_index
,anzahl_parameter
,(const char*) *zeilen_wert-&gt;ptr[index_on_expPrfLst + PRUEFSCHRITT]
,(const char*) *zeilen_wert-&gt;ptr[index_on_expPrfLst + PRUEFPOSITION]
,(const char*) *zeilen_wert-&gt;ptr[index_on_expPrfLst + ANST_UNIT]
,(const char*) *zeilen_wert-&gt;ptr[index_on_expPrfLst + KON_A]
,(const char*) *zeilen_wert-&gt;ptr[index_on_expPrfLst + KON_B]
,(const char*) *zeilen_wert-&gt;ptr[index_on_expPrfLst + KON_KASK] );
}
else {
ret_val = -1;
}
Pruefprogramm Stepbetrieb
schritt = schrittbetrieb( zeilen_wert, index_on_expPrfLst );
if ( schritt != 1 ) {
ret_val = 0;
}
return( ret_val );
}
</PRE>
</BODY>
</HTML>