- Sistemati codici per ripartenze

- Aggiunti movimenti simulazione cambio utensile
This commit is contained in:
andrea.villa
2026-05-12 08:25:15 +02:00
parent 938c9fc536
commit 779e049eca
3 changed files with 42 additions and 24 deletions
+17 -14
View File
@@ -664,6 +664,9 @@ function OnRapid()
MyEmtOutput( sOut)
EMT.SPEED_ON = true
MyEmtOutput( '_N'..sStep1..':STOPRE')
else
local sStep = EgtNumToString( EMT.NSTEP, 0)
MyEmtOutput( '_N'..sStep..':STOPRE')
end
-- eventuale avvio mandrino (se non già avviato)
EmitSpeedOn( EMT.S)
@@ -1337,28 +1340,28 @@ function PrepareUnload( sCmd)
local sStep = EgtNumToString( EMT.NSTEP, 0)
local sOut = '_STEP='..sStep
table.insert( EMT.AUXSTR, sOut)
sOut = '_N'..sStep..':STOPRE'
table.insert( EMT.AUXSTR, sOut)
local sX2Pos = Cmd[3]
sOut = string.format( 'POS[X2]=%s FA[X2]=%d', sX2Pos, EMT.FMAXPINZE)
table.insert( EMT.AUXSTR, sOut)
sOut = '_POSIZ_T(5,,,,,3,,,,)' -- discesa blocco pezzo
table.insert( EMT.AUXSTR, sOut)
sOut = '_N'..sStep..':STOPRE\n'
sOut = '_POSIZ_T(5,,,,,3,,,,)\n' -- discesa blocco pezzo
table.insert( EMT.AUXSTR, sOut)
EMT.NSTEP = EMT.NSTEP + 10
sStep = EgtNumToString( EMT.NSTEP, 0)
sOut = '_STEP='..sStep
table.insert( EMT.AUXSTR, sOut)
sOut = '_POSIZ_T(5,,,,,4,,,,)' -- pistone scarico avanti per spingere pezzo
sOut = '_N'..sStep..':STOPRE'
table.insert( EMT.AUXSTR, sOut)
sOut = '_N'..sStep..':STOPRE\n'
sOut = '_POSIZ_T(5,,,,,4,,,,)\n' -- pistone scarico avanti per spingere pezzo
table.insert( EMT.AUXSTR, sOut)
EMT.NSTEP = EMT.NSTEP + 10
sStep = EgtNumToString( EMT.NSTEP, 0)
sOut = '_STEP='..sStep
table.insert( EMT.AUXSTR, sOut)
sOut = '_POSIZ_T(5,,,,,5,,,,)' -- pistone scarico indietro
sOut = '_N'..sStep..':STOPRE'
table.insert( EMT.AUXSTR, sOut)
sOut = '_N'..sStep..':STOPRE\n'
sOut = '_POSIZ_T(5,,,,,5,,,,)\n' -- pistone scarico indietro
table.insert( EMT.AUXSTR, sOut)
end
elseif Cmd[1] == '2' then
@@ -1366,10 +1369,10 @@ function PrepareUnload( sCmd)
local sStep = EgtNumToString( EMT.NSTEP, 0)
local sOut = '_STEP='..sStep
table.insert( EMT.AUXSTR, sOut)
local sX2Pos = Cmd[5]
sOut = string.format( 'POS[X2]=%s FA[X2]=%d', sX2Pos, EMT.FMAXPINZE)
sOut = '_N'..sStep..':STOPRE'
table.insert( EMT.AUXSTR, sOut)
sOut = '_N'..sStep..':STOPRE\n'
local sX2Pos = Cmd[5]
sOut = string.format( 'POS[X2]=%s FA[X2]=%d\n', sX2Pos, EMT.FMAXPINZE)
table.insert( EMT.AUXSTR, sOut)
elseif Cmd[1] == '3' then
-- non gestito
@@ -1380,17 +1383,17 @@ function PrepareUnload( sCmd)
local sStep = EgtNumToString( EMT.NSTEP, 0)
local sOut = '_STEP='..sStep
table.insert( EMT.AUXSTR, sOut)
sOut = '_POSIZ_T(5,,,,,1,,,,)' -- apre pinza 2
sOut = '_N'..sStep..':STOPRE'
table.insert( EMT.AUXSTR, sOut)
sOut = '_N'..sStep..':STOPRE\n'
sOut = '_POSIZ_T(5,,,,,1,,,,)\n' -- apre pinza 2
table.insert( EMT.AUXSTR, sOut)
EMT.NSTEP = EMT.NSTEP + 10
sStep = EgtNumToString( EMT.NSTEP, 0)
sOut = '_STEP='..sStep
table.insert( EMT.AUXSTR, sOut)
sOut = '_POSIZ_T(5,,,,,2,,,,)' -- solleva il blocca-pezzo
sOut = '_N'..sStep..':STOPRE'
table.insert( EMT.AUXSTR, sOut)
sOut = '_N'..sStep..':STOPRE\n'
sOut = '_POSIZ_T(5,,,,,2,,,,)\n' -- solleva il blocca-pezzo
table.insert( EMT.AUXSTR, sOut)
elseif Cmd[1] == '21' then
-- non interessa
+4 -2
View File
@@ -9,7 +9,7 @@
require( 'EmtGenerator')
EgtEnableDebug( false)
PP_VER = '3.1d1_DEV10'
PP_VER = '3.1e1_DEV1'
MIN_MACH_VER = '3.1c1'
EgtOutLog ( '** Saomad-KAIROS '..PP_VER..' (MinMach '.. MIN_MACH_VER ..') **', 1)
@@ -19,7 +19,7 @@ NumericalControl = 'SIEMENS'
ChainSaw = false
MinY = -823
MaxY = 520
ParkY = 400
ParkY = -125
FmaxY = 45000
MinZ = -298
MaxZ = 915
@@ -30,6 +30,8 @@ MaxA = 120
MinSawA = -101
MaxSawA = 101
ParkA = 0
TakePosTC_R = -90
TakePosTC_L = 90
FmaxA = 10440
MinC = -240
MaxC = 240
+21 -8
View File
@@ -504,6 +504,10 @@ function OnSimulToolSelect( dPosCS)
EMT.TCPOS_1 = EMT.TCPOS
-- lo nascondo sul portautensili
ShowToolInTcPos( EMT.TCPOS, false)
-- movimento di uscita dal porta utensile
if EMT.HEAD == 'H1' or EMT.HEAD == 'H2' then
SimulMoveAxes( 'Y', ParkY, MCH_SIM_STEP.RAPID, 'A', ParkA, MCH_SIM_STEP.RAPROT, 'C', ParkC, MCH_SIM_STEP.RAPROT)
end
end
---------------------------------------------------------------------
@@ -522,30 +526,39 @@ function OnSimulToolDeselect()
else
SimulMoveAxes( 'A', ParkA, MCH_SIM_STEP.COLLROT, 'C', GetChainSawCHomeFromVirtualAxis( dPosCS), MCH_SIM_STEP.COLLROT)
end
SimulMoveAxis( 'Y', ParkY, MCH_SIM_STEP.RAPID)
elseif EMT.HEAD == 'H2' then
SimulMoveAxes( 'A', TakePosTC_R, MCH_SIM_STEP.COLLROT, 'C', ParkC, MCH_SIM_STEP.COLLROT)
elseif EMT.HEAD == 'H1' then
SimulMoveAxes( 'A', TakePosTC_L, MCH_SIM_STEP.COLLROT, 'C', ParkC, MCH_SIM_STEP.COLLROT)
end
SimulMoveAxis( 'Y', MinY, MCH_SIM_STEP.RAPID)
-- breve pausa
EgtPause( 100)
-- nascondo utensile su testa e lo visualizzo su TcPos
EgtSetMode( EgtGetHeadId( EMT.HEAD), GDB_MD.HIDDEN)
ShowToolInTcPos( EMT.TCPOS_1, true)
-- movimento per carico utensile
SimulMoveAxes( 'A', ParkA, MCH_SIM_STEP.RAPROT, 'C', ParkC, MCH_SIM_STEP.RAPROT)
--SimulMoveAxes( 'Y', ParkY, MCH_SIM_STEP.RAPID, 'A', ParkA, MCH_SIM_STEP.RAPROT, 'C', ParkC, MCH_SIM_STEP.RAPROT)
EgtOutText( '')
-- deposito utensile
else
if EMT.NEXTTOOL ~= EMT.TOOL_1 then
EgtOutText( 'Tool change in progress...')
-- simulo movimento
SimulMoveAxes( 'A', ParkA, MCH_SIM_STEP.COLLROT, 'C', ParkC, MCH_SIM_STEP.COLLROT)
SimulMoveAxis( 'Y', ParkY, MCH_SIM_STEP.RAPID)
if EMT.HEAD == 'H2' then
SimulMoveAxes( 'A', TakePosTC_R, MCH_SIM_STEP.COLLROT, 'C', ParkC, MCH_SIM_STEP.COLLROT)
elseif EMT.HEAD == 'H1' then
SimulMoveAxes( 'A', TakePosTC_L, MCH_SIM_STEP.COLLROT, 'C', ParkC, MCH_SIM_STEP.COLLROT)
end
SimulMoveAxis( 'Y', MinY, MCH_SIM_STEP.RAPID)
-- breve pausa
EgtPause( 100)
-- nascondo utensile su testa e lo visualizzo su TcPos
EgtSetMode( EgtGetHeadId( EMT.HEAD), GDB_MD.HIDDEN)
ShowToolInTcPos( EMT.TCPOS_1, true)
-- nascondo l'utensile corrente
EgtSetStatus( EgtGetHeadId( EMT.HEAD), GDB_ST.OFF)
-- eseguo movimento opportuno
SimulMoveAxes( 'A', ParkA, MCH_SIM_STEP.RAPROT, 'C', ParkC, MCH_SIM_STEP.RAPROT)
EgtOutText( '')
-- eseguo movimento opportuno
--SimulMoveAxes( 'A', ParkA, MCH_SIM_STEP.RAPROT, 'C', ParkC, MCH_SIM_STEP.RAPROT)
else
EMT.TOOL_1 = nil
EMT.TCPOS_1 = nil