mirror of
https://github.com/brmlab/ratbox.git
synced 2025-06-08 01:44:35 +02:00
1758 lines
70 KiB
Text
1758 lines
70 KiB
Text
' Gambas class file
|
|
PUBLIC konfigurace_timeout_status AS Boolean
|
|
PUBLIC konfigurace_timeout AS Integer
|
|
PUBLIC konfigurace_pocet_cyklu AS Integer
|
|
|
|
PUBLIC konfigurace_prelearning_cas_piti AS Integer
|
|
PUBLIC konfigurace_prelearning_cas_dalsi_ciklus AS Integer
|
|
PUBLIC konfigurace_prelearning_neopakovat AS Boolean
|
|
PUBLIC konfigurace_prelearning_pauza AS Boolean
|
|
|
|
PUBLIC konfigurace_experiment_cas_zobrazeni_stimulu AS Integer
|
|
PUBLIC konfigurace_experiment_cas_zhasnuteho_stimulu AS Integer
|
|
PUBLIC konfigurace_experiment_cas_piti AS Integer
|
|
PUBLIC konfigurace_experiment_cas_dalsi_ciklus AS Integer
|
|
PUBLIC konfigurace_experiment_nahoda AS Boolean
|
|
PUBLIC konfigurace_experiment_neopakovat AS Boolean
|
|
PUBLIC konfigurace_experiment_vypni_stimul AS Boolean
|
|
PUBLIC konfigurace_experiment_vypni_stimul_pauza_enable AS Boolean
|
|
PUBLIC konfigurace_experiment_casovani AS Boolean
|
|
PUBLIC konfigurace_experiment_vypni_stimul_prereset AS Boolean
|
|
PUBLIC konfigurace_experiment_vypni_stimul_poakci AS Boolean
|
|
|
|
PUBLIC konfigurace_experiment_slot_enable_1 AS Boolean
|
|
PUBLIC konfigurace_experiment_slot_enable_2 AS Boolean
|
|
PUBLIC konfigurace_experiment_slot_enable_3 AS Boolean
|
|
PUBLIC konfigurace_experiment_slot_enable_4 AS Boolean
|
|
PUBLIC konfigurace_experiment_slot_enable_5 AS Boolean
|
|
PUBLIC konfigurace_experiment_slot_enable_6 AS Boolean
|
|
|
|
PUBLIC konfigurace_experiment_casovani_s1 AS Integer
|
|
PUBLIC konfigurace_experiment_casovani_s2 AS Integer
|
|
PUBLIC konfigurace_experiment_casovani_s3 AS Integer
|
|
PUBLIC konfigurace_experiment_casovani_s4 AS Integer
|
|
PUBLIC konfigurace_experiment_casovani_s5 AS Integer
|
|
PUBLIC konfigurace_experiment_casovani_s6 AS Integer
|
|
|
|
PUBLIC pre_stat_ciklus AS Integer
|
|
PUBLIC pre_stat_ciklus_real AS Integer
|
|
PUBLIC pre_stat_timeout AS Integer
|
|
PUBLIC pre_stat_opakovani AS NEW Integer[7]
|
|
PUBLIC pre_stat_zakazano AS NEW Integer[7]
|
|
PUBLIC pre_stat_aktivita AS NEW Integer[7]
|
|
|
|
PUBLIC exp_stat_ciklus AS Integer
|
|
PUBLIC exp_stat_ciklus_real AS Integer
|
|
PUBLIC exp_stat_timeout AS Integer
|
|
PUBLIC exp_stat_opakovani AS NEW Integer[7]
|
|
PUBLIC exp_stat_zakazano AS NEW Integer[7]
|
|
PUBLIC exp_stat_aktivita AS NEW Integer[7]
|
|
PUBLIC exp_stat_souhrn AS NEW Integer[7, 7]
|
|
|
|
PUBLIC stav_sloty AS Integer
|
|
PUBLIC simulace_zacenichani AS Boolean
|
|
PUBLIC mod_idx AS Integer
|
|
PUBLIC buffer_casovac AS Integer
|
|
PUBLIC status_casovac AS Boolean
|
|
PUBLIC buffer_casovac_milis AS Integer
|
|
PUBLIC status_casovac_milis AS Boolean
|
|
PUBLIC buffer_timeout AS Integer
|
|
PUBLIC buffer_sloty_aktual_state AS Integer
|
|
PUBLIC buffer_sloty_last_state AS Integer
|
|
PUBLIC InputBuffer_TMP AS Integer
|
|
PUBLIC InputBlock AS Boolean
|
|
PUBLIC STOP_State AS Boolean
|
|
PUBLIC tmp_cyklus AS Integer
|
|
PUBLIC tmp_stimul_idx AS Integer
|
|
PUBLIC tmp_stimul_last AS Integer
|
|
PUBLIC tmp_mils AS Long
|
|
PUBLIC ExpLogName AS String
|
|
PUBLIC PreLogName AS String
|
|
|
|
PUBLIC TimeoutOpakReset AS Boolean
|
|
|
|
PUBLIC SUB PreStatInit()
|
|
DIM i AS Integer
|
|
pre_stat_ciklus = 0
|
|
pre_stat_ciklus_real = 0
|
|
pre_stat_timeout = 0
|
|
FOR i = 0 TO 6
|
|
pre_stat_opakovani[i] = 0
|
|
pre_stat_zakazano[i] = 0
|
|
pre_stat_aktivita[i] = 0
|
|
NEXT
|
|
END
|
|
|
|
PUBLIC SUB ExpStatInit()
|
|
DIM i, x AS Integer
|
|
pre_stat_ciklus = 0
|
|
pre_stat_ciklus_real = 0
|
|
pre_stat_timeout = 0
|
|
FOR i = 0 TO 6
|
|
pre_stat_opakovani[i] = 0
|
|
pre_stat_zakazano[i] = 0
|
|
pre_stat_aktivita[i] = 0
|
|
NEXT
|
|
FOR i = 0 TO 6
|
|
FOR x = 0 TO 6
|
|
exp_stat_souhrn[x, i] = 0
|
|
NEXT
|
|
NEXT
|
|
END
|
|
|
|
|
|
PUBLIC SUB Form_Open()
|
|
|
|
IF Exist("/ratbox/system/logo.png") = TRUE THEN
|
|
PictureLogo1.Picture = Picture.Load("/ratbox/system/logo.png")
|
|
ENDIF
|
|
|
|
FMain.Visible = TRUE
|
|
FMain.FullScreen = TRUE
|
|
SysLogWrite("Startuji_System.........")
|
|
SysLogWrite("NAHRANI_PARAMETRU")
|
|
DefKonfLoad()
|
|
SysLogWrite("UPLATNENI_PARAMETRU")
|
|
UplatniParametry()
|
|
VypisParametry()
|
|
SysLogWrite("System_nastartovan")
|
|
CfgList()
|
|
END
|
|
|
|
PUBLIC SUB BtnKonec_Click()
|
|
SysLogWrite("Dotaz_Ukonceni_Aplikace")
|
|
IF Message.Warning("Opravdu chcete ukoncit aplikaci ?", "NE", "ANO") = 2 THEN
|
|
SysLogWrite("Ukoncovani_Behu_Aplikace")
|
|
TimerSystime.Enabled = FALSE
|
|
Form1.Close
|
|
FINALLY
|
|
IF SerialPort1.Status <> 0 THEN SerialPort1.Close
|
|
SysLogWrite("Konec_Systemu")
|
|
Form1.Close
|
|
FMain.Close
|
|
ELSE
|
|
SysLogWrite("Navrat_Do_Aplikace")
|
|
ENDIF
|
|
END
|
|
|
|
PUBLIC SUB TimerSystime_Timer()
|
|
WAIT
|
|
PosliInfo()
|
|
TxtInfoCyklus.Text = Str(tmp_cyklus)
|
|
TxtSysTime.Text = Format$(Now, "dd.mm.yy") & " " & Format$(Now, "hh:nn:ss")
|
|
WAIT
|
|
IF SerialPort1.Status = 0 THEN TxtCommPort.BackColor = Color.Red
|
|
WAIT
|
|
IF SerialPort1.Status = 1 THEN TxtCommPort.BackColor = Color.Green
|
|
WAIT
|
|
VypisStavSlotu()
|
|
IF TxtWDT.BackColor = Color.Red THEN
|
|
TxtWDT.BackColor = Color.Green
|
|
ELSE
|
|
TxtWDT.BackColor = Color.Red
|
|
ENDIF
|
|
FINALLY
|
|
IF ERROR THEN
|
|
ErrLogWrite("NESYNCHRONI_UKONCENI_TimerSystime_Timer() - " & Error.Text)
|
|
ENDIF
|
|
END
|
|
|
|
PUBLIC SUB SysLogWrite(Udalost AS String)
|
|
DIM SysLogFile AS File
|
|
SysLogFile = OPEN "/ratbox/log/system.log" FOR APPEND
|
|
TxtSysLog.Text = Format$(Now, "yyyy_mm_dd") & "_" & Format$(Now, "hh:nn:ss") & "_" & udalost & Chr(13) & TxtSysLog.Text
|
|
WAIT
|
|
PRINT #SysLogFile, Format$(Now, "yyyy_mm_dd") & "_" & Format$(Now, "hh:nn:ss") & "_" & udalost
|
|
WAIT
|
|
SysLogFile.Close
|
|
END
|
|
|
|
PUBLIC SUB ErrLogWrite(Udalost AS String)
|
|
DIM SysLogFile AS File
|
|
SysLogFile = OPEN "/ratbox/log/err.log" FOR APPEND
|
|
PRINT #SysLogFile, Format$(Now, "yyyy_mm_dd") & "_" & Format$(Now, "hh:nn:ss") & "_" & udalost
|
|
SysLogFile.Close
|
|
END
|
|
|
|
PUBLIC SUB ExpLogWrite(Udalost AS String)
|
|
DIM SysLogFile AS File
|
|
IF Exist("/ratbox/log/" & ExpLogName) = TRUE THEN
|
|
SysLogFile = OPEN "/ratbox/log/" & ExpLogName FOR APPEND
|
|
PRINT #SysLogFile, Str(tmp_mils * 10) & ";" & udalost
|
|
Form1.loginfo(Format$(Now, "yyyy_mm_dd") & "_" & Format$(Now, "hh:nn:ss") & "_" & udalost)
|
|
SysLogFile.Close
|
|
ENDIF
|
|
END
|
|
|
|
PUBLIC SUB PreLogWrite(Udalost AS String)
|
|
DIM SysLogFile AS File
|
|
IF Exist("/ratbox/log/" & PreLogName) = TRUE THEN
|
|
SysLogFile = OPEN "/ratbox/log/" & PreLogName FOR APPEND
|
|
PRINT #SysLogFile, Str(tmp_mils * 10) & ";" & udalost
|
|
Form1.loginfo(Format$(Now, "yyyy_mm_dd") & "_" & Format$(Now, "hh:nn:ss") & "_" & udalost)
|
|
SysLogFile.Close
|
|
ENDIF
|
|
END
|
|
|
|
PUBLIC SUB PreStatWrite()
|
|
DIM zakazane AS Integer
|
|
DIM opakovani AS Integer
|
|
DIM aktivity AS Integer
|
|
DIM i AS Integer
|
|
DIM SysLogFile AS File
|
|
IF Exist("/ratbox/log/" & PreLogName) = TRUE THEN
|
|
Form1.loginfo(Format$(Now, "yyyy_mm_dd") & "_" & Format$(Now, "hh:nn:ss") & "_" & "GENERUJI_ZAPISUJI_STATISTIKU")
|
|
SysLogFile = OPEN "/ratbox/log/" & PreLogName FOR APPEND
|
|
PRINT #SysLogFile, "----------------------------------------------------------------------------"
|
|
|
|
PRINT #SysLogFile, "CELKOVY_POCET_CYKLU: " & pre_stat_ciklus
|
|
PRINT #SysLogFile, "CELKOVY_POCET_USPESNYCH_CYKLU (PITI): " & pre_stat_ciklus_real
|
|
PRINT #SysLogFile, "CELKOVY_POCET_TIMEOUTU: " & pre_stat_timeout
|
|
FOR i = 1 TO 6
|
|
aktivity = aktivity + pre_stat_aktivita[i]
|
|
NEXT
|
|
FOR i = 1 TO 6
|
|
opakovani = opakovani + pre_stat_opakovani[i]
|
|
NEXT
|
|
FOR i = 1 TO 6
|
|
zakazane = zakazane + pre_stat_zakazano[i]
|
|
NEXT
|
|
PRINT #SysLogFile, "CELKOVY_POCET_AKTIVIT: " & aktivity
|
|
PRINT #SysLogFile, "CELKOVY_POCET_OPAKOVANI: " & opakovani
|
|
PRINT #SysLogFile, "CELKOVY_POCET_ZAKAZANI: " & zakazane
|
|
PRINT #SysLogFile, "CELKOVY_POCET_AKTIVIT_PODROBNE: " & pre_stat_aktivita[1] & ";" & pre_stat_aktivita[2] & ";" & pre_stat_aktivita[3] & ";" & pre_stat_aktivita[4] & ";" & pre_stat_aktivita[5] & ";" & pre_stat_aktivita[6]
|
|
PRINT #SysLogFile, "CELKOVY_POCET_OPAKOVANI_PODROBNE: " & pre_stat_opakovani[1] & ";" & pre_stat_opakovani[2] & ";" & pre_stat_opakovani[3] & ";" & pre_stat_opakovani[4] & ";" & pre_stat_opakovani[5] & ";" & pre_stat_opakovani[6]
|
|
PRINT #SysLogFile, "CELKOVY_POCET_ZAKAZANI_PODROBNE: " & pre_stat_zakazano[1] & ";" & pre_stat_zakazano[2] & ";" & pre_stat_zakazano[3] & ";" & pre_stat_zakazano[4] & ";" & pre_stat_zakazano[5] & ";" & pre_stat_zakazano[6]
|
|
|
|
SysLogFile.Close
|
|
|
|
PreStatInit()
|
|
|
|
ENDIF
|
|
END
|
|
|
|
PUBLIC SUB ExpStatWrite()
|
|
DIM zakazane AS Integer
|
|
DIM opakovani AS Integer
|
|
DIM aktivity AS Integer
|
|
DIM i, x AS Integer
|
|
DIM SysLogFile AS File
|
|
IF Exist("/ratbox/log/" & ExpLogName) = TRUE THEN
|
|
Form1.loginfo(Format$(Now, "yyyy_mm_dd") & "_" & Format$(Now, "hh:nn:ss") & "_" & "GENERUJI_ZAPISUJI_STATISTIKU")
|
|
SysLogFile = OPEN "/ratbox/log/" & ExpLogName FOR APPEND
|
|
PRINT #SysLogFile, "----------------------------------------------------------------------------"
|
|
|
|
PRINT #SysLogFile, "CELKOVY_POCET_CYKLU: " & exp_stat_ciklus
|
|
PRINT #SysLogFile, "CELKOVY_POCET_USPESNYCH_CYKLU (PITI): " & exp_stat_ciklus_real
|
|
PRINT #SysLogFile, "CELKOVY_POCET_TIMEOUTU: " & exp_stat_timeout
|
|
FOR i = 1 TO 6
|
|
aktivity = aktivity + exp_stat_aktivita[i]
|
|
NEXT
|
|
FOR i = 1 TO 6
|
|
opakovani = opakovani + exp_stat_opakovani[i]
|
|
NEXT
|
|
FOR i = 1 TO 6
|
|
zakazane = zakazane + exp_stat_zakazano[i]
|
|
NEXT
|
|
PRINT #SysLogFile, "CELKOVY_POCET_AKTIVIT: " & aktivity
|
|
PRINT #SysLogFile, "CELKOVY_POCET_OPAKOVANI: " & opakovani
|
|
PRINT #SysLogFile, "CELKOVY_POCET_ZAKAZANI: " & zakazane
|
|
PRINT #SysLogFile, "CELKOVY_POCET_AKTIVIT_PODROBNE: " & exp_stat_aktivita[1] & ";" & exp_stat_aktivita[2] & ";" & exp_stat_aktivita[3] & ";" & exp_stat_aktivita[4] & ";" & exp_stat_aktivita[5] & ";" & exp_stat_aktivita[6]
|
|
PRINT #SysLogFile, "CELKOVY_POCET_OPAKOVANI_PODROBNE: " & exp_stat_opakovani[1] & ";" & exp_stat_opakovani[2] & ";" & exp_stat_opakovani[3] & ";" & exp_stat_opakovani[4] & ";" & exp_stat_opakovani[5] & ";" & exp_stat_opakovani[6]
|
|
PRINT #SysLogFile, "CELKOVY_POCET_ZAKAZANI_PODROBNE: " & exp_stat_zakazano[1] & ";" & exp_stat_zakazano[2] & ";" & exp_stat_zakazano[3] & ";" & exp_stat_zakazano[4] & ";" & exp_stat_zakazano[5] & ";" & exp_stat_zakazano[6]
|
|
|
|
PRINT #SysLogFile, "---------------------------------------------------------------"
|
|
PRINT #SysLogFile, ""
|
|
PRINT #SysLogFile, "Souhrnna tabulka odpovedi:"
|
|
PRINT #SysLogFile, ""
|
|
|
|
PRINT #SysLogFile, "STIMUL: 1;2;3;4;5;6"
|
|
|
|
PRINT #SysLogFile, "SLOT1: " & exp_stat_souhrn[1, 1] & ";" & exp_stat_souhrn[2, 1] & ";" & exp_stat_souhrn[3, 1] & ";" & exp_stat_souhrn[4, 1] & ";" & exp_stat_souhrn[5, 1] & ";" & exp_stat_souhrn[6, 1]
|
|
PRINT #SysLogFile, "SLOT2: " & exp_stat_souhrn[1, 2] & ";" & exp_stat_souhrn[2, 2] & ";" & exp_stat_souhrn[3, 2] & ";" & exp_stat_souhrn[4, 2] & ";" & exp_stat_souhrn[5, 2] & ";" & exp_stat_souhrn[6, 2]
|
|
PRINT #SysLogFile, "SLOT3: " & exp_stat_souhrn[1, 3] & ";" & exp_stat_souhrn[2, 3] & ";" & exp_stat_souhrn[3, 3] & ";" & exp_stat_souhrn[4, 3] & ";" & exp_stat_souhrn[5, 3] & ";" & exp_stat_souhrn[6, 3]
|
|
PRINT #SysLogFile, "SLOT4: " & exp_stat_souhrn[1, 4] & ";" & exp_stat_souhrn[2, 4] & ";" & exp_stat_souhrn[3, 4] & ";" & exp_stat_souhrn[4, 4] & ";" & exp_stat_souhrn[5, 4] & ";" & exp_stat_souhrn[6, 4]
|
|
PRINT #SysLogFile, "SLOT5: " & exp_stat_souhrn[1, 5] & ";" & exp_stat_souhrn[2, 5] & ";" & exp_stat_souhrn[3, 5] & ";" & exp_stat_souhrn[4, 5] & ";" & exp_stat_souhrn[5, 5] & ";" & exp_stat_souhrn[6, 5]
|
|
PRINT #SysLogFile, "SLOT6: " & exp_stat_souhrn[1, 6] & ";" & exp_stat_souhrn[2, 6] & ";" & exp_stat_souhrn[3, 6] & ";" & exp_stat_souhrn[4, 6] & ";" & exp_stat_souhrn[5, 6] & ";" & exp_stat_souhrn[6, 6]
|
|
|
|
' ExpStatInit()
|
|
|
|
SysLogFile.Close
|
|
|
|
ExpStatReset()
|
|
|
|
ENDIF
|
|
END
|
|
|
|
|
|
|
|
PUBLIC SUB ExpStatReset()
|
|
DIM i, x AS Integer
|
|
exp_stat_ciklus = 0
|
|
exp_stat_ciklus_real = 0
|
|
exp_stat_timeout = 0
|
|
FOR i = 1 TO 6
|
|
exp_stat_aktivita[i] = 0
|
|
NEXT
|
|
FOR i = 1 TO 6
|
|
exp_stat_opakovani[i] = 0
|
|
NEXT
|
|
FOR i = 1 TO 6
|
|
exp_stat_zakazano[i] = 0
|
|
NEXT
|
|
FOR x = 1 TO 6
|
|
FOR i = 1 TO 6
|
|
exp_stat_souhrn[x, i] = 0
|
|
NEXT
|
|
NEXT
|
|
END
|
|
|
|
|
|
|
|
|
|
|
|
PUBLIC SUB ExpLogInit()
|
|
DIM StatTMP AS String
|
|
DIM SysLogFile AS File
|
|
ExpLogName = Format$(Now, "yyyy_mm_dd") & "_" & Format$(Now, "hh_nn_ss") & "E" & TxtExperimentID.Text & "S" & TxtSessionID.Text & "O" & TxtOjectID.Text & ".log"
|
|
SysLogWrite("GENERUJI_LOG_EXPERIMENTU")
|
|
IF Exist("/ratbox/log/" & ExpLogName) = TRUE THEN
|
|
SHELL ("mv /ratbox/log/" & ExpLogName & " /ratbox/log/last_experiment.log.backup")
|
|
SHELL ("touch /ratbox/log/" & ExpLogName)
|
|
ELSE
|
|
SHELL ("touch /ratbox/log/" & ExpLogName)
|
|
ENDIF
|
|
SysLogWrite("ZAPISUJI_HLAVICKU_LOGU_EXPERIMENTU")
|
|
SysLogFile = OPEN "/ratbox/log/" & ExpLogName FOR APPEND
|
|
PRINT #SysLogFile, "ZACATEK_DAT;28"
|
|
PRINT #SysLogFile, "<EXPERIMENT INFO>"
|
|
PRINT #SysLogFile, "DATUM_EXPERIMENTU" & ";" & Format$(Now, "yyyy_mm_dd") & ";" & "CAS_EXPERIMENTU" & ";" & Format$(Now, "hh:nn:ss")
|
|
PRINT #SysLogFile, "EXPERIMENT_ID" & ";" & TxtExperimentID.Text & ";" & "NULL" & ";" & "NULL"
|
|
PRINT #SysLogFile, "SESSION_ID" & ";" & TxtSessionID.Text & ";" & "NULL" & ";" & "NULL"
|
|
PRINT #SysLogFile, "OBJECT_ID" & ";" & TxtOjectID.Text & ";" & "NULL" & ";" & "NULL"
|
|
PRINT #SysLogFile, "<KONFIGURACE>"
|
|
PRINT #SysLogFile, "NASTAVENI_POCET_CYKLU" & ";" & konfigurace_pocet_cyklu & ";" & "NULL" & ";" & "NULL"
|
|
PRINT #SysLogFile, "NASTAVENI_TIMEOUT_REAKCE" & ";" & konfigurace_timeout & ";" & "NULL" & ";" & "NULL"
|
|
|
|
IF konfigurace_timeout_status = TRUE THEN
|
|
StatTMP = "TRUE"
|
|
ELSE
|
|
StatTMP = "FALSE"
|
|
ENDIF
|
|
PRINT #SysLogFile, "NASTAVENI_TIMEOUT_REAKCE_ENABLED" & ";" & StatTMP & ";" & "NULL" & ";" & "NULL"
|
|
|
|
IF konfigurace_experiment_nahoda = TRUE THEN
|
|
StatTMP = "TRUE"
|
|
ELSE
|
|
StatTMP = "FALSE"
|
|
ENDIF
|
|
PRINT #SysLogFile, "NASTAVENI_NAHODA_ENABLED" & ";" & StatTMP & ";" & "NULL" & ";" & "NULL"
|
|
|
|
IF konfigurace_experiment_neopakovat = TRUE THEN
|
|
StatTMP = "TRUE"
|
|
ELSE
|
|
StatTMP = "FALSE"
|
|
ENDIF
|
|
PRINT #SysLogFile, "NASTAVENI_NEOPAKOVAT_REAKCE_ENABLED" & ";" & StatTMP & ";" & "NULL" & ";" & "NULL"
|
|
|
|
PRINT #SysLogFile, "NASTAVENI_CAS_ZOBRAZENI_STIMULU" & ";" & konfigurace_experiment_cas_zobrazeni_stimulu & ";" & "NULL" & ";" & "NULL"
|
|
|
|
IF konfigurace_experiment_vypni_stimul = TRUE THEN
|
|
StatTMP = "TRUE"
|
|
ELSE
|
|
StatTMP = "FALSE"
|
|
ENDIF
|
|
PRINT #SysLogFile, "NASTAVENI_VYPNI_STIMUL_ENABLED" & ";" & StatTMP & ";" & "NULL" & ";" & "NULL"
|
|
PRINT #SysLogFile, "NASTAVENI_CAS_BEZ_STIMULU" & ";" & konfigurace_experiment_cas_zhasnuteho_stimulu & ";" & "NULL" & ";" & "NULL"
|
|
|
|
|
|
IF konfigurace_experiment_vypni_stimul_pauza_enable = TRUE THEN
|
|
StatTMP = "TRUE"
|
|
ELSE
|
|
StatTMP = "FALSE"
|
|
ENDIF
|
|
PRINT #SysLogFile, "NASTAVENI_CAS_BEZ_STIMULU_ENABLED" & ";" & StatTMP & ";" & "NULL" & ";" & "NULL"
|
|
|
|
|
|
IF konfigurace_experiment_vypni_stimul_prereset = TRUE THEN
|
|
StatTMP = "TRUE"
|
|
ELSE
|
|
StatTMP = "FALSE"
|
|
ENDIF
|
|
PRINT #SysLogFile, "NASTAVENI_VYPNI_STIMUL_PRERESET" & ";" & StatTMP & ";" & "NULL" & ";" & "NULL"
|
|
|
|
IF konfigurace_experiment_vypni_stimul_poakci = TRUE THEN
|
|
StatTMP = "TRUE"
|
|
ELSE
|
|
StatTMP = "FALSE"
|
|
ENDIF
|
|
PRINT #SysLogFile, "NASTAVENI_VYPNI_STIMUL_POAKCI" & ";" & StatTMP & ";" & "NULL" & ";" & "NULL"
|
|
|
|
PRINT #SysLogFile, "NASTAVENI_CAS_PITI" & ";" & konfigurace_experiment_cas_piti & ";" & "NULL" & ";" & "NULL"
|
|
PRINT #SysLogFile, "NASTAVENI_PAUZA_MEZI_ZOBRAZENIMI" & ";" & konfigurace_experiment_cas_dalsi_ciklus & ";" & "NULL" & ";" & "NULL"
|
|
|
|
IF konfigurace_experiment_casovani = TRUE THEN
|
|
StatTMP = "TRUE"
|
|
ELSE
|
|
StatTMP = "FALSE"
|
|
ENDIF
|
|
PRINT #SysLogFile, "NASTAVENI_SEPARATANI_CASOVANI_ENABLED" & ";" & StatTMP & ";" & "NULL" & ";" & "NULL"
|
|
|
|
IF konfigurace_experiment_slot_enable_1 = TRUE THEN
|
|
StatTMP = "TRUE"
|
|
ELSE
|
|
StatTMP = "FALSE"
|
|
ENDIF
|
|
PRINT #SysLogFile, "NASTAVENI_CASOVANI_S1" & ";" & konfigurace_experiment_casovani_s1 & ";" & "SLOT_1_ENABLED" & ";" & StatTMP
|
|
|
|
IF konfigurace_experiment_slot_enable_2 = TRUE THEN
|
|
StatTMP = "TRUE"
|
|
ELSE
|
|
StatTMP = "FALSE"
|
|
ENDIF
|
|
PRINT #SysLogFile, "NASTAVENI_CASOVANI_S2" & ";" & konfigurace_experiment_casovani_s2 & ";" & "SLOT_2_ENABLED" & ";" & StatTMP
|
|
|
|
IF konfigurace_experiment_slot_enable_3 = TRUE THEN
|
|
StatTMP = "TRUE"
|
|
ELSE
|
|
StatTMP = "FALSE"
|
|
ENDIF
|
|
PRINT #SysLogFile, "NASTAVENI_CASOVANI_S3" & ";" & konfigurace_experiment_casovani_s3 & ";" & "SLOT_3_ENABLED" & ";" & StatTMP
|
|
|
|
IF konfigurace_experiment_slot_enable_4 = TRUE THEN
|
|
StatTMP = "TRUE"
|
|
ELSE
|
|
StatTMP = "FALSE"
|
|
ENDIF
|
|
PRINT #SysLogFile, "NASTAVENI_CASOVANI_S4" & ";" & konfigurace_experiment_casovani_s4 & ";" & "SLOT_4_ENABLED" & ";" & StatTMP
|
|
|
|
IF konfigurace_experiment_slot_enable_5 = TRUE THEN
|
|
StatTMP = "TRUE"
|
|
ELSE
|
|
StatTMP = "FALSE"
|
|
ENDIF
|
|
PRINT #SysLogFile, "NASTAVENI_CASOVANI_S5" & ";" & konfigurace_experiment_casovani_s5 & ";" & "SLOT_5_ENABLED" & ";" & StatTMP
|
|
|
|
|
|
IF konfigurace_experiment_slot_enable_6 = TRUE THEN
|
|
StatTMP = "TRUE"
|
|
ELSE
|
|
StatTMP = "FALSE"
|
|
ENDIF
|
|
PRINT #SysLogFile, "NASTAVENI_CASOVANI_S6" & ";" & konfigurace_experiment_casovani_s6 & ";" & "SLOT_6_ENABLED" & ";" & StatTMP
|
|
|
|
PRINT #SysLogFile, "<FORMAT DAT>"
|
|
|
|
PRINT #SysLogFile, "casova_osa(ms);parametr1;HODNOTA;parametr2;HODNOTA"
|
|
|
|
PRINT #SysLogFile, "<DATA>"
|
|
|
|
|
|
SysLogFile.Close
|
|
END
|
|
|
|
PUBLIC SUB PreLogInit()
|
|
DIM StatTMP AS String
|
|
DIM SysLogFile AS File
|
|
PreLogName = Format$(Now, "yyyy_mm_dd") & "_" & Format$(Now, "hh_nn_ss") & "_PreLearning_" & "E" & TxtExperimentID.Text & "S" & TxtSessionID.Text & "O" & TxtOjectID.Text & ".log"
|
|
SysLogWrite("GENERUJI_LOG_PreLearningu")
|
|
IF Exist("/ratbox/log/" & PreLogName) = TRUE THEN
|
|
SHELL ("mv /ratbox/log/" & PreLogName & " /ratbox/log/last_prelearning.log.backup")
|
|
SHELL ("touch /ratbox/log/" & PreLogName)
|
|
ELSE
|
|
SHELL ("touch /ratbox/log/" & PreLogName)
|
|
ENDIF
|
|
SysLogWrite("ZAPISUJI_HLAVICKU_LOGU_PreLearningu")
|
|
SysLogFile = OPEN "/ratbox/log/" & PreLogName FOR APPEND
|
|
PRINT #SysLogFile, "ZACATEK_DAT;28"
|
|
PRINT #SysLogFile, "<EXPERIMENT INFO>"
|
|
PRINT #SysLogFile, "DATUM_PreLearningu" & ";" & Format$(Now, "yyyy_mm_dd") & ";" & "CAS_PreLearningu" & ";" & Format$(Now, "hh:nn:ss")
|
|
PRINT #SysLogFile, "PreLearning_ID" & ";" & TxtExperimentID.Text & ";" & "NULL" & ";" & "NULL"
|
|
PRINT #SysLogFile, "SESSION_ID" & ";" & TxtSessionID.Text & ";" & "NULL" & ";" & "NULL"
|
|
PRINT #SysLogFile, "OBJECT_ID" & ";" & TxtOjectID.Text & ";" & "NULL" & ";" & "NULL"
|
|
PRINT #SysLogFile, "<KONFIGURACE>"
|
|
PRINT #SysLogFile, "NASTAVENI_POCET_CYKLU" & ";" & konfigurace_pocet_cyklu & ";" & "NULL" & ";" & "NULL"
|
|
PRINT #SysLogFile, "NASTAVENI_TIMEOUT_REAKCE" & ";" & konfigurace_timeout & ";" & "NULL" & ";" & "NULL"
|
|
|
|
IF konfigurace_timeout = TRUE THEN
|
|
StatTMP = "TRUE"
|
|
ELSE
|
|
StatTMP = "FALSE"
|
|
ENDIF
|
|
PRINT #SysLogFile, "NASTAVENI_TIMEOUT_REAKCE_ENABLED" & ";" & StatTMP & ";" & "NULL" & ";" & "NULL"
|
|
|
|
IF konfigurace_prelearning_neopakovat = TRUE THEN
|
|
StatTMP = "TRUE"
|
|
ELSE
|
|
StatTMP = "FALSE"
|
|
ENDIF
|
|
PRINT #SysLogFile, "NASTAVENI_NEOPAKOVAT_REAKCE_ENABLED" & ";" & StatTMP & ";" & "NULL" & ";" & "NULL"
|
|
|
|
PRINT #SysLogFile, "NASTAVENI_CAS_DALSI_CYKLUS" & ";" & konfigurace_prelearning_cas_dalsi_ciklus & ";" & "NULL" & ";" & "NULL"
|
|
|
|
PRINT #SysLogFile, "NASTAVENI_CAS_PITI" & ";" & konfigurace_prelearning_cas_piti & ";" & "NULL" & ";" & "NULL"
|
|
|
|
|
|
IF konfigurace_experiment_slot_enable_1 = TRUE THEN
|
|
StatTMP = "TRUE"
|
|
ELSE
|
|
StatTMP = "FALSE"
|
|
ENDIF
|
|
PRINT #SysLogFile, "SLOT_1_ENABLED" & ";" & StatTMP & ";" & "NULL" & ";" & "NULL"
|
|
|
|
IF konfigurace_experiment_slot_enable_2 = TRUE THEN
|
|
StatTMP = "TRUE"
|
|
ELSE
|
|
StatTMP = "FALSE"
|
|
ENDIF
|
|
PRINT #SysLogFile, "SLOT_2_ENABLED" & ";" & StatTMP & ";" & "NULL" & ";" & "NULL"
|
|
|
|
IF konfigurace_experiment_slot_enable_3 = TRUE THEN
|
|
StatTMP = "TRUE"
|
|
ELSE
|
|
StatTMP = "FALSE"
|
|
ENDIF
|
|
PRINT #SysLogFile, "SLOT_3_ENABLED" & ";" & StatTMP & ";" & "NULL" & ";" & "NULL"
|
|
|
|
IF konfigurace_experiment_slot_enable_4 = TRUE THEN
|
|
StatTMP = "TRUE"
|
|
ELSE
|
|
StatTMP = "FALSE"
|
|
ENDIF
|
|
PRINT #SysLogFile, "SLOT_4_ENABLED" & ";" & StatTMP & ";" & "NULL" & ";" & "NULL"
|
|
|
|
IF konfigurace_experiment_slot_enable_5 = TRUE THEN
|
|
StatTMP = "TRUE"
|
|
ELSE
|
|
StatTMP = "FALSE"
|
|
ENDIF
|
|
PRINT #SysLogFile, "SLOT_5_ENABLED" & ";" & StatTMP & ";" & "NULL" & ";" & "NULL"
|
|
|
|
|
|
IF konfigurace_experiment_slot_enable_6 = TRUE THEN
|
|
StatTMP = "TRUE"
|
|
ELSE
|
|
StatTMP = "FALSE"
|
|
ENDIF
|
|
PRINT #SysLogFile, "SLOT_6_ENABLED" & ";" & StatTMP & ";" & "NULL" & ";" & "NULL"
|
|
|
|
PRINT #SysLogFile, "<FORMAT DAT>"
|
|
|
|
PRINT #SysLogFile, "casova_osa(ms);parametr1;HODNOTA;parametr2;HODNOTA"
|
|
|
|
PRINT #SysLogFile, "<DATA>"
|
|
|
|
|
|
SysLogFile.Close
|
|
END
|
|
|
|
|
|
PUBLIC SUB BtnPripoj_Click()
|
|
SysLogWrite("PRIPOJOVANI_BOXU_PORT: " & TxtCommPort.Text)
|
|
IF SerialPort1.status = 0 THEN
|
|
SerialPort1.PortName = TxtCommPort.Text
|
|
SerialPort1.Speed = 9600
|
|
SerialPort1.DataBits = 8
|
|
SerialPort1.StopBits = 1
|
|
SerialPort1.FlowControl = FALSE
|
|
SerialPort1.Open
|
|
FINALLY
|
|
IF ERROR THEN
|
|
ErrLogWrite("PRIPOJOVANI_CHYBA_PORTU_" & TxtCommPort.Text & " - " & Error.Text)
|
|
SysLogWrite("CHYBA_PORTU/BOXU")
|
|
Message("CHYBA BOXU / PORTU")
|
|
ENDIF
|
|
ELSE
|
|
SerialPort1.Close
|
|
ENDIF
|
|
END
|
|
|
|
PUBLIC SUB SerialPort1_Read()
|
|
DIM InByte AS Byte
|
|
READ #SerialPort1, InByte
|
|
WAIT
|
|
IF (simulace_zacenichani = FALSE) AND (InputBlock = FALSE) THEN
|
|
IF InByte > 0 THEN
|
|
IF InByte = 1 THEN stav_sloty = 1
|
|
IF InByte = 2 THEN stav_sloty = 2
|
|
IF InByte = 4 THEN stav_sloty = 3
|
|
IF InByte = 8 THEN stav_sloty = 4
|
|
IF InByte = 16 THEN stav_sloty = 5
|
|
IF InByte = 32 THEN stav_sloty = 6
|
|
IF InByte = 0 THEN stav_sloty = 0
|
|
InputBlock = TRUE
|
|
ENDIF
|
|
ELSE
|
|
InputBuffer_TMP = InByte
|
|
ENDIF
|
|
WAIT
|
|
END
|
|
|
|
|
|
PUBLIC SUB Pauza(cas AS Integer)
|
|
IF status_casovac = FALSE THEN
|
|
status_casovac = TRUE
|
|
buffer_casovac = 0
|
|
TmrCasovac.Enabled = TRUE
|
|
WHILE cas > buffer_casovac
|
|
WAIT
|
|
WEND
|
|
buffer_casovac = 0
|
|
TmrCasovac.Enabled = FALSE
|
|
TxtInfoCasovac.text = Str(buffer_casovac)
|
|
status_casovac = FALSE
|
|
ENDIF
|
|
FINALLY
|
|
IF ERROR THEN
|
|
ErrLogWrite("NESYNCHRONI_UKONCENI - Pauza() - " & Error.Text)
|
|
ENDIF
|
|
END
|
|
|
|
PUBLIC SUB PauzaMilis(cas AS Integer)
|
|
IF status_casovac_milis = FALSE THEN
|
|
status_casovac_milis = TRUE
|
|
buffer_casovac_milis = 0
|
|
TimerMilis.Enabled = TRUE
|
|
WHILE (cas / 10) > buffer_casovac_milis
|
|
WAIT
|
|
WEND
|
|
buffer_casovac_milis = 0
|
|
TimerMilis.Enabled = FALSE
|
|
TxtInfoCasovacMilis.text = Str(buffer_casovac) * 10
|
|
status_casovac_milis = FALSE
|
|
ENDIF
|
|
FINALLY
|
|
IF ERROR THEN
|
|
ErrLogWrite("NESYNCHRONI_UKONCENI - PauzaMilis() - " & Error.Text)
|
|
ENDIF
|
|
END
|
|
|
|
PUBLIC SUB AparaturaNastavPitko(n AS Integer)
|
|
SysLogWrite("APARATURA_NASTAVENI_PITKA: " & Str(n))
|
|
IF SerialPort1.status = 1 THEN
|
|
IF n = 1 THEN WRITE #SerialPort1, "s1"
|
|
IF n = 1 THEN WRITE #SerialPort1, "S0"
|
|
IF n = 2 THEN WRITE #SerialPort1, "s2"
|
|
IF n = 2 THEN WRITE #SerialPort1, "S0"
|
|
IF n = 3 THEN WRITE #SerialPort1, "s3"
|
|
IF n = 3 THEN WRITE #SerialPort1, "S0"
|
|
IF n = 4 THEN WRITE #SerialPort1, "S1"
|
|
IF n = 4 THEN WRITE #SerialPort1, "s0"
|
|
IF n = 5 THEN WRITE #SerialPort1, "S2"
|
|
IF n = 5 THEN WRITE #SerialPort1, "s0"
|
|
IF n = 6 THEN WRITE #SerialPort1, "S3"
|
|
IF n = 6 THEN WRITE #SerialPort1, "s0"
|
|
IF n = 0 THEN WRITE #SerialPort1, "s0"
|
|
IF n = 0 THEN WRITE #SerialPort1, "S0"
|
|
SysLogWrite("APARATURA_NASTAVENI_PITKA_OK")
|
|
ELSE
|
|
SysLogWrite("APARATURA_NASTAVENI_PITKA_CHYBA")
|
|
ENDIF
|
|
END
|
|
|
|
PUBLIC SUB AparaturaReset()
|
|
SysLogWrite("APARATURA_RESET")
|
|
IF SerialPort1.status = 1 THEN
|
|
WRITE #SerialPort1, "S0"
|
|
WRITE #SerialPort1, "s0"
|
|
WRITE #SerialPort1, "d"
|
|
SysLogWrite("APARATURA_RESET_OK")
|
|
ELSE
|
|
SysLogWrite("APARATURA_RESET_CHYBA")
|
|
ENDIF
|
|
END
|
|
|
|
PUBLIC SUB AparaturaOtevriDvere()
|
|
SysLogWrite("APARATURA_OTEVRENI_DVERI")
|
|
IF SerialPort1.status = 1 THEN
|
|
WRITE #SerialPort1, "D"
|
|
SysLogWrite("APARATURA_OTEVRENI_DVERI_OK")
|
|
ELSE
|
|
SysLogWrite("APARATURA_OTEVRENI_DVERI_CHYBA")
|
|
ENDIF
|
|
END
|
|
|
|
PUBLIC SUB AparaturaZavriDvere()
|
|
SysLogWrite("APARATURA_ZAVRENI_DVERI")
|
|
IF SerialPort1.status = 1 THEN
|
|
WRITE #SerialPort1, "d"
|
|
SysLogWrite("APARATURA_ZAVRENI_DVERI_OK")
|
|
ELSE
|
|
SysLogWrite("APARATURA_ZAVRENI_DVERI_CHYBA")
|
|
ENDIF
|
|
END
|
|
|
|
|
|
PUBLIC SUB VypisStavSlotu()
|
|
IF stav_sloty = 0 THEN
|
|
CheckBox2.BackColor = Color.Red
|
|
CheckBox3.BackColor = Color.Red
|
|
CheckBox4.BackColor = Color.Red
|
|
CheckBox5.BackColor = Color.Red
|
|
CheckBox6.BackColor = Color.Red
|
|
CheckBox7.BackColor = Color.Red
|
|
ENDIF
|
|
WAIT
|
|
IF stav_sloty = 1 THEN CheckBox2.BackColor = Color.Green
|
|
IF stav_sloty = 2 THEN CheckBox3.BackColor = Color.Green
|
|
IF stav_sloty = 3 THEN CheckBox4.BackColor = Color.Green
|
|
IF stav_sloty = 4 THEN CheckBox5.BackColor = Color.Green
|
|
IF stav_sloty = 5 THEN CheckBox6.BackColor = Color.Green
|
|
IF stav_sloty = 6 THEN CheckBox7.BackColor = Color.Green
|
|
WAIT
|
|
END
|
|
|
|
|
|
|
|
|
|
|
|
PUBLIC SUB BtnSZ1_MouseDown()
|
|
SysLogWrite("SIMULACE_ZACENICHANI_1")
|
|
simulace_zacenichani = TRUE
|
|
stav_sloty = 1
|
|
END
|
|
PUBLIC SUB BtnSZ1_MouseUp()
|
|
simulace_zacenichani = FALSE
|
|
stav_sloty = 0
|
|
END
|
|
|
|
PUBLIC SUB BtnSZ2_MouseDown()
|
|
SysLogWrite("SIMULACE_ZACENICHANI_2")
|
|
simulace_zacenichani = TRUE
|
|
stav_sloty = 2
|
|
END
|
|
PUBLIC SUB BtnSZ2_MouseUp()
|
|
simulace_zacenichani = FALSE
|
|
stav_sloty = 0
|
|
END
|
|
|
|
PUBLIC SUB BtnSZ3_MouseDown()
|
|
SysLogWrite("SIMULACE_ZACENICHANI_3")
|
|
simulace_zacenichani = TRUE
|
|
stav_sloty = 3
|
|
END
|
|
PUBLIC SUB BtnSZ3_MouseUp()
|
|
simulace_zacenichani = FALSE
|
|
stav_sloty = 0
|
|
END
|
|
|
|
PUBLIC SUB BtnSZ4_MouseDown()
|
|
SysLogWrite("SIMULACE_ZACENICHANI_4")
|
|
simulace_zacenichani = TRUE
|
|
stav_sloty = 4
|
|
END
|
|
PUBLIC SUB BtnSZ4_MouseUp()
|
|
simulace_zacenichani = FALSE
|
|
stav_sloty = 0
|
|
END
|
|
|
|
PUBLIC SUB BtnSZ5_MouseDown()
|
|
SysLogWrite("SIMULACE_ZACENICHANI_5")
|
|
simulace_zacenichani = TRUE
|
|
stav_sloty = 5
|
|
END
|
|
PUBLIC SUB BtnSZ5_MouseUp()
|
|
simulace_zacenichani = FALSE
|
|
stav_sloty = 0
|
|
END
|
|
|
|
PUBLIC SUB BtnSZ6_MouseDown()
|
|
SysLogWrite("SIMULACE_ZACENICHANI_6")
|
|
simulace_zacenichani = TRUE
|
|
stav_sloty = 6
|
|
END
|
|
PUBLIC SUB BtnSZ6_MouseUp()
|
|
simulace_zacenichani = FALSE
|
|
stav_sloty = 0
|
|
END
|
|
|
|
PUBLIC SUB BtnMod_Click()
|
|
mod_idx = mod_idx + 1
|
|
IF mod_idx > 1 THEN mod_idx = 0
|
|
IF mod_idx = 1 THEN BtnMod.Text = "Experiment"
|
|
IF mod_idx = 0 THEN BtnMod.Text = "PreLearning"
|
|
IF mod_idx = 1 THEN SysLogWrite("PREPNUTI_MODU: Experiment")
|
|
IF mod_idx = 0 THEN SysLogWrite("PREPNUTI_MODU: PreLearning")
|
|
END
|
|
|
|
PUBLIC SUB BtnReset_Click()
|
|
|
|
AparaturaReset()
|
|
|
|
END
|
|
|
|
PUBLIC SUB BtnOpenDor_Click()
|
|
|
|
AparaturaOtevriDvere()
|
|
|
|
END
|
|
|
|
PUBLIC SUB BtnCloseDor_Click()
|
|
|
|
AparaturaZavriDvere()
|
|
|
|
END
|
|
|
|
PUBLIC SUB BtnPitS_Click()
|
|
|
|
AparaturaNastavPitko(1)
|
|
|
|
END
|
|
|
|
PUBLIC SUB BtnPitS2_Click()
|
|
|
|
AparaturaNastavPitko(2)
|
|
|
|
END
|
|
|
|
PUBLIC SUB BtnPitS3_Click()
|
|
|
|
AparaturaNastavPitko(3)
|
|
|
|
END
|
|
|
|
PUBLIC SUB BtnPitS4_Click()
|
|
|
|
AparaturaNastavPitko(4)
|
|
|
|
END
|
|
|
|
PUBLIC SUB BtnPitS5_Click()
|
|
|
|
AparaturaNastavPitko(5)
|
|
|
|
END
|
|
|
|
PUBLIC SUB BtnPitS6_Click()
|
|
|
|
AparaturaNastavPitko(6)
|
|
|
|
END
|
|
|
|
PUBLIC SUB ChkTimeout_Click()
|
|
konfigurace_timeout_status = ChkTimeout.Value
|
|
IF konfigurace_timeout_status = TRUE THEN SysLogWrite("KONFIGURACE_TIMEOUT: ZAPNUTO")
|
|
IF konfigurace_timeout_status = FALSE THEN SysLogWrite("KONFIGURACE_TIMEOUT: VYPNUTO")
|
|
END
|
|
|
|
PUBLIC SUB ChkPreNeopakovat_Click()
|
|
konfigurace_prelearning_neopakovat = ChkPreNeopakovat.Value
|
|
IF konfigurace_prelearning_neopakovat = TRUE THEN SysLogWrite("KONFIGURACE_PreLearning_NEOPAKOVAT: ZAPNUTO")
|
|
IF konfigurace_prelearning_neopakovat = FALSE THEN SysLogWrite("KONFIGURACE_Prelearning_NEOPAKOVAT: VYPNUTO")
|
|
END
|
|
|
|
PUBLIC SUB ChkPrePauza_Click()
|
|
konfigurace_prelearning_pauza = ChkPrePauza.Value
|
|
IF konfigurace_prelearning_pauza = TRUE THEN SysLogWrite("KONFIGURACE_PreLearning_PAUZA: ZAPNUTO")
|
|
IF konfigurace_prelearning_pauza = FALSE THEN SysLogWrite("KONFIGURACE_Prelearning_PAUZA: VYPNUTO")
|
|
END
|
|
|
|
PUBLIC SUB BtnNastav_Click()
|
|
SysLogWrite("UPLATNUJI_PARAMETRY")
|
|
IF TestNastaveniExpCasu() = TRUE THEN
|
|
UplatniParametry()
|
|
VypisParametry()
|
|
SysLogWrite("PARAMETRY_UPLATNENY")
|
|
SysLogWrite("UKLADAM_ZAKLADNI_KONFIGURACI")
|
|
UlozDefoult()
|
|
SysLogWrite("ZAKLADNI_KONFIGURACE_ULOZENA")
|
|
ELSE
|
|
Message("! CHYBA ZADANEHO CASU: v rozliseni (ms) je minimalni hodnota 10")
|
|
ENDIF
|
|
END
|
|
|
|
PUBLIC SUB VypisParametry()
|
|
IF mod_idx = 0 THEN SysLogWrite("MOD_PRELEARNING")
|
|
IF mod_idx = 1 THEN SysLogWrite("MOD_EXPERIMENT")
|
|
IF konfigurace_timeout_status = TRUE THEN SysLogWrite("KONFIGURACE_TIMEOUT: ZAPNUTO")
|
|
IF konfigurace_timeout_status = FALSE THEN SysLogWrite("KONFIGURACE_TIMEOUT: VYPNUTO")
|
|
IF konfigurace_prelearning_neopakovat = TRUE THEN SysLogWrite("KONFIGURACE_PRELEARNING_NEOPAKOVAT: ZAPNUTO")
|
|
IF konfigurace_prelearning_neopakovat = FALSE THEN SysLogWrite("KONFIGURACE_PRELEARNING_NEOPAKOVAT: VYPNUTO")
|
|
IF konfigurace_prelearning_pauza = TRUE THEN SysLogWrite("KONFIGURACE_PRELEARNING_PAUZA: ZAPNUTO")
|
|
IF konfigurace_prelearning_pauza = FALSE THEN SysLogWrite("KONFIGURACE_PRELEARNING_PAUZA: VYPNUTO")
|
|
SysLogWrite("KONFIGURACE_PRELEARNING_PAUZA: " & konfigurace_prelearning_cas_dalsi_ciklus)
|
|
SysLogWrite("KONFIGURACE_PRELEARNING_CAS_PITI: " & konfigurace_prelearning_cas_piti)
|
|
SysLogWrite("KONFIGURACE_POCET_CYKLU: " & konfigurace_pocet_cyklu)
|
|
SysLogWrite("KONFIGURACE_CAS_NA_REAKCI: " & konfigurace_timeout)
|
|
IF konfigurace_experiment_casovani = TRUE THEN SysLogWrite("KONFIGURACE_CASOVANI: ZAPNUTO")
|
|
IF konfigurace_experiment_casovani = FALSE THEN SysLogWrite("KONFIGURACE_CASOVANI: VYPNUTO")
|
|
IF konfigurace_experiment_nahoda = TRUE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_NAHODA: ZAPNUTO")
|
|
IF konfigurace_experiment_nahoda = FALSE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_NAHODA: VYPNUTO")
|
|
IF konfigurace_experiment_neopakovat = TRUE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_NEOPAKOVAT: ZAPNUTO")
|
|
IF konfigurace_experiment_neopakovat = FALSE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_NEOPAKOVAT: VYPNUTO")
|
|
IF konfigurace_experiment_vypni_stimul = TRUE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_ZHASNUTI_STIMULU: ZAPNUTO")
|
|
IF konfigurace_experiment_vypni_stimul = FALSE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_ZHASNUTI_STIMULU: VYPNUTO")
|
|
IF konfigurace_experiment_vypni_stimul_pauza_enable = TRUE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_PAUZA_ZHASLY_STIMUL: ZAPNUTO")
|
|
IF konfigurace_experiment_vypni_stimul_pauza_enable = FALSE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_PAUZA_ZHASLY_STIMUL: VYPNUTO")
|
|
|
|
IF konfigurace_experiment_vypni_stimul_prereset = TRUE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_VYPNI_STIMUL_PRERESET: ZAPNUTO")
|
|
IF konfigurace_experiment_vypni_stimul_prereset = FALSE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_VYPNI_STIMUL_PRERESET: VYPNUTO")
|
|
|
|
IF konfigurace_experiment_vypni_stimul_poakci = TRUE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_VYPNI_STIMUL_POAKCI: ZAPNUTO")
|
|
IF konfigurace_experiment_vypni_stimul_poakci = FALSE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_VYPNI_STIMUL_POAKCI: VYPNUTO")
|
|
|
|
SysLogWrite("KONFIGURACE_EXPERIMENT_CAS_ZOBRAZENI_STIMULU: " & konfigurace_experiment_cas_zobrazeni_stimulu)
|
|
SysLogWrite("KONFIGURACE_EXPERIMENT_CAS_PITI " & konfigurace_experiment_cas_piti)
|
|
SysLogWrite("KONFIGURACE_EXPERIMENT_CAS_ZHASLY_STIMUL: " & konfigurace_experiment_cas_zhasnuteho_stimulu)
|
|
SysLogWrite("KONFIGURACE_EXPERIMENT_CAS_CYKLUS: " & konfigurace_experiment_cas_dalsi_ciklus)
|
|
IF konfigurace_experiment_slot_enable_1 = TRUE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_SLOT_1: ZAPNUTO")
|
|
IF konfigurace_experiment_slot_enable_1 = FALSE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_SLOT_1: VYPNUTO")
|
|
IF konfigurace_experiment_slot_enable_2 = TRUE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_SLOT_2: ZAPNUTO")
|
|
IF konfigurace_experiment_slot_enable_2 = FALSE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_SLOT_2: VYPNUTO")
|
|
IF konfigurace_experiment_slot_enable_3 = TRUE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_SLOT_3: ZAPNUTO")
|
|
IF konfigurace_experiment_slot_enable_3 = FALSE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_SLOT_3: VYPNUTO")
|
|
IF konfigurace_experiment_slot_enable_4 = TRUE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_SLOT_4: ZAPNUTO")
|
|
IF konfigurace_experiment_slot_enable_4 = FALSE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_SLOT_4: VYPNUTO")
|
|
IF konfigurace_experiment_slot_enable_5 = TRUE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_SLOT_5: ZAPNUTO")
|
|
IF konfigurace_experiment_slot_enable_5 = FALSE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_SLOT_5: VYPNUTO")
|
|
IF konfigurace_experiment_slot_enable_6 = TRUE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_SLOT_6: ZAPNUTO")
|
|
IF konfigurace_experiment_slot_enable_6 = FALSE THEN SysLogWrite("KONFIGURACE_EXPERIMENT_SLOT_6: VYPNUTO")
|
|
SysLogWrite("KONFIGURACE_EXPERIMENT_CASOVANI_SLOT_1: " & Str(konfigurace_experiment_casovani_s1))
|
|
SysLogWrite("KONFIGURACE_EXPERIMENT_CASOVANI_SLOT_2: " & Str(konfigurace_experiment_casovani_s2))
|
|
SysLogWrite("KONFIGURACE_EXPERIMENT_CASOVANI_SLOT_3: " & Str(konfigurace_experiment_casovani_s3))
|
|
SysLogWrite("KONFIGURACE_EXPERIMENT_CASOVANI_SLOT_4: " & Str(konfigurace_experiment_casovani_s4))
|
|
SysLogWrite("KONFIGURACE_EXPERIMENT_CASOVANI_SLOT_5: " & Str(konfigurace_experiment_casovani_s5))
|
|
SysLogWrite("KONFIGURACE_EXPERIMENT_CASOVANI_SLOT_6: " & Str(konfigurace_experiment_casovani_s6))
|
|
END
|
|
|
|
PUBLIC SUB UplatniParametry()
|
|
IF TestNastaveniExpCasu() = TRUE THEN
|
|
konfigurace_pocet_cyklu = Val(TxtPocetCiklu.Text)
|
|
konfigurace_timeout = Val(TxtTimeout.Text)
|
|
konfigurace_timeout_status = ChkTimeout.Value
|
|
konfigurace_prelearning_cas_piti = Val(TxtPreCasPiti.Text)
|
|
konfigurace_prelearning_cas_dalsi_ciklus = Val(TxtPrePauza.Text)
|
|
konfigurace_prelearning_pauza = ChkPrePauza.Value
|
|
konfigurace_prelearning_neopakovat = ChkPreNeopakovat.Value
|
|
konfigurace_experiment_nahoda = ChkExpNahoda.Value
|
|
konfigurace_experiment_neopakovat = ChkExpNeopakovat.Value
|
|
konfigurace_experiment_cas_zobrazeni_stimulu = Val(ExperimentTxtTime0.Text)
|
|
konfigurace_experiment_cas_piti = Val(ExperimentTxtTime3.Text)
|
|
konfigurace_experiment_cas_zhasnuteho_stimulu = Val(ExperimentTxtTime1.Text)
|
|
konfigurace_experiment_cas_dalsi_ciklus = Val(ExperimentTxtTime2.Text)
|
|
konfigurace_experiment_vypni_stimul = ChkZhasniStimul.Value
|
|
|
|
konfigurace_experiment_vypni_stimul_prereset = ChkZhasniStimulPreReset.Value
|
|
konfigurace_experiment_vypni_stimul_poakci = ChkZhasniStimulPoAkci.Value
|
|
|
|
konfigurace_experiment_vypni_stimul_pauza_enable = ChkVypStimulPauza.Value
|
|
konfigurace_experiment_casovani = ExpChkEnableTiming.Value
|
|
konfigurace_experiment_slot_enable_1 = ExpChkSTime.Value
|
|
konfigurace_experiment_slot_enable_2 = ExpChkSTime2.Value
|
|
konfigurace_experiment_slot_enable_3 = ExpChkSTime3.Value
|
|
konfigurace_experiment_slot_enable_4 = ExpChkSTime4.Value
|
|
konfigurace_experiment_slot_enable_5 = ExpChkSTime5.Value
|
|
konfigurace_experiment_slot_enable_6 = ExpChkSTime6.Value
|
|
konfigurace_experiment_casovani_s1 = Val(ExpTxtS1Time.Text)
|
|
konfigurace_experiment_casovani_s2 = Val(ExpTxtS2Time.Text)
|
|
konfigurace_experiment_casovani_s3 = Val(ExpTxtS3Time.Text)
|
|
konfigurace_experiment_casovani_s4 = Val(ExpTxtS4Time.Text)
|
|
konfigurace_experiment_casovani_s5 = Val(ExpTxtS5Time.Text)
|
|
konfigurace_experiment_casovani_s6 = Val(ExpTxtS6Time.Text)
|
|
TimeoutOpakReset = ChkTimeoutOpakReset.Value
|
|
ELSE
|
|
Message("! CHYBA ZADANEHO CASU: v rozliseni (ms) je minimalni hodnota 10")
|
|
ENDIF
|
|
END
|
|
|
|
SUB UlozDefoult()
|
|
DIM DefKonfFile AS File
|
|
DefKonfFile = OPEN "/ratbox/system/defconf.rbconf" FOR WRITE
|
|
WAIT
|
|
PRINT #DefKonfFile, Format$(Now, "yyyy_mm_dd") & "_" & Format$(Now, "hh:nn:ss")
|
|
PRINT #DefKonfFile, TxtCommPort.Text
|
|
PRINT #DefKonfFile, Str(konfigurace_pocet_cyklu)
|
|
PRINT #DefKonfFile, Str(konfigurace_timeout)
|
|
PRINT #DefKonfFile, konfigurace_timeout_status
|
|
PRINT #DefKonfFile, Str(konfigurace_prelearning_cas_piti)
|
|
PRINT #DefKonfFile, Str(konfigurace_prelearning_cas_dalsi_ciklus)
|
|
PRINT #DefKonfFile, konfigurace_prelearning_pauza
|
|
PRINT #DefKonfFile, konfigurace_prelearning_neopakovat
|
|
PRINT #DefKonfFile, konfigurace_experiment_nahoda
|
|
PRINT #DefKonfFile, konfigurace_experiment_neopakovat
|
|
PRINT #DefKonfFile, Str(konfigurace_experiment_cas_zobrazeni_stimulu)
|
|
PRINT #DefKonfFile, Str(konfigurace_experiment_cas_piti)
|
|
PRINT #DefKonfFile, Str(konfigurace_experiment_cas_zhasnuteho_stimulu)
|
|
PRINT #DefKonfFile, Str(konfigurace_experiment_cas_dalsi_ciklus)
|
|
PRINT #DefKonfFile, konfigurace_experiment_vypni_stimul
|
|
PRINT #DefKonfFile, konfigurace_experiment_vypni_stimul_pauza_enable
|
|
PRINT #DefKonfFile, konfigurace_experiment_casovani
|
|
PRINT #DefKonfFile, konfigurace_experiment_slot_enable_1
|
|
PRINT #DefKonfFile, konfigurace_experiment_slot_enable_2
|
|
PRINT #DefKonfFile, konfigurace_experiment_slot_enable_3
|
|
PRINT #DefKonfFile, konfigurace_experiment_slot_enable_4
|
|
PRINT #DefKonfFile, konfigurace_experiment_slot_enable_5
|
|
PRINT #DefKonfFile, konfigurace_experiment_slot_enable_6
|
|
PRINT #DefKonfFile, Str(konfigurace_experiment_casovani_s1)
|
|
PRINT #DefKonfFile, Str(konfigurace_experiment_casovani_s2)
|
|
PRINT #DefKonfFile, Str(konfigurace_experiment_casovani_s3)
|
|
PRINT #DefKonfFile, Str(konfigurace_experiment_casovani_s4)
|
|
PRINT #DefKonfFile, Str(konfigurace_experiment_casovani_s5)
|
|
PRINT #DefKonfFile, Str(konfigurace_experiment_casovani_s6)
|
|
PRINT #DefKonfFile, Str(mod_idx)
|
|
PRINT #DefKonfFile, TimeoutOpakReset
|
|
PRINT #DefKonfFile, konfigurace_experiment_vypni_stimul_prereset
|
|
PRINT #DefKonfFile, konfigurace_experiment_vypni_stimul_poakci
|
|
|
|
WAIT
|
|
DefKonfFile.Close
|
|
END
|
|
|
|
SUB UlozUserCfg(CfgName AS String)
|
|
DIM DefKonfFile AS File
|
|
|
|
UplatniParametry()
|
|
|
|
IF Exist("/ratbox/konfigurace/" & CfgName & ".rbconf") = FALSE THEN
|
|
Message("Profil: " & CfgName & " neexistuje a bude vytvoren......")
|
|
SHELL ("touch /ratbox/konfigurace/" & CfgName & ".rbconf")
|
|
Message("Profil: " & CfgName & " Vytvoren....")
|
|
CfgList()
|
|
ELSE
|
|
IF Message.Warning("Profil: " & CfgName & " jiz existuje, chcete ho prepsat ?", "NE", "ANO") = 2 THEN
|
|
GOTO cfgwrite
|
|
ELSE
|
|
GOTO cfgwritekonec
|
|
ENDIF
|
|
ENDIF
|
|
|
|
cfgwrite:
|
|
|
|
DefKonfFile = OPEN "/ratbox/konfigurace/" & CfgName & ".rbconf" FOR WRITE
|
|
|
|
FINALLY
|
|
IF ERROR THEN
|
|
ErrLogWrite("CHYBA_PRI_ZAPISU_KONFIGURACE: " & Error.Text)
|
|
Message("CHYBA_PRI_ZAPISU_KONFIGURACE")
|
|
ENDIF
|
|
|
|
WAIT
|
|
PRINT #DefKonfFile, Format$(Now, "yyyy_mm_dd") & "_" & Format$(Now, "hh:nn:ss")
|
|
PRINT #DefKonfFile, TxtCommPort.Text
|
|
PRINT #DefKonfFile, Str(konfigurace_pocet_cyklu)
|
|
PRINT #DefKonfFile, Str(konfigurace_timeout)
|
|
PRINT #DefKonfFile, konfigurace_timeout_status
|
|
PRINT #DefKonfFile, Str(konfigurace_prelearning_cas_piti)
|
|
PRINT #DefKonfFile, Str(konfigurace_prelearning_cas_dalsi_ciklus)
|
|
PRINT #DefKonfFile, konfigurace_prelearning_pauza
|
|
PRINT #DefKonfFile, konfigurace_prelearning_neopakovat
|
|
PRINT #DefKonfFile, konfigurace_experiment_nahoda
|
|
PRINT #DefKonfFile, konfigurace_experiment_neopakovat
|
|
PRINT #DefKonfFile, Str(konfigurace_experiment_cas_zobrazeni_stimulu)
|
|
PRINT #DefKonfFile, Str(konfigurace_experiment_cas_piti)
|
|
PRINT #DefKonfFile, Str(konfigurace_experiment_cas_zhasnuteho_stimulu)
|
|
PRINT #DefKonfFile, Str(konfigurace_experiment_cas_dalsi_ciklus)
|
|
PRINT #DefKonfFile, konfigurace_experiment_vypni_stimul
|
|
PRINT #DefKonfFile, konfigurace_experiment_vypni_stimul_pauza_enable
|
|
PRINT #DefKonfFile, konfigurace_experiment_casovani
|
|
PRINT #DefKonfFile, konfigurace_experiment_slot_enable_1
|
|
PRINT #DefKonfFile, konfigurace_experiment_slot_enable_2
|
|
PRINT #DefKonfFile, konfigurace_experiment_slot_enable_3
|
|
PRINT #DefKonfFile, konfigurace_experiment_slot_enable_4
|
|
PRINT #DefKonfFile, konfigurace_experiment_slot_enable_5
|
|
PRINT #DefKonfFile, konfigurace_experiment_slot_enable_6
|
|
PRINT #DefKonfFile, Str(konfigurace_experiment_casovani_s1)
|
|
PRINT #DefKonfFile, Str(konfigurace_experiment_casovani_s2)
|
|
PRINT #DefKonfFile, Str(konfigurace_experiment_casovani_s3)
|
|
PRINT #DefKonfFile, Str(konfigurace_experiment_casovani_s4)
|
|
PRINT #DefKonfFile, Str(konfigurace_experiment_casovani_s5)
|
|
PRINT #DefKonfFile, Str(konfigurace_experiment_casovani_s6)
|
|
PRINT #DefKonfFile, Str(mod_idx)
|
|
PRINT #DefKonfFile, TimeoutOpakReset
|
|
PRINT #DefKonfFile, konfigurace_experiment_vypni_stimul_prereset
|
|
PRINT #DefKonfFile, konfigurace_experiment_vypni_stimul_poakci
|
|
|
|
WAIT
|
|
DefKonfFile.Close
|
|
|
|
cfgwritekonec:
|
|
|
|
END
|
|
|
|
|
|
|
|
SUB DefKonfLoad()
|
|
DIM linc AS Integer
|
|
DIM lin AS String
|
|
DIM arr_strings AS String[]
|
|
SysLogWrite("OBNOVENI_PARAMETRU")
|
|
arr_strings = Split(File.LOAD("/ratbox/system/defconf.rbconf"), "\n")
|
|
FOR EACH lin IN arr_strings
|
|
lin = arr_strings[linc]
|
|
IF linc = 1 THEN TxtCommPort.text = lin
|
|
IF linc = 2 THEN TxtPocetCiklu.Text = lin
|
|
IF linc = 3 THEN TxtTimeout.Text = lin
|
|
IF (linc = 4) AND (lin = "True") THEN ChkTimeout.Value = TRUE
|
|
IF (linc = 4) AND (lin = "False") THEN ChkTimeout.Value = FALSE
|
|
IF linc = 5 THEN TxtPreCasPiti.Text = lin
|
|
IF linc = 6 THEN TxtPrePauza.Text = lin
|
|
IF (linc = 7) AND (lin = "True") THEN ChkPrePauza.Value = TRUE
|
|
IF (linc = 7) AND (lin = "False") THEN ChkPrePauza.Value = FALSE
|
|
IF (linc = 8) AND (lin = "True") THEN ChkPreNeopakovat.Value = TRUE
|
|
IF (linc = 8) AND (lin = "False") THEN ChkPreNeopakovat.Value = FALSE
|
|
IF (linc = 9) AND (lin = "True") THEN ChkExpNahoda.Value = TRUE
|
|
IF (linc = 9) AND (lin = "False") THEN ChkExpNahoda.Value = FALSE
|
|
IF (linc = 10) AND (lin = "True") THEN ChkExpNeopakovat.Value = TRUE
|
|
IF (linc = 10) AND (lin = "False") THEN ChkExpNeopakovat.Value = FALSE
|
|
IF linc = 11 THEN ExperimentTxtTime0.Text = lin
|
|
IF linc = 12 THEN ExperimentTxtTime3.Text = lin
|
|
IF linc = 13 THEN ExperimentTxtTime1.Text = lin
|
|
IF linc = 14 THEN ExperimentTxtTime2.Text = lin
|
|
IF (linc = 15) AND (lin = "True") THEN ChkZhasniStimul.Value = TRUE
|
|
IF (linc = 15) AND (lin = "False") THEN ChkZhasniStimul.Value = FALSE
|
|
IF (linc = 16) AND (lin = "True") THEN ChkVypStimulPauza.Value = TRUE
|
|
IF (linc = 16) AND (lin = "False") THEN ChkVypStimulPauza.Value = FALSE
|
|
IF (linc = 17) AND (lin = "True") THEN ExpChkEnableTiming.Value = TRUE
|
|
IF (linc = 17) AND (lin = "False") THEN ExpChkEnableTiming.Value = FALSE
|
|
IF (linc = 18) AND (lin = "True") THEN ExpChkSTime.Value = TRUE
|
|
IF (linc = 18) AND (lin = "False") THEN ExpChkSTime.Value = FALSE
|
|
IF (linc = 19) AND (lin = "True") THEN ExpChkSTime2.Value = TRUE
|
|
IF (linc = 19) AND (lin = "False") THEN ExpChkSTime2.Value = FALSE
|
|
IF (linc = 20) AND (lin = "True") THEN ExpChkSTime3.Value = TRUE
|
|
IF (linc = 20) AND (lin = "False") THEN ExpChkSTime3.Value = FALSE
|
|
IF (linc = 21) AND (lin = "True") THEN ExpChkSTime4.Value = TRUE
|
|
IF (linc = 21) AND (lin = "False") THEN ExpChkSTime4.Value = FALSE
|
|
IF (linc = 22) AND (lin = "True") THEN ExpChkSTime5.Value = TRUE
|
|
IF (linc = 22) AND (lin = "False") THEN ExpChkSTime5.Value = FALSE
|
|
IF (linc = 23) AND (lin = "True") THEN ExpChkSTime6.Value = TRUE
|
|
IF (linc = 23) AND (lin = "False") THEN ExpChkSTime6.Value = FALSE
|
|
IF linc = 24 THEN ExpTxtS1Time.Text = lin
|
|
IF linc = 25 THEN ExpTxtS2Time.Text = lin
|
|
IF linc = 26 THEN ExpTxtS3Time.Text = lin
|
|
IF linc = 27 THEN ExpTxtS4Time.Text = lin
|
|
IF linc = 28 THEN ExpTxtS5Time.Text = lin
|
|
IF linc = 29 THEN ExpTxtS6Time.Text = lin
|
|
IF linc = 30 THEN mod_idx = Val(lin)
|
|
IF (linc = 30) AND (lin = "0") THEN BtnMod.Text = "PreLearning"
|
|
IF (linc = 30) AND (lin = "1") THEN BtnMod.Text = "Experiment"
|
|
IF (linc = 31) AND (lin = "True") THEN ChkTimeoutOpakReset.Value = TRUE
|
|
IF (linc = 31) AND (lin = "False") THEN ChkTimeoutOpakReset.Value = FALSE
|
|
IF (linc = 32) AND (lin = "True") THEN ChkZhasniStimulPreReset.Value = TRUE
|
|
IF (linc = 32) AND (lin = "False") THEN ChkZhasniStimulPreReset.Value = FALSE
|
|
IF (linc = 33) AND (lin = "True") THEN ChkZhasniStimulPoAkci.Value = TRUE
|
|
IF (linc = 33) AND (lin = "False") THEN ChkZhasniStimulPoAkci.Value = FALSE
|
|
linc = linc + 1
|
|
NEXT
|
|
SysLogWrite("PARAMETRY_OBNOVENY")
|
|
END
|
|
|
|
PUBLIC SUB TmrCasovac_Timer()
|
|
buffer_casovac = buffer_casovac + 1
|
|
TxtInfoCasovac.text = Str(buffer_casovac)
|
|
PosliInfo()
|
|
WAIT
|
|
END
|
|
|
|
PUBLIC SUB BtnPreStart_Click()
|
|
DIM exp_souhrn_stimul AS Integer
|
|
DIM exp_souhrn_odpoved AS Integer
|
|
|
|
SysLogWrite("UPLATNUJI_PARAMETRY")
|
|
UplatniParametry()
|
|
VypisParametry()
|
|
SysLogWrite("PARAMETRY_UPLATNENY")
|
|
STOP_State = FALSE
|
|
tmp_cyklus = 0
|
|
Pauza(5)
|
|
IF mod_idx = 0 THEN
|
|
PreLogInit()
|
|
TimerExperimentMils.Enabled = TRUE
|
|
PreStatInit()
|
|
SysLogWrite("PRELEARNING_START")
|
|
PreLogWrite("START" & ";" & "NaN" & ";" & "NULL" & ";" & "NaN")
|
|
WHILE (tmp_cyklus < konfigurace_pocet_cyklu) AND (STOP_State = FALSE)
|
|
PreLogWrite("CYKLUS" & ";" & tmp_cyklus & ";" & "NULL" & ";" & "NaN")
|
|
' PRELEARNING - KROK 1 - OTEVRENI DVERI START
|
|
PreLogWrite("OTEVRENI_DVERI" & ";" & "NaN" & ";" & "NULL" & ";" & "NaN")
|
|
LabelPre.BackColor = Color.Green
|
|
AparaturaOtevriDvere()
|
|
Pauza(3)
|
|
LabelPre.BackColor = Color.Background
|
|
PreLogWrite("DVERE_OTEVRENY" & ";" & "NaN" & ";" & "NULL" & ";" & "NaN")
|
|
' PRELEARNING - KROK 1 - OTEVRENI DVERI STOP
|
|
|
|
WAIT
|
|
|
|
' PRELEARNING - KROK 2 - CEKANI, ANALYZA POTKANI AKCE START
|
|
cekani_potkan_akce:
|
|
|
|
TimeoutCountingStart()
|
|
LabelPre2.BackColor = Color.Green
|
|
stav_sloty = 0
|
|
InputBlock = FALSE
|
|
WHILE (stav_sloty = 0) AND (konfigurace_timeout > buffer_timeout)
|
|
WAIT
|
|
WEND
|
|
TimeoutCountingStop()
|
|
LabelPre2.BackColor = Color.Background
|
|
buffer_sloty_aktual_state = stav_sloty
|
|
stav_sloty = 0
|
|
|
|
SysLogWrite("PRELEARNING_POTKAN_AKTIVITA_" & Str(buffer_sloty_aktual_state))
|
|
pre_stat_aktivita[buffer_sloty_aktual_state] = pre_stat_aktivita[buffer_sloty_aktual_state] + 1
|
|
|
|
IF buffer_sloty_aktual_state = 0 THEN
|
|
SysLogWrite("PRELEARNING_TIMEOUT")
|
|
PreLogWrite("TIMEOUT" & ";" & "NaN" & ";" & "NULL" & ";" & "NaN")
|
|
IF TimeoutOpakReset = TRUE THEN buffer_sloty_last_state = 0
|
|
pre_stat_timeout = pre_stat_timeout + 1
|
|
GOTO prelearning_reset
|
|
ENDIF
|
|
|
|
IF (buffer_sloty_last_state = buffer_sloty_aktual_state) AND (konfigurace_prelearning_neopakovat = TRUE) THEN
|
|
SysLogWrite("PRELEARNING_POTKAN_OPAKOVANI")
|
|
PreLogWrite("OPAKOVANI" & ";" & Str(buffer_sloty_aktual_state) & ";" & "NULL" & ";" & "NaN")
|
|
pre_stat_opakovani[buffer_sloty_last_state] = pre_stat_opakovani[buffer_sloty_last_state] + 1
|
|
LabelPre2.BackColor = Color.Red
|
|
Pauza(1)
|
|
LabelPre2.BackColor = Color.Background
|
|
buffer_sloty_aktual_state = 0
|
|
GOTO cekani_potkan_akce
|
|
ELSE
|
|
PreLogWrite("AKTIVITA" & ";" & Str(buffer_sloty_aktual_state) & ";" & "NULL" & ";" & "NaN")
|
|
ENDIF
|
|
|
|
IF (buffer_sloty_aktual_state = 1) AND (konfigurace_experiment_slot_enable_1 = FALSE) THEN
|
|
SysLogWrite("PRELEARNING_NEPOVOLENY_SLOT_" & Str(buffer_sloty_aktual_state))
|
|
PreLogWrite("NEPOVOLENY_SLOT" & ";" & Str(buffer_sloty_aktual_state) & ";" & "NULL" & ";" & "NaN")
|
|
pre_stat_zakazano[1] = pre_stat_zakazano[1] + 1
|
|
GOTO cekani_potkan_akce
|
|
ENDIF
|
|
IF (buffer_sloty_aktual_state = 2) AND (konfigurace_experiment_slot_enable_2 = FALSE) THEN
|
|
SysLogWrite("PRELEARNING_NEPOVOLENY_SLOT_" & Str(buffer_sloty_aktual_state))
|
|
PreLogWrite("NEPOVOLENY_SLOT" & ";" & Str(buffer_sloty_aktual_state) & ";" & "NULL" & ";" & "NaN")
|
|
pre_stat_zakazano[2] = pre_stat_zakazano[2] + 1
|
|
GOTO cekani_potkan_akce
|
|
ENDIF
|
|
IF (buffer_sloty_aktual_state = 3) AND (konfigurace_experiment_slot_enable_3 = FALSE) THEN
|
|
SysLogWrite("PRELEARNING_NEPOVOLENY_SLOT_" & Str(buffer_sloty_aktual_state))
|
|
PreLogWrite("NEPOVOLENY_SLOT" & ";" & Str(buffer_sloty_aktual_state) & ";" & "NULL" & ";" & "NaN")
|
|
pre_stat_zakazano[3] = pre_stat_zakazano[3] + 1
|
|
GOTO cekani_potkan_akce
|
|
ENDIF
|
|
IF (buffer_sloty_aktual_state = 4) AND (konfigurace_experiment_slot_enable_4 = FALSE) THEN
|
|
SysLogWrite("PRELEARNING_NEPOVOLENY_SLOT_" & Str(buffer_sloty_aktual_state))
|
|
PreLogWrite("NEPOVOLENY_SLOT" & ";" & Str(buffer_sloty_aktual_state) & ";" & "NULL" & ";" & "NaN")
|
|
pre_stat_zakazano[4] = pre_stat_zakazano[4] + 1
|
|
GOTO cekani_potkan_akce
|
|
ENDIF
|
|
IF (buffer_sloty_aktual_state = 5) AND (konfigurace_experiment_slot_enable_5 = FALSE) THEN
|
|
SysLogWrite("PRELEARNING_NEPOVOLENY_SLOT_" & Str(buffer_sloty_aktual_state))
|
|
PreLogWrite("NEPOVOLENY_SLOT" & ";" & Str(buffer_sloty_aktual_state) & ";" & "NULL" & ";" & "NaN")
|
|
pre_stat_zakazano[5] = pre_stat_zakazano[5] + 1
|
|
GOTO cekani_potkan_akce
|
|
ENDIF
|
|
IF (buffer_sloty_aktual_state = 6) AND (konfigurace_experiment_slot_enable_6 = FALSE) THEN
|
|
SysLogWrite("PRELEARNING_NEPOVOLENY_SLOT_" & Str(buffer_sloty_aktual_state))
|
|
PreLogWrite("NEPOVOLENY_SLOT" & ";" & Str(buffer_sloty_aktual_state) & ";" & "NULL" & ";" & "NaN")
|
|
pre_stat_zakazano[6] = pre_stat_zakazano[6] + 1
|
|
GOTO cekani_potkan_akce
|
|
ENDIF
|
|
|
|
buffer_sloty_last_state = buffer_sloty_aktual_state
|
|
LabelPre2.BackColor = Color.Background
|
|
' PRELEARNING - KROK 2 - CEKANI, ANALYZA POTKANI AKCE STOP
|
|
|
|
LabelPre3.BackColor = Color.Green
|
|
AparaturaNastavPitko(buffer_sloty_aktual_state)
|
|
Pauza(3)
|
|
LabelPre3.BackColor = Color.Background
|
|
PreLogWrite("NASTAVUJI_PITKO" & ";" & Str(buffer_sloty_aktual_state) & ";" & "NULL" & ";" & "NaN")
|
|
|
|
Label1.BackColor = Color.Green
|
|
Pauza(konfigurace_prelearning_cas_piti)
|
|
pre_stat_ciklus_real = pre_stat_ciklus_real + 1
|
|
Label1.BackColor = Color.Background
|
|
|
|
prelearning_reset:
|
|
LabelPre5.BackColor = Color.Green
|
|
AparaturaReset()
|
|
Pauza(3)
|
|
LabelPre5.BackColor = Color.Background
|
|
|
|
IF konfigurace_prelearning_pauza = TRUE THEN
|
|
ChkPrePauza.BackColor = Color.Green
|
|
Pauza(konfigurace_prelearning_cas_dalsi_ciklus)
|
|
ChkPrePauza.BackColor = Color.Background
|
|
ENDIF
|
|
tmp_cyklus = tmp_cyklus + 1
|
|
pre_stat_ciklus = pre_stat_ciklus + 1
|
|
WEND
|
|
|
|
tmp_cyklus = 0
|
|
stav_sloty = 0
|
|
|
|
PreLogWrite("KONEC" & ";" & "NaN" & ";" & "NULL" & ";" & "NaN")
|
|
PreStatWrite()
|
|
SysLogWrite("PRELEARNING_KONEC")
|
|
TimerExperimentMils.Enabled = FALSE
|
|
|
|
ELSE IF mod_idx = 1 THEN
|
|
tmp_cyklus = 0
|
|
stav_sloty = 0
|
|
tmp_stimul_idx = 0
|
|
STOP_State = FALSE
|
|
tmp_mils = 0
|
|
|
|
ExpLogInit()
|
|
Pauza(5)
|
|
ExpStatInit()
|
|
ExpLogWrite("START" & ";" & "NaN" & ";" & "NULL" & ";" & "NaN")
|
|
SysLogWrite("EXPERIMENT_START")
|
|
|
|
WHILE (tmp_cyklus < konfigurace_pocet_cyklu) AND (STOP_State = FALSE)
|
|
TimerExperimentMils.Enabled = TRUE
|
|
exp_genstim:
|
|
ExpLogWrite("CYKLUS" & ";" & tmp_cyklus & ";" & "NULL" & ";" & "NaN")
|
|
IF konfigurace_experiment_nahoda = TRUE THEN
|
|
tmp_stimul_idx = Rnd(1, 7)
|
|
'ExpLogWrite("NAHODNY_STIMUL" & ";" & tmp_stimul_idx & ";" & "NULL" & ";" & "NaN")
|
|
ELSE
|
|
IF tmp_stimul_idx = 6 THEN tmp_stimul_idx = 0
|
|
tmp_stimul_idx = tmp_stimul_idx + 1
|
|
ExpLogWrite("LINEARNI_STIMUL" & ";" & tmp_stimul_idx & ";" & "NULL" & ";" & "NaN")
|
|
ENDIF
|
|
IF (tmp_stimul_last = tmp_stimul_idx) AND (konfigurace_experiment_neopakovat = TRUE) THEN
|
|
' ExpLogWrite("EXPERIMENT_OPAKOVANI_STIMULU: " & tmp_stimul_idx & " GENERUJI_NOVY")
|
|
GOTO exp_genstim
|
|
ENDIF
|
|
tmp_stimul_last = tmp_stimul_idx
|
|
IF (konfigurace_experiment_slot_enable_1 = FALSE) AND (tmp_stimul_idx = 1) THEN
|
|
' ExpLogWrite("EXPERIMENT_STIMUL: " & tmp_stimul_idx & " ZAKAZAN, GENERUJI_NOVY")
|
|
GOTO exp_genstim
|
|
ENDIF
|
|
IF (konfigurace_experiment_slot_enable_2 = FALSE) AND (tmp_stimul_idx = 2) THEN
|
|
' ExpLogWrite("EXPERIMENT_STIMUL: " & tmp_stimul_idx & " ZAKAZAN, GENERUJI_NOVY")
|
|
GOTO exp_genstim
|
|
ENDIF
|
|
IF (konfigurace_experiment_slot_enable_3 = FALSE) AND (tmp_stimul_idx = 3) THEN
|
|
' ExpLogWrite("EXPERIMENT_STIMUL: " & tmp_stimul_idx & " ZAKAZAN, GENERUJI_NOVY")
|
|
GOTO exp_genstim
|
|
ENDIF
|
|
IF (konfigurace_experiment_slot_enable_4 = FALSE) AND (tmp_stimul_idx = 4) THEN
|
|
' ExpLogWrite("EXPERIMENT_STIMUL: " & tmp_stimul_idx & " ZAKAZAN, GENERUJI_NOVY")
|
|
GOTO exp_genstim
|
|
ENDIF
|
|
IF (konfigurace_experiment_slot_enable_5 = FALSE) AND (tmp_stimul_idx = 5) THEN
|
|
' ExpLogWrite("EXPERIMENT_STIMUL: " & tmp_stimul_idx & " ZAKAZAN, GENERUJI_NOVY")
|
|
GOTO exp_genstim
|
|
ENDIF
|
|
IF (konfigurace_experiment_slot_enable_6 = FALSE) AND (tmp_stimul_idx = 6) THEN
|
|
' ExpLogWrite("EXPERIMENT_STIMUL: " & tmp_stimul_idx & " ZAKAZAN, GENERUJI_NOVY")
|
|
GOTO exp_genstim
|
|
ENDIF
|
|
|
|
Label23.Text = tmp_stimul_idx
|
|
exp_souhrn_stimul = tmp_stimul_idx
|
|
|
|
ExpLogWrite("ZOBRAZENI_STIMULU" & ";" & tmp_stimul_idx & ";" & "NULL" & ";" & "NaN")
|
|
ExperimentPicture.Picture = Picture.Load("/ratbox/stimuls/" & tmp_stimul_idx & ".bmp")
|
|
Form1.stimul("/ratbox/stimuls/" & tmp_stimul_idx & ".bmp")
|
|
WAIT
|
|
|
|
IF konfigurace_experiment_casovani = TRUE THEN
|
|
IF tmp_stimul_idx = 1 THEN
|
|
ExpLogWrite("CAS_ZOBRAZENI_STIMULU" & ";" & (konfigurace_experiment_casovani_s1) & ";" & "NULL" & ";" & "NaN")
|
|
Label26.BackColor = Color.Green
|
|
PauzaMilis(konfigurace_experiment_casovani_s1)
|
|
Label26.BackColor = Color.Background
|
|
ENDIF
|
|
IF tmp_stimul_idx = 2 THEN
|
|
ExpLogWrite("CAS_ZOBRAZENI_STIMULU" & ";" & (konfigurace_experiment_casovani_s2) & ";" & "NULL" & ";" & "NaN")
|
|
Label27.BackColor = Color.Green
|
|
PauzaMilis(konfigurace_experiment_casovani_s2)
|
|
Label27.BackColor = Color.Background
|
|
ENDIF
|
|
IF tmp_stimul_idx = 3 THEN
|
|
ExpLogWrite("CAS_ZOBRAZENI_STIMULU" & ";" & (konfigurace_experiment_casovani_s3) & ";" & "NULL" & ";" & "NaN")
|
|
Label28.BackColor = Color.Green
|
|
PauzaMilis(konfigurace_experiment_casovani_s3)
|
|
Label28.BackColor = Color.Background
|
|
ENDIF
|
|
IF tmp_stimul_idx = 4 THEN
|
|
ExpLogWrite("CAS_ZOBRAZENI_STIMULU" & ";" & (konfigurace_experiment_casovani_s4) & ";" & "NULL" & ";" & "NaN")
|
|
Label29.BackColor = Color.Green
|
|
PauzaMilis(konfigurace_experiment_casovani_s4)
|
|
Label29.BackColor = Color.Background
|
|
ENDIF
|
|
IF tmp_stimul_idx = 5 THEN
|
|
ExpLogWrite("CAS_ZOBRAZENI_STIMULU" & ";" & (konfigurace_experiment_casovani_s5) & ";" & "NULL" & ";" & "NaN")
|
|
Label30.BackColor = Color.Green
|
|
PauzaMilis(konfigurace_experiment_casovani_s5)
|
|
Label30.BackColor = Color.Background
|
|
ENDIF
|
|
IF tmp_stimul_idx = 6 THEN
|
|
ExpLogWrite("CAS_ZOBRAZENI_STIMULU" & ";" & (konfigurace_experiment_casovani_s6) & ";" & "NULL" & ";" & "NaN")
|
|
Label31.BackColor = Color.Green
|
|
PauzaMilis(konfigurace_experiment_casovani_s6)
|
|
Label31.BackColor = Color.Background
|
|
ENDIF
|
|
ELSE
|
|
Label12.BackColor = Color.Green
|
|
ExpLogWrite("CAS_ZOBRAZENI_STIMULU" & ";" & (konfigurace_experiment_cas_zobrazeni_stimulu) & ";" & "NULL" & ";" & "NaN")
|
|
PauzaMilis(konfigurace_experiment_cas_zobrazeni_stimulu)
|
|
Label12.BackColor = Color.Background
|
|
ENDIF
|
|
|
|
IF konfigurace_experiment_vypni_stimul = TRUE THEN
|
|
ChkZhasniStimul.BackColor = Color.Green
|
|
ExpLogWrite("ZHASNUTI_STIMULU" & ";" & "NaN" & ";" & "NULL" & ";" & "NaN")
|
|
Form1.stimul("/ratbox/stimuls/clear.bmp")
|
|
ExperimentPicture.Picture = Picture.Load("/ratbox/stimuls/clear.bmp")
|
|
ChkZhasniStimul.BackColor = Color.Background
|
|
ENDIF
|
|
|
|
IF konfigurace_experiment_vypni_stimul_pauza_enable = TRUE THEN
|
|
Label13.BackColor = Color.Green
|
|
ExpLogWrite("CAS_ZHASLEHO_STIMULU" & ";" & (konfigurace_experiment_cas_zhasnuteho_stimulu) & ";" & "NULL" & ";" & "NaN")
|
|
PauzaMilis(konfigurace_experiment_cas_zhasnuteho_stimulu)
|
|
Label13.BackColor = Color.Background
|
|
ENDIF
|
|
|
|
ExpLogWrite("OTEVRENI_DVERI" & ";" & "NaN" & ";" & "NULL" & ";" & "NaN")
|
|
LabelPre6.BackColor = Color.Green
|
|
AparaturaOtevriDvere()
|
|
Pauza(3)
|
|
ExpLogWrite("DVERE_OTEVRENY" & ";" & "NaN" & ";" & "NULL" & ";" & "NaN")
|
|
LabelPre6.BackColor = Color.Background
|
|
|
|
LabelPre7.BackColor = Color.Green
|
|
stav_sloty = 0
|
|
InputBlock = FALSE
|
|
ExpLogWrite("CEKANI_REAKCE" & ";" & "NaN" & ";" & "TIMEOUT" & ";" & (konfigurace_timeout * 1000))
|
|
TimeoutCountingStart()
|
|
WHILE (stav_sloty = 0) AND (konfigurace_timeout > buffer_timeout)
|
|
WAIT
|
|
WEND
|
|
TimeoutCountingStop()
|
|
LabelPre7.BackColor = Color.Background
|
|
buffer_sloty_aktual_state = stav_sloty
|
|
stav_sloty = 0
|
|
|
|
IF konfigurace_experiment_vypni_stimul_poakci = TRUE THEN
|
|
ChkZhasniStimulPoAkci.BackColor = Color.Green
|
|
ExpLogWrite("ZHASNUTI_STIMULU" & ";" & "NaN" & ";" & "NULL" & ";" & "NaN")
|
|
Form1.stimul("/ratbox/stimuls/clear.bmp")
|
|
ExperimentPicture.Picture = Picture.Load("/ratbox/stimuls/clear.bmp")
|
|
ChkZhasniStimulPoAkci.BackColor = Color.Background
|
|
ENDIF
|
|
|
|
IF buffer_sloty_aktual_state > 0 THEN
|
|
exp_souhrn_odpoved = buffer_sloty_aktual_state
|
|
exp_stat_souhrn[exp_souhrn_stimul, exp_souhrn_odpoved] = exp_stat_souhrn[exp_souhrn_stimul, exp_souhrn_odpoved] + 1
|
|
exp_stat_aktivita[buffer_sloty_aktual_state] = exp_stat_aktivita[buffer_sloty_aktual_state] + 1
|
|
ENDIF
|
|
|
|
IF buffer_sloty_aktual_state = 0 THEN
|
|
ExpLogWrite("TIMEOUT" & ";" & "NaN" & ";" & "NULL" & ";" & "NaN")
|
|
exp_stat_timeout = exp_stat_timeout + 1
|
|
GOTO exp_reset
|
|
ENDIF
|
|
|
|
ExpLogWrite("REAKCE" & ";" & buffer_sloty_aktual_state & ";" & "OCEKAVANO" & ";" & tmp_stimul_idx)
|
|
'exp_stat_aktivita[buffer_sloty_aktual_state] = exp_stat_aktivita[buffer_sloty_aktual_state] + 1
|
|
|
|
IF buffer_sloty_aktual_state <> tmp_stimul_idx THEN
|
|
' ExpLogWrite("EXPERIMENT_POKTKAN_SPATNA_VOLBA: " & buffer_sloty_aktual_state & " ,OCEKAVANO: " & tmp_stimul_idx)
|
|
GOTO exp_reset
|
|
ENDIF
|
|
IF buffer_sloty_aktual_state = tmp_stimul_idx THEN
|
|
' ExpLogWrite("EXPERIMENT_POTKAN_SPRAVNA_VOLBA: " & buffer_sloty_aktual_state)
|
|
ExpLogWrite("PITKO" & ";" & tmp_stimul_idx & ";" & "NULL" & ";" & "NaN")
|
|
exp_stat_ciklus_real = exp_stat_ciklus_real + 1
|
|
LabelPre8.BackColor = Color.Green
|
|
AparaturaNastavPitko(tmp_stimul_idx)
|
|
Pauza(3)
|
|
LabelPre8.BackColor = Color.Background
|
|
ExpLogWrite("CAS_PITI" & ";" & (konfigurace_experiment_cas_piti) & ";" & "NULL" & ";" & "NaN")
|
|
Label36.BackColor = Color.Green
|
|
PauzaMilis(konfigurace_experiment_cas_piti)
|
|
Label36.BackColor = Color.Background
|
|
ENDIF
|
|
exp_reset:
|
|
ExpLogWrite("RESET" & ";" & "NaN" & ";" & "NULL" & ";" & "NaN")
|
|
Label20.BackColor = Color.Green
|
|
|
|
IF konfigurace_experiment_vypni_stimul_prereset = TRUE THEN
|
|
ChkZhasniStimulPreReset.BackColor = Color.Green
|
|
ExpLogWrite("ZHASNUTI_STIMULU" & ";" & "NaN" & ";" & "NULL" & ";" & "NaN")
|
|
Form1.stimul("/ratbox/stimuls/clear.bmp")
|
|
ExperimentPicture.Picture = Picture.Load("/ratbox/stimuls/clear.bmp")
|
|
ChkZhasniStimulPreReset.BackColor = Color.Background
|
|
ENDIF
|
|
|
|
' RESET APARATURY
|
|
|
|
AparaturaReset()
|
|
Pauza(3)
|
|
Label20.BackColor = Color.Background
|
|
IF konfigurace_experiment_cas_dalsi_ciklus > 0 THEN
|
|
ExpLogWrite("CAS_DALSI_CYKLUS" & ";" & (konfigurace_experiment_cas_dalsi_ciklus) & ";" & "NULL" & ";" & "NaN")
|
|
Label25.BackColor = Color.Green
|
|
PauzaMilis(konfigurace_experiment_cas_dalsi_ciklus)
|
|
Label25.BackColor = Color.Background
|
|
ENDIF
|
|
' ExpLogWrite("EXPERIMENT_KONEC_CYKLU: " & tmp_cyklus)
|
|
exp_stat_ciklus = exp_stat_ciklus + 1
|
|
tmp_cyklus = tmp_cyklus + 1
|
|
WEND
|
|
Form1.stimul("/ratbox/stimuls/clear.bmp")
|
|
ExperimentPicture.Picture = Picture.Load("/ratbox/stimuls/clear.bmp")
|
|
ExpLogWrite("KONEC" & ";" & "NaN" & ";" & "NULL" & ";" & "NaN")
|
|
SysLogWrite("EXPERIMENT_KONEC")
|
|
ExpStatWrite()
|
|
TimerExperimentMils.Enabled = FALSE
|
|
ENDIF
|
|
|
|
END
|
|
|
|
PUBLIC SUB TimeoutCountingStop()
|
|
TmrTimeout.Enabled = FALSE
|
|
buffer_timeout = 0
|
|
END
|
|
|
|
PUBLIC SUB TimeoutCountingStart()
|
|
buffer_timeout = 0
|
|
TmrTimeout.Enabled = TRUE
|
|
END
|
|
|
|
PUBLIC SUB TmrTimeout_Timer()
|
|
IF (buffer_timeout + 1) > konfigurace_timeout THEN TmrTimeout.Enabled = FALSE
|
|
buffer_timeout = buffer_timeout + 1
|
|
TxtInfoTimeout.Text = Str(buffer_timeout)
|
|
PosliInfo()
|
|
WAIT
|
|
END
|
|
|
|
PUBLIC SUB BtnPreStop_Click()
|
|
STOP_State = TRUE
|
|
SysLogWrite("UZIVATELSKE_UKONCENI_CYKLU")
|
|
END
|
|
|
|
PUBLIC SUB BtnExpFull_Click()
|
|
IF mod_idx = 0 THEN BtnMod_Click()
|
|
FMain.Visible = FALSE
|
|
Form1.FullScreen = TRUE
|
|
Form1.Visible = TRUE
|
|
Form1.stimul("/ratbox/stimuls/clear.bmp")
|
|
END
|
|
|
|
PUBLIC SUB BtnKonfUloz_Click()
|
|
DIM i AS Integer
|
|
DIM kontrola AS Boolean
|
|
kontrola = FALSE
|
|
IF Len(TxtKonfigNazev.Text) = 0 THEN
|
|
ErrLogWrite("Ukladani_profilu_nulova_velikost_nazvu")
|
|
Message("Zadejte nazev profilu 1 - 16 znaku, pouze cisla a pismena....")
|
|
GOTO Konec
|
|
ENDIF
|
|
IF Len(TxtKonfigNazev.Text) > 16 THEN
|
|
ErrLogWrite("Ukladani_profilu_moc_dlouhy_nazev")
|
|
ErrLogWrite("Ukladani_profilu_nazev: " & TxtKonfigNazev.Text)
|
|
ErrLogWrite("Ukladani_profilu_nazev_delka: " & Str(Len(TxtKonfigNazev.Text)))
|
|
Message("Moc dlouhy nazev profilu. Pouze 1 - 16 znaku, pouze cisla a pismena....")
|
|
TxtKonfigNazev.text = ""
|
|
GOTO Konec
|
|
ENDIF
|
|
kontrola = TRUE
|
|
FOR i = 0 TO Len(TxtKonfigNazev.Text) - 1
|
|
IF ((Asc(Mid(TxtKonfigNazev.Text, i + 1, 1)) < 58) AND (Asc(Mid(TxtKonfigNazev.Text, i + 1, 1)) > 47)) OR ((Asc(Mid(TxtKonfigNazev.Text, i + 1, 1)) < 91) AND (Asc(Mid(TxtKonfigNazev.Text, i + 1, 1)) > 64)) OR ((Asc(Mid(TxtKonfigNazev.Text, i + 1, 1)) < 123) AND (Asc(Mid(TxtKonfigNazev.Text, i + 1, 1)) > 96)) THEN
|
|
ELSE
|
|
kontrola = FALSE
|
|
ENDIF
|
|
NEXT
|
|
IF kontrola = FALSE THEN
|
|
ErrLogWrite("Ukladani_profilu_nepovoleny_znak_nazev_: " & TxtKonfigNazev.Text)
|
|
FOR i = 0 TO Len(TxtKonfigNazev.Text) - 1
|
|
IF ((Asc(Mid(TxtKonfigNazev.Text, i + 1, 1)) < 58) AND (Asc(Mid(TxtKonfigNazev.Text, i + 1, 1)) > 47)) OR ((Asc(Mid(TxtKonfigNazev.Text, i + 1, 1)) < 91) AND (Asc(Mid(TxtKonfigNazev.Text, i + 1, 1)) > 64)) OR ((Asc(Mid(TxtKonfigNazev.Text, i + 1, 1)) < 123) AND (Asc(Mid(TxtKonfigNazev.Text, i + 1, 1)) > 96)) THEN
|
|
ELSE
|
|
ErrLogWrite("Znak-KO ASCII CODE: " & Mid(TxtKonfigNazev.Text, i + 1, 1) & " " & Asc(Mid(TxtKonfigNazev.Text, i + 1, 1)) & " POZICE: " & i + 1)
|
|
ENDIF
|
|
NEXT
|
|
Message("Nazev_profilu_obsahuje_nepovoleny_znak.Pouze 1 - 16 znaku, pouze cisla a pismena....")
|
|
GOTO Konec
|
|
ENDIF
|
|
SysLogWrite("Ukladani_uzivatelskeho_profilu: " & TxtKonfigNazev.Text)
|
|
UlozUserCfg(TxtKonfigNazev.Text)
|
|
CfgList()
|
|
Konec:
|
|
CfgList()
|
|
TxtKonfigNazev.Text = ""
|
|
END
|
|
|
|
SUB CfgList()
|
|
DIM File AS String
|
|
ListBox1.Clear
|
|
SysLogWrite("Obnoveni_seznamu_profilu...")
|
|
FOR EACH File IN Dir("/ratbox/konfigurace/", "*.rbconf")
|
|
ListBox1.Add(Mid(File, 1, Len(File) - 7))
|
|
NEXT
|
|
END
|
|
|
|
PUBLIC SUB Button1_Click()
|
|
CfgList()
|
|
END
|
|
|
|
PUBLIC SUB ListBox1_Select()
|
|
TxtKonfigNazev.Text = ListBox1.Text
|
|
END
|
|
|
|
PUBLIC SUB BtnSmazKonfiguraci_Click()
|
|
DIM CfgName AS String
|
|
CfgName = TxtKonfigNazev.Text
|
|
SysLogWrite("Smazani_uzivatelskeho_profilu: " & CfgName)
|
|
IF Exist("/ratbox/konfigurace/" & CfgName & ".rbconf") = FALSE THEN
|
|
Message("Profil: " & CfgName & " neexistuje a proto nemuze byt smazan....")
|
|
ErrLogWrite("SMAZANI_PROFILU: CHYBA - PROFIL NEEXISTUJE")
|
|
CfgList()
|
|
ELSE
|
|
IF Message.Warning("Profil: " & CfgName & " bude nenavratne smazan. Opravdu SMAZAT ?", "NE", "ANO") = 2 THEN
|
|
SHELL ("rm /ratbox/konfigurace/" & CfgName & ".rbconf")
|
|
FINALLY
|
|
IF ERROR THEN
|
|
ErrLogWrite("Chyba pri mazani profilu: " & "/ratbox/konfigurace/" & CfgName & ".rbconf " & Error.Text)
|
|
Message("Chyba pri mazani profilu: " & CfgName)
|
|
ENDIF
|
|
CfgList()
|
|
Message("Profil: " & CfgName & " byl uspesne smazan....")
|
|
SysLogWrite("Profil: " & CfgName & "smazan...")
|
|
ELSE
|
|
SysLogWrite("Smazani_profilu: " & CfgName & " stornovano..")
|
|
ENDIF
|
|
ENDIF
|
|
CfgList()
|
|
TxtKonfigNazev.text = ""
|
|
END
|
|
|
|
PUBLIC SUB BtnNahrajKonfiguraci_Click()
|
|
IF Len(TxtKonfigNazev.text) = 0 THEN
|
|
Message("Vyberte profil - klikem v seznamu vedle")
|
|
GOTO nahrajkonec
|
|
ENDIF
|
|
IF Exist("/ratbox/konfigurace/" & TxtKonfigNazev.Text & ".rbconf") = FALSE THEN
|
|
Message("Soubor profilu: " & TxtKonfigNazev.Text & " nenalezen")
|
|
TxtKonfigNazev.Text = ""
|
|
GOTO nahrajkonec
|
|
ELSE
|
|
UserCfgLoad(TxtKonfigNazev.Text)
|
|
ENDIF
|
|
nahrajkonec:
|
|
CfgList()
|
|
TxtKonfigNazev.Text = ""
|
|
END
|
|
|
|
SUB UserCfgLoad(CfgProfil AS String)
|
|
DIM linc AS Integer
|
|
DIM lin AS String
|
|
DIM arr_strings AS String[]
|
|
SysLogWrite("OBNOVENI_PARAMETRU_Z_PROFILU: " & CfgProfil)
|
|
IF Exist("/ratbox/konfigurace/" & CfgProfil & ".rbconf") = FALSE THEN
|
|
Message("Soubor profilu: " & "/ratbox/konfigurace/" & CfgProfil & ".rbconf" & " je neplatny !!")
|
|
ENDIF
|
|
arr_strings = Split(File.LOAD("/ratbox/konfigurace/" & CfgProfil & ".rbconf"), "\n")
|
|
FINALLY
|
|
IF ERROR THEN
|
|
ErrLogWrite("Chyba pri nahravani profilu: " & "/ratbox/konfigurace/" & CfgProfil & ".rbconf " & Error.Text)
|
|
Message("Chyba pri nahravani profilu: " & "/ratbox/konfigurace/" & CfgProfil & ".rbconf")
|
|
ENDIF
|
|
FOR EACH lin IN arr_strings
|
|
lin = arr_strings[linc]
|
|
IF linc = 1 THEN TxtCommPort.text = lin
|
|
IF linc = 2 THEN TxtPocetCiklu.Text = lin
|
|
IF linc = 3 THEN TxtTimeout.Text = lin
|
|
IF (linc = 4) AND (lin = "True") THEN ChkTimeout.Value = TRUE
|
|
IF (linc = 4) AND (lin = "False") THEN ChkTimeout.Value = FALSE
|
|
IF linc = 5 THEN TxtPreCasPiti.Text = lin
|
|
IF linc = 6 THEN TxtPrePauza.Text = lin
|
|
IF (linc = 7) AND (lin = "True") THEN ChkPrePauza.Value = TRUE
|
|
IF (linc = 7) AND (lin = "False") THEN ChkPrePauza.Value = FALSE
|
|
IF (linc = 8) AND (lin = "True") THEN ChkPreNeopakovat.Value = TRUE
|
|
IF (linc = 8) AND (lin = "False") THEN ChkPreNeopakovat.Value = FALSE
|
|
IF (linc = 9) AND (lin = "True") THEN ChkExpNahoda.Value = TRUE
|
|
IF (linc = 9) AND (lin = "False") THEN ChkExpNahoda.Value = FALSE
|
|
IF (linc = 10) AND (lin = "True") THEN ChkExpNeopakovat.Value = TRUE
|
|
IF (linc = 10) AND (lin = "False") THEN ChkExpNeopakovat.Value = FALSE
|
|
IF linc = 11 THEN ExperimentTxtTime0.Text = lin
|
|
IF linc = 12 THEN ExperimentTxtTime3.Text = lin
|
|
IF linc = 13 THEN ExperimentTxtTime1.Text = lin
|
|
IF linc = 14 THEN ExperimentTxtTime2.Text = lin
|
|
IF (linc = 15) AND (lin = "True") THEN ChkZhasniStimul.Value = TRUE
|
|
IF (linc = 15) AND (lin = "False") THEN ChkZhasniStimul.Value = FALSE
|
|
IF (linc = 16) AND (lin = "True") THEN ChkVypStimulPauza.Value = TRUE
|
|
IF (linc = 16) AND (lin = "False") THEN ChkVypStimulPauza.Value = FALSE
|
|
IF (linc = 17) AND (lin = "True") THEN ExpChkEnableTiming.Value = TRUE
|
|
IF (linc = 17) AND (lin = "False") THEN ExpChkEnableTiming.Value = FALSE
|
|
IF (linc = 18) AND (lin = "True") THEN ExpChkSTime.Value = TRUE
|
|
IF (linc = 18) AND (lin = "False") THEN ExpChkSTime.Value = FALSE
|
|
IF (linc = 19) AND (lin = "True") THEN ExpChkSTime2.Value = TRUE
|
|
IF (linc = 19) AND (lin = "False") THEN ExpChkSTime2.Value = FALSE
|
|
IF (linc = 20) AND (lin = "True") THEN ExpChkSTime3.Value = TRUE
|
|
IF (linc = 20) AND (lin = "False") THEN ExpChkSTime3.Value = FALSE
|
|
IF (linc = 21) AND (lin = "True") THEN ExpChkSTime4.Value = TRUE
|
|
IF (linc = 21) AND (lin = "False") THEN ExpChkSTime4.Value = FALSE
|
|
IF (linc = 22) AND (lin = "True") THEN ExpChkSTime5.Value = TRUE
|
|
IF (linc = 22) AND (lin = "False") THEN ExpChkSTime5.Value = FALSE
|
|
IF (linc = 23) AND (lin = "True") THEN ExpChkSTime6.Value = TRUE
|
|
IF (linc = 23) AND (lin = "False") THEN ExpChkSTime6.Value = FALSE
|
|
IF linc = 24 THEN ExpTxtS1Time.Text = lin
|
|
IF linc = 25 THEN ExpTxtS2Time.Text = lin
|
|
IF linc = 26 THEN ExpTxtS3Time.Text = lin
|
|
IF linc = 27 THEN ExpTxtS4Time.Text = lin
|
|
IF linc = 28 THEN ExpTxtS5Time.Text = lin
|
|
IF linc = 29 THEN ExpTxtS6Time.Text = lin
|
|
IF linc = 30 THEN mod_idx = Val(lin)
|
|
IF (linc = 30) AND (lin = "0") THEN BtnMod.Text = "PreLearning"
|
|
IF (linc = 30) AND (lin = "1") THEN BtnMod.Text = "Experiment"
|
|
IF (linc = 31) AND (lin = "True") THEN ChkTimeoutOpakReset.Value = TRUE
|
|
IF (linc = 31) AND (lin = "False") THEN ChkTimeoutOpakReset.Value = FALSE
|
|
IF (linc = 32) AND (lin = "True") THEN ChkZhasniStimulPreReset.Value = TRUE
|
|
IF (linc = 32) AND (lin = "False") THEN ChkZhasniStimulPreReset.Value = FALSE
|
|
IF (linc = 33) AND (lin = "True") THEN ChkZhasniStimulPoAkci.Value = TRUE
|
|
IF (linc = 33) AND (lin = "False") THEN ChkZhasniStimulPoAkci.Value = FALSE
|
|
linc = linc + 1
|
|
NEXT
|
|
SysLogWrite("PARAMETRY_PROFILU_NASTAVENY")
|
|
END
|
|
|
|
PUBLIC SUB PosliInfo()
|
|
Form1.cyklusinfo("Cyklus:" & Str(tmp_cyklus + 1) & "/" & Str(konfigurace_pocet_cyklu) & " PauzaTMR:" & Str(buffer_casovac) & " TimeoutTMR:" & Str(buffer_timeout))
|
|
END
|
|
|
|
|
|
PUBLIC SUB remstart()
|
|
BtnPreStart_Click()
|
|
END
|
|
|
|
PUBLIC SUB TimerExperimentMils_Timer()
|
|
tmp_mils = tmp_mils + 1
|
|
END
|
|
|
|
PUBLIC FUNCTION TestNastaveniExpCasu() AS Boolean
|
|
DIM test AS Boolean
|
|
test = TRUE
|
|
IF Val(ExpTxtS1Time.Text) < 10 THEN test = FALSE
|
|
IF Val(ExpTxtS2Time.Text) < 10 THEN test = FALSE
|
|
IF Val(ExpTxtS3Time.Text) < 10 THEN test = FALSE
|
|
IF Val(ExpTxtS4Time.Text) < 10 THEN test = FALSE
|
|
IF Val(ExpTxtS5Time.Text) < 10 THEN test = FALSE
|
|
IF Val(ExpTxtS6Time.Text) < 10 THEN test = FALSE
|
|
IF Val(ExperimentTxtTime0.Text) < 10 THEN test = FALSE
|
|
IF Val(ExperimentTxtTime1.Text) < 10 THEN test = FALSE
|
|
IF Val(ExperimentTxtTime2.Text) < 10 THEN test = FALSE
|
|
IF Val(ExperimentTxtTime3.Text) < 10 THEN test = FALSE
|
|
IF test = TRUE THEN
|
|
RETURN TRUE
|
|
ELSE
|
|
RETURN FALSE
|
|
ENDIF
|
|
END
|
|
|
|
PUBLIC SUB ExperimentTxtTime2_KeyPress()
|
|
END
|
|
|
|
PUBLIC SUB TimerMilis_Timer()
|
|
buffer_casovac_milis = buffer_casovac_milis + 1
|
|
TxtInfoCasovacMilis.text = Str(buffer_casovac_milis) * 10
|
|
PosliInfo()
|
|
WAIT
|
|
END
|