Prototipe for Temp ThermoCam write
This commit is contained in:
@@ -3351,20 +3351,22 @@ namespace CMS_CORE_Library.S7Net
|
||||
return NO_ERROR;
|
||||
}
|
||||
/// <summary>
|
||||
/// Set current Warmers Channels ThermocamSetpoints (°C)
|
||||
/// Set current Warmers Channels Temp REF Setpoints (1/10 °C)
|
||||
/// </summary>
|
||||
/// <param name="updtCh"></param>
|
||||
/// <returns></returns>
|
||||
public override CmsError PLC_WWarmerChTCamTempSet(Dictionary<int, double> newData)
|
||||
{
|
||||
// FIXME TODO serve nuova area termocamera
|
||||
#if false
|
||||
// valori in 1/10 di °C
|
||||
int dataScale = 10;
|
||||
// memory area
|
||||
byte[] newMem = new byte[newData.Count];
|
||||
List<byte> currMem = new List<byte>();
|
||||
short[] newMem = new short[newData.Count];
|
||||
// leggo DB624 x Setpoint Temp richiesti
|
||||
List<short> currMem = new List<short>();
|
||||
|
||||
// leggo da PLC a array di byte di appoggio...
|
||||
CmsError libraryError = MEM_RWShortList(R, 0, TCAM_TEMP_REQ_DATA.MemType, TCAM_TEMP_REQ_DATA.Address, TCAM_TEMP_REQ_DATA.SubAddress, TCAM_TEMP_REQ_DATA.Size, ref currMem);
|
||||
|
||||
// read actual data on memory...
|
||||
CmsError libraryError = MEM_RWByteList(R, 0, RISC_CHP_DATA.MemType, RISC_CHP_DATA.Address, RISC_CHP_DATA.SubAddress, 0, RISC_CHP_DATA.Size, ref currMem);
|
||||
if (libraryError.IsError())
|
||||
return libraryError;
|
||||
|
||||
@@ -3373,15 +3375,16 @@ namespace CMS_CORE_Library.S7Net
|
||||
// update only given data...
|
||||
foreach (var item in newData)
|
||||
{
|
||||
newMem[item.Key - 1] = (byte)item.Value;
|
||||
// attenzione: effettua scalatura dati!
|
||||
newMem[item.Key - 1] = (short)(dataScale * item.Value);
|
||||
}
|
||||
// return as list...
|
||||
currMem = newMem.ToList();
|
||||
|
||||
// scrivo sul PLC array di byte...
|
||||
libraryError = MEM_RWByteList(W, 0, RISC_CHP_DATA.MemType, RISC_CHP_DATA.Address, RISC_CHP_DATA.SubAddress, 0, RISC_CHP_DATA.Size, ref currMem);
|
||||
libraryError = MEM_RWShortList(W, 0, TCAM_TEMP_REQ_DATA.MemType, TCAM_TEMP_REQ_DATA.Address, TCAM_TEMP_REQ_DATA.SubAddress, TCAM_TEMP_REQ_DATA.Size, ref currMem);
|
||||
if (libraryError.IsError())
|
||||
return libraryError;
|
||||
#endif
|
||||
return libraryError;
|
||||
|
||||
return NO_ERROR;
|
||||
}
|
||||
@@ -3392,14 +3395,16 @@ namespace CMS_CORE_Library.S7Net
|
||||
/// <returns></returns>
|
||||
public override CmsError PLC_WWarmerChTCamTempAct(Dictionary<int, double> newData)
|
||||
{
|
||||
// FIXME TODO serve nuova area termocamera
|
||||
#if false
|
||||
// valori in 1/10 di °C
|
||||
int dataScale = 10;
|
||||
// memory area
|
||||
byte[] newMem = new byte[newData.Count];
|
||||
List<byte> currMem = new List<byte>();
|
||||
short[] newMem = new short[newData.Count];
|
||||
// leggo DB624 x Setpoint Temp richiesti
|
||||
List<short> currMem = new List<short>();
|
||||
|
||||
// leggo da PLC a array di byte di appoggio...
|
||||
CmsError libraryError = MEM_RWShortList(R, 0, TCAM_TEMP_ACT_DATA.MemType, TCAM_TEMP_ACT_DATA.Address, TCAM_TEMP_ACT_DATA.SubAddress, TCAM_TEMP_ACT_DATA.Size, ref currMem);
|
||||
|
||||
// read actual data on memory...
|
||||
CmsError libraryError = MEM_RWByteList(R, 0, RISC_CHP_DATA.MemType, RISC_CHP_DATA.Address, RISC_CHP_DATA.SubAddress, 0, RISC_CHP_DATA.Size, ref currMem);
|
||||
if (libraryError.IsError())
|
||||
return libraryError;
|
||||
|
||||
@@ -3408,15 +3413,16 @@ namespace CMS_CORE_Library.S7Net
|
||||
// update only given data...
|
||||
foreach (var item in newData)
|
||||
{
|
||||
newMem[item.Key - 1] = (byte)item.Value;
|
||||
// attenzione: effettua scalatura dati!
|
||||
newMem[item.Key - 1] = (short)(dataScale * item.Value);
|
||||
}
|
||||
// return as list...
|
||||
currMem = newMem.ToList();
|
||||
|
||||
// scrivo sul PLC array di byte...
|
||||
libraryError = MEM_RWByteList(W, 0, RISC_CHP_DATA.MemType, RISC_CHP_DATA.Address, RISC_CHP_DATA.SubAddress, 0, RISC_CHP_DATA.Size, ref currMem);
|
||||
libraryError = MEM_RWShortList(W, 0, TCAM_TEMP_ACT_DATA.MemType, TCAM_TEMP_ACT_DATA.Address, TCAM_TEMP_ACT_DATA.SubAddress, TCAM_TEMP_ACT_DATA.Size, ref currMem);
|
||||
if (libraryError.IsError())
|
||||
return libraryError;
|
||||
#endif
|
||||
return libraryError;
|
||||
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user