User Tools

Site Tools


rechner-gruppe:sdh-multicast-format

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
rechner-gruppe:sdh-multicast-format [2017/07/05 11:13]
hafok
rechner-gruppe:sdh-multicast-format [2018/10/18 14:48]
bwinkel
Line 1: Line 1:
 ====== SDH multicast format (port 1602) ====== ====== SDH multicast format (port 1602) ======
  
-The table lists all keys from the json multicast stream in alphabetic order and all "​reserve"​-keys were skipped. Below are screen-shots from the system status during this observation and even lower the full table with all keys.+The table lists all keys from the json multicast stream in alphabetic order and all "​reserve"​-keys were skipped. Below are screen-shots from the system status during this observation and even lower the full table with all keys. In the bottom, the original '​datastruct_def.h'​ C-header file is quoted. It contains some additional comments and logical grouping of the entries, which might help to find certain information more easily.
  
 ^ json-key ^ measure ^ off-source slewing ^ Comment ^ ^ json-key ^ measure ^ off-source slewing ^ Comment ^
Line 7: Line 7:
 | act-coordsys ​ | 1  | 1  | 0:apparent 1:J2000 2:1950 3:galactic 4: ecliptic 5: other (az/​el) ​  | | act-coordsys ​ | 1  | 1  | 0:apparent 1:J2000 2:1950 3:galactic 4: ecliptic 5: other (az/​el) ​  |
 | actfixcoor ​ | 0.0  | 0.0  |    | | actfixcoor ​ | 0.0  | 0.0  |    |
-| act-focus ​ | 1.0  | 1.0  |    |+| act-focus ​ | 1.0  | 1.0  | 1: prime focus; 2: secondary focus  ​|
 | actlam ​ | 0.0  | 0.0  |    | | actlam ​ | 0.0  | 0.0  |    |
 | actruncoor ​ | 0.0  | 0.0  |    | | actruncoor ​ | 0.0  | 0.0  |    |
Line 26: Line 26:
 | az-enc-1 ​ | 98.3709583333 ​ | 149.773736111 ​ |    | | az-enc-1 ​ | 98.3709583333 ​ | 149.773736111 ​ |    |
 | azi  | 0.0  | 0.0  |    | | azi  | 0.0  | 0.0  |    |
-| azim-ein ​ | 0  | 0  |    |+| azim-ein ​ | 0  | 0  | Azi button active ​   |
 | azim-endsch ​ | 0  | 0  |    | | azim-endsch ​ | 0  | 0  |    |
 | azim-ist20d ​ | 0  | 0  |    | | azim-ist20d ​ | 0  | 0  |    |
Line 32: Line 32:
 | azim-rechner ​ | 0  | 0  |    | | azim-rechner ​ | 0  | 0  |    |
 | azim-soll0 ​ | 0  | 0  |    | | azim-soll0 ​ | 0  | 0  |    |
-| azonpos ​ | 1  | 0  |    +| azonpos ​ | 1  | 0  | Azimuth position 0: slewing 1: tracking ​  
-| beobachter ​ | TEST  | TEST  |    |+| beobachter ​ | TEST  | TEST  | Observer ​  |
 | camac-adcs-0 ​ | 0  | 0  |    | | camac-adcs-0 ​ | 0  | 0  |    |
 | camac-adcs-1 ​ | 0  | 0  |    | | camac-adcs-1 ​ | 0  | 0  |    |
Line 185: Line 185:
 | displ-coo-bet ​ | <​empty> ​ | <​empty> ​ |    | | displ-coo-bet ​ | <​empty> ​ | <​empty> ​ |    |
 | displ-coo-lam ​ | <​empty> ​ | <​empty> ​ |    | | displ-coo-lam ​ | <​empty> ​ | <​empty> ​ |    |
-| dk2000 ​ | 42.2361111111 ​ | 42.2361111111 ​ |    +| dk2000 ​ | 42.2361111111 ​ | 42.2361111111 ​ | Declination J2000  ​
-| dk50  | 42.0340852091 ​ | 42.0340852091 ​ |    |+| dk50  | 42.0340852091 ​ | 42.0340852091 ​ | Declination B1950  ​|
 | dUT1  | 0.161447599015 ​ | 0.161447599015 ​ |    | | dUT1  | 0.161447599015 ​ | 0.161447599015 ​ |    |
-| ekllat ​ | 54.9335076784 ​ | 54.9335076784 ​ |    +| ekllat ​ | 54.9335076784 ​ | 54.9335076784 ​ | Ecliptical coordinates LAT   
-| ekllong ​ | 339.841003158 ​ | 339.841003158 ​ |    | +| ekllong ​ | 339.841003158 ​ | 339.841003158 ​ | Ecliptical coordinates LON    | 
-| el-enc-0 ​ | 67.3578611111 ​ | 66.9424722222 ​ |    +| el-enc-0 ​ | 67.3578611111 ​ | 66.9424722222 ​ | Elev encoder 1   
-| el-enc-1 ​ | 67.3559027778 ​ | 66.9415 ​ |    +| el-enc-1 ​ | 67.3559027778 ​ | 66.9415 ​ | Elev encoder 2   
-| elev-ein ​ | 0  | 0  |    |+| elev-ein ​ | 0  | 0  | Elev button active ​  |
 | elev-endsch ​ | 0  | 0  |    | | elev-endsch ​ | 0  | 0  |    |
 | elev-ist10d ​ | 0  | 0  |    | | elev-ist10d ​ | 0  | 0  |    |
Line 198: Line 198:
 | elev-rechner ​ | 0  | 0  |    | | elev-rechner ​ | 0  | 0  |    |
 | elev-soll0 ​ | 0  | 0  |    | | elev-soll0 ​ | 0  | 0  |    |
-| elonpos ​ | 1  | 1  |    |+| elonpos ​ | 1  | 1  | Elevation position 0: slewing 1: tracking  ​|
 | elv  | 0.0  | 0.0  |    | | elv  | 0.0  | 0.0  |    |
 | fahraxis ​ | NEIN  | NEIN  |    | | fahraxis ​ | NEIN  | NEIN  |    |
Line 341: Line 341:
 | fe-version-2 ​ | 0  | 0  |    | | fe-version-2 ​ | 0  | 0  |    |
 | fe-version-3 ​ | 0  | 0  |    | | fe-version-3 ​ | 0  | 0  |    |
-| foc-active ​ | 1  | 1  |    |+| foc-active ​ | 1  | 1  | Focus button ​  |
 | foc-azim ​ | 67.3588333333 ​ | 66.9367152778 ​ |    | | foc-azim ​ | 67.3588333333 ​ | 66.9367152778 ​ |    |
 | foc-controlport ​ | 15998  | 15998  |    | | foc-controlport ​ | 15998  | 15998  |    |
Line 377: Line 377:
 | foc-offset-5 ​ | 0.0  | 0.0  |    | | foc-offset-5 ​ | 0.0  | 0.0  |    |
 | foc-offsets ​ | 0  | 0  |    | | foc-offsets ​ | 0  | 0  |    |
-| foc-onpos ​ | 1  | 1  |    +| foc-onpos ​ | 1  | 1  | Focus position 0: slewing 1: tracking ​  
-| foc-prim ​ | 1  | 1  |    |+| foc-prim ​ | 1  | 1  | Prime focus   |
 | foc-realpos-0 ​ | -40.357946415 ​ | -41.3685439693 ​ |    | | foc-realpos-0 ​ | -40.357946415 ​ | -41.3685439693 ​ |    |
 | foc-realpos-1 ​ | 27.0  | 27.0  |    | | foc-realpos-1 ​ | 27.0  | 27.0  |    |
Line 389: Line 389:
 | focrx-ist ​ | -5.00044250488 ​ | -5.00044250488 ​ |    | | focrx-ist ​ | -5.00044250488 ​ | -5.00044250488 ​ |    |
 | focrx-soll ​ | 0.0  | 0.0  |    | | focrx-soll ​ | 0.0  | 0.0  |    |
-| foc-sek ​ | 0  | 0  |    |+| foc-sek ​ | 0  | 0  | secondary focus   |
 | foc-sendport ​ | 8001  | 8001  |    | | foc-sendport ​ | 8001  | 8001  |    |
 | foc-set-0 ​ | 0.0  | 0.0  |    | | foc-set-0 ​ | 0.0  | 0.0  |    |
Line 434: Line 434:
 | front-msg ​ | <​empty> ​ | <​empty> ​ |    | | front-msg ​ | <​empty> ​ | <​empty> ​ |    |
 | fuelling ​ | NGC7027 ​ | NGC7027 ​ |    | | fuelling ​ | NGC7027 ​ | NGC7027 ​ |    |
-| gallat ​ | -3.4962470934 ​ | -3.4962470934 ​ |    | +| gallat ​ | -3.4962470934 ​ | -3.4962470934 ​ | Galactic coordinate LAT    | 
-| gallong ​ | 84.9298042732 ​ | 84.9298042732 ​ |    |+| gallong ​ | 84.9298042732 ​ | 84.9298042732 ​ | Galactic coordinate LON   |
 | hangle ​ | 0.0  | 0.0  |    | | hangle ​ | 0.0  | 0.0  |    |
 | haz  | 0.0  | 0.0  |    | | haz  | 0.0  | 0.0  |    |
 | hel  | 0.0  | 0.0  |    | | hel  | 0.0  | 0.0  |    |
 | horizon-on ​ | 0  | 0  |    | | horizon-on ​ | 0  | 0  |    |
-| hourangle ​ | -2.06822769847 ​ | -2.11268241241 ​ |    |+| hourangle ​ | -2.06822769847 ​ | -2.11268241241 ​ | Hour angle   |
 | hpa  | 0.0  | 0.0  |    | | hpa  | 0.0  | 0.0  |    |
 | humi  | 0.0  | 0.0  |    | | humi  | 0.0  | 0.0  |    |
Line 449: Line 449:
 | indvaz ​ | 0.0  | 0.0  |    | | indvaz ​ | 0.0  | 0.0  |    |
 | indvel ​ | 0.0  | 0.0  |    | | indvel ​ | 0.0  | 0.0  |    |
-| ist-0  | 67.2896270182 ​ | 66.8735019384 ​ | elevation actual position ​ +| ist-0  | 67.2896270182 ​ | 66.8735019384 ​ | elevation actual position ​(apparent) ​
-| ist-1  | 98.6835868357 ​ | 150.091096393 ​ | azimuth actual position | +| ist-1  | 98.6835868357 ​ | 150.091096393 ​ | azimuth actual position ​(apparent) ​
-| istmess ​ | 1  | 0  |    |+| istmess ​ | 1  | 0  | Antenna overall status 1: measure 0: configuring ​  |
 | ist-onscan ​ | 0  | 0  |    | | ist-onscan ​ | 0  | 0  |    |
 | juldat ​ | 0.0  | 0.0  |    | | juldat ​ | 0.0  | 0.0  |    |
 | lb-mjd ​ | 0.0  | 0.0  |    | | lb-mjd ​ | 0.0  | 0.0  |    |
-| lb-offs-0 ​ | 0.0  | 0.0  |    +| lb-offs-0 ​ | 0.0  | 0.0  | Offset to the current axis (El or Dec)   
-| lb-offs-1 ​ | -0.185019133102 ​ | 0.306729346514 ​ |    +| lb-offs-1 ​ | -0.185019133102 ​ | 0.306729346514 ​ | Offset to the current axis (Az or RA)   
-| lb-pos-0 ​ | 42.3069381714 ​ | 42.3069381714 ​ |    +| lb-pos-0 ​ | 42.3069381714 ​ | 42.3069381714 ​ | Apparent Dec   
-| lb-pos-1 ​ | 316.905548096 ​ | 316.905548096 ​ |    |+| lb-pos-1 ​ | 316.905548096 ​ | 316.905548096 ​ | Apparent RA   |
 | man-azi ​ | 0  | 0  |    | | man-azi ​ | 0  | 0  |    |
 | man-elv ​ | 0  | 0  |    | | man-elv ​ | 0  | 0  |    |
Line 464: Line 464:
 | mdazi  | 0.0  | 0.0  |    | | mdazi  | 0.0  | 0.0  |    |
 | mdelv  | 0.0  | 0.0  |    | | mdelv  | 0.0  | 0.0  |    |
-| mjuld  | 15.1711024999 ​ | 15.1271025001 ​ |    |+| mjuld  | 15.1711024999 ​ | 15.1271025001 ​ | Time in hours  ​|
 | month  | 0  | 0  |    | | month  | 0  | 0  |    |
 | noch  | <​empty> ​ | <​empty> ​ |    | | noch  | <​empty> ​ | <​empty> ​ |    |
Line 480: Line 480:
 | ok-foci ​ | 1  | 1  |    | | ok-foci ​ | 1  | 1  |    |
 | olam  | 0.0  | 0.0  |    | | olam  | 0.0  | 0.0  |    |
-| operateur ​ | VOGT  | VOGT  |    |+| operateur ​ | VOGT  | VOGT  | Operateur ​   |
 | outazi ​ | 0.0  | 0.0  |    | | outazi ​ | 0.0  | 0.0  |    |
 | outelv ​ | 0.0  | 0.0  |    | | outelv ​ | 0.0  | 0.0  |    |
Line 486: Line 486:
 | pazi  | 0.0  | 0.0  |    | | pazi  | 0.0  | 0.0  |    |
 | pelv  | 0.0  | 0.0  |    | | pelv  | 0.0  | 0.0  |    |
-| poicorr-0 ​ | 242.117734352 ​ | 246.54302181 ​ |    +| poicorr-0 ​ | 242.117734352 ​ | 246.54302181 ​ | current pointing correction El   
-| poicorr-1 ​ | -1129.18760865 ​ | -1146.42201641 ​ |    |+| poicorr-1 ​ | -1129.18760865 ​ | -1146.42201641 ​ | current pointing correction Az   |
 | poifc1 ​ | 0.0  | 0.0  |    | | poifc1 ​ | 0.0  | 0.0  |    |
 | poifc2 ​ | 0.0  | 0.0  |    | | poifc2 ​ | 0.0  | 0.0  |    |
Line 494: Line 494:
 | posit-fast-azm ​ | 1  | 1  |  sets fast gear  | | posit-fast-azm ​ | 1  | 1  |  sets fast gear  |
 | posit-fast-elv ​ | 1  | 1  |  sets fast gear  | | posit-fast-elv ​ | 1  | 1  |  sets fast gear  |
-| project ​ | 20-13  | 20-13  |    |+| project ​ | 20-13  | 20-13  | Project code   |
 | pvaz  | 0.0  | 0.0  |    | | pvaz  | 0.0  | 0.0  |    |
 | pvel  | 0.0  | 0.0  |    | | pvel  | 0.0  | 0.0  |    |
-| ra2000 ​ | 316.756666667 ​ | 316.756666667 ​ |    +| ra2000 ​ | 316.756666667 ​ | 316.756666667 ​ | RA J2000   
-| ra50  | 316.289445677 ​ | 316.289445677 ​ |    |+| ra50  | 316.289445677 ​ | 316.289445677 ​ | RA B1950   |
 | read  | 0  | 0  |    | | read  | 0  | 0  |    |
 | refract ​ | 0.0  | 0.0  |    | | refract ​ | 0.0  | 0.0  |    |
Line 512: Line 512:
 | selv  | 0.0  | 0.0  |    | | selv  | 0.0  | 0.0  |    |
 | sfl-corr ​ | 1  | 1  |    | | sfl-corr ​ | 1  | 1  |    |
-| sidtime ​ | 19.05880717 ​ | 19.0143524561 ​ |    |+| sidtime ​ | 19.05880717 ​ | 19.0143524561 ​ | Siderial time  ​|
 | simulation-azm ​ | 1  | 1  |    | | simulation-azm ​ | 1  | 1  |    |
 | simulation-elv ​ | 1  | 1  |    | | simulation-elv ​ | 1  | 1  |    |
 | sit  | 0.0  | 0.0  |    | | sit  | 0.0  | 0.0  |    |
 | slam  | 0.0  | 0.0  |    | | slam  | 0.0  | 0.0  |    |
-| soll-0 ​ | 67.2894729195 ​ | 66.8736884332 ​ |    +| soll-0 ​ | 67.2894729195 ​ | 66.8736884332 ​ | Commanded apparent position El   
-| soll-1 ​ | 98.6837326366 ​ | 99.4873884992 ​ |    |+| soll-1 ​ | 98.6837326366 ​ | 99.4873884992 ​ | Commanded apparent position Az   |
 | sollazi ​ | 0.0  | 0.0  |    | | sollazi ​ | 0.0  | 0.0  |    |
 | sollelv ​ | 0.0  | 0.0  |    | | sollelv ​ | 0.0  | 0.0  |    |
Line 524: Line 524:
 | sollvel ​ | 0.0  | 0.0  |    | | sollvel ​ | 0.0  | 0.0  |    |
 | sourcename ​ | <​empty> ​ | <​empty> ​ |    | | sourcename ​ | <​empty> ​ | <​empty> ​ |    |
-| spgklapp ​ | Open  | Open  |    |+| spgklapp ​ | Open  | Open  | Spiegelklappe ​  |
 | srp1  | 0  | 0  |    | | srp1  | 0  | 0  |    |
 | srp2  | 0  | 0  |    | | srp2  | 0  | 0  |    |
Line 548: Line 548:
 | time  | 0.0  | 0.0  |    | | time  | 0.0  | 0.0  |    |
 | time-scanbegin ​ | 15.1644241667 ​ | 0.0  |    | | time-scanbegin ​ | 15.1644241667 ​ | 0.0  |    |
-| time-to-end ​ | 5.95800052397 ​ | 29.9939997029 ​ |    +| time-to-end ​ | 5.95800052397 ​ | 29.9939997029 ​ | Scan time counter in s (reverse)  ​
-| topochar ​ | TOPO:​AUTO ​ | TOPO:​AUTO ​ |    |+| topochar ​ | TOPO:​AUTO ​ | TOPO:​AUTO ​ | Cable wrap   |
 | topomode ​ | 0  | 0  | 0:auto, -1: north, 1:​south ​ | | topomode ​ | 0  | 0  | 0:auto, -1: north, 1:​south ​ |
 | uazi  | 0.0  | 0.0  |    | | uazi  | 0.0  | 0.0  |    |
Line 573: Line 573:
 | volt-0 ​ | 0.0157350765995 ​ | 0.0157632933261 ​ |    | | volt-0 ​ | 0.0157350765995 ​ | 0.0157632933261 ​ |    |
 | volt-1 ​ | -0.149947936843 ​ | -0.96  |    | | volt-1 ​ | -0.149947936843 ​ | -0.96  |    |
-| vonoff ​ | 1  | 1  |    |+| vonoff ​ | 1  | 1  |   0: OFF/REF Position 1: ON Position ​|
 | vpressure ​ | 987.921325684 ​ | 987.929931641 ​ | used for pointing ​   | | vpressure ​ | 987.921325684 ​ | 987.929931641 ​ | used for pointing ​   |
 | vrefract ​ | 66.7891253471 ​ | 66.7383451479 ​ | used for pointing ​  | | vrefract ​ | 66.7891253471 ​ | 66.7383451479 ​ | used for pointing ​  |
Line 584: Line 584:
 | vwindvel ​ | 0.753390312195 ​ | 2.42949199677 ​ |    | | vwindvel ​ | 0.753390312195 ​ | 2.42949199677 ​ |    |
 | waterpress ​ | 0.0  | 0.0  |    | | waterpress ​ | 0.0  | 0.0  |    |
-| wavelength ​ | 217.3  | 217.3  |    |+| wavelength ​ | 217.3  | 217.3  | Receiver plus version ​  |
 | weekday ​ | 0  | 0  |    | | weekday ​ | 0  | 0  |    |
 | wetter-manual ​ | 0  | 0  |    | | wetter-manual ​ | 0  | 0  |    |
Line 1329: Line 1329:
 | time  | 0.0  | 0.0  |    | | time  | 0.0  | 0.0  |    |
 | paral  | 0.0  | 0.0  |    | | paral  | 0.0  | 0.0  |    |
 +
 +===== Shared memory data structure =====
 +
 +Note, that for the translation into the data stream, underscores are replaced with minus signs, and arrays are put into distinct variables with the index appended (e.g., foc_sollpos[7] --> foc-sollpos-0 .. foc-sollpos-6).
 +
 +<code C datastruct_def.h>​
 +/​***************************************************************************
 +                          datastruct_def.h ​ -  description
 +                             ​-------------------
 +    Version ​             : 16.05.2011
 +    Author ​              : (C) 2002 by J.Neidhoefer
 + ​***************************************************************************/​
 +
 +
 +#ifndef DATASTRUCTDEF_H
 +#define DATASTRUCTDEF_H
 +
 +#define DOUBLE_DATA_DIM 350
 +#define INTEG_DATA_DIM 250
 +#define BOOL_DATA_DIM 100
 +
 +typedef struct dat_dbl
 +{
 + ​double azi;            // Azimut, Grad
 + ​double dazi;            // soll-ist
 + ​double mdazi; ​          // Regelungsabweichung
 + ​double cazi;            // counterdifferenz und einzelne
 + ​double caz1;
 + ​double caz2;
 + ​double vazi;            // Geschw.
 + ​double uazi;            // up-down counter
 + ​double sazi;             // Striche
 + ​double pazi;            // ideal Azimut ohne Pointing
 + ​double pvaz;
 + ​double sollazi; ​       //  Sollwerte
 + ​double sollvaz;
 + ​double indazi; ​        // indicated
 + ​double indvaz;
 + ​double tecazi; ​        // unbehandelte hardware inputs
 +// double tecvaz;
 + ​double haz;
 + ​double outazi; ​           // Ausgabewerte
 +//  double outvaz;
 +//  double outbaz; ​           // Beschleunigung
 +//    ***************** ​   neue Werte von VME
 + ​double rxaz;
 + ​double hysa;
 +
 + ​double elv;            // Elevation dgl.
 + ​double delv;
 + ​double mdelv; ​          // Regelungsabweichung
 + ​double celv;            // counterdifferenz und einzelne
 + ​double cel1;
 + ​double cel2;
 + ​double velv;
 + ​double uelv;
 + ​double selv;
 + ​double pelv;         // ideal Elevation ohne Pointing
 + ​double pvel;
 + ​double sollelv; ​      // ​ Sollwerte und Abweichung
 + ​double sollvel;
 + ​double indelv; ​        // indicated
 + ​double indvel;
 + ​double tecelv; ​        // unbehandelte hardware inputs
 +// double tecvel;
 + ​double hel;
 + ​double outelv; ​           // Ausgabewerte
 +//  double outvel;
 +//  double outbel; ​           // Beschleunigung
 +//    ***************** ​   neue Werte von VME
 + ​double rxel;
 + ​double hyse;
 +
 + //​----- ​ Foci    fc1-fc3: linear xyz, fc4-fc6: ​ rotation xyz,  fc7: Polarisation ​
 + ​double foc_sollpos[7]; ​       //  Sollpositionen ​ in mm oder Grad
 + ​double foc_sollvel[7]; ​       //  Sollgeschw.
 + ​double foc_solldist[7]; ​      // ​ Bei Fahren: Distanz
 + ​double foc_istpos[7]; ​        // ​ Istpositionen
 + ​double foc_istvel[7]; ​        // ​ Istgeschw.
 + ​double foc_realpos[7]; ​       //  berechnete Position (zB bei Fahren)
 +  ​
 +//----- FocusWechsel
 + ​double focrx_soll; ​        
 + ​double focrx_ist;
 +
 + ​double slam;           // eingegeben
 + ​double vlam;
 + ​double olam;
 + ​double sbet;
 + ​double vbet;
 + ​double obet;
 +
 + ​double ra50;           // VME-System: Eingabe-Koordinaten
 + ​double dk50;
 + ​double ra2000; ​      // ​ ... (2000.0)  ​
 + ​double dk2000;
 + ​double gallong; ​      // ... galaktisch
 + ​double gallat;
 + ​double hangle; ​        // Stundenwinkel
 + ​double paral; ​         //  Parallaktischer Winkel
 +
 + ​double actlam; ​         // aktive Werte fuer Anzeige
 + ​double actbet;
 + ​double actruncoor; ​     // laufende und fixed Koordinate
 + ​double actfixcoor;
 + ​double actveloc; ​       // aktive Geschw.
 +
 +
 + ​double hpa;             // ​ Luftdruck in Hpa
 + ​double temp;            //  Temperatur in C
 + ​double humi;            //  Luftfeuchte in %
 + ​double waterpress; ​     //  Wasserdruck in Hpa
 + ​double refract; ​        // ​ Refractive Index in "
 + ​double windvel; ​         //  Windgeschw in km/s
 + ​double winddir; ​         //  Windrichtung in Grad
 +
 + ​double juldat; ​         // julianisches Datum in [d]
 + ​double time;            // Uhrzeit in [h]
 + ​double sit;             // siderische Zeit in [h]
 + ​double subsctime; ​      // Zeit im Subscan [h]
 + ​double subscdist; ​      // Distanz im Subscan in []
 + ​double rxfreq; ​         //  RX-Frequenz
 +
 + ​double nule;            //  Pointingwerte
 + ​double nula;
 + ​double coll;
 + ​double poifc1;
 + ​double poifc2;
 +
 +/* double vme_elv1[11]; ​          // AXPUG-Feld vmetelescope*/​
 +
 + ​double foc_wanted; ​         // gewuenschter Fokus
 + ​double foc_elev; ​           // Elevation fuer Oberflaeche
 + ​double foc_azim;
 + ​double foc_mjd; ​            // Zeit der Fokusdaten in mjd
 + ​double foc_surfstatus; ​      // Status der Oberflaeche
 + ​double foc_time; ​             //  focmjd-tage
 +
 + /*
 + ​double vme_elv1[5]; ​          // AXPUG-Feld vmetelescope
 + ​double vme_elv2[11]; ​          // AXPUG-Feld vmetelescope
 + ​double vme_azi1[11]; ​          // AXPUG-Feld vmetelescope
 + ​double vme_azi2[11]; ​          // AXPUG-Feld vmetelescope
 + */
 + /​* ​  VME - Teleskop- Felder ​ 0 = elev, 1 = azim
 +  ...    weitere Felder s.o. 
 + */
 + ​double el_enc[2]; ​      // Encoderwerte
 + ​double az_enc[2]; ​      // Encoderwerte
 + ​double soll[2]; ​          // astron. Werte
 + ​double ist[2];
 + ​double vsoll[2];
 + ​double vist[2];
 + ​double poscom[2]; ​   // kommandierte + Korr.
 + ​double volt[2];
 + ​double poicorr[2];
 +    ​
 + ​double mjuld; ​     // Zeit Ende des Puffers
 + ​double time_to_end; ​   // in s bis Messende
 + ​double dUT1;
 + ​double lb_mjd; ​           // Werte fuer lam/bet (apparent)
 + ​double lb_pos[2];
 + ​double lb_offs[2];
 + ​double starttime; ​      // in mjd des Subscans
 + ​double act_focus; ​    // ​ aktiver Fokus (1,2)
 + ​double wavelength; ​ //  Wellenlaenge Rx in mm
 + ​double vnula;
 + ​double vcoll;
 + ​double vnule;
 + ​double vtemperature;​
 + ​double vhumidity;
 + ​double vpressure;
 + ​double vwindvel;
 + ​double vwinddir;
 + ​double vrefract;
 + 
 + ​double obs_timeon; ​        // ​ selected observation time per subscan (on) [h]
 +// double obs_timeref; ​       //  selected observation time per subscan (ref) [h]
 + 
 + ​double time_scanbegin; ​   //  VME:  Zeit am Begin des ersten Subscans
 + 
 + ​double obs_timeact; ​       //  actual observation time in subscan [h]
 + ​double obs_velocity; ​      // ​ selected observation velocity [ per min]
 + ​double obs_distance; ​      // ​ selected observation distance []
 + ​double obs_timerest; ​      // ​ rest time in subscan [h]
 +
 + //​***** ​ naechster ist double(171)
 +
 +//  Frontend-Daten
 + ​double fe_ulo_frqs[3]; ​  // berechnete ULO-Frequenzen ​ signal,​switch,​fixed
 + ​double fe_update; ​      // update-time in JD
 + ​double fe_frqs[3]; ​    // Synthesizer-Frequenzen signal,​switch,​fixed in [GHz]
 + ​double fe_amps[3]; ​    // ​ ... dgl Amplituden in [dBm]
 + ​double fe_dfms[3]; ​    // ​ gelesene Frequenzen
 + ​double fe_diffs[3]; ​   //  Diff zwischen gelesen und gesetzt
 + ​double fe_facts[3]; ​   //  Faktor fr Frequenzberechnung
 + ​double fe_scfs[7]; ​    // eingegebene Frqs: scf,​ocf,​rlf,​olf,​rhf,​ohf,​suf
 + ​double fe_rxfrq; ​      // receiver Frequenz
 + ​double fe_reffrq; ​     //  Referenz ​ "
 + ​double fe_frqoff; ​     //  Offset ​   "
 + ​double fe_sif; ​        // ​ IF        "
 + ​double fe_sif2; ​       //  not used
 +
 +//----- Fahrprogramm-Fokuswerte
 + ​double foc_offset[6];​
 + ​double foc_set[6];
 + ​double foc_geom[6];​
 + 
 + ​double hourangle;
 + ​double sidtime;
 + 
 + //​----- Daten aus dem Delphin-System
 + ​double delphin[75];​
 + 
 + ​double ekllong; ​          // VME-System: Eingabe-Koordinaten
 + ​double ekllat; ​            // ​ ...  (Ekliptikal)
 + ​double freilong; ​        // ​ ...  ( freie Koordinaten)
 + ​double freilat;
 + ​double anzeige_lam; ​  // ​  VME: Anzuzeigende Koordinaten
 + ​double anzeige_bet;​
 + 
 + ​double dreserve[47];​
 + 
 + // ​ double dreserve[53];​
 +
 +} DOUBLE_DATA;​
 +
 +
 +typedef struct dat_intg
 +{
 + long year;               // Kalenderdaten
 + long month;
 + long day;
 + long weekday;
 + long day_year;
 + long statazi; ​           //  Status-Bits der Achsen
 + long statelv;
 + long statfc1;
 + long statfc2;
 + long statfc3;
 + long statpos;
 + long scannr;
 + long subscnr;
 + long srp1;
 + long srp2;
 + long srp3;
 + long srp4;
 + long vax_statclock[2]; ​     // BCD-kodierte Stationsuhr
 + long vax_antclock; ​         //  VAX Antennencrate Clockcontroller
 + long vax_beclock; ​          // ​ VAX Backend Clockcontroller
 + long steuerpult_sw; ​        // ​ Steuerpultschalter
 + long camac_adcs[16]; ​        // ​ ADCS  von VAX Camac
 + long camac_dacs[16 ];        //  DACS von VAX-Camac 12 Bit
 + long camac_dac18[2]; ​        // ​ 18-Bit DAC von VAX Camac
 + long camac_digin[6]; ​        // ​ Digitale Inputs von VAX Camac
 + long camac_digout[2]; ​       //  Digitale Outputs von VAX Camac
 + long camac_veloc[4]; ​        // ​ Geschw. von VAX Camac
 + long camac_currents[16]; ​    // ​ actuelle Werte von VAX Camac
 + long vaxevents96; ​           // Eventflags der VAX
 + long vaxevents64;​
 + long scanning_axis; ​         // scannende Achse  1:​lam,​2:​bet,​3:​azm ...
 +
 +//***** naechste beginnt mit long(87)
 +
 +//  Frontend Daten
 + long fe_status_bits; ​        // ​ gegenw�tiger Status Frontend
 + long fe_used_syn; ​           //  benutzte Synthesizer ​ (sut)
 + long fe_ulomode; ​            // ​ fsm
 + long fe_act_fcunr; ​         //   ​aktive fcu-Nr
 + long fe_fcu_first; ​           //  erste und letzte fcu-Nr
 + long fe_fcu_last;​
 + long fe_fcu_avail; ​           // verfuegbare fcus
 + long fe_fcu_notavail;​
 + long fe_obs_status; ​      // Status of observation
 + long fe_err_severity; ​    // ​ Error Severity
 + long fe_ulo_contr[6]; ​     //  Frontend Einheiten Einstellung
 +                           // ulocontr1,​2,​esm_contr,​vlba_contr,​ 2 not used
 +
 + long fe_syn_typ[3]; ​      // Synthesizer typ
 + long fe_syn_adr[3]; ​      // ​ IEC adresse
 + long fe_syn_fd[3]; ​       //  file-descriptor (IEC)
 + long fe_syn_funct[3]; ​    // welche Funktion hat er
 + long fe_syn_severity[3]; ​ //  error severity
 +
 + long fe_dfm_alert[3]; ​ //  Frequenz-Abweichungs Status
 + long fe_dfm_typ[3]; ​ //  Typ
 + long fe_dfm_adr[3]; ​ //  IEC Adresse
 + long fe_dfm_fd[3]; ​ //   ​filedescriptor (IEC)
 + long fe_dfm_funct[3]; ​ // welche Funktion hat er
 + long fe_dfm_chan[3]; ​ //  welcher Eingangskanal
 + long fe_dfm_severity[3]; ​ // error severity
 +
 + long fe_fcu_number; ​       // Nr der Steuereinheit
 + long fe_bac_mul80; ​       // Backend-Multiplexer Einheit
 + long fe_bac_if750; ​       // IF-Umschaltung 750/150
 + long fe_bac_if150; ​       // IF-150-Verteilung
 + long fe_fcu_blanktime; ​       //  Blankzeit in 100 microsec
 + long fe_fcu_phtime; ​       //   ​Phasenzeit in millisec
 + long fe_fcu_mode; ​       //
 + long fe_fcu_status; ​       //  Status-info
 + long fe_fcu_severity; ​       // error severity
 + long fe_fcu_dyn10; ​       //  Schalter dynamisch blockiert
 + long fe_fcu_dynxx; ​       //       " ​    ​geschaltet
 + long fe_fcu_off10; ​       //   dgl. fuer Offscan
 + long fe_fcu_offxx; ​       //
 + long fe_fcu_stat1; ​       //   ​statische Schalter 9-16
 + long fe_fcu_stat2; ​       //          " ​  17-24
 + long fe_fcu_phases; ​       //   ​Anzahl Phasen
 + long fe_fcu_workmode; ​       // Betriebsart (1,2,3)
 + long fe_fcu_phmatrix[4]; ​       //  Phasenmatrix
 +
 + long fe_scf_opts[7]; ​       // eingegebene Optionen
 +                             // synt-,​fcu-,​units-simul,​ulo_berechnung,​rhf,​ohf,​frq
 + long fe_mul;
 + long fe_sid;
 + long fe_switchmode;​
 + long fe_version[4];​
 + long steps; ​                // Nr. of steps in scanning direction
 +
 + // ​ Focus-Informationen
 + long foc_input; ​            // Eingabe-Bits
 + long foc_status1; ​          // Ausgabe-Status
 + long foc_status2; ​         ​
 + long foc_sendport; ​         // PortNr. fuer Senden an Focusprozessor ​
 + long foc_controlport; ​      // PortNr. fuer Kontrollrechner
 + long foc_receiveport; ​      // PortNr. fuer Statusempfang ​
 + long foc_fahrachse; ​        // bei Fokusfahren:​ Fahrachse
 + long foc_spiegelklappen; ​   // Status der Spiegelklappen
 + 
 + //​---- VME Achsen (0=elev, 1=azim)
 + // ​ status-Input:​ 0:​elev,​1:​azim,​3:​focus
 + // ​  0,1: 0-manual,​1-idle,​2-pos,​3-ready,​4-start,​5-meas,​6-end,​7-stop,​99-lost
 + // ​   2:  0-idle,​1-pos,​2-ready,​3-start,​4-meas,​5-end,​6-stop,​99-abort
 + // --> gewandelt nach Bit 0-manual ... Bit 7-stop, Bit 8-abort
 + long axstatus[3];​
 + long axoptions[2];​
 + long axspsbits[4];​
 + //​---- ​ VME-Scannr. usw.
 + long vscan;
 + long vsubscan;
 + long vanzsubs;
 + long vonoff;
 + long topomode;
 + long act_coordsys; ​   // VME   ​aktuelles Eingabe-Koordinatensystem ​
 + // ​ 0= app 1 = 2000  2 = 1950  3 = Gal  4 = Ekl  5 = Horizontal ​ 6 =frei
 + long wwgeber[4];  ​
 + 
 + long ireserve[48];​
 +
 +} INTEG_DATA;
 +
 +
 +typedef struct dat_bool
 +{
 + bool alive;
 + bool man_elv;
 + bool man_azi;
 + bool man_foci;
 + bool ok_elv;
 + bool ok_azi;
 + bool ok_foci;
 + bool ist_onscan;
 + bool observation;​
 + bool azim_ein; ​          // ​ Inputs von SPS
 + bool azim_rechner;​
 + bool azim_soll0;
 + bool azim_endsch;​
 + bool azim_ist20d;​
 + bool azim_ist40d;​
 + bool elev_ein;
 + bool elev_rechner;​
 + bool elev_soll0;
 + bool elev_endsch;​
 + bool elev_ist10d;​
 + bool elev_ist20d;​
 + 
 + bool foc_messung;​
 + bool foc_active;
 + bool foc_surface;​
 + bool foc_standard;​
 + bool foc_offsets;​
 + bool foc_ellipse;​
 + bool foc_prim;
 + bool foc_sek;
 + bool foc_surfaceok;​
 + bool foc_onpos;
 +
 + // ​ Frontend-Daten
 + bool fe_unit_remote[6]; ​    // FrontendKontrolleinheiten remote
 +                           // ulocontr1,​2,​esm_contr,​vlba_contr,​ 2 not used
 + bool fe_syn_standby[3]; ​  // Synthesizer standby-mode
 + bool fe_syn_exist[3]; ​    // Synthesizer exist
 + bool fe_dfm_exist[3]; ​    // Frequenzzaehler exist
 + bool fe_fcu_hand; ​        // ​ Wird in Hand benutzt
 + bool fe_fcu_exist; ​       //  existiert
 + bool fe_fcu_remote; ​      // ​ Schalter auf remote
 + bool fe_be_mul80_remote; ​  // mul80 auf remote
 + bool fe_be_if750_remote; ​  // if750 auf remote
 + bool fe_be_if150_remote; ​  // if150 auf remote
 + 
 + bool azonpos; // vme az/el auf position
 + bool elonpos;
 + bool istmess;
 + bool focusfahren; ​ // alles vme ...
 + bool posit_fast_elv;​
 + bool posit_fast_azm;​
 + bool without_corr_elv;​
 + bool without_corr_azm;​
 + bool simulation_elv;​
 + bool simulation_azm;​
 + bool sfl_corr;
 + bool sun_allow;
 + bool steer_parangle;​
 + bool wetter_manual;​
 + bool frontend_active;​
 + bool horizon_on;
 + 
 + bool breserve[32];​
 +
 +} BOOL_DATA;
 +
 +//------ Anzahl der Textstring-Felder
 +#define TEXT_DATA_DIM ​ 14
 +
 +typedef struct in_data
 +{
 +unsigned short write; ​           // TRUE, wenn noch nicht alle Werte erneuert sind
 +unsigned short read;             // TRUE, wenn Werte noch dargestellt werden
 +int running; ​          // wird immer von 0-99 gez�lt bei jedem Update
 +
 +char datum[32]; ​       // Kalenderzeit in ascii
 +/* char sourcename[80];​*/​
 +char sourcename[40];​
 +char fuelling[20]; ​  // *** vorlaeufig VME-sourcename
 +char fahraxis[10]; ​ // focusfahrachse text
 +char spgklapp[10]; ​ // Spiegelklappen-text ​ offen,zu usw.
 +char scancoord[16]; ​   // Scannende Koordinate lam,bet,azm usw.
 +char velocity[16]; ​    // aktuelle Geschwindigkeitsart
 +char displ_coo_lam[16]; ​  // ​ Displaykoordinate in Lam
 +char displ_coo_bet[16]; ​  // ​ Displaykoordinate in Bet
 +char front_msg[80]; ​  // ​ Error  von Frontend
 +char front_inf[80]; ​  // ​ Info von Frontend ​ (severity 0,1)
 +char fahroffsets[16]; ​ //  Fahroffset-Koordinaten
 +char topochar[10]; ​ // topomode
 +char project[40];​
 +char beobachter[40];​
 +char operateur[40];​
 +char noch[30]; ​   // freier Platz
 +
 +
 +union doubledata
 +{
 + ​struct dat_dbl d;
 + ​double dfeld[350];
 +} d;
 +
 +union integdata
 +{
 + ​struct dat_intg i;
 + long ifeld[250];
 +} i;
 +
 +union booldata
 +{
 + ​struct dat_bool b;
 + bool bfeld[100];
 +} b;
 +
 +} DISPLAY_DATA;​
 +
 +
 +#​endif ​   //  DATASTRUCTDEF_H
 +
 +
 +</​code>​
 +
 +
rechner-gruppe/sdh-multicast-format.txt · Last modified: 2018/11/29 16:18 by hafok