EgtMachKernel 1.6x5 :

- ora OnSpecialApplyDisposition gestisce anche TcPos
- aggiunta possibilità di richiamo OnPostApplyMachining al termine ricalcolo lavorazione
- aggiunta funzione Lua EmtGetAxesPos
- piccole migliorie a simulazione.
This commit is contained in:
Dario Sassi
2017-01-03 09:18:22 +00:00
parent 3587b88a61
commit d9c080c6d6
14 changed files with 142 additions and 21 deletions
+43
View File
@@ -70,3 +70,46 @@ Machining:: NeedPrevHome( void) const
{
return false ;
}
//----------------------------------------------------------------------------
bool
Machining::PostApply( void)
{
// recupero la macchina corrente
Machine* pMch = m_pMchMgr->GetCurrMachine() ;
if ( pMch == nullptr)
return false ;
// costanti
static const string EMC_VAR = "EMC" ; // tabella variabili locali per calcolo
static const string EVAR_PHASE = ".PHASE" ; // IN (int) indice fase
static const string EVAR_MCHID = ".MCHID" ; // IN (int) identificativo della lavorazione
static const string EVAR_ERROR = ".ERR" ; // OUT (int) codice di errore ( 0 = ok)
static const string ON_POST_APPLY = "OnPostApplyMachining" ;
// eseguo l'azione
if ( pMch->LuaExistsFunction( ON_POST_APPLY)) {
bool bOk = true ;
int nErr = 99 ;
// imposto valori parametri
bOk = bOk && pMch->LuaCreateGlobTable( EMC_VAR) ;
bOk = bOk && pMch->LuaSetGlobVar( EMC_VAR + EVAR_PHASE, m_nPhase) ;
bOk = bOk && pMch->LuaSetGlobVar( EMC_VAR + EVAR_MCHID, m_nOwnerId) ;
// eseguo
bOk = bOk && pMch->LuaCallFunction( ON_POST_APPLY) ;
// recupero valori parametri obbligatori
bOk = bOk && pMch->LuaGetGlobVar( EMC_VAR + EVAR_ERROR, nErr) ;
// recupero valori parametri opzionali
// ...
// reset
bOk = bOk && pMch->LuaResetGlobVar( EMC_VAR) ;
// segnalo errori
if ( nErr != 0) {
bOk = false ;
string sOut = " Error in " + ON_POST_APPLY + " (" + ToString( nErr) + ")" ;
LOG_INFO( GetEMkLogger(), sOut.c_str())
}
return bOk ;
}
else
return true ;
}