Aggiunta modifica simulatore x poweroff e slow...
This commit is contained in:
@@ -31,10 +31,16 @@ BLINK_FILT=0
|
||||
;PZCOUNT_MODE=STD.[PAR/MEM].info|BIT.indice
|
||||
PZCOUNT_MODE=BIT
|
||||
; per il simulatore: 50|1 = WAIT 50, DURATION 1 con riferimento al PERIODO base (PER_BASE in ms, default 1 secondo)
|
||||
PER_BASE=1200
|
||||
PER_BASE=1200
|
||||
SIM_PZCNT=5|1
|
||||
SIM_ALARM=1000|20
|
||||
SIM_ALARM=1000|20
|
||||
SIM_MANU=50|6
|
||||
; indica gestione e simulazione bit 5 --> slow/emergenza
|
||||
SIM_SLOW=500|20
|
||||
; indica simulazione delle funzionalità power ON/ OFF
|
||||
SIM_POW_ON_OFF=true
|
||||
SIM_MIN_WU_CD=20
|
||||
SIM_POFF=440
|
||||
|
||||
[BRANCH]
|
||||
NAME=master
|
||||
@@ -34,7 +34,13 @@ PZCOUNT_MODE=BIT
|
||||
PER_BASE=1500
|
||||
SIM_PZCNT=8|1
|
||||
SIM_ALARM=900|15
|
||||
SIM_MANU=40|5
|
||||
SIM_MANU=40|5
|
||||
; indica gestione e simulazione bit 5 --> slow/emergenza
|
||||
SIM_SLOW=500|20
|
||||
; indica simulazione delle funzionalità power ON/ OFF
|
||||
SIM_POW_ON_OFF=true
|
||||
SIM_MIN_WU_CD=20
|
||||
SIM_POFF=440
|
||||
|
||||
[BRANCH]
|
||||
NAME=master
|
||||
@@ -31,12 +31,18 @@ BLINK_FILT=0
|
||||
;PZCOUNT_MODE=STD.[PAR/MEM].info|BIT.indice
|
||||
PZCOUNT_MODE=BIT
|
||||
; per il simulatore: 50|1 = WAIT 50, DURATION 1 con riferimento al PERIODO base (PER_BASE in ms, default 1 secondo)
|
||||
PER_BASE=800
|
||||
PER_BASE=800
|
||||
SIM_PZCNT=10|2
|
||||
SIM_ALARM=1000|20
|
||||
SIM_MANU=50|6
|
||||
; 1 = indica che la macchina è multi --> allo scadere del contapezzo gestisce ANCHE il giro tavola sui bit relativi
|
||||
SIM_MULTI=1
|
||||
SIM_MULTI=1
|
||||
; indica gestione e simulazione bit 5 --> slow/emergenza
|
||||
SIM_SLOW=500|20
|
||||
; indica simulazione delle funzionalità power ON/ OFF
|
||||
SIM_POW_ON_OFF=true
|
||||
SIM_MIN_WU_CD=20
|
||||
SIM_POFF=440
|
||||
|
||||
|
||||
[BRANCH]
|
||||
|
||||
+139
-73
@@ -37,6 +37,18 @@ namespace IOB_WIN
|
||||
/// </summary>
|
||||
protected int periodoMSec = 1000;
|
||||
/// <summary>
|
||||
/// BOOL: indica se simulare powerOn/Off (bit 0 e 1) compresi WarmUp e CoolDown
|
||||
/// </summary>
|
||||
protected bool simPowerOnOff;
|
||||
/// <summary>
|
||||
/// valore in minuti della durata dei cicli PowerOff / WarmUp
|
||||
/// </summary>
|
||||
protected int min_WU_CD = 20;
|
||||
/// <summary>
|
||||
/// valore in minuti della durata dei cicli PowerOff / WarmUp
|
||||
/// </summary>
|
||||
protected int min_POFF = 440;
|
||||
/// <summary>
|
||||
/// Parametri simulazione oscillazione bit 2
|
||||
/// </summary>
|
||||
protected simPar bit2;
|
||||
@@ -49,6 +61,10 @@ namespace IOB_WIN
|
||||
/// </summary>
|
||||
protected simPar bit4;
|
||||
/// <summary>
|
||||
/// Parametri simulazione oscillazione bit 5
|
||||
/// </summary>
|
||||
protected simPar bit5;
|
||||
/// <summary>
|
||||
/// ultimo controllo decremento eventi
|
||||
/// </summary>
|
||||
protected DateTime lastEvCheck;
|
||||
@@ -75,9 +91,14 @@ namespace IOB_WIN
|
||||
int noise = rnd.Next(1, periodoMSec / 5);
|
||||
periodoMSec += noise - (periodoMSec / 10);
|
||||
}
|
||||
simPowerOnOff = false;
|
||||
bool.TryParse(cIobConf.optPar["SIM_POW_ON_OFF"], out simPowerOnOff);
|
||||
int.TryParse(cIobConf.optPar["SIM_MIN_WU_CD"], out min_WU_CD);
|
||||
int.TryParse(cIobConf.optPar["SIM_POFF"], out min_POFF);
|
||||
bit2 = setupSimPar("SIM_PZCNT");
|
||||
bit3 = setupSimPar("SIM_ALARM");
|
||||
bit4 = setupSimPar("SIM_MANU");
|
||||
bit4 = setupSimPar("SIM_SLOW");
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
@@ -194,92 +215,137 @@ namespace IOB_WIN
|
||||
// di base macchina in RUN
|
||||
B_input = 3;
|
||||
|
||||
if (bit3.wait <= 0)
|
||||
/*----------------------------------------
|
||||
* Simulazione segnali con priorità:
|
||||
* - Power ON / OFF (bit0/1)
|
||||
* - ALLARMI
|
||||
* - SLOW
|
||||
* - MANUALE
|
||||
* - contapezzi
|
||||
*
|
||||
*----------------------------------------*/
|
||||
|
||||
// se simulo PowerOn/Off --> spegnimento con CoolDown e accensione con WarmUp.. avvio dopo le 22...
|
||||
if (simPowerOnOff)
|
||||
{
|
||||
// segnalo BIT
|
||||
B_input += (1 << 3);
|
||||
// decremento duration
|
||||
bit3.duration--;
|
||||
// controllo se sia scaduta la duration... in quel caso reset...
|
||||
if (bit3.duration <= 0)
|
||||
DateTime adesso = DateTime.Now;
|
||||
// se l'orario è dopo le 22 --> NO RUN...
|
||||
if (adesso.Hour >= 22 || adesso.Hour <= 6)
|
||||
{
|
||||
bit3 = setupSimPar("SIM_ALARM");
|
||||
}
|
||||
}
|
||||
else if (bit4.wait <= 0)
|
||||
{
|
||||
// segnalo BIT
|
||||
B_input += (1 << 4);
|
||||
// decremento duration
|
||||
bit4.duration--;
|
||||
// controllo se sia scaduta la duration... in quel caso reset...
|
||||
if (bit4.duration <= 0)
|
||||
{
|
||||
bit4 = setupSimPar("SIM_MANU");
|
||||
}
|
||||
}
|
||||
else if (bit2.wait <= 0)
|
||||
{
|
||||
// se multipallet --> cP a zero!
|
||||
if (isMulti)
|
||||
{
|
||||
cP = 0;
|
||||
}
|
||||
// se NON Multi fa contapezzi...
|
||||
else
|
||||
{
|
||||
// segnalo BIT
|
||||
B_input += (1 << 2);
|
||||
}
|
||||
// decremento duration
|
||||
bit2.duration--;
|
||||
// controllo se sia scaduta la duration... in quel caso reset...
|
||||
if (bit2.duration <= 0)
|
||||
{
|
||||
bit2 = setupSimPar("SIM_PZCNT");
|
||||
// salvo nuovo contapezzi (incremento di 1...)
|
||||
contapezzi++;
|
||||
sendContapezzi = true;
|
||||
// registro contapezzi
|
||||
lgInfo(string.Format("Contapezzi SIMULAZIONE: {0}", contapezzi));
|
||||
}
|
||||
if (sendContapezzi)
|
||||
{
|
||||
// controllo se ALMENO sia pingabile il server
|
||||
if (checkServerAlive)
|
||||
// se prima mezz'ora è ancora accesa NON in run...
|
||||
if (adesso.AddMinutes(-min_WU_CD).Hour < 22 || adesso.AddMinutes(min_WU_CD).Hour > 6)
|
||||
{
|
||||
// invio a server contapezzi (aggiornato)
|
||||
string retVal = utils.callUrl(urlSetPzCount + contapezzi.ToString());
|
||||
// verifica se tutto OK
|
||||
if (retVal != "OK")
|
||||
{
|
||||
// errore salvataggio contapezzi
|
||||
lgInfo(string.Format("Errore salvataggio Contapezzi SIMULAZIONE {0} | Errore salvataggio: {1}", contapezzi, retVal));
|
||||
}
|
||||
// resetto timer...
|
||||
lastPzCountSend = DateTime.Now;
|
||||
B_input = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
B_input = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// se multi gestisco il bit delel tavole...
|
||||
if (isMulti)
|
||||
// questa aprte la processo SOLO SE sono in run --> B_input == 3
|
||||
if (B_input == 3)
|
||||
{
|
||||
// se sono in fase di fronte d'usita (invio contapezzi) INVERTO nP...
|
||||
if (sendContapezzi)
|
||||
if (bit3.wait <= 0)
|
||||
{
|
||||
nP = nP == 1 ? 2 : 1;
|
||||
// assegno a cP il valore nP...
|
||||
cP = nP;
|
||||
// segnalo BIT
|
||||
B_input += (1 << 3);
|
||||
// decremento duration
|
||||
bit3.duration--;
|
||||
// controllo se sia scaduta la duration... in quel caso reset...
|
||||
if (bit3.duration <= 0)
|
||||
{
|
||||
bit3 = setupSimPar("SIM_ALARM");
|
||||
}
|
||||
}
|
||||
// se cP > 0 --> segnalo bit tavola...
|
||||
if (cP == 1)
|
||||
else if (bit4.wait <= 0)
|
||||
{
|
||||
B_input += (1 << 6);
|
||||
// segnalo BIT
|
||||
B_input += (1 << 4);
|
||||
// decremento duration
|
||||
bit4.duration--;
|
||||
// controllo se sia scaduta la duration... in quel caso reset...
|
||||
if (bit4.duration <= 0)
|
||||
{
|
||||
bit4 = setupSimPar("SIM_MANU");
|
||||
}
|
||||
}
|
||||
else if (cP == 2)
|
||||
else if (bit5.wait <= 0)
|
||||
{
|
||||
B_input += (1 << 7);
|
||||
// segnalo BIT
|
||||
B_input += (1 << 5);
|
||||
// decremento duration
|
||||
bit5.duration--;
|
||||
// controllo se sia scaduta la duration... in quel caso reset...
|
||||
if (bit5.duration <= 0)
|
||||
{
|
||||
bit5 = setupSimPar("SIM_SLOW");
|
||||
}
|
||||
}
|
||||
else if (bit2.wait <= 0)
|
||||
{
|
||||
// se multipallet --> cP a zero!
|
||||
if (isMulti)
|
||||
{
|
||||
cP = 0;
|
||||
}
|
||||
// se NON Multi fa contapezzi...
|
||||
else
|
||||
{
|
||||
// segnalo BIT
|
||||
B_input += (1 << 2);
|
||||
}
|
||||
// decremento duration
|
||||
bit2.duration--;
|
||||
// controllo se sia scaduta la duration... in quel caso reset...
|
||||
if (bit2.duration <= 0)
|
||||
{
|
||||
bit2 = setupSimPar("SIM_PZCNT");
|
||||
// salvo nuovo contapezzi (incremento di 1...)
|
||||
contapezzi++;
|
||||
sendContapezzi = true;
|
||||
// registro contapezzi
|
||||
lgInfo(string.Format("Contapezzi SIMULAZIONE: {0}", contapezzi));
|
||||
}
|
||||
if (sendContapezzi)
|
||||
{
|
||||
// controllo se ALMENO sia pingabile il server
|
||||
if (checkServerAlive)
|
||||
{
|
||||
// invio a server contapezzi (aggiornato)
|
||||
string retVal = utils.callUrl(urlSetPzCount + contapezzi.ToString());
|
||||
// verifica se tutto OK
|
||||
if (retVal != "OK")
|
||||
{
|
||||
// errore salvataggio contapezzi
|
||||
lgInfo(string.Format("Errore salvataggio Contapezzi SIMULAZIONE {0} | Errore salvataggio: {1}", contapezzi, retVal));
|
||||
}
|
||||
// resetto timer...
|
||||
lastPzCountSend = DateTime.Now;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// se multi gestisco il bit delel tavole...
|
||||
if (isMulti)
|
||||
{
|
||||
// se sono in fase di fronte d'usita (invio contapezzi) INVERTO nP...
|
||||
if (sendContapezzi)
|
||||
{
|
||||
nP = nP == 1 ? 2 : 1;
|
||||
// assegno a cP il valore nP...
|
||||
cP = nP;
|
||||
}
|
||||
// se cP > 0 --> segnalo bit tavola...
|
||||
if (cP == 1)
|
||||
{
|
||||
B_input += (1 << 6);
|
||||
}
|
||||
else if (cP == 2)
|
||||
{
|
||||
B_input += (1 << 7);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Vendored
+1
-1
@@ -16,7 +16,7 @@ pipeline {
|
||||
|
||||
/* calcolo numero versione... diverso x branch MASTER/DEVELOP */
|
||||
script {
|
||||
withEnv(['NEXT_BUILD_NUMBER=357']) {
|
||||
withEnv(['NEXT_BUILD_NUMBER=358']) {
|
||||
// env.versionNumber = VersionNumber(versionNumberString : '2.2.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2006-01-01', skipFailedBuilds: true)
|
||||
env.versionNumber = VersionNumber(versionNumberString : '2.2.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2006-01-01', skipFailedBuilds: true, overrideBuildsAllTime: '${NEXT_BUILD_NUMBER}')
|
||||
env.APP_NAME = 'MAPO-IOB-WIN'
|
||||
|
||||
Reference in New Issue
Block a user