5 Commits

Author SHA1 Message Date
andrea.villa cc6592dc62 Modificate accelerazioni minima e massima 2026-04-09 15:58:20 +02:00
andrea.villa fc1e206cf7 - Piccole modifiche a simulazione in caso di motosega caricata con Q=0
- Blocco della generazione se Q=0
2025-08-29 08:57:41 +02:00
andrea.villa 93b0c6e2ed Aggiunte note utensile e lavorazioni
Aggiunto variabili precut
2025-04-17 08:38:29 +02:00
luca.mazzoleni efcd4c4138 update gitignore e YAML 2024-09-25 13:16:23 +02:00
luca.mazzoleni 68fca60e04 update gitignore e YAML 2024-09-24 14:59:58 +02:00
7 changed files with 168 additions and 28 deletions
+36 -17
View File
@@ -2,6 +2,7 @@ variables:
VERS_MAIN: '1.0'
MACH_NAME: ''
MACH_NAME_TEST: ''
MANUFACTURER: ''
NEW_REL: ''
NET_SHARE_X: '\\10.74.82.201\EgwTech'
NET_SHARE_Z: '\\10.74.82.201\Artifacts'
@@ -12,15 +13,15 @@ variables:
NET_USER_SERVICES: 'steamw\services'
MACH_VERS: '0.0.0.0'
TEMP_PATH: 'C:\MachinesDeploy'
MACHINES_PATH_R: 'R:\EgtData\Machines'
DEST_MACHINES_PATH_R: 'R:\EgtData\Machines\zTestYAML'
DEST_MACHINES_PATH_H: 'H:\Beam & Wall - Essetre\test'
MACHINES_PATH_R: 'R:\EgtData\Machines_GIT'
DEST_MACHINES_PATH_H: 'H:'
SRC_PATH: ''
BASE_PATH: ''
TEST_PATH: ''
URL_VERSIONS_LOG: "https://liman.egalware.com/ELM.API/api/release/save"
MACH_VERS_NUM: '0.0.0.0'
CRITICAL_STRING: "#critical#"
TOOLS_MACHINE_PATH: ""
#Note compilazione LUA:
@@ -45,9 +46,10 @@ variables:
echo "-----------------------"
echo " Copia macchina su R"
echo "-----------------------"
ROBOCOPY /MIR "$env:SRC_PATH" "$env:DEST_MACHINES_PATH_R\$env:MACH_NAME\" /XD "bin"
ROBOCOPY "$env:TEST_PATH" "$env:DEST_MACHINES_PATH_R\$env:MACH_NAME_TEST\" /E /XD "bin"
ROBOCOPY /MIR "$env:BASE_PATH" "$env:DEST_MACHINES_PATH_R\Deploy\$env:MACH_NAME\$env:MACH_VERS\" /XD "bin" /XD "$env:MACH_NAME_TEST"
$customerPathR = $env:MACHINES_PATH_R + "\" + $env:MANUFACTURER
ROBOCOPY /MIR "$env:SRC_PATH" "$customerPathR\$env:MACH_NAME\" /XD "bin"
ROBOCOPY "$env:TEST_PATH" "$customerPathR\_TestMachines\$env:MACH_NAME_TEST\" /E /XD "bin"
ROBOCOPY /MIR "$env:BASE_PATH" "$customerPathR\_Deploy\$env:MACH_NAME\$env:MACH_VERS\" /XD "bin" /XD "$env:MACH_NAME_TEST"
SLEEP 2
net use R: /delete
@@ -61,8 +63,8 @@ variables:
echo " Copia macchina su stor01"
echo "-----------------------"
SLEEP 2
$destinationPath = "$env:DEST_MACHINES_PATH_H\$env:MACH_NAME" + "\"
echo $destinationPath
$customerPathH = $env:DEST_MACHINES_PATH_H + "\" + $env:MANUFACTURER + "\test"
$destinationPath = "$customerPathH\$env:MACH_NAME" + "\"
ROBOCOPY "$env:BASE_PATH" "$destinationPath\" *.zip
SLEEP 2
net use H: /delete
@@ -76,7 +78,8 @@ variables:
echo "-----------------------"
echo " Copia macchina su R - DEV"
echo "-----------------------"
ROBOCOPY /MIR "$env:BASE_PATH" "$env:DEST_MACHINES_PATH_R\Deploy\$env:MACH_NAME\_DEV\$env:MACH_VERS\" /XD "bin" /XD "$env:MACH_NAME_TEST"
$customerPathR = $env:MACHINES_PATH_R + "\" + $env:MANUFACTURER
ROBOCOPY /MIR "$env:BASE_PATH" "$customerPathR\_Deploy\$env:MACH_NAME\_DEV\$env:MACH_VERS\" /XD "bin" /XD "$env:MACH_NAME_TEST"
SLEEP 2
net use R: /delete
@@ -89,8 +92,15 @@ variables:
echo "-----------------------"
echo " Recupero file non git da R e copia su macchina virtuale"
echo "-----------------------"
ROBOCOPY "$env:LAST_MACHINE_PATH" "$env:SRC_PATH" /E /XF "*.bat" /XF "*.yml" /XF ".gitignore" /XD ".git" /XF "UpdateLog.txt" /XD ".vscode"
ROBOCOPY "$env:LAST_MACHINE_PATH" "$env:SRC_PATH\bin\$env:MACH_NAME\" /E /XF "*.bat" /XF "*.yml" /XF ".gitignore" /XD ".git" /XF "UpdateLog.txt" /XD ".vscode"
# test se la cartella con gli utensili esiste per questa macchina
if (!(Test-Path -Path $env:TOOLS_MACHINE_PATH)) {
echo "-----------------------"
echo "CANNOT FIND TOOLS FOR THIS MACHINE!!"
echo "-----------------------"
Exit 1}
ROBOCOPY "$env:TOOLS_MACHINE_PATH" "$env:SRC_PATH" /E /XF "*.bat" /XF "*.yml" /XF ".gitignore" /XD ".git" /XF "UpdateLog.txt" /XD ".vscode"
ROBOCOPY "$env:TOOLS_MACHINE_PATH" "$env:TEST_PATH" /E /XF "*.bat" /XF "*.yml" /XF ".gitignore" /XD ".git" /XF "UpdateLog.txt" /XD ".vscode"
ROBOCOPY "$env:TOOLS_MACHINE_PATH" "$env:SRC_PATH\bin\$env:MACH_NAME\" /E /XF "*.bat" /XF "*.yml" /XF ".gitignore" /XD ".git" /XF "UpdateLog.txt" /XD ".vscode"
SLEEP 2
net use R: /delete
@@ -116,15 +126,18 @@ variables:
echo "lua54 -o bin\$FileName -s $FileName"
}
# helper recupero nome macchina
# helper recupero nome macchina e costruttore
.machName-fix: &machName-fix
- |
echo "-----------------------"
echo " Recupero nome macchina"
echo " Recupero nome macchina e costruttore"
echo "-----------------------"
$fileName = dir *.mlde
$env:MACH_NAME = $fileName.BaseName
$env:MACH_NAME_TEST = $env:MACH_NAME + ".TEST"
$comp = $fileName.BaseName -split "-"
$env:MANUFACTURER = $comp[0]
Write-Output $env:MANUFACTURER
# helper calcolo versione
.version-fix: &version-fix
@@ -167,8 +180,8 @@ variables:
echo "-----------------------"
echo " Creazione cartelle su macchina virtuale"
echo "-----------------------"
$env:LAST_MACHINE_PATH = "$env:MACHINES_PATH_R\$env:MACH_NAME";
Write-Output $env:LAST_MACHINE_PATH;
$env:TOOLS_MACHINE_PATH = "$env:MACHINES_PATH_R\$env:MANUFACTURER\_DefaultMachineSetup\$env:MACH_NAME"
Write-Output $env:TOOLS_MACHINE_PATH
$env:SRC_PATH = "$env:TEMP_PATH\$env:MACH_NAME\$env:MACH_VERS\$env:MACH_NAME";
$env:BASE_PATH = "$env:TEMP_PATH\$env:MACH_NAME\$env:MACH_VERS";
$env:TEST_PATH = "$env:TEMP_PATH\$env:MACH_NAME\$env:MACH_VERS\$env:MACH_NAME_TEST";
@@ -198,9 +211,15 @@ variables:
echo " Invio versione a log online"
echo "-----------------------"
$tags = ""
$date = ""
# se critico scrive tag
if ( $CI_COMMIT_MESSAGE | Select-String -Pattern $env:CRITICAL_STRING) {
$tags = "CRITICAL"
$tags = "CRITICAL"
$date = (Get-Date).AddDays(1).toString("yyyy-MM-ddTHH:mm:ss.fffZ")
}
else
{
$date = (Get-Date).AddDays(3).toString("yyyy-MM-ddTHH:mm:ss.fffZ")
}
$body =
@{
@@ -211,7 +230,7 @@ variables:
tipo = "Machine"
versNum = $env:MACH_VERS_NUM
versText = $env:MACH_VERS
releaseDate = (Get-Date).toString("yyyy-MM-ddTHH:mm:ss.fffZ")
releaseDate = $date
relTags = $tags
}
$jsonBody = ConvertTo-Json -InputObject $body
+5 -1
View File
@@ -57,6 +57,8 @@ local BeamData = {
DRILL_VZ_MIN_LONG_TOOL = 0.984, -- componente limite per lavorazioni con punta lunga
MAX_TOOL_LEN_BACK_HOR_MACH = 501, -- massima lunghezza utensile per poter eseguire lavorazioni (forature/svuotature) da dietro (faccia 4)
TURN = true, -- macchina tipo Turn
PRECUT_HEAD = true, -- flag abilitazione pretaglio grezzo a zero in testa
PRECUT_TAIL = true, -- flag abilitazione pretaglio grezzo a zero in coda
TWO_EQUAL_HEADS = true, -- macchina con due teste equivalenti
KIOTP = 3.5, -- coefficiente moltiplicativo per attacco/uscita lama tangente anzichè perpendicolare
MAXDIAM_POCK_CORNER = 30, -- diametro massimo utensile ammesso per tasche con angoli interni
@@ -77,7 +79,9 @@ if EgtExistsFile( sData) then
if Machine then
if Machine.Offsets then
BeamData.ANG_TRASM = ( Machine.Offsets.SECSUP and Machine.Offsets.SECSUP >= 2)
end
if Machine.Offsets.PRECUT_HEAD_DISABLE then BeamData.PRECUT_HEAD = ( Machine.Offsets.PRECUT_HEAD_DISABLE == 0) end
if Machine.Offsets.PRECUT_TAIL_DISABLE then BeamData.PRECUT_TAIL = ( Machine.Offsets.PRECUT_TAIL_DISABLE == 0) end
end
if Machine.Trave then
BeamData.MIN_WIDTH = Machine.Trave.XMIN or BeamData.MIN_WIDTH
BeamData.MIN_HEIGHT = Machine.Trave.ZMIN or BeamData.MIN_HEIGHT
+4 -3
View File
@@ -178,8 +178,8 @@ function OnDispositionEnd()
local STrave = EMT.ST
local HOverM = EMT.HOVM
-- calcolo dati pinze
local MinAccPinze = 0.3
local MaxAccPinze = 4
local MinAccPinze = 1
local MaxAccPinze = 12
local KgMtCubo= 550 -- densità legno in Kg / metro cubo
local Massa = ( HTrave * STrave * LBarra * KgMtCubo ) / 1000000000
local FMaxPinze = EMT.FMAXPINZE
@@ -1747,7 +1747,8 @@ function GetET( sHead, sTcPos, dAxR3)
return ' ET42'
elseif sHead == 'H13' then
if dAxR3 and abs( dAxR3 - 0) < 0.1 then
return ' ET101'
EmtSetLastError( 1210, 'Chain saw orientation not allowed: ' .. EMT.MCHNAME)
-- return ' ET101'
elseif dAxR3 and abs( dAxR3 + 90) < 0.1 then
return ' ET102'
else
+17 -4
View File
@@ -26,8 +26,8 @@
require( 'EmtGenerator')
EgtEnableDebug( false)
PP_VER = '2.6i1'
PP_NVER = '2.6.9.1'
PP_VER = '3.1d1'
PP_NVER = '2.7.8.1'
-- Parametri macchina
NumericalControl = 'NUM' -- solo NUM
@@ -39,10 +39,12 @@ ParkX1 = -1.0
MinZ1 = 0
MaxZ1 = 1810
ParkZ1 = 0
ParkZ1_H13_101 = 1600
MinA1 = -180
MaxA1 = 360
ParkA1 = 0
ParkH11_A1 = 0
ParkH13_A1 = 90
MillOffs = 177.0
SawOffs = -242.55
SawBOffs = 0
@@ -693,20 +695,31 @@ function OnSetHead()
EmtModifyAxisStroke( 'A1', { MinA1, MaxA1})
EmtModifyAxisHome( 'A1', ParkH11_A1)
end
EmtModifyAxisHome( 'Z1', ParkZ1)
-- se testa 1 lama
elseif EMC.HEAD == 'H12' then
EmtModifyAxisStroke( 'A1', { MinA1, MaxA1})
EmtModifyAxisHome( 'A1', ParkA1)
EmtModifyAxisHome( 'A1', ParkA1)
EmtModifyAxisHome( 'Z1', ParkZ1)
-- se testa sega a catena
elseif EMC.HEAD == 'H13' then
-- aggiustamenti per distanza
if EMC.DIST and abs( EMC.DIST) > 1 then
EmtModifyExitPosition( EMC.HEAD, EMC.EXIT, Point3d( 0, EMC.DIST, 0))
local vtMove = Point3d( 0, EMC.DIST, 0) - Point3d( EMC.EXITPOS)
local ExitId = EgtGetFirstNameInGroup( EgtGetHeadId( EMC.HEAD), 'T'..tostring( EMC.EXIT))
EgtMove( ExitId, vtMove)
end
-- recupero il valore dell'asse virtuale bloccato Q
local sVal = EgtGetMachiningParam( MCH_MP.BLOCKEDAXIS)
dPosQ = tonumber( sVal:sub( 3))
if abs( dPosQ) < 0.1 then
EmtModifyAxisHome( 'Z1', ParkZ1_H13_101)
else
EmtModifyAxisHome( 'Z1', ParkZ1)
end
EmtModifyAxisStroke( 'A1', { MinA1, MaxA1})
EmtModifyAxisHome( 'A1', ParkA1)
EmtModifyAxisHome( 'A1', ParkH13_A1)
-- se testa 2 fresa
elseif EMC.HEAD == 'H21' then
-- se con utensile lungo limito la corsa e imposto home speciale
+5 -3
View File
@@ -434,7 +434,8 @@ function OnSimulToolSelect( dPosQ)
-- imposto il valore di Q
EgtSetAxisPos( 'Q', dPosQ)
if abs( dPosQ) < 0.1 then
EgtSetAxisPos( 'B', 0)
EgtSetAxisPos( 'B', -90)
EgtSetAxisPos( 'Z1', ParkZ1_H13_101)
end
EgtSetAxisPos( 'A1', 90)
end
@@ -465,11 +466,12 @@ function OnSimulToolDeselect()
local CollSimRotStep = min( RapSimRotStep, 5)
-- movimento scarico sega a catena
if EMT.HEAD == 'H13' then
SimulMoveAxis( 'Z1', MinZ1, RapSimStep)
local dPosQ = EgtGetAxisPos( 'Q')
if abs( dPosQ) < 0.1 then
SimulMoveAxis( 'Z1', ParkZ1_H13_101, RapSimStep)
SimulMoveAxes( 'A1', 90, CollSimRotStep, 'B', -90, CollSimRotStep)
else
SimulMoveAxis( 'Z1', MinZ1, RapSimStep)
SimulMoveAxes( 'A1', 90, CollSimRotStep, 'B', -180, CollSimRotStep)
end
-- movimento scarico utensile di grosso diametro
@@ -751,7 +753,7 @@ function OnSimulMoveStart()
local BPos = EgtGetAxisPos( 'B')
if abs( EMT.R1 - BPos) > 30 then
if nHSet == 1 then
SimulMoveAxis( 'Z1', ParkZ1, RapSimStep)
SimulMoveAxis( 'Z1', EgtGetAxisHomePos( 'Z1'), RapSimStep)
else
SimulMoveAxis( 'Z2', ParkZ2, RapSimStep)
end
+58
View File
@@ -0,0 +1,58 @@
; Commento per evitare BOM con UTF-8
;Index = Type, Description, Default Value
; Type : b=boolean, d=double, l=lenght, s=string
[Drilling]
[Sawing]
[Milling]
0=l,MaxElev,0
1=d,OutRaw,0
2=l,SideElev,0
3=d,TrimExt,0
4=s,VtFaceUse,0,0,0
5=s,EdgesFaceUse,0
[Pocketing]
0=l,MaxElev,0
1=b,Open,0
2=d,OpenMinSafe,0
3=d,OpenOutRaw,0
4=l,MaxOptSize,0
[Mortising]
0=d,MaxElev,0
[Chiseling]
[SawRoughing]
[SawFinishing]
[GenMachining]
[SurfRoughing]
0=l,MaxElev,1000
1=b,PlaneZ,0
[SurfFinishing]
0=b,SkipMaxDown,1
[5AxMilling]
0=l,LinTol,0.01
1=l,MaxLen,10
2=s,Type,ZigZag
3=d,SideAng,90
4=l,Step,10
5=d,AngIni,-90
6=d,AngFin,90
7=l,LiTang,0
8=l,LiOrth,0
9=l,LiElev,0
10=l,LoTang,0
11=l,LoOrth,0
12=l,LoElev,0
13=b,DirFromGuide,0
14=b,SurfAvoid,0
+43
View File
@@ -0,0 +1,43 @@
; Commento per evitare BOM con UTF-8
; Index, Type, Description, Value
; Index = 0,1,..,n
; Type : d=double, l=lenght, s=string, b=boolean, dr=double recalc, sr= string recalc, lr=lenght recalc, br=boolean recalc, th=toolholder
; Description : STEP, SIDESTEP, ...
[DRILL_STD]
0=th,TH,
1=d,STEP
2=s,DOUBLE
[SAW_STD]
0=th,TH,
1=d,STEP
2=d,SIDESTEP
3=b,LONGCUT
[SAW_FLAT]
0=th,TH,
1=d,STEP
2=d,SIDESTEP
3=b,LONGCUT
[MILL_STD]
0=th,TH,
1=d,STEP
2=d,SIDESTEP
3=d,SIDEDEPTH
4=s,DOUBLE
5=dr,TOOL_OVERHANG
[MILL_NOTIP]
0=th,TH,
1=d,STEP
2=d,SIDESTEP
3=d,SIDEDEPTH
4=s,DOUBLE
5=dr,TOOL_OVERHANG
[MORTISE_STD]
0=b,MORTISE
1=d,STEP
2=d,SIDESTEP