Merge branch 'feature/S7Net' into develop
This commit is contained in:
@@ -149,7 +149,7 @@ namespace CMS_CORE_Library.Models
|
||||
{
|
||||
public int IdChannel { get; set; } = 0;
|
||||
public byte IdRefl { get; set; } = 0;
|
||||
public byte SetpointRecipe { get; set; } = 0;
|
||||
public byte SetpointHMI { get; set; } = 0;
|
||||
public byte SetpointThermoCam { get; set; } = 0;
|
||||
public byte SetpointPLC { get; set; } = 0;
|
||||
public byte ChStatus { get; set; } = 0;
|
||||
@@ -165,7 +165,7 @@ namespace CMS_CORE_Library.Models
|
||||
|
||||
if (IdChannel != item.IdChannel)
|
||||
return false;
|
||||
if (SetpointRecipe != item.SetpointRecipe)
|
||||
if (SetpointHMI != item.SetpointHMI)
|
||||
return false;
|
||||
if (SetpointThermoCam != item.SetpointThermoCam)
|
||||
return false;
|
||||
|
||||
@@ -1913,6 +1913,8 @@ namespace CMS_CORE_Library.S7Net
|
||||
refreshRiscPerc();
|
||||
// refresh setpoint PLC
|
||||
refreshRiscActCurr();
|
||||
// refresh setpoint HMI
|
||||
refreshRiscSetpointHMI();
|
||||
// refresh setpoint PLC
|
||||
refreshRiscSetpointPLC();
|
||||
// refresh setpoint termocamera ???
|
||||
@@ -2384,9 +2386,9 @@ namespace CMS_CORE_Library.S7Net
|
||||
// FIXME TODO ???? da dove prendere info?
|
||||
}
|
||||
/// <summary>
|
||||
/// Refresh Canali Riscaldi: SetPoint PLC
|
||||
/// Refresh Canali Riscaldi: SetPoint HMI
|
||||
/// </summary>
|
||||
private void refreshRiscSetpointPLC()
|
||||
private void refreshRiscSetpointHMI()
|
||||
{
|
||||
// leggo DB514 x area Ich
|
||||
List<byte> currMem = new List<byte>();
|
||||
@@ -2399,65 +2401,58 @@ namespace CMS_CORE_Library.S7Net
|
||||
{
|
||||
// converto a blocchi di 8 byte...
|
||||
byte[] memArray = currMem.ToArray();
|
||||
double currVal = 0;
|
||||
for (int i = 0; i < RISC_CHP_DATA.Size / 4; i++)
|
||||
for (int i = 0; i < RISC_CHP_DATA.Size; i++)
|
||||
{
|
||||
// FIXME TODO
|
||||
#if false
|
||||
currVal = S7.Net.Types.Double.FromByteArray(memArray.Skip(4 * i).Take(4).ToArray());
|
||||
// cerco id + 1 (su memoria è base 0)
|
||||
if (ThermoWarmChannels.ContainsKey(i + 1))
|
||||
{
|
||||
ThermoWarmChannels[i + 1].SetpointPLC = currVal;
|
||||
ThermoWarmChannels[i + 1].SetpointHMI = memArray[i];
|
||||
}
|
||||
else
|
||||
{
|
||||
ThermoWarmChannels.Add(i + 1, new ThermoModels.WarmerChannel()
|
||||
{
|
||||
IdChannel = i + 1,
|
||||
SetpointPLC = currVal
|
||||
SetpointHMI = memArray[i]
|
||||
});
|
||||
}
|
||||
#endif
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// Refresh Canali Riscaldi: SetPoint PLC
|
||||
/// </summary>
|
||||
private void refreshRiscSetpointPLC()
|
||||
{
|
||||
// leggo DB514 x area Ich
|
||||
List<byte> currMem = new List<byte>();
|
||||
|
||||
// FIXME TODO : devo farla o legge da conf il PLC?
|
||||
#if false
|
||||
/// <summary>
|
||||
/// Write Board enabled on OCC area
|
||||
/// </summary>
|
||||
private void PLC_WRiscAbilitSch()
|
||||
{
|
||||
List<byte> currMem = new List<byte>();
|
||||
// converto a blocchi di 2 byte...
|
||||
for (int i = 0; i < RISC_OCC_DATA.Size / 2; i++)
|
||||
// leggo da PLC a array di byte di appoggio...
|
||||
CmsError cmsError = MEM_RWByteList(R, 0, RISC_PLC_DATA.MemType, RISC_PLC_DATA.Address, RISC_PLC_DATA.SubAddress, 0, RISC_PLC_DATA.Size, ref currMem);
|
||||
|
||||
// copio! controllo SE ho dati...
|
||||
if (currMem.Count > 0)
|
||||
{
|
||||
currMem.Add(ThermoWarmChannels[i + 1].SetpointPLC);
|
||||
currMem.Add(ThermoWarmChannels[i].SetpointPLC);
|
||||
// converto a blocchi di 8 byte...
|
||||
byte[] memArray = currMem.ToArray();
|
||||
for (int i = 0; i < RISC_PLC_DATA.Size; i++)
|
||||
{
|
||||
// cerco id + 1 (su memoria è base 0)
|
||||
if (ThermoWarmChannels.ContainsKey(i + 1))
|
||||
{
|
||||
ThermoWarmChannels[i + 1].SetpointPLC = memArray[i];
|
||||
}
|
||||
else
|
||||
{
|
||||
ThermoWarmChannels.Add(i + 1, new ThermoModels.WarmerChannel()
|
||||
{
|
||||
IdChannel = i + 1,
|
||||
SetpointPLC = memArray[i]
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
// scrivo sul PLC array di byte...
|
||||
CmsError cmsError = MEM_RWByteList(W, 0, RISC_CHP_DATA.MemType, RISC_CHP_DATA.Address, RISC_CHP_DATA.SubAddress, 0, RISC_CHP_DATA.Size, ref currMem);
|
||||
}
|
||||
#endif
|
||||
#if false
|
||||
/// <summary>
|
||||
/// Write riflector on CFI area
|
||||
/// </summary>
|
||||
private void PLC_WRiscSetReflector()
|
||||
{
|
||||
List<byte> currMem = new List<byte>();
|
||||
// converto a blocchi di 2 byte...
|
||||
for (int i = 0; i < RISC_CFI_DATA.Size / 2; i++)
|
||||
{
|
||||
currMem.Add(RiskChannelConfig[i + 1].SetpointPLC);
|
||||
currMem.Add(RiskChannelConfig[i].SetpointPLC);
|
||||
}
|
||||
// scrivo sul PLC array di byte...
|
||||
CmsError cmsError = MEM_RWByteList(W, 0, RISC_CFI_DATA.MemType, RISC_CFI_DATA.Address, RISC_CFI_DATA.SubAddress, 0, RISC_CFI_DATA.Size, ref currMem);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
/// <summary>
|
||||
/// Refresh Canali Riscaldi: actual current PLC
|
||||
/// </summary>
|
||||
@@ -2663,7 +2658,7 @@ namespace CMS_CORE_Library.S7Net
|
||||
return NO_ERROR;
|
||||
}
|
||||
/// <summary>
|
||||
/// Set current Warmers Channels reflector's data
|
||||
/// Get current Warmers VUMin data
|
||||
/// </summary>
|
||||
/// <param name="VUmin"></param>
|
||||
/// <returns></returns>
|
||||
@@ -2681,7 +2676,7 @@ namespace CMS_CORE_Library.S7Net
|
||||
return NO_ERROR;
|
||||
}
|
||||
/// <summary>
|
||||
/// Set current Warmers Channels reflector's data
|
||||
/// Set current Warmers Channels min current data
|
||||
/// </summary>
|
||||
/// <param name="updtCh"></param>
|
||||
/// <returns></returns>
|
||||
@@ -2691,7 +2686,7 @@ namespace CMS_CORE_Library.S7Net
|
||||
List<double> ListValue = new List<double>();
|
||||
|
||||
// read actual data on memory...
|
||||
CmsError cmsError = MEM_RWDoubleList(R, 0, RISC_OCC_DATA.MemType, RISC_OCC_DATA.Address, RISC_OCC_DATA.SubAddress, RISC_OCC_DATA.Size, ref ListValue);
|
||||
CmsError cmsError = MEM_RWDoubleList(R, 0, RISC_ICH_MIN_DATA.MemType, RISC_ICH_MIN_DATA.Address, RISC_ICH_MIN_DATA.SubAddress, RISC_ICH_MIN_DATA.Size, ref ListValue);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
|
||||
@@ -2705,7 +2700,7 @@ namespace CMS_CORE_Library.S7Net
|
||||
// return as list...
|
||||
ListValue = newMem.ToList();
|
||||
// scrivo sul PLC array di byte...
|
||||
cmsError = MEM_RWDoubleList(W, 0, RISC_OCC_DATA.MemType, RISC_OCC_DATA.Address, RISC_OCC_DATA.SubAddress, RISC_OCC_DATA.Size, ref ListValue);
|
||||
cmsError = MEM_RWDoubleList(W, 0, RISC_ICH_MIN_DATA.MemType, RISC_ICH_MIN_DATA.Address, RISC_ICH_MIN_DATA.SubAddress, RISC_ICH_MIN_DATA.Size, ref ListValue);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
|
||||
@@ -4747,6 +4742,7 @@ namespace CMS_CORE_Library.S7Net
|
||||
// riscaldi
|
||||
internal static MEMORY_CELL RISC_VU_MIN = new MEMORY_CELL(MEMORY_TYPE.Siemens_DB, 513, 0, 2);
|
||||
internal static MEMORY_CELL RISC_OCC_DATA = new MEMORY_CELL(MEMORY_TYPE.Siemens_DB, 514, 64, 64);
|
||||
internal static MEMORY_CELL RISC_PLC_DATA = new MEMORY_CELL(MEMORY_TYPE.Siemens_DB, 514, 128, 1024);
|
||||
internal static MEMORY_CELL RISC_CHP_DATA = new MEMORY_CELL(MEMORY_TYPE.Siemens_DB, 614, 0, 1024);
|
||||
internal static MEMORY_CELL RISC_CFI_DATA = new MEMORY_CELL(MEMORY_TYPE.Siemens_DB, 514, 2176, 1024);
|
||||
internal static MEMORY_CELL RISC_ICH_MIN_DATA = new MEMORY_CELL(MEMORY_TYPE.Siemens_DB, 514, 3200, 4096);
|
||||
|
||||
Reference in New Issue
Block a user