diff --git a/Beam/BeamData.lua b/Beam/BeamData.lua index 936506d..343c424 100644 --- a/Beam/BeamData.lua +++ b/Beam/BeamData.lua @@ -10,6 +10,7 @@ local BeamData = { SIMUL_VIEW_DIR = 1, -- direzione di vista predefinita per la simulazione (1=NW, 2=SW, 3=NE, 4=SE) GO_FAST = 0, -- flag abilitazione modalità veloce (0=no, 1=carrelli, 2=anche cambio utensili) ROT90 = false, -- flag abilitazione rotazione 90 gradi + ROT180 = true, -- flag abilitazione rotazione 180 gradi NEWCLAMPING = false, -- flag abilitazione nuovo metodo riposizionamento carrelli FASTCLAMPING= true, -- flag abilitazione riduzione numero riposizionamenti al carico e durante grande trascinamento MIN_WIDTH = 40, -- larghezza minima del grezzo @@ -112,6 +113,7 @@ if EgtExistsFile( sData) then if Machine.Offsets.NEWCLAMPING ~= nil then BeamData.NEWCLAMPING = ( Machine.Offsets.NEWCLAMPING == 1) end if Machine.Offsets.FASTCLAMPING ~= nil then BeamData.FASTCLAMPING = ( Machine.Offsets.FASTCLAMPING == 1) end if Machine.Offsets.ROT90 ~= nil then BeamData.ROT90 = ( Machine.Offsets.ROT90 == 1) end + if Machine.Offsets.ROT180 ~= nil then BeamData.ROT180 = ( Machine.Offsets.ROT180 == 1) end end if Machine.Trave then BeamData.MIN_WIDTH = Machine.Trave.XMIN or BeamData.MIN_WIDTH diff --git a/Common_FAST.NUM.mlpe b/Common_FAST.NUM.mlpe index 360a8c3..b5621b3 100644 --- a/Common_FAST.NUM.mlpe +++ b/Common_FAST.NUM.mlpe @@ -1647,7 +1647,7 @@ end --------------------------------------------------------------------- function GetET( sHead, sTcPos, dAxR3) - if sHead == 'H1' then + if sHead == 'H1' or sHead == 'H5' or sHead == 'H6' then return ' E'..sTcPos elseif sHead == 'H2' then return ' ET42' diff --git a/Essetre-FASTrl.ini b/Essetre-FASTrl.ini index 6796466..9e5e8d3 100644 --- a/Essetre-FASTrl.ini +++ b/Essetre-FASTrl.ini @@ -21,6 +21,10 @@ H1.1:MILL_NOTIP=MillNoTip.nge H1.1:SAW_FLAT=TcSaw.nge H2.1=Saw.nge H3.1=ChainSaw.nge +H5.1=AngTransm.nge +H5.2=AngTransm.nge +H6.1=AngTransm.nge +H6.2=AngTransm.nge [Machinings] Drilling=1 @@ -46,6 +50,8 @@ H1=6608 H2=6615 ; Chainsaw H3=6616 +; Angular transmission +H5=6603 [SetUp] Default=Standard diff --git a/Essetre-FASTrl.mlde b/Essetre-FASTrl.mlde index ff087d7..d856c3b 100644 --- a/Essetre-FASTrl.mlde +++ b/Essetre-FASTrl.mlde @@ -94,14 +94,14 @@ if EgtExistsFile( sData) then if Machine then if Machine.Offsets then NumericalControl = EgtIf( Machine.Offsets.TIPO_CN == 0, 'NUM', 'TPA') - if Machine.Offsets.MIN_X then MaxX = -Machine.Offsets.MIN_X end - if Machine.Offsets.MAX_X then MinX = -Machine.Offsets.MAX_X end - MinZ = Machine.Offsets.MIN_Z or MinZ - MaxZ = Machine.Offsets.MAX_Z or MaxZ - MinB = Machine.Offsets.MIN_B or MinB - MaxB = Machine.Offsets.MAX_B or MaxB - MinC = Machine.Offsets.MIN_C or MinC - MaxC = Machine.Offsets.MAX_C or MaxC + if Machine.Offsets.MAX_X then MinX = - Machine.Offsets.MAX_X end + if Machine.Offsets.MIN_X then MaxX = - Machine.Offsets.MIN_X end + if Machine.Offsets.MIN_Z then MinZ = Machine.Offsets.MIN_Z end + if Machine.Offsets.MAX_Z then MaxZ = Machine.Offsets.MAX_Z end + if Machine.Offsets.MIN_B then MinB = Machine.Offsets.MIN_B end + if Machine.Offsets.MAX_B then MaxB = Machine.Offsets.MAX_B end + if Machine.Offsets.MIN_C then MinC = Machine.Offsets.MIN_C end + if Machine.Offsets.MAX_C then MaxC = Machine.Offsets.MAX_C end MinY = Machine.Offsets.MIN_Y or Machine.Offsets.MINY or MinY MaxY = Machine.Offsets.MAX_Y or Machine.Offsets.MAXY or MaxY ParkY = Machine.Offsets.PARKYY or ParkY @@ -132,6 +132,7 @@ if EgtExistsFile( sData) then if Machine.Offsets.MIN_JOIN_LS then MinJoinLS = Machine.Offsets.MIN_JOIN_LS end if Machine.Offsets.MIN_JOIN_SL then MinJoinSL = Machine.Offsets.MIN_JOIN_SL end if Machine.Offsets.MIN_JOIN_LL then MinJoinLL = Machine.Offsets.MIN_JOIN_LL end + if Machine.Offsets.NEWTOPC then NewTopC = ( Machine.Offsets.NEWTOPC == 1) end end end end @@ -269,6 +270,31 @@ EgtSetInfo( H3Id, 'ZMAXONROT', '1,5') if BeamHeightForFixRot < 1000 then EgtSetInfo( H3Id, 'ROTATZMAX', '1') end +-- Eventuale rinvio angolare +if SecondSupport >= 3 then + local H5Id = EmtHead { + Name = 'H5', + Parent = 'B', + HSet = 'H1', + Type = MCH_HT.MULTI, + ExitNbr = 2, + Pos1 = Point3d( 0, AngTr1Len, -AngTr1Offs), + TDir1 = -Y_AX(), + Pos2 = Point3d( 0, -AngTr1Len, -AngTr1Offs), + TDir2 = Y_AX(), + ADir = Z_AX(), + Rot1W = 0.2, + Rot2Stroke = { -120, 120}, + OthColl = { 'H2', 'B/SOLID', 'C/SOLID'}, + Geo = 'H5_HEAD/GEO', + Aux = {'H5_HEAD/SOLID', 'H5_HEAD/COLLISION'}} + EgtSetInfo( H5Id, 'AGB_TYPE', 2) + EgtSetInfo( H5Id, 'AGB_DMAX', 240) + EgtSetInfo( H5Id, 'AGB_ENCH', 44) + EgtSetInfo( H5Id, 'AGB_ENCV', 380) + EgtSetInfo( H5Id, 'AGB_MDIR', -X_AX()) + EgtSetInfo( H5Id, 'ZMAXONROT', '1,15') +end -- Morse local YId = EmtAxis { Name = 'Y', @@ -423,6 +449,7 @@ else Geo = 'BASE/T101S'} end if SecondSupport == 1 then + -- supporto per punta EmtTcPos { Name = 'T111', Parent = 'Base', @@ -430,6 +457,29 @@ if SecondSupport == 1 then TDir = Z_AX(), ADir = -X_AX(), Geo = 'BASE/T111'} +elseif SecondSupport == 2 then + -- supporto per mortasatrice + local TcpSsId = EmtTcPos { + Name = 'T111', + Parent = 'Base', + Pos = Point3d( 510.4, -113.2, -430.8), + TDir = X_AX(), + ADir = Z_AX(), + Geo = 'BASE/T111M'} + EgtSetInfo( TcpSsId, 'Mortiser', true) +elseif SecondSupport == 3 then + -- supporto per rinvio angolare + local TcpSsId = EmtTcPos { + Name = 'T91', + Parent = 'Base', + ExitNbr = 2, + Pos1 = Point3d( 710.4+150, -113.2, -329.8-170), + TDir1 = -X_AX(), + Pos2 = Point3d( 710.4-150, -113.2, -329.8-170), + TDir2 = X_AX(), + ADir = Z_AX(), + Geo = 'BASE/T91', + Aux = 'BASE/T91_HS'} end if SpecialBH then EmtTcPos { diff --git a/Scripts/SetUp.lua b/Scripts/SetUp.lua index 2806b6e..97f9aee 100644 --- a/Scripts/SetUp.lua +++ b/Scripts/SetUp.lua @@ -39,10 +39,18 @@ local PositionTable={{Pos = "Pos1", TcPos = "T1", Head = "H1", Group = "G1"}, {Pos = "Pos10", TcPos = "T10", Head = "H1", Group = "G1"}, {Pos = "Pos11", TcPos = "T11", Head = "H1", Group = "G1"}, {Pos = "Pos12", TcPos = "T42", Head = "H2", Group = "G1"}, - {Pos = "Pos13", TcPos = "T101", Head = "H3", Group = "G1"}} - -if EgtGetTcPosId( 'T111') then - table.insert( PositionTable, {Pos = "Pos14", TcPos = "T111", Head = "H1", Group = "G1"}) + {Pos = "Pos13", TcPos = "T101", Head = "H3", Group = "G2"}} +local SecSuppId = EgtGetTcPosId( 'T111') +if SecSuppId then + local bMortiser = EgtGetInfo( SecSuppId, 'Mortiser', 'b') + if bMortiser then + table.insert( PositionTable, {Pos = "Pos14", TcPos = "T111", Head = "H3", Group = "G2"}) + else + table.insert( PositionTable, {Pos = "Pos14", TcPos = "T111", Head = "H1", Group = "G2"}) + end +end +if EgtGetHeadId( 'H5') then + table.insert( PositionTable, {Pos = "Pos14", TcPos = "T91", Head = "H5", Group = "G2"}) end local UsePositionHead = true diff --git a/THolders/AngTransm.nge b/THolders/AngTransm.nge new file mode 100644 index 0000000..d2541c4 Binary files /dev/null and b/THolders/AngTransm.nge differ