In PrepareUnload, si chiama una funzionalità diversa in base a dove si vuol fare eseguire i comandi, processo 1 o processo 2

This commit is contained in:
andrea.villa
2026-03-10 10:01:01 +01:00
parent f559be5e4a
commit e574a01ff5
3 changed files with 73 additions and 35 deletions
+69 -31
View File
@@ -1248,46 +1248,84 @@ end
---------------------------------------------------------------------
function PrepareUnload( sCmd)
local Cmd = EgtSplitString( sCmd)
if Cmd[1] == '0' then
elseif Cmd[1] == '1' then
if Cmd[2] ~= 'Z' then
-- se ultima lavorazione si utilizza il POSIZ_T(5) per eseguire su processo 1
if IsLastMachining( EMT.MCHID) then
if Cmd[1] == '0' then
elseif Cmd[1] == '1' then
if Cmd[2] ~= 'Z' then
EMT.NSTEP = EMT.NSTEP + 10
local sStep = EgtNumToString( EMT.NSTEP, 0)
local sOut = '_STEP='..sStep
table.insert( EMT.AUXSTR, sOut)
local sX2Pos = Cmd[3]
sOut = string.format( 'G1 X=%s F=%d', sX2Pos, EMT.FMAXPINZE)
table.insert( EMT.AUXSTR, sOut)
sOut = '_POSIZ_T(5,,,,,2,,,,)' -- attiva spintore scarico pezzo restanto su processo 1
table.insert( EMT.AUXSTR, sOut)
sOut = '_N'..sStep..':STOPRE\n'
table.insert( EMT.AUXSTR, sOut)
end
elseif Cmd[1] == '2' then
EMT.NSTEP = EMT.NSTEP + 10
local sStep = EgtNumToString( EMT.NSTEP, 0)
local sOut = '_STEP='..sStep
table.insert( EMT.AUXSTR, sOut)
local sX2Pos = Cmd[3]
local sX2Pos = Cmd[5]
sOut = string.format( 'G1 X=%s F=%d', sX2Pos, EMT.FMAXPINZE)
table.insert( EMT.AUXSTR, sOut)
sOut = '_POSIZ_T(5,,,,,2,,,,)' -- attiva spintore scarico pezzo restanto su processo 1
table.insert( EMT.AUXSTR, sOut)
sOut = '_N'..sStep..':STOPRE\n'
table.insert( EMT.AUXSTR, sOut)
elseif Cmd[1] == '3' then
-- non gestito
elseif Cmd[1] == '11' then
-- non gestito
elseif Cmd[1] == '12' then
EMT.NSTEP = EMT.NSTEP + 10
local sStep = EgtNumToString( EMT.NSTEP, 0)
local sOut = '_STEP='..sStep
table.insert( EMT.AUXSTR, sOut)
sOut = '_POSIZ_T(5,,,,,1,,,,)' -- apre pinza 2 restando su processo 1
table.insert( EMT.AUXSTR, sOut)
sOut = '_N'..sStep..':STOPRE\n'
table.insert( EMT.AUXSTR, sOut)
elseif Cmd[1] == '21' then
-- non interessa
end
-- se scarico di un pezzo della barra, si utilizza POSIZ_T(6) per mettere su processo 2
else
if Cmd[1] == '0' then
-- non interessa
elseif Cmd[1] == '1' then
;
elseif Cmd[1] == '2' then
local sOut = 'STOPRE'
table.insert( EMT.AUXSTR, sOut)
EMT.NSTEP = EMT.NSTEP + 10
local sStep = EgtNumToString( EMT.NSTEP, 0)
sOut = '_STEP='..sStep
table.insert( EMT.AUXSTR, sOut)
local nFunz = 6
local nVertClamp = 0
local dPress = 2.5
local dFeed = GetClampFeed( EMT.LENGTHPART)
local dAcc = 4
local nOpt = 0
local sRef1 = Cmd[5]
local sRef2 = EmtLenToString( ParkX2 - ( EMT.LENGTHPART - EMT.X2DELTA), 3)
sOut = string.format( '_POSIZ_T(%d,%d,%.1f,%.1f,%.1f,%d,%s,%s,,)', nFunz, nVertClamp, dPress, dFeed, dAcc, nOpt, sRef1, sRef2)
table.insert( EMT.AUXSTR, sOut)
sOut = '_N'..sStep..':STOPRE'
table.insert( EMT.AUXSTR, sOut)
EMT.U_STD = true
elseif Cmd[1] == '3' then
;
elseif Cmd[1] == '11' then
;
elseif Cmd[1] == '12' then
;
elseif Cmd[1] == '21' then
-- non interessa
end
elseif Cmd[1] == '2' then
EMT.NSTEP = EMT.NSTEP + 10
local sStep = EgtNumToString( EMT.NSTEP, 0)
local sOut = '_STEP='..sStep
table.insert( EMT.AUXSTR, sOut)
local sX2Pos = Cmd[5]
sOut = string.format( 'G1 X=%s F=%d', sX2Pos, EMT.FMAXPINZE)
table.insert( EMT.AUXSTR, sOut)
sOut = '_N'..sStep..':STOPRE\n'
table.insert( EMT.AUXSTR, sOut)
elseif Cmd[1] == '3' then
-- non gestito
elseif Cmd[1] == '11' then
-- non gestito
elseif Cmd[1] == '12' then
EMT.NSTEP = EMT.NSTEP + 10
local sStep = EgtNumToString( EMT.NSTEP, 0)
local sOut = '_STEP='..sStep
table.insert( EMT.AUXSTR, sOut)
sOut = '_POSIZ_T(5,,,,,1,,,,)' -- apre pinza 2 restando su processo 1
table.insert( EMT.AUXSTR, sOut)
sOut = '_N'..sStep..':STOPRE\n'
table.insert( EMT.AUXSTR, sOut)
elseif Cmd[1] == '21' then
-- non interessa
end
end
+1 -1
View File
@@ -9,7 +9,7 @@
require( 'EmtGenerator')
EgtEnableDebug( false)
PP_VER = '3.1c1_DEV6'
PP_VER = '3.1c1_DEV7'
MIN_MACH_VER = '2.7l2'
EgtOutLog ( '** Saomad-KAIROS '..PP_VER..' (MinMach '.. MIN_MACH_VER ..') **', 1)
+3 -3
View File
@@ -1217,10 +1217,10 @@ local RAPID_B_FEED = FmaxA -- deg/min ex: 10440
local RAPID_MIN_T = 0.1 -- s ex: 0.2
local TOOL_CHANGE = 15 -- s ex: 14
local LOAD_T = 10 -- s ex: 16
local CHAR_ONE_MOVE_T = 1 -- s ex: 2
local CHAR_ONE_MOVE_T = 1 -- s ex: 2
local ROTATION_T = 40 -- s ex: 40
local SPLIT_T = 6 -- s ex: 9
local UNLOAD_T = 4 -- s ex: 12
local SPLIT_T = 6 -- s ex: 9
local UNLOAD_T = 4 -- s ex: 12
local FALL_T = 2 -- s ex: 4
---------------------------------------------------------------------