Added HistorySheets values

This commit is contained in:
Thermo_SIM
2021-03-19 22:22:16 +01:00
parent 20beb1b139
commit a5ada18ced
3 changed files with 77 additions and 0 deletions
+48
View File
@@ -183,6 +183,9 @@ namespace CMS_CORE_Library.S7Net
internal static MEMORY_CELL PROCESS_STATUS = new MEMORY_CELL(MEMORY_TYPE.Siemens_DB, 605, 0, 2);
internal static MEMORY_CELL HISTORY_SHEETS = new MEMORY_CELL(MEMORY_TYPE.Siemens_DB, 143, 2, 14);
internal static MEMORY_CELL HISTORY_ACK_SHEETS = new MEMORY_CELL(MEMORY_TYPE.Siemens_DB, 143, 0, 2);
// Prod strobe/ack
internal static MEMORY_CELL PROD_ACK = new MEMORY_CELL(MEMORY_TYPE.Siemens_DB, TABLE, 0, 2);
@@ -3743,6 +3746,51 @@ namespace CMS_CORE_Library.S7Net
return NO_ERROR;
}
/// <summary>
/// Get current HistorySheets
/// </summary>
/// <param name="historySheet"></param>
/// <returns></returns>
///
public override CmsError PLC_RHistorySheets(ref ThermoModels.HistorySheet historySheet)
{
List<byte> currMem = new List<byte>();
CmsError libraryError = MEM_RWByteList(R, 0, HISTORY_SHEETS.MemType, HISTORY_SHEETS.Address, HISTORY_SHEETS.SubAddress, 0, HISTORY_SHEETS.Size, ref currMem);
if (libraryError.IsError())
return libraryError;
// converto!
historySheet = new ThermoModels.HistorySheet()
{
newData = (S7.Net.Types.Int.FromByteArray(currMem.Skip(0).Take(2).ToArray()) & 1) == 1,
Value1 = S7.Net.Types.Real.FromByteArray(currMem.Skip(2).Take(4).ToArray()),
Value2 = S7.Net.Types.Real.FromByteArray(currMem.Skip(6).Take(4).ToArray()),
Value3 = S7.Net.Types.Real.FromByteArray(currMem.Skip(10).Take(4).ToArray()),
};
return NO_ERROR;
}
/// <summary>
/// WriteAck HistorySheets
/// </summary>
/// <returns></returns>
///
public override CmsError PLC_WAckHistorySheets()
{
CmsError libraryError = NO_ERROR;
// Call ack for config request RISK
libraryError = PLC_WAck(true,HISTORY_ACK_SHEETS, HISTORY_SHEETS, 1);
if (libraryError.IsError())
return libraryError;
return libraryError;
}
/// <summary>
/// read current recipe parameter list
/// </summary>