49 char dday[2], dmonth[2], dyear[2];
55 for(i = 0; i < 9; i++)
59 dmonth[i] = datebuf[i];
69 dyear[x] = datebuf[i];
73 sprintf(
ddmmyy,
"%c%c/%c%c/%c%c", dday[0],dday[1],dmonth[0],dmonth[1],dyear[0],dyear[1]);
81 char dday[2], dmonth[2], dyear[2];
86 for(i = 0; i < 9; i++)
90 dmonth[i] = datebuf[i];
100 dyear[x] = datebuf[i];
105 sprintf(
ddmmyyf,
"%c%c%c%c%c%c", dday[0],dday[1],dmonth[0],dmonth[1],dyear[0],dyear[1]);
111 void FileLog(
char datebuf[9],
char timebuf[9])
158 void WriteInit(
const char *sname,
char *dateffn,
char *timebuff)
161 char tit1[256], datebuff[9];
171 fc = _open(DLOG.
flog, O_WRONLY | O_APPEND | O_TEXT | O_CREAT, S_IWRITE);
181 sprintf(datebuff,
"%c%c/%c%c/%c%c", dateffn[0],dateffn[1],dateffn[2],dateffn[3],dateffn[4],dateffn[5]);
182 sprintf(tit1,
"DAS Started on: %s, at: %s\n",datebuff,timebuff);
183 write(fc, &tit1, strlen(tit1));
185 sprintf(tit1,
"Time TCCD PwCCD PwPlt T.Optic T.IntSX T.OutSX T.IntDX T.OutDX T.Grat SPARE T.Elec SPARE SPARE SPARE SPARE SPARE SPARE SPARE SPARE \n");
186 write(fc, &tit1, strlen(tit1));
198 fc = open(DLOG.
flog, O_WRONLY | O_APPEND | O_TEXT | O_CREAT, S_IWRITE);
200 sprintf(tit1,
"Time TCCD PwCCD PwPlt T.Optic T.IntSX T.OutSX T.IntDX T.OutDX T.Grat SPARE T.Elec SPARE SPARE SPARE SPARE SPARE SPARE SPARE SPARE \n");
201 write(fc, &tit1, strlen(tit1));
212 sprintf(str,
"%.01lf", (90 +
S_zenetr) );
213 elev = (float)atof(str);
215 sprintf(str,
"%.01lf",
S_azim);
216 azi = (float)atof(str);
228 sprintf(str,
"%.01lf", (90 -
S_zenetr));
229 elev = (float)atof(str);
231 sprintf(str,
"%.01lf",
S_azim);
232 azi = (float)atof(str);
263 strftime( DLOG.
ndate, 7,
"%y%m%d", &today );
264 strftime( DLOG.
ntime, 9,
"%H:%M:%S", &today );
275 fc = open(DLOG.
flog, O_WRONLY | O_APPEND | O_TEXT | O_CREAT, S_IWRITE);
279 sprintf(tit1,
"Time TCCD PwCCD PwPlt T.Optic T.IntSX T.OutSX T.IntDX T.OutDX T.Grat SPARE T.Elec SPARE SPARE SPARE SPARE SPARE SPARE SPARE SPARE \n");
280 write(fc, tit1, strlen(tit1));
289 fc = open(DLOG.
flog, O_WRONLY | O_APPEND | O_TEXT| O_CREAT, S_IWRITE);
293 sprintf(str,
"%s ",DLOG.
ntime);
294 write(fc, str, strlen(str));
299 write(fc, str, strlen(str));
303 write(fc, str, strlen(str));
307 write(fc, str, strlen(str));
311 for(cont = 15; cont >= 0; cont--)
315 write(fc, str, strlen(str));
318 sprintf(str,
"\n",
"");
319 write(fc, str, strlen(str));
353 sprintf(dailydir,
"%s", dirdata + (l - 6));
355 sprintf(buff,
"%s\\Config\\%s", dirhome,
"DataTransf.txt");
356 fd = fopen(buff,
"w");
360 MMessageDialog(
"DAS information",
"Problems in opening file",
" Ok ", NULL);
364 sprintf(buff,
"%s\n", DFTP.
ftpuser);
367 sprintf(buff,
"%s\n", DFTP.
ftppwd);
370 sprintf(buff,
"%s\n",
"bi");
374 sprintf(buff,
"mkdir %s\n", dailydir);
378 sprintf(buff,
"cd %s\n", dailydir);
383 sprintf(buff,
"mput %s\\*.bif\n", dirdata);
388 sprintf(buff,
"mput %s\\*.dat\n", dirdata);
394 sprintf(buff,
"cd ..\n");
400 sprintf(buff,
"%s\\Log\\%s%s.log\n", dirhome, BIL.
SPH.
location,dailydir);
405 sprintf(buff,
"%s\n",
"quit");
414 sprintf(buff,
"%s\\Config\\%s", dirhome,
"DataTransf.txt");
416 sprintf(COMANDO,
"ftp -i -s:%s %s",buff, DFTP.
ftpserver);
419 er = WinExec(COMANDO, SW_SHOW);
445 c = (int) (SZADelta.
MaxSZA * 100);
450 if((a >= b) && ( a <= c))
483 SZATest = SZAInt + ((double)k * SZADelta.
DeltaSZA);
510 SZATest = SZAInt - ((double)k * SZADelta.
DeltaSZA);
549 Status(
"Execution Paused");
553 sprintf(buff,
"Waiting for SZA = %.2f", SZADelta.
NextSZA);
619 newtime.tm_year + 1900,
620 newtime.tm_yday, newtime.tm_hour, newtime.tm_min, newtime.tm_sec,
624 sprintf(str,
"%.1lf", 90 -
S_zenetr);
627 sprintf(str,
"%.1lf",
S_azim);
652 if((DecActTime >= DecTimeStart) && (DecActTime <= DecTimeStop))
671 if((DecActTime < DecTimeStart) || (DecActTime > DecTimeStop))
677 sprintf(buf,
"MASTER-Wait");
740 sprintf(buf,
"MASTERSZA-Wait");
754 sprintf(buf,
"MASTERSZA-Wait");
812 sprintf(buf,
"SZA MODE Wait");
855 MMessageDialog(
"DAS information",
"Unknow value for DAS.Flag.ExeDSZA" ,
"OK", NULL);
982 int cwer = 0, ccwer = 0;
986 int HomeGratActive = 0;
987 unsigned long st, et, x;
1020 st = GetTickCount();
1023 et = GetTickCount();
1030 sprintf(buf,
"%.1lf sec. left", (
double)fabs(((
double)(labs(et - st) - tout))/1000.0 ));
1034 }
while(labs(et - st) < tout);
1046 sprintf(buf,
"%ld", ns);
1088 strftime( buff, 7,
"%y%m%d", &today );
1089 strftime( str, 9,
"%H:%M:%S", &today );
1090 sprintf(buf,
"*++++++++++++++++++++++++++++++++++++++++++++*");
1092 sprintf(buf,
"Windows reboot on %s at %s", buff, str );
1094 sprintf(buf,
"**********************************************");
1118 system(
"shutdown -r -t 10 -f");
1140 ActualHour = (int)(((
double)today.tm_hour + (1.0/60.0*(
double)today.tm_min)) * 10);
1141 ActualDOY = (int)(((
double)today.tm_yday + (1/24*(double)today.tm_hour))) * 10;;
1198 int sunrh,sunrm,sunrs;
1199 int sunsh,sunsm,sunss;
1209 CCD_Pwr = (float)atof(buff);
1242 newtime.tm_year + 1900,
1243 newtime.tm_yday, newtime.tm_hour, newtime.tm_min, newtime.tm_sec,
1246 sprintf(str,
"%.1lf", 90 -
S_zenetr);
1249 sprintf(str,
"%.1lf",
S_azim);
1258 sprintf(str,
"%02d:%02d:%02d", sunrh, sunrm, sunrs);
1267 sprintf(str,
"%02d:%02d:%02d", sunsh, sunsm, sunss);
1276 sprintf(str,
"Loc.: %s, Date: %d/%02d/%02d, Local Solar Time: %02d:%02d:%02d, SZA:%.02lf",
1277 DAS.
DGeo.
s_name, newtime.tm_year + 1900, newtime.tm_mon + 1,newtime.tm_mday,
1278 newtime.tm_hour, newtime.tm_min, newtime.tm_sec,
S_zenetr);
void Task_AutoEx(TIMEOUT_ID id, void *data)
Automatic Execution Task. .
stepm StepM
Stepper motors parameters structure.
#define ELAMPOFF
External Lamp OFF.
#define H_NDFW
Home for ND FilterWheel.
gui Gui
Graphic User Interface Structure.
void E_NDFilter(void)
Set ND Filter. Set ND Filter All the E_xxxxx() function are used during the execution in PRG mode...
void MRefreshTimeout(TIMEOUT_ID *pid, CARD32 msec, TIMEOUT_CB cb, void *ud)
int SD_Grating(int ang)
Positioning Grating. The Grating move to the position specified by ang (Wavelength) ...
MOBJECT Albl_LS[8]
Active Control Panel Labels for LIS status.
void E_DeltaSZA(void)
Re-Start or Stop the execution of the PRG file (depending on the SZA) If the measurements at fixed de...
void HgLamp(int mod)
HG Lamp ON/OFF .
void E_Meashor2(void)
perform horizontal measurements (2) 1) measurement with external lamp 2) measurement without the exte...
#define LABEL
text after this command is displayed in the status label
char fsmlog[_MAX_PATH]
daily LOG file for stepper motor moovements
optionini DOption
Options for DAS execution.
int savingmode
Flag to set saving mode: 0=ASCII, 1=Binary.
void E_Filter(void)
Filter Wheel positioning. Procedure for Filter Wheel positioning. All the E_xxxxx() function are used...
#define SETCCDVBIN
SET the CCD vertical Binning.
void E_Hg_On(void)
HG ON. Hg lamp ON. All the E_xxxxx() function are used during the execution in PRG mode...
void E_Lambda(void)
Lambda Reading. When the WAVELEN key-word is encountred in the PRG file, the Wavelength code from PRG...
#define H_GRAT_CAL
Perform home for the grating and executa a calibration.
#define H_ZEN
Home for zenith Axis.
void E_IRefSun(void)
Io Measured near the sun. This procedure carries out a measurements for the reference spectrum used i...
void E_DirectSun(void)
. All the E_xxxxx() function are used during the execution in PRG mode
int E_Home_SM4(void)
Home for SM4. Set the reference position for Stepper motor 4 (Neutral density filter wheel)...
MOBJECT Albl_sunr
Active Control Panel Labels for Sunrise.
double Dailymaxsza
Daily maximum SZA.
void E_WAIT(void)
Delay Procedure. sleep the program . All the E_xxxxx() function are used during the execution in PRG ...
double LastMSZA
SZA of the previous measurement.
Stepper motors parameters structure .
double S_azim
O: Solar azimuth angle: N=0, E=90, S=180, W=270.
#define AAMEASURE
Measuremets with Alt Azimut platform (stepper motors positioning simoultaneously) ...
#define AAPOSIT
Position the Alt Azimuth Platform.
void Task_Timer(TIMEOUT_ID id, void *data)
Timer Task. Very useful procedure that: 1) Provide to refresh the clock display 2) Check if daylight ...
DXL structure. Structure for the serial communication with the AMS adapter.
int sza
= 1 -> perform measurements; = 0 -> waiting mode
das structure (contain all the previous structures) .
int PrgNumExe
number of PRG file in execution
void E_Radio(void)
Radiometric Measurements. Procedure for Radiometric Measurements. All the E_xxxxx() function are used...
#define TESTSZAMODE
execution driven by SZAPRG file
#define RDAY
double filter wheel
double latitude
Station latitude.
#define WAIT
stop the program execution for xx millisec
void D_AutoExecution(void)
*.PRG Automatic Execution in Automatic Mode
char DAILYDATADIRECTORY[_MAX_PATH]
flag Flag
Structure for different flags.
#define AUTOEX_TASK_TIME
Autoexecution.
void E_Meashor(void)
perform horizontal measurements (3) 1) measurement with external lamp 2) measurement without the exte...
structure for FTP setting
void E_Label(void)
labeling. The text after the key-word is a label. All the E_xxxxx() function are used during the exec...
char HOMEDIRECTORY[_MAX_PATH]
LOG file and time structure.
#define QJSCAN
Scan spectral range with QJ on.
int Fetch()
Reads the key-word in PRG Files .
void E_Hg_Off(void)
HG OFF. Hg lamp OFF. All the E_xxxxx() function are used during the execution in PRG mode...
void E_AAPos(void)
alt Az Positioning. Available for SPATRAMPLUS and TROPOGAS (with the AltAzPlatform) ...
int HomeGratingFast(int mod)
(Fastest) Grating in the reference Position. The Grating reaches the reference Position. Similar to HomeGrating(void), but faster
char * MObjectGetText(MOBJECT obj, char *text)
spectrumheader SPH
Spectrum Header Structure.
int E_Home_SM6(void)
Home for SM6. Set the reference position for Stepper motor 6 (MIGE Azimuth). All the E_xxxxx() functi...
float Temperature[16]
Temperatures.
structure for deltaSZA Measurements .
#define CHKEXLAMP
Check External lamp status.
#define TEMPORIZED
execution driven by MASTER file
int PrgNumInM
Actual number of PRG File in current MASTER or MASTERSZA File.
MOBJECT Albl_CS[4]
Active Control Panel Labels for Camera Status 4.
#define SZAMASTERM
execution driven by MASTERSZA file ( there is the possibility to distinguish between AM and PM measur...
#define GETCCD
Performs a LIGHT Measurement (shutter opened)
NoMangle int DLL_IMPORT_EXPORT SioDone(int)
int E_Home_SM5(void)
Home for SM5. Set the reference position for Stepper motor 5 (MIGE Zenith). All the E_xxxxx() functio...
void MObjectSetText(MOBJECT obj, const char *text)
void QjLamp(int mod)
QJ Lamp ON/OFF .
#define IREFSUN
Io Measurement with AA Platform near the Sun.
int SZAMax
Maximum SZA for performing measurements.
void E_ExtLampON(void)
External lamp ON.
void E_Calibra(void)
Execute D_Calibra. D_Calibra is a procedure for the spectral calibration with HG lamp. Shift of HG spectral line at 4358.4 on pixel 512 All the E_xxxxx() function are used during the execution in PRG mode.
MOBJECT Albl_suns
Active Control Panel Labels for Sunset.
int GRATHOME
Home for Grating ID.
d_geo DGeo
struct for Station location
MOBJECT Albl_Azim
Active Control Panel Labels for Sun Azimuth.
int SD_PosAADev(double z, double a)
perform the simoultaneous positioning of the AltAzimuth platform z = Zenith Axis a = Grating Position...
int exec
= 0 -> PRG Execution Paused; = 1 -> PRG Execution Resumed
#define MEASHOR
horizontal measurements with external lamp (lamp,
void E_Azimuth(void)
Position Azimuth Axis.
char bufrx[1024]
Rx buffer.
int FTP_Back_UP(char *dirhome, char *dirdata)
MOBJECT lbl_Time
Control Panel Labels for Time.
int timezone
Station timezone.
char s_name[4]
Station name.
void E_HgScan(void)
Check the full spectral range with HG ON. All the E_xxxxx() function are used during the execution in...
void Task_LOG(TIMEOUT_ID id, void *data)
LOG Task. Write on the LOG file during DAS execution.
unsigned int data[576]
Conversion data buffer 64 samples * 8 channels * 2 bytes.
#define H_FILTER
Home for filter wheel.
#define WAVELEN
set the grating position
float CCDTemp
Actual CCD Temperature.
void E_Dark(void)
Execute Dark Measurement. Procedure for Dark Measurement. All the E_xxxxx() function are used during ...
void E_Qj_On(void)
Qj ON. QJ - Halogen - lamp ON. All the E_xxxxx() function are used during the execution in PRG mode...
CTYPE void DLL DC_SetTemp(double TargetTemperature, int Scale, int Camera)
Procedure that turns the camera cooler on and allows you to set an operative temperature of the CCD...
CTYPE void DLL DC_Close(int Camera)
Shuts down the control operations of the camera. Procedure that shuts down the control operations of ...
long postime[AMSMAX][2]
time necessary for positioning
#define AUTORNG
Autoranging for optimal exposure time.
int E_GetCCD(void)
Get CCD. Execute DB_GetCCD. All the E_xxxxx() function are used during the execution in PRG mode...
double Dailyminsza
Daily minimum SZA.
int AMS_MotorOn_Off(int id, int mtr1, int mtr2)
Motor ON-OFF. Switch On-Off the selected motor of the selected AMS.
void E_ExtLampOFF(void)
External lamp OFF.
#define ESHUTCL
External Shutter CLOSED.
#define AZIMUTH
Positioning of Azimut Axis.
long PrgCnt
Counter for the position in the PRG file.
#define AVGCCDHOR
horizontal AVERAGED measurements with external lamp
void E_DFMeasure(void)
Perform Measurement setting the ND Filter Wheel also. All the E_xxxxx() function are used during the ...
MOBJECT Albl_Script
Active Control Panel Labels for Script in execution.
void E_SetCCDPow(void)
Set CCD Power. Set CCD Power. All the E_xxxxx() function are used during the execution in PRG mode...
#define EXPO
Set the exposure time.
void FormatDataFile(void)
#define QJ_OFF
QJ lamp off.
double MaxSZA
Maximum SZA.
void Status(char *tit)
Writes information's on the Status label .
int NOVA_Out(int novatype, unsigned int out)
Write the NOVA Output port.
void delay(unsigned long d)
Pauses for a specified number of milliseconds. .
void E_Mirror(void)
Inpot Mirror positioning. Procedure for Input mirror positioning. All the E_xxxxx() function are used...
int DeltaSZA
= 1 Delta SZA measurements activated, = 0 Continous measurements
void E_SetCCDTemp(void)
Set CCD Temp. Set CCD Temp. All the E_xxxxx() function are used during the execution in PRG mode...
#define GRAT_TASK_TIME
Grating Home.
void WriteStatusD(int w)
NOT Used .
char ftpuser[32]
FTP server users.
#define DARKC
Perform a DARK Measurement (shutter closed)
int resetFreq
frequency of DAS/Windows Reset
#define PRGFILE
execution driven by *.prg file
#define SAVE
save the measurement in the predefined file
#define ELAMPON
External Lamp ON.
#define GASCODNG1
GASCODNG 1 (with ATX power supply & HiresIV)
#define RHOUR
simple filter wheel
unsigned long AMS_ReadStep(int id, int motor)
read performed steps Procedure for the determination of the number of steps executed.
#define FILTER
Set the filter position (0 - 6)
#define ZENITH
Positioning of zenith Axis.
void MIGEAntiSunTrack(void)
#define MEASHOR2
Perform horizontal measurement.
void E_Average(void)
Averaged Measurements. Procedure for Averaged Measurements. All the E_xxxxx() function are used durin...
int WindowsReboot
Flag that became 1 when Windows reboot is setted (SetWinowsReset)
char ftpserver[32]
FTP server address.
int MMessageDialog(const char *t, const char *msg, const char *btn1, const char *btn2,...)
void E_Measure(void)
Perform Measurement. All the E_xxxxx() function are used during the execution in PRG mode...
void SZA_FindMin()
computation of daily minimum SZA
#define H_AZI
Home for Azimut Axis.
#define SETCCDOFFS
CCD Offset for HiresV.
int ftpstatus
0 = FTP Back-UP Not executed; 1 = FTP Back-UP executed;
int E_Home_SM2(void)
Home for SM2. Set the reference position for Stepper motor 2 (Grating). All the E_xxxxx() function ar...
#define SZAMODE
execution driven by SZAPRG file
int E_Home_SM3(void)
Home for SM3. Set the reference position for Stepper motor 3 (Filter Wheel). All the E_xxxxx() functi...
int SM_B
Motor B (su Y12) respectively: ID=0->Grating,ID=1->Not Connected,ID=2->Azimuth.
int MainCommand
Command switch in main loop.
#define CELSIUS
Return CCD temperature in Celsius.
void E_REM(void)
Flush string since the Carriege Return. Procedure for flushing the readed string since the Carriege R...
#define DFMEASURE
Measurement procedure using the double ND FilterWheel (when Installed)
#define CALIBRA
Auto calibration with HG Lamp (hg line at 4358A on pix 512)
#define TIMER_TASK_TIME
timer
void GetDateTime(struct date *dp, struct time *tp, struct tm *when)
#define SETCCDPOW
SET the CCD Power.
void E_Expo(void)
Exposuring. Read the Exposure time from PRG file. All the E_xxxxx() function are used during the exec...
controlpanel ContrPanel
Control Panel Structure.
int ftpbackup
Flag to set back up: 0 = NO FTP Back-UP; 1 = Perform FTP Back-UP.
#define MEASURE
Performs a measurement setting mirror, filter, grating, TExp...
Bortul Image Library Structure .
int D_WriteInitLog(char *str)
writes devices errors(AMS, CCD...) on the Devices.log file.
int AMS_AzzeraCoord(int id, int mtr)
Set to zero the number of steps on the selected motor Set to zero the number of steps on the selecte...
void E_QjScan(void)
Check the full spectral range with QJ ON. All the E_xxxxx() function are used during the execution in...
void E_HGratCal(void)
Perform home grating and HG Calibration. All the E_xxxxx() function are used during the execution in ...
#define H_MIRROR
Home for Mirror.
void E_Save(void)
Save Image. Procedure for saving image or data. All the E_xxxxx() function are used during the execut...
double longitude
Station longitude.
#define AMS1
AMS1 address.
int AMS_chkbitsts(int id, int bitn)
check bit status Procedure for the determination of the bit number status.
int LoadExec(char *fname)
Load file for automatic execution. Procedure that load the file for automatic execution.
char flog[_MAX_PATH]
daily LOG file
void WriteInit(const char *sname, char *dateffn, char *timebuff)
Init the daily LOG file .
void E_Almucantar(void)
. All the E_xxxxx() function are used during the execution in PRG mode
#define BEGIN
re-start the execution of the PRG file
void E_Zenith(void)
Position Zenith Axis.
double NextSZA
SZA of the Next measurement.
int ExeDSZA
= 1 the measurements are performed, = 0 waiting for the next deltasza.
void E_SetCCDVBin(void)
Set CCD Vert Binn. Set CCD Vert Binn. All the E_xxxxx() function are used during the execution in PRG...
#define H_GRAT
Home for Grating.
int aaopmode
operation mode for the Alt Az Platform, 0 = solar Traxker; 1 = Anti-Solar Tracker; 2 = Free Positioni...
char ftppwd[32]
FTP server pwd.
void E_AutoRange(void)
Autoranging. Procedure for Autoranging. All the E_xxxxx() function are used during the execution in P...
#define XEND
stop the execution of the PRG file
void FileLog(char datebuf[9], char timebuf[9])
void FormatData(void)
trasform mm/gg/aa in gg/mm/aa
void E_AAMeasure(void)
perform measurements with the Alt Azimuth Platform perform measurements with the Alt Azimuth Platform...
MOBJECT Albl_Elev
Active Control Panel Labels for Sun Elevation.
void E_SetCCDOffSet(void)
Set the CCD Offst (only for HIRES-V. All the E_xxxxx() function are used during the execution in PRG ...
#define LOG_TASK_TIME
LOG files.
int EqType
Spectrometer Type.
void E_ExtShutClose(void)
Close External Shutter.
int com
Comunication port.
#define HG_OFF
HG lamp off.
#define SETCCDTEMP
SET the CCD working Temperature.
void E_AvgCCDHor(void)
Averaged Horizontal Measurements. Procedure for Averaged Measurements with external lamp...
#define HGSCAN
Scan spectral range with HG on.
void Task_HomeGrat(TIMEOUT_ID id, void *data)
Home grating Task. 5) Check for reached end-run of the stepper motor for the grating ...
int resetEnabled
DAS/Windows reset option (1 = Enabled; 0 = disabled)
int type
type of NOVA monoboard used (7892 or 945GSE)
int resetType
type of period for DAS Reset: 0=Hours, 1=Days
int on
PRG execution control variabile.
TIMEOUT_ID MAddTimeout(CARD32 tmout, TIMEOUT_CB cb, void *ud)
void ShutterOpening(int mod)
int AMSPres
AMS Presence: 0 = AMS FOUND; 1 = AMS NOT FOUND.
int exemode
Set the Execution MODE (Execution modes)
void E_Qj_Off(void)
Qj OFF. QJ - Halogen - lamp OFF. All the E_xxxxx() function are used during the execution in PRG mode...
OMU Thermoregulation structure .
#define ESHUTOP
External Shutter OPEN.
void E_Plot(void)
Plot Spectrum. Plot Spectrum. All the E_xxxxx() function are used during the execution in PRG mode...
#define TESTAMS
execution for testing AMS's devices
stepm STEPM
Stepper Motors.
int SZACalc(double d_lat, double d_long, double d_tzone, int d_year, int d_daynum, int d_hour, int d_minute, int d_second, float d_temp, float d_press, float d_tilt, float d_aspect)
Calc. Solar angles and radiatives quantities. .
#define MANUAL
execution in manual mode (for lab use)
int E_Home_SM1(void)
Home for SM1. Set the reference position for Stepper motor 1 (Input Mirror). All the E_xxxxx() functi...
#define MIRROR
set mirror position (0-3)
#define NDFILTER
SET the ND FilterWheel Position.
int ReachTemp
Target Temperature status.
#define AVGCCD
Averaged measurement.
marconi Marconi
CCD Sensor struct.
paramini Paramini
structure for the parameters defined in param.ini configuration file
#define REM
text after this is a comment
void E_ExtShutOpen(void)
Open External Shutter.