EgtMachKernel 1.8e5 :

- gestione da parametri lavorazione di angoli iniziali suggeriti e asse rotante bloccato
- in fresatura, svuotatura, incisione e lav. generica aggiunta possibilità di invertire direzione utensile
- in fresatura aggiunto parametro per tipo lavorazione faccia (perpendicolare, parallela, ...)
- differenziata distanza sicurezza standard da distanza sicurezza per rinvio da sotto
- migliorati approcci e retrazioni con rinvio da sotto
- migliorata segnalazione errori.
This commit is contained in:
Dario Sassi
2017-05-31 14:18:11 +00:00
parent c9ab1c76ed
commit 6c7a60b60a
48 changed files with 1214 additions and 234 deletions
+30 -2
View File
@@ -28,6 +28,10 @@
using namespace std ;
//------------------------------ Errors --------------------------------------
// 1001 = "Error with setup : xxx"
// 1002 = "Error opening Cnc file"
//----------------------------------------------------------------------------
static const string ERR_EXT = ".err" ;
@@ -81,9 +85,12 @@ Generator::Run( const string& sCncFile, const std::string& sInfo)
if ( m_pMchMgr == nullptr || m_pGeomDB == nullptr || m_pMachine == nullptr ||
m_pMchMgr->GetCurrMachGroup() == GDB_ID_NULL)
return false ;
m_pMchMgr->ResetLastError() ;
// recupero eventuale attrezzaggio della macchinata
// forzo aggiornamento attrezzaggio della macchinata
m_pMchMgr->UpdateSetup() ;
if ( ! VerifySetup())
return false ;
// evento inizio esecuzione
bool bOk = true ;
@@ -152,6 +159,27 @@ Generator::Run( const string& sCncFile, const std::string& sInfo)
return bOk ;
}
//----------------------------------------------------------------------------
bool
Generator::VerifySetup( void)
{
// se attrezzaggio non definito, nulla da verificare
if ( ! m_pMchMgr->GetCurrSetupMgr().Exists())
return true ;
// lancio la verifica
STRVECTOR vsErr ;
if ( m_pMchMgr->VerifyCurrSetup( vsErr))
return true ;
// gestisco errore
string sErr = "Error with setup :" ;
for each( const auto& sTmp in vsErr)
sErr += " " + sTmp ;
m_pMchMgr->SetLastError( 1001, sErr) ;
return false ;
}
//----------------------------------------------------------------------------
bool
Generator::ProcessDisposition( int nOpId, int nOpInd)
@@ -525,7 +553,7 @@ Generator::OnProgramStart( const string& sMachName, const string& sCncFile, cons
// apro il file di output
bool bOk = m_pMachine->WriterOpen( sCncFile) ;
if ( ! bOk)
LOG_INFO( GetEMkLogger(), "Error opening Cnc file") ;
m_pMchMgr->SetLastError( 1002, "Error opening Cnc file") ;
// assegno nome macchina
bOk = bOk && m_pMachine->LuaSetGlobVar( GLOB_VAR + GVAR_MACHNAME, sMachName) ;
// assegno nome file