Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 48105a3f4f | |||
| 45ab9ee317 | |||
| 011de630f7 | |||
| 326de943b7 | |||
| b52feb5fd2 | |||
| 81ae21d006 | |||
| 7948ed102e | |||
| e647919eaa |
+3
-1
@@ -1,4 +1,4 @@
|
||||
-- BeamData.lua by Egaltech s.r.l. 2022/03/20
|
||||
-- BeamData.lua by Egaltech s.r.l. 2024/03/28
|
||||
-- Raccolta dati generali per Travi
|
||||
|
||||
EgtOutLog( ' FAST-BeamData started', 1)
|
||||
@@ -53,6 +53,7 @@ local BeamData = {
|
||||
RAW_OFFSET = 2000, -- spostamento grezzo rimanente dopo split
|
||||
VICE_MINH = 110, -- altezza minima della morsa
|
||||
VICE_MAXH = 370, -- altezza massima zona pinzaggio orizzontale
|
||||
ENABLE_TOOL_BETWEEN_VICES = false, -- abilita calcolo pinze permettendo di avere l'utensile tra di esse (ovviamente lontano da bordi in Y)
|
||||
OFFSET_DRILL_TENON = 0, -- offset fori su tenoni verso base degli stessi (0=non fare)
|
||||
USER_HOLE_DIAM = 0, -- diametro foro per L20
|
||||
MAX_TOOL_LEN_FOR_HOR_MACH = 311, -- massima lunghezza utensile per poter fare forature (fresature) oltre i 10 gradi dalla verticale
|
||||
@@ -112,6 +113,7 @@ if EgtExistsFile( sData) then
|
||||
BeamData.MAX_LEN_SCRAP_START = 100000
|
||||
end
|
||||
BeamData.USER_HOLE_DIAM = Machine.User.L020_DIAM_HOLE or BeamData.USER_HOLE_DIAM
|
||||
BeamData.ENABLE_TOOL_BETWEEN_VICES = ( Machine.User.ENABLE_TOOL_BETWEEN_VICES == 1) or BeamData.ENABLE_TOOL_BETWEEN_VICES
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -50,3 +50,4 @@ Name=User
|
||||
3=d,OPTIMIZATIONS_LENGTH_SLICES,100,SLICES_LENGTH
|
||||
4=l,L020_DIAM_HOLE,20,L020_HOLE_DIAM
|
||||
5=l,L040_OFFSET_P1,0,L040_ON_TENON_OFFSET
|
||||
6=d,ENABLE_TOOL_BETWEEN_VICES,0,ENABLE_TOOL_BETWEEN_VICES
|
||||
|
||||
@@ -41,13 +41,17 @@ function OnProgramStart()
|
||||
local BtlInfoId = EgtGetFirstNameInGroup( GDB_ID.ROOT, 'BtlInfo') or EgtGetCurrMachGroup() or GDB_ID.NULL
|
||||
local nPatt = EgtGetInfo( BtlInfoId, 'PATTID', 'i') or 40
|
||||
EmtOutput( '%'..EgtNumToString( nPatt, 0)..'.0')
|
||||
|
||||
-- aggiungo prefisso per commentae commenti iniziali se la macchina è utilizzata per fare i test
|
||||
local sPrefixCommentLine = '' ; if IS_TEST_MACHINE then sPrefixCommentLine = '//' end
|
||||
|
||||
if EMT.INFO then
|
||||
EmtOutput( '('..EMT.INFO..')')
|
||||
EmtOutput( sPrefixCommentLine..'('..EMT.INFO..')')
|
||||
else
|
||||
EmtOutput( '(Program Start)')
|
||||
end
|
||||
EmtOutput( '('.. CSP_INFO..')')
|
||||
EmtOutput( '('.. MACHINE_INFO..')\n')
|
||||
EmtOutput( sPrefixCommentLine..'('.. CSP_INFO..')')
|
||||
EmtOutput( sPrefixCommentLine..'('.. MACHINE_INFO..')\n')
|
||||
-- Se modalità test, aggiungo linee per muovere tappeto e alzare la testa (in automatico viene fatto dal main residente)
|
||||
if TEST_USE then
|
||||
EmtOutput( 'M28')
|
||||
@@ -615,6 +619,7 @@ function OnRapid()
|
||||
if not EMT.ZMAX and #EMT.AUXSTR > 0 then
|
||||
EmitZmax()
|
||||
EMT.ZMAX = true
|
||||
bHeadFirst = false
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -41,13 +41,17 @@ function OnProgramStart()
|
||||
local BtlInfoId = EgtGetFirstNameInGroup( GDB_ID.ROOT, 'BtlInfo') or EgtGetCurrMachGroup() or GDB_ID.NULL
|
||||
local nPatt = EgtGetInfo( BtlInfoId, 'PATTID', 'i') or 40
|
||||
EmtOutput( '%'..EgtNumToString( nPatt, 0)..'.0')
|
||||
|
||||
-- aggiungo prefisso per commentae commenti iniziali se la macchina è utilizzata per fare i test
|
||||
local sPrefixCommentLine = '' ; if IS_TEST_MACHINE then sPrefixCommentLine = '//' end
|
||||
|
||||
if EMT.INFO then
|
||||
EmtOutput( '('..EMT.INFO..')')
|
||||
EmtOutput( sPrefixCommentLine..'('..EMT.INFO..')')
|
||||
else
|
||||
EmtOutput( '(Program Start)')
|
||||
end
|
||||
EmtOutput( '('.. CSP_INFO..')')
|
||||
EmtOutput( '('.. MACHINE_INFO..')\n')
|
||||
EmtOutput( sPrefixCommentLine..'('.. CSP_INFO..')')
|
||||
EmtOutput( sPrefixCommentLine..'('.. MACHINE_INFO..')\n')
|
||||
-- Se modalità test, aggiungo linee per muovere tappeto e alzare la testa (in automatico viene fatto dal main residente)
|
||||
if TEST_USE then
|
||||
EmtOutput( 'M28')
|
||||
@@ -644,6 +648,7 @@ function OnRapid()
|
||||
EmitZmax( EMT.TOOL ~= EMT.PREVTOOL)
|
||||
EMT.ZMAX = true
|
||||
EMT.PREVTOOL = EMT.TOOL
|
||||
bHeadFirst = false
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -38,14 +38,18 @@ end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function OnProgramStart()
|
||||
|
||||
-- aggiungo prefisso per commentae commenti iniziali se la macchina è utilizzata per fare i test
|
||||
local sPrefixCommentLine = '' ; if IS_TEST_MACHINE then sPrefixCommentLine = '//' end
|
||||
|
||||
-- Intestazioni
|
||||
if EMT.INFO then
|
||||
ParkLine( '('..EMT.INFO..')')
|
||||
ParkLine( sPrefixCommentLine..'('..EMT.INFO..')')
|
||||
else
|
||||
ParkLine( '(Program Start)')
|
||||
end
|
||||
ParkLine( '('.. CSP_INFO..')')
|
||||
ParkLine( '('.. MACHINE_INFO..')')
|
||||
ParkLine( sPrefixCommentLine..'('.. CSP_INFO..')')
|
||||
ParkLine( sPrefixCommentLine..'('.. MACHINE_INFO..')')
|
||||
|
||||
-- Se modalità test, aggiungo linee per muovere tappeto e alzare la testa (in automatico viene fatto dal main residente)
|
||||
if TEST_USE then
|
||||
@@ -636,6 +640,7 @@ function OnRapid()
|
||||
if not ( EMT.LOAD or EMT.RELOAD) then
|
||||
if not EMT.ZMAX and #EMT.AUXSTR > 0 then
|
||||
EmitZmax()
|
||||
bHeadFirst = false
|
||||
end
|
||||
end
|
||||
-- primo posizionamento
|
||||
|
||||
+9
-5
@@ -1,4 +1,4 @@
|
||||
-- Processore macchina Essetre-FAST by EgalWare s.r.l. 2024/02/23
|
||||
-- Processore macchina Essetre-FAST by EgalWare s.r.l. 2024/03/09
|
||||
|
||||
-- Intestazioni
|
||||
require( 'EmtGenerator')
|
||||
@@ -923,10 +923,14 @@ function ExecUnloading()
|
||||
EgtMove( nLayId, vtMove, GDB_RT.GLOB)
|
||||
EgtSetLevel( vMillId, GDB_LV.USER)
|
||||
-- aggiungo gli spigoli
|
||||
local nFirstId, nCount = EgtVolZmapGetEdges( vMillId, nLayId)
|
||||
if nFirstId then
|
||||
for nId = nFirstId, nFirstId + nCount - 1 do
|
||||
EgtSetColor( nId, Color3d( 96, 96, 96))
|
||||
if EgtVolZmapSetShowEdges then
|
||||
EgtVolZmapSetShowEdges( vMillId, true)
|
||||
else
|
||||
local nFirstId, nCount = EgtVolZmapGetEdges( vMillId, nLayId)
|
||||
if nFirstId then
|
||||
for nId = nFirstId, nFirstId + nCount - 1 do
|
||||
EgtSetColor( nId, Color3d( 96, 96, 96))
|
||||
end
|
||||
end
|
||||
end
|
||||
-- rilascio Vmill
|
||||
|
||||
+8
-3
@@ -1,4 +1,4 @@
|
||||
-- Special Operations macchina Essetre-FAST by EgalWare s.r.l. 2024/02/23
|
||||
-- Special Operations macchina Essetre-FAST by EgalWare s.r.l. 2024/03/28
|
||||
|
||||
-- Intestazioni
|
||||
require( 'EmtGenerator')
|
||||
@@ -796,6 +796,7 @@ function SpecialCalcMachiningEncumbrance( nMchId, bPreCut)
|
||||
local bAngTrasm = ( sHead == 'H5' or sHead == 'H6')
|
||||
local dTLen = EgtTdbGetCurrToolParam( MCH_TP.LEN)
|
||||
local dTDiam = EgtTdbGetCurrToolParam( MCH_TP.DIAM)
|
||||
local dThLen = EgtTdbGetCurrToolThLength()
|
||||
-- Se sega a catena, devo correggere il versore Aux per farlo coincidere con la direzione del braccio C
|
||||
if bChain then
|
||||
if abs( vAxes[6] or 0) < 1 then
|
||||
@@ -811,7 +812,7 @@ function SpecialCalcMachiningEncumbrance( nMchId, bPreCut)
|
||||
if nExit == 2 then vtAux = -vtAux end
|
||||
end
|
||||
-- Calcolo limiti derivanti dalla lavorazione
|
||||
local dDistFront, dDistBack = SpecCalcEncumbrance( vtTool, vtAux, ptMin, ptMax, bSaw, bChain, dTLen, dTDiam)
|
||||
local dDistFront, dDistBack = SpecCalcEncumbrance( vtTool, vtAux, ptMin, ptMax, bSaw, bChain, dTLen, dTDiam, dThLen)
|
||||
return dDistFront, dDistBack
|
||||
end
|
||||
|
||||
@@ -870,7 +871,7 @@ function GetFinalCutPmax( nMchId)
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function SpecCalcEncumbrance( vtTool, vtArm, ptMin, ptMax, bSaw, bChain, dTLen, dTDiam)
|
||||
function SpecCalcEncumbrance( vtTool, vtArm, ptMin, ptMax, bSaw, bChain, dTLen, dTDiam, dThLen)
|
||||
-- Quota in Z dal punto di inclinazione dei carrelli
|
||||
local dCompZ = sqrt( 1 - vtTool:getZ() * vtTool:getZ())
|
||||
local dZup = ptMin:getZ() - 0.5 * dCompZ * dTDiam - ( EMC.ZMIN + 130)
|
||||
@@ -1055,6 +1056,10 @@ function SpecCalcEncumbrance( vtTool, vtArm, ptMin, ptMax, bSaw, bChain, dTLen,
|
||||
(( vtTool:getY() > 0 and ptHeadMin:getY() > 80) or ( vtTool:getY() < 0 and ptHeadMax:getY() < -EMC.SB - 80)) then
|
||||
dHeadFront = 130
|
||||
end
|
||||
-- per forature di coda abbastanza lontane dai bordi pezzo in Y
|
||||
if BD.ENABLE_TOOL_BETWEEN_VICES and not bChain and vtTool:getX() < -0.999 and ptHeadMax:getY() + dTDiam / 2 < -15 and ptHeadMin:getY() - dTDiam / 2 > -EMC.SB + 15 then
|
||||
dHeadFront = - ( dTLen - dThLen - 15)
|
||||
end
|
||||
-- per interferenza con triangolo di rinforzo sulla pinza V
|
||||
if ( vtTool:getZ() < 0.25 and vtTool:getX() > -0.10 and vtTool:getY() > 0 and vtArm:getX() > 0.707 and not BD.RIGHT_LOAD) or
|
||||
( vtTool:getZ() < 0.25 and vtTool:getX() > -0.10 and vtTool:getY() < 0 and vtArm:getX() > 0.707 and BD.RIGHT_LOAD) then
|
||||
|
||||
+5
-5
@@ -25,11 +25,11 @@ REM copio i sorgenti nel percorso temporaneo per i compilati
|
||||
ROBOCOPY . %fullPathSource%\bin\%machineName%\ /E /XF "Compile.bat" /XF ".gitignore" /XD ".git" /XF "UpdateLog.txt"
|
||||
|
||||
REM copio i file compilati nel percorso temporaneo per i compilati
|
||||
\EgtProg\Dll32\luac54 -o %fullPathSource%\bin\%machineName%\Common-FAST.mlpe Common-FAST.mlpe
|
||||
\EgtProg\Dll32\luac54 -o %fullPathSource%\bin\%machineName%\Common-FAST.mlse Common-FAST.mlse
|
||||
\EgtProg\Dll32\luac54 -o %fullPathSource%\bin\%machineName%\Common-FAST.NUM.mlpe Common-FAST.NUM.mlpe
|
||||
\EgtProg\Dll32\luac54 -o %fullPathSource%\bin\%machineName%\Common-FAST.NUM_PLUS.mlpe Common-FAST.NUM_PLUS.mlpe
|
||||
\EgtProg\Dll32\luac54 -o %fullPathSource%\bin\%machineName%\Common-FAST.TPA.mlpe Common-FAST.TPA.mlpe
|
||||
\EgtProg\Dll32\luac54 -o %fullPathSource%\bin\%machineName%\Common-FAST.mlpe -s Common-FAST.mlpe
|
||||
\EgtProg\Dll32\luac54 -o %fullPathSource%\bin\%machineName%\Common-FAST.mlse -s Common-FAST.mlse
|
||||
\EgtProg\Dll32\luac54 -o %fullPathSource%\bin\%machineName%\Common-FAST.NUM.mlpe -s Common-FAST.NUM.mlpe
|
||||
\EgtProg\Dll32\luac54 -o %fullPathSource%\bin\%machineName%\Common-FAST.NUM_PLUS.mlpe -s Common-FAST.NUM_PLUS.mlpe
|
||||
\EgtProg\Dll32\luac54 -o %fullPathSource%\bin\%machineName%\Common-FAST.TPA.mlpe -s Common-FAST.TPA.mlpe
|
||||
|
||||
REM comprimo i file compilati in uno zip pronto per essere distribuito
|
||||
tar.exe acvf %fullPathZip%\%machineName%.zip -C %fullPathSource%\bin\ %machineName%\*.*
|
||||
|
||||
+19
-6
@@ -1,4 +1,4 @@
|
||||
-- Descrizione macchina Essetre-FAST by EgalTech s.r.l. 2024/01/19
|
||||
-- Descrizione macchina Essetre-FAST by EgalTech s.r.l. 2024/03/28
|
||||
-- 2021/12/29 DS ver 2.3l4 Per NUM non va considerato MillOffs negli offset in Z.
|
||||
-- 2022/01/27 DS ver 2.4a2 Modifiche per tagli testa/coda su pezzi alti.
|
||||
-- 2022/02/10 DS ver 2.4a3 Ridotto di 10mm pinzaggio con pezzi alti ma sottili.
|
||||
@@ -43,11 +43,15 @@
|
||||
-- 2024/02/29 AV ver 2.6c5 Allineamento con common ver. 2.6c5
|
||||
-- 2024/03/04 AV ver 2.6c6 Modificato log con nome macchina
|
||||
-- Allineamento con common ver. 2.6c6
|
||||
-- 2024/03/09 DS ver 2.6c7 Migliorie alla geometria macchina e suo caricamento.
|
||||
-- 2024/03/12 AV ver 2.6c8 Allineamento con common ver. 2.6c7.
|
||||
-- 2024/03/28 DS ver 2.6c9 Modificata posizione supporto rinvio.
|
||||
-- 2024/03/28 AV ver 2.6d1 Allineamento con common ver. 2.6c8
|
||||
|
||||
require( 'EmtGenerator')
|
||||
EgtEnableDebug( false)
|
||||
|
||||
PP_VER = '2.6c6'
|
||||
PP_VER = '2.6d1'
|
||||
MIN_MACH_VER = '2.5k1'
|
||||
MACH_NAME = 'Essetre-FAST'
|
||||
|
||||
@@ -219,9 +223,18 @@ local CId = EmtAxis {
|
||||
Geo = 'C_AXIS/GEO',
|
||||
Aux = {'C_AXIS/SOLID', 'C_AXIS/COLLISION'}}
|
||||
if NewTopC then
|
||||
local SolidTopId = EgtGetFirstNameInGroup( EgtGetFirstNameInGroup( CId, 'SOLID'), 'TOP')
|
||||
local vtMove = Vector3d( 65,0,0)
|
||||
local SolidArmId = EgtGetFirstNameInGroup( EgtGetFirstNameInGroup( CId, 'SOLID'), 'ARM')
|
||||
if EgtSurfTmMoveFacet then
|
||||
EgtSurfTmMoveFacet( SolidArmId, 11, vtMove, GDB_RT.GLOB)
|
||||
else
|
||||
EgtSurfTmMoveVertex( SolidArmId, 23, EgtSurfTmGetVertex( SolidArmId, 23, GDB_RT.GLOB) + vtMove, GDB_RT.GLOB)
|
||||
EgtSurfTmMoveVertex( SolidArmId, 25, EgtSurfTmGetVertex( SolidArmId, 25, GDB_RT.GLOB) + vtMove, GDB_RT.GLOB)
|
||||
EgtSurfTmMoveVertex( SolidArmId, 35, EgtSurfTmGetVertex( SolidArmId, 35, GDB_RT.GLOB) + vtMove, GDB_RT.GLOB)
|
||||
EgtSurfTmMoveVertex( SolidArmId, 36, EgtSurfTmGetVertex( SolidArmId, 36, GDB_RT.GLOB) + vtMove, GDB_RT.GLOB)
|
||||
end
|
||||
local CollTopId = EgtGetFirstNameInGroup( EgtGetFirstNameInGroup( CId, 'COLLISION'), 'TOP')
|
||||
EgtMove( { SolidTopId, CollTopId}, Vector3d( 65,0,0), GDB_RT.GLOB)
|
||||
EgtMove( CollTopId, vtMove, GDB_RT.GLOB)
|
||||
EgtSetName( CollTopId, 'BOX')
|
||||
else
|
||||
local CollTopId = EgtGetFirstNameInGroup( EgtGetFirstNameInGroup( CId, 'COLLISION'), 'TOP')
|
||||
@@ -500,9 +513,9 @@ elseif SecondSupport == 3 then
|
||||
Name = 'T91',
|
||||
Parent = 'Base',
|
||||
ExitNbr = 2,
|
||||
Pos1 = Point3d( -510.4-150, 113.2, -329.8-170),
|
||||
Pos1 = Point3d( -710.4-150, 113.2, -329.8-170),
|
||||
TDir1 = X_AX(),
|
||||
Pos2 = Point3d( -510.4+150, 113.2, -329.8-170),
|
||||
Pos2 = Point3d( -710.4+150, 113.2, -329.8-170),
|
||||
TDir2 = -X_AX(),
|
||||
ADir = Z_AX(),
|
||||
Geo = 'BASE/T91',
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,5 +1,13 @@
|
||||
==== Common_FAST Update Log ====
|
||||
|
||||
Versione 2.6c8 (28/03/2024)
|
||||
- (MLSE) Possibilità di lavorazione da X- tra le pinze, se abilitata da flag (User.ENABLE_TOOL_BETWEEN_VICES == 1).
|
||||
- (MLDE-GEN) Aggiunto parametro 'IS_TEST_MACHINE' FACOLTATIVO. Se non esiste o 'false' è macchina standard, se 'true' è una macchina utilizzata per i test Egalware interni
|
||||
|
||||
Versione 2.6c7 (12/03/2024)
|
||||
- (SIM) Miglioramento visualizzazione spigoli VMILL alla fine della simulazione. Funzione: EgtVolZmapSetShowEdges. N.B.= serve CAM5 2.6c2 NON OBBLIGATORIO
|
||||
- (GEN) Corretto problema di movimento pinze assieme a discesa asse Z (Ticket #1710)
|
||||
|
||||
Versione 2.6c6 (04/03/2024)
|
||||
- (MLDE-GEN) Aggiunta variabile 'MACH_NAME' in MLDE con nome macchina
|
||||
|
||||
|
||||
+2
-2
@@ -1,9 +1,9 @@
|
||||
-- Version.lua by EgalWare s.r.l. 2024/02/23
|
||||
-- Version.lua by EgalWare s.r.l. 2024/03/28
|
||||
-- Gestione della versione dei file comuni post-processori macchine FAST e FASTrl di Essetre
|
||||
|
||||
local InfoCommon_STD_PP = {
|
||||
NAME = 'Common-FAST', -- nome script PP standard
|
||||
VERSION = '2.6c6', -- versione script
|
||||
VERSION = '2.6c8', -- versione script
|
||||
MIN_MACH_VER_PP_COMMON = '2.5k1' -- versione minima kernel
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user