Files
EgtMachKernel/ToolData.h
T
Dario Sassi c5795df8d0 EgtMachKernel :
- aggiunta funzione SetParam alle diverse lavorazioni
- aggiunto calcolo elevazione da grezzo
- estesa lavorazione di taglio con lama.
2015-06-30 14:06:31 +00:00

83 lines
3.6 KiB
C++

//----------------------------------------------------------------------------
// EgalTech 2015-2015
//----------------------------------------------------------------------------
// File : ToolData.h Data : 03.06.15 Versione : 1.6f1
// Contenuto : Dichiarazione della struct ToolData e costanti associate.
//
//
//
// Modifiche : 03.06.15 DS Creazione modulo.
//
//
//----------------------------------------------------------------------------
#pragma once
#include "/EgtDev/Include/EGnEgtUUID.h"
#include <string>
//----------------------------------------------------------------------------
struct ToolData
{
EgtUUID m_Uuid ; // identificativo universale dell'utensile
std::string m_sName ; // nome dell'utensile
std::string m_sDraw ; // nome del disegno associato
std::string m_sTcPos ; // posizione di attrezzaggio preferenziale
std::string m_sHead ; // testa di montaggio
int m_nExit ; // uscita di montaggio
int m_nCorr ; // numero di correttore
int m_nType ; // tipo
double m_dMaxSpeed ; // massima velocità di rotazione ammessa (giri/minuto)
double m_dMaxMat ; // massimo materiale
double m_dDiam ; // diametro
double m_dTDiam ; // diametro totale (di ingombro)
double m_dLen ; // lunghezza controllata
double m_dTLen ; // lunghezza totale (di ingombro)
double m_dThick ; // spessore per lame o altezza taglienti
double m_dCornRad ; // raggio corner
double m_dSideAng ; // angolo del fianco rispetto all'asse
double m_dSpeed ; // velocità di rotazione (+ se CCW, - se CW)
double m_dFeed ; // velocità di lavorazione normale
double m_dStartFeed ; // velocità di lavorazione iniziale
double m_dEndFeed ; // velocità di lavorazione finale
double m_dTipFeed ; // velocità di lavorazione di testa
double m_dOffsR ; // offset radiale
double m_dOffsL ; // offset longitudinale
std::string m_sSysNotes ; // note interne
std::string m_sUserNotes ; // note dell'utente
ToolData( void)
: m_Uuid(), m_nExit( 0), m_nCorr(0), m_nType(0), m_dMaxSpeed(0), m_dMaxMat(0),
m_dDiam( 0), m_dTDiam( 0), m_dLen( 0), m_dTLen( 0), m_dThick( 0), m_dCornRad( 0), m_dSideAng( 0),
m_dSpeed( 0), m_dFeed(0), m_dStartFeed( 0), m_dEndFeed( 0), m_dTipFeed( 0),
m_dOffsR( 0), m_dOffsL( 0) {}
int GetSize( void) const ;
bool FromString( const std::string& sString, int& nKey) ;
std::string ToString( int nInd) const ;
bool VerifySpeed( double dVal) const ;
} ;
//----------------------------------------------------------------------------
// Costanti per famiglie di utensili
const int TF_DRILLBIT = 0x0100 ; // 256
const int TF_SAWBLADE = 0x0200 ; // 512
const int TF_MILL = 0x0400 ; // 1024
const int TF_MORTISE = 0x0800 ; // 2048
const int TF_COMPO = 0x1000 ; // 4096
//----------------------------------------------------------------------------
// Tipologie di utensili
enum ToolType {
TT_NONE = 0,
TT_DRILL_STD = TF_DRILLBIT + 0, // 256
TT_DRILL_LONG = TF_DRILLBIT + 1, // 257
TT_SAW_STD = TF_SAWBLADE + 0, // 512
TT_SAW_FLAT = TF_SAWBLADE + 1, // 513
TT_MILL_STD = TF_MILL + 0, // 1024
TT_MILL_NOTIP = TF_MILL + 1, // 1025
TT_MORTISE_STD = TF_MORTISE + 0, // 2048
TT_COMPO = TF_COMPO + 0 // 4096
} ;