Added Candies management
This commit is contained in:
@@ -1085,7 +1085,71 @@ namespace CMS_CORE_Library.Demo
|
||||
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
|
||||
public override CmsError PLC_WExpiredCandy(bool value)
|
||||
{
|
||||
bool newVal = false;
|
||||
|
||||
//Scrivo il dato
|
||||
CmsError cmsError = MEM_RWBoolean(W, 0, EXP_CANDY_MEM.MemType, EXP_CANDY_MEM.Address, 0, ref value);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
else
|
||||
{
|
||||
//Leggo il dato
|
||||
cmsError = PLC_RExpiredCandy(ref newVal);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
|
||||
//Se i 2 dati coincidono ritorno OK
|
||||
if (value == newVal)
|
||||
return NO_ERROR;
|
||||
else
|
||||
return PLC_NOT_RUNNING_ERROR;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public override CmsError PLC_RExpiredCandy(ref bool value)
|
||||
{
|
||||
CmsError cmsError = MEM_RWBoolean(R, 0, EXP_CANDY_MEM.MemType, EXP_CANDY_MEM.Address, 0, ref value);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
public override CmsError PLC_WCandy(int value)
|
||||
{
|
||||
int newVal = 0;
|
||||
|
||||
//Scrivo il dato
|
||||
CmsError cmsError = MEM_RWInteger(W, 0, CANDY_MEM.MemType, CANDY_MEM.Address, ref value);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
else
|
||||
{
|
||||
//Leggo il dato
|
||||
cmsError = PLC_RCandy(ref newVal);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
|
||||
//Se i 2 dati coincidono ritorno OK
|
||||
if (value == newVal)
|
||||
return NO_ERROR;
|
||||
else
|
||||
return PLC_NOT_RUNNING_ERROR;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public override CmsError PLC_RCandy(ref int value)
|
||||
{
|
||||
CmsError cmsError = MEM_RWInteger(R, 0, CANDY_MEM.MemType, CANDY_MEM.Address, ref value);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
#endregion PLC High-level data
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -3403,6 +3467,10 @@ namespace CMS_CORE_Library.Demo
|
||||
internal static MEMORY_CELL ASSISTED_TOOLING_FINAL_VALUE = new MEMORY_CELL(MEMORY_TYPE.Demo, 469, 1);
|
||||
|
||||
internal static MEMORY_CELL UNIT_OF_MEASURE = new MEMORY_CELL(MEMORY_TYPE.Demo, 470, 1);
|
||||
internal static MEMORY_CELL EXP_CANDY_MEM = new MEMORY_CELL(MEMORY_TYPE.Demo, 472, 1);
|
||||
internal static MEMORY_CELL CANDY_MEM = new MEMORY_CELL(MEMORY_TYPE.Demo, 471, 1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
#endregion Memory addresses
|
||||
|
||||
@@ -1196,6 +1196,70 @@ namespace CMS_CORE_Library.Fanuc
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
public override CmsError PLC_WExpiredCandy(bool value)
|
||||
{
|
||||
bool newVal = false;
|
||||
|
||||
//Scrivo il dato
|
||||
CmsError cmsError = MEM_RWBoolean(W, 0, EXP_CANDY_MEM.MemType, EXP_CANDY_MEM.Address,5, ref value);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
else
|
||||
{
|
||||
//Leggo il dato
|
||||
cmsError = PLC_RExpiredCandy(ref newVal);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
|
||||
//Se i 2 dati coincidono ritorno OK
|
||||
if (value == newVal)
|
||||
return NO_ERROR;
|
||||
else
|
||||
return PLC_NOT_RUNNING_ERROR;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public override CmsError PLC_RExpiredCandy(ref bool value)
|
||||
{
|
||||
CmsError cmsError = MEM_RWBoolean(R, 0, EXP_CANDY_MEM.MemType, EXP_CANDY_MEM.Address,5, ref value);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
public override CmsError PLC_WCandy(int value)
|
||||
{
|
||||
int newVal=0;
|
||||
|
||||
//Scrivo il dato
|
||||
CmsError cmsError = MEM_RWInteger(W, 0, CANDY_MEM.MemType, CANDY_MEM.Address, ref value);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
else
|
||||
{
|
||||
//Leggo il dato
|
||||
cmsError = PLC_RCandy(ref newVal);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
|
||||
//Se i 2 dati coincidono ritorno OK
|
||||
if (value == newVal)
|
||||
return NO_ERROR;
|
||||
else
|
||||
return PLC_NOT_RUNNING_ERROR;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public override CmsError PLC_RCandy(ref int value)
|
||||
{
|
||||
CmsError cmsError = MEM_RWInteger(R, 0, CANDY_MEM.MemType, CANDY_MEM.Address, ref value);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
#endregion PLC High-level data
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -4514,6 +4578,10 @@ namespace CMS_CORE_Library.Fanuc
|
||||
|
||||
internal static MEMORY_CELL AXES_BUTTON_VISIBLE = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 3033, 16);
|
||||
|
||||
|
||||
internal static MEMORY_CELL CANDY_MEM = new MEMORY_CELL(MEMORY_TYPE.Fanuc_D, 7222, 1);
|
||||
internal static MEMORY_CELL EXP_CANDY_MEM = new MEMORY_CELL(MEMORY_TYPE.Fanuc_D, 7217, 1);
|
||||
|
||||
// Tool manager areas
|
||||
internal static MEMORY_CELL MAGAZINE_ACTION = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 4000, 16);
|
||||
|
||||
|
||||
@@ -566,6 +566,11 @@ namespace CMS_CORE_Library
|
||||
|
||||
public abstract CmsError PLC_WScadaValue(string memIndex, SCADA_MEM_TYPE memType, object value);
|
||||
|
||||
public abstract CmsError PLC_RCandy(ref int value);
|
||||
public abstract CmsError PLC_WCandy(int value);
|
||||
public abstract CmsError PLC_RExpiredCandy(ref bool value);
|
||||
public abstract CmsError PLC_WExpiredCandy(bool value);
|
||||
|
||||
#endregion PLC High-level data (to override)
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -1206,6 +1206,71 @@ namespace CMS_CORE_Library.Osai
|
||||
return cmsError;
|
||||
}
|
||||
|
||||
|
||||
public override CmsError PLC_WExpiredCandy(bool value)
|
||||
{
|
||||
bool newVal = false;
|
||||
|
||||
//Scrivo il dato
|
||||
CmsError cmsError = MEM_RWBoolean(W, 0, EXP_CANDY_MEM.MemType, EXP_CANDY_MEM.Address, 0, ref value);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
else
|
||||
{
|
||||
//Leggo il dato
|
||||
cmsError = PLC_RExpiredCandy(ref newVal);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
|
||||
//Se i 2 dati coincidono ritorno OK
|
||||
if (value == newVal)
|
||||
return NO_ERROR;
|
||||
else
|
||||
return PLC_NOT_RUNNING_ERROR;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public override CmsError PLC_RExpiredCandy(ref bool value)
|
||||
{
|
||||
CmsError cmsError = MEM_RWBoolean(R, 0, EXP_CANDY_MEM.MemType, EXP_CANDY_MEM.Address, 0, ref value);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
public override CmsError PLC_WCandy(int value)
|
||||
{
|
||||
int newVal = 0;
|
||||
|
||||
//Scrivo il dato
|
||||
CmsError cmsError = MEM_RWInteger(W, 0, CANDY_MEM.MemType, CANDY_MEM.Address, ref value);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
else
|
||||
{
|
||||
//Leggo il dato
|
||||
cmsError = PLC_RCandy(ref newVal);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
|
||||
//Se i 2 dati coincidono ritorno OK
|
||||
if (value == newVal)
|
||||
return NO_ERROR;
|
||||
else
|
||||
return PLC_NOT_RUNNING_ERROR;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public override CmsError PLC_RCandy(ref int value)
|
||||
{
|
||||
CmsError cmsError = MEM_RWInteger(R, 0, CANDY_MEM.MemType, CANDY_MEM.Address, ref value);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
#endregion PLC High-level data
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -4298,6 +4363,8 @@ namespace CMS_CORE_Library.Osai
|
||||
internal static MEMORY_CELL M154_ACK = new MEMORY_CELL(MEMORY_TYPE.Osai_MW, 4312, 1);
|
||||
|
||||
internal static MEMORY_CELL AXES_BUTTON_VISIBLE = new MEMORY_CELL(MEMORY_TYPE.Osai_MW, 4320, 16);
|
||||
internal static MEMORY_CELL CANDY_MEM = new MEMORY_CELL(MEMORY_TYPE.Osai_GW, 303, 1);
|
||||
internal static MEMORY_CELL EXP_CANDY_MEM = new MEMORY_CELL(MEMORY_TYPE.Osai_GW, 302, 1);
|
||||
|
||||
// Tool manager areas
|
||||
internal static MEMORY_CELL MAGAZINE_ACTION = new MEMORY_CELL(MEMORY_TYPE.Osai_MW, 4350, 16);
|
||||
|
||||
@@ -1454,6 +1454,69 @@ namespace CMS_CORE_Library.Siemens
|
||||
return cmsError;
|
||||
}
|
||||
|
||||
public override CmsError PLC_WExpiredCandy(bool value)
|
||||
{
|
||||
bool newVal = false;
|
||||
|
||||
//Scrivo il dato
|
||||
CmsError cmsError = MEM_RWBoolean(W, 0, EXP_CANDY_MEM.MemType, EXP_CANDY_MEM.Address, 5, ref value);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
else
|
||||
{
|
||||
//Leggo il dato
|
||||
cmsError = PLC_RExpiredCandy(ref newVal);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
|
||||
//Se i 2 dati coincidono ritorno OK
|
||||
if (value == newVal)
|
||||
return NO_ERROR;
|
||||
else
|
||||
return PLC_NOT_RUNNING_ERROR;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public override CmsError PLC_RExpiredCandy(ref bool value)
|
||||
{
|
||||
CmsError cmsError = MEM_RWBoolean(R, 0, EXP_CANDY_MEM.MemType, EXP_CANDY_MEM.Address, 5, ref value);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
public override CmsError PLC_WCandy(int value)
|
||||
{
|
||||
int newVal = 0;
|
||||
|
||||
//Scrivo il dato
|
||||
CmsError cmsError = MEM_RWInteger(W, 0, CANDY_MEM.MemType, CANDY_MEM.Address, ref value);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
else
|
||||
{
|
||||
//Leggo il dato
|
||||
cmsError = PLC_RCandy(ref newVal);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
|
||||
//Se i 2 dati coincidono ritorno OK
|
||||
if (value == newVal)
|
||||
return NO_ERROR;
|
||||
else
|
||||
return PLC_NOT_RUNNING_ERROR;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public override CmsError PLC_RCandy(ref int value)
|
||||
{
|
||||
CmsError cmsError = MEM_RWInteger(R, 0, CANDY_MEM.MemType, CANDY_MEM.Address, ref value);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
return NO_ERROR;
|
||||
}
|
||||
#endregion PLC High-level data
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -5926,5 +5989,7 @@ namespace CMS_CORE_Library.Siemens
|
||||
internal static MEMORY_CELL AXES_BUTTON_VISIBLE = new MEMORY_CELL(MEMORY_TYPE.Siemens_DB, TABLE, 3044, 16);
|
||||
|
||||
internal static MEMORY_CELL MAGAZINE_ACTION = new MEMORY_CELL(MEMORY_TYPE.Siemens_DB, TABLE, 4000, 16);
|
||||
internal static MEMORY_CELL CANDY_MEM = new MEMORY_CELL(MEMORY_TYPE.Siemens_DB, 255, 120, 1);
|
||||
internal static MEMORY_CELL EXP_CANDY_MEM = new MEMORY_CELL(MEMORY_TYPE.Siemens_DB, 255, 92, 1);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user