[성현모] TRA V2 삭제

This commit is contained in:
SHM
2025-03-20 08:38:05 +09:00
parent 773aa49a27
commit 5beffcfb23
437 changed files with 809105 additions and 172632 deletions

View File

@ -0,0 +1,432 @@
<HTML>
<HEAD>
<TITLE>A_DATUM</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>A_DATUM</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Header: /rweglobal/cvs/testsystem/ccs/6_testmodul_pool/testlisten_anw_module/src/a_datum.C,v 1.91 2006/01/18 09:04:35 nit3an Exp $
-------------------------------------------------------------------------
Kurzbeschreibung: gibt unterschiedliche Daten in Abhaengigkeit vom Modus
aus, z.B. ECUID, NUMBER oder das Datum in verschiedenen Formaten
-------------------------------------------------------------------------
Projekt: Common Core System - BOSCH
Sourcefile: a_datum.C
Autor: AnW/TEF7 Thomas Nickel, Ludwig Schroll
Zielsystem: HP9000 743rt (HP-UX 10.20; HP-RT 3.01) / Linux
Sprache: Ansi C; C++
-------------------------------------------------------------------------
Aufruf: &lt;GFMT KS=on TAB=8 LF=on&gt;
int a_datum (shm_stringpointer *zeilen_wert,// &lt;I&gt; Zeiger auf Werte
long index, // &lt;I&gt; Index-Nummer
long anzahl) // &lt;I&gt; Anzahl der Werte
int a_datum (STRING PRUEFSCHRITT
STRING POSITION
STRING ADATUM_MODUS
STRING INPUT_STRING
STRING RESULTSTRING1
STRING RESULTSTRING2
STRING FEHLERFLAG)
-------------------------------------------------------------------------
Returnparameter: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
Funktionsbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
Das Modul verarbeitet eine Vielfalt von Daten. In Abhaengigkeit vom Modus
wird ein Eingabestring ausgewertet. Das Ergebnis wird in zwei
Ausgabestrings geschrieben, z.B. ECUID, NUMBER oder das Datum in
verschiedenen Formaten (genaueres s. unter ADATUM_MODUS).
Evaluation of calendar dates, numbering of weeks, (clock) time
according to DIN1355.
Beschreibung der Moduluebergabeparameter:</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> ADATUM_MODUS</b><pre> Die folgenden Modi koennen eingegeben werden:
ABS8_II_CODE : Input : EEPROM ID 12 characters, e.g.: FA8TE232002C
char 1- 4: TTNR
char 5- 6: julian day (36 bit coded)
number of the day (1...366) + (0 or 500),
+ 500: if the decade is even (2000-2009)
+ 0: if the decade is odd (2010-2019)
char 7 : year (last digit)
e.g.: 2003 --&gt; 3
char 8 : plant identification number
plant 1: Anderson, 2: Ansbach, 3: Tomioka,
4: Reutlingen (M-Bau)
char 9-11: serial number and line number (36 bit coded)
serial number: possible values 0 ... 9*36*36-1=11663
allowed values 1 ... 2**13-1=8191 (13 bits)
line number: 3 high bits left of the serial number
char 12 : line number and shift number
line shift letter
1 1 A
1 2 B
1 3 C
2 1 D
2 2 E
2 3 F
3 1 G
3 2 H
3 3 I
4 1 J
4 2 K
4 3 L
5 1 M
5 2 N
5 3 O
6 1 P
6 2 Q
6 3 R
Output: RETURN1 : 10 characters, wwyyXXXXXX, e.g.: 0203222002
from characters 5-7 of the input the week number and the
year are evaluated and output decimal digits in the form
wwyy (2 digits each for week and year)
the characters 8-12 of the input are evaluated to a string
of the bit form: |ppplllss|wwwsssss|ssssssss|
XX XX XX
ppp: plant, 3 bit, 000b(plant 1) ... 111b(plant 8)
lll: line, 3 bit, 000b(line 1) ... 111b(line 8)
ss: shift, 2 bit, 00b(shift 1) ... 11b(shift 4)
www: day of week, 3 bit, 001b(monday) ... 111b(sunday)
sssssssssssss: free counter, serial number, 13 bit, 0 ... 8191
these 3 bytes are converted to 6 hexadecimal digits XXXXXX
and appended to week number and year.
wwyyXXXXXX
e.g.: E23: E2 --&gt; 506 &gt; 500 --&gt; even decade (2000-2009)
and 3rd digit = 3 --&gt; year 2003 --&gt; 03
506-500=6 --&gt; 06.01.03 --&gt; week number 02
input char 8: plant 2 --&gt; 001b
input char 9-11: 002 --&gt; serial number 2 --&gt; 0000000000010b
input char 12: C --&gt; line 1(000b), shift 3(10b)
06.01.2003 --&gt; weekday Monday --&gt; 001b
--&gt; |001|000|10|001|0000000000010|
--&gt; |0010|0010|0010|0000|0000|0010|
--&gt; 2 2 2 0 0 2
when you prepend week number and year you get the
result string: 0203222002
RETURN2 : Date in Format JJMMTT extracted from the Input String,
e.g.: 030106
Error RETURN1 : "ERROR"
Error RETURN2 : "ERROR"
ABS8_VW_CODE : Input : EEPROM ID 12 characters, e.g.: FA8TG6226BJC
for description look at ABS8_II_CODE above
Output: RETURN1 : 16 characters 3n3n2E3n3n2E3n3n
the characters 5-7 of the Input are evaluated to a date
in the form dd.mm.yy
(dd=day of the month 1...31, mm=month 1...12, yy=year)
where every character (also the points: 2E) are converted
to the corresponding 2-digit hexadecimal ASCCI code:
3n3n2E3n3n2E3n3n
(n=decimal digit of the date ddmmyy)
e.g.: G62: G6 --&gt; 582 &gt; 500 --&gt; even decade (2000-2009)
and 3rd digit = 2 --&gt; year 2002 (no leap year)
582-500=82 --&gt; 23.03.02 --&gt; convert to hexadecimal
ASCII code: 32332E30332E3032
RETURN2 : 12 characters mnmnmnmnmnmn
the characters 8-12 of the Input are evaluated to a string
of the bit form: |ppplllss|wwwsssss|ssssssss|
XX XX XX
ppp: plant, 3 bit, 000b(plant 1) ... 111b(plant 8)
lll: line, 3 bit, 000b(line 1) ... 111b(line 8)
ss: shift, 2 bit, 00b(shift 1) ... 11b(shift 4)
www: day of week, 3 bit, 001b(monday) ... 111b(sunday)
sssssssssssss: free counter, serial number, 13 bit, 0 ... 8191
these 3 bytes are converted to a hexadecimal number XXXXXX
finally every character is listed as 2-digit hexadecimal ASCII code:
mnmnmnmnmnmn (mn: ASCII code of X)
e.g.: input char 8: plant 2 --&gt; 001b
input char 9-11: 6BJ --&gt; serial number 8191 --&gt; 1111111111111b
(this is the maximum value allowed)
input char 12: C --&gt; line 1(000b), shift 3(10b)
23.03.2002 --&gt; weekday Saturday --&gt; 110b
--&gt; |001|000|10|110|1111111111111|
--&gt; |0010|0010|1101|1111|1111|1111|
--&gt; 2 2 D F F F
--&gt; 32 32 44 46 46 46
--&gt; 323244464646
Error RETURN1 : "ERROR"
Error RETURN2 : "ERROR"
AUDI_DATE : fuer Airbag (Faulhammer)
Input : --
Output: RETURN1 : current date, e.g. "1999.10.30" 30.10.1999
RETURN2 : current calendar week year and number, e.g.
"1999/43" KW43 in 1999
Error RETURN1 : "1970.01.01"
Error RETURN2 : "1970/01"
AUDI_NR : Input : Bosch-Code
Output: RETURN1 : Audi-Code mit 8 Stellen
RETURN2 : unveraendert
BIN2HEX : Input : String of characters 0, 1 or X (maximum 32 characters)
Output: RETURN1 : after replacing all "X" characters by "1"
the resulting string is transformed to a hexadecimal
number
RETURN2 : unchanged
Error RETURN1 : "ERROR"
CCS_VERSION : number of CCS version
Input : -
Output: RETURN1 : CCS version, example: 3.5
Output: RETURN2 : unchanged
CHECKSUMM : calculates a checksum of an input string with formula:
CS = ( n * FF - (X1 + X2 + X3 + ... + Xn) ) modulo (FF + 1)
where n is the number of pairs of hexadecimal digits
(example for a pair of hexadecimal digits: 04, maximum: FF)
and X1, X2, ..., Xn are pairs of hexadecimal digits
Input : a string consisting of pairs of hexadecimal digits,
the number of digits must be even!
Output: RETURN1 : calculated checksum as a string consisting
of exactly two hexadecimal digits, example: A4
Output: RETURN2 : unchanged
Error RETURN1 : "ERROR"
DATE_TO_KW : fuer Hybrid (Wenzel Thomas)
Input : "19991123" 23 November 1999
Output: calendar week number
RETURN1 : "47" 325. julian. Tag in 1999
RETURN2 : unchanged
Error RETURN1 : "ERROR"
DCBCDE : Daimler-Chrysler (DC) barcode
converts date, rearranges tester ID and DC number part
Input: a string with 14 characters, e.g. 01A7FC04010103
char 1 - 4: hexadecimal tester ID, e.g. 01A7
char 5 - 8: hexadecimal date in the format:
Bits 0 - 6: year, values 0 - 63 (2000 - 2063)
Bits 7 - 10: month, values 1 - 12
Bits 11 - 15: day, values 1 - 31
e.g.: FC04 =
1 1 1 1 1 1 0 0 0 0 0 0 0 1 0 0
d d d d d m m m m y y y y y y y
31 8 4
char 9 -14: string with a DC number part (010103)
Output: RETURN1: string in the format nnnnnnyymmdd0000XXXX,
e.g.: 010103040831000001A7
nnnnnn = DC number part (char 9-14 of the input string),
e.g.: 010103
yymmdd = decimal date string (yy=the last 2 digits of the
year, mm=month, dd=day), e.g.: 040831
XXXX: hexadecimal tester ID (char 1-4 of the input string),
e.g. 01A7
RETURN2 : unchanged
Error RETURN1 : "ERROR" (invalid date or length of Input &lt; 14)
DOK8 : (HP1000 Eingabe)
NISSAN_DATE : fuer Airbag (Tremml)
Input : YE2F0945170001 Monat 10=X Monat 11=Y Monat 12=Z
Output: date evaluated from characters 6-10 of input
RETURN1 : date, "19940517"
RETURN2 : unchanged
Error RETURN1 : "19700101"
ECUID : Input : --
Output: RETURN1 : ECUID aus shm
RETURN2 : unveraendert
ECUREV_DATE : Input : shm Wert job.ecurev
Output: RETURN1 : ECUREV aus shm
RETURN2 : unveraendert
FD_TO_DATE : Input : "964" BOSCH FD (3 stellig)
Output: RETURN1 : "1999.04" April 1999
RETURN2 : unchanged
Error RETURN1 : "1970.01"
GET_ERROR_NR : die Anzahl der aufgetretenen Fehler waehrend eines
Prueflaufs bestimmen.
Input : -
Output: RETURN1 : Fehleranzahl
Output: RETURN2 : unveraendert
Error RETURN1 : "error"
GET_SPS_DATA : das von der SPS versandte Datum (Nullpunktabgleich)
auslesen.
Input : -
Output: RETURN1 : SPS_VALUE
Output: RETURN2 : unveraendert
Error RETURN1 : "NONE"
HEX2DEZ : Input : ein String mit einer hexadezimalen Nummer
Output: RETURN1 : ein String mit einer dezimalen Nummer
Output: RETURN2 : unveraendert
HY_ADD_CHECKSUM : Input : "9904160022"
Output: RETURN1 : input + checksum(2 hexadecimal characters),
e.g.: "990416002241"
RETURN2 : checksum, e.g.: "41"
HY_BC16_TO_DATE : Input : "3051979641640018" (16 stellig) Ga7_kap1.doc
Output: date from input
RETURN1 : "19990416" 16. April 1999
RETURN2 : unchanged
Error RETURN1 : "19700101"
IS_ERROR : Input : --
Output: RETURN1 : "GOOD" oder "BAD" des Tests in SECT
Output: RETURN2 : unveraendert
LINE_NR : get line number from shared memory
Input : --
Output: RETURN1 : line number
Output: RETURN2 : unchanged
LISTSTATE : get state of the testlist, possible states are
EMPTY, FIRSTRUN, MULTI, NORMAL, PREINT, SINGLE
Input : --
Output: RETURN1 : liststate
Output: RETURN2 : unchanged
MD_MODE : get statistics mode which can be
ALL (statistics on),
F_ONLY (only f-lists) or
OFF (no statistics)
Input : --
Output: RETURN1 : statistics mode
Output: RETURN2 : unchanged
MG : Test-BSD-Anfrage an Host
Input : --
Output: RETURN1 : answer from server
Error RETURN1 : error message from server
Aufbau des Anfragepuffers fuer Protokollierung:
===============================================
(LL 2 byte Pufferlaenge in byte )
K1 2 byte 1. Anfragekennung : MG,DO,SK
K2 2 byte 2. Anfragekennung
K3 2 byte 3. Anfragekennung
K4 2 byte 4. Anfragekennung
K5 2 byte 5. Anfragekennung
TTTTTTTTTT 10 byte Erzeugnisnummer
VV 2 byte Variante
PP 2 byte Testart
KKKKKKKKKKKKKKKK 16 byte Testername
--------------------------------------------------------
Summe 40 byte (42)
Antworten:
==========
II 2 byte Laenge
JJ 2 byte JJ fuer Ja
NN 2 byte NN fuer Nein
Antwort fuer MG : Anfragepuffer + Antw
=====================================
IINN nicht geoeffnet
IIJJTTTTTTTTTT Master vom Typ TTTTTTTTTT geoeffnet
IINNTTTTTTTTTT Master vom Typ TTTTTTTTTT nicht geoeffnet
Antwort fuer DO : Anfragepuffer + Antw
=====================================
IIDDDDDDDDDDDDDDDD Laenge und Dokunummer
Antwort fuer SK : Anfragepuffer + Antw
=====================================
IISSSSSSSSSSSS Laenge und Seed&amp;Key Nummer
Antwort bei Error : Anfragepuffer + Antw
=======================================
IIERROREEEEEEEE Laenge, ERROR und Fehlertext
NUMBER : Input : --
Output: RETURN1 : unveraendert
RETURN2 : NUMBER aus shm
NUTZEN_NR : Einen String mit einer Hexadezimalzahl (max. 20 Bit)
in zwei Dezimalzahlen zu jeweils 10 Bit aufteilen
Input : ein String mit einer hexadezimalen Zahl (&lt;=20 Bit)
Output: RETURN1 : ein String mit einer dezimalen Zahl,
die oberen 10 Bit
Output: RETURN2 : ein String mit einer dezimalen Zahl,
die unteren 10 Bit
PRUEF_TYP : den Prueftyp des PAMs bestimmen
Input : --
Output: RETURN1 : der Prueftyp des PAMs (z. B. hytt)
Output: RETURN2 : unveraendert
PRUEF_VAR : variant number of testlist used
Input : -
Output: RETURN1 : testlist variant, example: 01
Output: RETURN2 : unchanged
SECTION_NR : Input : --
Output: RETURN1 : section_nr als String
Output: RETURN2 : unveraendert
SGCODE : Test TE_INFO besetzen
Input : --
Output: RETURN1 + RETURN2 --&gt; TE_INFO Telegramm
SGZAHL : Test RETURN2 ausschliesslich mit Zahl besetzen
Input : --
Output: RETURN1 + RETURN2 --&gt; TE_INFO Telegramm
STATION_DATA : Fertigungsrelevante Daten werden zu 32 bit zusammen-
gefasst, um ins Steuergeraet programmiert werden zu
koennen.
Input : PGH, SKM, MOB (Mobile Station)
Output: RETURN1 : 32 bit Daten
Bit 0 - 6: Jahre: 0 - 63 (2000 - 2063)
Bit 7 - 10: Monate: 1 - 12
Bit 11 - 15: Tage: 1 - 31
Bit 16 - 27: IP-Adr: letzte Ziffer der 3ten Zahl
4. Zahl
Bit 28 - 31: 0000: PGH
0001: SKM
0010: Mobile Station
RETURN2 : unchanged
Error RETURN1 : "ERROR"
STATION_NR : get station number from shared memory
Input : --
Output: RETURN1 : station number
Output: RETURN2 : unchanged
STRLEN : Input : ein String
Output: RETURN1 : hexadecimal string length
Output: RETURN2 : unveraendert
WAIT_MASTER : wenn Master, dann warte ... ms
YEAR_JDAY_TO_DATE : fuer Airbag (Faulhammer)
Input : year (maximal with 2 digits) and julian day, e.g.:
"99;303" 303. julianischer Tag in 1999
Output: RETURN1 : date, e.g.: "1999.10.30" 30.10.1999
RETURN2 : calendar week year and number, e.g.
"1999/43" KW43 in 1999
Error RETURN1 : "1970.01.01"
Error RETURN2 : "1970/01"</pre><b><a name="param4">4</a> INPUT_STRING</b><pre> einzulesende Zeichenkette
abhaengig von ADATUM_MODUS: s. "Input :"</pre><b><a name="param5">5</a> RESULTSTRING1</b><pre> erste Ergebnis-Zeichenkette
abhaengig von ADATUM_MODUS: s. "Output: RETURN1 :"</pre><b><a name="param6">6</a> RESULTSTRING2</b><pre> zweite Ergebnis-Zeichenkette
abhaengig von ADATUM_MODUS: s. "Output: RETURN2 :"</pre><b><a name="param7">7</a> FEHLERFLAG</b><pre> = "0" if no error has occured,
!= "0" if an error has occured
-------------------------------------------------------------------------
-------------------------------------------------------------------------
Fehlerbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,79 @@
<HTML>
<HEAD>
<TITLE>A_ELECTR_LOAD</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>A_ELECTR_LOAD</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Header: /rweglobal/cvs/testsystem/ccs/6_testmodul_pool/testlisten_schedule/a/src/a_electr_load.C,v 1.2 2005/03/04 15:54:58 lehmann Exp $
-------------------------------------------------------------------------
Kurzbeschreibung: Gaudi Modul HPIB Ansteuerung / Ruecklesen
-------------------------------------------------------------------------
Projekt: Common Core System - BOSCH
Sourcefile: a_electr_load.C
Autor: AnW/TEF7 Schneider Romeo
Zielsystem: HP9000 743rt vxi02 (HP-UX 10.20 HP-RT 03.01)
Sprache: Ansi C; C++
-------------------------------------------------------------------------
Aufruf: &lt;GFMT KS=on TAB=8 LF=on&gt;
int a_electr_load (shm_stringpointer *zeilen_wert,// &lt;I&gt; Zeiger auf Werte
long index, // &lt;I&gt; Index Nummer
long anzahl) // &lt;I&gt; Anzahl der Werte
Beschreibung der Moduluebergabeparameter:</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> UNIT_NAME</b><pre> Unit Name
------------------------------</pre><b><a name="param4">4</a> CALIBRATE</b><pre>
Kalibrieungs Kommandos
------------------------------</pre><b><a name="param5">5</a> CHANEL</b><pre> Kanalanwahl Kommandos
------------------------------</pre><b><a name="param6">6</a> INPUT</b><pre>
Input Kommandos
------------------------------</pre><b><a name="param7">7</a> MEASURE</b><pre>
Messwert Anfrage
------------------------------</pre><b><a name="param8">8</a> LIST</b><pre>
List Kommandos
------------------------------</pre><b><a name="param9">9</a> TRANSIENT</b><pre>
Transienten Kommandos
------------------------------</pre><b><a name="param10">10</a> STATUS</b><pre> Status Kommandos
-------------------------------</pre><b><a name="param11">11</a> SYTEM_CMD</b><pre>
System Kommandos
-------------------------------</pre><b><a name="param12">12</a> TRIGGER_CMD</b><pre> Trigger Befehle
-------------------------------</pre><b><a name="param13">13</a> COMMON_CMD</b><pre> Allgemeine Befehle
-------------------------------</pre><b><a name="param14">14</a> EL_MODE</b><pre> Read/write Mode
-------------------------------</pre><b><a name="param15">15</a> EL_COUNTS</b><pre> Anzahl zu lesender Werte
-------------------------------</pre><b><a name="param16">16</a> TIMEOUT</b><pre> Timeout in msec
-------------------------------</pre><b><a name="param17">17</a> R_MESSWERT</b><pre> Rueckgabe des Messwertes
-------------------------------</pre><b><a name="param18">18</a> EL_ERROR</b><pre> Rueckgabe einer Fehlervariablen
-------------------------------
-------------------------------------------------------------------------
Returnparameter: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
Funktionsbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
Uebernimmt die Parameter und deutet Sie moeglichst so, wie sie in der
modglobal.stl definiert worden sind.
Das Modul ist in der Lage, einen Befehl ueber HPIB-Bus an ein Geraet
auszugeben und wenn gewuenscht eine Antwort zurueckzulesen.
Die Antwort wird als Nachricht an die Messdatenauswertung weiter-
gereicht.
-------------------------------------------------------------------------
Fehlerbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
LISO Fehlerbehandlung
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,103 @@
<HTML>
<HEAD>
<TITLE>A_FAULTMEM</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>A_FAULTMEM</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Header: /rweglobal/cvs/testsystem/ccs/6_testmodul_pool/testlisten_anw_module/src/a_faultmem.C,v 1.5 2004/12/23 10:33:40 jsj3rt Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Auswertemodul von Fehlerspeichereint<6E>gen Airbag
---------------------------------------------------------------------
Projekt: FaultMem
Sourcefile: a_faultmem.C
Autor: AnW/TEF7-Schroll (24.06.2004_Ersterstellung)
Zielsystem: HP9000/V743 (HP-RT 3.01), /7/C/D (HP-UX 10.20)
Sprache: C++
Ruekgabe Resultstring1 + Resultstring2
szModus Status =&gt; Statuswert + ErrNo
0 =&gt; ?
Notice Copyright (c) 2002 Ludwig Schroll
All Rights Reserved
---------------------------------------------------------------------
Aufruf: &lt;GFMT KS=on TAB=8 LF=on&gt;
int a_faultmem (shm_stringpointer *zeilen_wert,// &lt;I&gt; Zeiger auf Werte
long index, // &lt;I&gt; Index-Nummer
long anzahl) // &lt;I&gt; Anzahl der Werte
int a_faultmem (STRING PRUEFSCHRITT
STRING POSITION
STRING INPUT_STRING
STRING ANZAHL
STRING MODUS
STRING STATUSWERT
STRING FEHLERNR
STRING RESULTSTRING2
STRING RESULTSTRING1)
-------------------------------------------------------------------------
Returnparameter: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
Funktionsbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
Das Modul durchsucht Hex-Input Daten auf unterschiedliche Status und
Fehlerdaten. Der Inputstring wird mit dem Modul p_auftrag aus den Airbag-SG
gelesen.
// wir zerlegen den Inputstring in seine Komponenten:
// Die <20>bergabe erfolgt immer 16 Bit weise ...
// Die ersten 6 Bit beschreiben die Status-Bit gem<65>ss Spec.
// z.B. 4995
//
//------------------------------------------------
// | 1 | 2 | 3 | 4 | Byte
//------------------------------------------------
// 4 9 9 5 | Hex
// 0 1 0 0 1 0 0 1 1 0 0 1 0 1 0 1 | Bit
//------------------------------------------------
// 0 1 0 0 1 0 | Status 6 Bit
// 0 1 1 0 0 1 0 1 0 1 | Fehler Nr 10 Bit
// Bsp. 4995FFFF1234 = 010010011001010111111111111111110001001000110100 (reinstecken)
// szErrNo = 0110010101
// ANZAHL = 6 (reinstecken)
// FEHLERNR = 405 (reinstecken)
// STATUSWERT = 01XX10 (reinstecken)
// RESULTSTRING1 = 010010 (rausbekommen STATUS als Bit-Hex-String)
// RESULTSTRING2 = 1 (rausbekommen n-te-Eintrag in Fault Mem)
Beschreibung der Moduluebergabeparameter:</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> INPUT_STRING</b><pre> <20>bergabe der Daten an das Modul</pre><b><a name="param4">4</a> ANZAHL</b><pre> <20>bergabe der Anzahl zulaessiger Fehler an das Modul
Der Fehler muss innerhalb von Fehlereintrag ANZAHL sein</pre><b><a name="param5">5</a> MODUS</b><pre> Mit Modus kann die Art der internen Vrarbeitung und der R<>ckgabewert beeinflusst werden.
Modus = STATUS --&gt; d.h. es wird der Statudwert zur<75>ckgegeben
Modus = 0 --&gt; d.h. es wird die Fehlernummer zur<75>ckgegeben</pre><b><a name="param6">6</a> STATUSWERT</b><pre> <20>bergabe vom Soll-Statuswert an das Modul</pre><b><a name="param7">7</a> FEHLERNR</b><pre> <20>bergabe der Fehler Nr an das Modul</pre><b><a name="param8">8</a> RESULTSTRING1</b><pre> erste Ergebnis-Zeichenkette --&gt; Statuswert bei Modus Status</pre><b><a name="param9">9</a> RESULTSTRING2</b><pre> erste Ergebnis-Zeichenkette
-1 = Fehler: Error-Number not fount
-2 = Fehler: Status-Bit l<>uft auf Error
// wie bewerten die Status_Bit's wie folgt ...
// <20>bergebener StatusWert kann folgende Zustaende einnehmen:
// 0 = OK
// 1 = NOK
// X = don't care (s..egal)
//------------------------------------------------------------------------
// | 1 | 2 | 3 | 4 | Byte
//------------------------------------------------------------------------
// 0 1 1 0 1 0 | Status-Bit's aus INPUT_STRING
// 0 1 X X 1 0 | Bit-Maske aus STATUSWERT 6 Bit
// 0 1 1 0 0 1 0 1 0 1 | Fehler Nr 10 Bit
//------------------------------------------------------------------------
// d.h. wenn ein Bit, welches nicht mit X gekennzeichnet ist auf einen anderen Zustand als die
// <20>bergebene Bit-Maske kippt, dann Fehler ausgeben !
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,36 @@
<HTML>
<HEAD>
<TITLE>A_MATRIX</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>A_MATRIX</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: a_matrix.C,v 1.3 2006/01/27 15:52:50 nit3an Exp $
-------------------------------------------------------------------------
Kurzbeschreibung: Ansteuerung von vi und pinmx
-------------------------------------------------------------------------
Projekt: Common Core System - BOSCH
Sourcefile: a_matrix.C
Autor: AnW/FVS5 Schneider Romeo
Zielsystem: HP9000 743rt vxi02 (HP-UX 9.05 ; HP-RT 02.11)
Sprache: Ansi C; C++
-------------------------------------------------------------------------
Aufruf: &lt;GFMT KS=on TAB=8 LF=on&gt;
int a_matrix(char *RowA, char *RowB, char *Mode)
-------------------------------------------------------------------------
Returnparameter: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
Funktionsbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,74 @@
<HTML>
<HEAD>
<TITLE>A_RECHNE</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>A_RECHNE</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Header: /rweglobal/cvs/testsystem/ccs/6_testmodul_pool/testlisten_anw_module/src/a_rechne.C,v 1.4 2003/04/17 09:36:25 wiese Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Berechnungen durchfuehren
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: a_rechne.C
Autor: RtW/TEF72-juilfs/Lehmann (28.11.96)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void a_rechne(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Aufgabe des Rechenmodule ist es, Berechnungen anhand der Eingabezeile
vorzunehmen. Das Ergebnis wird im Ergebnisstring uebertragen.
Der gesamte Ausdruck muss geklammert werden.
Parameterbeschreibung:</pre><b><a name="param1">1</a> INPUT</b><pre> Beschreibung des aritmethischen Ausdrucks,
Laenge des Strings 60 Zeichen
Beispiele fuer Inputstrings:
(10+4)
(&amp;MEWE*&amp;MEWE2+(&amp;MEWE3/20))
INT(&amp;MEWE1)
RND(1)
Folgende Funktionen werden unterstuetzt
SIN
COS
LOG
LOG10
EXP
ABS
SQRT
INT Ganzzahl bilden, zB. 5.93 wird 5.00
RND Zufallszahlengenerator, Bereich: 0.000 - 0.999, das
Ergebnis wird mit dem RND-Argument multipliziert
RUND Runden von Zahlen ohne Nachkommastellen,
Beispiel: 5.9 -----&gt; 6</pre><b><a name="param2">2</a> ERGEBNIS</b><pre> Ausgabe des Ergebnisses in einer &amp;Variable</pre><b><a name="param3">3</a> FEHLER</b><pre> Fehlerbeschreibung in einer &amp;Variable
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,234 @@
<HTML>
<HEAD>
<TITLE>B_DRUCKEN</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>B_DRUCKEN</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
Funktionsbeschreibung:
Anzahl der Uebergabeparameter und Index der expandierten
Pruefliste im Platz BARCODE_UNIT ablegen. Der Prozess
BC_DRUCKEN greift spaeter auf diese beiden Parameter zu und
kopiert die <20>bergabeparameter in die lokalen Arrays
Beschreibung der Moduluebergabeparameter:</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> MULTIFUNKTIONSCODE</b><pre>
Wird nicht nicht gebraucht
------------------------------</pre><b><a name="param4">4</a> TYPENSCHILD</b><pre>
Name des Typenschildes
&lt;\userdoc&gt;
Input:
zeilen_info
zeilen_wert
index1
anzahl
Output:
none
----------------------------------------------------------
Return Value:
= 0: Successful completion
----------------------------------------------------------
Beispiel (optional):
----------------------------------------------------------
History:
$Log: b_drucken.C,v $
Revision 1.3 2003/04/17 09:36:01 wiese
$Head -&gt; $Id wegen log_message
* Revision 1.2 2003/02/24 12:46:00 keppler
* Translated to English
*
* Revision 1.1 2002/03/26 08:15:09 sgc3sa
* Anpassungen fuer QT fuer Vectorinterpreter
*
* Revision 1.9 2002/03/25 12:34:32 juilfs
* QT
*
* Revision 1.8 2002/01/24 16:11:42 KLM3SA
* userdoc for html-page implemented
*
* Revision 1.7 2001/11/23 07:49:04 sgc3sa
* BC ausschaltbar mit is_spspam = BC:OFF
*
* Revision 1.6 2000/02/16 12:17:02 klm3sa
* *** empty log message ***
*
* Revision 1.5 2000/02/15 10:40:30 KLM3SA
* Sourcen aus testsystem_21 kopiert.
*
Revision 7.1 99/10/28 sgc3sa (Stelzig, DCS)
Abkuerzung FO fuer FORCE eingefuehrt
Revision 7.0 99/08/24 sadcsst (Stelzig, DCS)
Wenn in GAUDI-Parameter QString FORCE vorkommt, dann
wird bei error oder abbruch Normalerauftrag an
barcode_ccs geschickt.
Revision 6.4 98/10/23 sadcsst (Stelzig, DCS)
Buffergroesse fuer Kommunikation mit bc_drucken
Revision 6.3 98/09/15 sadcsst (Stelzig, DCS)
Ssp_vi-&gt;sg_marking &amp; MARK_BARCODE wird abgefragt
Revision 2.2 97/10/17 sadcsst (Stelzig, DCS)
JOB_RESULT=GOOD wird nicht mehr in Syscom als Result zurueck geschrieben
Revision 2.1 98/09/24 (Stelzig, DCS)
Wenn Error und Abbruch Handling in vorherigen Pruefschritt
dann Return 0
Wenn JOB_RESULT=ERROR, dann wird Prueliste abgebrochen
Revision 2.0 97/04/21 (Stelzig, DCS)
Anpassung an neuen Syscom
Revision 1.0 96/11/11 (Stelzig, DCS)
Erstellt
----------------------------------------------------------
C4
int b_drucken( shm_stringpointer *zeilen_wert, long index1, long anzahl)
{
static char ident[] = "@(#)$Id: b_drucken.C,v 1.3 2003/04/17 09:36:01 wiese Exp $";
Lokale Variablen
long j1; // Laufvariable f<>r Parameteruebergabe
char auftrag[80]; // auftrag der ueber Messagequeue versendet wird
char quittung[160]; // Quittung auf Auftrag
unsigned auftrag_len; // Laenge Auftrag QString
unsigned quittung_len = 160; // Laenge Quittungsstring
int error; // return von msg_send_wait
long msgstat;
long hispnr;
long schritt;
Schrittbetriebshandler
schritt = schrittbetrieb(zeilen_wert,index1);
if (schritt!=1) {
return 0;
}
// Testen, ob Barcode gedruckt werden soll
if ( strcmp( Ssp_vi-&gt;job.liststate, PREINT ) ) {
int len = strlen("BC:OFF");
char* pos = strstr( &amp;Ssp_te-&gt;pruef.is_spspam[0], "BC:OFF" );
if ( pos &amp;&amp; pos &gt; Ssp_te-&gt;pruef.is_spspam &amp;&amp; pos[-1] != ',' ) pos = 0;
if ( pos &amp;&amp; pos[len] != ',' &amp;&amp; pos[len] != '\0' ) pos = 0;
if ( pos ) {
Daten an Messdatensammler senden
send_string_to_md( JOB_RESULT_GOOD "Barcode von SPS ausgeschaltet", MODULNAME,
*zeilen_wert-&gt;ptr[index1 + 0], *zeilen_wert-&gt;ptr[index1 + 1] );
return 0;
}
}
Feststellen, ob FORCE-Mode
QString multifunk = (const char*) *Ssp_expand_wert-&gt;ptr[ index1 + 2 ];
int multifunk_index = multifunk.find("FORCE");
int multifunk_index_next = multifunk_index + strlen("FORCE");
if ( multifunk_index &lt; 0 ) {
multifunk_index = multifunk.find("FO");
multifunk_index_next = multifunk_index + strlen("FO");
}
if ( multifunk.length() &gt;= multifunk_index_next ) {
multifunk_index_next = -1;
}
int force = 0;
if ( multifunk_index &gt;= 0 ) {
if ( multifunk_index == 0 ||
(multifunk[multifunk_index-1] == ' ' || multifunk[multifunk_index-1] == ',') ) {
if ( multifunk_index_next &lt; 0 ||
multifunk[multifunk_index_next] == ' ' ||
multifunk[multifunk_index_next] == ',' ) {
force = 1;
}
}
}
Message an bc_drucken
if ( !force &amp;&amp; Ssp_vi-&gt;multi[Ssp_vi-&gt;test.multiindex].error != 0 ) {
sprintf( auftrag, "INDEX=%i;AUFTRAG=ERROR;", index1 );
}
else if ( !force &amp;&amp; Ssp_vi-&gt;multi[Ssp_vi-&gt;test.multiindex].abbruch != 0 ) {
sprintf( auftrag, "INDEX=%i;AUFTRAG=ABBRUCH;", index1 );
}
else {
sprintf( auftrag, "INDEX=%i;AUFTRAG=DRUCKEN;", index1 );
}
auftrag_len = strlen (auftrag) + 1;
error = msg_send_wait (BC_DRUCKEN,
auftrag, auftrag_len,-1,160,
quittung, &amp;quittung_len,&amp;msgstat,&amp;hispnr);
Fehlerbehandlung msg_send_wait
if (error!=0) {
Fehlermeldung
// error_message (ERR_ERROR, HEADER, __LINE__, "Fehler Aufruf msg_send_wait" );
error_message (ERR_ERROR, HEADER, __LINE__, "Error calling msg_send_wait" );
return -1;
}
else {
Quittung ausgeben
debug_message(__FILE__,__LINE__,2,"b_drucken&gt; quittung = %s\n", quittung );
}
Timeout Behandlung
if (msgstat &amp; MSG_R_TIMEOUT) {
Fehlertext
ccl_befehl( Ssp_ss-&gt;progs[G_mypnr].result, JOB_RESULT, ERROR, RESULT_MAX );
strcat(Ssp_ss-&gt;progs[G_mypnr].result,JOB_ERRSTR);
strcat(Ssp_ss-&gt;progs[G_mypnr].result,SEP_GLEICH);
strcat(Ssp_ss-&gt;progs[G_mypnr].result,"Timeout-BC");
strcat(Ssp_ss-&gt;progs[G_mypnr].result,SEP_SEMIKOLON);
return -1; // Timeout --&gt; Fehler
}
JOB RESULT
if ( strstr(quittung,JOB_RESULT_ERROR) ) {
strcpy(Ssp_ss-&gt;progs[G_mypnr].result,JOB_RESULT_ERROR);
strcat(Ssp_ss-&gt;progs[G_mypnr].result,JOB_ERRSTR);
strcat(Ssp_ss-&gt;progs[G_mypnr].result,SEP_GLEICH);
strcat(Ssp_ss-&gt;progs[G_mypnr].result,"BC: ");
char *semi = strchr(quittung,';');
if ( semi ) {
int len = strlen(semi+1);
if ( len + 5 + strlen(Ssp_ss-&gt;progs[G_mypnr].result) &gt;= RESULT_MAX ) {
len = RESULT_MAX - strlen(Ssp_ss-&gt;progs[G_mypnr].result) - 6;
}
strncat(Ssp_ss-&gt;progs[G_mypnr].result, semi+1, len );
}
else {
strcat(Ssp_ss-&gt;progs[G_mypnr].result, "unknown" );
}
strcat(Ssp_ss-&gt;progs[G_mypnr].result,SEP_SEMIKOLON);
return -1;
}
Daten an Messdatensammler senden
send_string_to_md( quittung, MODULNAME, *zeilen_wert-&gt;ptr[index1 + 0], *zeilen_wert-&gt;ptr[index1 + 1] );
return 0;
}
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,264 @@
<HTML>
<HEAD>
<TITLE>B_INIT</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>B_INIT</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
Funktionsbeschreibung:
Anzahl der Uebergabeparameter und Index der expandierten
Pruefliste im Platz BARCODE_UNIT ablegen. Der Prozess
BC_DRUCKEN greift spaeter auf diese beiden Parameter zu und
kopiert die Uebergabeparameter in die lokalen Arrays
Beschreibung der Moduluebergabeparameter:</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> MULTIFUNKTIONSCODE</b><pre>
Wird nicht nicht gebraucht
------------------------------</pre><b><a name="param4">4</a> TYPENSCHILD</b><pre>
Name des Typenschildes
------------------------------</pre><b><a name="param5">5</a> TYPENSCHILDNUMMER</b><pre>
Nummer des Typenschildes
------------------------------</pre><b><a name="param6">6</a> DRUCKERDEVICE</b><pre>
Drucker: DRUCKER1, DRUCKER2, DRUCKER3
&lt;\userdoc&gt;
Input:
zeilen_info
zeilen_wert
index1
anzahl
Output:
none
----------------------------------------------------------
Return Value:
= 0: Successful completion
----------------------------------------------------------
Beispiel (optional):
----------------------------------------------------------
History:
$Log: b_init.C,v $
Revision 1.3 2003/04/17 09:36:02 wiese
$Head -&gt; $Id wegen log_message
* Revision 1.2 2003/02/24 12:46:48 keppler
* Translated to English
*
* Revision 1.1 2002/03/26 08:15:04 sgc3sa
* Anpassungen fuer QT fuer Vectorinterpreter
*
* Revision 1.9 2002/03/25 12:34:31 juilfs
* QT
*
* Revision 1.8 2002/01/24 16:11:51 KLM3SA
* userdoc for html-page implemented
*
* Revision 1.7 2001/11/23 07:48:53 sgc3sa
* BC ausschaltbar mit is_spspam = BC:OFF
*
* Revision 1.6 2000/02/16 12:16:47 klm3sa
* *** empty log message ***
*
* Revision 1.5 2000/02/15 10:41:22 KLM3SA
* Sourcen aus testsystem_21 kopiert.
*
Revision 7.1 99/10/28 sgc3sa (Stelzig, DCS)
Abkuerzung FO fuer FORCE eingefuehrt
Revision 7.0 99/08/24 sadcsst (Stelzig, DCS)
Wenn in GAUDI-Parameter QString FORCE vorkommt, dann
wird bei error oder abbruch Normalerauftrag an
barcode_ccs geschickt.
Revision 6.4 98/10/23 sadcsst (Stelzig, DCS)
Buffergroesse fuer Kommunikation mit bc_drucken
Revision 6.3 98/09/15 sadcsst (Stelzig, DCS)
Ssp_vi-&gt;sg_marking &amp; MARK_BARCODE wird abgefragt
Revision 2.2 97/10/17 sadcsst (Stelzig, DCS)
JOB_RESULT=GOOD wird nicht mehr in Syscom als Result zurueck geschrieben
Revision 2.1 98/09/24 (Stelzig, DCS)
Wenn Error und Abbruch Handling in vorherigen Pruefschritt
dann Return 0
Wenn JOB_RESULT=ERROR, dann wird Prueliste abgebrochen
Revision 2.0 97/04/22 (Stelzig, DCS)
Anpassung an neuen Syscom
Revision 1.0 96/11/11 (Stelzig, DCS)
Erstellt
----------------------------------------------------------
C4
int b_init( shm_stringpointer *zeilen_wert, long index1, long anzahl)
{
static char ident[] = "@(#)$Id: b_init.C,v 1.3 2003/04/17 09:36:02 wiese Exp $";
Lokale Variablen
long j1; // Laufvariable fuer Parameteruebergabe
char auftrag[80]; // auftrag der ueber Messagequeue versendet wird
char quittung[160]; // Quittung auf Auftrag
unsigned auftrag_len; // Laenge Auftrag QString
unsigned quittung_len = 160; // Laenge Quittungsstring
int error; // return von msg_send_wait
long msgstat;
long hispnr;
long schritt;
Schrittbetriebshandler
schritt = schrittbetrieb(zeilen_wert,index1);
if (schritt!=1) {
return 0;
}
// Testen, ob Barcode gedruckt werden soll
if ( strcmp( Ssp_vi-&gt;job.liststate, PREINT ) ) {
int len = strlen("BC:OFF");
char* pos = strstr( &amp;Ssp_te-&gt;pruef.is_spspam[0], "BC:OFF" );
if ( pos &amp;&amp; pos &gt; Ssp_te-&gt;pruef.is_spspam &amp;&amp; pos[-1] != ',' ) pos = 0;
if ( pos &amp;&amp; pos[len] != ',' &amp;&amp; pos[len] != '\0' ) pos = 0;
if ( pos ) {
Daten an Messdatensammler senden
send_string_to_md( JOB_RESULT_GOOD "Barcode von SPS ausgeschaltet", MODULNAME,
*zeilen_wert-&gt;ptr[index1 + 0], *zeilen_wert-&gt;ptr[index1 + 1] );
return 0;
}
}
Feststellen, ob FORCE-Mode
QString multifunk = (const char*) *Ssp_expand_wert-&gt;ptr[ index1 + 2 ];
int multifunk_index = multifunk.find("FORCE");
int multifunk_index_next = multifunk_index + strlen("FORCE");
if ( multifunk_index &lt; 0 ) {
multifunk_index = multifunk.find("FO");
multifunk_index_next = multifunk_index + strlen("FO");
}
if ( multifunk.length() &gt;= multifunk_index_next ) {
multifunk_index_next = -1;
}
int force = 0;
if ( multifunk_index &gt;= 0 ) {
if ( multifunk_index == 0 ||
(multifunk[multifunk_index-1] == ' ' || multifunk[multifunk_index-1] == ',') ) {
if ( multifunk_index_next &lt; 0 ||
multifunk[multifunk_index_next] == ' ' ||
multifunk[multifunk_index_next] == ',' ) {
force = 1;
}
}
}
Message an bc_drucken
if ( !force &amp;&amp; Ssp_vi-&gt;multi[Ssp_vi-&gt;test.multiindex].error != 0 ) {
sprintf( auftrag, "INDEX=%i;AUFTRAG=ERROR;", index1 );
}
else if ( !force &amp;&amp; Ssp_vi-&gt;multi[Ssp_vi-&gt;test.multiindex].abbruch != 0 ) {
sprintf( auftrag, "INDEX=%i;AUFTRAG=ABBRUCH;", index1 );
}
else {
sprintf( auftrag, "INDEX=%i;AUFTRAG=INIT;", index1 );
}
auftrag_len = strlen (auftrag) + 1;
error = msg_send_wait (BC_DRUCKEN,
auftrag, auftrag_len,-1,160,
quittung, &amp;quittung_len,&amp;msgstat,&amp;hispnr);
Fehlerbehandlung msg_send_wait
if (error!=0) {
Fehlermeldung
// error_message (ERR_ERROR, HEADER, __LINE__, "Fehler Aufruf msg_send_wait" );
error_message (ERR_ERROR, HEADER, __LINE__, "Error calling msg_send_wait" );
return -1;
}
else {
Quittung ausgeben
debug_message(__FILE__,__LINE__,2,"b_init&gt; quittung = %s\n", quittung );
}
Timeout Behandlung
if (msgstat &amp; MSG_R_TIMEOUT) {
Fehlertext
ccl_befehl( Ssp_ss-&gt;progs[G_mypnr].result, JOB_RESULT, ERROR, RESULT_MAX );
strcat(Ssp_ss-&gt;progs[G_mypnr].result,JOB_ERRSTR);
strcat(Ssp_ss-&gt;progs[G_mypnr].result,SEP_GLEICH);
strcat(Ssp_ss-&gt;progs[G_mypnr].result,"Timeout-BC");
strcat(Ssp_ss-&gt;progs[G_mypnr].result,SEP_SEMIKOLON);
return -1; // Timeout --&gt; Fehler
}
JOB RESULT
if ( strstr(quittung,JOB_RESULT_ERROR) ) {
strcpy(Ssp_ss-&gt;progs[G_mypnr].result,JOB_RESULT_ERROR);
strcat(Ssp_ss-&gt;progs[G_mypnr].result,JOB_ERRSTR);
strcat(Ssp_ss-&gt;progs[G_mypnr].result,SEP_GLEICH);
strcat(Ssp_ss-&gt;progs[G_mypnr].result,"BC: ");
char *semi = strchr(quittung,';');
if ( semi ) {
int len = strlen(semi+1);
if ( len + 5 + strlen(Ssp_ss-&gt;progs[G_mypnr].result) &gt;= RESULT_MAX ) {
len = RESULT_MAX - strlen(Ssp_ss-&gt;progs[G_mypnr].result) - 6;
}
strncat(Ssp_ss-&gt;progs[G_mypnr].result, semi+1, len );
}
else {
strcat(Ssp_ss-&gt;progs[G_mypnr].result, "unknown" );
}
strcat(Ssp_ss-&gt;progs[G_mypnr].result,SEP_SEMIKOLON);
return -1;
}
Daten an Messdatensammler senden
send_string_to_md( quittung, MODULNAME, *zeilen_wert-&gt;ptr[index1 + 0], *zeilen_wert-&gt;ptr[index1 + 1] );
return 0;
-End of file---------------------------------------------------------
Historie:
}
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,257 @@
<HTML>
<HEAD>
<TITLE>B_MAKE</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>B_MAKE</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
Funktionsbeschreibung:
Anzahl der Uebergabeparameter und Index der expandierten
Pruefliste im Platz BARCODE_UNIT ablegen. Der Prozess
BC_DRUCKEN greift spaeter auf diese beiden Parameter zu und
kopiert die <20>bergabeparameter in die lokalen Arrays
Beschreibung der Uegergabeparameter:</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> MULTIFUNKTIONSCODE</b><pre>
Wird nicht nicht gebraucht
------------------------------</pre><b><a name="param4">4</a> TYPENSCHILD</b><pre>
Name des Typenschildes
------------------------------
&lt;5-13&gt; STRING1 - STRING9
Typenschildmodifizier Strings
&lt;\userdoc&gt;
Input:
zeilen_info
zeilen_wert
index1
anzahl
Output:
none
----------------------------------------------------------
Return Value:
= 0: Successful completion
----------------------------------------------------------
Beispiel (optional):
----------------------------------------------------------
History:
$Log: b_make.C,v $
Revision 1.3 2003/04/17 09:36:02 wiese
$Head -&gt; $Id wegen log_message
* Revision 1.2 2003/02/24 12:47:17 keppler
* Translated to English
*
* Revision 1.1 2002/03/26 08:15:47 sgc3sa
* Anpassungen fuer QT fuer Vectorinterpreter
*
* Revision 1.9 2002/03/25 12:34:29 juilfs
* QT
*
* Revision 1.8 2002/01/24 16:11:58 KLM3SA
* userdoc for html-page implemented
*
* Revision 1.7 2001/11/23 07:48:59 sgc3sa
* BC ausschaltbar mit is_spspam = BC:OFF
*
* Revision 1.6 2000/02/16 12:16:38 klm3sa
* *** empty log message ***
*
* Revision 1.5 2000/02/15 10:42:17 KLM3SA
* Sourcen aus testsystem_21 kopiert.
*
Revision 7.1 99/10/28 sgc3sa (Stelzig, DCS)
Abkuerzung FO fuer FORCE eingefuehrt
Revision 7.0 99/08/24 sadcsst (Stelzig, DCS)
Wenn in GAUDI-Parameter QString FORCE vorkommt, dann
wird bei error oder abbruch Normalerauftrag an
barcode_ccs geschickt.
Revision 6.4 98/10/23 sadcsst (Stelzig, DCS)
Buffergroesse fuer Kommunikation mit bc_drucken
barcode_ccs auf 160 vergroessert.
Revision 6.3 98/09/15 sadcsst (Stelzig, DCS)
Ssp_vi-&gt;sg_marking &amp; MARK_BARCODE wird abgefragt
Revision 2.2 97/10/17 sadcsst (Stelzig, DCS)
JOB_RESULT=GOOD wird nicht mehr in Syscom als Result zurueck geschrieben Revision 2.1 98/09/24 (Stelzig, DCS)
Wenn Error und Abbruch Handling in vorherigen Pruefschritt
dann Return 0
Wenn JOB_RESULT=ERROR, dann wird Prueliste abgebrochen
Revision 2.0 97/04/21 (Stelzig, DCS)
Anpassung an neuen Syscom
Revision 1.0 96/11/11 (Stelzig, DCS)
Erstellt
----------------------------------------------------------
C4
int b_make( shm_stringpointer *zeilen_wert, long index1, long anzahl)
{
static char ident[] = "@(#)$Id: b_make.C,v 1.3 2003/04/17 09:36:02 wiese Exp $";
Lokale Variablen
long j1; // Laufvariable fuer Parameteruebergabe
char auftrag[80]; // auftrag der ueber Messagequeue versendet wird
char quittung[160]; // Quittung auf Auftrag
unsigned auftrag_len; // Laenge Auftrag QString
unsigned quittung_len = 160; // Laenge Quittungsstring
int error; // return von msg_send_wait
long msgstat;
long hispnr;
long schritt;
Schrittbetriebshandler
schritt = schrittbetrieb(zeilen_wert,index1);
if (schritt!=1) {
return 0;
}
// Testen, ob Barcode gedruckt werden soll
if ( strcmp( Ssp_vi-&gt;job.liststate, PREINT ) ) {
int len = strlen("BC:OFF");
char* pos = strstr( &amp;Ssp_te-&gt;pruef.is_spspam[0], "BC:OFF" );
if ( pos &amp;&amp; pos &gt; Ssp_te-&gt;pruef.is_spspam &amp;&amp; pos[-1] != ',' ) pos = 0;
if ( pos &amp;&amp; pos[len] != ',' &amp;&amp; pos[len] != '\0' ) pos = 0;
if ( pos ) {
Daten an Messdatensammler senden
send_string_to_md( JOB_RESULT_GOOD "Barcode von SPS ausgeschaltet", MODULNAME,
*zeilen_wert-&gt;ptr[index1 + 0], *zeilen_wert-&gt;ptr[index1 + 1] );
return 0;
}
}
Feststellen, ob FORCE-Mode
QString multifunk = (const char*) *Ssp_expand_wert-&gt;ptr[ index1 + 2 ];
int multifunk_index = multifunk.find("FORCE");
int multifunk_index_next = multifunk_index + strlen("FORCE");
if ( multifunk_index &lt; 0 ) {
multifunk_index = multifunk.find("FO");
multifunk_index_next = multifunk_index + strlen("FO");
}
if ( multifunk.length() &gt;= multifunk_index_next ) {
multifunk_index_next = -1;
}
int force = 0;
if ( multifunk_index &gt;= 0 ) {
if ( multifunk_index == 0 ||
(multifunk[multifunk_index-1] == ' ' || multifunk[multifunk_index-1] == ',') ) {
if ( multifunk_index_next &lt; 0 ||
multifunk[multifunk_index_next] == ' ' ||
multifunk[multifunk_index_next] == ',' ) {
force = 1;
}
}
}
Message an bc_drucken
if ( !force &amp;&amp; Ssp_vi-&gt;multi[Ssp_vi-&gt;test.multiindex].error != 0 ) {
sprintf( auftrag, "INDEX=%i;AUFTRAG=ERROR;", index1 );
}
else if ( !force &amp;&amp; Ssp_vi-&gt;multi[Ssp_vi-&gt;test.multiindex].abbruch != 0 ) {
sprintf( auftrag, "INDEX=%i;AUFTRAG=ABBRUCH;", index1 );
}
else {
sprintf( auftrag, "INDEX=%i;AUFTRAG=TYPENSCHILD;", index1 );
}
auftrag_len = strlen (auftrag) + 1;
error = msg_send_wait (BC_DRUCKEN,
auftrag, auftrag_len,-1,160,
quittung, &amp;quittung_len,&amp;msgstat,&amp;hispnr);
Fehlerbehandlung msg_send_wait
if (error!=0) {
Fehlermeldung
// error_message (ERR_ERROR, HEADER, __LINE__, "Fehler Aufruf msg_send_wait" );
error_message (ERR_ERROR, HEADER, __LINE__, "Error calling msg_send_wait" );
return -1;
}
else {
Quittung ausgeben
debug_message(__FILE__,__LINE__,2,"b_init&gt; quittung = %s\n", quittung );
}
Timeout Behandlung
if (msgstat &amp; MSG_R_TIMEOUT) {
Fehlertext
ccl_befehl( Ssp_ss-&gt;progs[G_mypnr].result, JOB_RESULT, ERROR, RESULT_MAX );
strcat(Ssp_ss-&gt;progs[G_mypnr].result,JOB_ERRSTR);
strcat(Ssp_ss-&gt;progs[G_mypnr].result,SEP_GLEICH);
strcat(Ssp_ss-&gt;progs[G_mypnr].result,"Timeout-BC");
strcat(Ssp_ss-&gt;progs[G_mypnr].result,SEP_SEMIKOLON);
return -1; // Timeout --&gt; Fehler
}
JOB RESULT
if ( strstr(quittung,JOB_RESULT_ERROR) ) {
strcpy(Ssp_ss-&gt;progs[G_mypnr].result,JOB_RESULT_ERROR);
strcat(Ssp_ss-&gt;progs[G_mypnr].result,JOB_ERRSTR);
strcat(Ssp_ss-&gt;progs[G_mypnr].result,SEP_GLEICH);
strcat(Ssp_ss-&gt;progs[G_mypnr].result,"BC: ");
char *semi = strchr(quittung,';');
if ( semi ) {
int len = strlen(semi+1);
if ( len + 5 + strlen(Ssp_ss-&gt;progs[G_mypnr].result) &gt;= RESULT_MAX ) {
len = RESULT_MAX - strlen(Ssp_ss-&gt;progs[G_mypnr].result) - 6;
}
strncat(Ssp_ss-&gt;progs[G_mypnr].result, semi+1, len );
}
else {
strcat(Ssp_ss-&gt;progs[G_mypnr].result, "unknown" );
}
strcat(Ssp_ss-&gt;progs[G_mypnr].result,SEP_SEMIKOLON);
return -1;
}
Daten an Messdatensammler senden
send_string_to_md( quittung, MODULNAME, *zeilen_wert-&gt;ptr[index1 + 0], *zeilen_wert-&gt;ptr[index1 + 1] );
return 0;
}
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,62 @@
<HTML>
<HEAD>
<TITLE>B_PORT</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>B_PORT</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: b_port.C,v 1.9 2004/03/24 08:44:42 lehmann Exp $
-------------------------------------------------------------------------
Kurzbeschreibung: serial IO modul for port B
-------------------------------------------------------------------------
Projekt: Common Core System - BOSCH
Sourcefile: b_port.C
Autor: AnW/TEF7 Schneider Romeo
Zielsystem: HP9000 743rt vxi02 (HP-UX 10.20; HP-RT 03.01)
Sprache: Ansi C; C++
-------------------------------------------------------------------------
Aufruf: &lt;GFMT KS=on TAB=8 LF=on&gt;
int b_port (shm_stringpointer *zeilen_wert, // &lt;I&gt; Zeiger auf Werte
long index, // &lt;I&gt; Index Nummer
long anzahl) // &lt;I&gt; Anzahl der Werte
Parameter : SCHRITT wert[00]
Parameter : POSITION wert[01]
Parameter : IO_FUNK wert[02] INIT (PREINT) else TX,RX,TX_RX
Parameter : IO_PORT wert[03] B for port B (A is always uses)
Parameter : OUT_STR wert[04] data to send out on: TX oder TX_RX
Parameter : INP_STR wert[05] received data on: RX oder TX_RX
Parameter : IO_STAT wert[06] transmission log (&lt;0 error)
default parameter for the interface :
BAUD-rate : 9600
CharSize : CS8
Timeout : 5000 ms [steps of 100ms are possible]
Terminator : &lt;cr&gt;&lt;lf&gt; or &lt;lf&gt; or Timeout
to change the default:
IO_FUNK = INIT and OUT_STR = B19200:CS7:TO3000
-------------------------------------------------------------------------
Returnparameter: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
Funktionsbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
Fehlerbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,132 @@
<HTML>
<HEAD>
<TITLE>E_AD64</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>E_AD64</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_ad64.C,v 1.7 2005/05/10 08:43:41 jsj3rt Exp $
---------------------------------------------------------------------
Kurzbeschreibung: dkgnbd
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_ad64.C
Autor: RtW/TEF72-Eilebrecht (30.04.96)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_obpinit(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Das AD64-Modul stellt die Me<4D>parameter an der ADC-Karte HP E1413 ein
und f<>hrt einen Scan durch.
Die Auswahl der zu messenden Kan<61>le wird durch 4 Buchstabenleisten
f<>r jeweils 16 Kan<61>le festgelegt. "SS-S" bedeutet beispielsweise das Messen
des ersten, zweiten und vierten Kanals innerhalb der 16er-Gruppe.
Da das Einstellen des Ger<65>ts weit gr<67><72>ere Zeit beansprucht als das Messen,
wird mit m<>glichst wenigen Einstellungs<67>nderungen gearbeitet. Die festgelegte
Kanalauswahl wird dazu mit den vier im Ger<65>t gespeicherten Kanallisten
verglichen und m<>glichst eine vorhandene Liste verwendet. Falls jedoch eine
weitere Liste im Ger<65>t definiert werden mu<6D>, obwohl dort alle vier belegt
sind, wird die an l<>ngsten unbenutzte Liste <20>berschrieben.
Die Me<4D>ergebnisse werden im internen Float-Puffer zur Weiterbearbeitung abgelegt.
Beschreibung der Modul<75>bergabeparameter:</pre><b><a name="param1">1</a> PRUEFSCHRITT</b><pre> GAUDI-Pr<50>fschritt
------------------------------</pre><b><a name="param2">2</a> POSITION</b><pre> PAV-Position
------------------------------</pre><b><a name="param3">3</a> ANSTEUER_UNIT</b><pre> Name des Ger<65>ts laut PAM-Bschreibungsfile
:AD64_01
------------------------------</pre><b><a name="param4">4</a> CHANNEL_16_01</b><pre> Buchstabenleiste f<>r 16 Kan<61>le
:S--S---SSSSS-S-S
------------------------------</pre><b><a name="param5">5</a> CHANNEL_32_17</b><pre> dito
------------------------------</pre><b><a name="param6">6</a> CHANNEL_48_33</b><pre> dito
------------------------------</pre><b><a name="param7">7</a> CHANNEL_64_49</b><pre> dito
------------------------------</pre><b><a name="param8">8</a> TRIGGER_SRC</b><pre> Trigger Source
:SOFTWARE (Trigger wird vom Modul erzeugt)
:0 (VXI-Trigger-Line 0)
:1 (VXI-Trigger-Line 1)
:7 (VXI-Trigger-Line 7)
------------------------------</pre><b><a name="param9">9</a> TRIGGER_OUT</b><pre> Ziel f<>r den erzeugten Trigger
:0 (VXI-Trigger-Line 0)
:1 (VXI-Trigger-Line 1)
:7 (VXI-Trigger-Line 7)
------------------------------</pre><b><a name="param10">10</a> ADC_ZERO</b><pre> Schalter f<>r ADZERO-Funktion des Ger<65>ts
:ON
:OFF
:RESET
------------------------------</pre><b><a name="param11">11</a> FILTER</b><pre> Schalter f<>r das 12 kHZ Filter am ADC
:ON
:OFF
------------------------------</pre><b><a name="param12">12</a> RANGE</b><pre> Me<4D>bereich des ADC
:AUTORANGE
:16.0
------------------------------</pre><b><a name="param13">13</a> PERIOD</b><pre> Zeit zwischen zwei Messungen innerhalb eines Scans
in [usec]-Einheiten (10 - 32767)
(mu<6D> mindestens 15 sein, falls FILTER=ON)
Revision 1.1 2001/12/18 10:35:39 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.8 2001/06/19 14:05:06 lehmann
Linux: string.h + (char *) eingef<65>hrt
Revision 1.7 1999/12/22 10:07:42 keppler
$ID -&gt; $Id
Revision 1.6 1999/12/22 09:14:39 keppler
$Header -&gt; $Id
Revision 1.5 1999/07/08 16:36:52 sse
Rescan for 0x7f800000 error
Revision 1.4 99/07/08 11:44:49 11:44:49 juilfs (Joerg Juilfs)
no entry
Revision 1.3 99/07/01 12:40:58 12:40:58 juilfs (Joerg Juilfs)
no entry
Revision 1.2 99/03/30 14:33:52 14:33:52 sse (Hr Eilebrecht)
Streamlining
Revision 1.1 1999/03/18 17:10:56 sse
Initial revision
Revision 1.1 97/12/02 14:24:04 14:24:04 juilfs (Joerg Juilfs)
Initial revision
Revision 1.1 96/07/10 10:26:08 10:26:08 keppler (Fritz Keppler)
Initial revision
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,78 @@
<HTML>
<HEAD>
<TITLE>E_AD64_INIT</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>E_AD64_INIT</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_ad64_init.C,v 1.3 2002/03/06 08:45:49 lehmann Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Initialisierung des AD64 Toleranzen
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_ad64_init.C
Autor: RtW/TEF72-Juilfs (16.10.97)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_ad64_init(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Aufgabe des Modules ist es, die Toleranzen sowie die Aktiven Kan<61>le
festzulegen.
Mit dem Modul k<>nnen zwei Toleranzb<7A>nder festgelegt werden, die pro Kanal
sp<73>ter ausgewertet werden k<>nnen. Jeder Kanal (1-64) ist mit den Parametern
AKTIV_xx zu definieren ob er f<>r die Auswertung verwendet wird.
Setzen eines Kanales wird mit "S" gekennzeichnet, ausgeblendete Kan<61>le
werden mit "-" bezeichnet.
Beschreibung der Modul<75>bergabeparameter:</pre><b><a name="param1">1</a> PRUEFSCHRITT</b><pre>
GAUDI Pr<50>fschritt
------------------------------</pre><b><a name="param2">2</a> POSITION</b><pre>
PAV- Position
------------------------------</pre><b><a name="param3">3</a> VXI_GERAET</b><pre> Name des Ger<65>tes laut PAM Beschreibungsfile
:AD64_01
------------------------------</pre><b><a name="param4">4</a> HI_TUG</b><pre> Toleranzgrenze f<>r die Highauswertung
------------------------------</pre><b><a name="param5">5</a> HI_TOG</b><pre> Toleranzgrenze f<>r die Highauswertung
------------------------------</pre><b><a name="param6">6</a> LO_TUG</b><pre> Toleranzgrenze f<>r die Lowauswertung
------------------------------</pre><b><a name="param7">7</a> LO_TOG</b><pre> Toleranzgrenze f<>r die Lowauswertung
------------------------------</pre><b><a name="param8">8</a> AKTIV_16_01</b><pre> Setzen der aktiven Kan<61>le
Default:SSSSSSSSSSSSSSSS (setzen)
Ausblenden:-
------------------------------</pre><b><a name="param9">9</a> AKTIV_32_17</b><pre> Default:SSSSSSSSSSSSSSSS (setzen)
Ausblenden:-
-------------------------------</pre><b><a name="param10">10</a> AKTIV_48_33</b><pre> Default:SSSSSSSSSSSSSSSS (setzen)
Ausblenden:-
-------------------------------</pre><b><a name="param11">11</a> AKTIV_64_49</b><pre> Default:SSSSSSSSSSSSSSSS (setzen)
Ausblenden:-
-------------------------------</pre><b><a name="param12">12</a> MASSE_ANSCHALT</b><pre> Default -
...
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,187 @@
<HTML>
<HEAD>
<TITLE>E_ARB</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>E_ARB</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_arb.C,v 1.4 2005/09/01 07:11:40 sniff Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Aufruf des Prozesses ARB
---------------------------------------------------------------------
Projekt: BOSCH ccs
Sourcefile: e_arb.C
Autor: N<>W/FVB1.5 Romeo Schneider
Zielsystem: HP9000/HP743rt (HP-RT 2.11),(HP-UX 9.0x)
Sprache: Ansi-C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_arb(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Anzahl der <20>bergabeparameter und Index der expandierten
Pr<50>fliste im Platz VXI_ARB ablegen. Der Prozess
ARB greift sp<73>ter auf diese beiden Parameter zu und
kopiert die <20>bergabeparameter in die localen Arrays
Beschreibung der Modul<75>bergabeparameter:</pre><b><a name="param1">1</a> PRUEFSCHRITT</b><pre>
GAUDI Pr<50>fschritt
------------------------------</pre><b><a name="param2">2</a> POSITION</b><pre>
PAV- Position
------------------------------
...
&lt;userdoc&gt;
---------------------------------------------------------------------
**********************************************************************
-- pragmas -----------------------------------------------------------
**********************************************************************
#pragma COPYRIGHT "Robert Bosch GmbH Ansbach N<>W/FVB1.5"
#pragma VERSIONID "$Id: e_arb.C,v 1.4 2005/09/01 07:11:40 sniff Exp $"
**********************************************************************
-- defines -----------------------------------------------------------
**********************************************************************
#define EXTERN extern Bei allen Subroutinen
#define HEADER "$Id: e_arb.C,v 1.4 2005/09/01 07:11:40 sniff Exp $"
#define MILLISECOND(x) (1.0 * (x) / TIMER_MILLISECOND)
**********************************************************************
-- includes ----------------------------------------------------------
**********************************************************************
#include "shm_syscom.H"
#include &lt;stdlib.h&gt;
#include "unit_nummern.H"
#include "libccs.H" error_message
#include "ccl_defines.H"
#include "libtestmodul_pool.H"
**********************************************************************
-- external functions / variables ------------------------------------
**********************************************************************
**********************************************************************
-- global variables (nur im "main" erlaubt) -------------------------
**********************************************************************
**********************************************************************
-Begin--- Aufruf des Prozesses ARB ----------------------------------
**********************************************************************
int e_arb(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
{
**********************************************************************
-- local variables ------------------------------------------------------
**********************************************************************
char ident[] =
"@(#)e_arb.C Romeo Schneider AnW/FVS5 12.11.97 Rev.4.0";
int err1; //Fehler beim Starten des ARB
long j1; //Laufvariable f<>r Parameter<65>bergabe
long int schritt; //Schritt ausf<73>hren
unsigned short int nickname; // Nickname des Prozesses
unsigned short int prozess_vorhanden; //
unsigned short int prozess_disable;
unsigned short int pruefliste_init; //
char text[80]="";
long startstatus;
STRING prozessname; // Prozessname
//------------------------------------------------------------------
// Schrittbetriebshandler
//------------------------------------------------------------------
//------------------------------------------------------------------
// Anzahl der <20>bergabeparameter und Index der expandierten
// Pr<50>fliste im Platz ARB_UNIT ablegen. Der Prozess
// ARB greift sp<73>ter auf diese beiden Parameter zu und
// kopiert die <20>bergabeparameter in die localen Arrays
//------------------------------------------------------------------
j1 = get_platzmemory(3,VXI_ARB,2);
Ssp_pp_verwaltung-&gt;int_f[j1+0] = anzahl; // Anzahl und Index
Ssp_pp_verwaltung-&gt;int_f[j1+1] = index1; // f<>r Prozess ARB
//IF KANAL2 THEN
//Ssp_pp_verwaltung-&gt;int_f[j1+2] = anzahl; // Anzahl und Index
//Ssp_pp_verwaltung-&gt;int_f[j1+3] = index1; // f<>r Prozess ARB
//------------------------------------------------------------------
// Eintragen das der Prozess vorhanden ist.
//------------------------------------------------------------------
if(strcmp(Ssp_vi-&gt;job.liststate,PREINT)==0)
{
for (j1 = 0 ;j1 &lt;Ssp_pp_verwaltung-&gt;anzahl_start_prozesse; j1++)
{
Ssp_pp_verwaltung-&gt;Startliste_E_out[j1]
.get_info(prozessname,nickname,startstatus,prozess_vorhanden,prozess_disable,pruefliste_init);
if(nickname==ARB &amp;&amp; pruefliste_init==1)
{
Ssp_pp_verwaltung-&gt;Startliste_E_out[j1].set_prozess_vorhanden();
break;
}
}
}
schritt = schrittbetrieb(zeilen_wert,index1);
if(schritt!=1) return 0;
//------------------------------------------------------------------
// Starten des Prozesses ARB
//------------------------------------------------------------------
//DELAY ticks = timer_ticks(), ticks2;
err1=start_prozess(ARB,text);
if(err1!=0)
{
// error_message (ERR_ERROR, HEADER,__LINE__,
// "Fehler beim Starten des ARB");
error_message (ERR_ERROR, HEADER,__LINE__,
"Error starting ARB");
return -1;
}
//ticks2 = timer_ticks();
//printf("%s !!!!!!!!!!!!!!!!!!!!!Setup : %8.3f ms\n",Ssp_vi-&gt;test.pschr,
// MILLISECOND(ticks2-ticks));
return 0;
}
**********************************************************************
-End of file---------------------------------------------------------
Historie: 24.04.96 Romeo Schneider : Erstellung
08.11.96 Romeo Schneider : neue Directory Struktur.
**********************************************************************
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,138 @@
<HTML>
<HEAD>
<TITLE>E_ARRAY_INI</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>E_ARRAY_INI</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_array_ini.C,v 1.12 2005/03/24 15:58:50 lehmann Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Initialisierung von Array-Variablen
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_array_ini.C
Autor: RtW/TEF72-Juilfs (12.12.95)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_array_ini(
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Dieses Modul initialisiert eine Variable als langer String oder als
Feld von int / double
Beschreibung der Modul<75>bergabeparameter:</pre><b><a name="param1">1</a> PRUEFSCHRITT</b><pre>
GAUDI Pr<50>fschritt
------------------------------</pre><b><a name="param2">2</a> POSITION</b><pre>
PAV- Position
------------------------------</pre><b><a name="param3">3</a> ARRAY</b><pre> Variablen Name
------------------------------</pre><b><a name="param4">4</a> ARRAY_TYP</b><pre>
Variablen Typ DOUBLE/STRING/INT/BYTE
------------------------------</pre><b><a name="param5">5</a> ARRAY_DIM</b><pre> Wurde der ARRAY_TYP STRING gewaehlt so gibt ARRAY_DIM die Maximallaenge
des Strings an.
Andernfalls gibt ARRAY_DIM die Anzahl der Arrayelemente an.
------------------------------</pre><b><a name="param6">6</a> ARRAY_CLEAR</b><pre> TRUE = der Inhalt der Variable wird bei jedem Programmstart gel<65>scht.
FALSE = der Inhalt der Variable wird nur beim Laden des Pruefprogrammes gel<65>scht.
...
---------------------------------------------------------------------
-- pragmas -----------------------------------------------------------
#pragma COPYRIGHT "Robert Bosch GmbH Reutlingen, RtW/TEF72"
#pragma VERSIONID "$Id: e_array_ini.C,v 1.12 2005/03/24 15:58:50 lehmann Exp $"
-- defines -----------------------------------------------------------
#define HEADER "$Id: e_array_ini.C,v 1.12 2005/03/24 15:58:50 lehmann Exp $"
#define EXTERN extern Bei allen Subroutinen
#define ARRAY 2
#define ARRAYN_TYP 3
#define ARRAYN_ANZ_DIM 4
#define ARRAYN_ANZ_CLEAR 5
-- includes ----------------------------------------------------------
#include "shm_syscom.H"
#include &lt;stdlib.h&gt;
#include "libccs.H"
#include "ccl_defines.H" ccl_definition PREINT
-- external functions / variables ------------------------------------
-- global variables (nur im "main" erlaubt) -------------------------
-Begin---------------------------------------------------------------
---------------------------------------------------------------------
int e_array_ini(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
{
-- local variables ---------------------------------------------------
long dim; // Dimension 1
bool bParamClear; // Parameter clear memory
QString strName; // Variablenname
long typ; // Variablen typ
Variablenverwaltung *V_ADRESS; // Variablenverweis
if( strcmp( Ssp_vi-&gt;job.liststate, PREINT ) != 0 )
return 0;
if (Ssp_pp_verwaltung-&gt;steuerparameter.variablenTypDekl != 0)
{
error_message (ERR_ERROR_TTNR, HEADER,__LINE__, "e_array_ini ignored; a variables deklaration list exists");
return 0;
}
bParamClear = (*zeilen_wert-&gt;ptr[index1 + ARRAYN_ANZ_CLEAR] == "TRUE");
V_ADRESS = (Variablenverwaltung *)zeilen_wert-&gt;ptr[index1 + ARRAY];
if (!V_ADRESS-&gt;isVariable())
{
error_message (ERR_ERROR_TTNR, HEADER,__LINE__, "parameter array must be a variable");
return -1;
}
if (*zeilen_wert-&gt;ptr[index1 + ARRAYN_TYP] == VARMEM_TYPSTR_STRING)
typ = VARMEM_TYP_STRING;
else if (*zeilen_wert-&gt;ptr[index1 + ARRAYN_TYP] == VARMEM_TYPSTR_INT)
typ = VARMEM_TYP_INT;
else if (*zeilen_wert-&gt;ptr[index1 + ARRAYN_TYP] == VARMEM_TYPSTR_DOUBLE)
typ = VARMEM_TYP_DOUBLE;
else if (*zeilen_wert-&gt;ptr[index1 + ARRAYN_TYP] == VARMEM_TYPSTR_BYTE)
typ = VARMEM_TYP_BYTE;
else
{
error_message (ERR_ERROR_TTNR, HEADER,__LINE__,
"wrong type: %s", (const char *)*zeilen_wert-&gt;ptr[index1 + ARRAYN_TYP]);
return -1;
}
dim = atoi((const char*)(*zeilen_wert-&gt;ptr[index1 + ARRAYN_ANZ_DIM]));
if (!V_ADRESS-&gt;mem_ini( typ, dim, bParamClear ))
{
return -1;
}
return 0;
}
-End of file---------------------------------------------------------
Historie:
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,140 @@
<HTML>
<HEAD>
<TITLE>E_ARRAY_IO</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>E_ARRAY_IO</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_array_io.C,v 1.36 2005/09/06 15:14:28 gew3rt Exp $
---------------------------------------------------------------------
Kurzbeschreibung: import / export von Feldern
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_array_io.C
Autor: RtW/TEF72-Juilfs (12.12.95)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
void e_array_io(
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Ueber dieses Modul koennen Felder vom Typ INT bzw. DOUBLE importiert
(MODUS = R oder RI) oder exportiert (MODUS = W) werden.
Zusaetzlich ist es moeglich auch einzelne Variablenwerte zu importieren bzw. zu
exportieren. Hier ist dann auch der Typ STRING zulaessig.
- Mit dem Modus R gelesene Dateien m<>ssen immer den fixen Namen "messdat_read"
enthalten. Es handelt sich meistens um externe Dateien.
- Der Modus RI (internal read) dient dazu, die in CCS <20>ber den messdat-Service
(z.B. mit dem Modul M_LABVIEW) geschriebenen Dateien wieder lesen zu k<>nnen.
Zu beachten ist, dass die Parametrisierung ab dem Header_1 bzw, dem ARRAY_1
beginnt und zusammenhaengend ist, d.h. zwischen den einzelnen Parameterzeilen darf
keine Luecke sein, da diese Luecke einer Endekennzeichnung entspricht!
Beim Export werden zuerst mehrere Headerzeilen erzeugt z.B.
1: date: 01.12.2002
2: time: 16:25:43
3: name: ccs
4: file: b_muster01acse01_section_01_acc0001_0_07062002_status_byte.csv
5: SCU
6: STATUS_V0N;RESPONSE_V0N;STATUS_V0P;RESPONSE_V0P;STATUS_H0
Die Zeilen haben folgende Bedeutung
1: aktuelles Datum
2: aktuelle Zeit
3: Benutzer wird vom Programm immer mit ccs belegt
4: Dateinamen, dieser wird zusammengesetzt aus der in der
Konfigurationsdatei unter dem Service messdat
gespeicherten Dateibeschreibung, dem im Parameter
FILENAME angegebenen String (im Beispiel status_byte)
und der Dateikennung ".csv".
Die Dateibeschreibung in der Konfigurationsdatei f<>r
das obige Beispiel sieht wiefolgt aus:
messdat.typ: nfs
messdat.interface: rcp
messdat.host: uxpdb1
messdat.directory: /hw/messdat/%{TYP}/
messdat.filename: %{TTNR}%{TYP}%{VARIANTE}_
%{ECUID}_%{KNOTEN}_%{SECTION}_
%{DAY}%{MONTH}%{YEAR}
Ist fuer messdat.interface rcp eingetragen wird die
Messdatendatei auf /LocalDisk/config/ gespeichert,
anschliessend wird die datei auf messdat.host (uxpdb1)
kopiert und anschliessend gel<65>scht.
Bei allen anderen Werte f<>r messdat.interface wird die
Datei unter dem messdat.directory angelegt und nicht
auf messdat.host kopiert.
5: String der in dem Parameter SUB_DIRECTORY uebergeben wurde.
d.h.: dieser Wert wird an den uebergebenen Service vom
"messdar.diretory" angehaengt
6: Ausgabe der Strings die in den Parametern HEADER_1
bis HEADER_9 uebergeben wurden.
Amschliessend werden die Daten mit ; getrennt gespeichert.
Beim Import wird der Dateiname zusammengesetzt aus dem Verzeichnis
im Service messdat.directory, dem String "messdat_read_", dem im
Parameter FILENAME gepeicherten String und der Dateikennung ".csv".
Die interne Struktur ist identisch wie unter Export beschrieben, wobei
die 6 Headerzeilen nicht ausgewertet werden.
Sind mehr Daten in der Datei gespeichert als Feldelemente definiert
sind, wird eine Fehlermeldung erzeugt. Es k<>nnen auch unterschiedlich
grosse Felder eingelesen werden. Das Einlesen eines Feldes kann mit einem
leeren String beendet werden.
Beschreibung der Modul<75>bergabeparameter:</pre><b><a name="param1">1</a> PRUEFSCHRITT</b><pre>
GAUDI Pr<50>fschritt
------------------------------</pre><b><a name="param2">2</a> POSITION</b><pre>
PAV- Position
------------------------------</pre><b><a name="param3">3</a> FILENAME</b><pre> Kuerzel das an den Dateinamen angefuegt wird
------------------------------</pre><b><a name="param4">4</a> SUB_DIRECTORY</b><pre> (neu, alter Name war KOMMENTAR)
Kommentarzeile die beim exporieren in den Header in Zeile 5 geschrieben wird.
zus<75>tzlich kann hier der Subdirectory-Name angegeben werden f<>r Read/Write
------------------------------</pre><b><a name="param5">5</a> MODUS</b><pre> R = lesen (importieren) von einer Datei in bis zu 9 Feldern
RI= lesen einer intern von einem CCS-Modul geschriebenen Datei
W = schreiben (exportieren) von bis zu 9 Feldern in eine Datei
------------------------------</pre><b><a name="param6">6</a> FORMAT</b><pre>
ASCII
------------------------------</pre><b><a name="param7">7</a> HEADER_1</b><pre> Headertext 1
------------------------------</pre><b><a name="param8">8</a> ARRAY_1</b><pre> Arrayvariable 1 oder Variable 1
------------------------------</pre><b><a name="param9">9</a> HEADER_2</b><pre> Headertext 2
------------------------------</pre><b><a name="param10">10</a> ARRAY_2</b><pre> Arrayvariable 2 oder Variable 2
------------------------------</pre><b><a name="param11">11</a> HEADER_3</b><pre> Headertext 3
------------------------------</pre><b><a name="param12">12</a> ARRAY_3</b><pre> Arrayvariable 3 oder Variable 3
------------------------------</pre><b><a name="param13">13</a> HEADER_4</b><pre> Headertext 4
------------------------------</pre><b><a name="param14">14</a> ARRAY_4</b><pre> Arrayvariable 4 oder Variable 4
------------------------------</pre><b><a name="param15">15</a> HEADER_5</b><pre> Headertext 5
------------------------------</pre><b><a name="param16">16</a> ARRAY_5</b><pre> Arrayvariable 5 oder Variable 5
------------------------------</pre><b><a name="param17">17</a> HEADER_6</b><pre> Headertext 6
------------------------------</pre><b><a name="param18">18</a> ARRAY_6</b><pre> Arrayvariable 6 oder Variable 6
------------------------------</pre><b><a name="param19">19</a> HEADER_7</b><pre> Headertext 7
------------------------------</pre><b><a name="param20">20</a> ARRAY_7</b><pre> Arrayvariable 7 oder Variable 7
------------------------------</pre><b><a name="param21">21</a> HEADER_8</b><pre> Headertext 8
------------------------------</pre><b><a name="param22">22</a> ARRAY_8</b><pre> Arrayvariable 8 oder Variable 8
------------------------------</pre><b><a name="param23">23</a> HEADER_9</b><pre> Headertext 9
------------------------------</pre><b><a name="param24">24</a> ARRAY_9</b><pre> Arrayvariable 9 oder Variable 9
------------------------------</pre><b><a name="param26">26</a> FEHLERFLAG</b><pre>
...
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,161 @@
<HTML>
<HEAD>
<TITLE>E_AWG</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>E_AWG</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
*
* Revision 1.1 2001/12/18 10:52:19 sgc3sa
* Anpassungen fuer Linux und QT
*
* Revision 1.5 2001/06/19 14:42:58 lehmann
* Linux <20>ndeungen
*
* Revision 1.4 2000/02/16 12:15:28 klm3sa
* *** empty log message ***
*
* Revision 1.3 1999/12/22 10:06:01 keppler
* $ID -&gt; $Id
*
* Revision 1.2 1999/12/22 09:12:30 keppler
* $Header -&gt; $Id
*
* Revision 1.1 1999/12/20 15:47:02 juilfs
* Init
*
* Revision 1.1 1999/11/23 14:23:40 katzenma
* Initial Version by Sniff
*
Revision 1.0 1999/05/05 mr/SSE (M.Riethmueller)
Erstellt
Includes
!! changed code will be overwritten!!
-- pragmas -----------------------------------------------------------
#pragma COPYRIGHT "Robert Bosch GmbH Salzgitter, SaW/TEF7.2"
#pragma VERSIONID "$Id: e_awg.C,v 1.4 2004/03/23 15:53:45 lehmann Exp $"
-- defines -----------------------------------------------------------
#define HEADER "$Id: e_awg.C,v 1.4 2004/03/23 15:53:45 lehmann Exp $"
#define EXTERN extern Bei allen Subroutinen
-- includes ----------------------------------------------------------
//#include "unit_nummern.H"
#include "shm_syscom.H"
#include "ccl_defines.H"
#include "libccs.H"
#include "libtestmodul_pool.H"
#include &lt;stdlib.h&gt;
#include &lt;stdio.h&gt;
#include &lt;string.h&gt;
-- external functions / variables ------------------------------------
extern struct Pruefprogramm_verwaltung *Ssp_pp_verwaltung;
-- global variables (nur im "main" erlaubt) -------------------------
locale variables
static const unsigned short PRUEFSCHRITT = 1;
static const unsigned short POSITION = 2;
static const unsigned short ANSTEUER_UNIT = 3;
&lt;userdoc&gt;
Funktionsbeschreibung:
Index der expandierten Pruefliste, und der Name der
anzusteuerenden Unit werden ermittelt und via Message-Queue
an den Prozess AWG uebermittelt.
Beschreibung der Moduluebergabeparameter:</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>
z.B.: GEN_AMPL1_1 (siehe aktuelles HW-Config-File)
------------------------------</pre><b><a name="param4">4</a> SIGNALFILE</b><pre>
Name der Signaldatei ohne Extension (".cnf")
------------------------------</pre><b><a name="param5">5</a> START_SIGNAL</b><pre>
Name des zu startenden Signals falls nicht gleich wie P4
------------------------------</pre><b><a name="param6">6</a> CLOCK</b><pre>
INT|INTERN / EXTERN: Grundtakt
------------------------------</pre><b><a name="param7">7</a> OUTPUT</b><pre>
ON / OFF: Signal soll am Ausgang anliegen ja/Nein
------------------------------</pre><b><a name="param8">8</a> IMPEDANCE</b><pre>
NORM|50 / LOW: Impedanz des Ausgangs
------------------------------</pre><b><a name="param9">9</a> ATTENUATOR</b><pre>
ON / OFF: Abschwaecher ein/aus
------------------------------</pre><b><a name="param10">10</a> TIEFPASS</b><pre>
ON / OFF: Tiefpass ein/aus
------------------------------</pre><b><a name="param11">11</a> RUN_MODE</b><pre>
SINGLE / LOOP: Signal als 'Single Shot' oder kontinuierlich
------------------------------</pre><b><a name="param12">12</a> RUN_STOP</b><pre>
RUN / SYN / STOP / -
RUN: Signal sofort starten
SYN: Beide Kanaele starten (vorher anderen Kanal mit '-'
programmieren)
STOP: Signal stoppen
'-': nur Signal programmieren (spaeter mit SYN starten)
------------------------------</pre><b><a name="param13">13</a> IN_TR_MODE</b><pre>
SOF|SOFTWARE/FRONT/TTL/NONE/FREE
------------------------------</pre><b><a name="param14">14</a> IN_TTL_TR</b><pre>
OFF/0/1/2/3/4/5/6/7
------------------------------</pre><b><a name="param15">15</a> IN_TR_ART</b><pre>
OFF/EDGE/LEVEL
------------------------------</pre><b><a name="param16">16</a> IN_TR_FLAN</b><pre>
OFF/POS/NEG
------------------------------</pre><b><a name="param17">17</a> OU_TR_MODE</b><pre>
OFF/MARKER/FRONT
------------------------------</pre><b><a name="param18">18</a> OU_TTL_TR</b><pre>
OFF/0/1/2/3/4/5/6/7
------------------------------</pre><b><a name="param19">19</a> FREQ_PREC</b><pre>
Maximal erlaubte Frequenzabweichung in Promille, sonst
Fehlermeldung
------------------------------</pre><b><a name="param20">20</a> AMPL_PREC</b><pre>
Maximal erlaubte Amplitudenabweichung in Promille, sonst
Fehlermeldung
------------------------------
Input:
shm_stringpointer *zeilen_wert - hierueber erhaelt die Funktion
den Zugriff auf den tatsaechl.
Inhalt, naemlich den Wert,
in der Parameterzeile;
long index_oePrfL - die Positionsangabe der Parameter im
Parameterarray des SHM;
long anzahl - die Anzahl der fuer dieses Modul
relevanten Parameter;
Output: none
----------------------------------------------------------
Return Value:
= 0: normaler Durchlauf oder der Schrittbetrieb ist
aktiviert und die Pruefschrittnummer ungleich 1;
= -1: die Funktion "msg_send_wait" meldete einen Fehler,
der auf ein Kommunikationsproblem oder einen Timeout
hindeutet;
die Interprozess-Kommunikation zum AWG-Prozess wurde
mit einer Fehlermeldung beendet;
----------------------------------------------------------
Beispiel (optional):
----------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,76 @@
<HTML>
<HEAD>
<TITLE>E_BITS</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>E_BITS</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_bits.C,v 1.8 2005/12/01 09:14:48 wes3rt Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Anschaltung der Bits des FlashPam
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_bits.C
Autor: RtW/TEF72-Wiese (1.2.96)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_bits(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Aufgabe des Moduls ist, die Relais auf der prueflingsspezifischen Platine
zu setzen.
Attention: It is necessary to intialize the Unit with Modul P_STEUER before E_BITS
<20>bergabeparameter
MD,E_BITS</pre><b><a name="param1">1</a> PRUEFSCHRITT</b><pre>1</pre><b><a name="param2">2</a> POSITION</b><pre> 2</pre><b><a name="param3">3</a> UNIT</b><pre> 3</pre><b><a name="param4">4</a> BIT0</b><pre> 4</pre><b><a name="param5">5</a> BIT1</b><pre> 5</pre><b><a name="param6">6</a> BIT2</b><pre> 6</pre><b><a name="param7">7</a> BIT3</b><pre> 7</pre><b><a name="param8">8</a> BIT4</b><pre> 8</pre><b><a name="param9">9</a> BIT5</b><pre> 9</pre><b><a name="param10">10</a> BIT6</b><pre> 10</pre><b><a name="param11">11</a> BIT7</b><pre> 11
UNIT:
Ziel der Karte, auf der die ausgabe erfolgen soll.
Momentan nur m<>glich (auch durch Gaudi gepatcht:)
BITS_01 - BITS_04 -&gt; Umlenkung per HW-CONFIG-File auf SKM_01-SKM_04
Bit0-7 :
Hier kann ON oder OFF eingegeben werden. Kommentare muessen durch
"/" abgetrennt werden. Hierbei ist es moeglich, den Bits je nach Produkt
einen sinnvollen Namen zu geben
ACHTUNG: Fuer SKMlight stehen nur die Bits 0-5 zur Verfuegung
Beispiel:
BIT0 ON /OFF ON / Kl.15
BIT1 ON /OFF ON / UB
BIT2 ON /OFF ON / ESP_RECHT
BIT3 ON /OFF ON / ESP_DIR
...
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,67 @@
<HTML>
<HEAD>
<TITLE>E_BOSCHK_IN</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>E_BOSCHK_IN</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_boschk_in.C,v 1.6 2005/09/01 07:11:40 sniff Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Liest eine Anzahl von Datenworte von einer
Boschbuskarte.
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_boschk_in.C
Autor: RtW/TEF72-Juilfs (12.12.95)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_boschk_in(
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Dieses Modul liest die gewuenschte Anzahl an Datenworten aus der ueber
die Unit referenzierten Karte aus. Das Lesen erfolgt durch den Prozess
Boschbus.
Beschreibung der Modul<75>bergabeparameter:</pre><b><a name="param1">1</a> PRUEFSCHRITT</b><pre>
GAUDI Pr<50>fschritt
------------------------------</pre><b><a name="param2">2</a> POSITION</b><pre>
PAV- Position
------------------------------</pre><b><a name="param3">3</a> ANSTEUER_UNIT</b><pre> Unit Name. In der Unit ist die Kartennummer und Unteradresse
definiert
------------------------------</pre><b><a name="param4">4</a> WORD_START</b><pre> Index von dem ab die Karte ausgelesen werden soll. Der Index
beginn ab 1. Ein Element des Feldes ist 16Bit lang.
------------------------------</pre><b><a name="param5">5</a> WORD_END</b><pre> Index bis zu dem die Karte ausgelesen werden soll. Der Index
beginn ab 1. Ein Element des Feldes ist 16Bit lang.
------------------------------</pre><b><a name="param6">6</a> ERGEBNIS</b><pre> in dieser Variable werden die gelesenen Daten gespeichert.
Werden mehr als 1 Datenwort angefordert, muss die Variable
eine Array-Variable vom typ int sein.
------------------------------</pre><b><a name="param7">7</a> FEHLERFLAG</b><pre> wird gesetzt falls die Daten nicht gelesen werden konnten
...
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,60 @@
<HTML>
<HEAD>
<TITLE>E_CC_INIT</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>E_CC_INIT</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_cc_init.C,v 1.3 2004/06/18 15:01:21 aatef Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Initialisieren camera_calibration
---------------------------------------------------------------------
Projekt: IVS
Sourcefile: e_cc_init.C
Autor: RtW/TEF32-Aatef (02.03.2004)
Zielsystem: SuSE Linux 8.1
Sprache: ANSI-C
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_cc_init(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Aufrufparameter laut Modglobal.
&lt; 1&gt; PRUEFSCHRITT
&lt; 2&gt; POSITION
&lt; 3&gt; WIDTH
&lt; 4&gt; HEIGHT
&lt; 5&gt; MODEL_FILENAME
( 6) PS_FLAG
( 7) PSV_FILENAME
( 8) IOR_ESTIMATION_FLAG
( 9) IP_FILENAME
(10) ERRORFLAG
Aufgabe des Modules ist es, die camera_calibration zu initialisieren.
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,58 @@
<HTML>
<HEAD>
<TITLE>E_CC_RUN</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>E_CC_RUN</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_cc_run.C,v 1.2 2004/06/18 15:01:21 aatef Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Berechnet camera_calibration parameter
---------------------------------------------------------------------
Projekt: IVS
Sourcefile: e_cc_run.C
Autor: RtW2/TEF32-Aatef (08.03.2004)
Zielsystem: SuSE Linux 8.1
Sprache: ANSI-C
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_cc_run(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Aufrufparameter laut Modglobal.
&lt; 1&gt; PRUEFSCHRITT
&lt; 2&gt; POSITION
&lt; 3&gt; SM_ADDRESS Adresse vom Bild in shardmemory
&lt; 4&gt; RES_SKEWANGLE
( 5) RES_ROLLANGLE
( 6) RES_GIERANGLE
( 7) RES_DISTANTION
( 8) RES_RESOLUTION
( 9) ERRORFLAG
Aufgabe des Modules ist es, die camera_calibration Parameter zu berechnen.
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,114 @@
<HTML>
<HEAD>
<TITLE>E_CLOCK2</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>E_CLOCK2</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_clock2.C,v 1.4 2004/05/21 07:31:49 sniff Exp $
---------------------------------------------------------------------
Kurzbeschreibung:Initialisieren des externenen Clock2 fuer BOSCH_OUT
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_clock2.C
Autor: RtW/TEF72-Wiese (30.04.96)
Zielsystem: HP9000/V743 (HP-RT 2.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_clock2(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
if (error == -1)
{
// Fehlerbehandlung
}
---------------------------------------------------------------------
<20>bergabeparameter anhand der Modglobal.stl
MD,e_clock2</pre><b><a name="param1">1</a> ,PRUEFSCHRITT</b><pre>1</pre><b><a name="param2">2</a> ,POSITION</b><pre> 2
,EXT_CLK2_LINE 3
,TIMEOUT 4
,CLK2_OUT_LINE 5
Funktionsbeschreibung:
Das Einstell - Modul e_clock2 setzt Variablen, die den E_OUT in
der CLOCK2 Funktion steuern.
Der CLOCK 2 ist das Signal auf dem Boschbus, das die Karten nach
dem Beschreiben mit den entsprechenden Daten aktiviert. Bei Ausgabe des
Clock2 werden die Daten aus dem Primaerspeicher der Karten in den
sekundaerspeicher der Karten umgeschpeichert und damit die Relais oder
Steuersignale geschaltet.
Bei Aktivierung des EXTERNEN CLOCK2 wird der CLOCK2
nicht sofort nach Ausgabe der Daten ausgegeben, sondern erst nach
Generierung des Trigger auf der gesetzten VXI - Triggerline.
Nach jedem e_clock2 muss immer ein E_OUT erfolgen, um die Funktion zu
aktivieren. Das E_clock2 ist nur eine Steuerfunktion fuer den E_OUT</pre><b><a name="param3">3</a> EXT_CLK2_LINE:</b><pre>Linie, auf die getriggert werden soll
(0-7) -1: Abschalten</pre><b><a name="param4">4</a> TIMEOUT:</b><pre> Timeout in ms, innerhalb dieser Zeit
der Trigger kommen muss. Der Timeout mu<6D> kleiner als
der Timeout des Boschout - Prozesses sein.</pre><b><a name="param5">5</a> CLK2_OUT_LINE</b><pre>= Ausgabe eines Triggers auf der jeweiligen Triggerline,
wenn ein Clock2 ausgegeben wird. (0-7) -1: Abschalten
Fuer die Funktion externer Clock2 gibt es verschiedene Aufrufmodi:
EXT_CLK2_LINE&lt;0,
-&gt; Wegschalten der Funktion
-&gt; Normaler Clock2
0&lt;=EXT_CLK2_LINE&lt;=7, TIMEOUT==0
-&gt; Initialisieren der Funktion
-&gt; scharfmachen der vxk5010 beim naechsten e_out auf eine Triggerline,
Ausgabe des Clock2 wenn ein Trigger auf dieser Linie erfolgt ist. Der
naechste Clock2 wartet nicht auf den Trigger
0&lt;=EXT_CLK2_LINE&lt;=7, TIMEOUT&gt;0 -&gt; Initialisieren der Funktion falls es noch
nicht erfolgt ist und warten auf den Trigger. Falls in der Zwischzeit
schon ein Trigger erfolgt ist wird die vxk5010 daraufhin verifiziert
und das Modul verlassen. Wenn innerhalb der Timeoutzeit kein Trigger
erfolgt, wird eine Errormessage ausgegeben.
Revision 1.1 2001/12/18 10:24:34 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.3 1999/12/22 10:06:06 keppler
$ID -&gt; $Id
Revision 1.2 1999/12/22 09:16:56 keppler
$Header -&gt; $Id
Revision 1.1 1999/11/23 14:14:18 katzenma
Initial Version by Sniff
Revision 1.1 98/09/10 17:24:02 17:24:02 wiese (Stefan Wiese)
Initial revision
Revision 1.1 97/12/02 14:24:42 14:24:42 juilfs (Joerg Juilfs)
Initial revision
Revision 1.1 96/07/10 10:26:04 10:26:04 keppler (Fritz Keppler)
Initial revision
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,60 @@
<HTML>
<HEAD>
<TITLE>E_CONNECT</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>E_CONNECT</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_connect.C,v 1.8 2005/09/01 07:11:40 sniff Exp $
---------------------------------------------------------------------
Kurzbeschreibung:
---------------------------------------------------------------------
Projekt: TS2000
Sourcefile: e_connect
Autor: RtW/TEF72-Wiese (15.01.99)
Zielsystem: HP9000/V743 (HP-RT 2.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_connect(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Dieses Modul hat
<20>bergabeparameter anhand der Modglobal.stl
------------------------------------------
MD,E_CONNECT</pre><b><a name="param1">1</a> PRUEFSCHRITT</b><pre></pre><b><a name="param2">2</a> POSITION</b><pre></pre><b><a name="param3">3</a> TRG_NAME1</b><pre> :Name der als INPUT definiert wurde</pre><b><a name="param4">4</a> TRG_NAME2</b><pre> :Name der als OUTPUT definiert wurde und mit TRG_NAME1
verbunden werden soll</pre><b><a name="param5">5</a> MODE</b><pre> :CONNECT: Verbinden von TRG_NAME2 auf TRG_NAME1
DISCONNECT: Trennen von TRG_NAME2 von TRG_NAME1
Returnparameter
keine
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,101 @@
<HTML>
<HEAD>
<TITLE>E_CONVERT</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>E_CONVERT</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_convert.C,v 1.6 2005/07/01 12:23:50 klm3sa Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Konvertieren von Zahlenstrings in andere Zahlenstrings
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_convert.C
Autor: RtW2/TEF72-Wiese (31.08.00)
Zielsystem: HP9000/V743 (HP-RT 3.01)
Sprache: ANSI-C/C++
---------------------------------------------------------------------
Prototyp:
int e_convert
(shm_stringpointer *zeilen_wert // &lt;I&gt; Gaudi-Paramter - Feld
,long index1 // &lt;I&gt; Stelle der Modul - Parameter
,long anzahl) // &lt;I&gt; anzahl Modul Paramter
---------------------------------------------------------------------
Aufruf:
error = e_convert
(s*zeilen_wert // &lt;I&gt; Gaudi-Paramter - Feld
,index1 // &lt;I&gt; Stelle der Modul - Parameter
,anzahl) // &lt;I&gt; anzahl Modul Paramter
if (error != 0) // Fehlerbeschreibung ...
{
// Fehlerhandling ...
}</pre><b><a name="param1">1</a> #define</b><pre>PRUEFSCHRITT</pre><b><a name="param2">2</a> #define</b><pre>POSITION
#define VARIABLEN_WERT
#define VARIABLEN_TYP
#define ANZ_STELLEN</pre><b><a name="param6">6</a> #define</b><pre>FEHLERFLAG
#define ERGEBNIS
---------------------------------------------------------------------
Funktionsbeschreibung:
Dieses Modul Wandelt einen String nach den Einheitenvorgaben der
PAV (ecumemdatastr) um und gibt den Wert zur<75>ck.
Die Eingabevariable wird <20>berpr<70>ft auf
0x????: Hexadezimal
1234: Integer
01234: Oktal
1234.5 Float
Die Ausgabe wird gewandelt nach der VARIABLEN_TYP:
I, INT: Wandeln in eine Integerzahl (Basis 10): Floingpointzahlen werden
als INT ausgegeben, wenn der Nachkommateil==0 ist
B, BIN: Wandeln in eine Bin<69>rzahl zur Basis 2. Vorgabe wie oben.
H, HEX: Wandeln in eine HEX - Zahl zur Basis 16. Ausgabe ohne "0x"
F : Wandeln in eine Floatingpointzahl mit mindestens einer Nachkommastelle
DEZ : Wandeln in eine Floatingpointzahl auch ohne Nachkommastellen
S,STR : Interpretiert den Eingabestring nicht und gibt Ihn weiter.
Der Parameter MAXLEN f<>llt f<>hrende NULLEN auf. Bei MAXLEN==0 wird der String ohne
<20>nderung ausgegeben.
SONDERFALL: Einheit "F": MAXLEN gibt die Anzahl der Nachkommastellen an. Fehlende
Nachkommastellen werden mit 0 gef<65>llt.</pre><b><a name="param3">3</a> VARIABLENWERT:</b><pre>Eingabevariable</pre><b><a name="param4">4</a> VARIABLENTYP:</b><pre>AusgabeTYP (siehe oben)</pre><b><a name="param5">5</a> ANZ_STELLEN:</b><pre>Anzahl der Ausgabestellen. 0: Keine <20>nderung der Eingabel<65>nge</pre><b><a name="param7">7</a> ERGEBNIS:</b><pre>Ausgabevariable</pre><b><a name="param8">8</a> EXECUTION:</b><pre>
Hiermit steuert der Anwender wann E_CONVERT
arbeiten soll.
LOAD
Ausfuehrung nur im Ruestlauf.
FIRST
Ausfuehrung nur im ersten Listenlauf nach einem Ruestlauf.
TEST
Ausfuehrung nach einem Ruestlauf mit jedem weiteren Listenlauf.
default (wenn keine der obigen Angaben) z.B. - oder OMO oder ...
Ausf<73>hrung immer
Revision 1.1 2001/12/18 10:25:31 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.2 2000/09/01 07:55:56 wiese
$HEADER -&gt; $ID
Doku erweitert
Revision 1.1 2000/08/31 14:04:36 wiese
E_ECUMEMDATA1 und E_CONVERT fuer
ECUMEMDATASTR und ECUMEMDATANUM neu
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,311 @@
<HTML>
<HEAD>
<TITLE>E_DEVICE</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>E_DEVICE</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
Funktionsbeschreibung:
Mit diesem Modul werden Einstellparameter an ein SICL-Device
(Schnittstelle: HPIB- oder VXI) gesendet.
Wichtig: Fuer den zugrundeliegenden Prozess muss eine
Konfigurationsdatei existieren, "sicl_device_com.cnf".
In dieser Datei werden je Device Aktionsprofile fuer
Fehlerbearbeitung bei Sende- bzw. Leseoperationen
hinterlegt.
Darueberhinaus enthaelt diese Datei Device-spezifische
und somit fuer jeden Devicetyp einmalig festlegbare
Konfigurationsinformationen.
Eine detaillierte Beschreibung des Dateiaufbaus findet
sich u.a. auch in der Framemaker-Datei:
".../6_testmodul_pool/sicl_device_com/doc/device_process.frm".
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> DEVICENAME</b><pre>
z.B. DIGITIZER_01
hiermit wird mithin ein Devicename angegeben, der (z.Zt. noch)
in der Datei "hw_vxi_geraete_x...xx.cnf" angegeben sein muss
(dies braucht nicht vom Anwender dieses Moduls getan zu werden);
mit den darin enthaltenen Informationen laesst sich ein
SICL-Device am VXI- bzw. HPIB-Bus ueber seine Adresse identifizieren
und ansteuern;
------------------------------</pre><b><a name="param4">4</a> FUNCTION</b><pre>
mit jeder Verwendung dieses Moduls kann einer der folgenden
Schluessel angegeben werden:
INIT (=initialisieren)
Die ab CHANNEL_PRMTR und/oder durch vorangegangene mehrmalige
Aufrufe mit FUNCTION = 'CONT' hinterlegten Datenstrings werden
unmittelbar nach dem Ruestlauf, dh. im ersten(!) Listenlauf an
das ausgewaehlte Device uebertragen.
&gt;&gt;&gt; In allen weiteren Listenlaeufen findet &lt;&lt;&lt;
&gt;&gt;&gt; keine Uebertragung dieser Daten statt! &lt;&lt;&lt;
&gt;&gt;&gt; (wird durch den Prozess selbst gesteuert) &lt;&lt;&lt;
SEND (=senden)
Die ab CHANNEL_NO und/oder durch vorangegangene mehrmalige
Aufrufe mit FUNCTION = 'CONT' (s.u.) hinterlegten Datenstrings
werden mit jedem Listenlauf (ausser im Ruestlauf) an das
ausgewaehlte Device uebertragen.
RCV / RCVFAST / RCV_n / RCVFAST_n / RCV_n_m / RCVFAST_n_m
(=senden+lesen / 'send+receive fast' Channel n (bis m) )
Wie zuvor 'SEND', jedoch wird nach dem Senden der Daten (in der
Regel ein Abfragekommando) eine Antwort vom Device ausgelesen.
Aus der Antwort koennen anschliessend mit Hilfe des Moduls
"M_DEVICE" (evtl. mehrmals nacheinander) die fuer die Auswertung
(mit "M_AUSWERTUNG") relevanten Bestandteile extrahiert werden.
Im FAST-Modus werden Daten in 16 oder 32 Bit Integerformat
uebertragen (in der Konfigurationsdatei muss dazu ein entsprechender
Eintrag vorhanden sein - Default ist 16).
Die 'n'- bzw. 'm'-Parameter ermoeglichen die Zuordnung der
empfangenen Daten zu einem bestimmten oder mehreren Kanaelen:
Beispiele:
RCV es werden ASCII-Daten fuer Kanal 1 gelesen;
dies ist die normale Verwendung bei Devices, die nicht ueber
mehrere Kanaele verfuegen oder dies nach aussen nicht
unmittelbar darstellen koennen (dennoch kann der empfangene
Datenstrom ueber eine interne Struktur verfuegen, dh.
mehrdimensional sein);
RCV_n es werden ASCII-Daten fuer den Kanal n gelesen;
RCVFAST_n_m es werden Daten im "fast access mode" fuer Kanal
n bis m gelesen;
Wichtig: Die interne Struktur des zu lesenden Datenstroms muss
in der Konfigurationsdatei spezifiziert worden sein!
Dies ist fuer den nachfolgenden Auswerteschritt mit
M_DIGITIZER wichtig.
CONT (=continue, fuer groessere Datenmengen, dh. laengere
Kommandosequenzen)
Die Daten werden Prozess-intern gespeichert und mit jedem
Aufruf, der auch das FUNCTION-Schluesselwort 'CONT' enthaelt,
zeilenrichtig (fuer den Fall, dass die Einstellung eines Device
von der Reihenfolge der dargebotenen Informationen abhaengt)
aneinandergehaengt.
FILE (=Datei uebertragen)
im Feld FILENAME kann ein Dateiname (inkl. Pfad) angegeben werden;
der Dateiinhalt wird unmittelbar nach dem Ruestlauf mit Beginn
des ersten Listenlaufs (und nur dann) komplett an das angegebene
Device uebertragen;
Wichtig: Intern wird 'FILE' wie 'CONT' behandelt, dh. ohne einen
nachfolgenden Modulaufruf mit FUNCTION = 'INIT', bei
der dann auch noch ein Nachspann (--&gt; GENERAL_PRMTR01)
angegeben werden kann, findet keine Dateiuebertragung
statt.
SYNC
Spielt mit dem Konfigfileeintrag "DEVICENAME_OPERATIONCOMPLETE_CMD = Zeichenkette"
zusammen. Hiermit kann ein Kommando angegeben werden, mit dem ein Device
die vollstaendige Abarbeitung eines oder mehrerer Kommandos
im Event- oder Statusbyte anzeigt;
bei SCPI-konformen Devices handelt es sich um das Kommando '*OPC';
dieses Kommando wird im Modus 'SYNC' des GAUDI-Moduls 'E_DEVICE'
im Anschluss an eine Folge von Kommandos an das jeweilige Device
uebertragen, um anschliessend auf einen ServiceRequest zu warten;
diese Vorgehensweise bedingt, dass das Device ueber ein Eventbyte
mit OperationComplete-Bit und ueber ein jenem zugeordnetes Bit im
Statusbyte verfuegt;fuer 80 Zeichen aus);
der Anwender muss zur Aktivierung ein Kommando der Art
'*ESE xx;*SRE yy' waehrend der Initialisierung an das Device senden;
(Default: keine Zeichenkette)
------------------------------</pre><b><a name="param5">5</a> RCV_DATAFORMAT</b><pre>
STRING / ASCII / BINARY16 / SBINARY16 / BINARY32 / SBINARY32
STRING:
Devices deren Antwort eine Folge von ASCII-Zeichen ist;
diese Antwort kann ueber eine interne Struktur verfuegen
und aus mehr als einem Wert (in ASCII-Darstellung) bestehen;
der Anwender waehlt diese Formatangabe, wenn er gezielt einzelne
Bereiche einer Geraete-Antwort analysieren moechte;
dazu sind im Modul 'M_DEVICE' folgende Angaben notwendig:
- Auswahl der ACTION = GET_FIELD;
bei Auswahl eines bestimmten durch Begrenzer abgetrennten Feldes:
- ACTION_PRMTR erhaelt die Nummer des Feldes
(gezaehlt wird von 1 an!)
- Angabe eines DATA_SEPARATOR in Hochkommata,
das ist der Begrenzer des Feldes;
bei Auswahl eines Bereichs innerhalb der empfangenen Antwort:
- ACTION_PRMTR erhaelt in diesem Fall ein "-";
- START / END erhalten die Start- und Endeposition des ersten
und letzten Zeichens des Abschnitts, der aus der Antwort extrahiert
werden soll; (gezaehlt wird von 1 an!)
z.B.: Device meldet: "Hallo, mein Sohn Brutus, Du Moerder!"
(natuerlich ohne Hochkommata!)
ACTION GET_FIELD
ACTION_PRMTR1 2
ACTION_PRMTR2 ","
RESULT_VALUE " mein Sohn Brutus"
oder
ACTION GET_FIELD
ACTION_PRMTR1 -
ACTION_PRMTR2 -
START 8
END 23
RESULT_VALUE "mein Sohn Brutus"
Wichtig: Das/der erste Feld/Abschnitt beginnt natuerlich nicht
mit einem Begrenzungszeichen.
Das/der letzte Feld/Abschnitt beginnt mit dem angegebenen
Begrenzungszeichen und endet mit einer evtl. vom Device
uebertragenen Endekennung (z.B. CR/LF).
ASCII:
Device-Antworten als Folge von Messwerten in ASCII-Darstellung.
Die interne Struktur soll ausgewertet (&gt;DATASEPARATOR) und fuer
weitere Aktionen - ACTION - in Floatingpoint-Werte gewandelt werden.
Der Parameter DATASEPARATOR muss fuer den Fall das/die ASCII-Zeichen
enthalten, mit dem/denen die Daten voneinander getrennt werden.
Enthaelt die Device-Antwort Daten fuer mehrere Kanaele, muss dies
im Parameter FUNCTION = RCV... des Moduls 'E_DEVICE' angegeben worden
sein.
BINARY16/SBINARY16
Device-Antworten als Folge von Binaerwerten (ohne/mit Vorzeichen-Bit).
Die interne Struktur dieser Daten wird in der Konfiguratonsdatei
fuer den entsprechenden Devicetyp angegeben (s.Dokumentation in
'device_process.frm').
Enthaelt die Device-Antwort Daten fuer mehrere Kanaele, muss dies
im Parameter FUNCTION = RCV... des Moduls 'E_DEVICE' angegeben worden
sein.
BINARY32/SBINARY32
Device-Antworten als Folge von Binaerwerten (ohne/mit Vorzeichen-Bit).
Die interne Struktur dieser Daten (z.B. 2 Datenwerte zu 16Bit pro
32Bit-Wort) wird in der Konfiguratonsdatei fuer den entsprechenden
Devicetyp angegeben (s.Dokumentation in 'device_process.frm').
Enthaelt die Device-Antwort Daten fuer mehrere Kanaele, muss dies
im Parameter FUNCTION = RCV... des Moduls 'E_DEVICE' angegeben worden
sein.
------------------------------</pre><b><a name="param6">6</a> DATASEPARATOR</b><pre>
Ein oder mehrere ASCII-Zeichen, mit dem/denen die von einem Device
empfangenen Daten voneinander getrennt sind (unterschieden werden koennen).
Das/die Zeichen werden zwischen Anfuehrungszeichen gesetzt.
Beispiel: ", ,"
Der Datenseparator besteht aus 3 Zeichen einem Komma, einem
Leerzeichen und einem weiteren Komma.
------------------------------</pre><b><a name="param7">7</a> RCV_DATARANGE</b><pre>
Angabe des Wertebereichs (inkl. Einheit) des Kanals bzw. der Kanaele,
fuer den/die Daten aufbereitet werden sollen.
Die minimale Angabe beschraenkt sich auf den Kanal der mit diesem Aufruf
bearbeitet werden soll.
Beispiel: CH1:U20V;CH2:B10V;...
Kanal1: Range 20 Volt unipolar
Kanal2: Range 10 Volt bipolar
Es k<>nnen auch Kanalbereiche mit der Syntax CH&lt;min_kanal&gt;-CH&lt;max_kanal&gt;
angegeben werden, z.B.: CH1-CH10:B40V
------------------------------</pre><b><a name="param8">8</a> RCV_DATARATE</b><pre>
Fuer Auswertungen ueber einen Zeitbereich wird hier spezifiziert, mit
welcher Datenrate Daten empfangen wurden.
Einheit ist 1/sec.
Ein Wert von 10000 bedeutet, dass 10000 Werte pro Sekunde vom
Device ermittelt wurden;
Beispiel: CH1:10000;CH2:20000;...
------------------------------</pre><b><a name="param9">9</a> RCV_NUMBER</b><pre>
Der Anwender gibt hiermit die Anzahl der Bytes an, die nach einem
FETCH:...? oder anderen Abfragekommando mindestens gelesen werden
sollen.
Die Angabe ist notwendig, sofern von einem Device stark differierende
Datenmengen (mit evtl. unterschiedl. Datenformaten) ausgelesen werden
koennen. Anderenfalls gilt der Eintrag in der Konfigurationsdatei (s.u.).
Im Fast-Mode (RCVF...) werden - entgegen der sonst ueblichen Weise -
nicht Bytes, sondern (per direktem Registerzugriff) Datenwoerter
(16/32Bit) eingelesen. Hierbei entspricht jedes Datenwort mindestens
einem Messwert.
Die Groesse eines Datenwortes in Bytes muss in der Konfigurationsdatei
spezifiziert worden sein (s.Dokumentation in 'device_process.frm').
Diese Information wird nur im Modus FUNCTION = 'RCV...' benoetigt.
Default: '-' die MaxAnzahl-Information aus der Konfigurationsdatei
wird genommen (s.Dokumentation);
------------------------------</pre><b><a name="param10">10</a> TIMEOUT</b><pre>
Wert in Millisekunden, der die maximale Wartezeit fuer eine
Geraeteantwort festlegt (nur bei FUNCTION = 'RCV...' von Bedeutung);
Default-Einstellung: 10000ms = 10s
------------------------------
Wichtig: Bei Function 'CONT' werden die in aufeinanderfolgenden Modul-
aufrufen jeweils angegebenen Daten unmittelbar aneinander gehaengt.
Das bedeutet, dass zunaechst saemtliche Parameter von Position 8
verknuepft werden, dann die von Position 9 usw.:
==&gt; 81 82 83 ... 91 92 93 ... usw.
Ausnahme: die Parameter der Positionen 12 bis 16, sie werden mit
jedem Modulaufruf unmittelbar aneinandergehaengt:
==&gt; 121 131 141 151 161 122 132 142 152 162 ...</pre><b><a name="param11">11</a> ROUTING</b><pre>
Hiermit koennen z.B. die aktiven Kanaele definiert werden:
z.B.: ROUTe:OPEN|CLOSE|? [&lt;channel list&gt;]
------------------------------</pre><b><a name="param12">12</a> MEASURE_CTRL1</b><pre>
Hiermit lassen sich saemtliche Kommandos fuer die Steuerung der
Datenaufnahme eingeben:
z.B.: FREQency:RANGe [&lt;frequency&gt;] [&lt;group list&gt;]
[SENSe:]ROSCillator:SOURce INTernal | CLK10
SWEEP:POINts &lt;record length&gt; [&lt;group list&gt;]
------------------------------</pre><b><a name="param13">13</a> MEASURE_CTRL2</b><pre>
Hiermit kann z.B. fuer jeden Kanal der Messbereich eingestellt werden:
z.B.: [SENSe:]VOLTage[:DC]:RANGe[:UPPer] ,voltage&gt; [&lt;channel list&gt;]
------------------------------</pre><b><a name="param14">14</a> SIGNAL_GEN</b><pre>
Hier lassen sich Daten fuer Signalgenerierung eingeben.
------------------------------</pre><b><a name="param15">15</a> TRIGGER/ARMING</b><pre>
Hiermit lassen sich die Triggerbedingungen spezifizieren und
das Device scharf machen:
z.B.: ARM:SOURce EXTernal | IMMediate [&lt;group id&gt;]
TRIGger:SOURce IMMediate ...
OUTOut:TRIGger:SLOPe POSitive | NEGative ...
------------------------------</pre><b><a name="param16">16</a> GENERAL_PRMTR1</b><pre>
Hierin kann der Anwender beliebige sonstige an das Device zu
uebertragende Daten eingeben.
Keine Abfrage-Kommandos, dies wuerde zu Fehlfunktionen fuehren!
Wichtig: Diese Daten (~_PRMTR1 - ~_PRMTR4 FILENAME) werden je Modulaufruf
unmittelbar aneinandergefuegt:
~PRMTR1 ... ~PRMTR4 ~PRMTR1 ... ~PRMTR4 usw.
------------------------------</pre><b><a name="param17">17</a> GENERAL_PRMTR2</b><pre>
dito
------------------------------</pre><b><a name="param18">18</a> GENERAL_PRMTR3</b><pre>
dito
------------------------------</pre><b><a name="param19">19</a> GENERAL_PRMTR4</b><pre>
dito
------------------------------</pre><b><a name="param20">20</a> FILENAME</b><pre>
Name der Datei (inkl. Pfad), deren Inhalt im ersten(!) Listenlauf
vom Leitrechner (im SaW ist es der 'lrp3') geladen und an das
Device uebertragen werden soll.
Der Zugriffspfad muss im Konfigurationsfile (s.o.) angegeben sein!
------------------------------</pre><b><a name="param21">21</a> RCV_CTRL1</b><pre>
Hiermit lassen sich die Steuer-Parameter fuer den Datenzugriff
eingeben (vgl. FUNCTION RCV_... / RCVFAST_...)
z.B.: VXI:FDC:MODE ...
FORMAT:OVERrun &lt;boolean&gt;
FETCh:Data? [&lt;count&gt;][,&lt;starting address&gt;] [&lt;channel id&gt;]
Wichtig: Bei mehrkanaligen Devices ist es wichtig, im FUNCTION-Parameter
zu spezifizieren, fuer welche Kanaele die Daten vorliegen!
------------------------------</pre><b><a name="param22">22</a> RCV_CTRL2</b><pre>
dito
------------------------------</pre><b><a name="param23">23</a> ERRORFLAG</b><pre>
Dies Flag wird nur dann auf den Wert 1 gesetzt, sollte bei
FUNCTION = 'INIT', 'SEND', 'RCV...' oder 'RCVFAST..' ein Schreib-
bzw. Lesefehler erkannt worden sein.
Bei FUNCTION = 'FILE' wird das Errorflag gesetzt, wenn die Datei
nicht gelesen werden kann.
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,99 @@
<HTML>
<HEAD>
<TITLE>E_DOKU</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>E_DOKU</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_doku.C,v 1.8 2006/01/11 14:35:47 ggj3rt Exp $
---------------------------------------------------------------------
Kurzbeschreibung: erster-Schritt einer Testliste mit Nummer 1
---------------------------------------------------------------------
Projekt: BOSCH ccs
Sourcefile: e_doku.C
Autor: RtP2/TEF32-Gueltling
Zielsystem: SuSE Linux 8.2 HP-RT 3.01
Sprache: Ansi-C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
int e_doku(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
------------------------------------------------------------------------
Aufruf: im Vectorinterpreter
error = (*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
if (error == -1)
{
// Fehlerbehandlung
}
------------------------------------------------------------------------
Funktionsbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
Die Routine ist der Start-Schritt in einer Testliste. Die uebergebenen
Informationen werden in einen Strukt im Ssp_vi multienvironment
(Ss_e_doku) im shared Memory abgelegt.
Beschreibung der Informnationen (Beispiele in Klammern)
Kopie der Informationen in Ssp_vi-&gt;multi[Ssp_vi-&gt;test.multiindex].doku.
Folgende Elemente werden Besetzt:</pre><b><a name="param1">1</a> doku.autor</b><pre> : Urheber der Pruefliste</pre><b><a name="param2">2</a> doku.erstellt</b><pre> : Erstell Datum</pre><b><a name="param3">3</a> doku.proddukt</b><pre> : Produktbezeichnung (M1.7)</pre><b><a name="param4">4</a> doku.ae_stand</b><pre> : Aenderungsstand (z.B. 28RT004711)
Der Aenderungsstand ist massgebend fuer das
Testprogramm. Falls in der pdv ein anderer
Eintrag vorhanden, erfolgt eine Fehlermeldung</pre><b><a name="param5">5</a> doku.kundennummer</b><pre>: Typbezeichnung des Kunden (1 739 041)</pre><b><a name="param6">6</a> doku.eingefuehrt</b><pre> : letzte Aenderung mit ae_stand</pre><b><a name="param7">7</a> doku.gueltig_von</b><pre> : Moeglichkeit zeitlich begrenzt</pre><b><a name="param8">8</a> doku.gueltig_bis</b><pre> : ein Programm der Fertigung zur</pre><b><a name="param9">9</a> doku.passwort</b><pre> : Verfuegung zu stellen</pre><b><a name="param10">10</a> doku.typ</b><pre> : Art der ISN individuellen Sg-Nr</pre><b><a name="param11">11</a> doku.vergleich</b><pre> : Kontakttraegertest (ja / nein)</pre><b><a name="param12">12</a> doku.muster</b><pre> : Kontakttraeger (Wechselteil) Nummer</pre><b><a name="param13">13</a> doku.prot_art</b><pre> : spezielles Statistikprotokoll (E_Gas)</pre><b><a name="param14">14</a> doku.fehlermax</b><pre> : Abbruch nach n Messfehlern</pre><b><a name="param15">15</a> doku.protokoll_emb:</b><pre>Statistik-Protokoll Erst-Muster</pre><b><a name="param16">16</a> doku.sw_ae_stand</b><pre> : SW-Aenderungsstand</pre><b><a name="param17">17</a> doku.adapterfile</b><pre> : Adapterfile aus Directory ...pruef_ccs/Adapter/</pre><b><a name="param18">18</a> doku.usermark</b><pre> : Usermarke fuer Statistik</pre><b><a name="param19">19</a> doku.swnumber</b><pre> : Softwarenummer
Im System-Common sind 13 Informationszellen fuer Erweiterungen vorgesehen.
Revision 1.1 2001/12/18 10:26:17 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.8 2001/11/09 14:15:49 wiese
#ifdef HPRT raus
(char *) rein
Revision 1.7 2001/05/28 12:48:15 PIJ3SA
Gaudi-Parameter USERMARK in E_DOKU added
Revision 1.6 2001/01/16 14:28:47 juilfs
Linux
Revision 1.5 1999/12/22 10:06:14 keppler
$ID -&gt; $Id
Revision 1.4 1999/12/22 09:17:03 keppler
$Header -&gt; $Id
Revision 1.3 1999/12/07 17:19:11 juilfs
no entry
Revision 1.2 99/04/06 14:09:34 14:09:34 wiese (Stefan Wiese)
pruefsw_nr neu
Revision 1.1 99/04/06 13:36:44 13:36:44 wiese (Stefan Wiese)
Initial revision
Revision 1.1 97/12/02 14:24:41 14:24:41 juilfs (Joerg Juilfs)
Initial revision
Revision 1.1 96/07/10 10:25:54 10:25:54 keppler (Fritz Keppler)
Initial revision
------------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,49 @@
<HTML>
<HEAD>
<TITLE>E_DOUBLE</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>E_DOUBLE</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_double.C,v 1.8 2004/03/24 08:45:17 lehmann Exp $
-------------------------------------------------------------------------
Kurzbeschreibung: Racal Karte RD4072 Modul
-------------------------------------------------------------------------
Projekt: Common Core System - BOSCH
Sourcefile: e_double.C
Autor: AnW/TEF7 Michael Strauss
Zielsystem: HP9000 743rt vxi02 (HP-UX 9.05 ; HP-RT 02.11)
Sprache: Ansi C; C++
-------------------------------------------------------------------------
Aufruf: &lt;GFMT KS=on TAB=8 LF=on&gt;
int e_double (shm_stringpointer *zeilen_wert, // &lt;I&gt; Zeiger auf Werte
long index, // &lt;I&gt; Index Nummer
long anzahl) // &lt;I&gt; Anzahl der Werte
-------------------------------------------------------------------------
Returnparameter: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
Funktionsbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
<20>bernimmt die Parameter und deutet Sie m<>glichst so, wie sie in der
modglobal.stl definiert worden sind.
e_racal_sr ( wert[0],...,wert[11] ) wird aufgerufen
Das Modul ist in der Lage, die Racal-Karte rd4072 anzusprechen.
-------------------------------------------------------------------------
Fehlerbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
LISO Fehlerbehandlung
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,120 @@
<HTML>
<HEAD>
<TITLE>E_ECUMEMDATA</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>E_ECUMEMDATA</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_ecumemdata.C,v 1.9 2005/06/27 12:35:59 wes3rt Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Auslesen von ECUMEM-Daten aus ecumemconfig
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_ecumemdata.C
Autor: RtW/TEF72-wiese(170398)
Zielsystem: HP9000/V743 (HP-RT 3.01)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_ecumemdata(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);</pre><b><a name="param1">1</a> #define</b><pre> PRUEFSCHRITT 0</pre><b><a name="param2">2</a> #define</b><pre> POSITION 1
#define SESSION 2
#define DATENTYP 3
#define TYPNAME 4
#define DATENATTRIBUT 5
#define RET_LEN 6</pre><b><a name="param8">8</a> #define</b><pre> FEHLERFLAG 7</pre><b><a name="param9">9</a> #define</b><pre> ERGEBNIS 8
---------------------------------------------------------------------
DEBUG: VI (Vectorinterpreter)
DEB_DATA: "Daten Ausgabe" der im Container gelesenen Daten
DEB_GAUDI: "Gaudi Parameter" der Pr<50>fliste (rein und raus)
Funktionsbeschreibung:
Dieses Modul liest f<>r den jeweiligen Softwarestand zugeh<65>rigen Daten
aus einem File namens "ecumemconfig" aus, das immer im Directory
z.B. /hw/flash/ "Erzeugnissnummer" / "aus E_DOKU die Softwarenummer"
besteht.
Parameterbeschreibung:</pre><b><a name="param3">3</a> SESSION</b><pre>: Gibt den Namen der Session im ECU - Memory - Container an,
aus der die gew<65>nschten Daten gelesen werden sollen
z.B. fast_serial, slow_serial</pre><b><a name="param4">4</a> DATENTYP:</b><pre>Gibt den Typ der gew<65>nschten Daten an:
checksum, datapointer, kwp2000-setup, kwp2000-timing,
kwp2000-security</pre><b><a name="param5">5</a> TYPNAME:</b><pre>gibt den Namen der gew<65>nschten Daten an</pre><b><a name="param6">6</a> DATENATTRIBUT:</b><pre>gibt an, welches Attribut der Daten zur<75>ckgegeben werden
soll. (target-start-adr, target-end-adr, checksum-alg, checksum-result,
target-length, adress-5-baud, wup, target, source, p2min, p2max,
p3min, p3max, p4min, baudrate, ecu-security-alg, datablock-name)</pre><b><a name="param7">7</a> RET_LEN:</b><pre>Gibt die Anzahl der zur<75>ckzugebenden Zeichen an. Ist der im
ECU_Memory-Container angegebene String k<>rzer, werden '0'en avoran-
gestellt. Ist der String l<>nger, wird eine Fehlermeldung generiert.
Wird kein Wert angegeben, so wird der String ohne Anpassung
zur<75>ckgegeben. Achtung:
HEXWERTE werden mit halber L<>nge eingegeben (2 Zeichen pro Byte)
Revision 1.1 2001/12/18 10:26:29 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.11 2001/09/06 08:19:28 wiese
Container vor neubeschreiben immer l<>schen, auch wenn die Datei nicht vorhanden ist
Revision 1.10 2001/01/11 15:49:43 wiese
LINUX ok
Revision 1.9 2001/01/11 15:14:31 juilfs
Linux <20>berarbeitung
Revision 1.8 2000/08/31 14:05:02 wiese
str_cpy eingebaut
Revision 1.7 1999/12/22 10:05:44 keppler
$ID -&gt; $Id
Revision 1.6 1999/12/22 09:16:35 keppler
$Header -&gt; $Id
Revision 1.5 1999/11/08 11:20:34 wiese
0x am Anfang mu<6D> erhalten bleiben
Revision 1.4 99/06/30 15:03:35 15:03:35 wiese (Stefan Wiese)
Flag f<>r einmal lesen eingef<65>hrt.
Ausblenden Fehlermeldung bei KWP2000-SECURITY
Revision 1.3 99/06/09 08:04:14 08:04:14 wiese (Stefan Wiese)
DEFINE DATA in DATAPOINTER umbenannt
Revision 1.2 99/03/31 17:06:40 17:06:40 wiese (Stefan Wiese)
50 Structs m<>glich
KWP2000-SECURITY neu
Filename mit soft_nr
Debugs erweitert
Lesen des Files bei jedem Laden
Return 0 bei DATENATTRIBUT=ECU-SECURITY-PARAMETER f<>r Makro SEEDKEY
Revision 1.1 98/06/29 15:18:19 15:18:19 wiese (Stefan Wiese)
Initial revision
Revision 1.1 98/05/20 11:31:31 11:31:31 wiese (Stefan Wiese)
Initial revision
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,75 @@
<HTML>
<HEAD>
<TITLE>E_ECUMEMDATA1</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>E_ECUMEMDATA1</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_ecumemdata1.C,v 1.8 2005/10/10 13:14:34 wes3rt Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Modulroutine fuer MAKRO ECUMemDataNum und ECUMemDataStr
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_ecumemdata1.C
Autor: RtW2/TEF72-Wiese (29.08.00)
Zielsystem: HP9000/V743 (HP-RT 3.01)
Sprache: ANSI-C/C++
---------------------------------------------------------------------
Prototyp:
int e_ecumemdata1
(shm_stringpointer *zeilen_wert // &lt;I&gt; eingabeparameterfeld
,long index1 // &lt;I&gt; Stelle der Eingabeparameter
,long anzahl) // &lt;I&gt; Anzahl der Parametert
---------------------------------------------------------------------
Aufruf:
error = e_ecumemdata1
(*zeilen_wert // &lt;I&gt; eingabeparameterfeld
,index1 // &lt;I&gt; Stelle der Eingabeparameter
,anzahl) // &lt;I&gt; Anzahl der Parametert
if (error != 0) // Fehlerbeschreibung ...
{
// Fehlerhandling ...
}</pre><b><a name="param1">1</a> #define</b><pre> PRUEFSCHRITT 0</pre><b><a name="param2">2</a> #define</b><pre> POSITION 1
#define CONTAINERTYP 2
#define SESSIONNAME 3
#define DATENTYP 4
#define DATENTYPNAME 5
#define DATENATTRIBUT 6
#define FEHLERFLAG 7
#define ERGEBNIS 8
---------------------------------------------------------------------
Funktionsbeschreibung:
Dieses Modul dient dazu, ECUMEM - Container - Beschreibungsfiles
"ecumemdata1.xml" zu lesen. Diese Files haben ein spezielles (XML - angeehntes)
Format, um die Daten eines Containers aufzubereiten. Dazu m<>ssen die Files
mit Metamorphosis und dem Script "xpath.mm" mit dem Aufruf
"mmx -M $MMBINDIR/xpath.mm -S $SWNR.sgs -F sgm -T ecumemdata1.xml"
erzuegt werden.
Diese Daten dieses Files werden eingelesen und in einem Structfeld zwischen-
gespeichert. Das Auslesen aus dem Structfeld kann wesentlich schneller erfolgen.</pre><b><a name="param3">3</a> CONTAINERTYP:</b><pre>FSW: Fahrsoftwarecontainer: %FLASHROOT/%TTNR/%SWNR/ecumemdata1.xml
TSW: Testsoftwarecontainer: %FLASHROOT/tsw/%TSWNR/ecumemdata1.xml
WP: Werksprogrammiercontainer: %FLASHROOT/wp/%WPSWNR/ecumemdata1.xml</pre><b><a name="param4">4</a> SESSIONNAME:</b><pre>Name der Session im Block MEM/SESSIONS</pre><b><a name="param5">5</a> DATENTYP:</b><pre>CHECKSUM: Daten aus dem Bereich Checksumme
DATAPOINTER: Daten aus dem Bereich der Datenpointer
KWP2000-SECURITY
KWP2000-TIMING
KWP2000-SETUP</pre><b><a name="param6">6</a> DATENATTRIBUT:</b><pre>Welches Datum soll zur<75>ckgegben werden (z.B. TARGET-START-ADR)</pre><b><a name="param7">7</a> FEHLERFLAG:</b><pre>Fehlerr<EFBFBD>ckgabe: 0 alles ok, 1: Fehler</pre><b><a name="param8">8</a> ERGEBNIS:</b><pre>Ausgabe des Datums
Das Datum wird unver<65>ndert aus dem Container ausgegeben.
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,103 @@
<HTML>
<HEAD>
<TITLE>E_FUBUS3</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>E_FUBUS3</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_fubus3.C,v 1.4 2004/12/08 15:08:00 kj73rt Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Anschalten von VXI Modulen <20>ber die Scannermatrix
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_fubus3.C
Autor: RtW/TEF72-Juilfs(080696)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_fubus(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Diese Routine schaltet die 5 BNC Eing<6E>nge und 4 Funktionskan<61>le
per Schaltermatrix zum FU3 Funktionsstecker.
Die Anschaltung ist bitweise orientiert.
Parameterbeschreibung:
FU3_BNC1 8 Bits
SK_BNC1 4 Bits
FU3_BNC2 8 Bits
SK_BNC2 4 Bits
FU3_BNC3 8 Bits
SK_BNC3 4 Bits
FU3_BNC4 8 Bits
SK_BNC4 4 Bits
FU3_BNC5 8 Bits
SK_BNC5 4 Bits
Beispiel:
FU3_BNC1 = 11000000
BNC 1 wird mit dem Funktionsbus 3 Pin a1 und c1 verbunden
Eine '1' schaltet eine Verbindung an.
Eine '0' schaltet eine Verbindung ab.
Ein 'X' laesst eine Verbindung unveraendert (-&gt; don't care).
Besonderheiten:
Im Modul m<>ssen immer 8 und 4 Bits per Parameter eingeben werden.
Insgesamt also 60 Bits. Sollte die Anzahl nicht stimmen, wird die
Pr<50>fliste abgebrochen und ein Fehler gesendet.
...
Revision 1.1 2001/12/18 10:27:20 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.3 1999/12/22 10:06:18 keppler
$ID -&gt; $Id
Revision 1.2 1999/12/22 09:17:07 keppler
$Header -&gt; $Id
Revision 1.1 1999/11/23 14:15:01 katzenma
Initial Version by Sniff
Revision 1.1 97/12/02 14:24:43 14:24:43 juilfs (Joerg Juilfs)
Initial revision
Revision 1.1 96/07/10 10:26:01 10:26:01 keppler (Fritz Keppler)
Initial revision
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,71 @@
<HTML>
<HEAD>
<TITLE>E_INTERRUPT</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>E_INTERRUPT</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_interrupt.C,v 1.7 2004/11/30 13:11:30 jsj3rt Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Warten auf die Triggerline 0 - 7
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_interrupt.C
Autor: RtW/TEF72-Juilfs(080696)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_interrupt(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
MD,E_INTERRUPT
,PRUEFSCHRITT
,POSITION
,TIMEOUT
,TRIGGER_LINE
,INT_FUNKTION</pre><b><a name="param3">3</a> TIMEOUT</b><pre> = in Sekunden bis der Interrupt eingetroffen sein sollte</pre><b><a name="param4">4</a> TRIGGER_LINE</b><pre>= An welcher Triggerline wird Interrupt erwartet 0 - 7</pre><b><a name="param5">5</a> INT_FUNKTION</b><pre>= Modus Interruptsteuerung
: S Setzen Interrupt
: W Warten auf Interrupt
Aufgabe des Modules ist es, auf ein Interrupt zu warten. Hierbei
alle 8 Triggerlines des VXI Racks abgefragt werden.
Zuerst wird mit dem Aufruf von E_INTERRUPT die Triggerline
spezifiziert. INT_FUNKTION = S
Danach koennen weitere Pruefschritte folgen die ggf. die Triggerline
leitung beinflussen.
Beim naechsten Aufruf von E_INTERRUPT und INT_FUNKTION = W
wird sollange gewartet bis die Triggerline gezogen wurde, oder
die vorher spezifizierte Timeoutzeit abgelaufen worden ist.
Alle 10 ms wird geprueft ob Timeoutzeit abgelaufen worden ist.
...
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,57 @@
<HTML>
<HEAD>
<TITLE>E_ISMC_ADD</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>E_ISMC_ADD</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_ismc_add.C,v 1.6 2004/03/24 08:52:35 lehmann Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Addiert Bilder in der Imageliste
---------------------------------------------------------------------
Projekt: IVS
Sourcefile: e_ismc_add.C
Autor: RtW/TEF32-Aatef (28.11.2003)
Zielsystem: SuSE Linux 8.1
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_ismc_add(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Aufrufparameter laut Modglobal.
&lt; 1&gt; PRUEFSCHRITT
&lt; 2&gt; POSITION
( 3) TEMPERATURE Eingestellte Temperatur waehrend Bildaufnahme
( 4) INTENSITY Eingestellte Lichtintensitaet waehrend Bildaufnahme
( 5) SM_ADDRESS Adresse vom Bild in shardmemory
( 6) ERRORFLAG
Aufgabe des Modules ist es, das Bild in der Liste enfuegen.
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,59 @@
<HTML>
<HEAD>
<TITLE>E_ISMC_AREA</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>E_ISMC_AREA</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_ismc_area.C,v 1.6 2004/07/13 13:39:48 aatef Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Add flaechen koordinaten
---------------------------------------------------------------------
Projekt: IVS
Sourcefile: e_ismc_area.C
Autor: RtW/TEF32-Aatef (28.11.2003)
Zielsystem: SuSE Linux 8.1
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_ismc_area(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Aufrufparameter laut Modglobal.
&lt; 1&gt; PRUEFSCHRITT
&lt; 2&gt; POSITION
&lt; 3&gt; X x koordinat
( 4) Y y koordinat
( 5) WIDTH breite
( 6) HEIGHT hoehe
( 7) ERRORFLAG
Aufgabe des Modules ist es, die Koordinaten von kleine Flaechen in
Konfigliste eif<69>gen.
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,62 @@
<HTML>
<HEAD>
<TITLE>E_ISMC_COM</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>E_ISMC_COM</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_ismc_com.C,v 1.9 2004/08/11 13:45:07 gueltlin Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Kommunikation mit ismc
---------------------------------------------------------------------
Projekt: IVS
Sourcefile: e_ismc_com.C
Autor: RtW/TEF32-Aatef (19.11.2003)
Zielsystem: SuSE Linux 8.1
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_ismc_com(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Aufrufparameter laut Modglobal.
&lt; 1&gt; PRUEFSCHRITT
&lt; 2&gt; POSITION
( 3) FUNCTION z.B CalcPowerList, CalcTempList usw
( 4) TEMPERATURE Eingestellte Temperatur waehrend Bildaufnahme
( 5) INTENSITY Eingestellte Lichtintensitaet waehrend Bildaufnahme
( 6) SM_ADDRESS Adresse vom Bild in shardmemory
( 7) RESULT1 Rueckgabewert 1
( 8) RESULT2 Rueckgabewert 2
( 9) RESULT3 Rueckgabewert 3
( 10) RETURN_WERT
Aufgabe des Modules ist es, die Kommunikation mit der
ismc durchzufuehren
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,70 @@
<HTML>
<HEAD>
<TITLE>E_ISMC_INIT</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>E_ISMC_INIT</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_ismc_init.C,v 1.7 2005/04/12 09:55:11 ea82lr Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Initialisieren ismc
---------------------------------------------------------------------
Projekt: IVS
Sourcefile: e_ismc_init.C
Autor: RtW/TEF32-Aatef (28.11.2003)
Zielsystem: SuSE Linux 8.1
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_ismc_init(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Aufrufparameter laut Modglobal.
&lt; 1&gt; PRUEFSCHRITT
&lt; 2&gt; WIDTH
&lt; 3&gt; HEIGHT
&lt; 4&gt; DINAMICTHRES
( 5) SNR1
( 6) SNR2
( 7) VIGNET_BASIC
( 8) VIGNET_POWER
( 9) DARKSENSOR1
(10) DARKSENSOR2
(11) DINAMICPOWER
(12) POS_DEVTHRES
(13) NEG_DEVTHRES
(14) POS_SLOPTHRES
(15) NEG_SLOPTHRES
(16) FPN_CORRECTION
(17) DPTHRES
(18) OUTPUTTHRES
(19) ERRORFLAG
Aufgabe des Modules ist es, die ismc zu initialisieren.
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,55 @@
<HTML>
<HEAD>
<TITLE>E_ISMC_STATE</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>E_ISMC_STATE</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_ismc_state.C,v 1.6 2004/08/13 08:05:11 gueltlin Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Close Slingshot Karte
---------------------------------------------------------------------
Projekt: IVS
Sourcefile: e_ismc_state.C
Autor: RtW/TEF32-Aatef (28.11.2003)
Zielsystem: SuSE Linux 8.1
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_ismc_state(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Aufrufparameter laut Modglobal.
&lt; 1&gt; PRUEFSCHRITT
&lt; 2&gt; POSITION
( 3) STATE start / ende (Gibt reservierte Speicher frei)
( 4) ERRORFLAG
Aufgabe des Modules ist es, die reservierte Speicher frei zu geben.
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,53 @@
<HTML>
<HEAD>
<TITLE>E_KARTE</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>E_KARTE</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
-------------------------------------------------------------------------
Kurzbeschreibung: Boschbus Karte ansteuern
-------------------------------------------------------------------------
Projekt: Common Core System - BOSCH
Sourcefile: e_karte.C
Autor: AnW/FVS5 Schneider Romeo
Zielsystem: HP9000 743rt vxi02 (HP-UX 9.05 ; HP-RT 02.11)
Sprache: Ansi C; C++
-------------------------------------------------------------------------
Aufruf: &lt;GFMT KS=on TAB=8 LF=on&gt;
e_karte_sr (wert[0], Pruefschritt
wert[1], Position
wert[2], Modul
wert[3], Modus
wert[4], Karte
wert[5], Ober - Adresse
wert[6], Unter - Adresse
wert[7], Offset
wert[8], Anzahl - Datenworte
wert[9], Datenwort1
wert[10], Datenwort2
wert[11], Datenwort3
wert[12]); Datenwort4
-------------------------------------------------------------------------
Returnparameter: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
Funktionsbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
Fehlerbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
LISO Fehlerbehandlung
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,55 @@
<HTML>
<HEAD>
<TITLE>E_KARTE_SR</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>E_KARTE_SR</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_karte_sr.C,v 1.1 2003/09/15 09:42:47 lehmann Exp $
-------------------------------------------------------------------------
Kurzbeschreibung: 4 Kannal D-A-Wandler als Stannungsquelle
-------------------------------------------------------------------------
Projekt: Common Core System - BOSCH
Sourcefile: e_karte_sr .C
Autor: AnW/FVS5 Schneider Romeo
Zielsystem: HP9000 743rt vxi02 (HP-UX 9.05 ; HP-RT 02.11)
Sprache: Ansi C; C++
-------------------------------------------------------------------------
Aufruf: &lt;GFMT KS=on TAB=8 LF=on&gt;
int e_karte_sr (char* Pruefschritt,
char* Positon,
char* Modul,
char* Modus,
char* Karte,
char* OA,
char* UA,
char* Offset,
char* N_Data,
char* Data1,
char* Data2,
char* Data3,
char* Data4)
-------------------------------------------------------------------------
Returnparameter: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
Funktionsbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
Dieses Modul ist in der Lage die 4 Spannungsquellen zu verwalten.
-------------------------------------------------------------------------
Fehlerbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
LISO Fehlerbehandlung
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,86 @@
<HTML>
<HEAD>
<TITLE>E_KFG</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>E_KFG</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
Funktionsbeschreibung:
Index der expandierten Pruefliste, und der Name der
anzusteuerenden Unit werden ermittelt und via Message-Queue
an den Prozess KURVENFORMGENERATOR uebermittelt.
Beschreibung der Moduluebergabeparameter:</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>
z.B.: GEN_AMPL1_1 (siehe aktuelles HW-Config-File)
------------------------------</pre><b><a name="param4">4</a> SIGNALFILE</b><pre>
Name der Signaldatei ohne Extension (".cnf")
------------------------------</pre><b><a name="param5">5</a> TRIG_SOURCE</b><pre>
Triggerquelle (EXT1, EXT2, CLK2, INTERN, "-")
------------------------------</pre><b><a name="param6">6</a> TRIG_SLOPE</b><pre>
POS-/NEG-Triggerflanke
------------------------------</pre><b><a name="param7">7</a> TRIG_EVENT</b><pre>
SYNC / ASYNC
(Anstarten eines Signals erst nach Beendigung des
zuvor aktiven oder unmittelbares Anstarten)
------------------------------</pre><b><a name="param8">8</a> AMPL_PRECISION</b><pre>
Wert (in Proz.) steuert den Algorithmus zur Optimierung
der Signalamplituden;
------------------------------</pre><b><a name="param9">9</a> AMPL_FACTOR</b><pre>
veraendert den Amplitudenfaktor am Referenz-DAC des KFG3
(Abschwaecher mit Werten zwischen 1.00 und 0.1);
Wichtig: Ausfuehrung ist langsamer als Aenderung von
Amplitudenwerten mittels Ansteuerparametern !
------------------------------</pre><b><a name="param10">10</a> FREQ_FACTOR</b><pre>
veraendert die Ausgabefrequenz eines Signals durch
Manipulation der N,M-Paramter des Phasenrechenwerks im KFG3
(Werte zw. 0.1, .., 1.0, .., 10.0 sind moeglich);
Wichtig: Ausfuehrung ist langsamer als Aenderung von
Amplitudenwerten mittels Ansteuerparametern !
------------------------------</pre><b><a name="param11">11</a> ANALOG_PIN</b><pre>
Steuergeraete-bezogener PIN-Bezeichner (s. Adapterfile)
zur Anschaltung des Analogausgangs;
------------------------------</pre><b><a name="param12">12</a> ANALOG_REF</b><pre>
dito
------------------------------</pre><b><a name="param13">13</a> IMPEDANZ</b><pre>
LOW / NORM / 500R(Kombination aus LOW und 500Ohm-Widerstand
auf der Zwischenkarte);
------------------------------</pre><b><a name="param14">14</a> EXT_OUTREF</b><pre>
Aktivierung des ext. Referenzeingangs mit Angabe eines
Steuergeraete-bezogener PIN-Bezeichner (s. Adapterfile);
------------------------------</pre><b><a name="param15">15</a> TRIGGER1</b><pre>
IN / OUT (Aktivierung des ext. Triggereingangs oder -
alternativ - Ausgabe eines Digitalsignals);
------------------------------</pre><b><a name="param16">16</a> TRIGGER2</b><pre>
dito
------------------------------</pre><b><a name="param17">17</a> OC1</b><pre>
Steuergeraete-bezogener PIN-Bezeichner (s. Adapterfile)
zur Anschaltung des OpenCollector-Ausgangs;
------------------------------</pre><b><a name="param18">18</a> OC2</b><pre>
dito
------------------------------</pre><b><a name="param19">19</a> OC3</b><pre>
dito
------------------------------</pre><b><a name="param20">20</a> OC4</b><pre>
dito
------------------------------</pre><b><a name="param21">21</a> OUTP_ENABLE</b><pre>
ON / OFF
------------------------------</pre><b><a name="param22">22</a> RUN_STOP</b><pre>
SINGLE / FREE / STOP (SWEEP - noch nicht aktiv)
Weitergehende Dokumentation zum Thema KFG befindet sich
in der CCS-Gesamtdokumentation.
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,200 @@
<HTML>
<HEAD>
<TITLE>E_KOPPELFELD</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>E_KOPPELFELD</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_koppelfeld.C,v 1.5 2005/09/01 07:11:40 sniff Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Anschaltung des Koppelfeldes
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_koppelfeld.C
Autor: RtW/TEF72-Juilfs (31.1.97)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void m_dmm(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
MD,E_KOPPELFELD
,PRUEFSCHRITT 1
,POSITION 2
,KOPPELFELD_ART 3
,ELEMENT_NUMMER 4
,PIN_HIGH 5
,PIN_LOW 6
,SCHALTER_FUNKT 7
Das CCS Koppelfeld ist in der Lage, 5 verschiedene Arten von Anschaltungen
vorzunehmen. Dies wird mit dem Parameter "KOPPELFELD_ART" realisiert.
1. - Anschaltung Messkoppelfeld MESS_KF
2. - Anschaltung Stimulikoppelfeld STIMULI_KF oder LOCAL_BUS
3. - Anschaltung Schalterkoppelfeld SCHALTER_KF
4. - Anschaltung FU-Koppelfeld FU_KF
5. - Anschaltung Sonderkoppelfeld SONDER_KF
6. - Anschaltung Lastkoppelfeld LAST_KF
Die Koppelfeldanschaltungen werden mit Hilfe von 5 Structs realisiert. Diese
Structs werden in dieser Routine besetzt.
Jeder Struct besteht aus n-Elementen die wiederum in 3 Einzelelementen
gesplittet sind. Die Einzelelemente verwalten folgende Information.
- Element1 Pinnumer
- Element2 Bezugspin
- Element3 Funktion der Schalter ON oder OFF
Beispiel: Belegung eines Structs
Elementnr.
------
1 | UB | Pinnumer
|----|
| UZ | Bezugspin
|----|
| ON | Anschaltungsfunktion
---------|----|
2 | 23 | Pinnumer
|----|
| 44 | Bezugspin
|----|
| OFF| Anschaltungsfunktion
---------|----|
3 | 55 | Pinnumer
|----|
| 66 | Bezugspin
|----|
| ON | Anschaltungsfunktion
---------|----|
4 | |
.
.
.
.
------
Der Koppelfeldprozess erkennt nun an den Informationen der einzelnen
Structs welche Verbindungen ben<65>tigt werden.
<20>bergabeparameter:</pre><b><a name="param3">3</a> KOPPELFELD_ART</b><pre> : Welche Koppelfeldeinheit soll angesprochen werden
MESS_KF Messkoppelfeld
STIMULI_KF Stimulikoppelfeld
SCHALTER_KF Schalterkoppelfeld
FU_KF FU-Koppelfeld
SONDER_KF Sonderkoppelfeld
LAST_KF Lastkoppelfeld</pre><b><a name="param4">4</a> ELEMENT_NUMMER</b><pre> : Welches Element vom Struct soll besetzt werden
f<>r MESS_KF
&gt;1 20
oder Eingabe der symbolischen Namen
TRIG_01_A
TRIG_01_B
TRIG_01_C
TRIG_01_D
DVM_01_MESS
DVM_01_MESS_R
COUN_01_A
COUN_01_B
COUN_01_GATE
EXT_CLOCK2
f<>r STIMULI_KF
&gt;1 20
oder Eingabe der symbolischen Namen
U_GEBER_31
U_GEBER_32
I_GEBER_15
R_DEK_100
f<>r SCHALTER_KF
&gt;1 200
f<>r FU_KF
&gt;1 10
f<>r SONDER_KF
&gt;1 10</pre><b><a name="param5">5</a> PIN_HIGH</b><pre> :High Pin vom Steuerger<65>t (Codiert im Adapterfile)
&gt;MK1 - &gt;MK200
&gt;SK1 - &gt;SK200
&gt;SK1 - &gt;SK200
&gt;SK1 - &gt;SK200
&gt;SK1 - &gt;SK200
- oder 0 keine Angabe
Highkanal der Anschaltung Bereich 0 - 200</pre><b><a name="param6">6</a> PIN_LOW</b><pre> :Low Pin vom Steuerger<65>t (Codiert im Adapterfile)
&gt;MK1 - &gt;MK200
&gt;SK1 - &gt;SK200
&gt;SK1 - &gt;SK200
&gt;SK1 - &gt;SK200
&gt;SK1 - &gt;SK200
- oder 0 keine Angabe
Lowkanal der Anschaltung Bereich 0 - 200</pre><b><a name="param7">7</a> SCHALTER_FUNKT</b><pre> :Mit der Schalterfunktion werden die Schalter
ein oder ausgeschaltet.
SCHALTER_FUNKT=ON Einschalten der Scanner.
SCHALTER_FUNKT=OFF Ausschalten der Scanner.
SCHALTER_FUNKT=&gt;xx;yy; Einschalten der Scanner
auf Zwischenkanal xx und
yy (High/Low-Kanal).
Bei SCHALTER_KF wird nur eine
Angabe ben<65>tigt.
!!!!!!!!!!! Wichtig !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Dieses Modul bedient sich der selben <20>bergabestructs an den
Koppelfeldprozess wie das Modul E_SCANNER in den Funktionsmakros.
D.h. Sollte in Modul E_KOPPELFELD ein Me<4D>scanner besetzt werden
und anschlie<69>end ein Funktionsmakro gerufen wird, gewinnt immer
der Aufruf im Funktionsmakro. Das selbe gilt f<>r den Schalterstuct.
Revision 1.1 2001/12/18 10:28:09 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.3 1999/12/22 10:06:30 keppler
$ID -&gt; $Id
Revision 1.2 1999/12/22 09:17:15 keppler
$Header -&gt; $Id
Revision 1.1 1999/11/23 14:15:24 katzenma
Initial Version by Sniff
Revision 1.1 97/12/02 14:24:45 14:24:45 juilfs (Joerg Juilfs)
Initial revision
Revision 1.1 96/07/10 10:26:27 10:26:27 keppler (Fritz Keppler)
Initial revision
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,57 @@
<HTML>
<HEAD>
<TITLE>E_KOPPELTEST</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>E_KOPPELTEST</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_koppeltest.C,v 1.10 2005/09/01 07:11:40 sniff Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Aufruf des Prozesses KoppelfeldSelbstTest
---------------------------------------------------------------------
Projekt: BOSCH ccs
Sourcefile: e_koppeltest.C
Autor: AnW/FVS5 Romeo Schneider
Zielsystem: HP9000/HP743rt (HP-RT 2.11),(HP-UX 9.0x)
Sprache: Ansi-C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_koppeltest( shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
( Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Anzahl der <20>bergabeparameter und Index der expandierten
Pr<50>fliste im Platz KOPPELFELDTEST_UNIT ablegen. Der Prozess
KOPPELFELDTEST greift sp<73>ter auf diese beiden Parameter zu und
kopiert die <20>bergabeparameter in die localen Arrays
Beschreibung der Modul<75>bergabeparameter:</pre><b><a name="param1">1</a> PRUEFSCHRITT</b><pre>
GAUDI Pr<50>fschritt
------------------------------</pre><b><a name="param2">2</a> POSITION</b><pre>
PAV- Position
------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,70 @@
<HTML>
<HEAD>
<TITLE>E_MEK325</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>E_MEK325</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_mek325.C,v 1.5 2004/12/23 10:33:40 jsj3rt Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Anschalten von Bits auf der Relaiskarte im
Messeinschub.
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_mek325.C
Autor: RtW/TEF72-Keppler(19.09.2000)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_mek325(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Diese Routine schaltet die Eing<6E>nge der Spannungswandlerkarte <20>ber die
Analogschalter auf die Leitungen a17 - a28 des FU3.
Verwendet wird die Karte um Drehzahlsignale die von der SKM generiert
werden von 0-5V auf -2V - +2V zu wandeln.
Parameterbeschreibung:</pre><b><a name="param2">2</a> ANSTEUER_UNIT</b><pre> Hier ist MEK325 zu verwenden.</pre><b><a name="param3">3</a> AUSG_RELAIS1</b><pre> 0000..FFFF</pre><b><a name="param4">4</a> AUSG_RELAIS2</b><pre> 0000..FFFF
R<>ckgabeparameter:</pre><b><a name="param5">5</a> EINGAENGE</b><pre>
For future use
Revision 1.1 2001/12/18 10:29:20 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.2 2001/02/22 14:45:26 juilfs
*** empty log message ***
Revision 1.1 2000/09/19 12:38:28 keppler
Initial Version
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,180 @@
<HTML>
<HEAD>
<TITLE>E_MESSAGES</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>E_MESSAGES</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_messages.C,v 1.17 2005/12/19 13:19:42 wes3rt Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Weitergabe von Messages an einem Prozess
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_messages.C
Autor: RtW/TEF32-juilfs (07.07.01)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_messages(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Universelles Modul um an Prozesse Texte zu <20>bergeben.
Erster Anwendungsfall:
Unterdr<64>ckung von Fehlermeldungen im
Koppelfeldprozess die durch Globale Signale im Hardwaretreiber
generiert werden.
Folgende Meldung soll unterdr<64>ckt werden
130337 E#1 #16284 KO PROGID:koppelfeld&gt;File nicht eingecheckt/590&gt;
130337 E#1 #16284 KO TESTID:ebab/99/0281010338
130337 E#1 #16284 KO ERROR :FGN-Verbindung nicht ausgef<65>hrt!
130337 E#1 #16284 KO PROGID:koppelfeld&gt;File nicht eingecheckt/590&gt;
130337 E#1 #16284 KO TESTID:ebab/99/0281010338
130337 E#1 #16284 KO ERROR :DIAK-Verbindung nicht ausgef<65>hrt!
Bitte unter TEXT1 folgendes eingeben
FGN;DIAK;UB
<20>bergabeparameter anhand der Modglobal.stl
MD,e_messages
,PRUEFSCHRITT 1
,POSITION 2
,ANSTEUER_UNIT 3
,MODE 4
ERROR_CODE
Damit wird eine Position gekenzeichnet die bei einem fehler, einen Errorcode
in das shm schreibt.
postion;error_code
Beispiel;2000;12
,TEXT1 5
<20>bergabe texte
,TEXT2 6
,TEXT3 7
,TEXT4 8
,TEXT5 9
,TEXT6 10
========================= Ansteuerun der E1466 VXI karte =====================================================
ANSTEUER_UNIT
REL_MATRIX
MODE
E1466
Treiber f<>r die VXI Karte E1465 - E1466
Text1 BANK_A,BANK_B,BANK_C,BANK_D,RESET
Ansteuerung der Bank
Text2 Line 1
Text3 Line 2
Text4 Line 3
Text5 Line 4
Es kann immer eine BANK komplett geschaltet werden (REL_BANK)
M<>gliche Werte f<>r REL_BANK: "BANK_A", "BANK_B", ... "BANK_C" oder RESET
In REL_LINE&lt;X&gt; werden 4 X 16 Relais geschaltet; Angabe in Bin<69>rform; Wertigkeit von links nach rechts.
"1" schlie<69>t ein relais; "0" <20>ffnet es; alles andere l<>sst es unver<65>ndert. Werden weniger als 16 Zeichen
eingegeben, so werden die restlichen Relais unver<65>ndert gelassen.
Z.B.: "1XXXXXXXXXXXXXXX" schlie<69>t das erste Relais ein; alle anderen bleiben unver<65>ndert.
"0100000000000001" schaltet das zweite und 16 Relais ein alle anderen aus
BANK_A , LINE1 schalte die Relais 0000 - 0015
BANK_A , LINE2 schalte die Relais 0100 - 0115
BANK_A , LINE3 schalte die Relais 0200 - 0215
BANK_A , LINE4 schalte die Relais 0300 - 0315
BANK_B , LINE1 schalte die Relais 0400 - 0415
BANK_B , LINE2 schalte die Relais 0500 - 0515
BANK_B , LINE3 schalte die Relais 0600 - 0615
BANK_B , LINE4 schalte die Relais 0700 - 0715
BANK_C , LINE1 schalte die Relais 0800 - 0815
BANK_C , LINE2 schalte die Relais 0900 - 0915
BANK_C , LINE3 schalte die Relais 1000 - 1015
BANK_C , LINE4 schalte die Relais 1100 - 1115
BANK_D , LINE1 schalte die Relais 1200 - 1215
BANK_D , LINE2 schalte die Relais 1300 - 1315
BANK_D , LINE3 schalte die Relais 1400 - 1415
BANK_D , LINE4 schalte die Relais 1500 - 1515
== Ansteuerung der VXK5000 Triggerkarte mit dem Prozess VXK5000 ==
USED with MAKRO TRIGDIR and TRIGSELF
<20>bergabeparameter anhand der Modglobal.stl
MD,e_messages
,PRUEFSCHRITT 1
,POSITION 2
,ANSTEUER_UNIT 3
TRIG_01
,MODE 4
VXK5000-DIR Mode Direct connection to triggercard
VXK5000-SELF Mode Selftest starting and checking on triggercard
,TEXT1 5 Komparatorspannung A1 (32 Bit)
,TEXT2 6 Komparatorspannung A2 (32 Bit)
,TEXT3 7 Komparatorspannung B1 (32 Bit)
,TEXT4 8 Komparatorspannung B2 (32 Bit)
,TEXT5 9 Komparatorspannung C1 (32 Bit)
,TEXT6 10 Komparatorspannung C2 (32 Bit)
,TEXT7 11 Komparatorspannung D1 (32 Bit)
,TEXT8 12 Komparatorspannung D2 (32 Bit)
,TEXT9 13 Timer A (32 Bit)
,TEXT10 14 Timer B (32 Bit)
,TEXT11 15 Timer C (16 Bit)
,TEXT12 16 Timer D (16 Bit)
,TEXT13 17 Multiplexer1 (32 Bit)
,TEXT14 18 Multiplexer2 OUT (32 Bit)
,TEXT15 19 Multiplexer3 INPUT (32 Bit)
,TEXT16 20 BNC (16 Bit)
,TEXT17 21 MODE und GATE (16 Bit)
,TEXT18 22 Selbsttest DA (16 Bit)
,TEXT19 23 Steuerbits Selbsttest (32 Bit)
with MODE VXK5000-SELF the following parameter are defined:
TEXT1 Stopnumber Selftest -&gt; D0
the following parameters are returnparameter
The result of selftest is returned
TEXT2 Fail
TEXT3 Direct
TEXT4 V_Direct
TEXT5 Y_FUNCT_X
TEXT6 Multiplexer_o
TEXT7 Multiplexer_i
TEXT8 hold_off
TEXT9 delay
TEXT10 Spikefilter am St<53>ck
TEXT11 Analog
TEXT12 steig_falle_analog am St<53>ck
TEXT13 Vorteiler
TEXT14 hold_spike
TEXT15 delay_spike
TEXT16 single_shot
TEXT17 FUNCT_6x8
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,84 @@
<HTML>
<HEAD>
<TITLE>E_OBPHS</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>E_OBPHS</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_obphs.C,v 1.3 2004/12/23 10:33:40 jsj3rt Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Rueckgabe eines Wertes anhand der OBP_FLANKE
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_obphs.C
Autor: RtW/TEF72-Juilfs (30.04.96)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_obphs(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
<20>bergabeparameter anhand der Modglobal.stl
MD,E_OBPHS
,PRUEFSCHRITT 1
,POSITION 2
,OBP_FLANKE 3
,R_PEGEL 4
Anhand des Parameters OBP_FLANKE wird der Triggerpegel, der vorher in
e_obpinit festgelegt wurde ausgegeben. Dieser Triggerpegel wird zum
Module e_trigger innerhalb des Makros OBPHS weitergereicht um
so eine Triggerline anzusprechen.
Revision 1.1 2001/12/18 10:31:54 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.3 1999/12/22 10:07:22 keppler
$ID -&gt; $Id
Revision 1.2 1999/12/22 09:17:59 keppler
$Header -&gt; $Id
Revision 1.1 1999/11/23 14:15:40 katzenma
Initial Version by Sniff
Revision 1.1 97/12/02 14:24:46 14:24:46 juilfs (Joerg Juilfs)
Initial revision
Revision 1.1 96/07/10 10:26:04 10:26:04 keppler (Fritz Keppler)
Initial revision
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,87 @@
<HTML>
<HEAD>
<TITLE>E_OBPINIT</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>E_OBPINIT</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_obpinit.C,v 1.3 2004/12/23 10:33:40 jsj3rt Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Initialisierung der OBP
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_obpinit.C
Autor: RtW/TEF72-Juilfs (30.04.96)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_obpinit(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
<20>bergabeparameter anhand der Modglobal.stl
MD,E_OBPINIT
,PRUEFSCHRITT 1
,POSITION 2
,ANSTEUER_UNIT 3
,TRG_PEGEL_P 4
,TRG_PEGEL_N 5
,U_OUT_HIGH 6
,U_OUT_LOW 7</pre><b><a name="param3">3</a> ANSTEUER_UNIT</b><pre> = Name der Ansteuerunit fuer das Signal SG_WEITER</pre><b><a name="param4">4</a> TRG_PEGEL_P</b><pre> = Triggerpegel bei positiver Flanke (MP_WEITER)</pre><b><a name="param5">5</a> TRG_PEGEL_N</b><pre> = Triggerpegel bei negativer Flanke (MP_WEITER)</pre><b><a name="param6">6</a> U_OUT_HIGH</b><pre> = Ausgangsspannung fuer SG_WEITER High</pre><b><a name="param7">7</a> U_OUT_Low</b><pre> = Ausgangsspannung fuer SG_WEITER Low
Dieses Modul initialisiert die Funktionskarte, die die SG_WEITER
Funktion laut PAV-Standardfunktionskatalog realisiert.
Revision 1.1 2001/12/18 10:32:32 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.3 1999/12/22 10:07:17 keppler
$ID -&gt; $Id
Revision 1.2 1999/12/22 09:17:55 keppler
$Header -&gt; $Id
Revision 1.1 1999/11/23 14:16:00 katzenma
Initial Version by Sniff
Revision 1.1 97/12/02 14:24:47 14:24:47 juilfs (Joerg Juilfs)
Initial revision
Revision 1.1 96/07/10 10:26:08 10:26:08 keppler (Fritz Keppler)
Initial revision
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,53 @@
<HTML>
<HEAD>
<TITLE>E_OPEN</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>E_OPEN</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_open.C,v 1.2 2005/03/04 15:54:09 lehmann Exp $
-------------------------------------------------------------------------
Kurzbeschreibung: Gaudi Init Modul
-------------------------------------------------------------------------
Projekt: Common Core System - BOSCH
Sourcefile: e_open.C
Autor: AnW/FVS5 Schneider Romeo
Zielsystem: HP9000 743rt vxi02 (HP-UX 9.05 ; HP-RT 02.11)
Sprache: Ansi C; C++
-------------------------------------------------------------------------
Aufruf: &lt;GFMT KS=on TAB=8 LF=on&gt;
int e_open (shm_stringpointer *zeilen_wert, // &lt;I&gt; Zeiger auf Werte
long index, // &lt;I&gt; Index Nummer
long anzahl) // &lt;I&gt; Anzahl der Werte
Parameter : SCHRITT wert[00]
Parameter : POSITION wert[01]
Parameter : MODUL wert[02]
Parameter : FUNKTION wert[03]
-------------------------------------------------------------------------
Returnparameter: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
Funktionsbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
<20>bernimmt die Parameter und deutet Sie m<>glichst so, wie sie in der
modglobal.stl definiert worden sind.
int v_open() wird aufgerufen.
Das Modul <20>ffnet den VXI-Bus.
-------------------------------------------------------------------------
Fehlerbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
LISO Fehlerbehandlung
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,91 @@
<HTML>
<HEAD>
<TITLE>E_OUT</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>E_OUT</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_out.C,v 1.21 2006/01/30 08:24:04 gef1sa Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Starten der Prozesse laut Beschreibungsfile
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_out.C
Autor: RtW/TEF72-Juilfs (10.03.97)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_out(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
<20>bergabeparameter anhand der Modglobal.stl
MD,e_out
,PRUEFSCHRITT
,POSITION
,STARTLISTE1 Nickname der Prozesse
,STARTLISTE1 Nickname der Prozesse
,STARTLISTE3 Nickname der Prozesse
,E_OUT_FUNKTION Steuerung des E_OUT Modules
Aufgabe des Modules ist es, die Hardware zum Pr<50>fling durchzuschalten,
die vorher in Modulen (F_ANSTEUER) initialisiert worden ist.
Dies geschieht in verschiedene Prozesse.</pre><b><a name="param3">3</a> STARTLISTE1</b><pre></pre><b><a name="param4">4</a> STARTLISTE1</b><pre></pre><b><a name="param5">5</a> STARTLISTE3</b><pre> Die Reihenfolge der Starts der Prozesse wird im Hardwarebeschreibungsfile
"Default_e_out.cnf" festgelegt.
Es ist m<>glich diese Standard Reihenfolge im Modul abzu<7A>ndern.
Dazu dienen die Parameter STARTLISTE1 - STARTLISTE3. In Normallfall
sind diese Parameter mit dem "-" Zeichen besetzt. Es gilt in diesem Fall die
Defaultreihenfolge lt. Hardwarebeschreibungsfile.
Im Gegensatz zu dem "-" Zeichen k<>nnen die Nicknames der Prozesse
eingegeben werden. Diese m<>ssen per ";" Zeichen voneinander getrennt werden.
Reicht ein Parameter (STARTLISTE1) nicht aus um alle Prozesse anzugeben,
so kann der n<>chste Parameter (STARTLISTE2-STARTLISTE3) angegeben werden.
Es wird nun beim Starten der Prozesse genau diese Reihenfolge
durchgef<65>hrt.
Die Nicknames der Prozesse m<>ssen den Pr<50>flistenautor bekannt sein.
Beispiel:
STARTLISTE1=HT;KO;BO;</pre><b><a name="param6">6</a> E_OUT_FUNKTION</b><pre>
- E_OUT wird immer durchlaufen
CHANGE_ANST E_OUT wird nur durchlaufen wenn sich
ein Ansteuerparameter <20>ndert.
Die Wartezeit wird aber immer ber<65>cksichtigt
WARTEZEIT:
----------
Die Wartezeit schlie<69>t sich nach dem Starten aller E_OUT Prozesse
an. Sie wird aus dem Ansteuerparameter gewonnen der im E_WAIT
spezifiziert worden ist.
Zus<75>tzlich kann es sein, das noch eine Hardwarewartezeit hinzu kommt.
Diese Wartezeit kommt aber nur zum Einsatz, wenn die Hardwarezeit
gr<67><72>er als die in der Pr<50>fliste eingegebene Wartezeit ist.
GRUND: Lastrelais haben z.B. ein Anzugszeit von ca. 10 ms.
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,60 @@
<HTML>
<HEAD>
<TITLE>E_OUT_STR</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>E_OUT_STR</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_out_str.C,v 1.4 2005/09/28 11:09:41 cvs Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Belegung von Systemsteuervariablen
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_out_str
Autor: RtW/TEF72-juilfs (01.09.96)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_out_str(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
<20>bergabeparameter anhand der Modglobal.stl
MD,e_out_bosch
,PRUEFSCHRITT 1
,POSITION 2
,INKREMENTAL 3
Mit diesem Modul koennen Systemvariablen direckt besetzt werden.</pre><b><a name="param3">3</a> INKREMENTAL</b><pre> ON/OFF einschalten des Inkrementalmodus
RESET Reset auf dem Bosch Bus ausl<73>sen
E_OUT_OFF Aufruf der folgenden E_OUT unterbinden
E_OUT_ON Aufruf der folgenden E_OUT freigeben
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,156 @@
<HTML>
<HEAD>
<TITLE>E_PAMSCRIPTS</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>E_PAMSCRIPTS</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_pamscripts.C,v 1.4 2005/04/01 07:37:46 lehmann Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Initialisierung von Array-Variablen
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_pamscripts.C
Autor: RtW/TEF72-Juilfs (12.12.95)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_pamscripts(
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Dieses Modul startet einen script auf dem PAM an.
Beschreibung der Modul<75>bergabeparameter:</pre><b><a name="param1">1</a> PRUEFSCHRITT</b><pre>
GAUDI Pr<50>fschritt
------------------------------</pre><b><a name="param2">2</a> POSITION</b><pre>
PAV- Position
------------------------------</pre><b><a name="param3">3</a> SCRIPTNAME</b><pre> Scriptname
------------------------------</pre><b><a name="param4">4</a> SUB_DIRECTORY</b><pre>
Unterverzeichnis. Das Verzeichnis in dem der Script gesucht
wird setzt sich aus dem Verzeichnis, das im Service PAMSCIPTS
fuer den Pruefstand definiert wurde, und diesem Unterverzeichnis
zusammen.
------------------------------</pre><b><a name="param5">5</a> PARA_1</b><pre> Parameter 1 mit dem der Script ausgefuehrt wird
------------------------------</pre><b><a name="param6">6</a> PARA_2</b><pre> Parameter 2 mit dem der Script ausgefuehrt wird
------------------------------</pre><b><a name="param7">7</a> PARA_3</b><pre> Parameter 3 mit dem der Script ausgefuehrt wird
------------------------------</pre><b><a name="param8">8</a> PARA_4</b><pre> Parameter 4 mit dem der Script ausgefuehrt wird
------------------------------</pre><b><a name="param9">9</a> PARA_5</b><pre> Parameter 5 mit dem der Script ausgefuehrt wird
------------------------------</pre><b><a name="param10">10</a> ERGEBNIS</b><pre> Exit code des Scripts
------------------------------</pre><b><a name="param11">11</a> FEHLERFLAG</b><pre> TRUE = der Inhalt der Variable wird bei jedem Programmstart gel<65>scht.
FALSE = der Inhalt der Variable wird nur beim Laden des Pruefprogrammes gel<65>scht.
...
---------------------------------------------------------------------
-- pragmas -----------------------------------------------------------
#pragma COPYRIGHT "Robert Bosch GmbH Reutlingen, RtW/TEF72"
#pragma VERSIONID "$Id: e_pamscripts.C,v 1.4 2005/04/01 07:37:46 lehmann Exp $"
-- defines -----------------------------------------------------------
#define HEADER "$Id: e_pamscripts.C,v 1.4 2005/04/01 07:37:46 lehmann Exp $"
#define EXTERN extern Bei allen Subroutinen
#define MAX_ANZ_PARAM 5
-- includes ----------------------------------------------------------
#include "shm_syscom.H"
#include &lt;stdlib.h&gt;
#include "libccs.H"
#include "ccl_defines.H" ccl_definition PREINT
-- external functions / variables ------------------------------------
-- global variables (nur im "main" erlaubt) -------------------------
-Begin---------------------------------------------------------------
---------------------------------------------------------------------
int e_pamscripts(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
{
-- local variables ---------------------------------------------------
int i; // Schleifenvariable
int ind; // Index
int iIndErgebnis; // Index auf die Ergebnis
int iIndFehlerflag; // Index auf das Fehlerflag
int iStat; // Status
Ss_services service; // Service struktur
QString strNum; // Nummern string
QString strParam; // Parameterstring
QString strParamOne; // Parameter
QString strScript; // Scriptname
QString strSubDir; // Unterverzeichnis
QString strRun; // Run String
//------------------------------------------------------------------
if(strcmp(Ssp_vi-&gt;job.liststate,PREINT)==0) return 0;
ind = index1 + 2;
strScript = (const char*)*zeilen_wert-&gt;ptr[ind];
ind++;
strSubDir = (const char*)*zeilen_wert-&gt;ptr[ind];
ind++;
strParam = " ";
for( i = 0; i &lt; MAX_ANZ_PARAM; i++)
{
strParamOne = (const char*)*zeilen_wert-&gt;ptr[ind];
if (strParamOne.isEmpty())
strParam += "\"\" ";
else
strParam += "\"" + strParamOne + "\" ";
ind++;
}
iIndErgebnis = ind;
ind ++;
iIndFehlerflag = ind;
*zeilen_wert-&gt;ptr[iIndErgebnis] = "0";
*zeilen_wert-&gt;ptr[iIndFehlerflag] = "1";
if ( get_service ("pamscripts", 1, &amp;service) != 0 )
{
error_message (ERR_ERROR, HEADER,__LINE__,
"Fehlerwert = %i, if Wert = 1, then Service not found !", get_service ("pamscripts", 1, &amp;service));
return -1;
}
strRun = service.directory;
strRun += "/" + strSubDir + "/" + strScript;
strRun = strRun.lower() + strParam;
iStat = system( strRun.latin1() );
iStat /= 256;
//qDebug(strRun);
strNum.setNum(iStat);
*zeilen_wert-&gt;ptr[iIndErgebnis] = strNum.latin1();
if (iStat == 127)
{
error_message (ERR_ERROR, HEADER,__LINE__,
"Script not found: %s", strRun.latin1());
return -1;
}
*zeilen_wert-&gt;ptr[iIndFehlerflag] = "0";
return 0;
}
-End of file---------------------------------------------------------
Historie:
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,63 @@
<HTML>
<HEAD>
<TITLE>E_PARAM_CONV</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>E_PARAM_CONV</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_param_conv.C,v 1.5 2004/03/23 15:48:18 lehmann Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Konvertierung von Parametern
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: m_param_conv.C
Autor: RtW/TEF72-Juilfs (12.12.95)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
void m_param_conv(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Dieses Modul wird in Makros eingesetzt um die Parameter in bestimmte
Codestrings zu patchen und diese zur Weiterverarbeitung zurueckzugeben.
In den Codestring koennen die Platzhalter #0 bis #9 verwendet werden.
An dieser Stelle werden der entsprechende Eingabeparameter gepatched.
Ein Sondercode ist die #{} innerhalb der Klammer ist folgende Syntax
x1=x2=OUT3 falls x1 = x2 ist wird die gesamte Klammer durch out ersetzt.
Ist x1 &lt;&gt; x2 wird der geamte Klammerausdruck aus dem String genommen.
z.B. #{#0=BUS=TRIG:IMM} steht in der Eingabevariablen 0 der String BUS
wird der geamte Ausdruck #{#0=BUS=TRIG:IMM} durch TRIG:IMM ersetzt.
Beschreibung der Modul<75>bergabeparameter:</pre><b><a name="param1">1</a> PRUEFSCHRITT</b><pre>
GAUDI Pr<50>fschritt
------------------------------</pre><b><a name="param2">2</a> POSITION</b><pre>
PAV- Position
------------------------------</pre><b><a name="param3">3</a> -&lt;12&gt;</b><pre>Variablen Eingabe 0-9
------------------------------</pre><b><a name="param13">13</a> -&lt;22&gt;</b><pre>Codestrings 0-9
------------------------------</pre><b><a name="param23">23</a> -&lt;32&gt;</b><pre>gewandelte Strings 0-9
-------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,118 @@
<HTML>
<HEAD>
<TITLE>E_PATCH</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>E_PATCH</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_patch.C,v 1.8 2005/02/24 17:41:27 lehmann Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Aufruf des Prozesses EL_LOAD
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_patch.C
Autor: RtW/TEF72-Rapp (26.08.2004)
Zielsystem: Linux
Sprache: C++
---------------------------------------------------------------------
Prototyp:
void e_patch(shm_stringpointer *zeilen_infof
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Beschreibung der Moduluebergabeparameter:
Je nach Modus besitzen die Parameter PARAM1 bis PARAM6 unterschiedliche
Bedeutung (siehe MODE_PATCH).
Das Modul interpretiert diese Parameter und generiert ein oder mehrer Strings.
Der String im Parameter PATCH_0 wird mit den generierten Strings gepatched und
im Parameter RETURN_WERT zurueckgeggeben.
Die Platzhalter fuer die zu patchenden Strings ist #n wobei n den gewuenschten
String selektiert (von 0 bis n, wobei n Mode spezifisch ist)</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> MODE_PATCH</b><pre> Je nach Modus besitzen die nachfolgenden Parameter eine andere Bedeutung
VALUE : Ueberpruefung eines Wertes auf den uebergebenen Bereich, ist
er nicht innerhalb des Bereichs wird eine Warnung in der Logdatei
ausgegeben und der Wert auf die Grenze gesetzt.
Ist Param5 auf YES gesetzt wird der String "auto" zurueckgegeben,
falls Param1 0 ist.
Param1 = Wert
Param2 = Mimimalwert des Geraetes
Param3 = Maximalwert des Geraetes
Param4 = Nachkommastellen
Param5 = Hier koennen mehrere Ausdruecke durch "|" getrennt angegeben werden.
Ein Ausdruck besteht aus einem Operator (&gt;=, &lt;=, ==, !=) einem Wert
und einem String, wobei mit "-&gt;" der Wert vom String getrennt wird.
z.B. "==0-&gt;OFF:&gt;=0-&gt;ON #0" Param1=1.23
d.h. ist der Wert 0 wird OFF in den String gepatched, ist er groesser
0 wird "ON 1.23".
#0 = Wert
#1 = Wert Aus Param5
NPLC: Die uebergebene Integrationszeit wird in Anzahl von Netzzyklen
umgerechnet.
Der Rueckgabewert entspricht dem naechst hoeheren Wert in der
uebergebenen Liste.
Param1 = Integrationszeit [sek]
Param2 = Periodendauer der Netzfrequenz [ms]
Param3 = moegliche Werte in aufsteigender Reihenfolge durch
":" getrennt.
#0 = Integrationszeit in Netzzyklen
SCANNER : die Messkanaele werden ueberprueft und in eine Scannernummer
gewandelt, dabei gilt, dass der High-Pin = Low-Pin + 1.
Die Kanalnummer ist dann Low-Pin / 2.
z.B.
Param3 = 40 Offset = 100 Kanalnummer = 10 -&gt; Kanal = 110
Param3 = 40 Offset = 100 Kanalnummer = 61 -&gt; Kanal = 221
Param1 = High-Pin
Param2 = Low-Pin
Param3 = Maximalanzahl der Kanaele pro Einschub
Param4 = Offset Kanalnummer
Die Kanalnummer ist intern von 1 bis Maximalanzahl Kanaele, die
Darstellung vom Geraet kann z.B. fuer Kanal 1 z.B 101 sein
#0 = Kanal
DIM: Belegung eines Faktors anhand der uebergebenen Dimension
Param1 = Dimension
MV fuer Millivolt -&gt; Faktor = 0.001
V fuer Volt -&gt; Faktor = 1
UV fuer Mikrocvolt -&gt; Faktor = 0.000001
A fuer Ampere -&gt; Faktor = 1
MA fuer Milliampere -&gt; Faktor = 0.001
KOHM fuer KilloOhm -&gt; Faktor = 1000
#0 = Faktor
------------------------------</pre><b><a name="param4">4</a> PARAM1</b><pre> siehe Parameter MODE_PATCH
------------------------------</pre><b><a name="param5">5</a> PARAM2</b><pre> siehe Parameter MODE_PATCH
------------------------------</pre><b><a name="param6">6</a> PARAM3</b><pre> siehe Parameter MODE_PATCH
------------------------------</pre><b><a name="param7">7</a> PARAM4</b><pre> siehe Parameter MODE_PATCH
------------------------------</pre><b><a name="param8">8</a> PARAM5</b><pre> siehe Parameter MODE_PATCH
------------------------------</pre><b><a name="param9">9</a> PARAM6</b><pre> siehe Parameter MODE_PATCH
------------------------------</pre><b><a name="param10">10</a> PATCH_0</b><pre> String der gepatched wird
-------------------------------</pre><b><a name="param11">11</a> RETURN_WERT</b><pre> gepatchter String
-------------------------------</pre><b><a name="param11">11</a> ERRORFLAG</b><pre> Rueckgabe des Status
0 = Ok 0 &lt;&gt; Fehler
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,67 @@
<HTML>
<HEAD>
<TITLE>E_POWER</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>E_POWER</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_power.C,v 1.2 2005/03/04 15:54:09 lehmann Exp $
-------------------------------------------------------------------------
Kurzbeschreibung: Konstanter Modul
-------------------------------------------------------------------------
Projekt: Common Core System - BOSCH
Sourcefile: e_power.C
Autor: AnW/FVS5 Schneider Romeo
Zielsystem: HP9000 743rt vxi02 (HP-UX 9.05 ; HP-RT 02.11)
Sprache: Ansi C; C++
-------------------------------------------------------------------------
Aufruf: &lt;GFMT KS=on TAB=8 LF=on&gt;
int e_power (shm_stringpointer *zeilen_wert, // &lt;I&gt; Zeiger auf Werte
long index, // &lt;I&gt; Index Nummer
long anzahl) // &lt;I&gt; Anzahl der Werte
Parameter : SCHRITT wert[00]
Parameter : POSITION wert[02]
Parameter : WHOLEN wert[02]
Parameter : LABEL_END wert[03]
Parameter : STOP wert[04]
Parameter : MODUL wert[05]
Parameter : FUNKTION wert[06]
Parameter : ADRESSE wert[07]
Parameter : TUG wert[08]
Parameter : TOG wert[09]
Parameter : EINHEIT wert[10]
Parameter : KANNAL wert[11]
Parameter : SPANNUNG wert[12]
Parameter : STROM wert[13]
Parameter : OUTPUT wert[14]
Parameter : MESSWERT wert[15]
-------------------------------------------------------------------------
Returnparameter: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
Funktionsbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
<20>bernimmt die Parameter und deutet Sie m<>glichst so, wie sie in der
modglobal.stl definiert worden sind.
Das Modul ist in der Lage, einen Befehl <20>ber HPIB Bus an einen Konstanter
auszugeben und wenn gew<65>nscht eine Antwort zur<75>ckzulesen.
Die Antwort wird als Nachricht an die Messdatenauswertung weiter-
gereicht.
-------------------------------------------------------------------------
Fehlerbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
LISO Fehlerbehandlung
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,49 @@
<HTML>
<HEAD>
<TITLE>E_QUELLE</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>E_QUELLE</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_quelle.C,v 1.2 2005/03/04 15:54:09 lehmann Exp $
-------------------------------------------------------------------------
Kurzbeschreibung: 4 Quellen Modul
-------------------------------------------------------------------------
Projekt: Common Core System - BOSCH
Sourcefile: e_quelle.C
Autor: AnW/FVS5 Schneider Romeo
Zielsystem: HP9000 743rt vxi02 (HP-UX 9.05 ; HP-RT 02.11)
Sprache: Ansi C; C++
-------------------------------------------------------------------------
Aufruf: &lt;GFMT KS=on TAB=8 LF=on&gt;
int e_quelle (shm_stringpointer *zeilen_wert, // &lt;I&gt; Zeiger auf Werte
long index, // &lt;I&gt; Index Nummer
long anzahl) // &lt;I&gt; Anzahl der Werte
-------------------------------------------------------------------------
Returnparameter: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
Funktionsbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
<20>bernimmt die Parameter und deutet Sie m<>glichst so, wie sie in der
modglobal.stl definiert worden sind.
e_quelle_sr ( wert[0],...,wert[16] ) wird aufgerufen.
Das Modul ist in der Lage, die e1328a Karte zu bedienen.
-------------------------------------------------------------------------
Fehlerbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
LISO Fehlerbehandlung
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,88 @@
<HTML>
<HEAD>
<TITLE>E_QUIT</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>E_QUIT</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_quit.C,v 1.4 2004/12/23 10:33:40 jsj3rt Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Kontaktierung SPS ansprechen
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_quit.C
Autor: RtW/TEF72-Gueltling (22.10.97)
Zielsystem: HP9000/V743 (HP-RT 2.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_quit(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
<20>bergabeparameter anhand der Modglobal.stl
MD,e_out_bosch
,PRUEFSCHRITT
,POSITION
,AUFTRAG
DECKELV
VAKUUM
STECKERANFAHR
STEMPELN
TEST
NIEDERHALTER
EINZELNUTZEN
,Aktion
AUSFUEHREN
ZU
AUF
EIN
AUS
VOR
ZURUECK
SERIELL_VOR
HALTEFEDER
ANWAEHLEN
ERGEBNIS
moegliche Kombinationen:
----------------------------------------
DECKELV: AUF,ZU
VAKUUM: EIN,AUS
STECKERANFAHR: VOR,ZURUECK,SERIELL_VOR
STEMPELN: AUSFUEHREN
TEST: HALTEFEDER
NIEDERHALTER VOR,ZURUECK
Mit diesem Modul koennen die moeglichen Einzelaktionen der
Kontaktierung angesprochen werden.
Es sind nur bestimmte Kombinationen zugelassen
z.B. Vakuum ein / aus
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,49 @@
<HTML>
<HEAD>
<TITLE>E_RACAL</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>E_RACAL</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_racal.C,v 1.2 2005/03/04 15:54:09 lehmann Exp $
-------------------------------------------------------------------------
Kurzbeschreibung: Racal Karte RD4072 Modul
-------------------------------------------------------------------------
Projekt: Common Core System - BOSCH
Sourcefile: e_racal.C
Autor: AnW/FVS5 Schneider Romeo
Zielsystem: HP9000 743rt vxi02 (HP-UX 9.05 ; HP-RT 02.11)
Sprache: Ansi C; C++
-------------------------------------------------------------------------
Aufruf: &lt;GFMT KS=on TAB=8 LF=on&gt;
int e_racal (shm_stringpointer *zeilen_wert, // &lt;I&gt; Zeiger auf Werte
long index, // &lt;I&gt; Index Nummer
long anzahl) // &lt;I&gt; Anzahl der Werte
-------------------------------------------------------------------------
Returnparameter: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
Funktionsbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
<20>bernimmt die Parameter und deutet Sie m<>glichst so, wie sie in der
modglobal.stl definiert worden sind.
e_racal_sr ( wert[0],...,wert[11] ) wird aufgerufen
Das Modul ist in der Lage, die Racal-Karte rd4072 anzusprechen.
-------------------------------------------------------------------------
Fehlerbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
LISO Fehlerbehandlung
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,55 @@
<HTML>
<HEAD>
<TITLE>E_RACAL_SR</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>E_RACAL_SR</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_racal_sr.C,v 1.1 2003/09/15 09:42:47 lehmann Exp $
-------------------------------------------------------------------------
Kurzbeschreibung: Racal Widerstandsdekade
-------------------------------------------------------------------------
Projekt: Common Core System - BOSCH
Sourcefile: e_racal_sr.C
Autor: AnW/FVS5 Schneider Romeo
Zielsystem: HP9000 743rt vxi02 (HP-UX 9.05 ; HP-RT 02.11)
Sprache: Ansi C; C++
-------------------------------------------------------------------------
Aufruf: &lt;GFMT KS=on TAB=8 LF=on&gt;
int e_racal_sr(char *Pruefschritt, // Gaudi Pruefschritt
char *Position , // Gaudi Position
char *Wiederholen, // Schritt Wiederholungen
char *Label_End , // externer Sprung Label
char *Stop , // Verhalten bei Fehler
char *Modul , // Name des Gaudi Moduls
char *Funktion , // Funktion des Gaudi Moduls
char *Tug , // bei r<>cklesen TUG
char *Tog , // bei r<>cklesen TOG
char *Dimesion , // Einheit bei r<>cklesen
char *Widerstand0, // Widerstand0
char *Widerstand1) // Widerstand1
-------------------------------------------------------------------------
Returnparameter: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
Funktionsbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
Einstellen der Racal Widerstandsdekade auf die vorgegebenen Werte.
-------------------------------------------------------------------------
Fehlerbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
LISO Fehlerbehandlung
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,139 @@
<HTML>
<HEAD>
<TITLE>E_SCANNER</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>E_SCANNER</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_scanner.C,v 1.34 2005/09/01 07:11:40 sniff Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Anschaltung der Me<4D>scanner <20>ber Koppelfeld
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_scanner.C
Autor: RtW/TEF72-Juilfs (1.2.96)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void m_dmm(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Aufgabe des Modules ist es das Me<4D>koppelfeld anzusprechen. Das Modul
kann die Messkan<61>le sowie die Triggerkan<61>le f<>r ein Me<4D>ger<65>t
anschalten. In der Standard-PAV werden die Triggerkan<61>le mit dem
K<>rzel "I" f<>r intern bezeichnet. Dies bedeutet das die Triggerkan<61>le
gleich den Me<4D>kan<61>len sind. Dies wird im Modul ber<65>cksichtigt.
Die Me<4D> - und Triggerkan<61>le werden in einem Struct abgelegt. Erst mit
dem Aufruf des Modules E_OUT werden die Me<4D>kan<61>le im Koppelfeld
durchgeschaltet. Es ist aber m<>glich, die Durschaltung in diesem
Modul zu erreichen. Daf<61>r gibt es einen Parameter (SCANNER_MODUS).
<20>bergabeparameter
MD,E_SCANNER
,PRUEFSCHRITT 1
,POSITION 2
,SCANNER_MODUS 3
,SCAN_UNIT 4
,PIN_HIGH 5
,PIN_LOW 6
,SCANN_UNIT_TRG 7
,PIN_HIGH_TRG 8
,PIN_LOW_TRG 9
,SCHALTER_FUNKT 10</pre><b><a name="param3">3</a> SCANNER_MODUS:</b><pre> Mit dem Scannermodus wird entschieden ob der Prozess
BOSCH_OUT gestartet wird. Mit dem Prozess BOSCH_OUT
werden die Me<4D>scanner im Me<4D>einschub geschaltet.
Dies bedeutet, dass mit dieser Ma<4D>nahme die Scanner vor den
<20>brigen Anschaltungen gesetzt werden k<>nnen.
SCANNER_MODUS = OUT Koppelfeld anschalten
SCANNER_MODUS = INIT PIN_HIGH und PIN_LOW ins Array
legen.</pre><b><a name="param4">4</a> SCANN_UNIT</b><pre> :
Die Scannunit zeigt auf die Dekodiermatrix im Me<4D>einschub.Diese
Information steht im PAM-Beschreibungsdile. Folgende Eingaben sind
derzeit vereinbart.
DVM_01_MESS DVM Kanal
DVM_01_RATIO DVM Kanal 4 Punktmessung</pre><b><a name="param5">5</a> PIN_HIGH</b><pre> :
Highkanal der Anschaltung Bereich 0 - 200</pre><b><a name="param6">6</a> PIN_LOW</b><pre> :
Lowkanal der Anschaltung Bereich 0 - 200</pre><b><a name="param7">7</a> SCANN_UNIT_TRG:</b><pre> Die Scannunit zeigt auf die Dekodiermatrix im Me<4D>einschub</pre><b><a name="param8">8</a> PIN_HIGH_TRG</b><pre> :
Highkanal der Anschaltung Bereich 0 - 200 Trigger
I Bedeutet es werden die Me<4D>kan<61>le zu Triggerung herangezogen</pre><b><a name="param9">9</a> PIN_LOW_TRG</b><pre> :
Lowkanal der Anschaltung Bereich 0 - 200 Trigger
I Bedeutet es werden die Me<4D>kan<61>le zu Triggerung herangezogen</pre><b><a name="param10">10</a> SCHALTER_FUNKT</b><pre>:
Mit der Schalterfunktion werden die Schalter
ein oder ausgeschaltet.
SCHALTER_FUNKT=ON einschalten der Scanner
SCHALTER_FUNKT=OFF ausschalten der Scanner
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
L<>sungen f<>r zeitliche probleme
1.) Abfragen ob IC prrozess Aktiv
...
Revision 1.1 2001/12/18 10:42:06 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.8 2001/12/07 09:32:00 nickelth
#ifdefs added
Revision 1.7 2001/08/21 12:27:10 ssm3bw
anw- and rtw-version merged
Revision 1.6 2001/05/23 15:27:58 lehmann
*** empty log message ***
Revision 1.3 1999/12/22 10:06:58 keppler
$ID -&gt; $Id
Revision 1.2 1999/12/22 09:17:39 keppler
$Header -&gt; $Id
Revision 1.1 1999/11/23 14:17:16 katzenma
Initial Version by Sniff
Revision 1.1 97/12/02 14:24:51 14:24:51 juilfs (Joerg Juilfs)
Initial revision
Revision 1.1 96/07/10 10:26:27 10:26:27 keppler (Fritz Keppler)
Initial revision
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,303 @@
<HTML>
<HEAD>
<TITLE>E_SERCOM</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>E_SERCOM</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
----------------------------------------------------------
Funktionsbeschreibung:
Dieses Modul stellt eine Anwender-Schnittstelle zu einer beliebigen (ueber ein Configfile konfigurierbar) seriellen
Schnittstelle (TTY-Schnittstelle) her.
Das E_SERCOM arbeitet mit dem prozess sercom (Nickname SE) zusammen.
Der prozess sercom muss deshalb in der prog_start_xx.cnf eingetragen sein.
Aufruf des prozess sercom:
==========================
Der prozess sercom wird unmittelbar vom E_SERCOM via message-queue with wait aufgerufen.
D.h. bei jedem E_SERCOM Aufruf wird der prozess sercom aktiv und f<>hrt die Aufgaben
sofort aus und quittiert das Ergebnis zur<75>ck zum E_SERCOM.
Ein E_OUT Aufruf in der Pr<50>fliste ist nicht supportet, d.h. der Prozess sercom
darf nicht in der hw_e_out_xx.cnf eingetragen sein!
Basis fuer die Arbeit mit diesem Modul sind 2 Konfigurations-Dateien:
a) hw_vxi_geraete....cnf
b) sercom.cnf
zu a) hw_vxi_geraete....cnf
Beschreibung der (durch Semikolon getrennten) Eintraege in diesem File:
1. Unitname
der logische Name, der vom Anwender in der Pruefliste eingetragen werden muss,
um auf das Device zugreifen zu koennen:
z.B. SER_IFACE_01
2. Sekundaer-Adresse
wird nur fuer HPIB-Devices oder Multifunktions-Karten benoetigt,ist normalerweise -1;
im konkreten Fall wird damit eine der von der Muxer-Karte bereitgestellten Schnittstellen bezeichnet;
3. VXI/HPIB-Adresse
dies ist die Primaer-Adresse unter der das Device am Bus angesprochen werden kann;
(bei Devices mit Kernel-Treiber ist dies -1)
4. Geraetename
dies ist der vom Hersteller vergebene Device-Name:
z.B. M45
5. Herstellername
6. Slot im VXI Rack
bei VXI-Geraeten sollte hier die Nummer des SLOTs, in dem das Device steckt eingetragen werden;
(bei HPIB-Devices steht hier stets -1)
zu b) sercom.cnf
Konfiguration der Schnittstellen-Parameter:
~_MODE = ...
einer der Modi SYSV (System V), RAW, CBREAK, COOKED
~_DEVICENAME = ...
Vorgabe des TTY-Devicenamens, z.B. /dev/m45tty3
~_BAUDRATE = ...
Festlegung der Baudrate, z.B. 9600
~_PARITY = ...
Paritaetsbit festlegen, z.B. NONE
~_STOPBITS = ...
Anzahl der Stopbits konfigurieren, z.B. 1
~_DATENBITS = ...
Anzahl der Datenbits pro Byte festlegen, z.B. 8
~_XONXOFF = ...
Schnittstellen-Protokoll festlegen, z.B. ON
~_OUTPUTMAP = ...
Mapping beim Datenversenden bestimmen:
NONE - kein Mapping,
CRNL - CR in NL umwandeln,
NLCR - NL in CR umwandeln,
NLCRNL - NL in CRNL umwandeln;
~_INPUTMAP = ...
Mapping beim Datenempfang:
NONE - kein Mapping,
NLCR - NL in CR umwandeln,
CRNL - CR in NL umwandeln,
IGNCR - CR ignorieren
~_CHARTIMEOUT = ...
Timeout beim Lesen eines Zeichens in Millisekunden;
Daten werden Byte-weise eingelesen, nach jedem Byte wartet der Lesevorgang die vorgegebene Wartezeit;
~_SEND_TIMEOUT = ...
Timeout beim Senden von Zeichen in Sekunden;
gibt vor, in welcher Zeit eine Anzahl an Zeichen laengstens ueber die Schnittstelle transferiert werden sollen;
~_TERMTYPE = ...
Festlegung des Endekriteriums fuer empfangende Daten:
TERMLENGTH - Kriterium ist die Laenge,
TERMSEQUENZ - Kriterium ist eine Zeichenkette;
~_TERMLENGTH = ...
~_TERMSEQUENZ = ...
~_EXCL = ...
Festlegung, dass die Schnittstelle exclusiv von dem jeweiligen Prozess genutzt wird;
(fuer Details siehe Dokumentation "UnivDevice.frm" im Verzeichnis "ent1:/daten/ux_hprt_global/libclass/...")
Konfiguration spezieller Device-Features:
~_ONERROR_COMMAND = ...
Kommando, dass an ein Device im Fehlerfall uebertragen werden soll;
Konfiguration des Pfades fuer einen Dateizugriff:
~_FILEPATH = ...
hiermit kann der Suchpfad auf dem Leitrechner vorgegeben werden - Ausgangspunkt ist dabei stets
der Basispfad /daten_lrp3/pruef_ccs (fuer SaW);
Beispielpfad:
/dect/ptc/
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> INTERFACE</b><pre>
z.B. SER_IFACE_04
symbolischer Name eines seriellen Interfaces; dieser Name wird im Configfile 'hw_vxi_geraete....cnf' definiert;
------------------------------</pre><b><a name="param4">4</a> ERRORTEXT</b><pre>
Text, der immer dann im Fehlerausdruck / in der Fehlerstatistik erscheint, wenn Daten nicht gesendet
oder nicht empfangen werden konnten;
------------------------------</pre><b><a name="param5">5</a> FUNCTION</b><pre>
CLEAR
loescht den Ein- und Ausgabebuffer der seriellen Schnittstelle;
INIT
Initialisierungsschritt der ausschliesslich im ersten Listenlauf (FIRSTRUN) nach einem Ruestlauf ausgefuehrt wird;
es findet sowohl Daten- als auch File-Transfer statt (sofern die entsprechenden Felder besetzt sind);
DOWNLOAD
allgemeiner Transfer von Daten und/oder Filedaten.
Dieser Schritt wird im ersten Listenlauf (FIRSTRUN) und auch in allen nachfolgenden
Listenlaeufen (NORMALRUN) ausgefuehrt;
SEND
ausschliesslicher Transfer von Daten -
siehe Gaudi-Parameter 'SENDDATA_1/ bis SENDDATA_4';
Wichtig: Gaudi-Parameter FILENAME wird hier nicht supportet d.h. ein Filetransfer findet nicht statt!
SENDFORCE
Daten werden auch bei Fehlermax-Abbruch gesendet !!!
Achtung: Funktion nur in der Multi-Pr<50>fliste m<>glich wegen vectorinterpreter Design.
ausschliesslicher Transfer von Daten -
siehe Gaudi-Parameter 'SENDDATA_1/ bis SENDDATA_4';
Wichtig: Gaudi-Parameter FILENAME wird hier nicht supportet d.h. ein Filetransfer findet nicht statt!
RCV
Transfer von Daten - wie bei SEND - und im Anschluss Lesen einer Antwort (mit vom Anwender bestimmbarem
Timeout);
die Anzahl zu lesender Datenbytes kann mit DATANUMBER vorgegeben werden;
Wichtig: Gaudi-Parameter FILENAME wird hier nicht supportet d.h. ein Filetransfer findet nicht statt!
RCVFORCE
Daten werden auch bei Fehlermax-Abbruch gesendet !!!
Achtung: Funktion nur in der Multi-Pr<50>fliste m<>glich wegen vectorinterpreter Design.
Transfer von Daten - wie bei SENDFORCE - und im Anschluss Lesen einer Antwort (mit vom Anwender bestimmbarem
Timeout);
die Anzahl zu lesender Datenbytes kann mit DATANUMBER vorgegeben werden;
Wichtig: Gaudi-Parameter FILENAME wird hier nicht supportet d.h. ein Filetransfer findet nicht statt!
BREAKSTRING
Initialisierungsschritt der Sendedaten f<>r den Pr<50>flistenabbruch, der ausschliesslich im Ruestlauf ausgefuehrt wird;
siehe Gaudi-Parameter 'SENDDATA_1/ bis SENDDATA_4';
Es findet kein Daten- als auch File-Transfer statt; Der Prozess sercom merkt sich diese Sendedaten f<>r das Abbruchh<68>ndling;
Im Abbruchfall wird dieser String standardm<64><6D>ig zum Device gesendet. Es wird keine Antwort vom Device zur<75>ckgelesen.
------------------------------</pre><b><a name="param6">6</a> CONTROL</b><pre>
Steuerparameter fuer Protokoll-Informationen
Supportet sind folgende Eintraege:
CONTROL = ICP3000 In-Circuit Programmer fuer Steuergeraet ES-HDEV (Elektr. Hochdruck-Einspritzventil)
CONTROL = JNAT Schnittstelle f<>r SDL-Class2 -SG's Content of Configfile for JNAT:
V743_1_MODE = RAW
V743_1_BAUDRATE = 19200
V743_1_TERMTYPE = TERMSEQUENZ
V743_1_TERMSEQUENZ = \x0d&gt;
CONTROL = BINARY ASCII-Zeichenkette (in HEX-Notation) in bin<69>r wandeln und versenden
CONTROL = CETA800 Kommunikation mit dem Lecktester CETA800.
Es wird das Protokoll der CETA800 verwendet. Das zu <20>bertragende
Anweisungszeichen und Datenblock eines CETA800-Telegramms ist als
Hex-String im Parameter SENDDATA_x einzutragen.
------------------------------</pre><b><a name="param7">7</a> DATANUMBER</b><pre>
7.1 FUNCTION = INIT/DOWNLOAD
Anzahl der aus einem File auszulesenden und via serielle Schnittstelle zu uebertragenden Bytes;
es ist hier in jedem Fall ein sinnvoller Wert &gt; 0 anzugeben;
7.2 FUNCTION = RCV
Anzahl der zu lesenden Bytes;
Default ist '-' (Minus, entspricht der Null), dh. es werden soviele Zeichen gelesen, wie verfuegbar sind
bzw. soviele Zeichen bis zur vorgegebenen Endekennung (s.o., Parameter 'TERMSEQUENZ' im Configfile);
------------------------------</pre><b><a name="param8">8</a> DEV_TIMEOUT</b><pre>
beim Daten-Transfer vom und zum Device kann eine Timeout-Bedingung vorliegen;
8.1 beim Senden:
das angesprochene Device meldet XOFF, jedoch ein XON wird nicht mehr gesendet;
damit der weitere Pruefablauf nicht unterbrochen wird, kann durch die Angabe eines Timeouts
(in Millisekunden) die maximale Transferunterbrechung angegeben werden;
8.2 beim Empfang:
das angesprochene Device liefert keine Daten oder meldet XOFF, ohne anschliessend ein XON zu senden;
der Anwender kann spezifizieren, wie lange ein Transfer maximal dauern darf;
Wichtig:
Die Transfer-Dauer ist abhaengig von der zu transferierenden Datenmenge, der Transfer-Rate und der
Antwortzeit des angeschlossenen Device!
------------------------------</pre><b><a name="param9">9</a> SENDDATA_1</b><pre>
ASCII-Zeichenkette, die versendet werden soll (maximal 80 Zeichen).
Es kann auch eine &amp;-Variabel uebergeben werden;
------------------------------</pre><b><a name="param10">10</a> SENDDATA_2</b><pre>
dito
Die Felder werden zunaechst konkateniert, bevor sie
via serielle Schnittstelle an ein Device versendet werden.
------------------------------</pre><b><a name="param11">11</a> SENDDATA_3</b><pre>
dito
Dieses und die vorangegangenen Felder werden zunaechst
konkateniert, bevor sie via serielle Schnittstelle an ein Device versendet werden.
------------------------------</pre><b><a name="param12">12</a> SENDDATA_4</b><pre>
dito
Dieses und die vorangegangenen Felder werden zunaechst
konkateniert, bevor sie via serielle Schnittstelle an ein Device versendet werden.
Wichtig:
Die Uebertragung von "Sonderzeichen" kann durch Steuerbefehle in den Zeichenketten (\X0A oder \X0D,
entspr. Linefeed bzw. CarriageReturn) erzwungen werden.
Findet sich ein solches Zeichen am Ende einer Zeichenkette, werden alle bis dahin eingegebenen
Zeichen (konkatenierten Zeichenketten) komplett uebertragen. Sollte danach noch eine weitere Zeichen-
kette folgen, wird diese erst im Anschluss daran uebertragen.
------------------------------</pre><b><a name="param13">13</a> FILENAME</b><pre>
Der Anwender gibt hier den Namen einer Datei an, dessen Inhalt vollstaendig an ein Device uebertragen werden soll.
Der Dateiname muss in Grossbuchstaben angegeben werden.
Die Datei findet sich auf dem entsprechenden Leitrechner (in SaW auf dem lrp3) im Verzeichnis
/daten_lrp3/pruef_ccs/Suchpfad...
Der 'Suchpfad' wird dabei im Configfile, "sercom.cnf", spezifiziert.
Wichtig:
Es werden ausschliesslich druckbare Zeichen uebertragen,
also Zeichen zwischen Hexadezimal 0x20 (=Leerzeichen) und hexadezimal 0x7E(='~')!
------------------------------</pre><b><a name="param14">14</a> RECEIVED_DATA</b><pre>
&amp;-Variable, die die Antwort des Device enthaelt (maximal 80 Zeichen);
------------------------------</pre><b><a name="param15">15</a> PARAMETER1</b><pre>
Parameter, mit dem angegeben wird, welcher Teil der empfangenen Daten auszugeben ist;
------------------------------</pre><b><a name="param16">16</a> PARAMETER2</b><pre>
Parameter, mit dem angegeben wird, welcher Teil der empfangenen Daten auszugeben ist;
Beispiel:
- PARAMETER1 und PARAMETER2 sind beide '-' (Minus), welches die Default-Einstellung ist:
die empfangenen Daten werden unveraendert an die &amp;-Variable weitergegeben;
- Auswahl eines Bereichs innerhalb der empfangenen Daten durch Ziffern:
Empfangen wurde z.B. "Hallo World"
PARAMETER1: 3
PARAMETER2: 9
RCVD_DATA enthaelt dann "llo Wor"
------------------------------</pre><b><a name="param17">17</a> ERRORFLAG</b><pre>
Dies Flag wird nur dann auf den Wert 1 gesetzt, sollte bei FUNCTION = 'INIT', 'DOWNLOAD', 'SEND', 'RCV' ein
Schreib- bzw. Lesefehler erkannt worden sein.
Konnte ein File nicht geoeffnet werden, erfolgt ebenfalls eine Fehlermeldung hierueber.
Im Fehlerfall wird die im Configfile, "serialcom.cnf", definierte Sequenz an das Device uebertragen.
Es werden dann beim naechsten Listenlauf saemtliche Schritte mit "INIT" erneut ausgefuehrt!
------------------------------</pre><b><a name="param18">18</a> WAIT</b><pre>
Mit diesem Parameter kann eine Zeit in ms angegeben werden, die in jedem Fall nach Senden der Daten
bzw. nach senden des Breakstrings bei einem Programmabbruch gewartet wird
------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,101 @@
<HTML>
<HEAD>
<TITLE>E_SKM_U_WANDEL</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>E_SKM_U_WANDEL</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_skm_u_wandel.C,v 1.5 2004/12/22 07:24:36 wes3rt Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Anschalten von Bits auf der Spannungswandlerkarte
f<>r SKM
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_skm_u_wandel.C
Autor: RtW/TEF72-Keppler(100298)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_skm_u_wandel(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Diese Routine schaltet die Eing<6E>nge der Spannungswandlerkarte <20>ber die
Analogschalter auf die Leitungen a17 - a28 des FU3.
Verwendet wird die Karte um Drehzahlsignale die von der SKM generiert
werden von 0-5V auf -2V - +2V zu wandeln.
Parameterbeschreibung:</pre><b><a name="param3">3</a> ANSTEUER_UNIT</b><pre> Hier ist SKMANALOG_01 zu verwenden.</pre><b><a name="param4">4</a> EINGAENGE</b><pre> 0 = Mode-Leitungen von der SKM aus
1 = Mode-Leitungen von der SKM ein</pre><b><a name="param5">5</a> ANALOGSCHALTER</b><pre> 1111 = Kanal 1-4 gehen <20>ber Bypass (Pegel 0-5V)
0000 = Kanal 1-4 gehen <20>ber Analogschalter (Pegel -2V - +2V)</pre><b><a name="param6">6</a> MASSESCHALTER</b><pre> 1. Bit= Masse SKM Analog GND mit jeweiligem SG-Pin schalten.
2. Bit= Die Masse wird auf ac8 geschaltet.
00 = Massen aufgetrennt
11 = Massen geschlossen</pre><b><a name="param7">7</a> AUSGAENGE</b><pre>z.B.: 01011010 (Bit 1 - 8)
Ausg<73>nge auf a26/c26, a29/c29, a21/c21 und a17/c17
Bit 1 Bit 2 Bit 3 Bit 4 Bit 5 Bit 6 Bit 7 Bit 8
a25/c25 a26/c26 a28/c28 a29/c29 a21/c21 a22/c22 a17/c17 a18/c18
| | | | | | | |
OUT 1 OUT 4 OUT 3 OUT 2
0 = offen
1 = geschlossen
OUT 1 - 4 entspricht den Kan<61>len 1 - 4. Jeder Kanal kann auf 2
verschiedene Ausg<73>nge geschaltet werden.</pre><b><a name="param8">8</a> SONDERFKT</b><pre>Durchschaltung der Buchsen
0 = BNC 5 -&gt; BNC 7
1 = BNC 6 -&gt; BNC 7
Revision 1.1 2001/12/18 10:44:35 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.3 1999/12/22 10:06:54 keppler
$ID -&gt; $Id
Revision 1.2 1999/12/22 09:17:35 keppler
$Header -&gt; $Id
Revision 1.1 1999/11/23 14:21:12 katzenma
Initial Version by Sniff
Revision 1.1 98/06/04 14:42:56 14:42:56 keppler (Fritz Keppler)
Initial revision
Revision 1.1 97/12/02 14:24:43 14:24:43 juilfs (Joerg Juilfs)
Initial revision
Revision 1.1 96/07/10 10:26:01 10:26:01 keppler (Fritz Keppler)
Initial revision
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,61 @@
<HTML>
<HEAD>
<TITLE>E_SLOWMOTION</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>E_SLOWMOTION</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
---------------------------------------------------------------------
Kurzbeschreibung:Timingprobleme durch 'ausbremsen' unter linux reduzieren
---------------------------------------------------------------------
Projekt: Projektname
Sourcefile: e_slowmotion.C
Autor: SzP/TEF72-Gebhardt(121205)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x),Suse Linux
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_slow,otion(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
MD,E_WAIT
,PRUEFSCHRITT 10
,POSITION 10
,TR_ADD YES/NO
,E_OUT YES/NO
,M_DMM YES/NO</pre><b><a name="param3">3</a> TR_ADD:</b><pre>
Angabe ob Treiberwartezeit und Pr<50>flistenwartezeit sich additiv auswirken.(nur Linux)
Default: NO</pre><b><a name="param4">4</a> E_OUT:</b><pre>
Wartezeit bei E_OUT aufrufen.(nur Linux)
Default: YES</pre><b><a name="param5">5</a> M_DMM:</b><pre>
Wartezeit bei M_DMM aufrufen.(nur Linux)
Default: YES
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,64 @@
<HTML>
<HEAD>
<TITLE>E_SOFTWTEST</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>E_SOFTWTEST</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_softwtest.C,v 1.5 2004/01/22 16:40:40 lehmann Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Initialisierung von Array-Variablen
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_softwtest.C
Autor: RtW/TEF72-Juilfs (12.12.95)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_softwtest(
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Dieses Modul legt fest, von welchen Prozessen die IO-Daten durch den
Prozess CCS_Softwaretest gespeichert werden sollen.
Dies erfolgt durch die Uebergabe der einzelenen Prozess-
kuerzel, durch ";" getrennt. Sollen alle Prozesse aktiviert werden,
erfolgt dies durch die Uebergabe von "ALL".
Vorsicht !! wird dieses Modul aufgerufen, werden die bis dahin
erfassten Daten gel<65>scht, von daher sollte dieses Modul direkt nach
dem E_DOKU Modul eingefuegt werden.
Beschreibung der Modul<75>bergabeparameter:</pre><b><a name="param1">1</a> PRUEFSCHRITT</b><pre>
GAUDI Pr<50>fschritt
------------------------------</pre><b><a name="param2">2</a> POSITION</b><pre>
PAV- Position
------------------------------</pre><b><a name="param3">3</a> Liste</b><pre>der zu aktivierenden Prozesse mit ; getrennt
z.B. BO;VI;
falls alle Prozesse aktiviert werden sollen
kann dies mit ALL erfolgen
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,62 @@
<HTML>
<HEAD>
<TITLE>E_SSHT_COM</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>E_SSHT_COM</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_ssht_com.C,v 1.7 2004/08/25 11:20:58 greule Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Kommunikation mit Slingshot Karte
---------------------------------------------------------------------
Projekt: IVS
Sourcefile: e_ssht_com.C
Autor: RtW/TEF32-Gueltling (19.11.2003)
Zielsystem: SuSE Linux 8.2
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_ssht_com(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Aufrufparameter laut Modglobal.
&lt; 1&gt; PRUEFSCHRITT
&lt; 2&gt; POSITION
&lt; 3&gt; SSHT_NR SSHT-Nr z.B. SSHT_1
&lt; 4&gt; FU_SSHT_COM MOVIE, STOPMOVIE, GRAB, ADDIMAGES,...
&lt; 5&gt; SSHT_ADR Adresse Register, EEPROM, Destination Bildeinzug
&lt; 6&gt; SSHT_VALUE z.B. Wert/Werte die zu programmieren sind
( 7) SSHT_LENTH Laenge
( 8) SSHT_MODUS L/S/INIT Lesefunktion
( 9) RETURN_WERT
(10) MG_ERROR
Aufgabe des Modules ist es, die Kommunikation mit der
Frame Grabber Karte durchzufuehren
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,62 @@
<HTML>
<HEAD>
<TITLE>E_SSHT_INIT</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>E_SSHT_INIT</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_ssht_init.C,v 1.4 2003/12/05 09:48:39 gueltlin Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Initialisieren Slingshot Karte
---------------------------------------------------------------------
Projekt: IVS
Sourcefile: e_ssht_init.C
Autor: RtW/TEF32-Gueltling (18.11.2003)
Zielsystem: SuSE Linux 8.2
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_ssht_init(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Aufrufparameter laut Modglobal.
&lt; 1&gt; PRUEFSCHRITT
&lt; 2&gt; POSITION
&lt; 3&gt; SSHT_NR SSHT-Nr z.B. SSHT_1
&lt; 4&gt; FU_SSHT_INIT Init oder Close
&lt; 5&gt; SSHT_DEVICE Better / David Connection
&lt; 6&gt; BITTIEFE 8,10 od 12 Bit
&lt; 7&gt; BILDGROESSE z.B. 640x480
( 8) BILDPOSITION
( 9) TIMEOUT Angabe in Sek
(10) MG_ERROR
Aufgabe des Modules ist es, die Frame Grabber Karte Slingshot zu
initialisieren.
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,70 @@
<HTML>
<HEAD>
<TITLE>E_STEP</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>E_STEP</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_step.C,v 1.2 2002/02/27 09:35:11 wiese Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Aus / Einschalten des Stepbetriebes
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_step.C
Autor: RtW/TEF72-juilfs (08.08.97)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_step(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
<20>bergabeparameter anhand der Modglobal.stl
MD,e_step
,PRUEFSCHRITT 1
,POSITION 2
,STEP_FUNKTION 3
OFF = Stepbetrieb Ausschalten
ON = Stepbetrieb wieder einschalten
Mit diesem Modul kann der Stepbetrieb aus oder wieder eingeschaltet
werden. Dies bedeutet, das ein nicht Stepf<70>higer Pr<50>fschrittsbereich
von 2 E_STEP Modulen geklammert wird.
1. Aufruf STEP_FUNKTION= OFF
.
.
.
.
2. Aufruf STEP_FUNKTION= ON
Grund: Es gibt Pr<50>fpositionen (Low Dump Dioden) wo nicht angehalten
werden darf.
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,90 @@
<HTML>
<HEAD>
<TITLE>E_STUELIDATA</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>E_STUELIDATA</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_stuelidata.C,v 1.4 2004/07/29 15:34:52 wiese Exp $
---------------------------------------------------------------------
Kurzbeschreibung: set and read paras for bom or stueckliste
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_stuelidata
Autor: RtW2/TEF32-Wiese (27.10.03)
Zielsystem: HP9000/V743 (HP-RT 3.01), /7/C/D (HP-UX 10.20)
Sprache: ANSI-C
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_stuelidata(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
Parameter:
PRUEFSCHRITT 0
POSITION 1
FUNCTION 2
SUBFUNCTION 3
VAR1 4
VAR2 5
VAR3 6
VAR4 7
VAR5 8
VAR6 9
VAR7 10
FEHLERFLAG 11
ERGEBNIS 12
------------------------------------------------------------------------
Aufruf: im Vectorinterpreter
error = (*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
if (error == -1)
{
// Fehlerbehandlung
}
---------------------------------------------------------------------
Funktionsbeschreibung:
This modul sets and reads some parameter for setting variables in shm</pre><b><a name="param3">3</a> FUNCTION:</b><pre> Container: Set and read the Containernumbers</pre><b><a name="param4">4</a> SUBFUNKTION</b><pre> Depending on FUNKTION:
FUNKTION Container:
get: Ausgabe des Containers
set: Setzen der Containernummer
VAR1-7: Variables depending on FUNKTION and SUBFUNKTION
This modul sets and reads some parameter for setting variables in shm
the following functions are defined:
Set Container Softwarenumber
Function: Container
Subfunction: SET
VAR1: Containerertype (FSW(1-n) // TSW // WP) or something else
VAR2: Softwarenumber for this container
VAR3-n: reserved by this document
Read Container Softwarenumber
Function: Container
Subfunction: GET
VAR1: Containerertype (FSW(1-n) // TSW // WP) or something else
VAR2-n: reserved by this document
ERGEBNIS: Softwarenumber
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,48 @@
<HTML>
<HEAD>
<TITLE>E_SWITCH</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>E_SWITCH</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_switch.C,v 1.2 2005/03/04 15:54:09 lehmann Exp $
-------------------------------------------------------------------------
Kurzbeschreibung: 64 Schalter E1442A Modul
-------------------------------------------------------------------------
Projekt: Common Core System - BOSCH
Sourcefile: e_switch.C
Autor: AnW/FVS5 Schneider Romeo
Zielsystem: HP9000 743rt vxi02 (HP-UX 9.05 ; HP-RT 02.11)
Sprache: Ansi C; C++
-------------------------------------------------------------------------
Aufruf: &lt;GFMT KS=on TAB=8 LF=on&gt;
int e_switch(shm_stringpointer *zeilen_wert, // &lt;I&gt; Zeiger auf Werte
long index, // &lt;I&gt; Index Nummer
long anzahl) // &lt;I&gt; Anzahl der Werte
-------------------------------------------------------------------------
Returnparameter: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
Funktionsbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
<20>bernimmt die Parameter und deutet Sie m<>glichst so, wie sie in der
modglobal.stl definiert worden sind.
Das Modul ist in der Lage, die 64 Schalter einer E1442A anzusprechen.
-------------------------------------------------------------------------
Fehlerbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
LISO Fehlerbehandlung
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,56 @@
<HTML>
<HEAD>
<TITLE>E_SWITCH_SR</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>E_SWITCH_SR</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_switch_sr.C,v 1.1 2003/09/15 09:42:47 lehmann Exp $
-------------------------------------------------------------------------
Kurzbeschreibung: Gaudi Modul E1442 relay switch
-------------------------------------------------------------------------
Projekt: Common Core System - BOSCH
Sourcefile: e_switch_sr.C
Autor: AnW/FVS5 Schneider Romeo
Zielsystem: HP9000 743rt vxi02 (HP-UX 9.05 ; HP-RT 02.11)
Sprache: Ansi C; C++
-------------------------------------------------------------------------
Aufruf: &lt;GFMT KS=on TAB=8 LF=on&gt;
int e_switch_sr( char *PRUEFSCHRITT
,char *POSITION
,char *MODUL
,char *FUNKTION
,char *KARTE
,char *SWITCH1
,char *SWITCH2
,char *SWITCH3
,char *SWITCH4
,char *SWITCH5
,char *SWITCH6
,char *SWITCH7
,char *SWITCH8)
-------------------------------------------------------------------------
Returnparameter: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
Funktionsbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
Dieses Modul schaltet die E1442 relay switch Karte
-------------------------------------------------------------------------
Fehlerbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
LISO Fehlerbehandlung
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,185 @@
<HTML>
<HEAD>
<TITLE>E_TABLEROTATE</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>E_TABLEROTATE</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_tablerotate.C,v 1.8 2005/09/01 07:11:40 sniff Exp $
---------------------------------------------------------------------
Short description: call of TABLE_ROTATE
---------------------------------------------------------------------
Projekt: ACC
Sourcefile: m_tablerotate.C
Autor: SSE/C.Hermann (20.02.96)
Zielsystem: PC Linux
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
int e_tablerotate(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Description:
Module parameters:</pre><b><a name="param1">1</a> PRUEFSCHRITT</b><pre>
GAUDI step number
------------------------------</pre><b><a name="param2">2</a> POSITION</b><pre>
PAV- Position
------------------------------</pre><b><a name="param3">3</a> ANSTEUER_UNIT</b><pre> Name of the device (see PAM-Config file)
------------------------------</pre><b><a name="param4">4</a> ACHSE</b><pre> definition of the used axis
X or Y</pre><b><a name="param5">5</a> KOORDINATE</b><pre> Coordinate-Value in deg (relative +/-180<38> to the
desiered aim =&gt; ZIEL)</pre><b><a name="param6">6</a> RUNDUNG</b><pre> rounding value for the value from KOORDINATE.
(number of digits after the decimal point)</pre><b><a name="param7">7</a> WINKELSPEED</b><pre> deg-speed in ged / sec</pre><b><a name="param8">8</a> MODUS</b><pre> M : move to the desierd coordinate + wait
till the position is reached
S : send the command to move to the desired coordinate to the control,
but do NOT wait till the position is reached.
L : Wait till the engine has stopt</pre><b><a name="param9">9</a> ZIEL</b><pre> AIM ; aim character of the Rotate-Control-Config-File
T : Triple-mirror
A : Absorber
J : Justage
Z : Aim-Simulator
R : move to reference point</pre><b><a name="param10">10</a> TIMEOUT</b><pre> Timeout in sec</pre><b><a name="param11">11</a> ERGEBNIS</b><pre> return-value</pre><b><a name="param12">12</a> FEHLERFLAG</b><pre>
...
---------------------------------------------------------------------------------------------------------------------
Configuration
---------------------------------------------------------------------------------------------------------------------
**Configuration of the Table-Rotate-Control**
In the main PAM-Config-File (i.e. ccs7483.cnf) you have to enter a line with the "UNITS".
Here you difine the link to the HW-UNIT-File (i.g. hw_units_ccs7483.cnf).
Example of an entry in the PAM-Config-File:
UNITS = hw_units_ccs7483.cnf
In the HW-Unit-FILE must be an entry for the used Table-Control.
Format of the Entry-Line:
Unit-Name;0;Driver-Typ;0;0;0;-;-; .
Example:
DREHTISCH;0;0;0;0;0;-;-;
When the testlist is loding the information of the Unit-Name and Drivertype are retrived.
In our example:
Unit-Name: DREHTISCH
Driver-Typ: 0 ( 0 is ISEL )
With this Information, the parameters for the serial connection are retrieved from the
PAM-Config-File (i.e. ccs7483.cnf)
**Configuration of the serial connection**
In the PAM-Config-File (i.e. ccs7483.cnf) has to be the entry TABLE_ROTATE_DEV_DREHTISCH_CNF.
Here you define the link to the Serial-Config-File (i.e. tablerotate_dev.cnf).
In this file are the definitions of the serail parameters.
.
Example:
PAM-Config-File:
TABLE_ROTATE_DEV_DREHTISCH_CNF = tablerotate_dev.cnf
tablerotate_dev.cnf:
TR_DEVFILE = /dev/ttyS0
TR_BAUDRATE = 9600
**Configuration of the rotate-control**
In the PAM-Config-File (i.e. ccs7483.cnf) there has to be an entry TABLE_ROTATE_&lt;DrvTypName&gt;_CNF
(i.e. TABLEROTATE_ISEL_CNF for the ISEL-rotate-control).
Here you define the link to the Rotate-Control-Config-File (i.e. tablerotate_isel.cnf).
In this file the parameters of the Rotate-Control are defined.
Example:
PAM-Config-File:
TABLE_ROTATE_ISEL_CNF = tablerotate_isel.cnf
Rotate-Control-Config-Files:
*-----------------------------------------------------------------------
*| Config for ISEL-Control |
*| |
*| ! ACHTUNG AUTOMATISCH ERSTELLT; AENDERUNGEN KOENNEN VERLOREN GEHEN! |
*| |
*| Erstellt : Wed Feb 20 13:47:18 2002 |
*| |
*-----------------------------------------------------------------------
* engine data
* 1. entry : Max. Winkelgeschwindigkeit Grad/s
* 2. entry : Max. Ansteuerfrequenz Schritte / s
* 3. entry : Min. Ansteuerfrequenz Schritte / s
* 4. entry : Typ. Ansteuerfrequenz Schritte / s
* 5. entry : Schrittweite Grad / Schritt
MOTDATA; 55.549999; 10000; 30; 4000; 0.005550
* Liste of aims
* one aim per line
* 1. entry : AIM (ZIEL) - caracter for GAUDI-Module
* 2. entry : Name (for dokumentation)
* 3. entry : horizontal value
* 4. entry : vertical value
G; GRUNDSTELLUNG ; 18018; 0
N; NULLPUNKT ; 10; 20
A; ABSORBER ; 30; 40
T; SPIEGEL ; 50; 60
J; JUSTAGE ; 70; 80
Z; ZIEL ; 90; 100
---------------------------------------------------------------------
Funktionsbeschreibung:
Beschreibung der Modul<75>bergabeparameter:</pre><b><a name="param1">1</a> PRUEFSCHRITT</b><pre>
GAUDI Pr<50>fschritt
------------------------------</pre><b><a name="param2">2</a> POSITION</b><pre>
PAV- Position
------------------------------</pre><b><a name="param3">3</a> ANSTEUER_UNIT</b><pre> Name des Ger<65>tes laut PAM Beschreibungsfile
------------------------------</pre><b><a name="param4">4</a> ACHSE</b><pre> Angabe der Achse, die verfahren werden soll
X oder Y
bzw
H = Horizontal
V = Vertikal</pre><b><a name="param5">5</a> KOORDINATE</b><pre> Koordinatenwert in Grad (Abweichung +/-180<38> vom
Zielpunkt =&gt; ZIEL), der angefahren werden soll</pre><b><a name="param6">6</a> RUNDUNG</b><pre> Rundungskriterium fuer Werte im Parameter KOORDINATE.
Anzahl der Nachkommastellen</pre><b><a name="param7">7</a> WINKELSPEED</b><pre> Winkelgeschwindigkeit in Grad / Sekunde</pre><b><a name="param8">8</a> MODUS</b><pre> M : Anfahren der angegebenen Koordinate + warten, bis
der Motor die Position erreicht hat.
S : Kommando : "anfahren der Koordinate" an Motorsteuerung
senden. Aber nicht warten, bis die Koordinate erreicht
wurde.
L : Warten, bis Motor "anfahren der Koordinate" abgeschlossen
hat.
I: Initialisierung (Referenzfahrt und Anfahren Beladepunkt)
C: ??</pre><b><a name="param9">9</a> ZIEL</b><pre> Zielauswahl aus Motorbeschreibungsdatei
T : Triple-Spiegel
A : Absorber
J : Justage
Z : Zielsimulation
R : Referenzfahrt</pre><b><a name="param10">10</a> TIMEOUT</b><pre> Timeout in Sekunden</pre><b><a name="param11">11</a> ERGEBNIS</b><pre> Rueckgabewert</pre><b><a name="param12">12</a> FEHLERFLAG</b><pre>
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,97 @@
<HTML>
<HEAD>
<TITLE>E_TOOL</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>E_TOOL</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_tool.C,v 1.7 2004/06/04 09:15:29 gueltlin Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Aufruf eines externen Programmes/Scriptes
---------------------------------------------------------------------
Projekt: BOSCH ccs
Sourcefile: e_tool.C
Autor: RtW2/TEF32-Gueltling
Zielsystem: SuSE Linux 8.1
Sprache: Ansi-C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
------------------------------------------------------------------------
Aufruf: im Vectorinterpreter
error = (*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
if (error == -1)
{
// Fehlerbehandlung
}
------------------------------------------------------------------------
Funktionsbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
Das Modul ruft ein Programm oder shell Script auf. Das Programm /
shell Script liefert Retun Wert:
0: Abarbeitung ok
1: Fehler in Abarbeitung
sonst: Pruefling schlecht
Gro<72>/Klein-Schreibung:
Default bei Gaudi ist Gro<72>schreibung. Es kann mittels "^" Zeichen
Umgeschaltet werden (Toggle).
Platzhalter:
Platzhalter werden mittels Routine covert_variables aufgeloest.
Syntax %{xx}
Momentan unterstuetzt:
%{TTNR},%{TYP},%{VARIANTE},%{WERK},%{SWNR},%{ECUID},%{KNOTEN},
%{SECTION},%{MSEC},%{SEC},%{MIN},%{HOUR},%{DAY},%{MONTH},
%{YEAR},%{TESTSWNR}
Ausgaben
Die Ausgaben der aufgerufenen Programmes / Scripts werden auf
/tmp/e_tool_&lt;PID&gt;.txt umgelenkt.Meldungen, die den String
ERROR enthalten, werden im Fehlerfall in das Log-File des CCS
uebernommen.
Falls der Debug-Level DEB_KOMM gesetzt ist erfolgt keine
Ausgabeumlenkung.
<20>bergabeparameter anhand der Modglobal.stl
,PRUEFSCHRITT
,POSITION
,P_START SGTEST:RUESTLAUF
Modul wird beim Test des SG oder beim Ruestlauf durchlaufen
,SUBDIR Unterverzeichnis imn dem das Programm zu finden ist
,PROGRAMMNAME Name vom Programme oder shell script
,P_WARTE Warte X Sekunden auf Beendigun des Programmes
0 warte ewig
-1 kehrt sofort zurueck
,ABORT_SIGNAL Sende Signal an Prozess bei Abbruck
,TERMINAL Das Programm kann in einem eigenen X-Fenster laufen
nocht nicht implementiert
,PARA1 Uebergabeparameter an Script / Programm
,PARA2
,PARA3
,PARA4
,PARA5
,RETURN_WERT Als Return WErt kommt die PID des neuen Prozesses zurueck
,ERRORFLAG Returnwert des Prozesses = 1 --&gt; Fehler im System
sonst Geraet schlecht
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,102 @@
<HTML>
<HEAD>
<TITLE>E_TRIGGER</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>E_TRIGGER</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_trigger.C,v 1.11 2005/09/01 07:11:40 sniff Exp $
---------------------------------------------------------------------
Kurzbeschreibung:
---------------------------------------------------------------------
Projekt: TS2000
Sourcefile: e_out_bosch
Autor: RtW/TEF72-Name (10.11.95)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_trigger(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Dieses Modul hat die Aufgabe, die PAV Standard Parameter PEGEL und FLANKE
zu der Triggerkarte zu geben. Da die Triggerkarte je nach Verwendungsart
die Triggerlines und die Eingangseinheiten selbst bestimmt, m<>ssen diese
Informationen den nachfolgenden Modulen wie E_SCHANNER und M_DMM
mitgeteilt werden. Dies wird mit Returnvariablen aus diesem Modul
realisiert.
Das Modul E_SCANNER ben<65>tigt die Information wo die SG-Pins an dem
Koppelfeldausgangmultipexer an die Triggerkarte geschaltet werden sollen.
Das Modul liefert im Returnparameter SCANN_UNIT den Namen des Ausgangs-
multiplexers. Dieser Namen steht im PAM-Beschreibungsfile unter der
Rubrik : MESSKOPPELFELD-START.
Das Multimeter ben<65>tigt die Information, an welcher Triggerline das Trigger-
ereignis anliegt.
Das Modul liefert im Returnparameter TRG_LINE die Nummer der Triggerline.
Diese Nummer wird dem Modul M_DMM <20>bergeben.
<20>bergabeparameter anhand der Modglobal.stl
------------------------------------------
MD,E_TRIGGER</pre><b><a name="param1">1</a> PRUEFSCHRITT</b><pre></pre><b><a name="param2">2</a> POSITION</b><pre></pre><b><a name="param3">3</a> TRG_NAME</b><pre> :Symbolischer Namen aus dem PAM-Beschreibungsfile
TRIG_01</pre><b><a name="param4">4</a> MAX_PEGEL</b><pre> :Maximaler Triggerpegel</pre><b><a name="param5">5</a> PEGEL</b><pre> :Triggerpegel f<>r Triggersignal
!Der Pegel ist immer exakt der Pegel, bei dem getriggert wird!
Die Hysterese wird je nach Flanke addiert oder
subtrahiert</pre><b><a name="param6">6</a> FLANKE</b><pre> :Triggerflanke
P Positiv
N Negativ
Die Triggerflanke wird in der Modglobal kodiert.
N ---&gt;0
P ---&gt;1</pre><b><a name="param7">7</a> DELAY</b><pre> :Triggerverz<72>gerung in Sekunden</pre><b><a name="param8">8</a> MESSTEILER</b><pre>:Information ob ein Spannungsteiler in der Kassette
verdrahtet wurde.
50 Triggerpegel mu<6D> durch 50 geteilt werden
1 Triggerpegel braucht nicht ver<65>ndert werden
- Kein Messteiler angelegt</pre><b><a name="param9">9</a> E_TRG_MODE</b><pre>:NORM: Keine besonderheiten. Die Triggerkarte wird besetzt.
NEW: Es wird ein neuer Logischer Name als INPUT angelegt.
(z.B: f<>r die Benutzung des CLOCK2 der VXK5010)
DEL: Freisetzen von belegten Triggerlines anhand des
Logischen Namen
DVM_TRG: Sondermodus f<>r Makro DCV_TRG: Von der mitgegebenen
Delay - Zeit wird soviel im Timer verarbeitet, da<64>
das DMM entweder 0us oder &gt; 100us
weiterzuverarbeiten. Die R<>ckgabe der Restzeit erfolgt
<20>ber den Parameter RESTZEIT
Falls das Spikefilter aus E_TRIGGER_INIT verwendet wird,
wird die Spikefilterzeit von der Delay-Zeit abgezogen.
Falls die Spikefilterzeit &gt; Delay-Zeit, wird die Spikefilter-
zeit in vollem Umfang verwendet und die Delayzeit auf 0 gesetzt.
Returnparameter</pre><b><a name="param10">10</a> SCANN_UNIT</b><pre>: <20>bergabe zum Modul E_SCANNER
&amp; Return Parameter der Scannerlinie</pre><b><a name="param11">11</a> TRG_LINE</b><pre> : <20>bergebparameter zum Modul M_DMM
&amp; Return Parameter der Linie (0-7: Line, -1 Keine)</pre><b><a name="param12">12</a> RESTZEIT</b><pre> : <20>bergebparameter zum Modul M_DMM
&amp; Return Parameter der Restzeit: (0, 100us - unendlich)
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,120 @@
<HTML>
<HEAD>
<TITLE>E_TRIGGER_INIT</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>E_TRIGGER_INIT</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_trigger_init.C,v 1.11 2005/09/01 07:11:40 sniff Exp $
---------------------------------------------------------------------
Kurzbeschreibung:
---------------------------------------------------------------------
Projekt: TS2000
Sourcefile:
Autor: RtW/TEF72-Name (10.11.95)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_out_bosch(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
neu ab 1.2.98: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
MD,E_TRIGGER_INIT
,PRUEFSCHRITT 1 1
,POSITION 2 2
,VXI_GERAET 3 3
,TRG_NAME_A 4 4
,MODE_A 5 5
,TIME_A 6 6
,HYSTERESE_A 7 7
,GATE_MODE_A 8 8
,SPIKEFILT_A 9
,TRG_NAME_B 10 9
,MODE_B 11 10
,TIME_B 12 11
,HYSTERESE_B 13 12
,SPIKEFILT_B 14
,TRG_NAME_C 15 13
,MODE_C 16 14
,TIME_C 17 15
,HYSTERESE_C 18 16
,GATE_MODE_C 19 17
,SPIKEFILT_C 20
,TRG_NAME_D 21 18
,MODE_D 22 19
,TIME_D 23 20
,HYSTERESE_D 24 21
,SPIKEFILT_D 25
Dieses Modul ist f<>r die Vorbelegung der Triggerkarte mit kanalspezifischen
Parametern zust<73>ndig. Die kanalspezifischen Parameter sind im Modul als
Parameter abgebildet.
Die Parameter die im Modul E_TRIGGER besetzt werden, sind Spannung und Flanke.</pre><b><a name="param3">3</a> VXI</b><pre>- Geraet:Hier wird ausgew<65>hlt, welche Triggerkarte im System zugelassen
wurde. Dieser Parameter mu<6D> auf TRIG_01 gesetzt werden, da nur
eine Triggerkarte unterst<73>tzt wird.</pre><b><a name="param4">4</a> TRG_NAME</b><pre>_x:Logischer Name, mit dem dieser Kanal angesprochen werden soll
Der logische Name dient dem E_TRIGGER, herauszufinden, auf wel
chem Kanal die Triggerkarte arbeitet. Dadurch k<>nnen die unter
schiedlichen Hardware - Funktionen der Triggerkarte den
Erfordernissen eines Pr<50>fprogramms zugeordnet werden. Dazu ist
nur ein erneutes Aufrufen des Moduls erforderlich.</pre><b><a name="param5">5</a> MODE_x:</b><pre> Umschaltung der digitalen Filterung -&gt;
DIR: Keine digitale Filterung
HLD:(A/B) Hold - Funktion -&gt; das erzeugte Trigger -Signal ist immer
TIME_x lang
SPI: Das Trigger-Signal mu<6D> TIME_x lang sein, um zu triggern
DEL:(A/B) Delayfunktion: Das Trigger-Signal wird um TIME_x verz<72>gert
Dieser Modus ist erforderlich, wenn auf die TRG_DELAY - Funk
tion im E_TRIGGER zugegriffen werden soll.
xxx_S:(A/B) Single_shot mit Funktion wie oben</pre><b><a name="param6">6</a> TIME_x:</b><pre> Zeit f<>r MODE_x</pre><b><a name="param7">7</a> HYSTERESE:</b><pre>Hysterese in Volt oder in (%) der Pegels (im E_TRIGGER bezogen
auf 0). Umschaltung (%/absolut) durch Eintragen eines
(%)-Zeichens.
Die Hysterese wird dem Pegel je nach Flanke hinzuaddiert oder
abgezogen. Der Pegel ist immer exakt der Pegel, bei dem
getriggert wird!</pre><b><a name="param8">8</a> GATE_MODE_x:</b><pre> Umschaltung der Gate - Funktion (nur verf<72>gbar bei A und C)
DIR: Keine Gate - Funktion
KANAL_x: Kanal x (A-D) wird f<>r die Gatefunktion benutzt
INV_KANAL_x: Der invertierte Kanal x (A-D) wird f<>r die Gatefunktion benutzt
(ab Version B)
HOLD_OFF_x: Hold_Off - Signal des Kanal x (A/B) wird f<>r die Gatefunktion
hinzugezogen
INV_HOLD_OFF_x: Das Invertierte Hold_Off - Signal des Kanal x (A/B) wird f<>r
die Gatefunktion hinzugezogen (ab Version B)
FUNKT_0, FUNKT_1:Ausgaben des Triggerkartenprozessors werden zum Gaten ver
wendet (zur Zeit noch nicht definiert) (ab Version C m<>glich)
OFF: Kanal wird Tristate geschaltet
Logischer Name: Der Logische Name wird gesucht und ev. angelegt. Triggerline wird
ev. definiert und an das GATE angeschaltet.</pre><b><a name="param9">9</a> SPIKEFILTER_x:</b><pre>ein ab Version B verf<72>gbarer zus<75>tzlicher digitaler Spikefilter
wird eingeschleift und mit der hier eingetragenen Zeit besetzt.
Der Spikefilter ist nicht aktiv, wenn MODE_x=SPI
(Hintereinaderschaltung von 2 Spikefiltern ist t<>dlich)
Maximalzeit &lt; 64,00 ms
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,29 @@
<HTML>
<HEAD>
<TITLE>E_TSVP</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>E_TSVP</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
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> FUNCTION</b><pre>
Schl<68>sselwort, das die Treiberfunktion, die aufgerufen werden soll, angibt
------------------------------</pre><b><a name="param4">4</a> PARA1</b><pre>... PARA15
Parameter f<>r die Treiberfunktion
------------------------------</pre><b><a name="param5">5</a> RETURN_1</b><pre>... RETURN_3
Return-Werte der Treiberfunktion
------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,164 @@
<HTML>
<HEAD>
<TITLE>E_VERFOLGUNG</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>E_VERFOLGUNG</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_verfolgung.C,v 1.4 2005/09/01 07:11:40 sniff Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Pr<50>fvortschrittskontrolle durch Fertigung
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_verfolgung.C
Autor: RtW/TEF72-Keppler (10.12.97)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_verfolgung(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Aufgabe des Moduls ist, die Relais auf der pr<70>flingsspezifischen Platine
zu setzen.
<20>bergabeparameter
MD,E_VERFOLGUNG
,PRUEFSCHRITT 1
,POSITION 2
,MODUS 3
,DATUM0 4
,STANDTYP_1_8 5
,OFFSET_1_8 6
,DATUM1 7
,DATUM2 8
,DATUM3 9
,DATUM4 10
,DATUM5 11
,DATUM6 12
,DATUM7 13
,DATUM8 14
,TUG_S1 15
,TOG_S1 16
,TUG_S2 17
,TOG_S2 18
,TUG_S3 19
,TOG_S3 20
,TUG_S4 21
,TOG_S4 22
,TUG_S5 23
,TOG_S5 24
,TUG_S6 25
,TOG_S6 26
,TUG_S7 27
,TOG_S7 28
,TUG_S8 29
,TOG_S8 30
,CODE_WAHL 31
,ZEIGER_ANF 32
,ZEIGER_END 33
,ERGEBNIS 34
,FEHLERFLAG 35</pre><b><a name="param3">3</a> MODUS:</b><pre>
'MESS': Hiermit kann Komunikation mit dem SG auf-
genommen werden. Der Sendestring zum SG, setzt
sich aus DATUM0 und DATUMx wie unter DATUM0
beschrieben, zusammen.
Die vom SG als Antwort kommenden Daten k<>nnen
auf ihre Richtigkeit <20>berpr<70>ft werden.
Um den zur<75>ckgekommenen String auswerten zu
k<>nnen, mu<6D> der ZEIGER_ANF auf den Anfang der
auszuwertenden Daten zeigen.
Der ZEIGER_END zeigt bis an welche Stelle der
String ausgewertet werden soll.
Die Differenz von ZEIGER_ANF und ZEIGER_END
darf maximal 3 betragen.
Die Art der Auswertung wird unter CODE_WAHL
eingetragen.
'ERR ': Mit diesem Modus kann ein Fehlerflag im SG
inkrementiert werden. Der im Vorschritt mit
MESS ausgelesen String mu<6D> dieses Fehlerflag
enthalten. Die Stelle an welcher das Fehlerflag
im geholten String steht, wird mit ZEIGER_ANF
gekennzeichnet.
Die Stelle, an welcher das Fehlerflag am String
zum SG stehen soll wird in DATUM1 oder .. DATUM8
mit YY gekennzeichnet.
Die Auswertung wird an der Stelle ZEIGER_END
vorgenommen.
Es ist nur ein Byte auswertbar in diesem Modus.
Der Parameter CODE_WAHL mu<6D> auf HEX stehen.
BESONDERHEIT:
Ist das letzte Zeichen von MODUS ein O, so wird
bei fehlerfreiem Durchlauf der Aktion eine
OK - Meldung ausgegeben.</pre><b><a name="param5">5</a> STANDTYP_1_8:</b><pre>Hier wird die Standtypen eingetragen, bei denen das
entsprechende Datum eingetragen wird.
Z.B. (HT||EP||TT||AB||TT||TT||TT||TT)
Taucht ein Standtyp mehr als 1 mal auf, so wird bei
jeder zugeh<65>rigen Toleranz gepr<70>ft ob der Messwert
innerhalb dieser Toleranz ist.</pre><b><a name="param6">6</a> OFFSET_1_8:</b><pre> Offset zum ZEIGER_ANF und ZEIGER_END abh<62>ngig vom
Standtyp. Z.B. (00||04||00||00||00||00||00||00)</pre><b><a name="param4">4</a> DATUM0:</b><pre> Die hier eingetragenen Daten wie Befehlsbyte
(Blocktitel) oder Adressen werden Standtypunabh<62>ngig
zum SG gesendet. Der Datenstring zum SG
wird wie folgt zusammengesetzt.
Zuerst alle DATUM0 bis XX
Dann der Standtpabh<62>ngige String (z.b. DATUM1)</pre><b><a name="param7">7</a> DATUM1</b><pre> : Daten an das Steuerger<65>t
DATUM1 - DATUM4 werden abh<62>ngig vom Standtyp
an das SG gesendet. N<>mlich DATUM1 bei STANDTYP1
usw.
:</pre><b><a name="param14">14</a> DATUM8:</b><pre></pre><b><a name="param15">15</a> TUG_S1:</b><pre>Toleranz f<>r Standtyp 1
:</pre><b><a name="param30">30</a> TOG_S8:</b><pre>Toleranz f<>r Standtyp 8</pre><b><a name="param32">32</a> ZEIGER_ANF:</b><pre> Zeigt auf den Anfang des R<>ckgabestrings nach
dem Antwortblocktitel (sofern forhanden) wenn
er auf 1 gesetzt ist.</pre><b><a name="param33">33</a> ZEIGER_END:</b><pre> Die Auswertung ergfolgt bis zu diesem Zeiger-
stand. Er darf maximal 3 gr<67><72>er sein als
ZEIGER_ANF wenn in CODE_WAHL nichts eingetragen
ist.
Revision 1.1 2001/12/18 10:51:22 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.4 2001/02/22 14:45:26 juilfs
*** empty log message ***
Revision 1.3 1999/12/22 10:06:44 keppler
$ID -&gt; $Id
Revision 1.2 1999/12/22 09:17:28 keppler
$Header -&gt; $Id
Revision 1.1 1999/11/23 14:20:41 katzenma
Initial Version by Sniff
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,48 @@
<HTML>
<HEAD>
<TITLE>E_VI</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>E_VI</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_vi.C,v 1.2 2005/03/04 15:54:09 lehmann Exp $
-------------------------------------------------------------------------
Kurzbeschreibung: V/I Karte E6171A Modul
-------------------------------------------------------------------------
Projekt: Common Core System - BOSCH
Sourcefile: e_vi.C
Autor: AnW/FVS5 Schneider Romeo
Zielsystem: HP9000 743rt vxi02 (HP-UX 9.05 ; HP-RT 02.10)
Sprache: Ansi C; C++
-------------------------------------------------------------------------
Aufruf: &lt;GFMT KS=on TAB=8 LF=on&gt;
int e_vi (shm_stringpointer *zeilen_wert, // &lt;I&gt; Zeiger auf Werte
long index, // &lt;I&gt; Index Nummer
long anzahl) // &lt;I&gt; Anzahl der Werte
-------------------------------------------------------------------------
Returnparameter: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
Funktionsbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
<20>bernimmt die Parameter und deutet Sie m<>glichst so, wie sie in der
modglobal.stl definiert worden sind.
e_vi_sr ( wert[0],...,wert[35] ) wird aufgerufen
Das Modul ist in der Lage, die VI-Karte E6171A anzusprechen.
-------------------------------------------------------------------------
Fehlerbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
LISO Fehlerbehandlung
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,94 @@
<HTML>
<HEAD>
<TITLE>E_VI_PSLOCK</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>E_VI_PSLOCK</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_vi_pslock.C,v 1.5 2004/12/23 10:33:40 jsj3rt Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Locking Programcounter from the VI
---------------------------------------------------------------------
Projekt: Projektname
Sourcefile: e_vi_pslock.C
Autor: RtW/TEF72-Juilfs(080696)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_vi_pslock(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
funktiondescription:
MD,E_VI_PSLOCK
,PRUEFSCHRITT
,POSITION
,PS_LOCK
Locking Vectorinterpreter from aktuell Programcounter
Input ON
Unlocking Vectorinterpreter from aktuell Programcounter
OFF
Revision 1.1 2001/12/18 10:52:57 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.7 2001/07/27 14:20:03 lehmann
einheitliche semaphoren routinen eingesetzt
Revision 1.6 2001/02/22 14:45:26 juilfs
*** empty log message ***
Revision 1.5 2001/01/16 14:28:46 juilfs
Linux
Revision 1.4 2000/12/14 07:58:07 juilfs
*** empty log message ***
Revision 1.3 2000/09/20 12:57:17 juilfs
*** empty log message ***
Revision 1.2 2000/09/19 16:07:24 juilfs
*** empty log message ***
Revision 1.1 2000/09/19 14:58:13 juilfs
*** empty log message ***
Revision 1.3 1999/12/22 10:06:39 keppler
$ID -&gt; $Id
Revision 1.2 1999/12/22 09:17:24 keppler
$Header -&gt; $Id
Revision 1.1 1999/11/23 14:20:27 katzenma
Initial Version by Sniff
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,78 @@
<HTML>
<HEAD>
<TITLE>E_VI_SR</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>E_VI_SR</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_vi_sr.C,v 1.1 2003/09/15 09:42:47 lehmann Exp $
-------------------------------------------------------------------------
Kurzbeschreibung: Gaudi Modul E6171 MEASUREMENT CONTROL MODULE (IVY)
-------------------------------------------------------------------------
Projekt: Common Core System - BOSCH
Sourcefile: e_vi_sr.C
Autor: AnW/FVS5 Schneider Romeo
Zielsystem: HP9000 743rt vxi02 (HP-UX 9.05 ; HP-RT 02.11)
Sprache: Ansi C; C++
-------------------------------------------------------------------------
Aufruf: &lt;GFMT KS=on TAB=8 LF=on&gt;
int e_vi_sr (char *Pruefschritt,
char *Position ,
char *Wiederholen,
char *Label_End ,
char *Stop ,
char *Modul ,
char *Mode ,
char *Cur_Soll ,
char *Cur_Range ,
char *Volt_Soll ,
char *Volt_Range,
char *Comp_Volt ,
char *Comp_Dir ,
char *Ampli_Gain,
char *Tim_Period,
char *Interlock ,
char *DVM_Hi_Out,
char *DVM_Lo_Out,
char *Inst_03 ,
char *Inst_04 ,
char *Ampl_Hi_In,
char *Ampl_Lo_In,
char *Attn_Hi_In,
char *Attn_Lo_In,
char *Inst_09 ,
char *Inst_10 ,
char *Inst_11 ,
char *Inst_12 ,
char *Inst_13 ,
char *Inst_14 ,
char *Inst_15 ,
char *Inst_16 ,
char *Src_Hi_Out,
char *Src_Lo_Out,
char *Comp_In ,
char *Trigger_Out)
-------------------------------------------------------------------------
Returnparameter: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
Funktionsbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
Fehlerbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
LISO Fehlerbehandlung
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,111 @@
<HTML>
<HEAD>
<TITLE>E_VXI_SWITCH</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>E_VXI_SWITCH</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_vxi_switch.C,v 1.9 2004/12/08 15:08:00 kj73rt Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Anschalten von VXI Modulen <20>ber die Scannermatrix
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_vxi_switch.C
Autor: SaW/TEF72-Hibon()
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_vxi_switch(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
#C3
Funktionsbeschreibung:
Diese Routine schaltet 64 switch von der vxi-Karte HP E1442A .
Die Anschaltung ist bitweise orientiert.
Ubergabeparameter anhand der "modglobal.stl"
MD,E_VXI_SWITCH</pre><b><a name="param1">1</a> ,PRUEFSCHRITT</b><pre></pre><b><a name="param2">2</a> ,POSITION</b><pre></pre><b><a name="param3">3</a> ,SWITCH01_08</b><pre> (schaltet ac32 bis ac25 Stecker X1)</pre><b><a name="param4">4</a> ,SWITCH09_16</b><pre> (schaltet ac24 bis ac17 Stecker X1)</pre><b><a name="param5">5</a> ,SWITCH17_24</b><pre> (schaltet ac16 bis ac09 Stecker X1)</pre><b><a name="param6">6</a> ,SWITCH25_32</b><pre> (schaltet ac08 bis ac01 Stecker X1)
------------------------------------</pre><b><a name="param7">7</a> ,SWITCH33_40</b><pre> (schaltet ac32 bis ac25 Stecker X2)</pre><b><a name="param8">8</a> ,SWITCH41_48</b><pre> (schaltet ac24 bis ac17 Stecker X2)</pre><b><a name="param9">9</a> ,SWITCH49_56</b><pre> (schaltet ac16 bis ac09 Stecker X2)</pre><b><a name="param10">10</a> ,SWITCH57_64</b><pre> (schaltet ac08 bis ac01 Stecker X2)
HP E1442A
----------------------------
| a32 - c32 channel 00 | Stecker X1 --&gt; switch 01
| a31 - c31 channel 01 | Stecker X1 --&gt; switch 02
| a30 - c30 channel 02 | Stecker X1 --&gt; switch 03
| - - - - - - - - - - |
| a02 - c02 channel 30 | Stecker X1 --&gt; switch 31
| a01 - c01 channel 31 | Stecker X1 --&gt; switch 32
| |
| = = = = = = = = = = = = = | = = = = = = = = = = = = =
| |
| a32 - c32 channel 32 | Stecker X2 --&gt; switch 33
| a31 - c31 channel 33 | Stecker X2 --&gt; switch 34
| a30 - c30 channel 34 | Stecker X2 --&gt; switch 35
| - - - - - - - - - - |
| a02 - c02 channel 62 | Stecker X2 --&gt; switch 63
| a01 - c01 channel 63 | Stecker X2 --&gt; switch 64
----------------------------
Eine '1' schaltet eine Verbindung an.
Eine '0' schaltet eine Verbindung ab.
Ein 'X' laesst eine Verbindung unveraendert (-&gt; don't care).
Beispiel:
SWITCH01_08 = 110000X1
- Pin a32 und c32 verbunden (Stecker X1)
- Pin a31 und c31 verbunden (Stecker X1)
- Pin a30 und c30 nicht verbunden (Stecker X1)
- Pin a29 und c29 nicht verbunden (Stecker X1)
- Pin a28 und c28 nicht verbunden (Stecker X1)
- Pin a27 und c27 nicht verbunden (Stecker X1)
- Pin a26 und c26 unveraendert (Stecker X1)
- Pin a25 und c25 verbunden (Stecker X1)
SWITCH33_40 = 110000X1
- Pin a32 und c32 verbunden (Stecker X2)
- Pin a31 und c31 verbunden (Stecker X2)
- Pin a30 und c30 nicht verbunden (Stecker X2)
- Pin a29 und c29 nicht verbunden (Stecker X2)
- Pin a28 und c28 nicht verbunden (Stecker X2)
- Pin a27 und c27 nicht verbunden (Stecker X2)
- Pin a26 und c26 unveraendert (Stecker X2)
- Pin a25 und c25 verbunden (Stecker X2)
Besonderheiten:
Im Modul m<>ssen immer 8 Bits per Parameter eingeben werden.
Insgesamt also 64 Bits. Sollte die Anzahl nicht stimmen, wird die
Pr<50>fliste abgebrochen und ein Fehler gesendet.
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,81 @@
<HTML>
<HEAD>
<TITLE>E_WAFERMAPPING</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>E_WAFERMAPPING</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_wafermapping.C,v 1.2 2004/03/17 09:50:14 wiese Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Wafermapping
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: e_wafermapping.C
Autor: RtW2/TEF72-Wiese (18.12.03)
Zielsystem: HP9000/V743 (HP-RT 3.01), Linux
Sprache: ANSI-C
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_wafermapping(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
Prototyp:
---------------------------------------------------------------------
Funktionsbeschreibung:</pre><b><a name="param3">3</a> WAFERMAPMODE</b><pre> Funktion der Familie, f<>r die das genutzt wird
die Folgenden Parameter werden je nach Famile verwendet:
WAFERMAPMODE TI Texas Wafermapping</pre><b><a name="param4">4</a> VAR1</b><pre> CHARGE Charge vom CHIP</pre><b><a name="param5">5</a> VAR2</b><pre> WAFER WAFERNUMBER vom CHIP</pre><b><a name="param6">6</a> VAR3</b><pre> X X - Koordinate auf WAFER vom Chip</pre><b><a name="param7">7</a> VAR4</b><pre> Y Y - Koordinate auf WAFER vom Chip
Ti - Mode: nach <20>bergabe von 4 Parametern (Charge, Wafer, X-Koordinate, Y-Koordinate)
diese mit den X-Y-Koordinaten eines entsprechenden Wafer-Map-Files vergleicht
und als Ergebnis "gut" oder "schlecht"
zur<75>ckliefert.
Dabei haben die <20>bergabeparameter folgendes Format:
Beispiel: Test mit:
Charge: 00231394 00240A9C
Wafer: 0004 0004
X: 004B 0048
Y: 0014 0014
(Alle <20>bergabeparameter sind HEX-Werte)
Vorgehensweise TI
1. Umwandeln vom X, Y, Chargennnummmer und WaferID in long int von Basis 16
2. Teil eines Filenames ermitteln aus Chargennummer (Basis 10) +
Waferid (2 Stellen mit f<>hrender 0 Basis 10) -&gt; Filenamepart
3. suchen nach einer Datei mit "Blank + Filenamepart
4. Es darf nur eine Datei vorhanden sein
5. Datei ist immer eine Datei mit Component + " " + Filenamepart
6. Raussuchen der offset Datei nach Component + ".offset"
7. Umrechnen der X und Y - Koordinaten anhand der offset Datei
8. String mit "MAP_XY" ermitteln aus Waferdatei mit den dazugeh<65>rigen folgezeilen.
9. Suchen nach Y-Koordinate. X - String dazu extrahieren
10.Ermitteln, ob X - Wert in diesem Teilstring vorhanden ist.
11.X - Wert vorhanden -&gt; Fehlerflag=0, sonst 1
12.Abbruch bei Syntaxfehler in den Files und fehlendem directory. Ansonsten
nur das Fehlerflag gesetzt. Aus der Meldung in ERGEBNIS oder dem Errorlogfile ist
der Grund des Fehlers eigentlich immer zu erkennen..
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,125 @@
<HTML>
<HEAD>
<TITLE>E_WAIT</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>E_WAIT</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_wait.C,v 1.11 2005/07/25 14:23:23 cvs Exp $
---------------------------------------------------------------------
Kurzbeschreibung:Verbinden des Ansteuerparaneters Wartezeit mit Unit
---------------------------------------------------------------------
Projekt: Projektname
Sourcefile: e_wait.C
Autor: RtW/TEF72-Juilfs(080696)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_wait(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
MD,E_WAIT
,PRUEFSCHRITT 10
,POSITION 10
,WAIT_PARAMETER -
,WAIT 800
,WAIT_FUNKTION NORM/INIT/WAIT
,FIRST_RUN_TIME</pre><b><a name="param3">3</a> WAIT_PARAMETER:</b><pre>
Eingabe des Ansteuerparameternamens der Wartezeit aus der PAV</pre><b><a name="param4">4</a> WAIT:</b><pre> Eingabe der Wartezeit im Millisekunden</pre><b><a name="param5">5</a> WAIT_FUNKTION:</b><pre> INIT
WAIT</pre><b><a name="param6">6</a> FIRST_RUN_TIME</b><pre>
Eingabe der Wartezeit im Millisekunden aber nur im Firstrun. Diese Zeit
wird zus<75>tzlich zu der normalen Wartezeit hinzuaddiert.
Das Modul e_wait hat drei Aufgaben.
1.) Verbinden des Ansteuerparameter Warten mit der Wartezeitunit.
Grund: Der Ansteuerparameter Wartezeit kann von PAV zu PAV
vom Namen varieren. Es gibt aber nur eine zentrale Stelle
wo die Wartezeit abgewartet wird. N<>mlich im BOSCH_OUT
Prozess. Dieser Prozess greift auf die Wartezeitunit zu
und holt sich die Wartezeitangabe.
Das Verbinden des Ansteuerparameters mit der Wartezeitunit
mu<6D> nur einmalig im Pr<50>fprogramm vor dem ersten
e_out Modulaufruf stehen.
Die Wartezeit wird von einem Ansteuerparameter gesteuert
2.) Ablauf einer Wartezeit.
Grund: Es wird oft eine Wartezeit im Pr<50>fprogramm gebraucht
die ohne sonstige Ansteuerungen abl<62>uft.
Die Wartezeit wird im Modul erzeugt
3.) Ablauf einer Mindestzeit innerhalb einer Gruppe von Schritten.
In diesem Fall wird zu Beginn der Gruppe dieses Modul mit
WAIT_FUNKTION=INIT und der Mindestzeit (WAIT) aufgerufen.
Wenn am Ende der Schrittgruppe dieses Modul mit WAIT_FUNKTION=
WAIT aufgerufen wird, wartet es bis zum Erreichen der
Mindestzeit. Sollte die Mindestzeit bereits <20>berschritten
sein, erfolgt eine Fehlermeldung.</pre><b><a name="param6">6</a> RETURN_WERT:</b><pre>
R<>ckgabewert der WAITUNTIL. Es wird die Laufzeit zur<75>ckgeben, die bisher
verbrucht wurde. Damit kann der
Revision 1.1 2001/12/18 10:53:33 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.8 2001/08/21 12:27:08 ssm3bw
anw- and rtw-version merged
Revision 1.7 2001/07/06 11:34:54 juilfs
Linux
Revision 1.6 2001/02/22 14:45:25 juilfs
*** empty log message ***
Revision 1.5 2001/01/17 18:46:23 juilfs
*** empty log message ***
Revision 1.4 2001/01/16 14:28:46 juilfs
Linux
Revision 1.3 1999/12/22 10:06:39 keppler
$ID -&gt; $Id
Revision 1.2 1999/12/22 09:17:24 keppler
$Header -&gt; $Id
Revision 1.1 1999/11/23 14:20:27 katzenma
Initial Version by Sniff
Revision 1.1 97/12/02 14:24:53 14:24:53 juilfs (Joerg Juilfs)
Initial revision
Revision 1.1 96/07/10 10:26:44 10:26:44 keppler (Fritz Keppler)
Initial revision
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,62 @@
<HTML>
<HEAD>
<TITLE>E_ZEITDIFF</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>E_ZEITDIFF</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: e_zeitdiff.C,v 1.2 2002/02/27 09:38:36 wiese Exp $
------------------------------------------------------------------------
Kurzbeschreibung: F<>r Laufzeitmessungen von Modulen
------------------------------------------------------------------------
Projekt: Bosch-ccs
Sourcefile: e_zeitdiff.C
Autor: RtW/TEF72-Keppler (03.07.96)
Zielsystem: HP9000/V743 (HP-RT 2.10)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void e_trigger_tmux(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
------------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
------------------------------------------------------------------------
Returnparameter: keine
------------------------------------------------------------------------
Funktionsbeschreibung:</pre><b><a name="param1">1</a> PRUEFSCHRITT</b><pre>
GAUDI Pr<50>fschritt
------------------------------</pre><b><a name="param2">2</a> POSITION</b><pre>
PAV- Position
------------------------------
Eingabeparameter:</pre><b><a name="param3">3</a> MODUS</b><pre> Art der Zeitmessung</pre><b><a name="param4">4</a> ERGEBNIS</b><pre>nicht benutzt
Routine zur Laufzeitermittlung von Modulen.
Das Modul stellt die Zeitdifferenz von Modulaufruf zu Modulaufruf statt.
Es kann auch die Zeitdifferenz seit dem ersten Modulaufruf ausgegeben werden.
------------------------------------------------------------------------
Fehlerbeschreibung:
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,99 @@
<HTML>
<HEAD>
<TITLE>F_6046_ZUSATZ</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>F_6046_ZUSATZ</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: f_6046_zusatz.C,v 1.2 2002/02/27 09:39:46 wiese Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Verbinden der 6046 Karte mit der Unit
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: f_6046_zusatz.C
Autor: RtW/TEF72-Juilfs (30.04.96)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void f_6046(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
<20>bergabeparameter anhand der Modglobal.stl
MD,F_6046_ZUSATZ
,PRUEFSCHRITT 1
,POSITION 2
,ANST_UNIT_1 3
,EXT_REF_1 4
,EXT_REF_CH_1 5
,SENSE_1 6
,ANST_UNIT_2 7
,EXT_REF_2 8
,EXT_REF_CH_2 9
,SENSE_2 10
Aufgabe dieses Modules ist es, die Zusatzdaten zu einer 6046 Karte
an den Hardwaretreiberprozess zu geben. Die 6046 Karte hat 2 getrennte
Spannungsgeber. Die Ansteuerwerte werden per F_ANSTEUER Modul an den
Hardwaretreiber gegeben. Die Zusatzdaten sind in der Regel kein Bestandteil
der PAV und werden daher <20>ber dieses spezielle Modul abgewickelt.</pre><b><a name="param3">3</a> ANST_UNIT_1:</b><pre>Symbolischer Namen aus dem PAM-Beschreibungsfile</pre><b><a name="param4">4</a> EXT_REF_1:</b><pre>Einschalten der externen Referenz mit der Eingabe
"EXT"</pre><b><a name="param5">5</a> EXT_REF_CH_1:</b><pre>Zuweisen der Pinnummer wo die externe Spannung in die Karte eingespeist wird.
" a01/a03/a16"</pre><b><a name="param6">6</a> SENSE_1:</b><pre>Einschalten der Senseleitung f<>r die Ausgangsspannung
"EIN"
Revision 1.1 2001/12/18 10:34:55 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.5 2001/06/12 10:26:56 lehmann
Put_unitaenderung eingefuegt
Revision 1.4 2001/05/23 13:00:24 lehmann
put_unit_aenderung eingef<65>hrt
Revision 1.3 1999/12/22 10:08:19 keppler
$ID -&gt; $Id
Revision 1.2 1999/12/22 09:15:13 keppler
$Header -&gt; $Id
Revision 1.1 1999/11/23 14:22:21 katzenma
Initial Version by Sniff
Revision 1.1 97/12/02 14:22:15 14:22:15 juilfs (Joerg Juilfs)
Initial revision
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,88 @@
<HTML>
<HEAD>
<TITLE>F_6051_ZUSATZ</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>F_6051_ZUSATZ</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: f_6051_zusatz.C,v 1.3 2003/04/17 09:36:11 wiese Exp $
-----------------------------------------------------------------------------
Kurzbeschreibung: GAUDI-Interface im Vectorinterpreter fuer 6051 Karte
-----------------------------------------------------------------------------
Projekt: CCS
Sourcefile: f_6051_zusatz
Autor: SaW/TEF72-Oberste-Vorth (14.05.96)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
-----------------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
int f_6051_zusatz ( shm_stringpointer *zeilen_wert
,long index_on_expPrfLst
,long anzahl_parameter );
-----------------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
( Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
-----------------------------------------------------------------------------
Funktionsbeschreibung:
<20>bergabeparameter anhand der "modglobal.stl"
MD,F_6051_ZUSATZ</pre><b><a name="param1">1</a> PRUEFSCHRITT</b><pre></pre><b><a name="param2">2</a> POSITION</b><pre></pre><b><a name="param3">3</a> ANSTEUER_UNIT</b><pre>z.B. I_GEBER_1</pre><b><a name="param4">4</a> SPANNUNG</b><pre> Auswahl der Spannung am I-Geber der positive Wert
darf "104" Volt nicht ueberschreiten;
die Einheit der Spannung ist [V];</pre><b><a name="param5">5</a> REFERENZ</b><pre> Auswahl eines Referenzkanals
Parameter: "EXT"
(in diesem Fall muss eine entsprechende
positive Referenzspannung &lt;= 20.0 Volt
angegeben werden )
"INT"/"-"
(in diesem Fall wird die interne Referenz
beruecksichtigt / das ist die Default-
Einstellung )</pre><b><a name="param6">6</a> MAX_U_REFERENZ</b><pre> Auswahl der Referenzspannung bei angeschalteter
externer Referenz
Parameter: positive Werte &gt; "0.0" und &lt;= "20.0"
in der Einheit [V]</pre><b><a name="param7">7</a> OUTPUT_MODE</b><pre> Auswahl des Ausgangsmodus des Gebers:
Parameter: "ON" - Ausgang eingeschaltet
"UT" - Ausgang ungetaktet
( dasselbe wie "ON" )
"T" - Ausgang getaktet
alle uebrigen Eingaben schalten
den Ausgang ab;
der Zustand des Ausgangs ist unabhaengig von den
sonstigen Einstellungen;
in der Default-Einstellung ist der Ausgang abgeschaltet;</pre><b><a name="param8">8</a> STROMBEREICH</b><pre> Auswahl des einzustellenden Bereichs;
damit wird die automatische Bereichswahl ausgeschaltet
und stoerende Umschalteffekte vermieden (hier nicht aktiv);
---------------------------------------------------------------------------
Revision 1.1 2001/12/18 10:13:43 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.6 2001/06/12 10:26:55 lehmann
Put_unitaenderung eingefuegt
Revision 1.5 2001/05/23 13:00:24 lehmann
put_unit_aenderung eingef<65>hrt
Revision 1.4 2000/02/15 11:15:09 KLM3SA
Sourcen aus testsystem_21 kopiert.
---------------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,87 @@
<HTML>
<HEAD>
<TITLE>F_6060_ZUSATZ</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>F_6060_ZUSATZ</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: f_6060_zusatz.C,v 1.2 2002/02/27 09:41:13 wiese Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Verbinden der 6060 Karte mit der Unit
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: f_6060_zusatz.C
Autor: RtW/TEF72-Juilfs (30.04.96)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void f_6060(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
<20>bergabeparameter anhand der Modglobal.stl
MD,F_6060
,PRUEFSCHRITT
,POSITION
,ANSTEUER_UNIT
,IGN_TRIGGER_P
,IGN_IMPULS_P
,IGN_BEZUG_P
Revision 1.1 2001/12/18 10:34:13 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.5 2001/06/12 10:26:57 lehmann
Put_unitaenderung eingefuegt
Revision 1.4 2001/05/23 13:00:26 lehmann
put_unit_aenderung eingef<65>hrt
Revision 1.3 1999/12/22 10:08:26 keppler
$ID -&gt; $Id
Revision 1.2 1999/12/22 09:15:18 keppler
$Header -&gt; $Id
Revision 1.1 1999/11/23 14:10:48 katzenma
Initial Version by Sniff
Revision 1.1 97/12/02 14:22:17 14:22:17 juilfs (Joerg Juilfs)
Initial revision
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,135 @@
<HTML>
<HEAD>
<TITLE>F_6069</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>F_6069</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: f_6069.C,v 1.3 2003/09/24 15:52:31 juilfs Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Initialisierungsmodul f<>r 6069 FU 3 Einschub
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: f_6069.C
Autor: RtW/TEF72-Juilfs (18.03.97)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void f_6069(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
Die 6069 Karte enth<74>t 10 Teileinheiten.
Aufgabe des Modules ist es verschiedene Quellen (Arb,KFG)
des FU3 und VXI-Racks zum Pr<50>fling zu schalten.
Die Teileinheiten 1-7 kann ein Verst<73>rker oder eine R-Dekade zugeordnet werden.
Welche Teileinheit davon betroffen ist wird mit den Parametern
V_AN_STECKER und D_AN_STECKER angew<65>hlt.
Die Teileinheiten 1-4 k<>nnen gleichzeitig mit einem Reihenwiderstand best<73>ckt
werden.
Die Teileinheiten 8-10 <20>bernehmen nur Anschaltaufgaben.
<20>bergabeparameter anhand der Modglobal.stl
MD,F_6069</pre><b><a name="param1">1</a> ,PRUEFSCHRITT</b><pre></pre><b><a name="param2">2</a> ,POSITION</b><pre></pre><b><a name="param3">3</a> ,ANSTEUER_UNIT</b><pre> Hardwareunitname vom Pambeschreinungsfile
:FU3_ANSCHALT</pre><b><a name="param4">4</a> ,STECKER</b><pre> :Auswahl des Steckes (1 - 10)</pre><b><a name="param5">5</a> ,REIHENWID</b><pre> Zu den Steckern 1 - 4 k<>nnen zus<75>tzliche Reihenwiderst<73>nde
geschaltet werden.
:EIN /AUS</pre><b><a name="param6">6</a> ,DEKADEN_WERT</b><pre> Die Stecker 1 - 7 k<>nnen mit einer R-Dekade beschaltet werden
Die R-Dekade ist auf der 6069 realisiert. Sie kann nur einmal
vergeben werden.
:Eingabe in Ohm Bereich 0 - 1550 Ohm</pre><b><a name="param7">7</a> ,V_PFAD</b><pre> Die Stecker 1 - 7 k<>nnen mit einem Verst<73>rker beschaltet werden
Der Verst<73>rker ist auf der 6069 realisiert. Er kann nur einmal
vergeben werden.
Faktor: 1
: 5
Zu jedem Eingangsstecker k<>nnen bis zu je 6 Ausgangsrelais
geschaltet werden. (Je nach Stecker unterschiedlich)
Es kann hier der SG pin und Bezugspin angegebeb werden.
Es ist aber auch m<>glich, Den Bezugspin von einem Ansteuerparameter
an die 6069 zu geben.
Beispiel: ANST_BEZUG_1=
CALL F_6069
PRUEFSCHRITT =268
POSITION =0
ANSTEUER_UNIT =FU3_ANSCHALT
STECKER =1
REIHENWID =-
DEKADEN_WERT =-
V_PFAD =-
ANST_PIN_1 =349
ANST_BEZUG_1 =&lt;W/E_A_KS1_349
ANST_PIN_2 =336
ANST_BEZUG_2 =&lt;W/E_A_KS2_336
ANST_PIN_3 =350
ANST_BEZUG_3 =&lt;W/E_A_KS3_350
ANST_PIN_4 =337
ANST_BEZUG_4 =&lt;W/E_A_KS4_337
ANST_PIN_5 =-
ANST_BEZUG_5 =-
ANST_PIN_6 =-
ANST_BEZUG_6 =-
BITS_63_61 =010 oder ST1
Mit der Eingabe von ST1 wird das Signal vom Stecker 1 <20>ber den lokalen bus geroutet
Die Stecker 2 - 7 k<>nnen daher, vom Stecker 1 versorgt werden. Das Signal vom
Stecker 1 geht <20>ber S1 (lokaler Bus) <20>ber die relais 96/97 nach S3.
Hier kann nun jeder Stecker auf diesem Bus zugreifen.</pre><b><a name="param8">8</a> ,ANST_PIN_1</b><pre></pre><b><a name="param9">9</a> ,ANST_BEZUG_1</b><pre></pre><b><a name="param10">10</a> ,ANST_PIN_2</b><pre></pre><b><a name="param11">11</a> ,ANST_BEZUG_2</b><pre></pre><b><a name="param12">12</a> ,ANST_PIN_3</b><pre></pre><b><a name="param13">13</a> ,ANST_BEZUG_3</b><pre></pre><b><a name="param14">14</a> ,ANST_PIN_4</b><pre></pre><b><a name="param15">15</a> ,ANST_BEZUG_4</b><pre></pre><b><a name="param16">16</a> ,ANST_PIN_5</b><pre></pre><b><a name="param17">17</a> ,ANST_BEZUG_5</b><pre></pre><b><a name="param18">18</a> ,ANST_PIN_6</b><pre></pre><b><a name="param19">19</a> ,ANST_BEZUG_6</b><pre></pre><b><a name="param20">20</a> ,BITS_63_61</b><pre>
Revision 1.1 2001/12/18 10:33:37 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.5 2001/06/12 10:27:00 lehmann
Put_unitaenderung eingefuegt
Revision 1.4 2001/05/23 13:00:27 lehmann
put_unit_aenderung eingef<65>hrt
Revision 1.3 1999/12/22 10:08:31 keppler
$ID -&gt; $Id
Revision 1.2 1999/12/22 09:15:28 keppler
$Header -&gt; $Id
Revision 1.1 1999/11/23 14:15:14 katzenma
Initial Version by Sniff
Revision 1.1 97/12/02 14:22:17 14:22:17 juilfs (Joerg Juilfs)
Initial revision
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,83 @@
<HTML>
<HEAD>
<TITLE>F_6078</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>F_6078</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: f_6078.C,v 1.3 2004/12/08 15:07:51 kj73rt Exp $
---------------------------------------------------------------------
Kurzbeschreibung:
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: f_6078.C
Autor: RtW/TEF72-Juilfs(100298)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void f_6078(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:</pre><b><a name="param1">1</a> PRUEFSCHRITT</b><pre> Pr<50>fschritt im GAUDI</pre><b><a name="param2">2</a> POSITION</b><pre> PAV-POS</pre><b><a name="param3">3</a> ANSTEUER_UNIT</b><pre> Name der Hardwareunit</pre><b><a name="param4">4</a> HA_HI_PEGEL</b><pre> Hinterachse Highpegel</pre><b><a name="param5">5</a> HA_LO_PEGEL</b><pre> Hinterachse Lowpegel</pre><b><a name="param6">6</a> VA_HI_PEGEL</b><pre> Vorderachse Highpegel</pre><b><a name="param7">7</a> VA_LO_PEGEL</b><pre> Vorderachse Lowpegel
Angabe der
Spannungspegel von
-5Volt bis + 5Volt
Strompegel
xxxxxxxx</pre><b><a name="param8">8</a> HA_DIMENSION</b><pre> mA/V</pre><b><a name="param9">9</a> VA_DIMENSION</b><pre> ma/V</pre><b><a name="param10">10</a> HA_BYPASS</b><pre> EIN/AUS</pre><b><a name="param11">11</a> VA_BYPASS</b><pre> EIN/AUS</pre><b><a name="param12">12</a> HA_R</b><pre> EIN/AUS Serienwiderstand</pre><b><a name="param13">13</a> HA_C</b><pre> EIN/AUS Kondensator</pre><b><a name="param14">14</a> VA_R</b><pre> EIN/AUS Serienwiderstand</pre><b><a name="param15">15</a> VA_C</b><pre> EIN/AUS Kondensator</pre><b><a name="param16">16</a> RST_M_S</b><pre> Anschaltung an ac15 EIN/AUS</pre><b><a name="param17">17</a> MODE_2_3</b><pre> Anschaltung an ac23 EIN/AUS</pre><b><a name="param18">18</a> MODE_0_1</b><pre> Anschaltung an ac16 EIN/AUS</pre><b><a name="param19">19</a> SIGNAL_GND</b><pre> Anschaltung GND Karte EIN/AUS</pre><b><a name="param20">20</a> SG_GND</b><pre> Anschaltung GND ac8 EIN/AUS</pre><b><a name="param21">21</a> C_GND</b><pre> Anschaltung C_ANA_GIGIT_GND EIN/AUS</pre><b><a name="param22">22</a> AN_DFHR_PIN</b><pre> Anschaltung Drehzahlf<6C>hler</pre><b><a name="param23">23</a> AN_DFHR_BEZUG</b><pre> ac19/ac17/ac18</pre><b><a name="param24">24</a> AN_DFHL_PIN</b><pre> Anschaltung Drehzahlf<6C>hler</pre><b><a name="param25">25</a> AN_DFHL_BEZUG</b><pre> ac20/ac21/ac22</pre><b><a name="param26">26</a> AN_DFVR_PIN</b><pre> Anschaltung Drehzahlf<6C>hler</pre><b><a name="param27">27</a> AN_DFVR_BEZUG</b><pre> ac27/ac28/ac29</pre><b><a name="param28">28</a> AN_DFVL_PIN</b><pre> Anschaltung Drehzahlf<6C>hler</pre><b><a name="param29">29</a> AN_DFVL_BEZUG</b><pre> ac24/ac25/ac26
Revision 1.1 2001/12/18 10:36:33 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.4 2001/06/12 10:26:57 lehmann
Put_unitaenderung eingefuegt
Revision 1.3 1999/12/22 10:08:13 keppler
$ID -&gt; $Id
Revision 1.2 1999/12/22 09:15:07 keppler
$Header -&gt; $Id
Revision 1.1 1999/11/23 14:22:09 katzenma
Initial Version by Sniff
Revision 1.1 98/06/04 14:42:56 14:42:56 keppler (Fritz Keppler)
Initial revision
Revision 1.1 97/12/02 14:24:43 14:24:43 juilfs (Joerg Juilfs)
Initial revision
Revision 1.1 96/07/10 10:26:01 10:26:01 keppler (Fritz Keppler)
Initial revision
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,93 @@
<HTML>
<HEAD>
<TITLE>F_6083_ZUSATZ</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>F_6083_ZUSATZ</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: f_6083_zusatz.C,v 1.2 2004/12/16 14:52:36 jsj3rt Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Verbinden der 6083 Karte mit der Unit
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: f_6083_zusatz.C
Autor: RtW/TEF72-Juilfs (30.04.96)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void f_6083(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_zeile
,Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
<20>bergabeparameter anhand der Modglobal.stl
MD,F_6083
,PRUEFSCHRITT
,POSITION
,ANSTEUER_UNIT
,GEN1_TASTVERH 5 - 95 %
,GEN2_TASTVERH 5 - 95 %
,GEN3_TASTVERH 5 - 95 %
,GEN4_TASTVERH 5 - 95 %
,TTL_TREIBER ON/OFF
,SELBSTTEST ON/OFF
;MESSNETRIEB ON/OFF
Revision 1.1 2001/12/18 10:34:13 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.5 2001/06/12 10:26:57 lehmann
Put_unitaenderung eingefuegt
Revision 1.4 2001/05/23 13:00:26 lehmann
put_unit_aenderung eingef<65>hrt
Revision 1.3 1999/12/22 10:08:26 keppler
$ID -&gt; $Id
Revision 1.2 1999/12/22 09:15:18 keppler
$Header -&gt; $Id
Revision 1.1 1999/11/23 14:10:48 katzenma
Initial Version by Sniff
Revision 1.1 97/12/02 14:22:17 14:22:17 juilfs (Joerg Juilfs)
Initial revision
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,305 @@
<HTML>
<HEAD>
<TITLE>F_ANSTEUER</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>F_ANSTEUER</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: f_ansteuer.C,v 1.10 2005/09/01 07:11:40 sniff Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Ansteuerparameter mit Unit verbinden
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: f_ansteuer.C
Autor: RtW/TEF72-Name (10.11.95)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
void f_ansteuer(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf:
void (*funktionen[modulnummer])
(expand_zeile
,expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter-1);
Dieses Modul wird im Vectorinterpreter aufgerufen. Der Aufruf
wird <20>ber die MPI Schnittstelle realisiert.
---------------------------------------------------------------------
Funktionsbeschreibung:
Aufgabe des Modules ist es, Ansteuerparameter mit seiner
Ansteuerinformation mit einer Hardware-Unit zu verbinden.
<20>bergabeparameter anhand der Modglobal.stl
-------------------------------------------</pre><b><a name="param1">1</a> ,PRUEFSCHRITT</b><pre> 1</pre><b><a name="param2">2</a> ,POSITION</b><pre> 2
,ANSTEUER_UNIT 3 symbolischer Namen des PAM-Beschr-File
,ANSTEUER_NAME 4 PAV-Ansteuerparametername
,ANSTEUER_WERT 5 Parameterwert
,ANSTEUER_DIM 6 Parameterdimension
,ANSTEUER_PIN 7 Pinnumer vom PAV-Ansteuerparameter
,ANSTEUER_BEZUG 8 Bezug vom PAV-Ansteuerparameter
,ANSTEUER_ART 9 Modul oder Ansteuerparameter
Das Modul F_ANSTEUER verbindet den symbolischen Namen aus dem
PAM-Beschreibungsfile mit dem Namen des Ansteuerparamters.
ANSTEUER_UNIT:
Der Parameter ANSTEUER_UNIT ist im Pambeschreibungsfile enthalten.
Die ANSTEUER_UNIT ist ein symbolischer Namen (R_DEK_1)..
Statt des symbolischen Namens kann auch die Kartenadresse direkt
eingegeben werden. Daf<61>r wird das "&gt;" Zeichen verwendet.
Die Kartenadresse ist folgenderma<6D>en gegliedert.
- Kartenummer 6043
- Unteradresse 0
- Elementnummer 1 - n
Die Elementnummer mu<6D> nur dann besetzt werden, wenn eine FU-Karte
mehrere Hardwareeinheiten hat. Beispiel ist eine 6043 Karte.
Schreibweise im Parameter ANSTEUER_UNIT: &gt;6043;1;1;</pre><b><a name="param3">3</a> ANSTEUER_NAME:</b><pre> Dieser Parameter ist der Name, der in der PAV als Ansteuerparameter
deklariert ist.</pre><b><a name="param4">4</a> ANSTEUER_WERT:</b><pre> Ansteuerparameter Wert aus der PAV</pre><b><a name="param5">5</a> ANSTEUER_DIM:</b><pre> Ansteuerparameter Dimension aus der PAV</pre><b><a name="param6">6</a> ANSTEUER_PIN:</b><pre> SG Pin aus der PAV
M<>chte man die Funktionskarte direkt auf die Pins des Funktionsbusses
legen kann man auch die Pins direkt eingeben per "&gt;" zeichen.
Beispiel: &gt;a17</pre><b><a name="param7">7</a> ANSTEUER_BEZUG:</b><pre> Bezugspin aus der PAV
M<>chte man die Funktionskarte direkt auf die Pins des Funktionsbusses
legen kann man auch die Pins direkt eingeben per "&gt;" zeichen.
Beispiel: &gt;c17</pre><b><a name="param8">8</a> ANSTEUER_ART:</b><pre> Mit diesem Parameter kann festgelegt werden ob die Harwareeinheit von den
Ansteuerparametern oder von den Modulparametern gesteuert werden soll.
ANSTEUER_PAR --&gt; Steuerung <20>ber Ansteuerparameter
MODUL_PAR --&gt; Steuerung der Ansteuerparameter <20>ber Modulparameter
KOPPLUNG --&gt; Kopplung von Lasten die alternativ ueber den Lastwert
angesprochen werden. Dazu ist es notwendig, dass die
entsprechenden Lasten ueber eine Ansteuervariable
verkn<6B>pft werden. Zurzeit ist die Kopplung der Lasten
6269, 6270 und 6271 m<>glich (ab CCS40)
NEU --&gt; Eingabe eines neuen Namens f<>r den Parameter
ANSTEUER_NAME.
Dies ist notwendig, wenn ein neuer Ansteuername ben<65>tigt
wird und dieser nicht im Ansteuerblock auftaucht.
Dies Funktion wird einmalig verwendet, wenn die Steuerung
der Funktionskarte nur <20>ber das F_ANSTEUER Modul erfolgt.
Ist der neue Ansteuername einmal eingetragen, wird
er anschlie<69>end nur per ANSTEUER_PAR angesprochen.
UNIT_ABSCHALT --&gt; L<>schen der Hardwareunit vom Ansteuerparameter
UNIT_PARALLEL --&gt; Am selben Ansteuerparameter wird eine Unit parallel
angeschaltet
SPLIT_ANST hiermit koennen Werte des Ansteuerparameters auf andere
Ansteuerparameter kopiert werden.
Beispiel:
PRUEFSCHRITT =300
POSITION =1
ANSTEUER_UNIT =-
ANSTEUER_NAME =NTC
ANSTEUER_WERT =GEBER1
ANSTEUER_DIM =
ANSTEUER_PIN =GEBER3
ANSTEUER_BEZUG=GEBER3
ANSTEUER_ART =SPLIT_ANST
Der Wert von Ansteuerparameter NTC wird auf dem Ansteuerparameter GEBER1 umgeleitet
GEBER1 wird als MODUL_PAR vorher deklariert.
Besonderheiten:
---------------
1.) Wird im ANSTEUER_PIN oder ANSTEUER_BEZUG als erstes Zeichen
ein "&gt;" gegeben kann eine direkte Pinzuweisung erfolgen, ohne
Adapterfile.
Beispiel: ANSTEUER_PIN="&gt;a09"
Grund: Ansprechen der Karte ohne Adapterfile.
2.) Wird im ANSTEUER_UNIT der String "SCHALTER" eingegeben, so
wird die Pinnummer der Ansteuervariablen im Ansteuercommon
abgelegt. Als Ansteuerunit wird in diesem Fall das Stimmulikoppelfeld
angenommen.
3.) Wird Parameter ANSTEUER_ART "NEU" eingeben und im Parameter
ANSTEUER_UNIT "-" eingeben, wird nur der Ansteuername im System
bekannt gemacht.
Schalterdefitionen:
-------------------
Im CCS kann es folgende schalter geben.
- Harte Schalter Pin zu Pin
- Spannungsschalter Pin zu Stimulikoppelfeld U_GEBER lo und high
- R_DEKADEN Schalter.
---------------------------------------------------------------------------------
Harte Schalter
---------------------------------------------------------------------------------
1.) Schalter von SG_PIN zu SG_PIN &gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;(Harte Schalter)
Realisation: Schalterkoppelfeld
Beispiel:
CALL F_ANSTEUER
PRUEFSCHRITT =300
POSITION =1
ANSTEUER_UNIT =SCHALTER
ANSTEUER_NAME =E_S_SB
ANSTEUER_WERT =-
ANSTEUER_DIM =-
ANSTEUER_PIN =20D
ANSTEUER_BEZUG=-
ANSTEUER_ART =ANSTEUER_PAR
E_S_SB =12D/ [SA]
SCHALTER_KK1 -&gt; ON_KK1 10
SCHALTER_KK2 -&gt; ON_KK2 11
SCHALTER_KK3 -&gt; ON_KK3 12
SCHALTER_KK4 -&gt; ON_KK4 13
SCHALTER_KK5 -&gt; ON_KK5 14
SCHALTER_SK -&gt; ON_SK 15
SCHALTER_MK -&gt; ON_MK 16
---------------------------------------------------------------------------------
Spannungs Schalter
---------------------------------------------------------------------------------
2.) Schalter die mit U_Gebern realisiert werden &gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;(Spannungsschalter)
In der Standard PAV wird mit mit den Symbolischen
Namen SA_LO SA_HI gearbeitet. Diesen Symbolen werden
in einem Initialisierungsmakro, die Lo/Hi Spannung
zugeordnet.
Es k<>nnen damit 10 Schalter gegen Hi-Spannung und 5
Schalter gegen Lowspannung geschaltet werden.
Beispiel:
1000 CONTINUE
C: Initialisierung der Lo und Hispannung mit den U_Gebern des Stimulikoppelfeldes
L:
MAKRO U_INIT_SA
$POSITION =0
$WERT_U_SA_LO =1.
$BEZUG_SA_LO =1
$REF_SA_LO =INT
$REF_PIN_SA_LO=--
$WERT_U_SA_HI =10.
$BEZUG_SA_HI =1
$REF_SA_HI =INT
$REF_PIN_SA_HI=--
1010 CONTINUE
C:Bekanntmachung des Schalter E_S_SB mit der U_Geberkonfiguration
L:
CALL F_ANSTEUER
PRUEFSCHRITT =1010
POSITION =0
ANSTEUER_UNIT =SCHALTER_LO_HI
ANSTEUER_NAME =E_S_SB
ANSTEUER_WERT =-
ANSTEUER_DIM =-
ANSTEUER_PIN =101
ANSTEUER_BEZUG=-
ANSTEUER_ART =ANSTEUER_PAR
E_S_SB =SA_HI/ [SA]
---------------------------------------------------------------------------------
Dekaden Schalter
---------------------------------------------------------------------------------
3.) Schalter die mit R-dekaden realisiert werden &gt;&gt;&gt;&gt;&gt;&gt;(R-Dekadenschalter)
In der Standard PAV wird mit mit den Symbolischen
Namen SA_LO SA_HI gearbeitet. Im Unterschied zu den U_Gebern
wird aber mit einer R-Dekade der Low und High wert abgebildet.
Dies bedeutet, da<64> zu jedem Schalterpin der per R-Dekade
realisiert wird der Schalterwert "SA_LO" sowie "SA_HI" initialisiert
werden muss.
Beispiel:
300 CONTINUE
C: Initialisieren des Lowwertes
L:
CALL F_ANSTEUER
PRUEFSCHRITT =300
POSITION =1
ANSTEUER_UNIT =SA_LO
ANSTEUER_NAME =E_S_SB
ANSTEUER_WERT =1
ANSTEUER_DIM =KOHM
ANSTEUER_PIN =20D
ANSTEUER_BEZUG=11D
ANSTEUER_ART =NEU
301 CONTINUE
C: Initialisieren des Highwertes
L:
CALL F_ANSTEUER
PRUEFSCHRITT =301
POSITION =1
ANSTEUER_UNIT =SA_HI
ANSTEUER_NAME =E_S_SB
ANSTEUER_WERT =10
ANSTEUER_DIM =KOHM
ANSTEUER_PIN =20D
ANSTEUER_BEZUG=11D
ANSTEUER_ART =NEU
330 CONTINUE
C: -A: E_S_SB: R_DEK_211 -&gt;Zuweisschritt f. SA_LO + SA_H
L:
CALL F_ANSTEUER
PRUEFSCHRITT =330
POSITION =0
ANSTEUER_UNIT =R_DEK_211
ANSTEUER_NAME =E_S_SB
ANSTEUER_WERT =-
ANSTEUER_DIM =-
ANSTEUER_PIN =20D
ANSTEUER_BEZUG=11D
ANSTEUER_ART =ANSTEUER_PAR
E_S_SB =SA_HI/ [SA]
Revision 1.1 2001/12/18 10:32:53 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.5 2001/06/12 10:26:54 lehmann
Put_unitaenderung eingefuegt
Revision 1.4 1999/12/22 10:09:27 keppler
$ID -&gt; $Id
Revision 1.3 1999/12/22 09:16:24 keppler
$Header -&gt; $Id
Revision 1.2 1999/12/02 14:41:49 juilfs
Einbau der Schalterunits
* Revision 1.1 99/11/23 14:14:37 14:14:37 katzenma (Richard)
* Initial Version by Sniff
*
Revision 1.1 97/12/02 14:22:18 14:22:18 juilfs (Joerg Juilfs)
Initial revision
Revision 1.1 96/05/29 18:04:35 18:04:35 juilfs (Joerg Juilfs)
Initial revision
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,155 @@
<HTML>
<HEAD>
<TITLE>F_FEK_SETZ</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>F_FEK_SETZ</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: f_fek_setz.C,v 1.3 2003/04/17 09:36:11 wiese Exp $
---------------------------------------------------------------------
Kurzbeschreibung: <09>berschreiben von Kartentreiberdaten
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: f_fek_setz.C
Autor: RtW/TEF72-Juilfs (23.01.97)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
void f_fek_setz(shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf:
void (*funktionen[modulnummer])
(expand_zeile
,expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter-1);
Dieses Modul wird im Vectorinterpreter aufgerufen. Der Aufruf
wird <20>ber die MPI Schnittstelle realisiert.
---------------------------------------------------------------------
Funktionsbeschreibung:
Aufgabe des Modules ist es, eine Bosch-Karte direkt anzusprechen.
Bedingung ist, da<64> die Karte im PAM- Beschreibungsfile steht.
Um eine Karte anzusprechen, wird der Parameter "ANSTEUER_UNIT"
mit dem Unitnamen der Karte besetzt.Die Parameter DATA_01 - DATA_nn
k<>nnen nun mit Hexwerten belegt werden. Dabei ist m<>glich, nur ein
bestimtes Datenwort zu <20>berschreiben.
Alle Datenworte werden beim Aufruf dieses Modules mit "-" vorbesetzt.
Dies bedeutet, da<64> das vom Kartentreiber errechnete Datenwort nicht
<20>berschrieben wird. Der Anwender kann nun ein bestimmtes Datenwort
<20>berschreiben.
----------------------------------------------------------------------------
!WICHTIG!: (Nur notwendig bei symbolischen Namen)
Da eine Karte aber mehrere Unitnamen haben kann, so mu<6D> beim Ansprechen
der Karte, der Unitnamen angegeben werden, der im Hardwarebeschreibungsfile
den Kartentreiber aufruft.
Beispiel bei einer 6043:
R_DEK_53;1053;5;AN4;6043;0;9;XFU02;-;
R_DEK_54;1054;5;AN4;6043;0;9;XFU02;-;
R_DEK_55;1055;5;AN4;6043;0;9;XFU02;-;
R_DEK_56;1056;5;AN4;6043;0;9;XFU02;2;
Um die R_DEK_53 anzusprechen mu<6D> R_DEK_56 angegeben werden. Die 6043 Karte
braucht insgesamt 12 Datenworte um komplett angesprochen zu sein.
----------------------------------------------------------------------------
Erst ein nachfolgendes E_OUT wird die Daten wirksam an die Harware senden.
<20>bergabeparameter anhand der Modglobal.stl
-------------------------------------------
,PRUEFSCHRITT 1
,POSITION 2
,ANSTEUER_UNIT 3 symbolischer Namen des PAM-Beschr-File
,DATEN_WORT_01 4
.
.
,DATEN_WORT_20</pre><b><a name="param3">3</a> ANSTEUER_UNIT:</b><pre> Der Parameter ANSTEUER_UNIT ist im Pambeschreibungsfile enthalten.
Die ANSTEUER_UNIT ist ein symbolischer Name (R_DEK_1).
Statt des symbolischen Namens kann auch die Kartenadresse direkt
eingegeben werden. Daf<61>r wird das "&gt;" Zeichen verwendet.
Die Kartenadresse ist folgenderma<6D>en gegliedert.
- Kartenummer 6005 | - Kartenummer 6304
- Unteradresse 0 | - Unteradresse 1-15
- Elementnummer 1 - n | - Oberadresse 1-15
Die Elementnummer mu<6D> nur dann besetzt werden, wenn eine FU-Karte
mehrere Hardwareeinheiten hat. Beispiel ist eine 6043 Karte.
Schreibweise im Parameter ANSTEUER_UNIT:&gt;6043;1;1;</pre><b><a name="param4">4</a> DATEN_WORT_01</b><pre>- DATEN_WORT_20 :
Eingabe eines 16 Bit Hexwertes 0000 - FFFF
Revision 1.1 2001/12/18 10:32:23 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.16 2001/10/08 11:02:17 juilfs
*** empty log message ***
Revision 1.15 2001/09/19 12:00:26 juilfs
Unitnummer ge<67>ndert
Revision 1.14 2001/09/17 09:25:19 juilfs
j1 in put_unit<69>nderung
Revision 1.13 2001/09/17 09:21:55 juilfs
unit_nummer eingef<65>gt
Revision 1.12 2001/09/13 15:08:28 juilfs
Unit_anfang generiert um <20>berschreibungen zu verhindern
Revision 1.11 2001/06/12 10:26:57 lehmann
Put_unitaenderung eingefuegt
Revision 1.10 2001/04/12 12:00:46 juilfs
Linux
Revision 1.9 2000/06/13 16:53:37 juilfs
Unit_index an das Koppelfeld <20>bergeben
Revision 1.8 2000/06/13 16:25:57 juilfs
debugg
Revision 1.7 2000/06/09 07:27:32 juilfs
*** empty log message ***
Revision 1.6 2000/06/08 14:14:31 juilfs
*** empty log message ***
Revision 1.5 2000/06/08 08:57:27 juilfs
*** empty log message ***
Revision 1.6 2000/02/17 13:07:49 klm3sa
*** empty log message ***
* Revision 1.1 99/11/23 14:13:07 14:13:07 katzenma (Richard)
* Initial Version by Sniff
*
Revision 1.1 97/12/02 14:22:19 14:22:19 juilfs (Joerg Juilfs)
Initial revision
Revision 1.1 96/05/29 18:04:35 18:04:35 juilfs (Joerg Juilfs)
Initial revision
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,84 @@
<HTML>
<HEAD>
<TITLE>F_IGEBR_ZUSATZ</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>F_IGEBR_ZUSATZ</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Header: /rweglobal/cvs/testsystem/ccs/6_testmodul_pool/bosch_bus_qt/module/f_funktionsmodule/s/src/f_igebr_zusatz.C,v 1.3 2003/04/17 09:36:11 wiese Exp $
-----------------------------------------------------------------------------
Kurzbeschreibung: GAUDI-Interface im Vectorinterpreter fuer 6051 Karte
-----------------------------------------------------------------------------
Projekt: CCS
Sourcefile: f_igebr_zusatz
Autor: SaW/TEF72-Oberste-Vorth (05.12.1997)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
-----------------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
int f_igebr_zusatz( shm_stringpointer *zeilen_wert
,long index_on_expPrfLst
,long anzahl_parameter );
-----------------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
( Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
-----------------------------------------------------------------------------
Funktionsbeschreibung:
<20>bergabeparameter anhand der "modglobal.stl"
MD,F_IGEBR_ZUSATZ</pre><b><a name="param1">1</a> PRUEFSCHRITT</b><pre></pre><b><a name="param2">2</a> POSITION</b><pre></pre><b><a name="param3">3</a> ANSTEUER_UNIT</b><pre>z.B. I_GEBER_1</pre><b><a name="param4">4</a> SPANNUNG</b><pre> Auswahl der Leerlaufspannung auf der Stromgeberkarte;
der positive Wert darf 105 Volt nicht ueberschreiten;
die Einheit der Spannung ist [V];</pre><b><a name="param5">5</a> REFERENZ</b><pre> Auswahl eines Referenzkanals:
EXT
in diesem Fall muss eine entsprechende positive
Referenzspannung &lt;= 20.0 Volt angegeben werden;
INT / -
in diesem Fall wird die interne Referenz
beruecksichtigt / das ist die Default-Einstellung;</pre><b><a name="param6">6</a> MAX_U_REFERENZ</b><pre> Auswahl der Referenzspannung bei angeschalteter
externer Referenz
Parameter: positive Werte &gt; "0.0" und &lt;= "20.0"
in der Einheit [V]</pre><b><a name="param7">7</a> OUTPUT_MODE</b><pre> Auswahl des Ausgangsmodus des Gebers:
ON
Ausgang eingeschaltet
UT
Ausgang eingeschaltet und ungetaktet
(dasselbe wie "ON")
T
Ausgang getaktet
OFF / -
diese Eingaben schalten den Ausgang ab;
der Zustand des Ausgangs ist unabhaengig von den
sonstigen Einstellungen;
in der Default-Einstellung ist der Ausgang abgeschaltet;</pre><b><a name="param8">8</a> STROMBEREICH</b><pre> Auswahl des einzustellenden Strombereichs:
damit werden die automatische Bereichswahl
ausgeschaltet und stoerende Umschalteffekte vermieden;
Default: - (Strombereich wird automatisch gewaehlt)
Wichtig:
Dieses Modul unterstuetzt unterschiedliche Hardware
mit unterschiedlichen Bereichsauswahlmoeglichkeiten.
Das bedeutet, dass bei Vorgabe z.B. eines Bereichs
bis 20mA (z.B. bei 6051) auf der einen Hardware auch
genau dieser Bereich, auf einer anderen Hardware aber
der naechst hoehere ausgewaehlt wird
(z.B. 40mA bei 6077) !!!
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,63 @@
<HTML>
<HEAD>
<TITLE>F_LASTEN</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>F_LASTEN</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: f_lasten.C,v 1.2 2002/02/26 17:48:17 wiese Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Ansteuerparameter mit Unit verbinden
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: f_ansteuer.C
Autor: RtW/FVS72-Name (10.11.95)
Zielsystem: HP9000/V743 (HP-RT 2.11), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
int f_lasten( shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf:
int (*funktionen[modulnummer])
( expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter-1);
Dieses Modul wird im Vectorinterpreter aufgerufen. Der Aufruf
wird <20>ber die MPI Schnittstelle realisiert.
---------------------------------------------------------------------
Funktionsbeschreibung:
Aufgabe des Modules ist es, Ansteuerparameter mit seiner
Ansteuerinformation mit einer Hardwareunit zu verbinden
<20>bergabeparameter anhand der Modglobal.stl
,PRUEFSCHRITT 1
,POSITION 2
,ANSTEUER_UNIT 3 Siehe PAM-Beschreibugsfile
,ANSTEUER_NAME 4 Name des Ansteuerparameters
,ANSTEUER_WERT 5
,ANSTEUER_DIM 6
,ANSTEUER_PIN 7
,ANSTEUER_BEZUG 8
,DATENWORT1 9
,DATENWORT2 10
,DATENWORT3 11
,DATENWORT4 12
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,148 @@
<HTML>
<HEAD>
<TITLE>F_MESSTEILER</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>F_MESSTEILER</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: f_messteiler.C,v 1.6 2004/09/03 07:55:18 juilfs Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Verbinden des Messteiler mit der Unit
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: f_messteiler.C
Autor: RtW/TEF72-Juilfs (23.04.97)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
void f_messteiler(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
(Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
---------------------------------------------------------------------
Funktionsbeschreibung:
<20>bergabeparameter anhand der Modglobal.stl
MD,F_MESSTEILER
,PRUEFSCHRITT
,POSITION
,ANSTEUER_UNIT
,MAX_PEGEL
,MESSTEILER
,PIN_HIGH
,SCHALTER_FUNKT
,TUG
,TOG
,R_TEILER
<EFBFBD>bergabeparameter:
------------------------------------------------------------------------------</pre><b><a name="param3">3</a> ANSTEUER_UNIT:</b><pre> Symbolischer Namen aus dem PAM-Beschreibungsfile
MESSTEILER</pre><b><a name="param4">4</a> MAX_PEGEL:</b><pre> Flagg zum Erkennen des Teilerfaktors</pre><b><a name="param5">5</a> MESSTEILER:</b><pre> Eingabe des Teilerfaktors von Hand. Automatische
Teilerschaltung kann abgeschaltet werden
- Automatische Teileranschaltung
1:1 1
50:1 50
65:1 65
!! Achtung hier mu<6D> das in der Unitzusatzinfo im Hardwarebeschreibungsfile das Bit 0 gesetzt werden
Beispiel:
#----------------------------------------------------------------------------
# Standard Messteiler
# die letzte 1 zeigt an, das ein 65 Teiler im Einsatz ist
#----------------------------------------------------------------------------
MESSTEILER;0;0;6323;0;0;XFU01;121;1;
D 1 passiver Teiler</pre><b><a name="param6">6</a> PIN_HIGH:</b><pre> SG-Pinnummer
Anhand dieser Nummer wird entschieden welcher Kanal
durchgeschaltet werden mu<6D>.</pre><b><a name="param7">7</a> SCHALTER_FUNKTION:</b><pre> Wird SG-Pin an - oder abgeschaltet</pre><b><a name="param8">8</a> TUG_MEWE</b><pre>Toleranz untere Grenze</pre><b><a name="param9">9</a> TOG_MEWE</b><pre>Toleranz obere Grenze</pre><b><a name="param10">10</a> R_TEILER</b><pre> Returnwert ob Teiler eingeschaltet wird</pre><b><a name="param11">11</a> R_KANAL</b><pre> Bei welchem Kanal wird Teiler eingeschaltet
Funktionsweise der Spannungsteileranschaltung
---------------------------------------------
Der Messteiler ist eine externe Karte ausserhalb des PAM. Er beinhaltet 4
unabh<EFBFBD>ngige Treiber mit jeweils 4 Ein / Ausg<73>ngen. Insgesamt sind 16 Kan<61>le
m<EFBFBD>glich die zwischen Pr<50>flingspin und Me<4D>einschub zu schalten sind.
Der Me<4D>teiler unterscheidet sich in 3 Funktionen
- Teiler aktiv 50:1
- Teiler aktiv 65:1
- Teiler aktiv 1:1
- Teiler passiv 1:1
Im Adapterfile sind die Me<4D>kan<61>le zu kennzeichnen die einen Messteiler
ben<EFBFBD>tigen. Die Bezeichnung ist "MT.Kanalnummer"
Beispiel:
Me<EFBFBD>kanal 3 geht <20>ber Messteilerkanal 14 an den Pr<50>flingspin 15A
MK 3 ;MT.14 ; 15A ;
Das Umschalten der internen Teilerfunktionen geht automatisch.
Einschalten des Teilers aktiv 50:1
----------------------------------
MAX_PEGEL &gt;100
TOG_MEWE &gt;100
Einschalten des Teilers aktiv 1:1
----------------------------------
MAX_PEGEL &gt;100
TOG_MEWE &lt;100
Einschalten des Teilers passiv 1:1
----------------------------------
MAX_PEGEL &lt;100
TOG_MEWE &lt;100
Revision 1.1 2001/12/18 10:31:44 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.5 2001/06/19 07:43:59 lehmann
(const char) bei debug meldung eingef<65>hrt
Revision 1.4 2001/06/08 09:10:29 lehmann
io_direkt eingef<65>hrt
Revision 1.3 1999/12/22 10:09:18 keppler
$ID -&gt; $Id
Revision 1.2 1999/12/22 09:16:15 keppler
$Header -&gt; $Id
Revision 1.1 1999/11/23 14:12:54 katzenma
Initial Version by Sniff
Revision 1.1 97/12/02 14:22:20 14:22:20 juilfs (Joerg Juilfs)
Initial revision
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,68 @@
<HTML>
<HEAD>
<TITLE>F_POWER</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>F_POWER</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: f_power.C,v 1.2 2005/03/04 15:54:09 lehmann Exp $
-------------------------------------------------------------------------
Kurzbeschreibung: Konstanter Modul
-------------------------------------------------------------------------
Projekt: Common Core System - BOSCH
Sourcefile: f_power.C
Autor: AnW/FVS5 Schneider Romeo
Zielsystem: HP9000 743rt vxi02 (HP-UX 9.05 ; HP-RT 02.11)
Sprache: Ansi C; C++
-------------------------------------------------------------------------
Aufruf: &lt;GFMT KS=on TAB=8 LF=on&gt;
int f_power (shm_stringpointer *zeilen_info, // &lt;I&gt; Zeiger auf Zeilen
long index, // &lt;I&gt; Index Nummer
long anzahl) // &lt;I&gt; Anzahl der Werte
Parameter : SCHRITT wert[00]
Parameter : POSITION wert[02]
Parameter : WHOLEN wert[02]
Parameter : LABEL_END wert[03]
Parameter : STOP wert[04]
Parameter : MODUL wert[05]
Parameter : FUNKTION wert[06]: NORM, SPANNUNG oder STROM
Parameter : ADRESSE wert[07]
Parameter : TUG wert[08]
Parameter : TOG wert[09]
Parameter : EINHEIT wert[10]
Parameter : KANNAL wert[11]
Parameter : SPANNUNG wert[12]
Parameter : STROM wert[13]
Parameter : OUTPUT wert[14]
Parameter : MESSWERT wert[15]: R<>ckgabe des Messwerts, wenn die
FUNKTION auf SPANNUNG oder STROM gesetzt ist
-------------------------------------------------------------------------
Returnparameter: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
Funktionsbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
<20>bernimmt die Parameter und deutet Sie m<>glichst so, wie sie in der
modglobal.stl definiert worden sind.
Das Modul ist in der Lage, einen Befehl <20>ber HPIB Bus an einen Konstanter
auszugeben und wenn gew<65>nscht eine Antwort zur<75>ckzulesen.
Die Antwort wird als Nachricht an die Messdatenauswertung weiter-
gereicht.
-------------------------------------------------------------------------
Fehlerbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
LISO Fehlerbehandlung
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,97 @@
<HTML>
<HEAD>
<TITLE>F_R_KONSTANTER</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>F_R_KONSTANTER</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Id: f_r_konstanter.C,v 1.2 2002/02/27 09:45:08 wiese Exp $
---------------------------------------------------------------------
Kurzbeschreibung: Verbinden der RtW-Konstanter mit der Unit
---------------------------------------------------------------------
Projekt: CCS
Sourcefile: f_r_konstanter.C
Autor: RtW/TEF72-juilfs (30.04.96)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
---------------------------------------------------------------------
Prototyp:
void f_r_konstanter(shm_stringpointer *zeilen_info
,shm_stringpointer *zeilen_wert
,long index1
,long anzahl)
---------------------------------------------------------------------
Aufruf:
void (*funktionen[modulnummer])
(expand_zeile
,expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter-1);
Dieses Modul wird im Vectorinterpreter aufgerufen. Der Aufruf
wird <20>ber die MPI Schnittstelle realisiert.
---------------------------------------------------------------------
Funktionsbeschreibung:
Aufgabe des Modules ist es, Ansteuerparameter mit seiner
Ansteuerinformation mit einer Hardwareunit zu verbinden
<20>bergabeparameter anhand der Modglobal.stl
MD,F_R_KONSTANTER
,PRUEFSCHRITT
,POSITION
,ANSTEUER_UNIT
,ANSTEUER_NAME
,SPANNUNG
,ANSTEUER_DIM
,ANSTEUER_PIN
,ANSTEUER_BEZUG
,ANSTEUER_NAME
,STROM
,ANSTEUER_NAME
,STEUERWORT
,ANSTEUER_NAME
,DAUERPLUS
,MESSPROG
,SPANNUNG_MAX
,STROM_MAX
,GRUNDLAST
Revision 1.1 2001/12/18 10:31:26 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.5 2001/06/12 10:26:54 lehmann
Put_unitaenderung eingefuegt
Revision 1.4 2000/02/16 12:15:49 klm3sa
*** empty log message ***
Revision 1.3 1999/12/22 10:09:12 keppler
$ID -&gt; $Id
Revision 1.2 1999/12/22 09:16:11 keppler
$Header -&gt; $Id
Revision 1.1 1999/11/23 14:12:41 katzenma
Initial Version by Sniff
Revision 1.1 97/12/02 14:22:21 14:22:21 juilfs (Joerg Juilfs)
Initial revision
---------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,204 @@
<HTML>
<HEAD>
<TITLE>F_RDEK_ZUSATZ</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>F_RDEK_ZUSATZ</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
Funktionsbeschreibung:
- Beschreibung der Moduluebergabeparameter anhand der Modglobal.stl :
MD,f_rdek_zusatz
,PRUEFSCHRITT 1
,POSITION 2
,ANST_UNIT 3
,FUNK_UMPROG 4
,MESSKANAL_HIGH 5
,MESSKANAL_LOW 6
,SENSE_HIGH 7
,SENSE_LOW 8</pre><b><a name="param1">1</a> PRUEFSCHRITT:</b><pre>
Prueflisten Schrittnummer</pre><b><a name="param2">2</a> POSITION:</b><pre>
PAV Position fuer diesen Pruefschritt</pre><b><a name="param3">3</a> ANST_UNIT:</b><pre>
Symbolischer Name aus dem HW-Beschreibungsfile
fuer R-Dekade</pre><b><a name="param4">4</a> FUNK_UMPROG:</b><pre>
Auswahl des Schaltverhalten beim Umprogrammieren der R-Dekade.
Parameter: "HIGH" -&gt; Widerstand wird beim Umprogrammieren hochohmiger.
"-" -&gt; " " " " "
"LOW" -&gt; " " " " niederohmiger.
Die Default-Einstellung ist "-"</pre><b><a name="param5">5</a> MESSKANAL_HIGH:</b><pre>
Angabe des Messkanal zum Ruecklesen des eingestellten Widerstand.
Eingabe: SG-PIN z.B. 55 oder PIN-Nummer der 6070 z.B. &gt;a31
"-" fuer don't care</pre><b><a name="param6">6</a> MESSKANAL_LOW:</b><pre>
Angabe des Messkanal zum Ruecklesen des eingestellten Widerstand.
Eingabe: SG-PIN z.B. 73 oder PIN-Nummer der 6070 z.B. &gt;c31
"-" fuer don't care</pre><b><a name="param7">7</a> SENSE_HIGH:</b><pre>
Angabe des Sensekanal zum Ruecklesen des eingestellten Widerstand.
Mit der Angabe des Sensekanal wird eine 4-Draht-Messung realisiert.
Eingabe: SG-PIN z.B. 12 oder PIN-Nummer der 6070 z.B. &gt;a32
"-" fuer don't care</pre><b><a name="param8">8</a> SENSE_LOW:</b><pre>
Angabe des Sensekanal zum Ruecklesen des eingestellten Widerstand.
Mit der Angabe des Sensekanal wird eine 4-Draht-Messung realisiert.
Eingabe: SG-PIN z.B. 24 oder PIN-Nummer der 6070 z.B. &gt;c32
"-" fuer don't care
- SW technische Beschreibung
Aufgabe dieses Modules ist es, die Modulparameter fuer eine 6070 FU-Karte
an den Hardwaretreiberprozess zu geben.
Die Ansteuerwerte werden per F_ANSTEUER Modul an den Hardwaretreiber gegeben.
Die Modulparameter sind in der Regel kein Bestandteil der Std.-PAV und werden
ueber dieses spezielle GAUDI-Modul eingestellt.
-----------------------------------------------------------
Input:
shm_stringpointer *zeilen_info - dieser Pointer liefert den
Zugriff auf die komplette
Parameterzeile;
shm_stringpointer *zeilen_wert - hierueber erhaelt die Funktion
den Zugriff auf den tatsaechl.
Inhalt, naemlich den Wert,
in der Parameterzeile;
long index_oePrfL - die Positionsangabe der Parameter im
Parameterarray des SHM;
long anzahl - die Anzahl der fuer dieses Modul
relevanten Parameter;
Output:
none
----------------------------------------------------------
Return Value:
= 0: normaler Durchlauf oder der Schrittbetrieb ist
aktiviert und die Pruefschrittnummer ungleich 1;
&gt; 1:
----------------------------------------------------------
Beispiel (optional):
&lt;\userdoc&gt;
----------------------------------------------------------
History:
$Log: f_rdek_zusatz.C,v $
Revision 1.4 2004/12/23 10:33:40 jsj3rt
_VI_5.2.0_R5200000_TT945_JU_GCC3 Portabel
Revision 1.3 2003/04/17 09:36:11 wiese
$Head -&gt; $Id wegen log_message
* Revision 1.2 2002/02/14 08:04:40 PIJ3SA
* userdoc for html-page inserted
*
* Revision 1.1 2001/12/18 10:17:07 sgc3sa
* Anpassungen fuer Linux und QT
*
* Revision 1.5 2001/06/12 10:27:02 lehmann
* Put_unitaenderung eingefuegt
*
* Revision 1.4 2000/02/15 11:18:10 KLM3SA
* Sourcen aus testsystem_21 kopiert.
*
Revision 1.0 97/03/19 lea3sa
Erstellt
----------------------------------------------------------
C4
int f_rdek_zusatz ( shm_stringpointer *zeilen_wert
,long index_on_expPrfLst
,long anzahl_parameter )
{
define lokale Variablen
char ident[] = "@(#)f_rdek_zusatz.C lea3sa "; // modul identification
long index_oePL; // Zeiger in die expandierte Pruefliste
long unit_indexPtr; // Index Zeiger auf Unit
// long unitnummer;
STRING wert[ANZAHL_PARAMETER+ 1]; // Werte fuer Modulparameter
long i; // Laufvariable fuer Parameteruebergabe
int schritt; // Step-Betrieb ja/nein
int ret_val = 0; // Returnparameter des Gaudi-Modul
Umladen der Modulparameter aus dem Shared Memorybereich in den lokalen Bereich;
index_oePL = index_on_expPrfLst;
for ( i = 1; i &lt;= (anzahl_parameter + 1); i++ ) {
wert[i] = *zeilen_wert-&gt;ptr[index_oePL];
index_oePL++;
}
Modul-Parameter fuer eine R-Dekade der 6070 werden in den Stringspeicher umgeladen.
// unit_indexPtr = suche_unit_index( wert[ANST_UNIT],unitnummer );
unit_indexPtr = suche_unit_index( wert[ANST_UNIT] );
if ( unit_indexPtr &lt; 0 ) {
ret_val = -1;
}
else {
Ssp_pp_verwaltung-&gt;unit_ablage[unit_indexPtr].put_unit_aenderung(1);
i = get_platzmemory( STRING_VERWALTUNG
,unit_indexPtr
,ANZ_MODPAR );
Ssp_pp_verwaltung-&gt;string_f[i + 0] = wert[FUNK_UMPROG];
Ssp_pp_verwaltung-&gt;string_f[i + 1] = wert[MESSKANAL_HIGH];
Ssp_pp_verwaltung-&gt;string_f[i + 2] = wert[MESSKANAL_LOW];
Ssp_pp_verwaltung-&gt;string_f[i + 3] = wert[SENSE_HIGH];
Ssp_pp_verwaltung-&gt;string_f[i + 4] = wert[SENSE_LOW];
debug_message( __FILE__, __LINE__, DEB_GAUDI
,"\nf_rdek_zusatz Unit-Indexpointer: %d\
\nF-rdek_zusatz anzahl_parameter : %d\
\nf_rdek_zusatz PRUEFSCHRITT : %s\
\nf_rdek_zusatz PRUEFPOSITION : %s\
\nf_rdek_zusatz ANST_UNIT : %s\
\nf_rdek_zusatz FUNK_UMPROG : %s\
\nf_rdek_zusatz MESSKANAL_HIGH : %s\
\nf_rdek_zusatz MESSKANAL_LOW : %s\
\nf_rdek_zusatz SENSE_HIGH : %s\
\nf_rdek_zusatz SENSE_LOW : %s\n"
,unit_indexPtr
,anzahl_parameter
,wert[PRUEFSCHRITT].get_string()
,wert[PRUEFPOSITION].get_string()
,wert[ANST_UNIT].get_string()
,wert[FUNK_UMPROG].get_string()
,wert[MESSKANAL_HIGH].get_string()
,wert[MESSKANAL_LOW].get_string()
,wert[SENSE_HIGH].get_string()
,wert[SENSE_LOW].get_string() );
}
Pruefprogramm Stepbetrieb
schritt = schrittbetrieb( zeilen_wert, index_oePL );
if ( schritt != 1 ) {
return( ret_val );
}
return( ret_val );
}
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,79 @@
<HTML>
<HEAD>
<TITLE>F_SK_ZUSATZ</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>F_SK_ZUSATZ</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Header: /rweglobal/cvs/testsystem/ccs/6_testmodul_pool/bosch_bus_qt/module/f_funktionsmodule/s/src/f_sk_zusatz.C,v 1.4 2003/04/17 09:36:11 wiese Exp $
--------------------------------------------------------------------------
Kurzbeschreibung: Steuern der Stimulikoppelfeld-Relais-Zusatzkarte.
--------------------------------------------------------------------------
Projekt: CCS
Sourcefile: f_sk_zusatz
Autor: SaW/TEF72-Twardowsi (11.07.97)
Zielsystem: HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
Sprache: C++
--------------------------------------------------------------------------
Prototyp:
MPI Schnittstelle
int f_sk_zusatz ( shm_stringpointer *zeilen_wert
,long index_on_expPrfLst
,long anzahl_parameter );
--------------------------------------------------------------------------
Aufruf: im Vectorinterpreter
(*funktionen[modulnummer])
( Ssp_expand_wert
,p_verwaltung-&gt;begin_modulblock
,p_verwaltung-&gt;anzahl_modulparameter);
--------------------------------------------------------------------------
Funktionsbeschreibung:
<20>bergabeparameter anhand der "modglobal.stl"
MD,F_SK_ZUSATZ</pre><b><a name="param1">1</a> PRUEFSCHRITT</b><pre></pre><b><a name="param2">2</a> POSITION</b><pre></pre><b><a name="param3">3</a> ANSTEUER_UNIT</b><pre> Symbolischer Unitname lt. HW-File.
(Mit "&gt;" auch Direktangabe m<>glich)</pre><b><a name="param4">4</a> KK1_AN_SK</b><pre> "ON" : SK-Bereiche verbunden
"OFF" : SK-Bereiche getrennt
Vor jedem Pr<50>flisten-Start wird
wieder der (lt. Koppelfeld-Cnf-File)
Default-Zustand hergestellt.</pre><b><a name="param5">5</a> KK2_AN_KK1</b><pre> dto.</pre><b><a name="param6">6</a> KK3_AN_KK2</b><pre> dto.</pre><b><a name="param7">7</a> KK4_AN_KK3</b><pre> dto.</pre><b><a name="param8">8</a> KK5_AN_KK4</b><pre> dto.</pre><b><a name="param9">9</a> SCHALTER_01</b><pre> Syntax: "&lt;Symb. Schaltername&gt;=ON/OFF"
z.Z. keine Schalternamen verf<72>gbar!
Hier k<>nnten in Zukunft Schalternamen
definiert werden, die eine komplette
Schaltung mit mehreren Relais her-
stellen.
(Mit "&gt;" sind direkte Byteangaben
(in bin<69>r, 'X' = don't care f<>r
KK-Bereich-Bits) m<>glich, dann gilt:
SCHALTER_01 f<>r Highbyte im Highword 0
SCHALTER_02 f<>r Lowbyte im Highword 0
SCHALTER_03 f<>r Highbyte im Lowword 0
SCHALTER_04 f<>r Lowbyte im Lowword 0).
Achtung: Im SCHALTER_02 befinden sich
dann auch die 5Bits (Bit0-
Bit4), die die KKx-Bereiche
steuern. Hier dann unbedingt
mit 'X' don't care waehlen.
Vor jedem Pr<50>flisten-Start werden
wieder alle Bits auf '0' gesetzt.</pre><b><a name="param10">10</a> SCHALTER_02</b><pre> dto.</pre><b><a name="param11">11</a> SCHALTER_03</b><pre> dto.</pre><b><a name="param12">12</a> SCHALTER_04</b><pre> dto.
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,401 @@
<HTML>
<HEAD>
<TITLE>F_UGEBR_ZUSATZ</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>F_UGEBR_ZUSATZ</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
----------------------------------------------------------
Funktionsbeschreibung:
Dieses Modul stellt - ebenso wie das 'F_ANSTEUER'-Modul - die
Schnittstelle vom GAUDI zum nachgeordneten Hardware-Treiber dar.
Je einer der beiden Gleichspannungsgeber kann durch Aufruf
eines 'F_ANSTEUER'- und - im Bedarfsfall - 'F_6073'-Moduls
programmiert werden.
Die im 'F_6073' uebergebenen Daten sind nicht Bestandteil der
PAV und werden daher ueber dieses spezielle Modul an die
vorgegebene Stelle im 'Shared Memory' kopiert.
Beschreibung der Ansteuerparameter:
1 PRUEFSCHRITT
GAUDI Pruefschritt
------------------------------
2 POSITION
PAV- Position
------------------------------
3 ANSTEUER_UNIT
Unitname wie er im PAM-Beschreibungsfile definiert ist;
------------------------------
4 ANSTEUER_NAME
PAV-bezogener Name,
der sich auf einen Steuergeraete-Pin bezieht;
------------------------------
5 ANSTEUER_WERT
Abschalten der Karte erfolgt mit Eingabe von "-";
Interpretation bei interner Referenz:
- gewuenschter Spannungswert (von 0.0 (inkl.) bis 20.0 Volt);
Interpretation bei externer Referenz:
- Prozentangabe ==&gt; Ausgabespannung ist x% der max.
(0 bis 100) Referenzspannung von 20.0 Volt;
U_Referenz
U = Ansteuerwert * ----------
100
- Spannungswert ==&gt; Ausgabespannung ist proportional
( wird nicht ) zur anliegenden Referenzspannung
( supported ) und ergibt sich aus folgender
Formel (s.Moduldaten):
U_Referenz
U = -------------- * Ansteuerwert
MAX_U_REFERENZ
(nur sinnvoll, wenn )
( Ansteuerwert )
( -------------- &lt;= 1.0 )
( MAX_U_REFERENZ )
Wichtig:
Bei Verwendung der externen Referenz ist die Aufloesung
um den Faktor 2 schlechter!
------------------------------
6 ANSTEUER_DIM
Parameter: "V" / "Volt" (Default) oder "%"
Wichtig: bei Angabe eines Prozentwertes muss externe
Referenz im Modulparameter aktiviert und
der entspr. Anschalte-Pin ausgewaehlt werden!
------------------------------
7 ANSTEUER_PIN
Steuergeraete-bezogener Pin (wird mit den Daten aus
Adapterfile und PAM-Beschreibungsfile referenziert),
ueber den der Bezug zum Bus-Pin hergestellt werden kann;
mit diesem Pin wird die '+'Ausgabespannung angeschaltet;
Default: "-", dh. keine Anschaltung;
&gt;6072, 6064&lt;
folgende Pin's koennen angesprochen werden fuer
&gt;&gt;&gt;&gt;&gt; Geber 1 &lt;&lt;&lt;&lt;&lt;:
a01, a06, a11, a31, (gleichzeitige Anschaltung des ersten
a15 nur 6064 und zweiten Gebers auf Pin 'a31'
('+'Ausgabespg.) wird von der SW unterbunden )
a02, a07, a12, a32, (kein Kaskadieren und kein ext.
a16 nur 6064 Sensing moeglich)
(normalerw. fuer) (gleichzeitige Anschaltung des ersten
(Anschaltung von) und zweiten Gebers auf Pin 'a32'
('Sense_High' ) wird von der SW unterbunden )
&gt;&gt;&gt;&gt;&gt; Geber 2 &lt;&lt;&lt;&lt;&lt;:
a04, a09, a13, a31, (gleichzeitige Anschaltung des ersten
a17 nur 6064 und zweiten Gebers auf Pin 'a31'
('+'Ausgabespg.) wird von der SW unterbunden )
a05, a10, a14, a32 (kein Kaskadieren und kein ext.
a18 nur 6064 Sensing moeglich)
(normalerw. fuer) (gleichzeitige Anschaltung des ersten
(Anschaltung von) und zweiten Gebers auf Pin 'a32'
('Sense_High' ) wird von der SW unterbunden )
&gt;&gt;&gt;&gt;&gt; Geber 1 + Geber 2 (kaskadiert) &lt;&lt;&lt;&lt;&lt;:
(eine Kaskadierung wird durch Aufruf von "F_ANSTEUER" im GAUDI
fuer einen der beiden Geber bewirkt - nur die ausgewaehlten Pin's
sind fuer die Kaskadierung massgeblich (!!!);
der dann eingegebene Spannungswert wird zu gleichen Teilen in
beiden Gebern programmiert;
der BezugsPin 'c31' kann bei Kaskadierung nur dann eindeutig
gewaehlt werden, wenn die einzustellende Spannung groesser
als 20.0 Volt ist;
denn sowohl Geber1 als auch 2 sind auf diesen Pin schaltbar;)
a01 - c04, c09, c13, c17, c31; (c17 nur 6064)
a06 - c04, c09, c13, c17, c31; (c17 nur 6064)
a11 - c04, c09, c13, c17, c31; (c17 nur 6064)
a31 - c04, c09, c13, c17, c31; (c17 nur 6064)
bzw.
a04 - c01, c06, c11, c15, c31; (c15 nur 6064)
a09 - c01, c06, c11, c15, c31; (c15 nur 6064)
a13 - c01, c06, c11, c15, c31; (c15 nur 6064)
a31 - c01, c06, c11, c15, c31; (c15 nur 6064)
&gt;6073, 6065&lt;
folgende Pin's koennen angesprochen werden fuer
&gt;&gt;&gt;&gt;&gt; Geber 1 &lt;&lt;&lt;&lt;&lt;:
a19, a23, a27, a31 (gleichzeitige Anschaltung des ersten
('+'Ausgabespg.) und zweiten Gebers auf Pin 'a31'
wird von der SW unterbunden )
a20, a24, a28, a32 (kein Kaskadieren und kein ext.
(normalerw. fuer) Sensing moeglich)
(Anschaltung von) (gleichzeitige Anschaltung des ersten
('Sense_High' ) und zweiten Gebers auf Pin 'a32'
wird von der SW unterbunden )
&gt;&gt;&gt;&gt;&gt; Geber 2 &lt;&lt;&lt;&lt;&lt;:
a21, a25, a29, a31 (gleichzeitige Anschaltung des ersten
('+'Ausgabespg.) und zweiten Gebers auf Pin 'a31'
wird von der SW unterbunden )
a22, a26, a30, a32 (kein Kaskadieren und kein ext.
(normalerw. fuer) Sensing moeglich)
(Anschaltung von) (gleichzeitige Anschaltung des ersten
('Sense_High' ) und zweiten Gebers auf Pin 'a32'
wird von der SW unterbunden )
&gt;&gt;&gt;&gt;&gt; Geber 1 + Geber 2 (kaskadiert) &lt;&lt;&lt;&lt;&lt;:
(eine Kaskadierung wird durch Aufruf von "F_ANSTEUER" im GAUDI
fuer einen der beiden Geber bewirkt - nur die ausgewaehlten Pin's
sind fuer die Kaskadierung massgeblich (!!!);
der dann eingegebene Spannungswert wird zu gleichen Teilen in
beiden Gebern programmiert;
der BezugsPin 'c31' kann bei Kaskadierung nur dann eindeutig
gewaehlt werden, wenn die einzustellende Spannung groesser
als 20 Volt ist;
denn sowohl Geber1 als auch 2 sind auf diesen Pin schaltbar;)
a19 - c21, c25, c29, c31
a23 - c21, c25, c29, c31
a27 - c21, c25, c29, c31
a31 - c21, c25, c29, c31
bzw.
a21 - c19, c23, c27, c31
a25 - c19, c23, c27, c31
a29 - c19, c23, c27, c31
a31 - c19, c23, c27, c31
------------------------------
8 ANSTEUER_BEZUG
Steuergeraete-bezogener Pin (wird mit den Daten aus
Adapterfile und PAM-Beschreibungsfile referenziert),
ueber den der Bezug zum Bus-Pin hergestellt werden kann;
an diesen Pin wird die '-'Ausgabespannung angeschaltet;
Default: "-", dh. keine Anschaltung;
&gt;6072, 6064&lt;
folgende Pin's koennen angesprochen werden fuer
&gt;&gt;&gt;&gt;&gt; Geber 1 &lt;&lt;&lt;&lt;&lt;:
c01, c06, c11, c31, (gleichzeitige Anschaltung des ersten
c15 nur 6064 und zweiten Gebers auf Pin 'c31'
('-'Ausgabespg.) wird von der SW unterbunden )
c02, c07, c12, c32, (kein Kaskadieren und kein ext.
c16 nur 6064 Sensing moeglich)
(normalerw. fuer) (gleichzeitige Anschaltung des ersten
(Anschaltung von) und zweiten Gebers auf Pin 'c32'
('Sense_High' ) wird von der SW unterbunden )
&gt;&gt;&gt;&gt;&gt; Geber 2 &lt;&lt;&lt;&lt;&lt;:
c04, c09, c13, c31,(gleichzeitige Anschaltung des ersten
c17 nur 6064 und zweiten Gebers auf Pin 'c31'
('-'Ausgabespg.) wird von der SW unterbunden )
c05, c10, c14, c32,(kein Kaskadieren und kein ext.
c18 nur 6064 Sensing moeglich)
(normalerw. fuer) (gleichzeitige Anschaltung des ersten
(Anschaltung von) und zweiten Gebers auf Pin 'c32'
('Sense_High' ) wird von der SW unterbunden )
&gt;&gt;&gt;&gt;&gt; Geber 1 + Geber 2 (kaskadiert) &lt;&lt;&lt;&lt;&lt;:
(eine Kaskadierung wird durch Aufruf von "F_ANSTEUER" im GAUDI
fuer einen der beiden Geber bewirkt - nur die ausgewaehlten Pin's
sind fuer die Kaskadierung massgeblich (!!!);
der dann eingegebene Spannungswert wird zu gleichen Teilen in
beiden Gebern programmiert;
Pin 'a31' kann bei Kaskadierung nur dann eindeutig
gewaehlt werden, wenn der einzustellende Spannungswert
groesser als 20.0 Volt ist)
c01 - a04, a09, a13, a17, a31; (a17 nur 6064)
c06 - a04, a09, a13, a17, a31; (a17 nur 6064)
c11 - a04, a09, a13, a17, a31; (a17 nur 6064)
c31 - a04, a09, a13, a17, a31; (a17 nur 6064)
bzw.
c04 - a01, a06, a11, a15, a31; (a15 nur 6064)
c09 - a01, a06, a11, a15, a31; (a15 nur 6064)
c13 - a01, a06, a11, a15, a31; (a15 nur 6064)
c31 - a01, a06, a11, a15, a31; (a15 nur 6064)
&gt;6073, 6065&lt;
folgende Pin's koennen angesprochen werden fuer
&gt;&gt;&gt;&gt;&gt; Geber 1 &lt;&lt;&lt;&lt;&lt;:
c19, c23, c27, c31 (gleichzeitige Anschaltung des ersten
und zweiten Gebers auf Pin 'c31'
wird von der SW unterbunden )
c20, c24, c28, c32 (kein Kaskadieren und kein ext.
(normalerw. fuer) Sensing moeglich)
(Anschaltung von) (gleichzeitige Anschaltung des ersten
('Sense_High' ) und zweiten Gebers auf Pin 'c32'
wird von der SW unterbunden )
&gt;&gt;&gt;&gt;&gt; Geber 2 &lt;&lt;&lt;&lt;&lt;:
c21, c25, c29, c31 (gleichzeitige Anschaltung des ersten
('-'Ausgabespg.) und zweiten Gebers auf Pin 'c31'
wird von der SW unterbunden )
c22, c26, c30, c32 (kein Kaskadieren und kein ext.
(normalerw. fuer) Sensing moeglich)
(Anschaltung von) (gleichzeitige Anschaltung des ersten
('Sense_High' ) und zweiten Gebers auf Pin 'c32'
wird von der SW unterbunden )
&gt;&gt;&gt;&gt;&gt; Geber 1 + Geber 2 (kaskadiert) &lt;&lt;&lt;&lt;&lt;:
(eine Kaskadierung wird durch Aufruf von "F_ANSTEUER" im GAUDI
fuer einen der beiden Geber bewirkt - nur die ausgewaehlten Pin's
sind fuer die Kaskadierung massgeblich (!!!);
der dann eingegebene Spannungswert wird zu gleichen Teilen in
beiden Gebern programmiert;
Pin 'a31' kann bei Kaskadierung nur dann eindeutig
gewaehlt werden, wenn der einzustellende Spannungswert
groesser als 20 Volt ist)
c19 - a21, a25, a29, a31
c23 - a21, a25, a29, a31
c27 - a21, a25, a29, a31
c31 - a21, a25, a29, a31
bzw.
c21 - a19, a23, a27, a31
c25 - a19, a23, a27, a31
c29 - a19, a23, a27, a31
c31 - a19, a23, a27, a31
Beschreibung der Modulparameter:
(Bei Kaskadierung der beiden Geber einer Karte sind die Modulparameter
ohne Bedeutung!)</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> ANST_UNIT</b><pre>
Unitname wie er im PAM-Beschreibungsfile definiert ist;
------------------------------</pre><b><a name="param4">4</a> REFERENZ</b><pre>
Auswahl, ob der ueber den Unitnamen ausgewaehlte
Gleichspannungsgeber mit externer Referenz betrieben
werden soll oder nicht:
Parameter:"-" / "INT" / "EXT" (Default: "-" bzw. "INT")
bei Betrieb mit externer Referenz wird die Ausgangs-
spannung auf die Referenzspannung bezogen;
Wichtig: ein Betrieb mit externer Referenz ist nicht
moeglich, wenn die beiden Gleichspannungs-
geber einer Karte kaskadiert werden!
------------------------------</pre><b><a name="param5">5</a> REFERENZ_PIN</b><pre>
Steuergeraete-bezogener Pin (wird mit den Daten aus
Adapterfile und PAM-Beschreibungsfile referenziert),
ueber den der Bezug zum Bus-Pin hergestellt werden kann;
an diesen Pin wird die '+'Referenzspannung angeschaltet;
die '-'Referenzspannung wird intern auf 'Sense_Low' bezogen
und muss daher nicht separat angeschaltet werden;
Default: "-", dh. keine Anschaltung;
&gt;6072, 6064&lt;
folgende Pin's koennen angesprochen werden fuer
&gt;&gt;&gt;&gt;&gt; Geber 1 &lt;&lt;&lt;&lt;&lt;:
a03, a16
folgende Pin's koennen angesprochen werden fuer
&gt;&gt;&gt;&gt;&gt; Geber 2 &lt;&lt;&lt;&lt;&lt;:
c03, c16
&gt;6073, 6065&lt;
folgende Pin's koennen angesprochen werden fuer
&gt;&gt;&gt;&gt;&gt; Geber 1 &lt;&lt;&lt;&lt;&lt;:
a03, a16
folgende Pin's koennen angesprochen werden fuer
&gt;&gt;&gt;&gt;&gt; Geber 2 &lt;&lt;&lt;&lt;&lt;:
c03, c16
------------------------------</pre><b><a name="param6">6</a> MAX_U_REFERENZ</b><pre>
Angabe der max. Spannung am Referenzeingang;
Parameter: positive Werte &gt; 0.0 und &lt;= 20.0 Volt;
==&gt; Modulation der Ausgangsspannung mit der Referenz-
spannung, dh. der Ansteuerparam. wird erreicht,
sobald am Referenzeingang der hiermit angegebene
Spannungswert anliegt;
------------------------------</pre><b><a name="param7">7</a> SENSING</b><pre>
Anschaltung der Sense-Leitungen (Sense_High und Sense_Low)
an die Ausgaenge oder internes Sensing;
Parameter:"-" / "INT" / "EXT" (Default: "-" bzw. "INT")
Wichtig: ein externes Sensing ist nicht moeglich,
wenn die beiden Gleichspannungsgeber einer
Karte kaskadiert werden oder die entspr.
Kartenpins bereits fuer die Anschaltung der
Gleichspannung verwendet werden!
------------------------------</pre><b><a name="param8">8</a> SENSE_HIGH</b><pre>
Steuergeraete-bezogener Pin (wird mit den Daten aus
Adapterfile und PAM-Beschreibungsfile referenziert),
ueber den der Bezug zum Bus-Pin hergestellt werden kann;
an diesen Pin wird die Referenzspannung angeschaltet;
Default: "-", dh. keine Anschaltung;
&gt;6072, 6064&lt;
folgende Pin's koennen angesprochen werden fuer
&gt;&gt;&gt;&gt;&gt; Geber 1 &lt;&lt;&lt;&lt;&lt;:
a02, a07, a12, a16, a32; (a16 nur 6064)
folgende Pin's koennen angesprochen werden fuer
&gt;&gt;&gt;&gt;&gt; Geber 2 &lt;&lt;&lt;&lt;&lt;:
a05, a10, a14, a18, a32; (a18 nur 6064)
&gt;6073, 6065&lt;
folgende Pin's koennen angesprochen werden fuer
&gt;&gt;&gt;&gt;&gt; Geber 1 &lt;&lt;&lt;&lt;&lt;:
a20, a24, a28, a32
folgende Pin's koennen angesprochen werden fuer
&gt;&gt;&gt;&gt;&gt; Geber 2 &lt;&lt;&lt;&lt;&lt;:
a22, a26, a30, a32
------------------------------</pre><b><a name="param9">9</a> SENSE_LOW</b><pre>
Steuergeraete-bezogener Pin (wird mit den Daten aus
Adapterfile und PAM-Beschreibungsfile referenziert),
ueber den der Bezug zum Bus-Pin hergestellt werden kann;
an diesen Pin wird die Referenzspannung angeschaltet;
Default: "-", dh. keine Anschaltung;
&gt;6072, 6064&lt;
folgende Pin's koennen angesprochen werden fuer
&gt;&gt;&gt;&gt;&gt; Geber 1 &lt;&lt;&lt;&lt;&lt;:
c02, c07, c12, c16, c32; (c16 nur 6064)
folgende Pin's koennen angesprochen werden fuer
&gt;&gt;&gt;&gt;&gt; Geber 2 &lt;&lt;&lt;&lt;&lt;:
c05, c10, c14, c18, c32; (c18 nur 6064)
&gt;6073, 6065&lt;
folgende Pin's koennen angesprochen werden fuer
&gt;&gt;&gt;&gt;&gt; Geber 1 &lt;&lt;&lt;&lt;&lt;:
c20, c24, c28, c32
folgende Pin's koennen angesprochen werden fuer
&gt;&gt;&gt;&gt;&gt; Geber 2 &lt;&lt;&lt;&lt;&lt;:
c22, c26, c30, c32
------------------------------</pre><b><a name="param10">10</a> OUTPUT_MODE</b><pre>
nur 6064, 6065:
- "-" Spannungsbereich 0V - 20V; Default
- "20V" Spannungsbereich 0V - 20V
- "40V" Spannungsbereich 0V - 40V
Input: Zeiger auf den relevanten "Wert" einer Zeile der
expandierten Pruefliste;
Index im entsprechenden Speicherbereich fuer
Moduldaten;
Anzahl der Modulparameter;
Output: none
----------------------------------------------------------
Return Value:
= 0: Successful completion
-1: wenn eine Zuordnung im Hardware-Beschreibungsfile
bzw. Adapterfile fehlt, so dass ein Aufruf der
Funktion 'suche_unit_index()' fehlschlaegt;
----------------------------------------------------------
Beispiel (optional):
----------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,59 @@
<HTML>
<HEAD>
<TITLE>GENERATE</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>GENERATE</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Header: /rweglobal/cvs/testsystem/ccs/6_testmodul_pool/testlisten_schedule/a/src/generate.C,v 1.5 2006/01/27 14:00:29 nit3an Exp $
-------------------------------------------------------------------------
Kurzbeschreibung: Output of signal forms at RACAL module 6062 (only HP-RT)
-------------------------------------------------------------------------
Projekt: Common Core System - BOSCH
Sourcefile: generate.C
Autor: AnW/FVS5 Schneider Romeo
Zielsystem: HP9000 743rt vxi02 (HP-UX 9.05 ; HP-RT 02.11)
Sprache: Ansi C; C++
-------------------------------------------------------------------------
Aufruf: &lt;GFMT KS=on TAB=8 LF=on&gt;
int generate (shm_stringpointer *zeilen_wert, // &lt;I&gt; Zeiger auf Werte
long index, // &lt;I&gt; Index Nummer
long anzahl) // &lt;I&gt; Anzahl der Werte
-------------------------------------------------------------------------
Returnparameter: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
Function description: &lt;GFMT KS=on TAB=8 LF=on&gt;
Output of signal forms at RACAL module 6062 with option 06 connectors
(only for HP-RT). The 6062 is an un-isolated data acquisition and
generation VXI module with 4 analog inputs and 4 analog outputs.
Description of the module parameters:</pre><b><a name="param1">1</a> PRUEFSCHRITT</b><pre> GAUDI teststep
------------------------------</pre><b><a name="param2">2</a> POSITION</b><pre> PAV position
------------------------------</pre><b><a name="param3">3</a> GEN_MODULE</b><pre> module name (input)
------------------------------</pre><b><a name="param4">4</a> GEN_COMMAND</b><pre> command for generating signal forms at the RACAL module 6062 (input),
if the first two characters are "F:" a filename with commands for
generating signal forms must follow
(the file must be located in the CCS configuration directory)
------------------------------</pre><b><a name="param5">5</a> GEN_PARAM1</b><pre> parameter field for generator command (input)
------------------------------</pre><b><a name="param6">6</a> GEN_PARAM2</b><pre> parameter field for generator command (input)
------------------------------</pre><b><a name="param7">7</a> GEN_PARAM3</b><pre> parameter field for generator command (input)
------------------------------</pre><b><a name="param8">8</a> GEN_PARAM4</b><pre> parameter field for generator command (input)
------------------------------</pre><b><a name="param8">8</a> RETURN_WERT</b><pre> not used
-------------------------------------------------------------------------
Error description: &lt;GFMT KS=on TAB=8 LF=on&gt;
LISO error handling
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,282 @@
<HTML>
<HEAD>
<TITLE>L_6267_ZUSATZ</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_6267_ZUSATZ</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
Funktionsbeschreibung:
Dieses Modul stellt - ebenso wie das 'F_ANSTEUER'-Modul - die Schnittstelle
vom GAUDI zum nachgeordneten Hardwaretreiber dar.
Der zugehoerende Hardwaretreiber wird durch mehrmaligen Aufruf des Moduls
'F_ANSTEUER' und dieses Zusatz-Modul mit den notwendigen Daten versorgt:
1. F_ANSTEUER liefert die Anschalteparameter fuer den ersten UBATT-Zweig;
2. F_ANSTEUER liefert die Anschalteparameter fuer den zweiten UBATT-Zweig;
3. F_ANSTEUER liefert die Anschalteparameter fuer den ersten UDAUERPLUS-Zweig;
4. F_ANSTEUER liefert die Anschalteparameter fuer den zweiten UDAUERPLUS-Zweig;
5. F_ANSTEUER liefert die Anschalteparameter fuer den ersten ULAST-Zweig;
6. F_ANSTEUER liefert die Anschalteparameter fuer den zweiten ULAST-Zweig;
(ausschliesslich andere Masseanschaltung)
7. F_ANSTEUER liefert die Anschalteparameter fuer den dritten ULAST-Zweig;
(ausschliesslich andere Masseanschaltung)
8. L_6267_ZUSATZ liefert die Anschalteparameter fuer die den jeweiligen
Spannungskanaelen zugeordneten Sense- und Strommesskanaele;
Uebergabeparameter anhand der Modglobal.stl
MD,F_ANSTEUER
,PRUEFSCHRITT
,POSITION
,ANSTEUER_UNIT 'KON_UB_x'/'KON_UD_x'/'KON_UL_x'/
'KON_UB2_x'/'KON_UD2_x'/'KON_UL2_x'/'KON_UL3_x'
(mit x = 1,2, ... Nummer der Hardware-Unit im PAM
gemaess den Angaben im File 'hw_units_xxxx.cnf')
,ANSTEUER_NAME Steuergeraete bezogener Name
,ANSTEUER_WERT Spannungswert fuer 'UBatt', 'UDauerplus', 'ULast'
oder einer der aufgefuehrten Zahlenwerte:
'UDauerplus' = 'UBatt' / '0' / '1'
'ULast' = 'UBatt' / '0' / '1'
('-' fuehrt zur Abschaltung des KAM-Zweigs)
,ANSTEUER_DIM wird nicht benutzt
,ANSTEUER_PIN Eingabe eines Steuergeraete bezogenen Pins (gemaess
den Angaben des Adapterfiles), der ueber das
PAM-Beschreibungsfile dereferenziert werden kann;
moegliche angesprochene Kartenpins sind:
'UBatt': d28 ==&gt; Relais K13
d04 ==&gt; Relais K14
'UDauerplus': z28 ==&gt; Relais K11
z04 ==&gt; Relais K12
'ULast': dbz16
dbz02 ==&gt; Relais K18
,ANSTEUER_BEZUG Eingabe eines Steuergeraete bezogenen Pins (gemaess
den Angaben des Adapterfiles), der ueber das
PAM-Beschreibungsfile dereferenziert werden kann;
moegliche angesprochene Kartenpins sind:
'UBatt': d30 ==&gt; Relais K3
d06 ==&gt; Relais K4
'UDauerplus': z30 ==&gt; Relais K1
z06 ==&gt; Relais K2
'ULast': dbz32
dbz14 ==&gt; Relais K8
db24 ==&gt; Relais K9
d22 ==&gt; Relais K10
MD,L_6267_ZUSATZ</pre><b><a name="param1">1</a> ,PRUEFSCHRITT</b><pre></pre><b><a name="param2">2</a> ,POSITION</b><pre></pre><b><a name="param3">3</a> ,ANSTEUER_UNIT</b><pre> 'KON_UB_x'/'KON_UD_x'/'KON_UL_x'/</pre><b><a name="param4">4</a> ,SENSELINE</b><pre> Ist einer der beiden oder sind beide Zweige
UBATT bzw. DAUERPLUS aktiviert kann (nur) einer
der beiden durch einen Sense-Eingang am
Konstanter ueberwacht werden !!!
Die Auswahl geschieht ueber die Parameter
'UBATT'/'UDAUER'/'ULAST'/'-'
Default-Einstellung ist '-'.
(z.Zt. laesst die Hardware ein unabhanegiges
Sensing der 'ULAST' nicht zu)</pre><b><a name="param5">5</a> ,SENSE_HIGH</b><pre> Eingabe eines Steuergeraete bezogenen Pins,
der ueber das PAM-Beschreibungsfile dereferenziert
werden kann;
moegliche angesprochene Kartenpins sind:
b28 ==&gt; Relais K15 \
b04 ==&gt; Relais K16 --&gt; UBATT / UDAUER
dbz16 ==&gt; \
dbz02 ==&gt; Relais K17 --&gt; ULAST</pre><b><a name="param6">6</a> ,SENSE_LOW</b><pre> Eingabe eines Steuergeraete bezogenen Pins,
der ueber das PAM-Beschreibungsfile dereferenziert
werden kann;
moegliche angesprochene Kartenpins sind:
b30 ==&gt; Relais K5 \
b06 ==&gt; Relais K6 --&gt; UBATT / UDAUER
dbz32 ==&gt; \
dbz14 ==&gt; Relais K7 --&gt; ULAST</pre><b><a name="param7">7</a> ,MESSKANAL</b><pre> Auswahl eines der beiden moeglichen Messkanaele
'MESSKA_A' (im 'UBATT'-Zweig ) oder 'MESSKA_C'
(im 'DAUERPLUS'-Zweig);
Default-Einstellung ist '-'.</pre><b><a name="param8">8</a> ,STROMMESS_R</b><pre> Je nach geeigneterem Messbereich kann fuer die
Strommessung in jedem der beiden Zweige einer
der beiden Messwiderstaende '0.1' oder '10' Ohm
ausgewaehlt werden (wird nur geschaltet, wenn
der entsprechende Messkanal aktiviert ist).
Default-Einstellung ist '-'.
&lt;\userdoc&gt;
C2-------------------------------------------------------------------------
-- pragmas -----------------------------------------------------------------
#pragma COPYRIGHT "Robert Bosch GmbH Salzgitter, SaW/TEF72"
#pragma VERSIONID "$Id: l_6267_zusatz.C,v 1.3 2003/04/17 09:36:11 wiese Exp $"
-- defines -----------------------------------------------------------------
#define EXTERN extern Bei allen Subroutinen
#define HEADER "$Id: l_6267_zusatz.C,v 1.3 2003/04/17 09:36:11 wiese Exp $"
#ifndef ret_val_OK
# define ret_val_OK (int)0
#endif
//#define PRUEFSCHRITT 1
//#define POSITION 2
#define ANST_UNIT (3 - 1)
#define SENSELINE (4 - 1)
#define SENSE_HIGH (5 - 1)
#define SENSE_LOW (6 - 1)
#define MESSKANAL (7 - 1)
#define MESS_SHUNT (8 - 1)
#define ANZAHL_ZUSATZDATEN 5
#define INT_VERWALTUNG 3
#define STRING_VERWALTUNG 2
-- includes ----------------------------------------------------------------
#include "shm_syscom.H"
#include "libccs.H" // Zentrale Lib
#include "libtestmodul_pool.H" // Modul Lib
-- external functions / variables ------------------------------------------
-- global variables (nur im "main" erlaubt) -------------------------------
Whatstring
static char ident[] = "@(#)$Header: /rweglobal/cvs/testsystem/ccs/6_testmodul_pool/bosch_bus_qt/module/l_lastmodule/s/src/l_6267_zusatz.C,v 1.3 2003/04/17 09:36:11 wiese Exp $";
C3 ------------------------------------------------------------------------
int l_6267_zusatz( shm_stringpointer *zeilen_wert
,long index_on_expPrfLst
,long anzahl_parameter )
{
-- local variables ------------------------------------------------------
long i; // Laufvariable f<>r Parameter<65>bergabe
int schritt; // Schritt ausf<73>hren
long unit_index; // Index Zeiger auf Unit
int ret_val = ret_val_OK;
//---------------------------------------------------------------------------
// Die Zusatzdaten werden in den Stringspeicher umgeladen
//---------------------------------------------------------------------------
unit_index = suche_unit_index( *zeilen_wert-&gt;ptr[index_on_expPrfLst + ANST_UNIT] );
if( unit_index &lt; 0 )
{
ret_val = -1;
}
else
{
i = get_platzmemory( STRING_VERWALTUNG
,unit_index
,ANZAHL_ZUSATZDATEN );
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 + SENSELINE];
Ssp_pp_verwaltung-&gt;string_f[i+1] = *zeilen_wert-&gt;ptr[index_on_expPrfLst + SENSE_HIGH];
Ssp_pp_verwaltung-&gt;string_f[i+2] = *zeilen_wert-&gt;ptr[index_on_expPrfLst + SENSE_LOW];
Ssp_pp_verwaltung-&gt;string_f[i+3] = *zeilen_wert-&gt;ptr[index_on_expPrfLst + MESSKANAL];
Ssp_pp_verwaltung-&gt;string_f[i+4] = *zeilen_wert-&gt;ptr[index_on_expPrfLst + MESS_SHUNT];
----------------------------------------------------------------------
debug_message( __FILE__, __LINE__, DEB_GAUDI
,"Unitindex: %d - L_6267_ZUSATZ"
"\nSENSELINE: %s"
"\nSENSE_HIGH: %s"
"\nSENSE_LOW: %s"
"\nMESSKANAL: %s"
"\nMESS_SHUNT: %s"
,unit_index
,(const char *)*zeilen_wert-&gt;ptr[index_on_expPrfLst + SENSELINE]
,(const char *)*zeilen_wert-&gt;ptr[index_on_expPrfLst + SENSE_HIGH]
,(const char *)*zeilen_wert-&gt;ptr[index_on_expPrfLst + SENSE_LOW]
,(const char *)*zeilen_wert-&gt;ptr[index_on_expPrfLst + MESSKANAL]
,(const char *)*zeilen_wert-&gt;ptr[index_on_expPrfLst + MESS_SHUNT] );
----------------------------------------------------------------------
----------------------------------------------------------------------
* Schrittbetriebshandler starten
schritt = schrittbetrieb( zeilen_wert, index_on_expPrfLst );
if ( schritt != 1 )
ret_val = ret_val_OK;
}
return( ret_val );
} Ende von 'l_6267_zusatz ()'
-- un_defines --------------------------------------------------------------
#undef ANST_UNIT
#undef SENSELINE
#undef SENSE_HIGH
#undef SENSE_LOW
#undef MESSKANAL
#undef MESS_SHUNT
#undef ANZAHL_ZUSATZDATEN
#undef INT_VERWALTUNG
#undef STRING_VERWALTUNG
- End of file ---------------------------------------------------------------
Historie:
$Log: l_6267_zusatz.C,v $
Revision 1.3 2003/04/17 09:36:11 wiese
$Head -&gt; $Id wegen log_message
Revision 1.2 2002/02/14 08:04:01 PIJ3SA
userdoc for html-page inserted
Revision 1.1 2001/12/18 10:41:43 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.8 2001/06/19 09:12:16 lehmann
wegen Linux von OK -&gt; ret_val_ok
Revision 1.7 2001/06/12 10:26:55 lehmann
Put_unitaenderung eingefuegt
Revision 1.6 2001/05/23 13:00:24 lehmann
put_unit_aenderung eingef<65>hrt
Revision 1.5 2000/02/16 12:11:44 klm3sa
*** empty log message ***
Revision 1.4 2000/02/15 11:25:30 KLM3SA
Sourcen aus testsystem_21 kopiert.
Revision 1.1 97/12/02 14:22:47 14:22:47 juilfs (Joerg Juilfs)
Initial revision
Revision 1.1 ohm3sa/19970917: Erweiterung der Dokumentation fuer Umstellung
der Anzahl AnsteuerPrmtr. von 3 auf 7;
Umstellung der Debug-Ausgabe auf 'DEB_GAUDI';
Verzicht auf das Umladen der Shared Memory-Daten
in lokalen Speicher;
Revision 1.0 satef7oh/19960711: Initial revision
---------------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,209 @@
<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>

View File

@ -0,0 +1,393 @@
<HTML>
<HEAD>
<TITLE>L_KAM_ZUSATZ</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_ZUSATZ</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
----------------------------------------------------------
Funktionsbeschreibung:
Einstellung der fuer Ueberwachung/Messung notwendigen
Parameter
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 (Sensing, Messkanaele),
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 werden!
Dieses Modul wird mit der Ansteuerunit U_KON_KONFIGx
kontrolliert (vgl. L_KAM_KONFIG), 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> SENSE_UB_UNIT</b><pre>
Anschaltung einer der 5 moeglichen UBATT-SenseLeitungen
an einen KonstanterEingang;
Prmtr.: U_KON_UAx --&gt; d20/d24
U_KON_UBx --&gt; b28/b30 (kompatibel zur 6267)
U_KON_UCx --&gt; b20/b22
U_KON_UDx --&gt; b26/z26
U_KON_UEx --&gt; z20/z22
INTERN (internes Sensing ohne ext. Anschaltung;
ohne Funktion bei 6267)
- (=Default, dh. autom. Sensing bei
U_KON_UBx, sonst kein Sensing)
Wichtig:
Es wird - auch wenn mit F_ANSTEUER mehrere UBATT-
Ausgaenge belegt wurden - stets nur eine SenseLeitung
angeschaltet!
Die Anschaltung erfolgt auch nur dann, wenn die
zugehoerige UBATT-Anschaltung komplett (+/-) erfolgt
ist!
Bei EIN-Konstanter-Betrieb kann nur auf einem der
beiden moeglichen Kanaele (ULAST oder UBATT) ein Sensing
durchgefuehrt werden.
Bei ZWEI-Konstanter-Betrieb koennen die SenseLeitungen
unabhaengig voneinander - sowohl fuer KON_A als auch
KON_B - gewaehlt werden.
Bei Kaskadierung erfolgt kein automatisches Sensing auf
U_KON_UBx!
Kompatibilitaet zum 6267:
Ohne Angabe einer SenseUnit wird bei Auswahl von
U_KON_UBx automatisch die entsprechende SenseLeitung
angeschaltet (es wird dann eine Fehlermeldung ausgegeben),
das gleiche gilt bei Auswahl U_KON_ULx.
Werden beide Zweige angeschaltet, erfolgt allerdings
nur auf dem UBATT-Zweig ein automatisches Sensing.
------------------------------</pre><b><a name="param5">5</a> SENSING_UB</b><pre>
Auswahl des an KON_A/KON_B angeschlossenen Konstanters,
der mit der Senseleitung verbunden werden soll;
der hier angegebene Parameter sollte mit dem im
Modul "L_KAM_KONFIG" angegebenen Parametern in Einklang
stehen:
Prmtr.: KON_A (hat dokumentarischen Charakter)
KON_B (hat dokumentarischen Charakter)
- (=Default)
Beispiel:
L_KAM_KONFIG:
KON_A - ULAST
KON_B - UBATT
L_KAM_ZUSATZ:
SENSE_UB_UNIT - U_KON_UAx
SENSING_UB - KON_B
------------------------------</pre><b><a name="param6">6</a> SENSE_UL_UNIT</b><pre>
Anschaltung der ULAST-SenseLeitung an den entspr.
KonstanterEingang;
Prmtr.: U_KON_ULx --&gt; dbz16/dbz32 (kompatibel zur 6267)
INTERN (internes Sensing ohne ext. Anschaltung;
ohne Funktion bei 6267)
- (=Default, dh. autom. Sensing, wenn
U_KON_UBx nicht benutzt wird)
Wichtig:
Die Anschaltung erfolgt auch nur dann, wenn die
zugehoerige ULAST-Anschaltung komplett (+/-) erfolgt
ist!
Bei EIN-Konstanter-Betrieb kann nur auf einem der
beiden moeglichen Kanaele (ULAST oder UBATT) ein Sensing
durchgefuehrt werden.
Bei ZWEI-Konstanter-Betrieb koennen die SenseLeitungen
unabhaengig voneinander - sowohl fuer KON_A als auch
KON_B - gewaehlt werden.
Bei Kaskadierung erfolgt kein automatisches Sensing auf
U_KON_ULx!
Kompatibilitaet zum 6267:
Ohne Angabe einer SenseUnit wird bei Auswahl von
U_KON_ULx (und ohne Benutzung von U_KON_UBx) automatisch
die entsprechende SenseLeitung angeschaltet; ein Eintrag
an dieser Stelle erzeugt in diesem Fall eine Fehlermeldung.
------------------------------</pre><b><a name="param7">7</a> SENSING_UL</b><pre>
Auswahl des an KON_A/KON_B angeschlossenen Konstanters,
der mit der Senseleitung verbunden werden soll;
(siehe "L_KAM_KONFIG")
der hier angegebene Parameter sollte mit dem im
Modul "L_KAM_KONFIG" angegebenen Parametern in Einklang
stehen:
Prmtr.: KON_A (hat dokumentarischen Charakter)
KON_B (hat dokumentarischen Charakter)
- (=Default)
Beispiel:
L_KAM_KONFIG:
KON_A - ULAST
KON_B - UBATT
L_KAM_ZUSATZ:
SENSE_UB_UNIT - U_KON_ULx
SENSING_UB - KON_A
------------------------------</pre><b><a name="param8">8</a> MESS_UNIT</b><pre>
Auswahl eines der 5 moeglichen UBATT-Zweige fuer eine
Strom- oder Spannungsmessung (nur U_KON_UEx);
Prmtr.: U_KON_UAx, U_KON_UBx, U_KON_UCx, U_KON_UDx,
U_KON_UEx
- (=Default, keine Messung)
------------------------------</pre><b><a name="param9">9</a> MESS_KANAL</b><pre>
Auswahl eines der moeglichen Messkanaele;
Prmtr.: MESSKA_A (Strommesskanal: d10/b10)
MESSKA_AB (Spannungs- und Strommessung
ausschliesslich fuer U_KON_UEx)
MESSKA_B (Spannungsmesskanal ausschliesslich
fuer U_KON_UEx: z10/d12)
MESSKA_BC (Spannungs- und Strommessung
ausschliesslich fuer U_KON_UEx)
MESSKA_C (Strommesskanal: b12/z12)
- (=Default, kein Messkanal)
Wichtig:
Eine Messanschaltung wird nur fuer einen komplett
angeschalten UBATT-Zweig ausgefuehrt!
------------------------------</pre><b><a name="param10">10</a> STROMMESS_R</b><pre>
Auswahl eines der moeglichen Shunt-Widerstaende:
0.1 / 1.0 / 10.0 / 100.0 / 1000.0 / 1K
(die Einheit ist jeweils Ohm)
- (=Default, kein MessShunt)
Kompatibilitaet zum 6267:
Diese Hardware unterstuetzt nur die Widerstaende 0.1
und 10 Ohm.
------------------------------</pre><b><a name="param11">11</a> ANSCHALTUNG</b><pre>
Auswahl von UBATT-Anschaltungsmodi des KAM's:
die Hardware ermoeglicht die alleinige Anschaltung
saemtlicher Pfade ohne ein tatsaechliches
Durchschalten (dh. ohne Relais K41/RQZ) der UBATT
(Prmtr. ==&gt; PFAD);
in einem weiteren Aufruf dieses Moduls kann dann -
unter Einsparung zeitintensiver Ablaeufe - die
vollstaendige Anschaltung erzielt werden
(Prmtr. ==&gt; SCHNELL);
desweiteren kann eine - etwas langsamere -
vollstaendige Anschaltung unmittelbar gewaehlt
werden (Prmtr. ==&gt; KOMPLETT);
Prmtr.: PFAD (nur Pfade schalten bis auf RQZ/K41;
hiermit wird die Anschaltung also
vorbereitet;)
SCHNELL (Schnellanschaltung unter Umgehung
interner Ablaeufe - bedingt einen
erneuten Aufruf dieses Moduls mit
denselben sonstigen Parametern und
ein erneutes E_OUT)
KOMPLETT (komplette Anschaltung unter
Beruecksichtigung der Reihenfolge der
entsprechenden Relaisanschaltungen und
daher langsamer)
- (=Default, wie KOMPLETT)
Kompatibilitaet zum 6267:
Hat fuer die 6267 keine Bedeutung.
Input:
Output:
none
----------------------------------------------------------
Return Value:
= 0: Successful completion
sonst Fehler
----------------------------------------------------------
Beispiel (optional):
----------------------------------------------------------
&lt;\userdoc&gt;
C4
int l_kam_zusatz( 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_ZUSATZ 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 + 3] = *zeilen_wert-&gt;ptr[index_on_expPrfLst + SENSE_UB_UNIT];
Ssp_pp_verwaltung-&gt;string_f[i + 4] = *zeilen_wert-&gt;ptr[index_on_expPrfLst + SENSING_UB];
Ssp_pp_verwaltung-&gt;string_f[i + 5] = *zeilen_wert-&gt;ptr[index_on_expPrfLst + SENSE_UL_UNIT];
Ssp_pp_verwaltung-&gt;string_f[i + 6] = *zeilen_wert-&gt;ptr[index_on_expPrfLst + SENSING_UL];
Ssp_pp_verwaltung-&gt;string_f[i + 7] = *zeilen_wert-&gt;ptr[index_on_expPrfLst + MESS_UNIT];
Ssp_pp_verwaltung-&gt;string_f[i + 8] = *zeilen_wert-&gt;ptr[index_on_expPrfLst + MESS_KANAL];
Ssp_pp_verwaltung-&gt;string_f[i + 9] = *zeilen_wert-&gt;ptr[index_on_expPrfLst + STROMMESS_R];
Ssp_pp_verwaltung-&gt;string_f[i + 10]= *zeilen_wert-&gt;ptr[index_on_expPrfLst + ANSCHALTUNG];
debug_message( __FILE__, __LINE__, DEB_GAUDI
,"\nkam_zusatz Unit-Index : %d"
"\nkam_zusatz Anzahl Parameter : %d"
"\nkam_zusatz Pruefschritt : %s"
"\nkam_zusatz Pruefposition : %s"
"\nkam_zusatz Ansteuer Unit : %s"
"\nkam_zusatz SENSE_UB_UNIT : %s"
"\nkam_zusatz SENSING_UB : %s"
"\nkam_zusatz SENSE_UL_UNIT : %s"
"\nkam_zusatz SENSING_UL : %s"
"\nkam_zusatz MESS_UNIT : %s"
"\nkam_zusatz MESS_KANAL : %s"
"\nkam_zusatz STROMMESS_R : %s"
"\nkam_zusatz ANSCHALTUNG : %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 + SENSE_UB_UNIT]
,(const char*) *zeilen_wert-&gt;ptr[index_on_expPrfLst + SENSING_UB]
,(const char*) *zeilen_wert-&gt;ptr[index_on_expPrfLst + SENSE_UL_UNIT]
,(const char*) *zeilen_wert-&gt;ptr[index_on_expPrfLst + SENSING_UL]
,(const char*) *zeilen_wert-&gt;ptr[index_on_expPrfLst + MESS_UNIT]
,(const char*) *zeilen_wert-&gt;ptr[index_on_expPrfLst + MESS_KANAL]
,(const char*) *zeilen_wert-&gt;ptr[index_on_expPrfLst + STROMMESS_R]
,(const char*) *zeilen_wert-&gt;ptr[index_on_expPrfLst + ANSCHALTUNG]
);
nicht initialisierte Felder belegen:
if ( (Ssp_pp_verwaltung-&gt;string_f[i + 0] == "UBATT_ULAST")
|| (Ssp_pp_verwaltung-&gt;string_f[i + 0] == "ULAST")
|| (Ssp_pp_verwaltung-&gt;string_f[i + 0] == "UBATT")
|| (Ssp_pp_verwaltung-&gt;string_f[i + 0] == "-") ) {
;
}
else {
debug_message( __FILE__, __LINE__, DEB_GAUDI
,"Feld 'KON_A' von 'L_KAM_KONFIG' nicht initialisiert" );
Ssp_pp_verwaltung-&gt;string_f[i + 0] = "-";
}
if ( (Ssp_pp_verwaltung-&gt;string_f[i + 1] == "UBATT_ULAST")
|| (Ssp_pp_verwaltung-&gt;string_f[i + 1] == "ULAST")
|| (Ssp_pp_verwaltung-&gt;string_f[i + 1] == "UBATT")
|| (Ssp_pp_verwaltung-&gt;string_f[i + 1] == "-") ) {
;
}
else {
debug_message( __FILE__, __LINE__, DEB_GAUDI
,"Feld 'KON_B' von 'L_KAM_KONFIG' nicht initialisiert" );
Ssp_pp_verwaltung-&gt;string_f[i + 1] = "-";
}
if ( (Ssp_pp_verwaltung-&gt;string_f[i + 2] == "NEIN")
|| (Ssp_pp_verwaltung-&gt;string_f[i + 2] == "JA")
|| (Ssp_pp_verwaltung-&gt;string_f[i + 2] == "-") ) {
;
}
else {
debug_message( __FILE__, __LINE__, DEB_GAUDI
,"Feld 'KON_KASK' von 'L_KAM_KONFIG' nicht initialisiert" );
Ssp_pp_verwaltung-&gt;string_f[i + 2] = "-";
}
}
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>

View File

@ -0,0 +1,225 @@
<HTML>
<HEAD>
<TITLE>L_ZUSATZ</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_ZUSATZ</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
-----------------------------------------------------------------------------
Funktionsbeschreibung:
<20>bergabeparameter anhand der Modglobal.stl
MD,L_ZUSATZ</pre><b><a name="param1">1</a> ,PRUEFSCHRITT</b><pre></pre><b><a name="param2">2</a> ,POSITION</b><pre></pre><b><a name="param3">3</a> ,ANST_UNIT</b><pre></pre><b><a name="param4">4</a> ,MESS_ART</b><pre> Auswahl der Messart/des Messkanals fuer
den gewaehlten Lastzweig:
Strommessung: "I"
Spannungsmessung: "U"
Strom- und Spannungsmessung: "I;U"/"U;I"
keine Messung: "AUS"/"-"
soll der Lastzweig abgeschaltet werden,
wird der Inhalt ignoriert;</pre><b><a name="param5">5</a> ,MESS_HIGH</b><pre> bei Spannungsmessung wird hiermit der auf den
Pruefling bezogene Anschalte-Pin ausgewaehlt;
die Pin-Bezeichnung wird intern auf den
entsprechenden Kartenpin transformiert
(z.B.: d28 );
soll der Lastzweig abgeschaltet oder
keine entspr. Messung ausgefuehrt werden,
wird der Inhalt ignoriert;</pre><b><a name="param6">6</a> ,MESS_LOW</b><pre> bei Spannungsmessung wird hiermit der auf den
Pruefling bezogene Messbezugs-Pin ausgewaehlt;
die Pin-Bezeichnung wird intern auf den
entsprechenden Kartenpin transformiert;
( moeglich sind UB- oder Masse-Bezug )
soll der Lastzweig abgeschaltet oder
keine entspr. Messung ausgefuehrt werden,
wird der Inhalt ignoriert;</pre><b><a name="param7">7</a> ,MESS_MODE</b><pre> Karten-spezif. Sondereinstellungen:
KSM_6269 - zur Anschaltung eines alternativen
Spannungsmesskanals / Parameter: "U_MESSKA_B"
MSM_6270 - zur Anschaltung eines alternativen
Strom- oder/und Spannungs-Messkanals
arameter: "I_MESSKA_A"/"U_MESSKA_B"
"IU_MESSKA_AB"
(z.Zt. ist implementiert, dass - unabhaengig
vom gewaehlten Parameter - die Messkanaele
stets gemeinsam geschaltet werden, um die
Fehler-/Kollisionsmoeglichkeiten zu
minimieren )
soll der Lastzweig abgeschaltet oder
keine entspr. Messung ausgefuehrt werden,
wird der Inhalt ignoriert;
---------------------------------------------------------------------------
&lt;\userdoc&gt;
-- pragmas -----------------------------------------------------------------
#pragma COPYRIGHT "Robert Bosch GmbH Reutlingen, SaW/TEF72"
#pragma VERSIONID "$Id: l_zusatz.C,v 1.3 2003/04/17 09:36:11 wiese Exp $"
-- defines -----------------------------------------------------------------
#define EXTERN extern Bei allen Subroutinen
#define HEADER "$Id: l_zusatz.C,v 1.3 2003/04/17 09:36:11 wiese Exp $"
#ifndef ret_val_OK
# define ret_val_OK (int)0
#endif
//#define PRUEFSCHRITT 1
//#define POSITION 2
#define ANST_UNIT (3 - 1)
#define MESS_ART (4 - 1)
#define MESS_HIGH (5 - 1)
#define MESS_LOW (6 - 1)
#define MESS_MODE (7 - 1)
#define ANZAHL_ZUSATZDATEN 4
#define INT_VERWALTUNG 3
#define STRING_VERWALTUNG 2
-- includes ----------------------------------------------------------------
#include "shm_syscom.H"
#include "libccs.H" // Zentrale Lib
#include "libtestmodul_pool.H" // Modul Lib
-- external functions / variables ------------------------------------------
-- global variables (nur im "main" erlaubt) -------------------------------
Whatstring
static char ident[] = "@(#)$Header: /rweglobal/cvs/testsystem/ccs/6_testmodul_pool/bosch_bus_qt/module/l_lastmodule/s/src/l_zusatz.C,v 1.3 2003/04/17 09:36:11 wiese Exp $";
int l_zusatz( shm_stringpointer *zeilen_wert
,long index_on_expPrfLst
,long anzahl_parameter )
{
-- local variables -------------------------------------------------------
long i; // Laufvariable f<>r Parameter<65>bergabe
int schritt; // Schritt ausf<73>hren
long unit_index; // Index Zeiger auf Unit
int ret_val = ret_val_OK;
//---------------------------------------------------------------------------
// Die Zusatzdaten werden in den Stringspeicher umgeladen
//---------------------------------------------------------------------------
unit_index = suche_unit_index( *zeilen_wert-&gt;ptr[index_on_expPrfLst + ANST_UNIT] );
if( unit_index &lt; 0 )
{
ret_val = -1;
}
else
{
i = get_platzmemory( STRING_VERWALTUNG
,unit_index
,ANZAHL_ZUSATZDATEN );
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 + MESS_ART];
Ssp_pp_verwaltung-&gt;string_f[i+1] = *zeilen_wert-&gt;ptr[index_on_expPrfLst + MESS_HIGH];
Ssp_pp_verwaltung-&gt;string_f[i+2] = *zeilen_wert-&gt;ptr[index_on_expPrfLst + MESS_LOW];
Ssp_pp_verwaltung-&gt;string_f[i+3] = *zeilen_wert-&gt;ptr[index_on_expPrfLst + MESS_MODE];
----------------------------------------------------------------------
debug_message( __FILE__, __LINE__, DEB_GAUDI
,"Unitindex: %d - L_ZUSATZ"
"\nMESS_ART: %s"
"\nMESS_HIGH: %s"
"\nMESS_LOW: %s"
"\nMESS_MODE: %s"
,unit_index
,(const char *)*zeilen_wert-&gt;ptr[index_on_expPrfLst + MESS_ART]
,(const char *)*zeilen_wert-&gt;ptr[index_on_expPrfLst + MESS_HIGH]
,(const char *)*zeilen_wert-&gt;ptr[index_on_expPrfLst + MESS_LOW]
,(const char *)*zeilen_wert-&gt;ptr[index_on_expPrfLst + MESS_MODE] );
----------------------------------------------------------------------
----------------------------------------------------------------------
* Schrittbetriebshandler starten
schritt = schrittbetrieb( zeilen_wert, index_on_expPrfLst );
if ( schritt != 1 )
ret_val = ret_val_OK;
}
return( ret_val );
} Ende von 'l_zusatz ()'
-- un_defines --------------------------------------------------------------
#undef ANST_UNIT
#undef MESS_ART
#undef MESS_HIGH
#undef MESS_LOW
#undef MESS_MODE
#undef ANZAHL_ZUSATZDATEN
#undef INT_VERWALTUNG
#undef STRING_VERWALTUNG
- End of file ---------------------------------------------------------------
Historie:
$Log: l_zusatz.C,v $
Revision 1.3 2003/04/17 09:36:11 wiese
$Head -&gt; $Id wegen log_message
Revision 1.2 2002/02/14 08:03:52 PIJ3SA
userdoc for html-page inserted
Revision 1.1 2001/12/18 10:39:34 sgc3sa
Anpassungen fuer Linux und QT
Revision 1.8 2001/06/19 09:14:26 lehmann
wegen linux von OK -&gt; ret_val_OK
Revision 1.7 2001/06/12 10:27:02 lehmann
Put_unitaenderung eingefuegt
Revision 1.6 2001/05/23 13:00:25 lehmann
put_unit_aenderung eingef<65>hrt
Revision 1.5 2000/02/16 12:13:52 klm3sa
*** empty log message ***
Revision 1.4 2000/02/15 11:24:08 KLM3SA
Sourcen aus testsystem_21 kopiert.
Revision 1.2 ohm3sa/19970910: Umstellung der Debug-Ausgabe auf 'DEB_GAUDI';
Verzicht auf das Umladen der Shared Memory-Daten
in lokalen Speicher;
Revision 1.1 satef70h/19960514: Aenderung des Funktionstyps von "void" auf
"int" nach Absprache mit RtW;
Revision 1.0 satef7oh/19960523: Initial revision
---------------------------------------------------------------------------
</PRE>
</BODY>
</HTML>

View File

@ -0,0 +1,57 @@
<HTML>
<HEAD>
<TITLE>LUDWIG</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>LUDWIG</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
$Header: /rweglobal/cvs/testsystem/ccs/6_testmodul_pool/testlisten_anw_module/src/ludwig.C,v 1.7 2003/09/15 11:07:21 lehmann Exp $
-------------------------------------------------------------------------
Kurzbeschreibung: gibt unterschiedliche Daten in Abhaengigkeit vom Modus
aus, z.B. ECUID, NUMBER oder das Datum in verschiedenen Formaten
-------------------------------------------------------------------------
Projekt: Common Core System - BOSCH
Sourcefile: ludwig.C
Autor: AnW/TEF7 Ludwig Schroll (fuer Audi)
Zielsystem: HP9000 743rt (HP-UX 10.20; HP-RT 3.01)
Sprache: Ansi C; C++
-------------------------------------------------------------------------
Aufruf: &lt;GFMT KS=on TAB=8 LF=on&gt;
int ludwig (shm_stringpointer *zeilen_wert,// &lt;I&gt; Zeiger auf Werte
long index, // &lt;I&gt; Index-Nummer
long anzahl) // &lt;I&gt; Anzahl der Werte
int ludwig (STRING PRUEFSCHRITT
STRING POSITION
STRING ADATUM_MODUS
STRING INPUT_STRING
STRING RESULTSTRING1
STRING RESULTSTRING2)
-------------------------------------------------------------------------
Returnparameter: &lt;GFMT KS=on TAB=8 LF=on&gt;
-------------------------------------------------------------------------
Funktionsbeschreibung: &lt;GFMT KS=on TAB=8 LF=on&gt;
Das Modul verarbeitet eine Vielfalt von Daten. In Abhaengigkeit vom Modus
wird ein Eingabestring ausgewertet. Das Ergebnis wird in zwei
Ausgabestrings geschrieben, z.B. ECUID, NUMBER oder das Datum in
verschiedenen Formaten (genaueres s. unter ADATUM_MODUS).
Beschreibung der Moduluebergabeparameter:</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> MODUS</b><pre> Die folgenden Modi koennen eingegeben werden:</pre><b><a name="param4">4</a> INPUT_STRING</b><pre> einzulesende Zeichenkette
abhaengig von ADATUM_MODUS: s. "Input :"</pre><b><a name="param5">5</a> RESULTSTRING1</b><pre> erste Ergebnis-Zeichenkette
abhaengig von ADATUM_MODUS: s. "Output: RETURN1 :"</pre><b><a name="param6">6</a> RESULTSTRING2</b><pre> zweite Ergebnis-Zeichenkette
abhaengig von ADATUM_MODUS: s. "Output: RETURN2 :"
</PRE>
</BODY>
</HTML>

Some files were not shown because too many files have changed in this diff Show More