diff --git a/CMS_CORE_Library/S7Net/Nc_S7Net.cs b/CMS_CORE_Library/S7Net/Nc_S7Net.cs index 1c1be17..3f324f0 100644 --- a/CMS_CORE_Library/S7Net/Nc_S7Net.cs +++ b/CMS_CORE_Library/S7Net/Nc_S7Net.cs @@ -2227,10 +2227,13 @@ namespace CMS_CORE_Library.S7Net // aggiorno... currProdInfo.NumTarget = numTarget; - if(doReset) + // no reset from Thermo.Active (strobe on end) +#if false + if (doReset) { currProdInfo.NumDone = 0; - } + } +#endif // converto a byte... List newMem = currProdInfo.convertToByte().ToList(); // riscrivo!!!! @@ -2238,6 +2241,13 @@ namespace CMS_CORE_Library.S7Net if (cmsError.IsError()) return cmsError; + if (doReset) + { + // send strobe of NEW WorkOrder / reset QTY + cmsError = PLC_WStrobe(PROD_ACK, PROD_STROBE, 10); + if (cmsError.IsError()) + return cmsError; + } return NO_ERROR; } @@ -5150,6 +5160,10 @@ namespace CMS_CORE_Library.S7Net internal static MEMORY_CELL REQ_MODE_ACK = new MEMORY_CELL(MEMORY_TYPE.Siemens_DB, TABLE, 0, 2); internal static MEMORY_CELL REQ_MODE_STROBE = new MEMORY_CELL(MEMORY_TYPE.Siemens_DB, TABLE, 2, 2); + // Prod strobe/ack + internal static MEMORY_CELL PROD_ACK = new MEMORY_CELL(MEMORY_TYPE.Siemens_DB, TABLE, 0, 2); + internal static MEMORY_CELL PROD_STROBE = new MEMORY_CELL(MEMORY_TYPE.Siemens_DB, TABLE, 2, 2); + // strobe received from PLC internal static MEMORY_CELL REQ_CONF_STROBE = new MEMORY_CELL(MEMORY_TYPE.Siemens_DB, TABLE, 0, 2); internal static MEMORY_CELL REQ_CONF_ACK = new MEMORY_CELL(MEMORY_TYPE.Siemens_DB, TABLE, 2, 2);