Saomad-Just3500 3.1a1 :

- modifiche per ToolTrace e ingombro tavola2.
This commit is contained in:
Dario Sassi
2026-01-14 16:22:11 +01:00
parent b4adf6b004
commit 5f7c918434
7 changed files with 75 additions and 43 deletions
+7
View File
@@ -31,6 +31,10 @@ SawRoughing=0
SawFinishing=0
Chiseling=0
[Machining]
InitScript=InitMach.lua
ExitScript=ExitMach.lua
[Disposition]
InitScript=InitDisp.lua
@@ -55,5 +59,8 @@ WinPlace=0,458,74,669,933
Enable=1
Save=0
[ToolTrace]
Enable=1
[SetUp]
Default=Default
+9 -7
View File
@@ -1,12 +1,13 @@
-- Special Operations macchina Saomad Just3500 by Egalware s.r.l. 15/01/2024
-- 2024.01.15 ver 2.6g1 Prima versione
-- Special Operations macchina Saomad Just3500 by Egalware s.r.l. 2026/01/14
-- 2024.01.15 ver 2.6a1 Prima versione
-- 2026/01/14 ver 3.1a1 Sistemazioni per ToolTrace e ingombro tavola2.
-- Intestazioni
require( 'EmtGenerator')
EgtEnableDebug( false)
PP_VER = '2.6g1'
MIN_MACH_VER = '2.6g1'
PP_VER = '3.1a1'
MIN_MACH_VER = '2.7a1'
EgtOutLog ( '** Saomad-Just3500 '..PP_VER..' (MinMach '.. MIN_MACH_VER ..') **', 1)
@@ -115,7 +116,7 @@ local Tab2Id = EmtTable {
Ref1 = Point3d( DeltaTabX, DeltaTabY, DeltaTabZ),
Coll = 'Tab2/SOLID',
Geo = 'TABLE2/GEO',
Aux = 'TABLE2/SOLID'}
Aux = {'TABLE2/SOLID1','TABLE2/SOLID2'}}
-- Gruppop teste ----------
local Y1Id = EmtAxis {
Name = 'Y1',
@@ -339,13 +340,14 @@ end
function OnResetMachine()
EmtUnlinkAllRawPartsFromGroups()
EmtUnlinkAllFixturesFromGroups()
-- nascondo Vmill
-- nascondo Vmill e ToolTrace
local nRawId = EgtGetFirstRawPart()
while nRawId do
local nVmId = EgtGetFirstNameInGroup( nRawId, 'VMill')
local nTtId = EgtGetFirstNameInGroup( nRawId, 'ToolTrace')
local nId = EgtGetFirstInGroup( nRawId)
while nId do
EgtSetStatus( nId, EgtIf( nId ~= nVmId, GDB_ST.ON, GDB_ST.OFF))
EgtSetStatus( nId, EgtIf( nId ~= nVmId and nId ~= nTtId, GDB_ST.ON, GDB_ST.OFF))
nId = EgtGetNext( nId)
end
nRawId = EgtGetNextRawPart( nRawId)
+13 -3
View File
@@ -1,4 +1,4 @@
-- Special Operations macchina Saomad Just3500 by Egalware s.r.l. 15/01/2024
-- Special Operations macchina Saomad Just3500 by Egalware s.r.l. 2026/01/14
-- Intestazioni
require( 'EmtGenerator')
@@ -22,13 +22,15 @@ local COLL_SAFE_DIST = 3
---------------------------------------------------------------------
function OnSimulInit()
EgtSetStatus( EgtGetFirstNameInGroup( EgtGetTableId( 'Tab'), 'SOLID'), GDB_ST.OFF)
EgtSetStatus( EgtGetFirstNameInGroup( EgtGetTableId( 'Tab2'), 'SOLID'), GDB_ST.OFF)
EgtSetStatus( EgtGetFirstNameInGroup( EgtGetTableId( 'Tab2'), 'SOLID1'), GDB_ST.OFF)
EgtSetStatus( EgtGetFirstNameInGroup( EgtGetTableId( 'Tab2'), 'SOLID2'), GDB_ST.OFF)
end
---------------------------------------------------------------------
function OnSimulExit()
EgtSetStatus( EgtGetFirstNameInGroup( EgtGetTableId( 'Tab'), 'SOLID'), GDB_ST.ON)
EgtSetStatus( EgtGetFirstNameInGroup( EgtGetTableId( 'Tab2'), 'SOLID'), GDB_ST.ON)
EgtSetStatus( EgtGetFirstNameInGroup( EgtGetTableId( 'Tab2'), 'SOLID1'), GDB_ST.ON)
EgtSetStatus( EgtGetFirstNameInGroup( EgtGetTableId( 'Tab2'), 'SOLID2'), GDB_ST.ON)
end
---------------------------------------------------------------------
@@ -212,6 +214,14 @@ function OnSimulDispositionStart()
table.insert( EMT.CODET, EMT.VMILL[i])
end
end
-- se vero inizio, cancello gruppo/i per traccia tooltip e ne ricreo uno
if not EMT.SIM1ST then
EgtErase( EgtGetNameInGroup( EMT.PIECES[1].Id, 'ToolTrace'))
EMT.TOOLTRACE = EgtGroup( EMT.PIECES[1].Id)
EgtSetName( EMT.TOOLTRACE, 'ToolTrace')
EgtSetLevel( EMT.TOOLTRACE, GDB_LV.TEMP)
EgtSetColor( EMT.TOOLTRACE, 'RED')
end
-- se fase 2
else
ExecMoveToZmax()
Binary file not shown.
+27
View File
@@ -0,0 +1,27 @@
-- 2025/03/20
-- Machining Exit for Saomad-Just3500 machine
-- Intestazioni
require( 'EgtBase')
_ENV = EgtProtectGlobal()
EgtEnableDebug( false)
--------------------------------------------------------------------------------
-- *** Uscita da Lavorazioni ***
-- Disabilito segnalazione modifica progetto
local bEnMod = EgtGetEnableModified()
EgtDisableModified()
-- Visualizzo gruppi che potrebbero essere stati nascosti
local vAuxId = { EgtGetFirstNameInGroup( GDB_ID.ROOT, 'Area*'), EgtGetFirstNameInGroup( GDB_ID.ROOT, 'Aux')}
EgtSetStatus( vAuxId, GDB_ST.ON)
EgtZoom( SCE_ZM.ALL, false)
-- Ripristino segnalazione modifica progetto
if bEnMod then
EgtEnableModified()
end
MACH.ERR = 0
+6 -23
View File
@@ -1,5 +1,5 @@
-- 2018/11/21 16:30:00
-- Machining Init for Essetre-FAST machine
-- 2025/03/20
-- Machining Init for Saomad-Just3500 machine
-- Intestazioni
require( 'EgtBase')
@@ -9,32 +9,15 @@ EgtEnableDebug( false)
--------------------------------------------------------------------------------
-- *** Ingresso in Lavorazioni ***
-- Rendo visibile il pezzo e le geometrie aggiunte, nascondo il Box
local function ProcessPart( PartId)
-- nascondo il Box
EgtSetStatus( EgtGetFirstNameInGroup( PartId, 'Box') or GDB_ID.NULL, GDB_ST.OFF)
end
-- Disabilito segnalazione modifica progetto
local bEnMod = EgtGetEnableModified()
EgtDisableModified()
-- Processo i pezzi nella radice
local PartId = EgtGetFirstPart()
while PartId do
ProcessPart( PartId)
PartId = EgtGetNextPart( PartId)
end
-- Nascondo gruppi che potrebbero essere visibili
local vAuxId = { EgtGetFirstNameInGroup( GDB_ID.ROOT, 'Profile'), EgtGetFirstNameInGroup( GDB_ID.ROOT, 'Area*'), EgtGetFirstNameInGroup( GDB_ID.ROOT, 'Aux')}
EgtSetStatus( vAuxId, GDB_ST.OFF)
-- Processo i pezzi già nei gruppi di lavoro (quando appena lanciata Process)
local GhostId = EgtGetFirstGhostPart()
while GhostId do
local PartId = EgtGetInfo( GhostId, GDB_SI.SOURCE, 'i')
if PartId then
ProcessPart( PartId)
end
GhostId = EgtGetNextGhostPart( GhostId)
end
EgtZoom( SCE_ZM.ALL, false)
-- Ripristino segnalazione modifica progetto
if bEnMod then
+13 -10
View File
@@ -1,4 +1,4 @@
-- WinData.lua by Egalware s.r.l. 2024/06/13
-- WinData.lua by Egalware s.r.l. 2025/03/19
-- Raccolta dati generali per Serramenti
EgtOutLog( ' Just3500-WinData started', 1)
@@ -23,21 +23,21 @@ local WinData = {
---------------------------------------------------------------------
local function VerifyPieces( PARTS)
if not PARTS or #PARTS > 2 then
EgtOutBox( 'ATTENZIONE : massimo due pezzi per macchinata', 'Lavora Pezzi', 'ERROR')
return false
local sErr = 'ATTENZIONE : massimo due pezzi per macchinata'
return false, sErr
end
-- controllo che le dimensioni siano compatibili
for i = 1, #PARTS do
if #PARTS == 1 then
if PARTS[i].dPartLength > ( WinData.DIM_CAR + WinData.DIST_CARR_OPEN + WinData.DIM_CAR) then
EgtOutBox( 'ATTENZIONE : pezzo troppo lungo', 'Lavora Pezzi', 'ERROR')
return false
local sErr = 'ATTENZIONE : pezzo troppo lungo'
return false, sErr
end
else
if PARTS[i].dPartLength > WinData.MAXDIMPIECE1CAR then
EgtOutBox( 'ATTENZIONE : pezzo ' .. PARTS[i].sName .. ' troppo lungo', 'Lavora Pezzi', 'ERROR')
return false
local sErr = 'ATTENZIONE : pezzo ' .. PARTS[i].sName .. ' troppo lungo'
return false, sErr
end
end
end
@@ -51,7 +51,10 @@ WinData.VerifyPieces = VerifyPieces
local function ExecDisposition( PARTS)
-- si verifica che i pezzi selezionati siano compatibili con la macchina
VerifyPieces( PARTS)
local bOk, sErr = VerifyPieces( PARTS)
if not bOk then
return false, sErr
end
-- se ho un pezzo
if #PARTS == 1 then
@@ -82,8 +85,8 @@ local function ExecDisposition( PARTS)
EgtSetStatus( PARTS[i].idRaw, GDB_ST.ON)
if not EgtMoveToCornerRawPart( PARTS[i].idRaw, vtOffs, MCH_CR.BL) then
EgtOutLog( 'InitDisp for Saomad-Just3500 : error positioning raw part on table')
return false
local sErr = 'ATTENZIONE : error positioning raw part on table'
return false, sErr
end
end