v_1.1.30:

- fix tipi double vs uint x distanze e tempi assi
- fix controllo tempo impiego assi x ESA (OVVIAMENTE sottostimato... è a metri e al cambio del valore aggiunge tempo...)
This commit is contained in:
Samuele E. Locatelli
2016-08-26 11:37:07 +02:00
parent 663db46b3c
commit 84c2528f63
6 changed files with 309 additions and 1066 deletions
+15 -1
View File
@@ -167,14 +167,28 @@ namespace MTC_Adapter
needSave = procGiriTotUnOp(needSave);
needSave = procNumCU(needSave);
// per ESA calcolo a mano se ci sia stato impiego assi... salvo le istantanee mov precedenti...
double precVal=0;
DateTime adesso = DateTime.Now;
TimeSpan accumTime = adesso.Subtract(lastChekAccumTimeAxis);
// spostamento totale assi!
for (int i = 0; i < 3; i++)
{
precVal = istDistMovAssi[i];
// primo è metri, secondo km (moltiplico x 1000)
istDistMovAssi[i] = ncDevice.PLC_MemoryAreaEOK[8 + 2 * i] + ncDevice.PLC_MemoryAreaEOK[9 + 2 * i] * 1000;
// verifico SE devo aggiungere tempo lavoro sui singoli assi (se si sono spostati...) -- è a maglie LARGHE poiché leggiamo lo "scatto ogni metro" x cui se campiono velocemente ma assi muovono lenti prendo MENO tempo di movimento del reale...
if (precVal != istDistMovAssi[i])
{
istAccTimeAssi[i] += accumTime.TotalHours;
}
}
needSave = procMovTotAssi(needSave);
// salvo valore lastChekAccumTimeAxis
lastChekAccumTimeAxis = adesso;
needSave = procMovTotAssi(needSave);
needSave = procAccTimeAssi(needSave);
needSave = procPartId(needSave);
needSave = procPzProd(needSave);
needSave = procNumInvAssi(needSave);
+14 -36
View File
@@ -585,11 +585,11 @@ namespace MTC_Adapter
/// <summary>
/// Vettore ATTUALE dei contatori del movimento degli assi
/// </summary>
public uint[] contDistMovAssi;
public double[] contDistMovAssi;
/// <summary>
/// Vettore ATTUALE dei contatori del tempo cumulato degli assi
/// </summary>
public uint[] contAccTimeAssi;
public double[] contAccTimeAssi;
/// <summary>
/// Vettore ATTUALE dei contatori del num inv degli assi
/// </summary>
@@ -615,10 +615,6 @@ namespace MTC_Adapter
/// </summary>
public uint[] currLubroCount;
/// <summary>
/// Vettore ATTUALE dei contatori del tempo cumulato lavoro degli assi (h)
/// </summary>
public double[] contAxisAccumTime;
/// <summary>
/// Vettore ATTUALE dei contatori del numero cambi utensili x UnOp
/// </summary>
public uint[] currNumCambiUt;
@@ -639,11 +635,11 @@ namespace MTC_Adapter
/// <summary>
/// Vettore ISTANTANEO dei contatori del movimento degli assi
/// </summary>
public uint[] istDistMovAssi;
public double[] istDistMovAssi;
/// <summary>
/// Vettore ISTANTANEO dei contatori del tempo cumulato degli assi
/// </summary>
public uint[] istAccTimeAssi;
public double[] istAccTimeAssi;
/// <summary>
/// Vettore ISTANTANEO dei contatori del num inv degli assi
/// </summary>
@@ -669,10 +665,6 @@ namespace MTC_Adapter
/// </summary>
public uint[] istLubroCount;
/// <summary>
/// Vettore ISTANTANEO dei contatori del tempo cumulato lavoro degli assi (h)
/// </summary>
public double[] istAxisAccumTime;
/// <summary>
/// Vettore ISTANTANEO dei contatori del numero cambi utensili x UnOp
/// </summary>
public uint[] istNumCambiUt;
@@ -1311,15 +1303,13 @@ namespace MTC_Adapter
contGiriElettrom[i] = contTotGiri;
currNumCambiUt[i] = contNumCU;
}
// imposto num assi...
contDistMovAssi = new uint[currAdpConf.nAxis];
istDistMovAssi = new uint[currAdpConf.nAxis];
// imposto num assi e leggo valori salvati...
contDistMovAssi = new double[currAdpConf.nAxis];
istDistMovAssi = new double[currAdpConf.nAxis];
contNumInvAssi = new uint[currAdpConf.nAxis];
istAccTimeAssi = new uint[currAdpConf.nAxis];
contAccTimeAssi = new uint[currAdpConf.nAxis];
istAccTimeAssi = new double[currAdpConf.nAxis];
contAccTimeAssi = new double[currAdpConf.nAxis];
istNumInvAssi = new uint[currAdpConf.nAxis];
contAxisAccumTime = new double[currAdpConf.nAxis];
istAxisAccumTime = new double[currAdpConf.nAxis];
lastChekAccumTimeAxis = DateTime.Now;
for (int i = 0; i < currAdpConf.nAxis; i++)
{
@@ -1332,7 +1322,7 @@ namespace MTC_Adapter
// recupero valori...
contDistMovAssi[i] = Convert.ToUInt32(riContDist.Value);
contNumInvAssi[i] = Convert.ToUInt32(riNumInv.Value);
contAxisAccumTime[i] = Convert.ToDouble(riAccTime.Value);
contAccTimeAssi[i] = Convert.ToDouble(riAccTime.Value);
vettAxis[i].mAxAlarmCNC.Normal();
vettAxis[i].mAxAlarmPLC.Normal();
@@ -2341,7 +2331,7 @@ namespace MTC_Adapter
{
for (int i = 0; i < currAdpConf.nAxis; i++)
{
uint delta = 0;
double delta = 0;
// controllo valore riferimento...
if (istDistMovAssi[i] > contDistMovAssi[i])
{
@@ -2350,23 +2340,11 @@ namespace MTC_Adapter
needSave = true;
}
// processo comunque sempre...
uint contTot = updateValUIntByIncr(i, delta, "Axis_{0:00}_DistDone");
double contTot = updateValDoubleByIncr(i, delta, "Axis_{0:00}_DistDone");
// passo valore totale all'adapter
vettAxis[i].mAxDistDone.Value = contTot.ToString();
vettAxis[i].mAxDistDone.Value = contTot.ToString("0.000", CultureInfo.InvariantCulture);
// ...aggiorno valore riferimento...
contDistMovAssi[i] = istDistMovAssi[i];
//verificare x SCM di portare in altro modo... ovvero QUI usando il lastCheckAccum...
#if false
DateTime adesso = DateTime.Now;
TimeSpan accumTime = adesso.Subtract(lastChekAccumTimeAxis);
// salvo valore aggiuntivo x ore lavoro assi...
double oreTot = updateValDoubleByIncr(i, accumTime.TotalHours, "Axis_{0:00}_AccTime");
vettAxis[i].mAxAccTime.Value = oreTot.ToString("0.000", CultureInfo.InvariantCulture);
// salvo valore lastChekAccumTimeAxis
lastChekAccumTimeAxis = adesso;
#endif
}
return needSave;
@@ -2380,7 +2358,7 @@ namespace MTC_Adapter
{
for (int i = 0; i < currAdpConf.nAxis; i++)
{
uint delta = 0;
double delta = 0;
// controllo valore riferimento...
if (istAccTimeAssi[i] > contAccTimeAssi[i])
{
File diff suppressed because it is too large Load Diff
Binary file not shown.

Before

Width:  |  Height:  |  Size: 148 KiB

After

Width:  |  Height:  |  Size: 145 KiB

+2 -2
View File
@@ -5,7 +5,7 @@
using System.Reflection;
[assembly: AssemblyVersion("1.1.29.99")]
[assembly: AssemblyFileVersion("1.1.29.99")]
[assembly: AssemblyVersion("1.1.30.99")]
[assembly: AssemblyFileVersion("1.1.30.99")]
[assembly: AssemblyCopyright("Steamware-SCM-CMS © 2015-2016")]
[assembly: AssemblyCompany("Steamware-SCM-CMS")]
+2 -2
View File
@@ -6,8 +6,8 @@
using System.Reflection;
[assembly: AssemblyVersion("1.1.29.<#= this.RevisionNumber #>")]
[assembly: AssemblyFileVersion("1.1.29.<#= this.RevisionNumber #>")]
[assembly: AssemblyVersion("1.1.30.<#= this.RevisionNumber #>")]
[assembly: AssemblyFileVersion("1.1.30.<#= this.RevisionNumber #>")]
[assembly: AssemblyCopyright("Steamware-SCM-CMS © 2015-<#= DateTime.Now.Year #>")]
[assembly: AssemblyCompany("Steamware-SCM-CMS")]
<#+