Essetre-90480031 2.5e1 :
- primo commit.
This commit is contained in:
+17
@@ -0,0 +1,17 @@
|
||||
/Tools
|
||||
/Machinings
|
||||
/SetUp
|
||||
/Beam/Ts3Data.bak
|
||||
/Beam/CutData.lua
|
||||
/Beam/DrillData.lua
|
||||
/Beam/MillingData.lua
|
||||
/Beam/PocketingData.lua
|
||||
/Beam/SawingData.lua
|
||||
/Beam/Ts3Data.lua
|
||||
/Wall/Ts3Data.bak
|
||||
/Wall/CutData.lua
|
||||
/Wall/DrillData.lua
|
||||
/Wall/MillingData.lua
|
||||
/Wall/PocketingData.lua
|
||||
/Wall/SawingData.lua
|
||||
/Wall/Ts3Data.lua
|
||||
@@ -0,0 +1,369 @@
|
||||
; Commento per evitare BOM con UTF-8
|
||||
[General]
|
||||
Material=Beam
|
||||
NCType=2 ; 1=Tpa, 2=Num Flexium
|
||||
|
||||
[Axes]
|
||||
; 1 = Type, Id, Name
|
||||
; Type => l=linear;r=rotational
|
||||
1=l,0,X
|
||||
2=l,1,Y
|
||||
3=l,2,Z
|
||||
4=l,3,U
|
||||
5=r,4,V
|
||||
6=l,5,W
|
||||
7=r,6,A
|
||||
8=r,7,B
|
||||
9=r,8,C
|
||||
|
||||
[Channels]
|
||||
1=0,Channel 1
|
||||
2=1,Channel 2
|
||||
|
||||
[MainVariables]
|
||||
; 1 = Name, Variable Path, ReadType, Type
|
||||
; ReadType => o=one time;c=continuous
|
||||
; Type => plc;cn
|
||||
1=P_Prod,E81295,c,cn
|
||||
2=P_Machgroup,E81296,c,cn
|
||||
3=P_Part,E81297,c,cn
|
||||
4=P_State,E81298,c,cn
|
||||
5=Reset_State,E80048,c,cn
|
||||
6=ISO_Num,E80045,c,cn
|
||||
7=ISO_Sent,E80046,c,cn
|
||||
8=Running,E80047,c,cn
|
||||
9=Start_State,Application.IOCONFIG_GLOBALS.Flexium_NCK.RCNC.General.Start,c,plc
|
||||
10=Stop_State,Application.IOCONFIG_GLOBALS.Flexium_NCK.RCNC.General.Stop,c,plc
|
||||
11=MachIndex,E80000,c,cn
|
||||
12=ToolIndex,E80001,c,cn
|
||||
|
||||
[Variables]
|
||||
; 1 = Name, Variable Path, ReadType, Type
|
||||
; ReadType => o=one time;c=continuous
|
||||
; Type => plc;cn
|
||||
;1=Ingresso1,Application.IoConfig_Globals_Mapping.A0,c,plc
|
||||
;2=Ingresso2,Application.IoConfig_Globals_Mapping.A1,c,plc
|
||||
;3=Ingresso3,Application.IoConfig_Globals_Mapping.A2,c,plc
|
||||
;4=Ingresso4,Application.IoConfig_Globals_Mapping.A3,c,plc
|
||||
;5=P_Prod,E81295,c,cn
|
||||
;6=P_Machgroup,E81296,c,cn
|
||||
;7=P_Part,E81297,c,cn
|
||||
;8=P_State,E81298,c,cn
|
||||
;9=Reset_State,E80048,c,cn
|
||||
;10=Uscita1,Application.IoConfig_Globals_Mapping.E0,c,plc
|
||||
;11=Uscita2,Application.IoConfig_Globals_Mapping.E1,c,plc
|
||||
;12=Start_State,Application.IoConfig_Globals.Flexium_NCK.RCNC.General.Start,c,plc
|
||||
;13=Stop_State,Application.IoConfig_Globals.Flexium_NKC.RCNC.General.Stop,c,plc
|
||||
|
||||
[InputVariables]
|
||||
; 1 = Name, Variable Path, ReadType, Type
|
||||
; ReadType => o=one time;c=continuous
|
||||
; Type => plc;cn
|
||||
1=INPUT E0, Application.IoConfig_Globals_Mapping.E0, c, plc, 1
|
||||
2=INPUT E1, Application.IoConfig_Globals_Mapping.E1, c, plc, 2
|
||||
3=INPUT E2, Application.IoConfig_Globals_Mapping.E2, c, plc, 3
|
||||
4=INPUT E3, Application.IoConfig_Globals_Mapping.E3, c, plc, 4
|
||||
5=INPUT E4, Application.IoConfig_Globals_Mapping.E4, c, plc, 5
|
||||
6=INPUT E5, Application.IoConfig_Globals_Mapping.E5, c, plc, 6
|
||||
7=INPUT E6, Application.IoConfig_Globals_Mapping.E6, c, plc, 7
|
||||
8=INPUT E7, Application.IoConfig_Globals_Mapping.E7, c, plc, 8
|
||||
9=INPUT E8, Application.IoConfig_Globals_Mapping.E8, c, plc, 9
|
||||
10=INPUT E9, Application.IoConfig_Globals_Mapping.E9, c, plc, 10
|
||||
11=INPUT E10, Application.IoConfig_Globals_Mapping.E10, c, plc, 11
|
||||
12=INPUT E11, Application.IoConfig_Globals_Mapping.E11, c, plc, 12
|
||||
13=INPUT E12, Application.IoConfig_Globals_Mapping.E12, c, plc, 13
|
||||
14=INPUT E13, Application.IoConfig_Globals_Mapping.E13, c, plc, 14
|
||||
15=INPUT E14, Application.IoConfig_Globals_Mapping.E14, c, plc, 15
|
||||
16=INPUT E15, Application.IoConfig_Globals_Mapping.E15, c, plc, 16
|
||||
17=INPUT E16, Application.IoConfig_Globals_Mapping.E16, c, plc, 17
|
||||
18=INPUT E17, Application.IoConfig_Globals_Mapping.E17, c, plc, 18
|
||||
19=INPUT E18, Application.IoConfig_Globals_Mapping.E18, c, plc, 19
|
||||
20=INPUT E19, Application.IoConfig_Globals_Mapping.E19, c, plc, 20
|
||||
21=INPUT E20, Application.IoConfig_Globals_Mapping.E20, c, plc, 21
|
||||
22=INPUT E21, Application.IoConfig_Globals_Mapping.E21, c, plc, 22
|
||||
23=INPUT E22, Application.IoConfig_Globals_Mapping.E22, c, plc, 23
|
||||
24=INPUT E23, Application.IoConfig_Globals_Mapping.E23, c, plc, 24
|
||||
25=INPUT E24, Application.IoConfig_Globals_Mapping.E24, c, plc, 25
|
||||
26=INPUT E25, Application.IoConfig_Globals_Mapping.E25, c, plc, 26
|
||||
27=INPUT E26, Application.IoConfig_Globals_Mapping.E26, c, plc, 27
|
||||
28=INPUT E27, Application.IoConfig_Globals_Mapping.E27, c, plc, 28
|
||||
29=INPUT E28, Application.IoConfig_Globals_Mapping.E28, c, plc, 29
|
||||
30=INPUT E29, Application.IoConfig_Globals_Mapping.E29, c, plc, 30
|
||||
31=INPUT E30, Application.IoConfig_Globals_Mapping.E30, c, plc, 31
|
||||
32=INPUT E31, Application.IoConfig_Globals_Mapping.E31, c, plc, 32
|
||||
33=INPUT E32, Application.IoConfig_Globals_Mapping.E32, c, plc, 33
|
||||
34=INPUT E33, Application.IoConfig_Globals_Mapping.E33, c, plc, 34
|
||||
35=INPUT E34, Application.IoConfig_Globals_Mapping.E34, c, plc, 35
|
||||
36=INPUT E35, Application.IoConfig_Globals_Mapping.E35, c, plc, 36
|
||||
37=INPUT E36, Application.IoConfig_Globals_Mapping.E36, c, plc, 37
|
||||
38=INPUT E37, Application.IoConfig_Globals_Mapping.E37, c, plc, 38
|
||||
39=INPUT E38, Application.IoConfig_Globals_Mapping.E38, c, plc, 39
|
||||
40=INPUT E39, Application.IoConfig_Globals_Mapping.E39, c, plc, 40
|
||||
41=INPUT E40, Application.IoConfig_Globals_Mapping.E40, c, plc, 41
|
||||
42=INPUT E41, Application.IoConfig_Globals_Mapping.E41, c, plc, 42
|
||||
43=INPUT E42, Application.IoConfig_Globals_Mapping.E42, c, plc, 43
|
||||
44=INPUT E43, Application.IoConfig_Globals_Mapping.E43, c, plc, 44
|
||||
45=INPUT E44, Application.IoConfig_Globals_Mapping.E44, c, plc, 45
|
||||
46=INPUT E45, Application.IoConfig_Globals_Mapping.E45, c, plc, 46
|
||||
47=INPUT E46, Application.IoConfig_Globals_Mapping.E46, c, plc, 47
|
||||
48=INPUT E47, Application.IoConfig_Globals_Mapping.E47, c, plc, 48
|
||||
49=INPUT E48, Application.IoConfig_Globals_Mapping.E48, c, plc, 49
|
||||
50=INPUT E49, Application.IoConfig_Globals_Mapping.E49, c, plc, 50
|
||||
51=INPUT E50, Application.IoConfig_Globals_Mapping.E50, c, plc, 51
|
||||
52=INPUT E51, Application.IoConfig_Globals_Mapping.E51, c, plc, 52
|
||||
53=INPUT E52, Application.IoConfig_Globals_Mapping.E52, c, plc, 53
|
||||
54=INPUT E53, Application.IoConfig_Globals_Mapping.E53, c, plc, 54
|
||||
55=INPUT E54, Application.IoConfig_Globals_Mapping.E54, c, plc, 55
|
||||
56=INPUT E55, Application.IoConfig_Globals_Mapping.E55, c, plc, 56
|
||||
57=INPUT E56, Application.IoConfig_Globals_Mapping.E56, c, plc, 57
|
||||
58=INPUT E57, Application.IoConfig_Globals_Mapping.E57, c, plc, 58
|
||||
59=INPUT E58, Application.IoConfig_Globals_Mapping.E58, c, plc, 59
|
||||
60=INPUT E59, Application.IoConfig_Globals_Mapping.E59, c, plc, 60
|
||||
61=INPUT E60, Application.IoConfig_Globals_Mapping.E60, c, plc, 61
|
||||
62=INPUT E61, Application.IoConfig_Globals_Mapping.E61, c, plc, 62
|
||||
63=INPUT E62, Application.IoConfig_Globals_Mapping.E62, c, plc, 63
|
||||
64=INPUT E63, Application.IoConfig_Globals_Mapping.E63, c, plc, 64
|
||||
65=INPUT E64, Application.IoConfig_Globals_Mapping.E64, c, plc, 65
|
||||
66=INPUT E65, Application.IoConfig_Globals_Mapping.E65, c, plc, 66
|
||||
67=INPUT E66, Application.IoConfig_Globals_Mapping.E66, c, plc, 67
|
||||
68=INPUT E67, Application.IoConfig_Globals_Mapping.E67, c, plc, 68
|
||||
69=INPUT E68, Application.IoConfig_Globals_Mapping.E68, c, plc, 69
|
||||
70=INPUT E69, Application.IoConfig_Globals_Mapping.E69, c, plc, 70
|
||||
71=INPUT E70, Application.IoConfig_Globals_Mapping.E70, c, plc, 71
|
||||
72=INPUT E71, Application.IoConfig_Globals_Mapping.E71, c, plc, 72
|
||||
73=INPUT E72, Application.IoConfig_Globals_Mapping.E72, c, plc, 73
|
||||
74=INPUT E73, Application.IoConfig_Globals_Mapping.E73, c, plc, 74
|
||||
75=INPUT E74, Application.IoConfig_Globals_Mapping.E74, c, plc, 75
|
||||
76=INPUT E75, Application.IoConfig_Globals_Mapping.E75, c, plc, 76
|
||||
77=INPUT E76, Application.IoConfig_Globals_Mapping.E76, c, plc, 77
|
||||
78=INPUT E77, Application.IoConfig_Globals_Mapping.E77, c, plc, 78
|
||||
79=INPUT E78, Application.IoConfig_Globals_Mapping.E78, c, plc, 79
|
||||
80=INPUT E79, Application.IoConfig_Globals_Mapping.E79, c, plc, 80
|
||||
81=INPUT E80, Application.IoConfig_Globals_Mapping.E80, c, plc, 81
|
||||
82=INPUT E81, Application.IoConfig_Globals_Mapping.E81, c, plc, 82
|
||||
83=INPUT E82, Application.IoConfig_Globals_Mapping.E82, c, plc, 83
|
||||
84=INPUT E83, Application.IoConfig_Globals_Mapping.E83, c, plc, 84
|
||||
85=INPUT E84, Application.IoConfig_Globals_Mapping.E84, c, plc, 85
|
||||
86=INPUT E85, Application.IoConfig_Globals_Mapping.E85, c, plc, 86
|
||||
87=INPUT E86, Application.IoConfig_Globals_Mapping.E86, c, plc, 87
|
||||
88=INPUT E87, Application.IoConfig_Globals_Mapping.E87, c, plc, 88
|
||||
89=INPUT E88, Application.IoConfig_Globals_Mapping.E88, c, plc, 89
|
||||
90=INPUT E89, Application.IoConfig_Globals_Mapping.E89, c, plc, 90
|
||||
91=INPUT E90, Application.IoConfig_Globals_Mapping.E90, c, plc, 91
|
||||
92=INPUT E91, Application.IoConfig_Globals_Mapping.E91, c, plc, 92
|
||||
93=INPUT E92, Application.IoConfig_Globals_Mapping.E92, c, plc, 93
|
||||
94=INPUT E93, Application.IoConfig_Globals_Mapping.E93, c, plc, 94
|
||||
95=INPUT E94, Application.IoConfig_Globals_Mapping.E94, c, plc, 95
|
||||
96=INPUT E95, Application.IoConfig_Globals_Mapping.E95, c, plc, 96
|
||||
|
||||
[OutputVariables]
|
||||
; 1 = Name, Variable Path, ReadType, Type
|
||||
; ReadType => o=one time;c=continuous
|
||||
; Type => plc;cn
|
||||
1=OUTPUT A0, Application.IoConfig_Globals_Mapping.A0, c, plc, 1
|
||||
2=OUTPUT A1, Application.IoConfig_Globals_Mapping.A1, c, plc, 2
|
||||
3=OUTPUT A2, Application.IoConfig_Globals_Mapping.A2, c, plc, 3
|
||||
4=OUTPUT A3, Application.IoConfig_Globals_Mapping.A3, c, plc, 4
|
||||
5=OUTPUT A4, Application.IoConfig_Globals_Mapping.A4, c, plc, 5
|
||||
6=OUTPUT A5, Application.IoConfig_Globals_Mapping.A5, c, plc, 6
|
||||
7=OUTPUT A6, Application.IoConfig_Globals_Mapping.A6, c, plc, 7
|
||||
8=OUTPUT A7, Application.IoConfig_Globals_Mapping.A7, c, plc, 8
|
||||
9=OUTPUT A8, Application.IoConfig_Globals_Mapping.A8, c, plc, 9
|
||||
10=OUTPUT A9, Application.IoConfig_Globals_Mapping.A9, c, plc, 10
|
||||
11=OUTPUT A10, Application.IoConfig_Globals_Mapping.A10, c, plc, 11
|
||||
12=OUTPUT A11, Application.IoConfig_Globals_Mapping.A11, c, plc, 12
|
||||
13=OUTPUT A12, Application.IoConfig_Globals_Mapping.A12, c, plc, 13
|
||||
14=OUTPUT A13, Application.IoConfig_Globals_Mapping.A13, c, plc, 14
|
||||
15=OUTPUT A14, Application.IoConfig_Globals_Mapping.A14, c, plc, 15
|
||||
16=OUTPUT A15, Application.IoConfig_Globals_Mapping.A15, c, plc, 16
|
||||
17=OUTPUT A16, Application.IoConfig_Globals_Mapping.A16, c, plc, 17
|
||||
18=OUTPUT A17, Application.IoConfig_Globals_Mapping.A17, c, plc, 18
|
||||
19=OUTPUT A18, Application.IoConfig_Globals_Mapping.A18, c, plc, 19
|
||||
20=OUTPUT A19, Application.IoConfig_Globals_Mapping.A19, c, plc, 20
|
||||
21=OUTPUT A20, Application.IoConfig_Globals_Mapping.A20, c, plc, 21
|
||||
22=OUTPUT A21, Application.IoConfig_Globals_Mapping.A21, c, plc, 22
|
||||
23=OUTPUT A22, Application.IoConfig_Globals_Mapping.A22, c, plc, 23
|
||||
24=OUTPUT A23, Application.IoConfig_Globals_Mapping.A23, c, plc, 24
|
||||
25=OUTPUT A24, Application.IoConfig_Globals_Mapping.A24, c, plc, 25
|
||||
26=OUTPUT A25, Application.IoConfig_Globals_Mapping.A25, c, plc, 26
|
||||
27=OUTPUT A26, Application.IoConfig_Globals_Mapping.A26, c, plc, 27
|
||||
28=OUTPUT A27, Application.IoConfig_Globals_Mapping.A27, c, plc, 28
|
||||
29=OUTPUT A28, Application.IoConfig_Globals_Mapping.A28, c, plc, 29
|
||||
30=OUTPUT A29, Application.IoConfig_Globals_Mapping.A29, c, plc, 30
|
||||
31=OUTPUT A30, Application.IoConfig_Globals_Mapping.A30, c, plc, 31
|
||||
32=OUTPUT A31, Application.IoConfig_Globals_Mapping.A31, c, plc, 32
|
||||
33=OUTPUT A32, Application.IoConfig_Globals_Mapping.A32, c, plc, 33
|
||||
34=OUTPUT A33, Application.IoConfig_Globals_Mapping.A33, c, plc, 34
|
||||
35=OUTPUT A34, Application.IoConfig_Globals_Mapping.A34, c, plc, 35
|
||||
36=OUTPUT A35, Application.IoConfig_Globals_Mapping.A35, c, plc, 36
|
||||
37=OUTPUT A36, Application.IoConfig_Globals_Mapping.A36, c, plc, 37
|
||||
38=OUTPUT A37, Application.IoConfig_Globals_Mapping.A37, c, plc, 38
|
||||
39=OUTPUT A38, Application.IoConfig_Globals_Mapping.A38, c, plc, 39
|
||||
40=OUTPUT A39, Application.IoConfig_Globals_Mapping.A39, c, plc, 40
|
||||
41=OUTPUT A40, Application.IoConfig_Globals_Mapping.A40, c, plc, 41
|
||||
42=OUTPUT A41, Application.IoConfig_Globals_Mapping.A41, c, plc, 42
|
||||
43=OUTPUT A42, Application.IoConfig_Globals_Mapping.A42, c, plc, 43
|
||||
44=OUTPUT A43, Application.IoConfig_Globals_Mapping.A43, c, plc, 44
|
||||
45=OUTPUT A44, Application.IoConfig_Globals_Mapping.A44, c, plc, 45
|
||||
46=OUTPUT A45, Application.IoConfig_Globals_Mapping.A45, c, plc, 46
|
||||
47=OUTPUT A46, Application.IoConfig_Globals_Mapping.A46, c, plc, 47
|
||||
48=OUTPUT A47, Application.IoConfig_Globals_Mapping.A47, c, plc, 48
|
||||
49=OUTPUT A48, Application.IoConfig_Globals_Mapping.A48, c, plc, 49
|
||||
50=OUTPUT A49, Application.IoConfig_Globals_Mapping.A49, c, plc, 50
|
||||
51=OUTPUT A50, Application.IoConfig_Globals_Mapping.A50, c, plc, 51
|
||||
52=OUTPUT A51, Application.IoConfig_Globals_Mapping.A51, c, plc, 52
|
||||
53=OUTPUT A52, Application.IoConfig_Globals_Mapping.A52, c, plc, 53
|
||||
54=OUTPUT A53, Application.IoConfig_Globals_Mapping.A53, c, plc, 54
|
||||
55=OUTPUT A54, Application.IoConfig_Globals_Mapping.A54, c, plc, 55
|
||||
56=OUTPUT A55, Application.IoConfig_Globals_Mapping.A55, c, plc, 56
|
||||
57=OUTPUT A56, Application.IoConfig_Globals_Mapping.A56, c, plc, 57
|
||||
58=OUTPUT A57, Application.IoConfig_Globals_Mapping.A57, c, plc, 58
|
||||
59=OUTPUT A58, Application.IoConfig_Globals_Mapping.A58, c, plc, 59
|
||||
60=OUTPUT A59, Application.IoConfig_Globals_Mapping.A59, c, plc, 60
|
||||
61=OUTPUT A60, Application.IoConfig_Globals_Mapping.A60, c, plc, 61
|
||||
62=OUTPUT A61, Application.IoConfig_Globals_Mapping.A61, c, plc, 62
|
||||
63=OUTPUT A62, Application.IoConfig_Globals_Mapping.A62, c, plc, 63
|
||||
64=OUTPUT A63, Application.IoConfig_Globals_Mapping.A63, c, plc, 64
|
||||
65=OUTPUT A64, Application.IoConfig_Globals_Mapping.A64, c, plc, 65
|
||||
66=OUTPUT A65, Application.IoConfig_Globals_Mapping.A65, c, plc, 66
|
||||
67=OUTPUT A66, Application.IoConfig_Globals_Mapping.A66, c, plc, 67
|
||||
68=OUTPUT A67, Application.IoConfig_Globals_Mapping.A67, c, plc, 68
|
||||
69=OUTPUT A68, Application.IoConfig_Globals_Mapping.A68, c, plc, 69
|
||||
70=OUTPUT A69, Application.IoConfig_Globals_Mapping.A69, c, plc, 70
|
||||
71=OUTPUT A70, Application.IoConfig_Globals_Mapping.A70, c, plc, 71
|
||||
72=OUTPUT A71, Application.IoConfig_Globals_Mapping.A71, c, plc, 72
|
||||
73=OUTPUT A72, Application.IoConfig_Globals_Mapping.A72, c, plc, 73
|
||||
74=OUTPUT A73, Application.IoConfig_Globals_Mapping.A73, c, plc, 74
|
||||
75=OUTPUT A74, Application.IoConfig_Globals_Mapping.A74, c, plc, 75
|
||||
76=OUTPUT A75, Application.IoConfig_Globals_Mapping.A75, c, plc, 76
|
||||
77=OUTPUT A76, Application.IoConfig_Globals_Mapping.A76, c, plc, 77
|
||||
78=OUTPUT A77, Application.IoConfig_Globals_Mapping.A77, c, plc, 78
|
||||
79=OUTPUT A78, Application.IoConfig_Globals_Mapping.A78, c, plc, 79
|
||||
80=OUTPUT A79, Application.IoConfig_Globals_Mapping.A79, c, plc, 80
|
||||
81=OUTPUT A80, Application.IoConfig_Globals_Mapping.A80, c, plc, 81
|
||||
82=OUTPUT A81, Application.IoConfig_Globals_Mapping.A81, c, plc, 82
|
||||
83=OUTPUT A82, Application.IoConfig_Globals_Mapping.A82, c, plc, 83
|
||||
84=OUTPUT A83, Application.IoConfig_Globals_Mapping.A83, c, plc, 84
|
||||
85=OUTPUT A84, Application.IoConfig_Globals_Mapping.A84, c, plc, 85
|
||||
86=OUTPUT A85, Application.IoConfig_Globals_Mapping.A85, c, plc, 86
|
||||
87=OUTPUT A86, Application.IoConfig_Globals_Mapping.A86, c, plc, 87
|
||||
88=OUTPUT A87, Application.IoConfig_Globals_Mapping.A87, c, plc, 88
|
||||
89=OUTPUT A88, Application.IoConfig_Globals_Mapping.A88, c, plc, 89
|
||||
90=OUTPUT A89, Application.IoConfig_Globals_Mapping.A89, c, plc, 90
|
||||
91=OUTPUT A90, Application.IoConfig_Globals_Mapping.A90, c, plc, 91
|
||||
92=OUTPUT A91, Application.IoConfig_Globals_Mapping.A91, c, plc, 92
|
||||
93=OUTPUT A92, Application.IoConfig_Globals_Mapping.A92, c, plc, 93
|
||||
94=OUTPUT A93, Application.IoConfig_Globals_Mapping.A93, c, plc, 94
|
||||
95=OUTPUT A94, Application.IoConfig_Globals_Mapping.A94, c, plc, 95
|
||||
96=OUTPUT A95, Application.IoConfig_Globals_Mapping.A95, c, plc, 96
|
||||
|
||||
[MDI]
|
||||
; 1 = Command, Description
|
||||
1=M6T1L0=1,1
|
||||
2=M6T2L0=1,2
|
||||
3=M6T3L0=1,3
|
||||
4=M6T4L0=1,4
|
||||
5=M6T5L0=1,5
|
||||
6=M6T6L0=1,6
|
||||
7=M6T7L0=1,7
|
||||
8=M6T8L0=1,8
|
||||
9=M6T9L0=1,9
|
||||
10=M6T10L0=1,10
|
||||
11=M6T11L0=1,11
|
||||
12=M6T12L0=1,12
|
||||
13=M6T13L0=1,13
|
||||
14=M6T14L0=1,14
|
||||
15=M6T15L0=1,15
|
||||
16=M6T16L0=1,16
|
||||
17=M6T17L0=1,17
|
||||
18=M6T18L0=1,18
|
||||
19=M6T101L0=1,19
|
||||
20=M6T201L0=1,20
|
||||
21=M6T202L0=1,21
|
||||
22=M6T203L0=1,22
|
||||
23=M6T50L0=1,23
|
||||
24=E80001=0,24
|
||||
25=M6T1L0=2,25
|
||||
26=M6T2L0=2,26
|
||||
27=M6T3L0=2,27
|
||||
28=M6T4L0=2,28
|
||||
29=M6T5L0=2,29
|
||||
30=M6T6L0=2,30
|
||||
31=M6T7L0=2,31
|
||||
32=M6T8L0=2,32
|
||||
33=M6T9L0=2,33
|
||||
34=M6T10L0=2,34
|
||||
35=M6T11L0=2,35
|
||||
36=M6T12L0=2,36
|
||||
37=M6T13L0=2,37
|
||||
38=M6T14L0=2,38
|
||||
39=M6T15L0=2,39
|
||||
40=M6T16L0=2,40
|
||||
41=M6T17L0=2,41
|
||||
42=M6T18L0=2,42
|
||||
43=M6T101L0=2,43
|
||||
44=M6T201L0=2,44
|
||||
45=M6T202L0=2,45
|
||||
46=M6T203L0=2,46
|
||||
47=M6T50L0=2,47
|
||||
48=E80002=0,48
|
||||
|
||||
[Languages]
|
||||
Enable=1
|
||||
Language1=Italiano,Ita.txt
|
||||
Language2=English,Eng.txt
|
||||
|
||||
[Tools]
|
||||
Drillbit=1
|
||||
Sawblade=1
|
||||
Mill=1
|
||||
Mortise=1
|
||||
Chisel=0
|
||||
DrillMaker=MakeWoodDrill.lua
|
||||
SawbladeMaker=MakeSawblade.lua
|
||||
MillMaker=MakeWoodCylMill.lua
|
||||
MortiseMaker=MakeMortise.lua
|
||||
ChiselMaker=MakeChisel.lua
|
||||
Active=1
|
||||
|
||||
[ToolHolder]
|
||||
H1.1=Standard.nge
|
||||
H1.1:MILL_NOTIP=MillNoTip.nge
|
||||
H2.1=SawOnH2.nge
|
||||
H3.1=ChainSaw.nge
|
||||
|
||||
[Machinings]
|
||||
Drilling=1
|
||||
Sawing=1
|
||||
Milling=1
|
||||
Pocketing=1
|
||||
Mortising=1
|
||||
Chiseling=0
|
||||
SawRoughing=0
|
||||
SawFinishing=0
|
||||
|
||||
[Machining]
|
||||
InitScript=InitMach.lua
|
||||
ExitScript=ExitMach.lua
|
||||
|
||||
[Disposition]
|
||||
;InitScript=InitDisp.lua
|
||||
|
||||
[Heads]
|
||||
; 5 axis head
|
||||
H1=6608
|
||||
; 5 axis saw
|
||||
H2=6615
|
||||
; Chainsaw
|
||||
H3=6616
|
||||
|
||||
[SetUp]
|
||||
Default=Standard
|
||||
|
||||
[Estimations]
|
||||
Enable=1
|
||||
WinPlace=0,514,138,628,810
|
||||
|
||||
[VMill]
|
||||
Enable=1
|
||||
Save=0
|
||||
@@ -0,0 +1,442 @@
|
||||
-- Descrizione macchina Essetre-90480031 by Egalware s.r.l. 2023/05/05
|
||||
-- Macchina Wall.
|
||||
|
||||
require( 'EmtGenerator')
|
||||
EgtEnableDebug( false)
|
||||
|
||||
PP_VER = '2.5e1'
|
||||
|
||||
-- Parametri macchina
|
||||
NumericalControl = 'NUM' -- NUM o TPA
|
||||
MinY = 0.0
|
||||
MaxY = 21200.0
|
||||
MinX1 = -5285.0
|
||||
MaxX1 = 0.0
|
||||
ParkTSpecX1 = -4200
|
||||
MinZ1 = -1585.0
|
||||
MaxZ1 = 0.0
|
||||
MinB1 = -135.0
|
||||
MaxB1 = 135.0
|
||||
MinC1 = -275.0
|
||||
MaxC1 = 275.0
|
||||
MillOffs = 202.0
|
||||
ChSawLen = 96.0
|
||||
MinX2 = -6055.0
|
||||
MaxX2 = -840.0
|
||||
MinZ2 = -1180.0
|
||||
MaxZ2 = 0.0
|
||||
MinB2 = 0.0
|
||||
MaxB2 = 90.0
|
||||
MinC2 = -275.0
|
||||
MaxC2 = 275.0
|
||||
SawDeltaX = 347.5
|
||||
SawDeltaY = 0.0
|
||||
SawDeltaZ = -115.0
|
||||
SawOffs = 163.5
|
||||
Orig2DeltaX = 0
|
||||
Orig2DeltaY = -3500
|
||||
Orig2DeltaZ = 0
|
||||
Orig3DeltaX = 21120
|
||||
Orig3DeltaY = 0
|
||||
Orig3DeltaZ = 0
|
||||
Orig4DeltaX = 21120
|
||||
Orig4DeltaY = -3500
|
||||
Orig4DeltaZ = 0
|
||||
DimTabX = 21120.0
|
||||
DimTabY = 3500.0
|
||||
DeltaTabX = 1299.65
|
||||
DeltaTabY = -1290.0 - DimTabY
|
||||
DeltaTabZ = -960.0
|
||||
CoeffVM = 0.5
|
||||
|
||||
-- Aggiornamento con dati da TechnoEssetre7
|
||||
local sTs3Data = EgtGetStringFromIni( 'Wall', 'DATA_DIR', "C:\\TechnoEssetre7\\EgtData", EgtGetIniFile()).."\\Essetre-90480031.data"
|
||||
local sData = EgtGetSourceDir().."\\Wall\\Ts3Data.lua"
|
||||
if EgtExistsFile( sTs3Data) then
|
||||
EgtCopyFile( sTs3Data, sData)
|
||||
local sTs3DataOld = sTs3Data..'.old'
|
||||
EgtEraseFile( sTs3DataOld)
|
||||
EgtRenameFile( sTs3Data, sTs3DataOld)
|
||||
end
|
||||
|
||||
if EgtExistsFile( sData) then
|
||||
local Machine = dofile( sData)
|
||||
if Machine and Machine.Offsets then
|
||||
local MchOffs = Machine.Offsets
|
||||
NumericalControl = EgtIf( MchOffs.TIPO_CN ~= 1, 'NUM', 'TPA')
|
||||
if MchOffs.MAX_Y then MinY = -MchOffs.MAX_Y end
|
||||
if MchOffs.MIN_Y then MaxY = -MchOffs.MIN_Y end
|
||||
MinX1 = MchOffs.MIN_X or MinX1
|
||||
MaxX1 = MchOffs.MAX_X or MaxX1
|
||||
MinZ1 = MchOffs.MIN_Z or MinZ1
|
||||
MaxZ1 = MchOffs.MAX_Z or MaxZ1
|
||||
MinB1 = MchOffs.MIN_B or MinB1
|
||||
MaxB1 = MchOffs.MAX_B or MaxB1
|
||||
MinC1 = MchOffs.MIN_C or MinC1
|
||||
MaxC1 = MchOffs.MAX_C or MaxC1
|
||||
MinX2 = MchOffs.MIN_U or MinX2
|
||||
MaxX2 = MchOffs.MAX_U or MaxX2
|
||||
MinZ2 = MchOffs.MIN_W or MinZ2
|
||||
MaxZ2 = MchOffs.MAX_W or MaxZ2
|
||||
MinB2 = MchOffs.MIN_V or MinB2
|
||||
MaxB2 = MchOffs.MAX_V or MaxB2
|
||||
MinC2 = MchOffs.MIN_A or MinC2
|
||||
MaxC2 = MchOffs.MAX_A or MaxC2
|
||||
MillOffs = MchOffs.PIVOT_MILL or MillOffs
|
||||
SawOffs = MchOffs.PIVOT_SAW or SawOffs
|
||||
if MchOffs.OFFSET_ZERO3_Y then DimTabX = - MchOffs.OFFSET_ZERO3_Y end
|
||||
if MchOffs.OFFSET_ZERO2_X then DimTabY = - MchOffs.OFFSET_ZERO2_X end
|
||||
if MchOffs.ZERO_Y_MILL then DeltaTabX = - MchOffs.ZERO_Y_MILL end
|
||||
if MchOffs.ZERO_X_MILL then DeltaTabY = ( MchOffs.ZERO_X_MILL - DimTabY) end
|
||||
DeltaTabZ = MchOffs.ZERO_Z_MILL or DeltaTabZ
|
||||
if MchOffs.ZERO_Y_MILL and MchOffs.ZERO_Y_SAW then SawDeltaX = - ( MchOffs.ZERO_Y_MILL - MchOffs.ZERO_Y_SAW) end
|
||||
if MchOffs.ZERO_X_MILL and MchOffs.ZERO_X_SAW then SawDeltaY = ( MchOffs.ZERO_X_MILL - MchOffs.ZERO_X_SAW) end
|
||||
if MchOffs.ZERO_Z_MILL and MchOffs.ZERO_Z_SAW then SawDeltaZ = ( MchOffs.ZERO_Z_MILL - MchOffs.ZERO_Z_SAW) end
|
||||
if MchOffs.OFFSET_ZERO2_Y then Orig2DeltaX = -MchOffs.OFFSET_ZERO2_Y end
|
||||
if MchOffs.OFFSET_ZERO2_X then Orig2DeltaY = MchOffs.OFFSET_ZERO2_X end
|
||||
if MchOffs.OFFSET_ZERO2_Z then Orig2DeltaZ = MchOffs.OFFSET_ZERO2_Z end
|
||||
if MchOffs.OFFSET_ZERO3_Y then Orig3DeltaX = -MchOffs.OFFSET_ZERO3_Y end
|
||||
if MchOffs.OFFSET_ZERO3_X then Orig3DeltaY = MchOffs.OFFSET_ZERO3_X end
|
||||
if MchOffs.OFFSET_ZERO3_Z then Orig3DeltaZ = MchOffs.OFFSET_ZERO3_Z end
|
||||
if MchOffs.OFFSET_ZERO4_Y then Orig4DeltaX = -MchOffs.OFFSET_ZERO4_Y end
|
||||
if MchOffs.OFFSET_ZERO4_X then Orig4DeltaY = MchOffs.OFFSET_ZERO4_X end
|
||||
if MchOffs.OFFSET_ZERO4_Z then Orig4DeltaZ = MchOffs.OFFSET_ZERO4_Z end
|
||||
end
|
||||
end
|
||||
|
||||
-- Spostamenti della lama rispetto al disegno
|
||||
local SawOffsX = SawDeltaX - 347.5
|
||||
local SawOffsY = SawDeltaY - 0
|
||||
local SawOffsZ = SawDeltaZ + 115.0
|
||||
|
||||
EmtGeneral {
|
||||
File='Essetre-90480031.nge',
|
||||
Offset = Vector3d( -640.35, -3040.00, -1660.0),
|
||||
AxisMaxAdjust = 250,
|
||||
ExitMaxAdjust = 250,
|
||||
Special = 'Essetre-WALL.mlse',
|
||||
Processor = 'Essetre-WALL.mlpe'}
|
||||
local BaseId = EmtBase {
|
||||
Name = 'Base',
|
||||
Geo='BASE/GEO',
|
||||
Aux={'BASE/LOAD', 'BASE/MOD01', 'BASE/MOD02', 'BASE/MOD03', 'BASE/MOD04', 'BASE/MOD05', 'BASE/MOD06', 'BASE/MOD07', 'BASE/COLLISION'}}
|
||||
local vtMove = Vector3d( DeltaTabX - 1299.65, DeltaTabY + 4790.0, DeltaTabZ + 960)
|
||||
EgtMove( BaseId, vtMove, GDB_RT.GLOB)
|
||||
-- Tavola
|
||||
EmtTable {
|
||||
Name = 'Tab',
|
||||
Parent = 'Base',
|
||||
Type = MCH_TT.FLAT,
|
||||
Ref1 = Point3d( DeltaTabX, DeltaTabY, DeltaTabZ),
|
||||
Scale = {DimTabX/21120, DimTabY/3500, 1},
|
||||
Geo = 'TABLE/GEO'}
|
||||
-- Traversa
|
||||
EmtAxis {
|
||||
Name = 'Y',
|
||||
Parent = 'Base',
|
||||
Invert = true,
|
||||
Type = MCH_AT.LINEAR,
|
||||
Dir = X_AX(),
|
||||
Pos = Point3d( 0, 0, 0),
|
||||
Stroke = {MinY, MaxY},
|
||||
Home = 0,
|
||||
Geo = 'Y_AXIS/GEO',
|
||||
Aux = {'Y_AXIS/SOLID', 'Y_AXIS/TC', 'Y_AXIS/COLLISION'}}
|
||||
-- Testa 1 per frese
|
||||
EmtAxis {
|
||||
Name = 'X1',
|
||||
Parent = 'Y',
|
||||
Token = 'X',
|
||||
Type = MCH_AT.LINEAR,
|
||||
Dir = Y_AX(),
|
||||
Pos = Point3d( 0, 0, 0),
|
||||
Stroke = {MinX1, MaxX1},
|
||||
Home = MaxX1,
|
||||
Geo = 'X1_AXIS/GEO',
|
||||
Aux = {'X1_AXIS/SOLID', 'X1_AXIS/COLLISION'}}
|
||||
EmtAxis {
|
||||
Name = 'Z1',
|
||||
Parent = 'X1',
|
||||
Token = 'Z',
|
||||
Type = MCH_AT.LINEAR,
|
||||
Dir = Z_AX(),
|
||||
Pos = Point3d( 0, 0, 0),
|
||||
Stroke = {MinZ1, MaxZ1},
|
||||
Home = 0,
|
||||
Geo = 'Z1_AXIS/GEO',
|
||||
Aux = {'Z1_AXIS/SOLID'}}
|
||||
EmtAxis {
|
||||
Name = 'C1',
|
||||
Parent = 'Z1',
|
||||
Token = 'C',
|
||||
Type = MCH_AT.ROTARY,
|
||||
Dir = Z_AX(),
|
||||
Pos = Point3d( 0, 0, 0),
|
||||
Stroke = {MinC1, MaxC1},
|
||||
Home = 0,
|
||||
Geo = 'C1_AXIS/GEO',
|
||||
Aux = {'C1_AXIS/SOLID', 'C1_AXIS/COLLISION'}}
|
||||
EmtAxis {
|
||||
Name = 'B1',
|
||||
Parent = 'C1',
|
||||
Token = 'B',
|
||||
Type = MCH_AT.ROTARY,
|
||||
Dir = -X_AX(),
|
||||
Pos = Point3d( 0, 0, MillOffs),
|
||||
Stroke = {MinB1, MaxB1},
|
||||
Home = 0,
|
||||
Geo = 'B1_AXIS/GEO',
|
||||
Aux = {'B1_AXIS/SOLID', 'B1_AXIS/COLLISION'}}
|
||||
EmtHead {
|
||||
Name = 'H1',
|
||||
Parent = 'B1',
|
||||
HSet = 'H1',
|
||||
Type = MCH_HT.STD,
|
||||
Pos = Point3d( 0, 0, 0),
|
||||
TDir = Z_AX(),
|
||||
ADir = Y_AX(),
|
||||
Rot1W = 0.1,
|
||||
OthColl = {'B1/SOLID', 'C1/SOLID'},
|
||||
Geo = 'H1_HEAD/GEO'}
|
||||
-- Sega a catena
|
||||
EmtAxis {
|
||||
Name = 'A1',
|
||||
Parent = 'B1',
|
||||
Token = '**',
|
||||
Type = MCH_AT.ROTARY,
|
||||
Dir = Z_AX(),
|
||||
Pos = Point3d( 0, 0, 0),
|
||||
Stroke = { 0, 270},
|
||||
Home = 180,
|
||||
Geo = 'A1_AXIS/GEO'}
|
||||
local H3Id = EmtHead {
|
||||
Name = 'H3',
|
||||
Parent = 'A1',
|
||||
HSet = 'H1',
|
||||
Type = MCH_HT.STD,
|
||||
Pos = Point3d( 0, 0, -ChSawLen),
|
||||
TDir = Y_AX(),
|
||||
ADir = Z_AX(),
|
||||
Rot1W = 0.1,
|
||||
SolCh = MCH_SCC.ADIR_NEAR,
|
||||
OthColl = {'B1/SOLID', 'C1/SOLID'},
|
||||
Geo = 'H3_HEAD/GEO'}
|
||||
EgtSetInfo( H3Id, 'ZSAFEDELTA', 120)
|
||||
-- Testa per Lama
|
||||
local X2Id = EmtAxis {
|
||||
Name = 'X2',
|
||||
Parent = 'Y',
|
||||
Token = 'X',
|
||||
Type = MCH_AT.LINEAR,
|
||||
Dir = Y_AX(),
|
||||
Pos = Point3d( 0, 0, 0),
|
||||
Stroke = {MinX2, MaxX2},
|
||||
Home = MinX2,
|
||||
Geo = 'X2_AXIS/GEO',
|
||||
Aux = {'X2_AXIS/SOLID'}}
|
||||
EgtMove( EgtGetFirstNameInGroup( X2Id, 'SOLID'), Vector3d( SawOffsX, SawOffsY, 0), GDB_RT.GLOB)
|
||||
local Z2Id = EmtAxis {
|
||||
Name = 'Z2',
|
||||
Parent = 'X2',
|
||||
Token = 'Z',
|
||||
Type = MCH_AT.LINEAR,
|
||||
Dir = Z_AX(),
|
||||
Pos = Point3d( 0, 0, 0),
|
||||
Stroke = {MinZ2, MaxZ2},
|
||||
Home = 0,
|
||||
Geo = 'Z2_AXIS/GEO',
|
||||
Aux = {'Z2_AXIS/SOLID'}}
|
||||
EgtMove( EgtGetFirstNameInGroup( Z2Id, 'SOLID'), Vector3d( SawOffsX, SawOffsY, SawOffsZ), GDB_RT.GLOB)
|
||||
local C2Id = EmtAxis {
|
||||
Name = 'C2',
|
||||
Parent = 'Z2',
|
||||
Token = 'C',
|
||||
Type = MCH_AT.ROTARY,
|
||||
Dir = Z_AX(),
|
||||
Pos = Point3d( SawDeltaX, SawDeltaY, 0),
|
||||
Stroke = {MinC2, MaxC2},
|
||||
Home = 0,
|
||||
Geo = 'C2_AXIS/GEO',
|
||||
Aux = {'C2_AXIS/SOLID', 'C2_AXIS/COLLISION'}}
|
||||
EgtMove( EgtGetFirstNameInGroup( C2Id, 'SOLID'), Vector3d( SawOffsX, SawOffsY, SawOffsZ), GDB_RT.GLOB)
|
||||
EgtMove( EgtGetFirstNameInGroup( C2Id, 'COLLISION'), Vector3d( SawOffsX, SawOffsY, SawOffsZ), GDB_RT.GLOB)
|
||||
local B2Id = EmtAxis {
|
||||
Name = 'B2',
|
||||
Parent = 'C2',
|
||||
Token = 'B',
|
||||
Type = MCH_AT.ROTARY,
|
||||
Dir = -X_AX(),
|
||||
Pos = Point3d( SawDeltaX, SawDeltaY, SawDeltaZ + SawOffs),
|
||||
Stroke = {MinB2, MaxB2},
|
||||
Home = 90,
|
||||
Geo = 'B2_AXIS/GEO',
|
||||
Aux = {'B2_AXIS/SOLID', 'B2_AXIS/COLLISION'}}
|
||||
EgtMove( EgtGetFirstNameInGroup( B2Id, 'SOLID'), Vector3d( SawOffsX, SawOffsY, SawOffsZ), GDB_RT.GLOB)
|
||||
EgtMove( EgtGetFirstNameInGroup( B2Id, 'COLLISION'), Vector3d( SawOffsX, SawOffsY, SawOffsZ), GDB_RT.GLOB)
|
||||
local H2Id = EmtHead {
|
||||
Name = 'H2',
|
||||
Parent = 'B2',
|
||||
HSet = 'H2',
|
||||
Type = MCH_HT.STD,
|
||||
Pos = Point3d( SawDeltaX, SawDeltaY, SawDeltaZ),
|
||||
TDir = Z_AX(),
|
||||
ADir = -Y_AX(),
|
||||
Rot1W = 0.2,
|
||||
OthColl = {'B2/SOLID', 'C2/SOLID'},
|
||||
Geo = 'H2_HEAD/GEO'}
|
||||
-- ToolChanger
|
||||
local ptTcA = Point3d( -340.6,-570.0,-29.8)
|
||||
EmtTcPos {
|
||||
Name = 'T10',
|
||||
Parent = 'Y',
|
||||
Pos = ptTcA,
|
||||
TDir = -Y_AX(),
|
||||
ADir = X_AX(),
|
||||
Geo = 'Y_AXIS/TA1'}
|
||||
EmtTcPos {
|
||||
Name = 'T11',
|
||||
Parent = 'Y',
|
||||
Pos = ptTcA - 120 * Z_AX(),
|
||||
TDir = -Y_AX(),
|
||||
ADir = X_AX(),
|
||||
Geo = 'Y_AXIS/TA2'}
|
||||
EmtTcPos {
|
||||
Name = 'T12',
|
||||
Parent = 'Y',
|
||||
Pos = ptTcA - 240 * Z_AX(),
|
||||
TDir = -Y_AX(),
|
||||
ADir = X_AX(),
|
||||
Geo = 'Y_AXIS/TA3'}
|
||||
EmtTcPos {
|
||||
Name = 'T13',
|
||||
Parent = 'Y',
|
||||
Pos = ptTcA - 360 * Z_AX(),
|
||||
TDir = -Y_AX(),
|
||||
ADir = X_AX(),
|
||||
Geo = 'Y_AXIS/TA4'}
|
||||
EmtTcPos {
|
||||
Name = 'T14',
|
||||
Parent = 'Y',
|
||||
Pos = ptTcA - 480 * Z_AX(),
|
||||
TDir = -Y_AX(),
|
||||
ADir = X_AX(),
|
||||
Geo = 'Y_AXIS/TA5'}
|
||||
EmtTcPos {
|
||||
Name = 'T15',
|
||||
Parent = 'Y',
|
||||
Pos = ptTcA - 600 * Z_AX(),
|
||||
TDir = -Y_AX(),
|
||||
ADir = X_AX(),
|
||||
Geo = 'Y_AXIS/TA6'}
|
||||
EmtTcPos {
|
||||
Name = 'T16',
|
||||
Parent = 'Y',
|
||||
Pos = ptTcA - 720 * Z_AX(),
|
||||
TDir = -Y_AX(),
|
||||
ADir = X_AX(),
|
||||
Geo = 'Y_AXIS/TA7'}
|
||||
EmtTcPos {
|
||||
Name = 'T17',
|
||||
Parent = 'Y',
|
||||
Pos = ptTcA - 840 * Z_AX(),
|
||||
TDir = -Y_AX(),
|
||||
ADir = X_AX(),
|
||||
Geo = 'Y_AXIS/TA8'}
|
||||
EmtTcPos {
|
||||
Name = 'T18',
|
||||
Parent = 'Y',
|
||||
Pos = ptTcA - 960 * Z_AX(),
|
||||
TDir = -Y_AX(),
|
||||
ADir = X_AX(),
|
||||
Geo = 'Y_AXIS/TA9'}
|
||||
EmtTcPos {
|
||||
Name = 'T101',
|
||||
Parent = 'Y',
|
||||
Pos = Point3d(-568.3,-1307.0,9-92.8),
|
||||
TDir = X_AX(),
|
||||
ADir = Z_AX(),
|
||||
Geo = 'Y_AXIS/TC1'}
|
||||
EmtTcPos {
|
||||
Name = 'T201',
|
||||
Parent = 'Y',
|
||||
Pos = Point3d(-926.3,-1870.0,25),
|
||||
TDir = Z_AX(),
|
||||
ADir = X_AX(),
|
||||
Geo = 'Y_AXIS/TC2'}
|
||||
|
||||
---------------------------------------------------------------------
|
||||
-- Funzioni richiamate per modificare i dati macchina in casi particolari
|
||||
--function OnSetTable()
|
||||
--end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function OnSetHead()
|
||||
-- se sega a catena
|
||||
if EMC.HEAD == 'H3' then
|
||||
-- gestione distanza da naso mandrino
|
||||
EmtModifyExitPosition( EMC.HEAD, EMC.EXIT, Point3d( 0, 0, -EMC.DIST))
|
||||
local vtMove = Point3d( 0, 0, -EMC.DIST) - Point3d( EMC.EXITPOS)
|
||||
local ExitId = EgtGetFirstNameInGroup( EgtGetHeadId( EMC.HEAD), 'T'..tostring( EMC.EXIT))
|
||||
EgtMove( ExitId, vtMove)
|
||||
-- gestione assi
|
||||
local sVal = EgtGetMachiningParam( MCH_MP.BLOCKEDAXIS)
|
||||
local CSawPosA = EgtGetVal( sVal, 'A1', 'd') or 180
|
||||
EmtModifyAxisHome( 'X1', ParkTSpecX1)
|
||||
EmtModifyAxisHome( 'Z1', GetChainSawZHomeFromVirtualAxis( CSawPosA))
|
||||
EmtModifyAxisStroke( 'C1', { MinC1, MaxC1})
|
||||
EmtModifyAxisHome( 'C1', GetChainSawCHomeFromVirtualAxis( CSawPosA))
|
||||
EmtModifyAxisStroke( 'B1', { MinB1, MaxB1})
|
||||
-- se utensile di grande diametro su testa fresa
|
||||
elseif EMC.HEAD == 'H1' and EMC.TOTDIAM > 400 then
|
||||
EmtModifyAxisHome( 'X1', MaxX1)
|
||||
EmtModifyAxisHome( 'Z1', MaxZ1)
|
||||
EmtModifyAxisStroke( 'C1', { -180.1, 0.1})
|
||||
EmtModifyAxisHome( 'C1', 0)
|
||||
EmtModifyAxisStroke( 'B1', { -90.1, 0.1})
|
||||
-- altri casi su testa fresa
|
||||
elseif EMC.HEAD == 'H1' then
|
||||
EmtModifyAxisHome( 'X1', MaxX1)
|
||||
EmtModifyAxisHome( 'Z1', MaxZ1)
|
||||
EmtModifyAxisStroke( 'C1', { MinC1, MaxC1})
|
||||
EmtModifyAxisHome( 'C1', 0)
|
||||
EmtModifyAxisStroke( 'B1', { MinB1, MaxB1})
|
||||
end
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
-- Funzione che calcola la posizione Home di Z per la sega a catena dal valore dell'asse virtuale
|
||||
function GetChainSawZHomeFromVirtualAxis( dPosA)
|
||||
-- quota fissa
|
||||
return -125
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
-- Funzione che calcola l'angolo Home di C per la sega a catena dal valore dell'asse virtuale
|
||||
function GetChainSawCHomeFromVirtualAxis( dPosA)
|
||||
-- se A=180 -> T104 -> HomeC = -90
|
||||
if abs( dPosA - 180) < 0.1 then
|
||||
return -90
|
||||
-- altrimenti A=90 -> T101 -> HomeC = 0
|
||||
else
|
||||
return 0
|
||||
end
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
-- Funzione per resettare tutte le attivazioni della macchina
|
||||
function OnResetMachine()
|
||||
EmtUnlinkAllRawPartsFromGroups()
|
||||
EmtUnlinkAllFixturesFromGroups()
|
||||
-- nascondo Vmill
|
||||
local nRawId = EgtGetFirstRawPart()
|
||||
while nRawId do
|
||||
local nVmId = EgtGetFirstNameInGroup( nRawId, 'VMill')
|
||||
local nId = EgtGetFirstInGroup( nRawId)
|
||||
while nId do
|
||||
EgtSetStatus( nId, EgtIf( nId ~= nVmId, GDB_ST.ON, GDB_ST.OFF))
|
||||
nId = EgtGetNext( nId)
|
||||
end
|
||||
nRawId = EgtGetNextRawPart( nRawId)
|
||||
end
|
||||
EgtSetStatus( EgtGetFirstNameInGroup( GDB_ID.ROOT, 'VMill') or GDB_ID.NULL, GDB_ST.OFF)
|
||||
end
|
||||
Binary file not shown.
@@ -0,0 +1,639 @@
|
||||
-- Processore macchina Essetre-WALL by EgalTech s.r.l. 2023/04/24
|
||||
-- Con controllo numerico NUM
|
||||
|
||||
-- Variabili di modulo
|
||||
local MLE_INFO = 'Essetre-WALL.NUM.mlpe ver.'..PP_VER..' by EgalTech s.r.l.'
|
||||
local TEST_USE = false
|
||||
|
||||
---------------------------------------------------------------------
|
||||
-- *** GENERATION ***
|
||||
---------------------------------------------------------------------
|
||||
function OnStart()
|
||||
EMT.USETO1 = false -- abilitazione uso origine tavola
|
||||
EMT.MODAL = true -- abilitazione emissione modale
|
||||
EMT.INCHES = false -- unità di misura mm/inches
|
||||
EMT.NUM = false -- abilitazione numerazione linee
|
||||
--EMT.Nt = 'N' -- token per la numerazione di linea
|
||||
--EMT.LINENBR = 0 -- numero di linea
|
||||
--EMT.LINEINC = 1 -- incremento numerazione linee
|
||||
--EMT.Ft = 'F' -- token per feed
|
||||
--EMT.St = 'S' -- token per speed
|
||||
EMT.FMAXPINZE = 154000 -- feed massima pinze
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function OnEnd()
|
||||
-- Ripristino fase iniziale come corrente
|
||||
EgtSetCurrPhase( 1)
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function OnProgramStart()
|
||||
-- Info da gruppo BtlInfo (se mancano prova dal gruppo di lavoro corrente)
|
||||
local BtlInfoId = EgtGetFirstNameInGroup( GDB_ID.ROOT, 'BtlInfo') or EgtGetCurrMachGroup() or GDB_ID.NULL
|
||||
local nRefPos = EgtGetInfo( BtlInfoId, 'REFPOS', 'i') or 1
|
||||
if nRefPos == 1 or nRefPos == 2 or nRefPos == 3 then
|
||||
EMT.ORIG = 1 + ( nRefPos - 1) * 10
|
||||
elseif nRefPos == 4 or nRefPos == 5 or nRefPos == 6 then
|
||||
EMT.ORIG = 2 + ( nRefPos - 4) * 10
|
||||
elseif nRefPos == 7 or nRefPos == 8 or nRefPos == 9 then
|
||||
EMT.ORIG = 3 + ( nRefPos - 7) * 10
|
||||
elseif nRefPos == 10 or nRefPos == 11 or nRefPos == 12 then
|
||||
EMT.ORIG = 4 + ( nRefPos - 10) * 10
|
||||
else
|
||||
EMT.ORIG = 1
|
||||
end
|
||||
EMT.LOAD90 = EgtGetInfo( BtlInfoId, 'LOAD90', 'i') or 0
|
||||
-- Intestazioni
|
||||
if not TEST_USE then
|
||||
EMT.PRODID = EgtGetInfo( BtlInfoId, 'PRODID', 'i') or 0
|
||||
EMT.PATTID = EgtGetInfo( BtlInfoId, 'PATTID', 'i') or 0
|
||||
end
|
||||
if EMT.PATTID and EMT.PATTID > 0 then
|
||||
EmtOutput( '%' .. tostring( EMT.PATTID) .. '.0')
|
||||
else
|
||||
EmtOutput( '%40.0')
|
||||
end
|
||||
if EMT.INFO then
|
||||
EmtOutput( '('..EMT.INFO..')')
|
||||
else
|
||||
EmtOutput( '(Program Start)')
|
||||
end
|
||||
EmtOutput( '('.. MLE_INFO..')')
|
||||
-- Se modalità test vado in posizione sicura
|
||||
if TEST_USE then
|
||||
EmtOutput( 'G77 H9000 N1000 N2000')
|
||||
end
|
||||
-- Parametri macchina
|
||||
local sOut = 'L163='..EgtNumToString( Orig2DeltaY, 2)..'\n'..
|
||||
'L164='..EgtNumToString( -Orig2DeltaX, 2)..'\n'..
|
||||
'L165='..EgtNumToString( Orig2DeltaZ, 2)..'\n'..
|
||||
'L166='..EgtNumToString( Orig3DeltaY, 2)..'\n'..
|
||||
'L167='..EgtNumToString( -Orig3DeltaX, 2)..'\n'..
|
||||
'L168='..EgtNumToString( Orig3DeltaZ, 2)..'\n'..
|
||||
'L169='..EgtNumToString( Orig4DeltaY, 2)..'\n'..
|
||||
'L170='..EgtNumToString( -Orig4DeltaX, 2)..'\n'..
|
||||
'L171='..EgtNumToString( Orig4DeltaZ, 2)..'\n'..
|
||||
'G114'..' EA'..EgtNumToString( DeltaTabY + DimTabY - SawDeltaY, 2)..' EB'..EgtNumToString( -DeltaTabX + SawDeltaX, 2)..
|
||||
' EC'..EgtNumToString( DeltaTabZ - SawDeltaZ, 2)..' ED'..EgtNumToString( SawOffs, 2)..' EE'..EgtNumToString( 0, 2)..
|
||||
' EF'..EgtNumToString( DeltaTabY + DimTabY, 2)..' EG'..EgtNumToString( -DeltaTabX, 2)..
|
||||
' EH'..EgtNumToString( DeltaTabZ, 2)..' EI'..EgtNumToString( MillOffs, 2)
|
||||
EmtOutput( sOut)
|
||||
-- Indice lavorazione
|
||||
EMT.CNT = 0
|
||||
-- Non effettuate lavorazioni con sega a catena sul fianco
|
||||
EMT.CSAWFIRST = true
|
||||
-- Non effettuata pausa per rimozione sfridi
|
||||
EMT.SCRAPFIRST = true
|
||||
-- Cerco primo utensile su testa 1
|
||||
EMT.TOOL_1, EMT.TLEN_1 = FindFirstToolOnHead( 'H1')
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function OnProgramEnd()
|
||||
EmtOutput( '( *** Program End *** )')
|
||||
EmitCount()
|
||||
-- Dichiarazione conclusione pezzi
|
||||
if EMT.PRODID then
|
||||
local PartId = EgtGetFirstPartInRawPart( EMT.RAWID)
|
||||
while PartId do
|
||||
local CutId = EgtGetInfo( PartId, 'CUTID', 'i') or 0
|
||||
local sOut = 'G126 EA'..tostring( EMT.PRODID)..' EB'..tostring( EMT.PATTID)..' EC'..tostring( CutId)..' ED2'
|
||||
EmtOutput( sOut)
|
||||
PartId = EgtGetNextPartInRawPart( PartId)
|
||||
end
|
||||
end
|
||||
-- Arresto mandrino
|
||||
EmtOutput( 'M05 E80000=1')
|
||||
-- Tipo di scarico
|
||||
if not TEST_USE then
|
||||
--EmtOutput( 'M12 $PRESS START FOR CLEANING')
|
||||
EmtOutput( 'M27 E30057=1')
|
||||
end
|
||||
-- Se modalità test, termino il programma
|
||||
if TEST_USE then
|
||||
EmtOutput( 'M02')
|
||||
end
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function OnToolData()
|
||||
-- emissione dati utensile (esclusa lama e sega a catena)
|
||||
if EMT.HEAD == 'H1' then
|
||||
-- cerco posizione di attrezzaggio del primo utensile di lavorazione
|
||||
if EMT.TOOL == EMT.TOOL_1 and EMT.TLEN_1 < 215.5 then
|
||||
EMT.TCPOS_1 = EMT.TCPOS
|
||||
end
|
||||
-- emissione dati sega a catena
|
||||
elseif EMT.HEAD == 'H3' then
|
||||
;
|
||||
end
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function OnDispositionStart()
|
||||
--EmtOutput( '(Disposition '..EMT.DISPIND..' = '..EMT.DISPID..')')
|
||||
EMT.OPEISDISP = true
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function OnDispositionEnd()
|
||||
-- Se prima disposizione
|
||||
if EMT.PHASE == 1 then
|
||||
-- Dimensioni grezzo
|
||||
local b3Raw = EgtGetRawPartBBox( EMT.RAWID)
|
||||
EMT.LP = b3Raw:getDimX()
|
||||
EMT.HP = b3Raw:getDimY()
|
||||
EMT.SP = b3Raw:getDimZ()
|
||||
EmtOutput( 'E30050='..EgtNumToString( 1000 * EMT.HP, 0)..
|
||||
' E30051='..EgtNumToString( 1000 * EMT.LP, 0)..
|
||||
' E30052='..EgtNumToString( 1000 * EMT.SP, 0))
|
||||
-- Scelta origine
|
||||
EmtOutput( 'M26 E30054='..EgtNumToString( EMT.ORIG, 0))
|
||||
-- Posizione cuffia
|
||||
local dHCuff = b3Raw:getDimZ() + 32
|
||||
EmtOutput( 'E30039=' .. EgtNumToString( dHCuff * 1000, 0))
|
||||
-- Eventuale salto a lavorazione in corso
|
||||
EmtOutput( 'G79 NE80000')
|
||||
-- Dichiarazione inizio lavorazione pezzi
|
||||
if EMT.PRODID then
|
||||
EmitCount()
|
||||
local PartId = EgtGetFirstPartInRawPart( EMT.RAWID)
|
||||
while PartId do
|
||||
local CutId = EgtGetInfo( PartId, 'CUTID', 'i') or 0
|
||||
local sOut = 'G126 EA'..tostring( EMT.PRODID)..' EB'..tostring( EMT.PATTID)..' EC'..tostring( CutId)..' ED1'
|
||||
EmtOutput( sOut)
|
||||
PartId = EgtGetNextPartInRawPart( PartId)
|
||||
end
|
||||
end
|
||||
end
|
||||
EMT.OPEISDISP = false
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function OnTableData()
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function OnFixtureData()
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function OnRawMoveData()
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function OnToolSelect()
|
||||
-- se utensile definito (non definito per disposizioni con movimento)
|
||||
if EMT.TOOL ~= '' then
|
||||
-- verifiche su utensile
|
||||
local sTool = EgtTdbGetToolFromUUID( EgtGetMachiningParam( MCH_MP.TUUID) or "")
|
||||
if sTool ~= EMT.TOOL then error( "Tool name mismatch") end
|
||||
-- predefinite EMT.TCPOS EMT.HEAD EMT.EXIT
|
||||
EMT.TOOLTYPE = EgtTdbGetCurrToolParam( MCH_TP.TYPE)
|
||||
EMT.TOOLSEL = EMT.TCPOS..' M06'
|
||||
EMT.TDIAM = EgtTdbGetCurrToolParam( MCH_TP.DIAM)
|
||||
EMT.TTOTDIAM = EgtTdbGetCurrToolParam( MCH_TP.TOTDIAM)
|
||||
EMT.TLEN = EgtTdbGetCurrToolParam( MCH_TP.LEN)
|
||||
EMT.TTOTLEN = EgtTdbGetCurrToolParam( MCH_TP.TOTLEN)
|
||||
EMT.TDIST = EgtTdbGetCurrToolParam( MCH_TP.DIST)
|
||||
if EMT.TDIST and abs( EMT.TDIST) < 1 then EMT.TDIST = nil end
|
||||
EMT.TUSERNOTES = EgtTdbGetCurrToolParam( MCH_TP.USERNOTES)
|
||||
end
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function OnToolDeselect()
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function OnMachiningStart()
|
||||
--EMT.MCHLIBNAME = EgtGetMachiningParam( MCH_MP.NAME)
|
||||
EMT.MCHNAME = EgtGetOperationName( EMT.MCHID)
|
||||
EMT.MCHTYPE = EgtGetMachiningParam( MCH_MP.TYPE)
|
||||
EMT.MCHWS = EgtGetMachiningParam( MCH_MP.WORKSIDE) or 0
|
||||
EMT.MCHUSERNOTES = EgtGetMachiningParam( MCH_MP.USERNOTES)
|
||||
-- non ancora iniziata la lavorazione
|
||||
EMT.MCHFIRST = true
|
||||
-- primo posizionamento sempre in globale
|
||||
EMT.REFLOC = nil
|
||||
EMT.IPLGL = false
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function OnMachiningEnd()
|
||||
if not EMT.ZMAX then
|
||||
EmtOutput( 'G103'..GetET()..' E80000='..tostring( EMT.CNT + 1))
|
||||
end
|
||||
EMT.PREVTOOL = EMT.TOOL
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function OnPathStart()
|
||||
-- reset valori precedenti (per forzare emissione di tutti gli assi del 1° movimento)
|
||||
EmtResetPrev()
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function OnPathEnd()
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function OnRapid()
|
||||
-- se primo movimento della lavorazione, gestione speciale
|
||||
if EMT.MCHFIRST and not EMT.OPEISDISP then
|
||||
MyAdjustLinearAxes()
|
||||
EmtAdjustRotaryAxes()
|
||||
EmtOutput( '( *** '..EMT.MCHNAME..'/'..EMT.TOOL..' *** )')
|
||||
EmitCount()
|
||||
-- se lavorazione con sega a catena
|
||||
if EMT.HEAD == 'H3' then
|
||||
-- se prima lavorazione sui fianchi con sega a catena
|
||||
if EMT.CSAWFIRST and string.sub( EMT.MCHNAME, 1, 5) == 'Csaw_' then
|
||||
EMT.CSAWFIRST = false
|
||||
-- eventuale pausa per rimozione sfridi
|
||||
if EMT.SCRAPFIRST then
|
||||
EMT.SCRAPFIRST = false
|
||||
local b3Raw = EgtGetRawPartBBox( EMT.RAWID)
|
||||
local ParkY = min( -( b3Raw:getMin():getX() - 2000), -MinY)
|
||||
EmtOutput( 'G104 Y' .. EmtLenToString( ParkY, 3) .. ' ET1' .. GetEF())
|
||||
end
|
||||
-- pre-posizionamento
|
||||
EmitCount()
|
||||
EmtResetPrev()
|
||||
local sOut = 'G101' .. EmtGetAxis( 'R1')
|
||||
local sET = GetET()
|
||||
local sEU = GetEU()
|
||||
local sEE = GetEE()
|
||||
local sEF = GetEF()
|
||||
local sEM = ' EM'..EgtIf( EMT.S > 0, '3', '4')
|
||||
local sES = ' ES'..EgtNumToString( abs( EMT.S), 0)
|
||||
local sEL = ' EL' .. EmtLenToString( ( EMT.TDIST or ChSawLen), 3)
|
||||
local sER = ' ER' .. EmtLenToString( EMT.TLEN, 3)
|
||||
sOut = sOut .. sET .. sEU .. sEE .. sEF .. sEM .. sES .. sEL .. sER
|
||||
EmtOutput( sOut)
|
||||
end
|
||||
-- altrimenti verifico se necessaria pausa
|
||||
else
|
||||
local bSystemSR = ( EMT.SCRAPFIRST and EgtExistsInfo( EMT.MCHID, 'MOVE_AFTER'))
|
||||
local bUserSR = ( EgtGetValInNotes( EMT.MCHUSERNOTES, 'ScrapRemove', 'i') == 1)
|
||||
if bSystemSR or bUserSR then
|
||||
if bSystemSR then EMT.SCRAPFIRST = false end
|
||||
-- pausa per rimozione sfridi
|
||||
local b3Raw = EgtGetRawPartBBox( EMT.RAWID)
|
||||
local ParkY = min( -( b3Raw:getMin():getX() - 2000), -MinY)
|
||||
EmtOutput( 'G104 Y' .. EmtLenToString( ParkY, 3) .. ' ET1' .. GetEF())
|
||||
end
|
||||
end
|
||||
-- primo posizionamento
|
||||
EmtResetPrev()
|
||||
local sOut = 'G101' .. EmtGetAxis( 'L1') .. EmtGetAxis( 'L2') .. EmtGetAxis( 'L3') ..
|
||||
EmtGetAxis( 'R2') .. EmtGetAxis( 'R1')
|
||||
if EMT.HEAD == 'H1' then
|
||||
sOut = sOut .. ' U' .. EmtLenToString( MinX2, 3) .. ' W0 V90 A0'
|
||||
elseif EMT.HEAD == 'H2' then
|
||||
sOut = sOut .. ' U' .. EmtLenToString( MaxX1, 3) .. ' W0 V0 A0'
|
||||
elseif EMT.HEAD == 'H3' then
|
||||
sOut = sOut .. ' U' .. EmtLenToString( MinX2, 3) .. ' W0 V90 A0'
|
||||
else
|
||||
EmtSetLastError( 1211, "Unknown Head : " .. EMT.HEAD)
|
||||
end
|
||||
local sET = GetET()
|
||||
local sEU = GetEU()
|
||||
local sEE = GetEE()
|
||||
local sEF = GetEF()
|
||||
local sEM = ' EM'..EgtIf( EMT.S > 0, '3', '4')
|
||||
local sES = ' ES'..EgtNumToString( abs( EMT.S), 0)
|
||||
local sEL = ' EL' .. EmtLenToString( EgtIf( EMT.HEAD ~= 'H3', EMT.TLEN, ( EMT.TDIST or ChSawLen)), 3)
|
||||
local sER = ' ER' .. EmtLenToString( EgtIf( EMT.HEAD ~= 'H3', EMT.TDIAM / 2, EMT.TLEN), 3)
|
||||
sOut = sOut .. sET .. sEU .. sEE .. sEF .. sEM .. sES .. sEL .. sER
|
||||
EmtOutput( sOut)
|
||||
EMT.REFLOC = 0
|
||||
EMT.MCHFIRST = false
|
||||
EMT.ZMAX = false
|
||||
-- se standard
|
||||
elseif EMT.FLAG == 0 or EMT.FLAG == 1 or EMT.FLAG == 2 then
|
||||
-- se necessario, impostazione riferimento locale
|
||||
if EMT.REFLOC == 0 then
|
||||
-- calcolo per piano generico
|
||||
CalcInterpPlane()
|
||||
EMT.REFLOC = 1
|
||||
-- trasformo i punti nel piano
|
||||
MyAdjustLinearAxes()
|
||||
EmtAdjustRotaryAxes()
|
||||
EMT.L1p = nil
|
||||
EMT.L2p = nil
|
||||
EMT.L3p = nil
|
||||
EMT.R1p = nil
|
||||
EMT.R2p = nil
|
||||
local sET = GetET()
|
||||
local sEU = GetEU()
|
||||
local sEE = GetEE()
|
||||
local sEF = ' EF20000'
|
||||
local sEM = ' EM'..EgtIf( EMT.S > 0, '3', '4')
|
||||
local sES = ' ES'..EgtNumToString( abs( EMT.S), 0)
|
||||
local sEL = ' EL' .. EmtLenToString( EgtIf( EMT.HEAD ~= 'H3', EMT.TLEN, ( EMT.TDIST or ChSawLen)), 3)
|
||||
local sER = ' ER' .. EmtLenToString( EgtIf( EMT.HEAD ~= 'H3', EMT.TDIAM / 2, EMT.TLEN), 3)
|
||||
EmtOutput( 'G102'..EmtGetAxis('L1')..EmtGetAxis('L2')..EmtGetAxis('L3')..EmtGetAxis('R2')..EmtGetAxis('R1')..EMT.IPLGLSTR..sET..sEU..sEE..sEF..sEM..sES..sEL..sER)
|
||||
else
|
||||
MyAdjustLinearAxes()
|
||||
EmtAdjustRotaryAxes()
|
||||
end
|
||||
-- emissione movimento
|
||||
local sOut = 'G0'..EmtGetAxis('L1')..EmtGetAxis('L2')..EmtGetAxis('L3')..
|
||||
EmtGetAxis('R2')..EmtGetAxis('R1')
|
||||
EmtOutput( sOut)
|
||||
-- se altrimenti risalita a Z max a fine lavorazione
|
||||
elseif EMT.FLAG == 3 then
|
||||
if EMT.REFLOC then
|
||||
EMT.REFLOC = nil
|
||||
EMT.IPLGL = false
|
||||
EmtResetPrev()
|
||||
-- dichiarazione fine lavorazione
|
||||
EmtOutput( 'G103'..GetET()..' E80000='..tostring( EMT.CNT + 1))
|
||||
end
|
||||
MyAdjustLinearAxes()
|
||||
EmtAdjustRotaryAxes()
|
||||
if not IsSpecialTool( EMT.TCPOS) then
|
||||
local sOut = 'G101' .. EmtGetAxis( 'L3') .. EmtGetAxis( 'R2') .. EmtGetAxis( 'R1')
|
||||
sOut = sOut .. GetET() .. GetEE() .. GetEF()
|
||||
EmtOutput( sOut)
|
||||
else
|
||||
if EMT.TCPOS ~= 'T101' then
|
||||
local sOut = 'G101' .. EmtGetAxis( 'L3') .. EmtGetAxis( 'R2') .. EmtGetAxis( 'R1')
|
||||
local sEU_EO = ' EU50'
|
||||
sOut = sOut .. GetET() .. GetEN().. sEU_EO .. GetEF()
|
||||
EmtOutput( sOut)
|
||||
elseif EMT.ADIR[3] > 0.708 then
|
||||
local sOut = 'G101' .. EmtGetAxis( 'L3') .. EmtGetAxis( 'R2') .. EmtGetAxis( 'R1') .. GetET() .. GetEN() .. GetEF()
|
||||
EmtOutput( sOut)
|
||||
sOut = 'G101 X' .. EmtLenToString( ParkTSpecX1, 3) .. GetET() .. GetEE() .. GetEF()
|
||||
EmtOutput( sOut)
|
||||
else
|
||||
local sOut = 'G101 X' .. EmtLenToString( ParkTSpecX1, 3) .. EmtGetAxis( 'L3') .. EmtGetAxis( 'R2') .. EmtGetAxis( 'R1') .. GetET() .. GetEE() .. GetEF()
|
||||
EmtOutput( sOut)
|
||||
end
|
||||
end
|
||||
EMT.ZMAX = true
|
||||
-- se altrimenti movimento in Home
|
||||
elseif EMT.FLAG == 4 then
|
||||
-- non previsto
|
||||
-- altrimenti errore
|
||||
else
|
||||
error( "Unknown Rapid flag")
|
||||
end
|
||||
-- aggiorno valori come precedenti
|
||||
EmtUpdatePrev()
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function OnLinear()
|
||||
-- se necessario, impostazione riferimento locale
|
||||
if EMT.REFLOC == 0 then
|
||||
-- calcolo per piano generico
|
||||
CalcInterpPlane()
|
||||
EMT.REFLOC = 1
|
||||
-- salvo posizione attuale
|
||||
local OldL1 = EMT.L1
|
||||
local OldL2 = EMT.L2
|
||||
local OldL3 = EMT.L3
|
||||
local OldR1p = EMT.R1p
|
||||
local OldR2p = EMT.R2p
|
||||
-- imposto posizione precedente
|
||||
EMT.L1 = EMT.L1o
|
||||
EMT.L2 = EMT.L2o
|
||||
EMT.L3 = EMT.L3o
|
||||
EMT.R1p = nil
|
||||
EMT.R2p = nil
|
||||
-- trasformo i punti nel piano
|
||||
MyAdjustLinearAxes()
|
||||
EmtAdjustRotaryAxes()
|
||||
local sET = GetET()
|
||||
local sEU = GetEU()
|
||||
local sEE = GetEE()
|
||||
local sEF = ' EF20000'
|
||||
local sEM = ' EM'..EgtIf( EMT.S > 0, '3', '4')
|
||||
local sES = ' ES'..EgtNumToString( abs( EMT.S), 0)
|
||||
local sEL = ' EL' .. EmtLenToString( EgtIf( EMT.HEAD ~= 'H3', EMT.TLEN, ( EMT.TDIST or ChSawLen)), 3)
|
||||
local sER = ' ER' .. EmtLenToString( EgtIf( EMT.HEAD ~= 'H3', EMT.TDIAM / 2, EMT.TLEN), 3)
|
||||
EmtOutput( 'G102'..EmtGetAxis('L1')..EmtGetAxis('L2')..EmtGetAxis('L3')..EmtGetAxis('R2')..EmtGetAxis('R1')..EMT.IPLGLSTR..sET..sEU..sEE..sEF..sEM..sES..sEL..sER)
|
||||
-- emissione movimento
|
||||
local sOut = 'G0'..EmtGetAxis('L1')..EmtGetAxis('L2')..EmtGetAxis('L3')..
|
||||
EmtGetAxis('R2')..EmtGetAxis('R1')
|
||||
EmtOutput( sOut)
|
||||
-- ripristino posizione attuale
|
||||
EMT.L1 = OldL1
|
||||
EMT.L2 = OldL2
|
||||
EMT.L3 = OldL3
|
||||
EMT.R1p = OldR1p
|
||||
EMT.R2p = OldR2p
|
||||
end
|
||||
|
||||
-- aggiustamento valori
|
||||
MyAdjustLinearAxes()
|
||||
EmtAdjustRotaryAxes()
|
||||
|
||||
-- valori degli assi
|
||||
local sAxes = EmtGetAxis('L1')..EmtGetAxis('L2')..EmtGetAxis('L3')..
|
||||
EmtGetAxis('R2')..EmtGetAxis('R1')
|
||||
-- se nulla da emettere, esco
|
||||
if string.len( sAxes) == 0 then
|
||||
return
|
||||
end
|
||||
-- aggiungo feed
|
||||
local sFeed = EmtGetFeed()
|
||||
-- emetto linea
|
||||
EmtOutput( "G1"..sAxes..sFeed)
|
||||
|
||||
-- aggiorno valori come precedenti
|
||||
EmtUpdatePrev()
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function OnArc()
|
||||
-- non modale su archi
|
||||
local dPrevZ = EMT.L3p
|
||||
EmtResetPrevLinear()
|
||||
-- aggiustamento valori
|
||||
MyAdjustLinearAxes()
|
||||
EmtAdjustRotaryAxes()
|
||||
|
||||
-- valori degli assi
|
||||
local sAxes = EmtGetAxis('L1')..EmtGetAxis('L2')..EmtGetAxis('L3')..
|
||||
EmtGetAxis('R2')..EmtGetAxis('R1')
|
||||
-- se nulla da emettere, esco
|
||||
if string.len( sAxes) == 0 then
|
||||
return
|
||||
end
|
||||
-- valori delle coordinate del centro
|
||||
EmtAdjustCenterAxes()
|
||||
-- coordinate centro (per ora solo archi nel piano XY)
|
||||
--local sCen = ' ' .. EMT.C1t .. EmtLenToString(EMT.C1,3) ..
|
||||
-- ' ' .. EMT.C2t .. EmtLenToString(EMT.C2,3)
|
||||
-- raggio
|
||||
local sRad = ' ' .. EMT.RRt .. EmtLenToString(EMT.RR,3)
|
||||
-- aggiungo feed
|
||||
local sFeed = EmtGetFeed()
|
||||
-- tipo arco
|
||||
local sArc = 'G' .. EgtNumToString(EMT.MOVE,0)
|
||||
-- se elica, aggiungo il pitch
|
||||
local sPitch = ''
|
||||
local dDeltaZ = EMT.L3 - dPrevZ
|
||||
if abs( dDeltaZ) > GEO.EPS_SMALL then
|
||||
local dPitch = dDeltaZ * 360.0 / abs( EMT.AC)
|
||||
sPitch = ' K' .. EmtLenToString( dPitch, 3)
|
||||
end
|
||||
-- emetto arco
|
||||
EmtOutput( sArc..sAxes..sRad..sPitch..sFeed)
|
||||
|
||||
-- aggiorno valori come precedenti
|
||||
EmtUpdatePrev()
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function MyAdjustLinearAxes()
|
||||
if EMT.REFLOC then
|
||||
local vtDelta = V_NULL()
|
||||
local vtE = V_NULL()
|
||||
if EMT.HEAD == 'H1' then
|
||||
local Len = EMT.TLEN + MillOffs
|
||||
local LenRef = MillOffs
|
||||
local vtTool = EgtGetCalcToolDirFromAngles( EMT.R1, EMT.R2, EMT.R3)
|
||||
vtE = vtTool * Len - Z_AX() * LenRef
|
||||
elseif EMT.HEAD == 'H2' then
|
||||
vtDelta = -Vector3d( SawDeltaX, SawDeltaY, SawDeltaZ)
|
||||
local Len = EMT.TLEN + SawOffs
|
||||
local LenRef = SawOffs
|
||||
local vtTool = EgtGetCalcToolDirFromAngles( EMT.R1, EMT.R2, EMT.R3)
|
||||
vtE = vtTool * Len - Z_AX() * LenRef
|
||||
elseif EMT.HEAD == 'H3' then
|
||||
local Len = ( EMT.TDIST or ChSawLen) + MillOffs
|
||||
local LenRef = MillOffs
|
||||
local vtAux = EgtGetCalcAuxDirFromAngles( EMT.R1, EMT.R2, EMT.R3)
|
||||
vtE = vtAux * Len - Z_AX() * LenRef
|
||||
end
|
||||
EMT.L1 = EMT.L1 - vtDelta:getX() - vtE:getX()
|
||||
EMT.L2 = EMT.L2 - vtDelta:getY() - vtE:getY()
|
||||
EMT.L3 = EMT.L3 - vtDelta:getZ() - DeltaTabZ - vtE:getZ()
|
||||
end
|
||||
|
||||
EmtAdjustLinearAxes()
|
||||
|
||||
if not EMT.REFLOC then
|
||||
EMT.L1 = - EMT.L1
|
||||
EMT.L1t = 'Y'
|
||||
EMT.L2t = 'X'
|
||||
else
|
||||
EMT.L1t = 'X'
|
||||
EMT.L2t = 'Y'
|
||||
end
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function CalcInterpPlane()
|
||||
-- origine del piano
|
||||
local xS = EMT.START[1]
|
||||
local yS = EMT.START[2]
|
||||
local zS = 0
|
||||
local ptS = Point3d( xS, yS, zS)
|
||||
-- calcolo per piano generico
|
||||
local vtE
|
||||
if EMT.HEAD ~= 'H3' then
|
||||
vtE = EgtGetCalcToolDirFromAngles( EMT.R1, EMT.R2, EMT.R3)
|
||||
else
|
||||
vtE = EgtGetCalcAuxDirFromAngles( EMT.R1, EMT.R2, EMT.R3)
|
||||
end
|
||||
EMT.IPLGLFR = Frame3d( ptS, vtE)
|
||||
--EmtOutput( 'IPLGLFR='..tostring(EMT.IPLGLFR))
|
||||
local _, dAngV, dAngO = SphericalFromVector( vtE)
|
||||
local dAngO2 = EmtGetAngO2( EMT.IPLGLFR:getVersZ(), EMT.IPLGLFR:getVersX(), dAngV, dAngO)
|
||||
dAngO = dAngO - 90
|
||||
while dAngO < 0 do
|
||||
dAngO = dAngO + 360
|
||||
end
|
||||
-- se rotazione solo attorno alla C allora si mette come rotazione finale
|
||||
if abs( dAngV) < GEO.EPS_ANG_SMALL then
|
||||
dAngO2 = dAngO2 + dAngO
|
||||
while dAngO2 >= 360 do
|
||||
dAngO2 = dAngO2 - 360
|
||||
end
|
||||
dAngO = 0
|
||||
end
|
||||
|
||||
local xOut = yS - DeltaTabY - DimTabY
|
||||
local yOut = - ( xS - DeltaTabX)
|
||||
local zOut = zS
|
||||
if EMT.ORIG == 2 or EMT.ORIG == 12 or EMT.ORIG == 22 then
|
||||
xOut = yS - DeltaTabY
|
||||
yOut = - ( xS - DeltaTabX)
|
||||
elseif EMT.ORIG == 3 or EMT.ORIG == 13 or EMT.ORIG == 23 then
|
||||
xOut = yS - DeltaTabY - DimTabY
|
||||
yOut = - ( xS - DeltaTabX - DimTabX)
|
||||
elseif EMT.ORIG == 4 or EMT.ORIG == 14 or EMT.ORIG == 24 then
|
||||
xOut = yS - DeltaTabY
|
||||
yOut = - ( xS - DeltaTabX - DimTabX)
|
||||
end
|
||||
EMT.IPLGLSTR = ' EX'..EmtLenToString( xOut)..' EY'..EmtLenToString( yOut)..' EZ'..EmtLenToString( zOut)..
|
||||
' EA0'..' EB'..EgtNumToString( dAngV)..' EC'..EgtNumToString( dAngO)..' ED'..EgtNumToString( dAngO2)
|
||||
EMT.IPLGL = true
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function GetET()
|
||||
if EMT.HEAD == 'H1' or EMT.HEAD == 'H3' then
|
||||
return ' ET2'
|
||||
elseif EMT.HEAD == 'H2' then
|
||||
return ' ET1'
|
||||
end
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function GetEU()
|
||||
local sEU
|
||||
if EMT.HEAD == 'H1' then
|
||||
if #EMT.TCPOS == 2 then
|
||||
sEU = ' EU'..string.sub( EMT.TCPOS, 2)
|
||||
elseif #EMT.TCPOS == 3 then
|
||||
sEU = ' EU1'..string.sub( EMT.TCPOS, 3)
|
||||
elseif #EMT.TCPOS == 4 then
|
||||
sEU = ' EU2'..string.sub( EMT.TCPOS, 3)
|
||||
end
|
||||
elseif EMT.HEAD == 'H2' then
|
||||
sEU = ' EU0'
|
||||
elseif EMT.HEAD == 'H3' then
|
||||
if abs( EMT.R3 - 0) < 0.1 then
|
||||
sEU = ' EU104'
|
||||
elseif abs( EMT.R3 - 270) < 0.1 then
|
||||
sEU = ' EU101'
|
||||
elseif abs( EMT.R3 - 180) < 0.1 then
|
||||
sEU = ' EU102'
|
||||
elseif abs( EMT.R3 - 90) < 0.1 then
|
||||
sEU = ' EU103'
|
||||
else
|
||||
EmtSetLastError( 1210, 'Chain saw orientation not allowed')
|
||||
end
|
||||
else
|
||||
sEU = ''
|
||||
end
|
||||
return sEU
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function GetEE()
|
||||
return ' EE' .. EgtNumToString( EMT.ORIG, 0)
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function GetEF()
|
||||
return ' EF60000'
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function EmitCount()
|
||||
EMT.CNT = EMT.CNT + 1
|
||||
EmtOutput( 'N'..tostring( EMT.CNT)..' E80000='..tostring( EMT.CNT))
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
-- *** END GENERATION ***
|
||||
---------------------------------------------------------------------
|
||||
+1047
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,62 @@
|
||||
-- Special Operations macchina Essetre-WALL by EgalTech s.r.l. 2023/03/11
|
||||
|
||||
-- Intestazioni
|
||||
require( 'EmtGenerator')
|
||||
EgtEnableDebug( false)
|
||||
|
||||
EgtOutLog ( '** Essetre-WALL.mlse '..PP_VER..' **', 1)
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function OnSpecialMoveZup()
|
||||
|
||||
-- Inizializzazioni
|
||||
EMC.MODIF = false
|
||||
EMC.ERR = 1
|
||||
|
||||
-- Se fresa principale X1
|
||||
if EMC.HEAD == 'H1' then
|
||||
if EMC.L3 > -250 then
|
||||
EMC.R1 = EgtGetAxisHomePos( 'C1')
|
||||
EMC.R2 = EgtGetAxisHomePos( 'B1')
|
||||
EMC.TDIR = EgtGetCalcToolDirFromAngles( EMC.R1, EMC.R2)
|
||||
EMC.MODIF = true
|
||||
end
|
||||
-- se altrimenti seconda fresa X3
|
||||
elseif EMC.HEAD == 'H7' then
|
||||
if EMC.L3 > -250 then
|
||||
EMC.R1 = EgtGetAxisHomePos( 'C3')
|
||||
EMC.R2 = EgtGetAxisHomePos( 'B3')
|
||||
EMC.TDIR = EgtGetCalcToolDirFromAngles( EMC.R1, EMC.R2)
|
||||
EMC.MODIF = true
|
||||
end
|
||||
-- se altrimenti sega a catena X1
|
||||
elseif EMC.HEAD == 'H3' then
|
||||
local L3New = EMC.L3
|
||||
local R1New = EMC.R1
|
||||
local R2New = EMC.R2
|
||||
if EMC.L3 > -300 then
|
||||
L3New = min( EMC.L3, -250)
|
||||
R1New = EgtGetAxisHomePos( 'C1')
|
||||
R2New = EgtGetAxisHomePos( 'B1')
|
||||
EMC.MODIF = true
|
||||
end
|
||||
if EMC.MODIF then
|
||||
EMC.L3 = L3New
|
||||
EMC.R1 = R1New
|
||||
EMC.R2 = R2New
|
||||
EMC.TDIR = EgtGetCalcToolDirFromAngles( EMC.R1, EMC.R2, EMC.R3)
|
||||
end
|
||||
-- se altrimenti lama X2
|
||||
elseif EMC.HEAD == 'H2' then
|
||||
if EMC.L3 > -200 then
|
||||
EMC.R1 = EgtGetAxisHomePos( 'C2')
|
||||
EMC.R2 = EgtGetAxisHomePos( 'B2')
|
||||
EMC.TDIR = EgtGetCalcToolDirFromAngles( EMC.R1, EMC.R2)
|
||||
EMC.MODIF = true
|
||||
end
|
||||
-- altrimenti errore
|
||||
else
|
||||
error( "Unknown Head")
|
||||
end
|
||||
EMC.ERR = 0
|
||||
end
|
||||
@@ -0,0 +1,712 @@
|
||||
// English machine message file 2022/08/27
|
||||
|
||||
[MDI]
|
||||
1=Load tool n° 1
|
||||
2=Load tool n° 2
|
||||
3=Load tool n° 3
|
||||
4=Load tool n° 4
|
||||
5=Load tool n° 5
|
||||
6=Load tool n° 6
|
||||
7=Load tool n° 7
|
||||
8=Load tool n° 8
|
||||
9=Load tool n° 9
|
||||
10=Load tool n° 10
|
||||
11=Load tool n° 11
|
||||
12=Load tool n° 12
|
||||
13=Load tool n° 13
|
||||
14=Load tool n° 14
|
||||
15=Load tool n° 15
|
||||
16=Load tool n° 16
|
||||
17=Load tool n° 17
|
||||
18=Load tool n° 18
|
||||
19=Unload all tool
|
||||
20=Activate tool magazine
|
||||
21=Open rotary tool change protection
|
||||
22=Closed rotary tool change protection
|
||||
23=Pull up front stop
|
||||
24=Pull down front stop
|
||||
25=Pull up lateral stop
|
||||
26=Pull down side stop
|
||||
27=Manual tool number assignment in the 5-axis head
|
||||
28 = Workplan cleaning cycle
|
||||
|
||||
[PLC]
|
||||
1=Machine switched off
|
||||
2=FREE MESSAGE
|
||||
3=UPS malfunction in machine electric cabinet
|
||||
4=UPS battery discharged in machine electric cabinet
|
||||
5=FREE MESSAGE
|
||||
6=Home axes B and C not executed
|
||||
7=FREE MESSAGE
|
||||
8=Check oil lubrication of chain aggregates
|
||||
9=Thermal magnetic circuit breaker intervened in machine electric cabinet
|
||||
10=FREE MESSAGE
|
||||
11=FREE MESSAGE
|
||||
12=Minimum grease level in the punp
|
||||
13=Axis lubrication plant fault
|
||||
14=Compressed air is missing
|
||||
15=Over temperature in machine electric cabinet left
|
||||
16=Over temperature in machine electric cabinet right
|
||||
17=Electrospindle and motor cooler malfunction
|
||||
18=FREE MESSAGE
|
||||
19=FREE MESSAGE
|
||||
20=FREE MESSAGE
|
||||
21=FREE MESSAGE
|
||||
22=FREE MESSAGE
|
||||
23=Possible collision electrospindle with rotary tool change
|
||||
24=X axis drive in alarm
|
||||
25=Y axis drive in alarm
|
||||
26=Z axis drive in alarm
|
||||
27=B axis drive in alarm
|
||||
28=C axis drive in alarm
|
||||
29=U axis drive in alarm
|
||||
30=Y1 axis drive in alarm
|
||||
31=W axis drive in alarm
|
||||
32=X axis drive not enabled
|
||||
33=Y axis drive not enabled
|
||||
34=Z axis drive not enabled
|
||||
35=B axis drive not enabled
|
||||
36=C axis drive not enabled
|
||||
37=U axis drive not enabled
|
||||
38=Y1 axis drive not enabled
|
||||
39=W axis drive not enabled
|
||||
40=V axis drive in alarm
|
||||
41=V axis drive not enabled
|
||||
42=A axis drive in alarm
|
||||
43=A axis drive not enabled
|
||||
44=Rotary tool change warehouse protection open
|
||||
45=Waiting for insertion of blade motor contactor
|
||||
46=Waiting for insertion of electrospindle contactor
|
||||
47=Electrospindle position not ok for side tool magazine exit
|
||||
48=Electrospindle position not ok for under beam tool magazine exit
|
||||
49=Electrospindle position not ok for chain saw tool magazine exit
|
||||
50=Alarm of safety zones workplan
|
||||
51=Pre-alarm workplan safety zones
|
||||
52=FREE MESSAGE
|
||||
53=Obstacle descent portal suction cap
|
||||
54=Obstacle descent electrospindle suction cap
|
||||
55=Obstacle descent saw blade suction cap
|
||||
56=Inverter malfunction cportal suction cap
|
||||
57=Inverter malfunction celectrospindle suction cap
|
||||
58=Inverter malfunction csaw blade suction cap
|
||||
59=*** CE MAINTENANCE ***
|
||||
60=FREE MESSAGE
|
||||
61=FREE MESSAGE
|
||||
62=FREE MESSAGE
|
||||
63=FREE MESSAGE
|
||||
64=FREE MESSAGE
|
||||
65=FREE MESSAGE
|
||||
66=FREE MESSAGE
|
||||
67=FREE MESSAGE
|
||||
68=FREE MESSAGE
|
||||
69=FREE MESSAGE
|
||||
70=FREE MESSAGE
|
||||
71=FREE MESSAGE
|
||||
72=FREE MESSAGE
|
||||
73=FREE MESSAGE
|
||||
74=FREE MESSAGE
|
||||
75=FREE MESSAGE
|
||||
76=FREE MESSAGE
|
||||
77=FREE MESSAGE
|
||||
78=FREE MESSAGE
|
||||
79=FREE MESSAGE
|
||||
80=FREE MESSAGE
|
||||
81=Side tool loader not backwards program M90 and then M195
|
||||
82=Side tool magazine forward sensor not Ok
|
||||
83=Side tool magazine back sensor not Ok
|
||||
84=Tool magazine under beam not back program M90 and then M197
|
||||
85=Under beam tool magazine forward sensor not Ok
|
||||
86=Under beam tool magazine back sensor not Ok
|
||||
87=Chain saw tool magazine not back program M90 and then M199
|
||||
88=Tool magazine chain saw forward Sensor not Ok
|
||||
89=Tool magazine chain saw back Sensor not Ok
|
||||
90=FREE MESSAGE
|
||||
91=FREE MESSAGE
|
||||
92=Contemporary sensors for side tool change magazine
|
||||
93=Contemporary sensors for under beam tool change magazine sottotrave
|
||||
94=Contemporary sensors for chain saw tool change magazine catena
|
||||
95=Tuning inserted allowed only manual movements
|
||||
96=FREE MESSAGE
|
||||
97=FREE MESSAGE
|
||||
98=FREE MESSAGE
|
||||
99=FREE MESSAGE
|
||||
100=FREE MESSAGE
|
||||
101=Number of revolutions electrospindle or motor not Ok
|
||||
102=FREE MESSAGE
|
||||
103=FREE MESSAGE
|
||||
104=FREE MESSAGE
|
||||
105=Rotation electrospindle forbidden without tools
|
||||
106=FREE MESSAGE
|
||||
107=FREE MESSAGE
|
||||
108=Wait for power
|
||||
109=Press reset button
|
||||
110=FREE MESSAGE
|
||||
111=FREE MESSAGE
|
||||
112=FREE MESSAGE
|
||||
113=FREE MESSAGE
|
||||
114=FREE MESSAGE
|
||||
115=Overtemperature brake resistors mill inverter
|
||||
116=Mill Electrospindle overtemperature
|
||||
117=Saw Motor overtemperature
|
||||
118=Flow switch Electrospindle not Ok
|
||||
119=Saw blade Motor flow switch not Ok
|
||||
120=Overcurrent inverter
|
||||
121=Problem on electro-valve or vacuum workplan: zone 1
|
||||
122=Problem on electro-valve or vacuum workplan: zone 2
|
||||
123=Problem on electro-valve or vacuum workplan: zone 3
|
||||
124=Problem on electro-valve or vacuum workplan: zone 4
|
||||
125=Problem on electro-valve or vacuum workplan: zone 5
|
||||
126=Problem on electro-valve or vacuum workplan: zone 6
|
||||
127=Problem on electro-valve or vacuum workplan: zone 7
|
||||
128=Problem on electro-valve or vacuum workplan: zone 8
|
||||
129=Problem on electro-valve or vacuum workplan: zone 9
|
||||
130=Problem on electro-valve or vacuum workplan: zone 10
|
||||
131=Problem on electro-valve or vacuum workplan: zone 11
|
||||
132=Problem on electro-valve or vacuum workplan: zone 12
|
||||
133=Problem on electro-valve or vacuum workplan: zone 13
|
||||
134=Problem on electro-valve or vacuum workplan: zone 14
|
||||
135=FREE MESSAGE
|
||||
136=FREE MESSAGE
|
||||
137=FREE MESSAGE
|
||||
138=Switch on the remote control
|
||||
139=Remote Control Battery Almost Empty
|
||||
140=FREE MESSAGE
|
||||
141=FREE MESSAGE
|
||||
142=Problem on electro-valve or sensor in lateral zero reference workplan 1
|
||||
143=Problem on electro-valve or sensor in lateral zero reference workplan 2
|
||||
144=Problem on electro-valve or sensor in lateral zero reference workplan 3
|
||||
145=Problem on electro-valve or sensor in lateral zero reference workplan 4
|
||||
146=Problem on electro-valve or sensor in lateral zero reference workplan 5
|
||||
147=Problem on electro-valve or sensor in lateral zero reference workplan 6
|
||||
148=Problem on electro-valve or sensor in lateral zero reference workplan 7
|
||||
149=Problem on electro-valve or sensor in the front zero reference
|
||||
150=FREE MESSAGE
|
||||
151=Electrospindle tool locking defect
|
||||
152=FREE MESSAGE
|
||||
153=Tool on Electrospindle with E80001=0
|
||||
154=FREE MESSAGE
|
||||
155=Electrospindle tool unlock defect
|
||||
156=FREE MESSAGE
|
||||
157=FREE MESSAGE
|
||||
158=FREE MESSAGE
|
||||
159=Electrospindle Piston unlocking tool not at rest
|
||||
160=FREE MESSAGE
|
||||
161=FREE MESSAGE
|
||||
162=FREE MESSAGE
|
||||
163=FREE MESSAGE
|
||||
164=FREE MESSAGE
|
||||
165=FREE MESSAGE
|
||||
166=FREE MESSAGE
|
||||
167=FREE MESSAGE
|
||||
168=FREE MESSAGE
|
||||
200=Defect on one or more EtherCAT modules: restart the machine
|
||||
201=Function Block Safety in error - input signal discrepancy
|
||||
202=Safety module communication defect
|
||||
203=Safety output defect
|
||||
204=Service Mode ON
|
||||
|
||||
[CNC]
|
||||
1=Unknown character or Axis not recognized by the system
|
||||
2=Unknown G Function or or a mandatory argument missing after the G
|
||||
3=Attribute of a G code wrongly positioned
|
||||
4=Option not enabled or option parameter conflict
|
||||
5=Geometric Programming Option not enabled
|
||||
6=Polynomial interpolation option missing
|
||||
7=Movements parallel to the inclined axes
|
||||
8=Tool corrector number too high
|
||||
9=Too many consecutive non executable blocks
|
||||
10=PLC I/O access: wrong bus exchange
|
||||
11=PLC I/O access: wrong bus initialization or exchange inhibited
|
||||
12=PLC I/O access: wrong rack parameter
|
||||
13=PLC I/O access: card missing
|
||||
14=Inclined plane option missing - PLC I/O access: channel missing
|
||||
15=Invalid line configuration
|
||||
16=Error in activating RTCP
|
||||
17=Missing closing bracket
|
||||
18=Servo error: P50 too small
|
||||
19=RESET RAM at the next power-up
|
||||
20=M02 missing or blocks left non-executable by a personalized G code
|
||||
21=Incoherent definition of the blank in 3D
|
||||
22=Current Part Program corrupted
|
||||
24=Error in the definition of an inclined plane
|
||||
25=Unknown sub-programme or block number
|
||||
26=Sub-programme nesting too deep
|
||||
27=Tool Radius Correction
|
||||
28=Syntax error in CCSPD or working radius definition
|
||||
29=No programmed range in CCSPD / No suitable range for S in G97
|
||||
30=Serial line error
|
||||
31=Mode PPR or PPL impossible with the selected line's protocol
|
||||
32=Axis referencing error
|
||||
33=All channels waiting for synchronization
|
||||
34=Minimum radius for interpolation reached - G21
|
||||
35=Searched for block number, not found
|
||||
36=Part programme memory full
|
||||
37=Maximum feed exceeded in thread cutting
|
||||
38=Control of a spindle already affected to another channel
|
||||
39=Axis synchronisation fault
|
||||
40=Excessive following error on axis 0
|
||||
41=Excessive following error on axis 1
|
||||
42=Excessive following error on axis 2
|
||||
43=Excessive following error on axis 3
|
||||
44=Excessive following error on axis 4
|
||||
45=Excessive following error on axis 5
|
||||
46=Excessive following error on axis 6
|
||||
47=Excessive following error on axis 7
|
||||
48=Excessive following error on axis 8
|
||||
49=Excessive following error on axis 9
|
||||
50=Excessive following error on axis 10
|
||||
51=Excessive following error on axis 11
|
||||
52=Excessive following error on axis 12
|
||||
53=Excessive following error on axis 13
|
||||
54=Excessive following error on axis 14
|
||||
55=Excessive following error on axis 15
|
||||
56=Excessive following error on axis 16
|
||||
57=Excessive following error on axis 17
|
||||
58=Excessive following error on axis 18
|
||||
59=Excessive following error on axis 19
|
||||
60=Excessive following error on axis 20
|
||||
61=Excessive following error on axis 21
|
||||
62=Excessive following error on axis 22
|
||||
63=Excessive following error on axis 23
|
||||
64=Excessive following error on axis 24
|
||||
65=Excessive following error on axis 25
|
||||
66=Excessive following error on axis 26
|
||||
67=Excessive following error on axis 27
|
||||
68=Excessive following error on axis 28
|
||||
69=Excessive following error on axis 29
|
||||
70=Excessive following error on axis 30
|
||||
71=Excessive following error on axis 31
|
||||
72=Incremental programming after an incomplete block
|
||||
75=G20 to G21 or G22 transition
|
||||
76=In G21 : turning or milling fixed cycles are not allowed
|
||||
77=Tool type not compatible with the operation
|
||||
78=Syntax error in synchronizing channels
|
||||
79=Invalid TANDEM Configuration
|
||||
80=Drive not in HALT
|
||||
91=Unknown parameter or variable
|
||||
92=Error in assignment to a parameter or variable
|
||||
93=Error in the definition of a parameter or in the expression of a test
|
||||
94=Impossible operation
|
||||
95=Trying to write to a read only parameter
|
||||
96=Preceding block "look ahead"
|
||||
97=Assignment of a parameter in G76 not possible
|
||||
98=Writing by a channel of a dynamic operator already used by another channel
|
||||
99=Error associated with the N/M AUTO function
|
||||
101=PGP: insufficient data in the programming of a circle
|
||||
102=PGP: when programming a line by angle and one coordinate
|
||||
106=In G2 G3: 3rd axis programmed without helical option
|
||||
107=PGP: circle programmed by its radius and end point
|
||||
110=PGP: syntax error in the first of 2 blocks.
|
||||
111=PGP: syntax error in the second block.
|
||||
112=PGP: line-line intersection in which
|
||||
113=PGP: the values programmed in the two blocks do not allow
|
||||
114=PGP: intersection or tangent point not defined by ET+ ET- ES+ ES-
|
||||
121=PGP: syntax error in last of 3 blocks
|
||||
122=PGP: the first two blocks are non-secant lines
|
||||
123=PGP: data in the 3 blocks doesn't allow the tangent points to be calculated
|
||||
124=PGP: tangent point second-third block not defined by ET+ or ET-
|
||||
130=no axis movement in 1 of the 2 blocks connected by a fillet or chamfer
|
||||
131=M0,M1 or M2 is not allowed in a block with a fillet or chamfer
|
||||
135=A chamfer can only be between 2 lines
|
||||
136=More than 2 non movement blocks between 2 elements whose
|
||||
137=Change of interpolation plane even though the block is not valid
|
||||
138=Change of interpolation plane must be in G40
|
||||
139=Two parallel [carried] axes programmed in the same block
|
||||
140=Programming error in radius correction
|
||||
141=Parallel carried axes : programming a circle whose
|
||||
143=G73/G74 is not allowed in radius correction mode
|
||||
144=Quantified axis displacement is different from the Increment
|
||||
145=G29: abs value > 1 mm
|
||||
146=3D Tool offsets, with G29 or G43
|
||||
148=Number of interpolated axes higher than the maximum allowed
|
||||
149=Tool radius to large in relation to the programmed trajectory
|
||||
150=X axis out of limits
|
||||
151=Y axis out of limits
|
||||
152=Z axis out of limits
|
||||
153=U axis out of limits
|
||||
154=V axis out of limits
|
||||
155=W axis out of limits
|
||||
156=A axis out of limits
|
||||
157=B axis out of limits
|
||||
158=C axis out of limits
|
||||
159=Move demanded on a not-homed axis
|
||||
160=Slave axis homing error
|
||||
161=Synchro axis homing error
|
||||
190=Too many nested jumps or loops
|
||||
191=Syntax error in structured programming
|
||||
192=Unknown or forbidden key word
|
||||
193=Structural error
|
||||
195=Stack overflow
|
||||
196=Error in the table index declaration
|
||||
197=Use of an undeclared symbol
|
||||
198=Syntax error in declaring the symbol for a variable
|
||||
199=Syntax error in declaring a variable
|
||||
200=Poor signal or complementarity error on handwheel 0
|
||||
201=Poor signal or complementarity error on handwheel 1
|
||||
202=Poor signal or complementarity error on handwheel 2
|
||||
203=Poor signal or complementarity error on handwheel 3
|
||||
210=Poor signal or channel loss or serial feedback fault on axis 0
|
||||
211=Poor signal or channel loss or serial feedback fault on axis 1
|
||||
212=Poor signal or channel loss or serial feedback fault on axis 2
|
||||
213=Poor signal or channel loss or serial feedback fault on axis 3
|
||||
214=Poor signal or channel loss or serial feedback fault on axis 4
|
||||
215=Poor signal or channel loss or serial feedback fault on axis 5
|
||||
216=Poor signal or channel loss or serial feedback fault on axis 6
|
||||
217=Poor signal or channel loss or serial feedback fault on axis 7
|
||||
218=Poor signal or channel loss or serial feedback fault on axis 8
|
||||
219=Poor signal or channel loss or serial feedback fault on axis 9
|
||||
220=Poor signal or channel loss or serial feedback fault on axis 10
|
||||
221=Poor signal or channel loss or serial feedback fault on axis 11
|
||||
222=Poor signal or channel loss or serial feedback fault on axis 12
|
||||
223=Poor signal or channel loss or serial feedback fault on axis 13
|
||||
224=Poor signal or channel loss or serial feedback fault on axis 14
|
||||
225=Poor signal or channel loss or serial feedback fault on axis 15
|
||||
226=Poor signal or channel loss or serial feedback fault on axis 16
|
||||
227=Poor signal or channel loss or serial feedback fault on axis 17
|
||||
228=Poor signal or channel loss or serial feedback fault on axis 18
|
||||
229=Poor signal or channel loss or serial feedback fault on axis 19
|
||||
230=Poor signal or channel loss or serial feedback fault on axis 20
|
||||
231=Poor signal or channel loss or serial feedback fault on axis 21
|
||||
232=Poor signal or channel loss or serial feedback fault on axis 22
|
||||
233=Poor signal or channel loss or serial feedback fault on axis 23
|
||||
234=Poor signal or channel loss or serial feedback fault on axis 24
|
||||
235=Poor signal or channel loss or serial feedback fault on axis 25
|
||||
236=Poor signal or channel loss or serial feedback fault on axis 26
|
||||
237=Poor signal or channel loss or serial feedback fault on axis 27
|
||||
238=Poor signal or channel loss or serial feedback fault on axis 28
|
||||
239=Poor signal or channel loss or serial feedback fault on axis 29
|
||||
240=Poor signal or channel loss or serial feedback fault on axis 30
|
||||
241=Poor signal or channel loss or serial feedback fault on axis 31
|
||||
245=Digital servo loop fault
|
||||
246=Bad homing reference mark detected
|
||||
247=Drive parameter fault DISC NT
|
||||
248=Axis drive or digital spindle fault
|
||||
249=Communication error between CNC and PLC
|
||||
250=Invalid PERSOChip
|
||||
251=Inconsistent PERSOChip Data
|
||||
252=Invalid Licence File
|
||||
253=Nesting of subroutines called by M function not allowed
|
||||
260=Executive memory busy
|
||||
261=Programme number too high
|
||||
262=NU number not amongst those authorised
|
||||
263=TEST or GRAPHIC mode obligatory after initial load or modification
|
||||
264=No dimension in the profiling plane or dimension outside plane
|
||||
265=First positioning block missing
|
||||
266=Insufficient memory
|
||||
267=Invalid character in pocket syntax
|
||||
268=Incomplete pocket block or containing unauthorised data
|
||||
269=Incomplete profiling block
|
||||
270=Pocket definition, partially or totally missing
|
||||
271=Tool orientation not perpendicular in relation to profiling plane
|
||||
272=Real tool incompatible with pocket machining data
|
||||
273=Change of profiling plane between pocket definition and execution
|
||||
274=Two pocket definitions overlapped
|
||||
275=NU0 programmed with 59
|
||||
276=Zero pocket depth
|
||||
277=Incomplete start or end point coordinates in pocket definition
|
||||
278=Spindle rotation inconsistent with that requested in pocket definition
|
||||
279=G Function unauthorised in pocket programming block
|
||||
280=First profiling block incomplete
|
||||
281=Profile inconsistency
|
||||
282=Incorrect pocket parameters
|
||||
283=Outer profile must exist and be unique
|
||||
284=Error in profile definition
|
||||
285=Too many profiles
|
||||
286=Tool pass too great relative to the tool diameter
|
||||
287=Tool pass too shallow in relation to the dimensions
|
||||
288=Finishing OP start point at a re-entrant angle or an area not yet
|
||||
289=Tool diameter too large
|
||||
290=Pocket: Internal error
|
||||
291=Finishing start point outside the profile
|
||||
292=Double positioning at start of profile
|
||||
293=Rough end point found in face milling section
|
||||
300=Axis 0 declared in P2 but not detected on the bus or feedback fault
|
||||
301=Axis 1 declared in P2 but not detected on the bus or feedback fault
|
||||
302=Axis 2 declared in P2 but not detected on the bus or feedback fault
|
||||
303=Axis 3 declared in P2 but not detected on the bus or feedback fault
|
||||
304=Axis 4 declared in P2 but not detected on the bus or feedback fault
|
||||
305=Axis 5 declared in P2 but not detected on the bus or feedback fault
|
||||
306=Axis 6 declared in P2 but not detected on the bus or feedback fault
|
||||
307=Axis 7 declared in P2 but not detected on the bus or feedback fault
|
||||
308=Axis 8 declared in P2 but not detected on the bus or feedback fault
|
||||
309=Axis 9 declared in P2 but not detected on the bus or feedback fault
|
||||
310=Axis 10 declared in P2 but not detected on the bus or feedback fault
|
||||
311=Axis 11 declared in P2 but not detected on the bus or feedback fault
|
||||
312=Axis 12 declared in P2 but not detected on the bus or feedback fault
|
||||
313=Axis 13 declared in P2 but not detected on the bus or feedback fault
|
||||
314=Axis 14 declared in P2 but not detected on the bus or feedback fault
|
||||
315=Axis 15 declared in P2 but not detected on the bus or feedback fault
|
||||
316=Axis 16 declared in P2 but not detected on the bus or feedback fault
|
||||
317=Axis 17 declared in P2 but not detected on the bus or feedback fault
|
||||
318=Axis 18 declared in P2 but not detected on the bus or feedback fault
|
||||
319=Axis 19 declared in P2 but not detected on the bus or feedback fault
|
||||
320=Axis 20 declared in P2 but not detected on the bus or feedback fault
|
||||
321=Axis 21 declared in P2 but not detected on the bus or feedback fault
|
||||
322=Axis 22 declared in P2 but not detected on the bus or feedback fault
|
||||
323=Axis 23 declared in P2 but not detected on the bus or feedback fault
|
||||
324=Axis 24 declared in P2 but not detected on the bus or feedback fault
|
||||
325=Axis 25 declared in P2 but not detected on the bus or feedback fault
|
||||
326=Axis 26 declared in P2 but not detected on the bus or feedback fault
|
||||
327=Axis 27 declared in P2 but not detected on the bus or feedback fault
|
||||
328=Axis 28 declared in P2 but not detected on the bus or feedback fault
|
||||
329=Axis 29 declared in P2 but not detected on the bus or feedback fault
|
||||
330=Axis 30 declared in P2 but not detected on the bus or feedback fault
|
||||
331=Axis 31 declared in P2 but not detected on the bus or feedback fault
|
||||
400=Loading dyn ops in C: The size of user code is too big
|
||||
401=Loading dyn ops in C: Format error
|
||||
402=Loading dyn ops in C: Checksum error
|
||||
403=The system has insufficient memory for dyn ops in C
|
||||
404=Loading dyn ops in C: Open error
|
||||
405=Loading dyn ops in C: Read error
|
||||
406=Loading dyn ops in C: Close error
|
||||
407=Loading dyn ops in C: The directory is empty
|
||||
410=Dyn ops in C: Number of parameters passed doesn't tally
|
||||
411=Dyn ops in C: user error from init: negative return
|
||||
413=Unrecognised dyn ops in C
|
||||
414=Dyn ops in C without MAIN
|
||||
420=Dynops in C: USER ERROR from the QUIT function
|
||||
421=Dynops in C: USER ERROR from the QUIT function: negative return
|
||||
423=Dynops in C: Range of function in C not from 0 at 100
|
||||
424=Floating point unit exception error
|
||||
900=Invalid tool number M6T
|
||||
901=Tool number loaded not OK
|
||||
902=Invalid tool number E80001 on electrospindle
|
||||
903=Sensor home B electrospindle not OK
|
||||
904=Sensor home C electrospindle not OK
|
||||
905=Sensor home B motor saw blade not OK
|
||||
906=Sensor home C motor saw blade not OK
|
||||
907=free message
|
||||
908=free message
|
||||
909=free message
|
||||
910=free message
|
||||
911=free message
|
||||
912=free message
|
||||
913=free message
|
||||
914=free message
|
||||
915=free message
|
||||
916=Define spindle number et.. (1=blade 2=mill 3=right driller 4=left driller)
|
||||
917=free message
|
||||
918=free message
|
||||
919=free message
|
||||
920=free message
|
||||
921=free message
|
||||
922=free message
|
||||
923=free message
|
||||
924=OFFSET X SAW BLADE NOT ALIGNED BETWEEN MACHINE AND CADCAM
|
||||
925=OFFSET Y SAW BLADE NOT ALIGNED BETWEEN MACHINE AND CADCAM
|
||||
926=OFFSET Z SAW BLADE NOT ALIGNED BETWEEN MACHINE AND CADCAM
|
||||
927=PIVOT Z SAW BLADE NOT ALIGNED BETWEEN MACHINE AND CADCAM
|
||||
928=PIVOT C SAW BLADE NOT ALIGNED BETWEEN MACHINE AND CADCAM
|
||||
929=OFFSET X MILL NOT ALIGNED BETWEEN MACHINE AND CADCAM
|
||||
930=OFFSET Y MILL NOT ALIGNED BETWEEN MACHINE AND CADCAM
|
||||
931=OFFSET Z MILL NOT ALIGNED BETWEEN MACHINE AND CADCAM
|
||||
932=PIVOT Z MILL NOT ALIGNED BETWEEN MACHINE AND CADCAM
|
||||
933=Mandatory X-U-W-Z programming with G102EH.. not zero
|
||||
934=free message
|
||||
935=free message
|
||||
936=free message
|
||||
937=free message
|
||||
938=free message
|
||||
939=free message
|
||||
1206=Axes Moving
|
||||
1207=Program in execution
|
||||
1604=Program being executed
|
||||
2001=Flexium system has not been shutdown correctly. Some programs may not be up to date. The programs need to be checked in the programming page
|
||||
2007=Flexium System was not shutdown correctly! Previous Zone 0 files are transfered to the NCK
|
||||
5000=No communication with Flexium RTS
|
||||
|
||||
[INPUT]
|
||||
1=MACHINE ON
|
||||
2=MOTOR THERMOELEMENTS
|
||||
3=REMOTE SWITCH ELECTRICSPINDLE INSERTED
|
||||
4=SUCTION CAP PORTAL MOTOR DRIVE OK
|
||||
5=SUCTION CAP ELECTRICSPINDLE MOTOR DRIVE OK
|
||||
6=THERMAL PROBE - INVERTER BRAKE RESISTANCE
|
||||
7=SUCTION CAP SAW BLADE MOTOR DRIVE OK
|
||||
8=SENSOR HIGH UP SUCTION CAP PORTAL
|
||||
9=SENSOR LOW-DOWN UP SUCTION CAP PORTAL
|
||||
10=MAINTENANCE SELECTION MACHINE CE
|
||||
11=SENSOR HIGH UP SUCTION CAP ELECTRICSPINDLE
|
||||
12=SENSOR LOW-DOWN UP SUCTION CAP ELECTRICSPINDLE
|
||||
13=SENSOR HIGH UP SUCTION CAP SAW BLADE MOTOR
|
||||
14=SENSOR LOW-DOWN UP SUCTION CAP SAW BLADE MOTOR
|
||||
15=SENSOR CHANGING ROTATIVE UTENSILE PROTECTION OPENED
|
||||
16=FREE INPUT
|
||||
17=FREE INPUT
|
||||
18=FREE INPUT
|
||||
19=FREE INPUT
|
||||
20=FREE INPUT
|
||||
21=FREE INPUT
|
||||
22=FREE INPUT
|
||||
23=SENSOR FORWARD CHAIN SAW TOOL CHANGE
|
||||
24=SENSOR BACKWARDS CHAIN SAW TOOL CHANGE
|
||||
25=THERMAL PROBE SENSOR ELECTRICSPINDLE
|
||||
26=THERMAL PROBE SENSOR SAW BLADE MOTOR
|
||||
27=FREE INPUT
|
||||
28=SENSOR FORWARD SIDE TOOL CHANGE
|
||||
29=SENSOR BACKWARDS SIDE TOOL CHANGE
|
||||
30=ELECTRICSPINDLE AND SAW BLADE MOTOR COOLER OK
|
||||
31=ELECTRICSPINDLE FLOW SWITCH
|
||||
32=ALARM RESET BUTTON
|
||||
33=PRESSURE DEVICE AXES LUBRICATION
|
||||
34=PRESSURE DEVICE COMPRESSED AIR
|
||||
35=SENSOR MINIMUM GREASE LEVEL
|
||||
36=SENSOR MINIMUM OIL LEVEL
|
||||
37=FREE INPUT
|
||||
38=OVER TEMPERATURE LEFT CABINET
|
||||
39=SENSOR UNLOCKED PISTON CONE AT REST
|
||||
40=PRE-ALARM WORKPLAN SAFETY ZONES
|
||||
41=SAW BLADE MOTOR FLOW SWITCH
|
||||
42=REMOTE SWITCH SAW BLADE MOTOR INSERTED
|
||||
43=SENSOR FORWARD UNDER BEAM TOOL CHANGE
|
||||
44=SENSOR BACKWARDS UNDER BEAM TOOL CHANGE
|
||||
45=ALARM OF SAFETY ZONES WORKPLAN
|
||||
46=FREE INPUT
|
||||
47=UPS BATTERY OK
|
||||
48=UPS-CURRENT OUTPUT
|
||||
49=SENSOR LOW-DOWN FRONTAL STOP
|
||||
50=SENSOR LOW-DOWN LATERAL STOP WORKPLAN 1
|
||||
51=SENSOR LOW-DOWN LATERAL STOP WORKPLAN 2
|
||||
52=SENSOR LOW-DOWN LATERAL STOP WORKPLAN 3
|
||||
53=SENSOR LOW-DOWN LATERAL STOP WORKPLAN 4
|
||||
54=SENSOR LOW-DOWN LATERAL STOP WORKPLAN 5
|
||||
55=SENSOR LOW-DOWN LATERAL STOP WORKPLAN 6
|
||||
56=FREE INPUT
|
||||
57=FREE INPUT
|
||||
58=SELECTOR CONVEYOR BELT ACTIVATION
|
||||
59=FREE INPUT
|
||||
60=FREE INPUT
|
||||
61=FREE INPUT
|
||||
62=FREE INPUT
|
||||
63=OVER TEMPERATURE RIGHT CABINET
|
||||
64=FREE INPUT
|
||||
65=VACUUM RESERVATION ZONE 1
|
||||
66=VACUUM RESERVATION ZONE 2
|
||||
67=VACUUM RESERVATION ZONE 3
|
||||
68=VACUUM RESERVATION ZONE 4
|
||||
69=VACUUM RESERVATION ZONE 5
|
||||
70=VACUUM RESERVATION ZONE 6
|
||||
71=VACUUM RESERVATION ZONE 7
|
||||
72=VACUUM RESERVATION ZONE 8
|
||||
73=VACUUM RESERVATION ZONE 9
|
||||
74=VACUUM RESERVATION ZONE 10
|
||||
75=VACUUM RESERVATION ZONE 11
|
||||
76=VACUUM RESERVATION ZONE 12
|
||||
77=FREE INPUT
|
||||
78=FREE INPUT
|
||||
79=FREE INPUT
|
||||
80=FREE INPUT
|
||||
81=VACUUM SWITCH ZONE 1
|
||||
82=VACUUM SWITCH ZONE 2
|
||||
83=VACUUM SWITCH ZONE 3
|
||||
84=VACUUM SWITCH ZONE 4
|
||||
85=VACUUM SWITCH ZONE 5
|
||||
86=VACUUM SWITCH ZONE 6
|
||||
87=VACUUM SWITCH ZONE 7
|
||||
88=VACUUM SWITCH ZONE 8
|
||||
89=VACUUM SWITCH ZONE 9
|
||||
90=VACUUM SWITCH ZONE 10
|
||||
91=VACUUM SWITCH ZONE 11
|
||||
92=VACUUM SWITCH ZONE 12
|
||||
93=FREE INPUT
|
||||
94=FREE INPUT
|
||||
95=FREE INPUT
|
||||
96=FREE INPUT
|
||||
|
||||
[OUTPUT]
|
||||
1=CONTROL, DRY AIR SOLENOID VALVE OPENING
|
||||
2=CE REGULATION MODE CONSENT
|
||||
3=SELECTION HOME AXIS C1 ELECTRICSPINDLE
|
||||
4=SELECTION HOME AXIS C2 SAW BLADE MOTOR
|
||||
5=OPENINGOF THE SOLENOID VALVE OF THE ROTARY TOOL CHANGE PROTECTION
|
||||
6=CLOSINGOF THE SOLENOID VALVE OF THE ROTARY TOOL CHANGE PROTECTION
|
||||
7=HOURCOUNTER
|
||||
8=REMOTE SWITCH ARMING ELECTRICSPINDLE
|
||||
9=SCRAPS CONVEYOR BELT
|
||||
10=AXIS MOTOR PUMP LUBRICATION
|
||||
11=SOLENOID VALVE LUBRICATION CHAIN
|
||||
12=FREE OUTPUT
|
||||
13=MESSAGES LAMP
|
||||
14=FREE OUTPUT
|
||||
15=FREE OUTPUT
|
||||
16=REMOTE SWITCH ARMING SAW BLADE MOTOR
|
||||
17=SOLENOID VALVE TOOL LOCK
|
||||
18=SOLENOID VALVE TOOL UNLOCK
|
||||
19=FREE OUTPUT
|
||||
20=SOLENOID VALVE LATERAL TOOL CHANGE FORWARD
|
||||
21=SOLENOID VALVE LATERAL TOOL CHANGE BACKWARD
|
||||
22=SOLENOID VALVE CHAIN TOOL CHANGE FORWARD
|
||||
23=SOLENOID VALVE CHAIN TOOL CHANGE BACKWARD
|
||||
24=SOLENOID VALVE CHAIN CLEANING BLOW
|
||||
25=SOLENOID VALVE CLIMB FRONTAL RIGHT STOP
|
||||
26=SOLENOID VALVE CLIMB LATERAL WORKPLAN 1
|
||||
27=SOLENOID VALVE CLIMB LATERAL WORKPLAN 2
|
||||
28=SOLENOID VALVE CLIMB LATERAL WORKPLAN 3
|
||||
29=SOLENOID VALVE CLIMB LATERAL WORKPLAN 4
|
||||
30=SOLENOID VALVE CLIMB LATERAL WORKPLAN 5
|
||||
31=SOLENOID VALVE CLIMB LATERAL WORKPLAN 6
|
||||
32=SOLENOID VALVE CLIMB LATERAL WORKPLAN 7
|
||||
33=SOLENOID VALVE ELECTRICSPINDLE BLOW
|
||||
34=SOLENOID VALVE TOOL CHANGE UNDER BEAM FORWARD
|
||||
35=SOLENOID VALVE TOOL CHANGE UNDER BEAM BACWARD
|
||||
36=SOLENOID VALVE AXIS ELECTRICSPINDLE CLEANING BLOW
|
||||
37=SOLENOID VALVE FRONTAL BLOW
|
||||
38=SOLENOID VALVE LATERAL BLOW
|
||||
39=VACUUM REQUEST ENABLE
|
||||
40=OPEN VACUUM
|
||||
41=SOLENOID VALVE VACUUM OPEN ZONE 1
|
||||
42=SOLENOID VALVE VACUUM OPEN ZONE 2
|
||||
43=SOLENOID VALVE VACUUM OPEN ZONE 3
|
||||
44=SOLENOID VALVE VACUUM OPEN ZONE 4
|
||||
45=SOLENOID VALVE VACUUM OPEN ZONE 5
|
||||
46=SOLENOID VALVE VACUUM OPEN ZONE 6
|
||||
47=SOLENOID VALVE VACUUM OPEN ZONE 7
|
||||
48=SOLENOID VALVE VACUUM OPEN ZONE 8
|
||||
49=SOLENOID VALVE VACUUM OPEN ZONE 9
|
||||
50=SOLENOID VALVE VACUUM OPEN ZONE 10
|
||||
51=SOLENOID VALVE VACUUM OPEN ZONE 11
|
||||
52=SOLENOID VALVE VACUUM OPEN ZONE 12
|
||||
53=SOLENOID VALVE VACUUM OPEN ZONE 13
|
||||
54=SOLENOID VALVE VACUUM OPEN ZONE 14
|
||||
55=FREE OUTPUT
|
||||
56=SOLENOID VALVE AXIS MOTOR SAW BLADE CLEANING BLOW
|
||||
57=VACUUM PRESSURE
|
||||
58=PORTAL ASPIRATION SUCTION CAP RISE
|
||||
59=PORTAL ASPIRATION SUCTION CAP DESCEND
|
||||
60=PORTAL SUCTION CAP FAST COMMAND
|
||||
61=PORTAL SUCTION CAP BRAKE UNLOCK
|
||||
62=ELECTRICSPINDLE SUCTION CAP RISE
|
||||
63=ELECTRICSPINDLE SUCTION CAP DESCEND
|
||||
64=ELECTRICSPINDLE SUCTION CAP FAST COMMAND
|
||||
65=ELECTRICSPINDLE SUCTION CAP BRAKE UNLOCK
|
||||
66=MOTOR SAW BLADE SUCTION CAP RISE
|
||||
67=MOTOR SAW BLADE SUCTION CAP DESCEND
|
||||
68=MOTOR SAW BLADE SUCTION CAP FAST COMMAND
|
||||
69=MOTOR SAW BLADE SUCTION CAP BRAKE UNLOCK
|
||||
70=SOLENOID VALVE CLEANING AIR TANK LOAD RIGHT
|
||||
71=SOLENOID VALVE OPENING BLOW CLEANING CABIN RIGHT
|
||||
72=SOLENOID VALVE CLEANING AIR TANK LOAD LEFT
|
||||
73=SOLENOID VALVE BLOW CLEANING CABIN LEFT
|
||||
74=SOLENOID VALVE BLOW CAMERA CLEANING
|
||||
75=SOLENOID VALVE SUCTION CAP ELECTRICSPINDLE
|
||||
76=SOLENOID VALVE SUCTION CAP SAW MOTOR
|
||||
77=SOLENOID VALVE SUCTION CAP PORTAL
|
||||
78=SOLENOID VALVE SUCTION CAP PORTAL CLEANING
|
||||
79=OUTPUT MACHINE IN PARKING POSITION
|
||||
80=OUTPUT ZERO REFERENCE WORKPLAN LOW-DOWN
|
||||
81=OUTPUT SCRAPS CONVEYOR BELT ROTATING
|
||||
82=OUTPUT MACHINE SWITCHED ON
|
||||
83=OUTPUT ALARM OF SAFETY ZONES WORKPLAN
|
||||
84=FREE OUTPUT
|
||||
85=FREE OUTPUT
|
||||
86=FREE OUTPUT
|
||||
87=FREE OUTPUT
|
||||
88=FREE OUTPUT
|
||||
89=FREE OUTPUT
|
||||
90=FREE OUTPUT
|
||||
91=FREE OUTPUT
|
||||
92=FREE OUTPUT
|
||||
93=FREE OUTPUT
|
||||
94=FREE OUTPUT
|
||||
95=FREE OUTPUT
|
||||
96=FREE OUTPUT
|
||||
@@ -0,0 +1,732 @@
|
||||
// File dei messaggi macchina Italiano 2023/03/03
|
||||
[MDI]
|
||||
1=Carica utensile n° 1 con Testa1
|
||||
2=Carica utensile n° 2 con Testa1
|
||||
3=Carica utensile n° 3 con Testa1
|
||||
4=Carica utensile n° 4 con Testa1
|
||||
5=Carica utensile n° 5 con Testa1
|
||||
6=Carica utensile n° 6 con Testa1
|
||||
7=Carica utensile n° 7 con Testa1
|
||||
8=Carica utensile n° 8 con Testa1
|
||||
9=Carica utensile n° 9 con Testa1
|
||||
10=Carica utensile n° 20 con Testa1
|
||||
11=Carica utensile n° 21 con Testa1
|
||||
12=Carica utensile n° 22 con Testa1
|
||||
13=Carica utensile n° 23 con Testa1
|
||||
14=Carica utensile n° 24 con Testa1
|
||||
15=Carica utensile n° 25 con Testa1
|
||||
16=Carica utensile n° 26 con Testa1
|
||||
17=Carica utensile n° 27 con Testa1
|
||||
18=Carica utensile n° 28 con Testa1
|
||||
19=Carica utensile n° 101 con Testa1
|
||||
20=Carica utensile n° 201 con Testa1
|
||||
21=Carica utensile n° 202 con Testa1
|
||||
22=Carica utensile n° 203 con Testa1
|
||||
23=Scarica utensile da Testa1
|
||||
24=Ins/Canc numero utensile presente su Testa1
|
||||
25=Carica utensile n° 1 con Testa 2
|
||||
26=Carica utensile n° 2 con Testa 2
|
||||
27=Carica utensile n° 3 con Testa 2
|
||||
28=Carica utensile n° 4 con Testa 2
|
||||
29=Carica utensile n° 5 con Testa 2
|
||||
30=Carica utensile n° 6 con Testa 2
|
||||
31=Carica utensile n° 7 con Testa 2
|
||||
32=Carica utensile n° 8 con Testa 2
|
||||
33=Carica utensile n° 9 con Testa 2
|
||||
34=Carica utensile n° 10 con Testa 2
|
||||
35=Carica utensile n° 11 con Testa 2
|
||||
36=Carica utensile n° 12 con Testa 2
|
||||
37=Carica utensile n° 13 con Testa 2
|
||||
38=Carica utensile n° 14 con Testa 2
|
||||
39=Carica utensile n° 15 con Testa 2
|
||||
40=Carica utensile n° 16 con Testa 2
|
||||
41=Carica utensile n° 17 con Testa 2
|
||||
42=Carica utensile n° 18 con Testa 2
|
||||
43=Carica utensile n° 101 con Testa 2
|
||||
44=Carica utensile n° 201 con Testa 2
|
||||
45=Carica utensile n° 202 con Testa 2
|
||||
46=Carica utensile n° 203 con Testa 2
|
||||
47=Scarica utensile da Testa2
|
||||
48=Ins/Canc numero utensile presente su Testa2
|
||||
|
||||
[PLC]
|
||||
1=Macchina spenta
|
||||
2=MESSAGGIO LIBERO
|
||||
3=Anomalia UPS
|
||||
4=Batteria UPS scarica
|
||||
5=MESSAGGIO LIBERO
|
||||
6=POM assi B e C non eseguita
|
||||
7=MESSAGGIO LIBERO
|
||||
8=Verificare olio lubrificazione aggregati catena
|
||||
9=Termici motori
|
||||
10=MESSAGGIO LIBERO
|
||||
11=MESSAGGIO LIBERO
|
||||
12=Minimo livello grasso nella pompa
|
||||
13=Difetto impianto lubrificazione assi
|
||||
14=Manca aria compressa
|
||||
15=Sovratemperatura armadio sinistro
|
||||
16=Sovratemperatura armadio destro
|
||||
17=Problema su refrigratore Elettromandrini
|
||||
18=MESSAGGIO LIBERO
|
||||
19=MESSAGGIO LIBERO
|
||||
20=MESSAGGIO LIBERO
|
||||
21=MESSAGGIO LIBERO
|
||||
22=MESSAGGIO LIBERO
|
||||
23=Possibile collisione Elettromandrino con cambio utensile rotativo
|
||||
24=Azionamento asse X in allarme
|
||||
25=Azionamento asse Y in allarme
|
||||
26=Azionamento asse Z in allarme
|
||||
27=Azionamento asse B in allarme
|
||||
28=Azionamento asse C in allarme
|
||||
29=Azionamento asse U in allarme
|
||||
30=Azionamento asse Y1 in allarme
|
||||
31=Azionamento asse W in allarme
|
||||
32=Azionamento asse X non abilitato
|
||||
33=Azionamento asse Y non abilitato
|
||||
34=Azionamento asse Z non abilitato
|
||||
35=Azionamento asse B non abilitato
|
||||
36=Azionamento asse C non abilitato
|
||||
37=Azionamento asse U non abilitato
|
||||
38=Azionamento asse Y1 non abilitato
|
||||
39=Azionamento asse W non abilitato
|
||||
40=Azionamento asse V in allarme
|
||||
41=Azionamento asse V non abilitato
|
||||
42=Azionamento asse A in allarme
|
||||
43=Azionamento asse A non abilitato
|
||||
44=Protezione magazzino cambio utensile rotativo aperta
|
||||
45=Attesa inserzione teleruttore motore Lama
|
||||
46=Attesa inserzione teleruttore Elettromandrino
|
||||
47=Posizione Elettromandrino non ok per uscita magazzino utensili laterale
|
||||
48=Posizione Elettromandrino non ok per uscita magazzino utensili sottotrave
|
||||
49=Posizione Elettromandrino non ok per uscita magazzino utensile catena
|
||||
50=Barriere perimetrali intervenute
|
||||
51=Pre-allarme barriere perimetrali
|
||||
52=MESSAGGIO LIBERO
|
||||
53=Ostacolo discesa cuffia aspirazione Portale
|
||||
54=Ostacolo discesa cuffia aspirazione Elettromandrino
|
||||
55=Ostacolo discesa cuffia aspirazione Lama
|
||||
56=Malfunzionamento inverter cuffia aspirazione Portale
|
||||
57=Malfunzionamento inverter cuffia aspirazione Elettromandrino
|
||||
58=Malfunzionamento inverter cuffia aspirazione Lama
|
||||
59=*** MANUTENZIONE CE ***
|
||||
60=MESSAGGIO LIBERO
|
||||
61=MESSAGGIO LIBERO
|
||||
62=MESSAGGIO LIBERO
|
||||
63=MESSAGGIO LIBERO
|
||||
64=MESSAGGIO LIBERO
|
||||
65=MESSAGGIO LIBERO
|
||||
66=MESSAGGIO LIBERO
|
||||
67=MESSAGGIO LIBERO
|
||||
68=MESSAGGIO LIBERO
|
||||
69=MESSAGGIO LIBERO
|
||||
70=MESSAGGIO LIBERO
|
||||
71=MESSAGGIO LIBERO
|
||||
72=MESSAGGIO LIBERO
|
||||
73=MESSAGGIO LIBERO
|
||||
74=MESSAGGIO LIBERO
|
||||
75=MESSAGGIO LIBERO
|
||||
76=MESSAGGIO LIBERO
|
||||
77=MESSAGGIO LIBERO
|
||||
78=MESSAGGIO LIBERO
|
||||
79=MESSAGGIO LIBERO
|
||||
80=MESSAGGIO LIBERO
|
||||
81=Magazzino utensili laterale non indietro programmare M90 e poi M195
|
||||
82=Sensore avanti magazzino utensili laterale non Ok
|
||||
83=Sensore indietro magazzino utensili laterale non Ok
|
||||
84=Magazzino utensili sottotrave non indietro programmare M90 e poi M197
|
||||
85=Sensore avanti magazzino utensili sottotrave non Ok
|
||||
86=Sensore indietro magazzino utensili sottotrave non Ok
|
||||
87=Magazzino utensile catena non indietro programmare M90 e poi M199
|
||||
88=Sensore avanti Magazzino utensile Catena non Ok
|
||||
89=Sensore indietro Magazzino utensile Catena non Ok
|
||||
90=MESSAGGIO LIBERO
|
||||
91=MESSAGGIO LIBERO
|
||||
92=Sensori contemporanei avanti-indietro magazzino utensili laterale
|
||||
93=Sensori contemporanei avanti-indietro magazzino utensili sottotrave
|
||||
94=Sensori contemporanei avanti-indietro magazzino utensile catena
|
||||
95=Messa a punto inserita permessi solo movimenti manuali
|
||||
96=MESSAGGIO LIBERO
|
||||
97=MESSAGGIO LIBERO
|
||||
98=MESSAGGIO LIBERO
|
||||
99=MESSAGGIO LIBERO
|
||||
100=MESSAGGIO LIBERO
|
||||
101=Numero giri Elettromandrino o motore lama non Ok
|
||||
102=MESSAGGIO LIBERO
|
||||
103=MESSAGGIO LIBERO
|
||||
104=MESSAGGIO LIBERO
|
||||
105=Rotazione Elettromandrino proibita senza utensili
|
||||
106=MESSAGGIO LIBERO
|
||||
107=MESSAGGIO LIBERO
|
||||
108=Attendere inserzioni di potenza
|
||||
109=Premere pulsante di reset
|
||||
110=MESSAGGIO LIBERO
|
||||
111=MESSAGGIO LIBERO
|
||||
112=MESSAGGIO LIBERO
|
||||
113=MESSAGGIO LIBERO
|
||||
114=MESSAGGIO LIBERO
|
||||
115=Sovratemperatura resistenze di frenatura inverter
|
||||
116=Sovratemperatura Elettromandrino
|
||||
117=Sovratemperatura motore Lama
|
||||
118=Flussostato Elettromandrino non Ok
|
||||
119=Flussostato motore Lama non Ok
|
||||
120=Sovracorrente inverter
|
||||
121=Problema su elettro-valvola o vacuostato piano di lavoro zona 1
|
||||
122=Problema su elettro-valvola o vacuostato piano di lavoro zona 2
|
||||
123=Problema su elettro-valvola o vacuostato piano di lavoro zona 3
|
||||
124=Problema su elettro-valvola o vacuostato piano di lavoro zona 4
|
||||
125=Problema su elettro-valvola o vacuostato piano di lavoro zona 5
|
||||
126=Problema su elettro-valvola o vacuostato piano di lavoro zona 6
|
||||
127=Problema su elettro-valvola o vacuostato piano di lavoro zona 7
|
||||
128=Problema su elettro-valvola o vacuostato piano di lavoro zona 8
|
||||
129=Problema su elettro-valvola o vacuostato piano di lavoro zona 9
|
||||
130=Problema su elettro-valvola o vacuostato piano di lavoro zona 10
|
||||
131=Problema su elettro-valvola o vacuostato piano di lavoro zona 11
|
||||
132=Problema su elettro-valvola o vacuostato piano di lavoro zona 12
|
||||
133=Problema su elettro-valvola o vacuostato piano di lavoro zona 13
|
||||
134=Problema su elettro-valvola o vacuostato piano di lavoro zona 14
|
||||
135=MESSAGGIO LIBERO
|
||||
136=MESSAGGIO LIBERO
|
||||
137=MESSAGGIO LIBERO
|
||||
138=Accendere tastiera
|
||||
139=Batteria quasi scarica: sostituirla quanto prima
|
||||
140=MESSAGGIO LIBERO
|
||||
141=MESSAGGIO LIBERO
|
||||
142=Problema su elettro-valvola o sensore riferimento di zero laterale banco 1
|
||||
143=Problema su elettro-valvola o sensore riferimento di zero laterale banco 2
|
||||
144=Problema su elettro-valvola o sensore riferimento di zero laterale banco 3
|
||||
145=Problema su elettro-valvola o sensore riferimento di zero laterale banco 4
|
||||
146=Problema su elettro-valvola o sensore riferimento di zero laterale banco 5
|
||||
147=Problema su elettro-valvola o sensore riferimento di zero laterale banco 6
|
||||
148=Problema su elettro-valvola o sensore riferimento di zero laterale banco 7
|
||||
149=Problema su elettro-valvola o sensore riferimento di zero frontale
|
||||
150=MESSAGGIO LIBERO
|
||||
151=Difetto bloccaggio utensile su Elettromandrino
|
||||
152=MESSAGGIO LIBERO
|
||||
153=Utensile presente su elettromandrino con E80001=0
|
||||
154=MESSAGGIO LIBERO
|
||||
155=Difetto sbloccaggio utensile su Elettromandrino
|
||||
156=MESSAGGIO LIBERO
|
||||
157=MESSAGGIO LIBERO
|
||||
158=MESSAGGIO LIBERO
|
||||
159=Pistone sbloccaggio utensile elettromandrino non a riposo
|
||||
160=MESSAGGIO LIBERO
|
||||
161=MESSAGGIO LIBERO
|
||||
162=MESSAGGIO LIBERO
|
||||
163=MESSAGGIO LIBERO
|
||||
164=MESSAGGIO LIBERO
|
||||
165=MESSAGGIO LIBERO
|
||||
166=MESSAGGIO LIBERO
|
||||
167=MESSAGGIO LIBERO
|
||||
168=MESSAGGIO LIBERO
|
||||
200=Difetto su uno o più moduli EtherCAT: riavviare la macchina
|
||||
201=Function Block Safety in errore - discrepanza segnali ingresso
|
||||
202=Difetto di comunicazione moduli Safety
|
||||
203=Difetto uscite Safety
|
||||
204=Modo service ON
|
||||
|
||||
[CNC]
|
||||
N1 Carattere sconosciuto o Asse non riconosciuto dal sistema
|
||||
N2 Funzione G sconosciuta dal sistema o assenza di un argomento obbligatorio dopo la G
|
||||
N3 Argomento di una funzione G mal posizionato nel blocco
|
||||
N4 Opzione non valida o parametro incoerente con l'opzione
|
||||
N5 Opzione programmazione geometrica non abilitata
|
||||
N6 Opzione interpolazione polinomiale assente
|
||||
N7 Spostamenti paralleli agli assi inclinati
|
||||
N8 No. correttore utensile troppo grande
|
||||
N9 Troppi blocchi non eseguibili di seguito
|
||||
N10 Accesso I/U PLC: scambio su bus scorretto
|
||||
N11 Accesso I/U PLC: iniz bus scorretta o scambio inibito
|
||||
N12 Accesso I/U PLC: parametro rack scorretto
|
||||
N13 Accesso I/U PLC: scheda inesistente
|
||||
N14 Assenza opzione piano inclinato
|
||||
N15 Configurazione linea non valida
|
||||
N16 Errore nella attivazione RTCP
|
||||
N17 Fine blocco in un commento
|
||||
N18 Errore d'asservimento: P50 troppo basso
|
||||
N19 RAZ RAM al prossimo avviamento
|
||||
N20 Manca M02 a fine programma
|
||||
N21 Incoerenza della definizione del grezzo in 3D
|
||||
N22 Programma di pezzi attuale corrotto.
|
||||
N24 Errore nella dichiarazione di un piano inclinato
|
||||
N25 Numero sottoprogramma o blocco inesistente
|
||||
N26 Troppi annidamenti di sotto programmi
|
||||
N27 Attivazione o disattivazione della correzione raggio
|
||||
N28 Errore di sintassi in VTC o nella definizione del raggio
|
||||
N29 Nessuna gamma programmata in VTC
|
||||
N30 Rilevamento errore di linea
|
||||
N31 Modo PPR o PPL impossibile con il protocollo di linea selezionato
|
||||
N32 Difetto POM - Asse gia' sul fine corsa
|
||||
N33 Canali in attesa di sincronizzazione
|
||||
N34 Raggiunto il raggio minimo in interpolazione G21
|
||||
N35 Numero di blocco non trovato in RNS
|
||||
N36 Memoria programma pezzo satura
|
||||
N37 Velocita' max superata in filettatura
|
||||
N38 Comando mandrino gia' programmato in un altro canale
|
||||
N39 Errore sincronizzazione assi
|
||||
N40 Inseguimento troppo grande asse 0
|
||||
N41 Inseguimento troppo grande asse 1
|
||||
N42 Inseguimento troppo grande asse 2
|
||||
N43 Inseguimento troppo grande asse 3
|
||||
N44 Inseguimento troppo grande asse 4
|
||||
N45 Inseguimento troppo grande asse 5
|
||||
N46 Inseguimento troppo grande asse 6
|
||||
N47 Inseguimento troppo grande asse 7
|
||||
N48 Inseguimento troppo grande asse 8
|
||||
N49 Inseguimento troppo grande asse 9
|
||||
N50 Inseguimento troppo grande asse 10
|
||||
N51 Inseguimento troppo grande asse 11
|
||||
N52 Inseguimento troppo grande asse 12
|
||||
N53 Inseguimento troppo grande asse 13
|
||||
N54 Inseguimento troppo grande asse 14
|
||||
N55 Inseguimento troppo grande asse 15
|
||||
N56 Inseguimento troppo grande asse 16
|
||||
N57 Inseguimento troppo grande asse 17
|
||||
N58 Inseguimento troppo grande asse 18
|
||||
N59 Inseguimento troppo grande asse 19
|
||||
N60 Inseguimento troppo grande asse 20
|
||||
N61 Inseguimento troppo grande asse 21
|
||||
N62 Inseguimento troppo grande asse 22
|
||||
N63 Inseguimento troppo grande asse 23
|
||||
N64 Inseguimento troppo grande asse 24
|
||||
N65 Inseguimento troppo grande asse 25
|
||||
N66 Inseguimento troppo grande asse 26
|
||||
N67 Inseguimento troppo grande asse 27
|
||||
N68 Inseguimento troppo grande asse 28
|
||||
N69 Inseguimento troppo grande asse 29
|
||||
N70 Inseguimento troppo grande asse 30
|
||||
N71 Inseguimento troppo grande asse 31
|
||||
N72 Programmazione relativa dopo un blocco incompleto
|
||||
N75 Passaggio da G20 a G21 o G22
|
||||
N76 In G21: Programma di un ciclo di tornitura o di fresatura
|
||||
N77 Tipo di utensile incompatibile con la fase di lavoro
|
||||
N78 Errore di sintassi nella programmazione di una sincronizzazione canali
|
||||
N79 Configurazione TANDEM non valida
|
||||
N80 Azionamento non in Halt
|
||||
N91 No parametro sconosciuto
|
||||
N92 Funzione senza segno associata ad un parametro negativo
|
||||
N93 Errore nella dichiarazione di un param. o nell' espressione di testo
|
||||
N94 Operazione non ammessa di un'espressione parametrica
|
||||
N95 Tentativo di scrittura di un param. esterno di ingresso
|
||||
N96 Blocco precedente la dichiarazione di un paramametro esterno incompleto
|
||||
N97 Modifica impossibile di un parametro in G76
|
||||
N98 Scrittura di un canale di una operazione dinamica gia' utilizzata da un altro canale
|
||||
N99 Errore riscontrato con la funzione N/M AUTO
|
||||
N101 PGP: Dati insufficienti nella programmazione di un cerchio
|
||||
N102 PGP: programmazione di una retta con angolo {EA} e una coordinata X,Y O Z
|
||||
N106 In G2 G3 programmazione 3" terzo asse senza opzione elicoidale
|
||||
N107 PGP: programmazione di un cerchio con raggio e pt. d'arrivo
|
||||
N110 PGP: errore di sintassi nel primo dei 2 blocchi
|
||||
N111 PGP: errore di sintassi nel secondo blocco
|
||||
N112 PGP: Intersezione retta-retta
|
||||
N113 PGP: i valori programmati nei 2 blocchi non consentono di determinare una intersezione o una tangente
|
||||
N114 PGP: punti d'intersezione o tangenza non determinati da ET+ ET- ES+ ES-
|
||||
N121 PGP: errore di sintassi negli ultimi 3 blocchi
|
||||
N122 PGP: i primi 2 blocchi sono delle rette non secanti
|
||||
N123 PGP: i dati prog. nei 3 blocchi non consentono di calcolare i punti di tangenza
|
||||
N124 PGP: punti di tangenza secondo o terzo blocco non precisati da ET+ o ET-
|
||||
N130 Spostamento nullo nel primo dei 2 blocchi uniti da raccordo o smusso
|
||||
N131 Prog. raccordo o smusso in un blocco con M0 M1 o M2
|
||||
N135 Uno smusso puo' unire solo due rette
|
||||
N136 Piu' di 2 blocchi senza movimento tra 2 elementi geometrici il cui punti di intersezione o di tangenza e' da calcolare
|
||||
N137 Cambio piano d'interpolazione quando il blocco non e' convalidato
|
||||
N138 Cambio piano d'interpolazione non in G40
|
||||
N139 Prog. nello stesso blocco di due assi paralleli portati
|
||||
N140 Errore di programmazione in correzione di raggio
|
||||
N141 Assi paralleli portati : programmazione di un cerchio
|
||||
N143 Annullamento o convalida del fattore di scala in correz. raggio
|
||||
N144 Spostamento di un asse quantificato diverso dall'incremento
|
||||
N145 G29 valore assoluto > 1 mm
|
||||
N146 Lavorazione nello spazio G29 e G43
|
||||
N148 Numero di assi programmati superiore al max. consentito
|
||||
N149 Raggio utensile troppo grande rispetto alla traiettoria programmata
|
||||
N150 Fine corsa asse X
|
||||
N151 Fine corsa asse Y
|
||||
N152 Fine corsa asse Z
|
||||
N153 Fine corsa asse U
|
||||
N154 Fine corsa asse V
|
||||
N155 Fine corsa asse W
|
||||
N156 Fine corsa asse A
|
||||
N157 Fine corsa asse B
|
||||
N158 Fine corsa asse C
|
||||
N159 Programmazione di un asse la cui POM non e' stata fatta
|
||||
N160 Errore di POM asse slave
|
||||
N161 Errore di POM asse sinchro
|
||||
N190 Troppi livelli di annidamento
|
||||
N191 Sintassi errata in Programmazione Strutturata
|
||||
N192 Parola chiave non ammessa o riconosciuta nel contesto del programma
|
||||
N193 Errore di strutturazione
|
||||
N195 Stack programma saturo
|
||||
N196 Errore nella dichiarazione degli indici delle tabelle
|
||||
N197 Utilizzazione di un simbolo non dichiarato in VAR
|
||||
N198 Errore di sintassi nella dichiarazione del simbolo di una variabile
|
||||
N199 Sintassi errata nella dichiarazione delle variabili
|
||||
N200 Difetto di sporcizia o di complementarità volantino 0
|
||||
N201 Difetto di sporcizia o di complementarità volantino 1
|
||||
N202 Difetto di sporcizia o di complementarità volantino 2
|
||||
N203 Difetto di sporcizia o di complementarità volantino 3
|
||||
N210 Difetto misura o anomalia seriale asse 0
|
||||
N211 Difetto misura o anomalia seriale asse 1
|
||||
N212 Difetto misura o anomalia seriale asse 2
|
||||
N213 Difetto misura o anomalia seriale asse 3
|
||||
N214 Difetto misura o anomalia seriale asse 4
|
||||
N215 Difetto misura o anomalia seriale asse 5
|
||||
N216 Difetto misura o anomalia seriale asse 6
|
||||
N217 Difetto misura o anomalia seriale asse 7
|
||||
N218 Difetto misura o anomalia seriale asse 8
|
||||
N219 Difetto misura o anomalia seriale asse 9
|
||||
N220 Difetto misura o anomalia seriale asse 10
|
||||
N221 Difetto misura o anomalia seriale asse 11
|
||||
N222 Difetto misura o anomalia seriale asse 12
|
||||
N223 Difetto misura o anomalia seriale asse 13
|
||||
N224 Difetto misura o anomalia seriale asse 14
|
||||
N225 Difetto misura o anomalia seriale asse 15
|
||||
N226 Difetto misura o anomalia seriale asse 16
|
||||
N227 Difetto misura o anomalia seriale asse 17
|
||||
N228 Difetto misura o anomalia seriale asse 18
|
||||
N229 Difetto misura o anomalia seriale asse 19
|
||||
N230 Difetto misura o anomalia seriale asse 20
|
||||
N231 Difetto misura o anomalia seriale asse 21
|
||||
N232 Difetto misura o anomalia seriale asse 22
|
||||
N233 Difetto misura o anomalia seriale asse 23
|
||||
N234 Difetto misura o anomalia seriale asse 24
|
||||
N235 Difetto misura o anomalia seriale asse 25
|
||||
N236 Difetto misura o anomalia seriale asse 26
|
||||
N237 Difetto misura o anomalia seriale asse 27
|
||||
N238 Difetto misura o anomalia seriale asse 28
|
||||
N239 Difetto misura o anomalia seriale asse 29
|
||||
N240 Difetto misura o anomalia seriale asse 30
|
||||
N241 Difetto misura o anomalia seriale asse 31
|
||||
N245 Difetto su un asservimento digitale
|
||||
N246 Segnalazione non corretta del riferimento POM
|
||||
N247 Parametro non corretto azionamento DISC NT
|
||||
N248 Azionamento asse o mandrino digitale in allarme
|
||||
N249 Errore di comunicazione tra CN e PLC
|
||||
N250 PERSOchip non valido
|
||||
N251 Dati PERSOChip non conformi
|
||||
N252 File licenza non valido
|
||||
N253 Annidamento di sottoprogramma chiamato da funzioni M vietato
|
||||
N260 Memoria di lavoro occupata
|
||||
N261 Numero di programma troppo grande
|
||||
N262 Numero di NU non compreso in quelli autorizzati
|
||||
N263 Esecuzione impossibile. Modo test o grafico obbligatori dopo il primo caricamento o dopo modifica
|
||||
N264 Quota non programmata in un piano di contornatura
|
||||
N265 Manca il primo blocco di posizionamento,la definizione del profilo deve iniziare in G0 o G1
|
||||
N266 Zona memoria insufficiente
|
||||
N267 Carattere non ammesso nella sintassi della tasca
|
||||
N268 Blocco di programmazione della tasca incompleto o con delle informazioni non ammesse
|
||||
N269 Blocco di contornatura incompleto
|
||||
N270 Definizione di tasca mancante o incompleta
|
||||
N271 Direzione utensile non perpendicolare al piano di contornatura
|
||||
N272 Utensile non compatibile con i dati tecnologici della tasca
|
||||
N273 Cambio del piano di contornatura tra la definizione di tasca a la lavorazione
|
||||
N274 Due definizioni di tasche annidate
|
||||
N275 NU 0 programmata con G59
|
||||
N276 Profondita' di tasca nulla
|
||||
N277 In definizione di tasca le coordinate del punto di inizio e di fine sono incomplete
|
||||
N278 Il senso di rotazione del mandrino e' incompatibile con quello richiesto nella definizione della tasca
|
||||
N279 Funzione G non ammessa in un blocco di programmazione di tasca
|
||||
N280 Primo blocco del profilo incompleto
|
||||
N281 Discontinuita' in uno dei profili descritti
|
||||
N282 Parametri di definizione tasca errati
|
||||
N283 Il profilo esterno deve essere unico e dichiarato
|
||||
N284 Errata definizione di un profilo
|
||||
N285 Troppi profili
|
||||
N286 Valore di passata troppo grande rispetto al diametro dell' utensile
|
||||
N287 Valore di passata troppo piccola rispetto alle dimensioni
|
||||
N288 Avvicinamento per finitura con un angolo rientrante o in una zona non sgrossata
|
||||
N289 Diametro utensile troppo grande
|
||||
N290 Errore interno
|
||||
N291 Avvicinamento per finitura fuori dal profilo
|
||||
N292 Doppio posizionamento all'inizio d'un profilo
|
||||
N293 Presenza di un punto di fine sgrossatura in spianatura
|
||||
N300 Asse 0 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N301 Asse 1 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N302 Asse 2 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N303 Asse 3 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N304 Asse 4 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N305 Asse 5 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N306 Asse 6 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N307 Asse 7 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N308 Asse 8 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N309 Asse 9 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N310 Asse 10 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N311 Asse 11 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N312 Asse 12 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N313 Asse 13 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N314 Asse 14 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N315 Asse 15 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N316 Asse 16 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N317 Asse 17 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N318 Asse 18 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N319 Asse 19 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N320 Asse 20 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N321 Asse 21 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N322 Asse 22 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N323 Asse 23 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N324 Asse 24 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N325 Asse 25 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N326 Asse 26 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N327 Asse 27 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N328 Asse 28 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N329 Asse 29 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N330 Asse 30 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N331 Asse 31 dichiarato in P2 ed assente sul bus o difetto misura
|
||||
N400 Caricamento Opzione din in C: Taglia del codice USER troppo grande
|
||||
N401 Caricamento Opzione din in C: Errore di formato
|
||||
N402 Caricamento Opzione din in C: Errore di checksum
|
||||
N403 Il sistema ha una memoria insufficiente per accettare degli Opzione din in C
|
||||
N404 Caricamento Opzione din in C: Open error
|
||||
N405 Caricamento Opzione din in C: Read error
|
||||
N406 Caricamento Opzione din in C: Close error
|
||||
N407 Caricamento Opzione din in C: L'indice e' vuoto
|
||||
N410 Opzione din in C: Numero di parametri passati non conformi
|
||||
N411 Opzione din in C: Errore USER durante la funzione INIT: ritorno negativo
|
||||
N413 Opzione dinamico in C non conosciuto
|
||||
N414 Opzione dinamico in C senza MAIN
|
||||
N420 Opzione din in C: Errore USER durante la funzione QUIT
|
||||
N421 Opzione din in C: Errore USER durante la funzione QUIT: ritorno negativo
|
||||
N423 Opzione din in C: Posto della funzione in C non valido
|
||||
N424 Errore exception unità virgola mobile
|
||||
900=Numero utensile non valido M6T
|
||||
901=Numero utensile caricato non ok
|
||||
902=Numero utensile su elettromandrino non valido E80001
|
||||
903=Sensore POM B elettromandrino non ok
|
||||
904=Sensore POM C elettromandrino non ok
|
||||
905=Sensore POM B lama non ok
|
||||
906=Sensore POM C lama non ok
|
||||
907=MESSAGGIO LIBERO
|
||||
908=MESSAGGIO LIBERO
|
||||
909=MESSAGGIO LIBERO
|
||||
910=MESSAGGIO LIBERO
|
||||
911=MESSAGGIO LIBERO
|
||||
912=MESSAGGIO LIBERO
|
||||
913=MESSAGGIO LIBERO
|
||||
914=MESSAGGIO LIBERO
|
||||
915=MESSAGGIO LIBERO
|
||||
916=Definire numero mandrino ET.. (1=Lama 2=Elettromandrino)
|
||||
917=MESSAGGIO LIBERO
|
||||
918=MESSAGGIO LIBERO
|
||||
919=MESSAGGIO LIBERO
|
||||
920=MESSAGGIO LIBERO
|
||||
921=MESSAGGIO LIBERO
|
||||
922=MESSAGGIO LIBERO
|
||||
923=MESSAGGIO LIBERO
|
||||
924=Offset X Lama non allineato tra MACCHINA e CADCAM
|
||||
925=Offset Y Lama non allineato tra MACCHINA e CADCAM
|
||||
926=Offset Z Lama non allineato tra MACCHINA e CADCAM
|
||||
927=Pivot Z Lama non allineato tra MACCHINA e CADCAM
|
||||
928=Pivot C Lama non allineato tra MACCHINA e CADCAM
|
||||
929=Offset X Fresa non allineato tra MACCHINA e CADCAM
|
||||
930=Offset Y Fresa non allineato tra MACCHINA e CADCAM
|
||||
931=Offset Z Fresa non allineato tra MACCHINA e CADCAM
|
||||
932=Pivot Z Fresa non allineato tra MACCHINA e CADCAM
|
||||
933=Programmazione X-U-W-Z obbligatoria con G102EH.. diverso da zero
|
||||
934=MESSAGGIO LIBERO
|
||||
935=MESSAGGIO LIBERO
|
||||
936=MESSAGGIO LIBERO
|
||||
937=MESSAGGIO LIBERO
|
||||
938=MESSAGGIO LIBERO
|
||||
939=MESSAGGIO LIBERO
|
||||
1050=Nessuna comunicazione con il CN
|
||||
1206=Assi in movimento
|
||||
1207=Programma in esecuzione
|
||||
1604=Programma in esecuzione
|
||||
2001=Il sistema Flexium non è stato arrestato normalmente. Alcuni programmi non sono attuali. Controllare i programmi nelle pagine di programmazione pagine.
|
||||
2007=Il sistema Flexium non è stato arrestato correttamente. I vecchi file Zona 0 vengono trasferiti al NCK
|
||||
5000=Nessuna comunicazione con Flexium RTS
|
||||
|
||||
[INPUT]
|
||||
1=MACCHINA IN POTENZA
|
||||
2=TERMICI MOTORI
|
||||
3=TELERUTTORE MOTORE FRESA INSERITO
|
||||
4=DRIVE OK MOTORE CUFFIA ASPIRAZIONE PORTALE
|
||||
5=DRIVE OK MOTORE CUFFIA ASPIRAZIONE FRESA
|
||||
6=SONDA TERMICA - RESISTENZA FRENATURA INVERTER LAMA
|
||||
7=DRIVE OK MOTORE CUFFIA ASPIRAZIONE LAMA
|
||||
8=SENSORE CUFFIA ASPIRAZIONE ALTA PORTALE
|
||||
9=SENSORE CUFFIA ASPIRAZIONE BASSA PORTALE
|
||||
10=SELEZIONE MANUTENZIONE MACCHINA CE
|
||||
11=SENSORE CUFFIA ASPIRAZIONE FRESA ALTA
|
||||
12=SENSORE CUFFIA ASPIRAZIONE FRESA BASSA
|
||||
13=SENSORE CUFFIA ASPIRAZIONE LAMA ALTA
|
||||
14=SENSORE CUFFIA ASPIRAZIONE LAMA BASSA
|
||||
15=SENSORE PROTEZIONE CAMBIO UTENSILE ROTATIVO APERTO
|
||||
16=INGRESSO A DISPOSIZIONE
|
||||
17=INGRESSO A DISPOSIZIONE
|
||||
18=INGRESSO A DISPOSIZIONE
|
||||
19=INGRESSO A DISPOSIZIONE
|
||||
20=INGRESSO A DISPOSIZIONE
|
||||
21=INGRESSO A DISPOSIZIONE
|
||||
22=INGRESSO A DISPOSIZIONE
|
||||
23=SENSORE CAMBIO UTENSILE CATENA AVANTI
|
||||
24=SENSORE CAMBIO UTENSILE CATENA INDIETRO
|
||||
25=SENSORE SONDA TERMICA MOTORE FRESA
|
||||
26=SENSORE SONDA TERMICA MOTORE LAMA
|
||||
27=INGRESSO A DISPOSIZIONE
|
||||
28=SENSORE CAMBIO UTENSILE LATERALE AVANTI
|
||||
29=SENSORE CAMBIO UTENSILE LATERALE INDIETRO
|
||||
30=REFRIGERATORE FRESA E LAMA OK
|
||||
31=FLUSSOSTATO TESTA FRESA
|
||||
32=PULSANTE RESET ALLARMI
|
||||
33=PRESSOSTATO LUBRIFICAZIONE ASSI
|
||||
34=PRESSOSTATO ARIA COMPRESSA
|
||||
35=SENSORE MINIMO LIVELLO GRASSO
|
||||
36=SENSORE MINIMO LIVELLO OLIO SEGA
|
||||
37=INGRESSO A DISPOSIZIONE
|
||||
38=SOVRATEMPERATURA ARMADIO SINISTRO
|
||||
39=SENSORE PISTONE SBLOCCATO CONO A RIPOSO
|
||||
40=PRE ALLARME ZONA DI SICUREZZA
|
||||
41=FLUSSOSTATO TESTA LAMA
|
||||
42=TELERUTTORE MOTORE LAMA INSERITO
|
||||
43=SENSORE CAMBIO UTENSILE SOTTO TRAVE AVANTI
|
||||
44=SENSORE CAMBIO UTENSILE SOTTO TRAVE INDIETRO
|
||||
45=ALLARME ZONA DI SICUREZZA
|
||||
46=INGRESSO A DISPOSIZIONE
|
||||
47=UPS BATTERIA OK
|
||||
48=UPS USCITA IN SOVRACORRENTE
|
||||
49=SENSORE ARRESTO FRONTALE BASSO
|
||||
50=SENSORE ARRESTO LATERALE BANCO 1 BASSO
|
||||
51=SENSORE ARRESTO LATERALE BANCO 2 BASSO
|
||||
52=SENSORE ARRESTO LATERALE BANCO 3 BASSO
|
||||
53=SENSORE ARRESTO LATERALE BANCO 4 BASSO
|
||||
54=SENSORE ARRESTO LATERALE BANCO 5 BASSO
|
||||
55=SENSORE ARRESTO LATERALE BANCO 6 BASSO
|
||||
56=INGRESSO A DISPOSIZIONE
|
||||
57=INGRESSO A DISPOSIZIONE
|
||||
58=SELETTORE ATTIVAZIONE TAPPETO SCARICO SFRIDI
|
||||
59=INGRESSO A DISPOSIZIONE
|
||||
60=INGRESSO A DISPOSIZIONE
|
||||
61=INGRESSO A DISPOSIZIONE
|
||||
62=INGRESSO A DISPOSIZIONE
|
||||
63=SOVRATEMPERATURA ARMADIO ELETTRICO DESTRO
|
||||
64=INGRESSO A DISPOSIZIONE
|
||||
65=PRENOTAZONE VUOTO ZONA 1
|
||||
66=PRENOTAZONE VUOTO ZONA 2
|
||||
67=PRENOTAZONE VUOTO ZONA 3
|
||||
68=PRENOTAZONE VUOTO ZONA 4
|
||||
69=PRENOTAZONE VUOTO ZONA 5
|
||||
70=PRENOTAZONE VUOTO ZONA 6
|
||||
71=PRENOTAZONE VUOTO ZONA 7
|
||||
72=PRENOTAZONE VUOTO ZONA 8
|
||||
73=PRENOTAZONE VUOTO ZONA 9
|
||||
74=PRENOTAZONE VUOTO ZONA 10
|
||||
75=PRENOTAZONE VUOTO ZONA 11
|
||||
76=PRENOTAZONE VUOTO ZONA 12
|
||||
77=INGRESSO A DISPOSIZIONE
|
||||
78=INGRESSO A DISPOSIZIONE
|
||||
79=INGRESSO A DISPOSIZIONE
|
||||
80=INGRESSO A DISPOSIZIONE
|
||||
81=VACUOSTATO ZONA 1
|
||||
82=VACUOSTATO ZONA 2
|
||||
83=VACUOSTATO ZONA 3
|
||||
84=VACUOSTATO ZONA 4
|
||||
85=VACUOSTATO ZONA 5
|
||||
86=VACUOSTATO ZONA 6
|
||||
87=VACUOSTATO ZONA 7
|
||||
88=VACUOSTATO ZONA 8
|
||||
89=VACUOSTATO ZONA 9
|
||||
90=VACUOSTATO ZONA 10
|
||||
91=VACUOSTATO ZONA 11
|
||||
92=VACUOSTATO ZONA 12
|
||||
93=INGRESSO A DISPOSIZIONE
|
||||
94=INGRESSO A DISPOSIZIONE
|
||||
95=INGRESSO A DISPOSIZIONE
|
||||
96=INGRESSO A DISPOSIZIONE
|
||||
|
||||
[OUTPUT]
|
||||
1=COMANDO ELETTRO-VALVOLA APERTURA ARIA SECCA
|
||||
2=MODALITA' REG. CE CONSENSO REGOLAZIONE CE
|
||||
3=SELEZIONE POM ASSE C1 TESTA
|
||||
4=SELEZIONE POM ASSE C2 LAMA
|
||||
5=ELETTRO-VALVOLA APERTURA PROTEZIONE CAMBIO UTENSILE ROTATIVO
|
||||
6=ELETTRO-VALVOLA CHIUSURA PROTEZIONE CAMBIO UTENSILE ROTATIVO
|
||||
7=CONTAORE
|
||||
8=INSERIMENTO TELERUTTORE FRESA
|
||||
9=ROTAZIONE TAPPETO SFRIDI
|
||||
10=MOTORE POMPA LUBRIFICAZIONE ASSI
|
||||
11=ELETTRO-VALVOLA LUBRIFICAZIONE CATENA
|
||||
12=USCITA A DISPOSIZIONE
|
||||
13=LAMPADA MESSAGGI
|
||||
14=USCITA A DISPOSIZIONE
|
||||
15=USCITA A DISPOSIZIONE
|
||||
16=INSERIMENTO TELERUTTORE LAMA
|
||||
17=ELETTRO-VALVOLA BLOCCO UTENSILE
|
||||
18=ELETTRO-VALVOLA SBLOCCO UTENSILE
|
||||
19=USCITA A DISPOSIZIONE
|
||||
20=ELETTRO-VALVOLA CAMBIO LATERALE AVANTI
|
||||
21=ELETTRO-VALVOLA CAMBIO LATERALE INDIETRO
|
||||
22=ELETTRO-VALVOLA CAMBIO CATENA AVANTI
|
||||
23=ELETTRO-VALVOLA CAMBIO CATENA INDIETRO
|
||||
24=ELETTRO-VALVOLA SOFFIO PULIZIA CATENA
|
||||
25=ELETTRO-VALVOLA SALITA ARRESTO FRONTALE DX
|
||||
26=ELETTRO-VALVOLA SALITA ARRESTO LATERALE BANCO 1
|
||||
27=ELETTRO-VALVOLA SALITA ARRESTO LATERALE BANCO 2
|
||||
28=ELETTRO-VALVOLA SALITA ARRESTO LATERALE BANCO 3
|
||||
29=ELETTRO-VALVOLA SALITA ARRESTO LATERALE BANCO 4
|
||||
30=ELETTRO-VALVOLA SALITA ARRESTO LATERALE BANCO 5
|
||||
31=ELETTRO-VALVOLA SALITA ARRESTO LATERALE BANCO 6
|
||||
32=ELETTRO-VALVOLA SALITA ARRESTO LATERALE BANCO 7
|
||||
33=ELETTRO-VALVOLA SOFFIO UTENSILE TESTA FRESA
|
||||
34=ELETTRO-VALVOLA CAMBIO SOTTO TRAVE AVANTI
|
||||
35=ELETTRO-VALVOLA CAMBIO SOTTO TRAVE INDIETRO
|
||||
36=ELETTRO-VALVOLA SOFFIO PULIZIA ASSI T1 FRESA
|
||||
37=ELETTRO-VALVOLA SOFFIO FRONTALE
|
||||
38=ELETTRO-VALVOLA SOFFIO LATERALE
|
||||
39=ABILITA POMPA DEL VUOTO
|
||||
40=ABILITA PRESSIONE POMPA DEL VUOTO
|
||||
41=ELETTRO-VALVOLA APERTURA VUOTO ZONA 1
|
||||
42=ELETTRO-VALVOLA APERTURA VUOTO ZONA 2
|
||||
43=ELETTRO-VALVOLA APERTURA VUOTO ZONA 3
|
||||
44=ELETTRO-VALVOLA APERTURA VUOTO ZONA 4
|
||||
45=ELETTRO-VALVOLA APERTURA VUOTO ZONA 5
|
||||
46=ELETTRO-VALVOLA APERTURA VUOTO ZONA 6
|
||||
47=ELETTRO-VALVOLA APERTURA VUOTO ZONA 7
|
||||
48=ELETTRO-VALVOLA APERTURA VUOTO ZONA 8
|
||||
49=ELETTRO-VALVOLA APERTURA VUOTO ZONA 9
|
||||
50=ELETTRO-VALVOLA APERTURA VUOTO ZONA 10
|
||||
51=ELETTRO-VALVOLA APERTURA VUOTO ZONA 11
|
||||
52=ELETTRO-VALVOLA APERTURA VUOTO ZONA 12
|
||||
53=ELETTRO-VALVOLA APERTURA VUOTO ZONA 13
|
||||
54=ELETTRO-VALVOLA APERTURA VUOTO ZONA 14
|
||||
55=USCITA A DISPOSIZIONE
|
||||
56=ELETTRO-VALVOLA SOFFIO PULIZIA ASSE T2 LAMA
|
||||
57=ACCENSIONE VENTILATORI
|
||||
58=SALITA CUFFIA ASPIRAZIONE PORTALE
|
||||
59=DISCESA CUFFIA ASPIRAZIONE PORTALE
|
||||
60=VELOCE CUFFIA ASPIRAZIONE PORTALE
|
||||
61=SBLOCCO FRENO CUFFIA ASPIRAZIONE PORTALE
|
||||
62=SALITA CUFFIA ASPIRAZIONE FRESA
|
||||
63=DISCESA CUFFIA ASPIRAZIONE FRESA
|
||||
64=VELOCE CUFFIA ASPIRAZIONE FRESA
|
||||
65=FRENO CUFFIA ASPIRAZIONE FRESA
|
||||
66=SALITA CUFFIA ASPIRAZIONE LAMA
|
||||
67=DISCESA CUFFIA ASPIRAZIONE LAMA
|
||||
68=VELOCE CUFFIA ASPIRAZIONE LAMA
|
||||
69=FRENO CUFFIA ASPIRAZIONE LAMA
|
||||
70=ELETTRO-VALVOLA CARICO SERBATOIO ARIA PULIZIA CABINA DX
|
||||
71=ELETTRO-VALVOLA SOFFIO PULIZIA CABINA DX
|
||||
72=ELETTRO-VALVOLA CARICO SERBATOIO ARIA PULIZIA CABINA SX
|
||||
73=ELETTRO-VALVOLA SOFFIO PULIZIA CABINA SX
|
||||
74=ELETTRO-VALVOLA SOFFIO PULIZIA TELECAMERE
|
||||
75=ELETTRO-VALVOLA APERTURA ASPIRAZIONE FRESA
|
||||
76=ELETTRO-VALVOLA APERTURA ASPIRAZIONE LAMA
|
||||
77=ELETTRO-VALVOLA APERTURA ASPIRAZIONE PORTALE
|
||||
78=ELETTRO-VALVOLA APERTURA ASPIRAZIONE PULIZIA PORTALE
|
||||
79=CONSENSO MACCHINA IN PARCHEGGIO
|
||||
80=CONSENSO RIFERIMENTI BASSI
|
||||
81=CONSENSO ROTAZIONE TAPPETO
|
||||
82=CONSENSO MACCHINA IN POTENZA
|
||||
83=CONSENSO BARRIERE DI SICUREZZA INTERVENUTE
|
||||
84=USCITA A DISPOSIZIONE
|
||||
85=USCITA A DISPOSIZIONE
|
||||
86=USCITA A DISPOSIZIONE
|
||||
87=USCITA A DISPOSIZIONE
|
||||
88=USCITA A DISPOSIZIONE
|
||||
89=USCITA A DISPOSIZIONE
|
||||
90=USCITA A DISPOSIZIONE
|
||||
91=USCITA A DISPOSIZIONE
|
||||
92=USCITA A DISPOSIZIONE
|
||||
93=USCITA A DISPOSIZIONE
|
||||
94=USCITA A DISPOSIZIONE
|
||||
95=USCITA A DISPOSIZIONE
|
||||
96=USCITA A DISPOSIZIONE
|
||||
@@ -0,0 +1,36 @@
|
||||
-- 2018/11/21 17:30:00
|
||||
-- Machining Exit for Essetre-FAST machine
|
||||
|
||||
-- Intestazioni
|
||||
require( 'EgtBase')
|
||||
_ENV = EgtProtectGlobal()
|
||||
EgtEnableDebug( false)
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
-- *** Uscita da Lavorazioni ***
|
||||
|
||||
-- Nascondo il pezzo così marcato e le geometrie aggiunte, visualizzo il Box
|
||||
local function ProcessPart( PartId)
|
||||
-- visualizzo il Box
|
||||
EgtSetStatus( EgtGetFirstNameInGroup( PartId, 'Box') or GDB_ID.NULL, GDB_ST.ON)
|
||||
end
|
||||
|
||||
-- Disabilito segnalazione modifica progetto
|
||||
local bEnMod = EgtGetEnableModified()
|
||||
EgtDisableModified()
|
||||
|
||||
-- Processo i pezzi nella radice (già chiusi tutti i gruppi di lavoro)
|
||||
local PartId = EgtGetFirstPart()
|
||||
while PartId do
|
||||
ProcessPart( PartId)
|
||||
PartId = EgtGetNextPart( PartId)
|
||||
end
|
||||
|
||||
EgtZoom( SCE_ZM.ALL, false)
|
||||
|
||||
-- Ripristino segnalazione modifica progetto
|
||||
if bEnMod then
|
||||
EgtEnableModified()
|
||||
end
|
||||
|
||||
MACH.ERR = 0
|
||||
@@ -0,0 +1,44 @@
|
||||
-- 2018/11/21 16:30:00
|
||||
-- Machining Init for Essetre-FAST machine
|
||||
|
||||
-- Intestazioni
|
||||
require( 'EgtBase')
|
||||
_ENV = EgtProtectGlobal()
|
||||
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
|
||||
|
||||
-- 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
|
||||
|
||||
-- Ripristino segnalazione modifica progetto
|
||||
if bEnMod then
|
||||
EgtEnableModified()
|
||||
end
|
||||
|
||||
MACH.ERR = 0
|
||||
@@ -0,0 +1,200 @@
|
||||
-- 2023/04/24
|
||||
-- Gestione attrezzaggio per Essetre-90480031
|
||||
|
||||
-- Intestazioni
|
||||
require( 'EgtBase')
|
||||
_ENV = EgtProtectGlobal()
|
||||
EgtEnableDebug( false)
|
||||
|
||||
-- Tavola di passaggio valori
|
||||
local STU = {}
|
||||
STU.TUUID = ""
|
||||
STU.TCPOS = ""
|
||||
STU.HEAD = ""
|
||||
STU.GROUP = ""
|
||||
STU.POS = ""
|
||||
STU.EXIT = 0
|
||||
STU.INDEX = 0
|
||||
STU.HEAD1 = ""
|
||||
STU.HEAD2 = ""
|
||||
STU.ISVALID = false
|
||||
STU.ERR = 0
|
||||
_G.STU = STU
|
||||
|
||||
local INVALIDPOS = ""
|
||||
local POS = "Pos"
|
||||
|
||||
-- Geom Set
|
||||
local GS = {}
|
||||
|
||||
-- Configurazione posizioni
|
||||
local PositionTable={{Pos = "Pos1", TcPos = "T10", Head = "H1", Group = "G1"},
|
||||
{Pos = "Pos2", TcPos = "T11", Head = "H1", Group = "G1"},
|
||||
{Pos = "Pos3", TcPos = "T12", Head = "H1", Group = "G1"},
|
||||
{Pos = "Pos4", TcPos = "T13", Head = "H1", Group = "G1"},
|
||||
{Pos = "Pos5", TcPos = "T14", Head = "H1", Group = "G1"},
|
||||
{Pos = "Pos6", TcPos = "T15", Head = "H1", Group = "G1"},
|
||||
{Pos = "Pos7", TcPos = "T16", Head = "H1", Group = "G1"},
|
||||
{Pos = "Pos8", TcPos = "T17", Head = "H1", Group = "G1"},
|
||||
{Pos = "Pos9", TcPos = "T18", Head = "H1", Group = "G1"},
|
||||
{Pos = "Pos10", TcPos = "T42", Head = "H2", Group = "G2"},
|
||||
{Pos = "Pos11", TcPos = "T101", Head = "H3", Group = "G2"},
|
||||
{Pos = "Pos12", TcPos = "T201", Head = "H1", Group = "G2"}}
|
||||
|
||||
local UsePositionHead = true
|
||||
|
||||
local function IsInGeomSet( ToolHead, PosHead)
|
||||
for GsIndex = 1, #GS do
|
||||
local bToolHead = false
|
||||
local bPosHead = false
|
||||
for HIndex = 1, #GS[GsIndex] do
|
||||
if GS[GsIndex][HIndex] == ToolHead then
|
||||
bToolHead = true
|
||||
elseif GS[GsIndex][HIndex] == PosHead then
|
||||
bPosHead = true
|
||||
end
|
||||
if bToolHead and bPosHead then
|
||||
return true
|
||||
end
|
||||
end
|
||||
if bToolHead and bPosHead then
|
||||
return true
|
||||
end
|
||||
end
|
||||
return false
|
||||
end
|
||||
|
||||
function STU.IsCompatibleHeads()
|
||||
STU.ISVALID = false
|
||||
if IsInGeomSet(STU.HEAD1, STU.HEAD2) then
|
||||
STU.ISVALID = true
|
||||
else
|
||||
STU.ISVALID = false
|
||||
end
|
||||
end
|
||||
|
||||
function STU.GetValidHeadExitForPos()
|
||||
-- se TUUID non valido restituisco errore
|
||||
local ToolName = EgtTdbGetToolFromUUID( STU.TUUID)
|
||||
if ToolName == nill then
|
||||
STU.ERR = 1
|
||||
return
|
||||
end
|
||||
EgtTdbSetCurrTool( ToolName)
|
||||
local CurrToolHead = EgtTdbGetCurrToolParam( MCH_TP.HEAD)
|
||||
STU.EXIT = EgtTdbGetCurrToolParam( MCH_TP.EXIT)
|
||||
-- recupero testa predefinita per la posizione corrente
|
||||
local CurrPosHead
|
||||
for i = 1, #PositionTable do
|
||||
if PositionTable[i].TcPos == STU.TCPOS then
|
||||
CurrPosHead = PositionTable[i].Head
|
||||
break
|
||||
end
|
||||
end
|
||||
-- verifico se la testa è quella della posizione predefinita
|
||||
if CurrPosHead == CurrToolHead then
|
||||
STU.HEAD = CurrToolHead
|
||||
STU.ERR = 0
|
||||
return
|
||||
-- verifico se la testa è compatibile con quella della posizione predefinita
|
||||
elseif IsInGeomSet( CurrToolHead, CurrPosHead) then
|
||||
if UsePositionHead then
|
||||
STU.HEAD = CurrPosHead
|
||||
STU.ERR = 0
|
||||
return
|
||||
else
|
||||
STU.HEAD = CurrToolHead
|
||||
STU.ERR = 0
|
||||
return
|
||||
end
|
||||
-- la testa non è compatibile con quella della posizione predefinita
|
||||
else
|
||||
STU.HEAD = INVALIDPOS
|
||||
STU.ERR = 0
|
||||
return
|
||||
end
|
||||
end
|
||||
|
||||
function STU.IsValidTcPosFromHead()
|
||||
STU.ISVALID = false
|
||||
for i = 1, #PositionTable do
|
||||
if PositionTable[i].TcPos == STU.TCPOS then
|
||||
if PositionTable[i].Head == STU.HEAD then
|
||||
STU.ISVALID = true
|
||||
STU.ERR = 0
|
||||
return
|
||||
elseif IsInGeomSet(PositionTable[i].Head, STU.HEAD) then
|
||||
STU.ISVALID = true
|
||||
STU.ERR = 0
|
||||
return
|
||||
end
|
||||
STU.ISVALID = false
|
||||
STU.ERR = 0
|
||||
return
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function STU.GetTcPosHeadGroupFromPos()
|
||||
for i = 1, #PositionTable do
|
||||
if PositionTable[i].Pos == (POS .. tostring(STU.INDEX)) then
|
||||
STU.TCPOS = PositionTable[i].TcPos
|
||||
STU.HEAD = PositionTable[i].Head
|
||||
STU.GROUP = PositionTable[i].Group
|
||||
STU.ERR = 0
|
||||
return
|
||||
end
|
||||
end
|
||||
STU.TCPOS = INVALIDPOS
|
||||
STU.HEAD = INVALIDPOS
|
||||
STU.GROUP = INVALIDPOS
|
||||
STU.ERR = 1
|
||||
end
|
||||
|
||||
function STU.GetPosFromTcPos()
|
||||
for i = 1, #PositionTable do
|
||||
if PositionTable[i].TcPos == STU.TCPOS then
|
||||
STU.POS = PositionTable[i].Pos
|
||||
STU.ERR = 0
|
||||
return
|
||||
end
|
||||
end
|
||||
STU.POS = INVALIDPOS
|
||||
STU.ERR = 1
|
||||
end
|
||||
|
||||
function STU.GetGroupFromTcPos()
|
||||
for i = 1, #PositionTable do
|
||||
if PositionTable[i].TcPos == STU.TCPOS then
|
||||
STU.GROUP = PositionTable[i].Group
|
||||
STU.ERR = 0
|
||||
return
|
||||
end
|
||||
end
|
||||
STU.GROUP = INVALIDPOS
|
||||
STU.ERR = 1
|
||||
end
|
||||
|
||||
function STU.GetHeadFromPos()
|
||||
for i = 1, #PositionTable do
|
||||
if PositionTable[i].Pos == (POS .. tostring(STU.INDEX)) then
|
||||
STU.HEAD = PositionTable[i].Head
|
||||
STU.ERR = 0
|
||||
return
|
||||
end
|
||||
end
|
||||
STU.HEAD = INVALIDPOS
|
||||
STU.ERR = 1
|
||||
end
|
||||
|
||||
function STU.GetTcPosFromPos()
|
||||
for i = 1, #PositionTable do
|
||||
if PositionTable[i].Pos == (POS .. tostring(STU.INDEX)) then
|
||||
STU.TCPOS = PositionTable[i].TcPos
|
||||
STU.ERR = 0
|
||||
return
|
||||
end
|
||||
end
|
||||
STU.TCPOS = INVALIDPOS
|
||||
STU.ERR = 1
|
||||
end
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,30 @@
|
||||
-- GetTs3Data.lua by Egaltech s.r.l. 2022/04/07
|
||||
-- Recupero dati da file Ts3Data.lua di macchina
|
||||
|
||||
-- Intestazioni
|
||||
require( 'EgtBase')
|
||||
_ENV = EgtProtectGlobal()
|
||||
EgtEnableDebug( false)
|
||||
|
||||
-- Per test
|
||||
--GTSD = {}
|
||||
--GTSD.TS3PATH = 'Essetre-FAST\\Ts3Data.lua'
|
||||
|
||||
local sLog = 'GetTs3Data : ' .. GTSD.TS3PATH
|
||||
EgtOutLog( sLog)
|
||||
|
||||
if EgtExistsFile( GTSD.TS3PATH) then
|
||||
local Machine = dofile( GTSD.TS3PATH)
|
||||
-- Assegno valori di interesse
|
||||
Offsets = Machine.Offsets
|
||||
_G.Offsets = Offsets
|
||||
Trave = Machine.Trave
|
||||
_G.Trave = Trave
|
||||
User = Machine.User
|
||||
_G.User = User
|
||||
end
|
||||
|
||||
-- Tutto ok
|
||||
GTSD.ERR = 0
|
||||
|
||||
EgtOutLog( ' +++ GetTs3Data completed')
|
||||
@@ -0,0 +1,55 @@
|
||||
; PIndex = Type, PName, Default, Description
|
||||
; Type : d=double, l=length, s=string
|
||||
|
||||
[1]
|
||||
Name=Offsets
|
||||
1= l,MIN_Y,-20580,MIN_Y
|
||||
2= l,MAX_Y,0,MAX_Y
|
||||
3= l,MIN_X,-6685,MIN_X
|
||||
4= l,MAX_X,0,MAX_X
|
||||
5= l,MIN_Z,-1570,MIN_Z
|
||||
6= l,MAX_Z,0,MAX_Z
|
||||
7= d,MIN_B,-135,MIN_B
|
||||
8= d,MAX_B,135,MAX_B
|
||||
9= d,MIN_C,-275,MIN_C
|
||||
10=d,MAX_C,275,MAX_C
|
||||
11=l,MIN_X2,-6685,MIN_X2
|
||||
12=l,MAX_X2,0,MAX_X2
|
||||
13=l,MIN_Z2,-1570,MIN_Z2
|
||||
14=l,MAX_Z2,0,MAX_Z2
|
||||
15=d,MIN_B2,-135,MIN_B2
|
||||
16=d,MAX_B2,135,MAX_B2
|
||||
17=d,MIN_C2,-275,MIN_C2
|
||||
18=d,MAX_C2,275,MAX_C2
|
||||
19=l,MIN_U,-6075,MIN_U
|
||||
20=l,MAX_U,-770,MAX_U
|
||||
21=l,MIN_W,-1110,MIN_W
|
||||
22=l,MAX_W,0,MAX_W
|
||||
23=l,MIN_V,0,MIN_V
|
||||
24=l,MAX_V,90,MAX_V
|
||||
25=d,MIN_A,-275,MIN_A
|
||||
26=d,MAX_A,275,MAX_A
|
||||
27=l,ZERO_X_MILL,-1293.3,ZERO_X_MILL
|
||||
28=l,ZERO_Y_MILL,-1152,ZERO_Y_MILL
|
||||
29=l,ZERO_Z_MILL,-992.15,ZERO_Z_MILL
|
||||
30=l,PIVOT_MILL,208.0,PIVOT_MILL
|
||||
31=l,ZERO_X_MILL2,-1293.3,ZERO_X_MILL2
|
||||
32=l,ZERO_Y_MILL2,-1152,ZERO_Y_MILL2
|
||||
33=l,ZERO_Z_MILL2,-992.15,ZERO_Z_MILL2
|
||||
34=l,PIVOT_MILL2,208.0,PIVOT_MILL2
|
||||
35=l,ZERO_X_SAW,-1288.05,ZERO_X_SAW
|
||||
36=l,ZERO_Y_SAW,-803.45,ZERO_Y_SAW
|
||||
37=l,ZERO_Z_SAW,-909.55,ZERO_Z_SAW
|
||||
38=l,PIVOT_SAW,163.15,PIVOT_SAW
|
||||
39=l,INTRULLI,1500,INTRULLI
|
||||
40=l,DELTA_X,0,RAW_LONG_OFFSET
|
||||
41=l,DELTA_Y,0,RAW_CROSS_OFFSET
|
||||
|
||||
[2]
|
||||
Name=Trave
|
||||
1=l,XMIN,20,XMIN
|
||||
2=l,XMAX,3500,XMAX
|
||||
3=l,YMIN,50,YMIN
|
||||
4=l,YMAX,18000,YMAX
|
||||
5=l,ZMIN,1,ZMIN
|
||||
6=l,ZMAX,400,ZMAX
|
||||
@@ -0,0 +1,26 @@
|
||||
[Cut]
|
||||
1=Standard
|
||||
|
||||
[Drill]
|
||||
1=Drill
|
||||
2=Pocket
|
||||
|
||||
[Milling]
|
||||
1=FreeContour
|
||||
2=Side
|
||||
3=SideGroove
|
||||
4=DtMortise
|
||||
5=Mark
|
||||
6=Text
|
||||
7=CleanCorner60
|
||||
8=CleanCorner30
|
||||
9=SideMill
|
||||
10=Gorge
|
||||
|
||||
[Pocketing]
|
||||
1=Pocket
|
||||
2=OpenPocket
|
||||
3=Mortise
|
||||
|
||||
[Sawing]
|
||||
1=Sawing
|
||||
@@ -0,0 +1,86 @@
|
||||
-- WallData.lua by Egaltech s.r.l. 2023/04/15
|
||||
-- Raccolta dati generali per Pareti
|
||||
|
||||
EgtOutLog( ' 90480030-WallData started', 1)
|
||||
|
||||
-- Tabella per definizione modulo
|
||||
local WallData = {
|
||||
MIN_LENGTH = 100, -- lunghezza minima del grezzo
|
||||
MIN_WIDTH = 100, -- larghezza minima del grezzo
|
||||
MIN_HEIGHT = 10, -- altezza minima del grezzo
|
||||
MAX_LENGTH = 18000, -- lunghezza massima del grezzo
|
||||
MAX_WIDTH = 4900, -- larghezza massima del grezzo
|
||||
MAX_HEIGHT = 400, -- altezza massima del grezzo
|
||||
STD_RAW_LENGTH = 10000, -- lunghezza standard del grezzo
|
||||
STD_RAW_WIDTH = 4000, -- larghezza standard del grezzo
|
||||
MID_GAP = 50, -- distanza tra i pezzi
|
||||
MID_SIC = 5, -- distanza di sicurezza di una lavorazione da un altro pezzo
|
||||
COLL_SIC = 5, -- distanza di sicurezza per collisioni
|
||||
CUT_SIC = 20, -- distanza di sicurezza per tagli
|
||||
CUT_EXTRA = 0, -- affondamento extra standard per tagli di lama e fresature
|
||||
CUT_EXTRA_MIN = 0, -- affondamento extra ridotto per tagli di lama e fresature
|
||||
NZ_MINA = 0.5, -- componente limite in Z normale di una faccia (-30deg)
|
||||
NZ_MINB = -0.4, -- componente limite in Z normale di un insieme di facce (-23deg)
|
||||
DRILL_TOL = 0.5, -- tolleranza tra diametro foro e diametro punta
|
||||
DRILL_VZ_MIN = 0.5, -- componente limite in Z del versore di un foro
|
||||
DRILL_VX_MAX = 0.866, -- componente limite in X del versore di un foro sulle facce laterali
|
||||
DRILL_OVERLAP = 5, -- sovrapposizione tra due mezze forature
|
||||
MILL_OVERLAP = 5, -- sovrapposizione tra due mezze fresature
|
||||
MAX_CLEAN_CRN30 = 60, -- massimo spessore per pulitura angolo con fresa 30deg
|
||||
MAX_CLEAN_CRN60 = 150, -- massimo spessore per pulitura angolo con fresa 60deg
|
||||
MILL_MAX_DEPTH_AS_MAT = true, -- massimo affondamento frese uguale ad altezza tagliente (max materiale)
|
||||
RAWCOL = { 255, 160, 32, 30}, -- colore del grezzo
|
||||
SIMUL_VIEW_DIR = 3, -- direzione di vista predefinita per la simulazione (1=NW, 2=SW, 3=NE, 4=SE)
|
||||
ORIG_CORNER = 'TL', -- angolo tavola per origine di battuta (BR (defualt), TR, BL, TL)
|
||||
NESTING_CORNER = 'TL', -- angolo di origine del grezzo per posizionamento pezzi (BR (defualt), TR, BL, TL)
|
||||
DELTA_X = 0, -- allontanamento in X dai riferimenti
|
||||
DELTA_Y = 0, -- allontanamento in Y dai riferimenti
|
||||
RAWPART_ROT = 180, -- rotazione del pannello grezzo rispetto alla descrizione BTL
|
||||
CUT_WITH_OUTLINE = true, -- taglio delle feature con l'outline del pezzo
|
||||
}
|
||||
|
||||
-- Aggiornamento con dati da TechnoEssetre7
|
||||
local sTs3Data = EgtGetStringFromIni( 'Wall', 'DATA_DIR', "C:\\TechnoEssetre7\\EgtData", EgtGetIniFile()).."\\Essetre-90480031.data"
|
||||
local sData = EgtGetSourceDir().."\\Ts3Data.lua"
|
||||
if EgtExistsFile( sTs3Data) then
|
||||
EgtCopyFile( sTs3Data, sData)
|
||||
local sTs3DataOld = sTs3Data..'.old'
|
||||
EgtEraseFile( sTs3DataOld)
|
||||
EgtRenameFile( sTs3Data, sTs3DataOld)
|
||||
end
|
||||
if EgtExistsFile( sData) then
|
||||
local Machine = dofile( sData)
|
||||
if Machine then
|
||||
if Machine.Offsets then
|
||||
WallData.DELTA_X = Machine.Offsets.DELTA_X or WallData.DELTA_X
|
||||
WallData.DELTA_Y = Machine.Offsets.DELTA_Y or WallData.DELTA_Y
|
||||
end
|
||||
if Machine.Trave then
|
||||
WallData.MIN_LENGTH = Machine.Trave.YMIN or WallData.MIN_LENGTH
|
||||
WallData.MIN_WIDTH = Machine.Trave.XMIN or WallData.MIN_WIDTH
|
||||
WallData.MIN_HEIGHT = Machine.Trave.ZMIN or WallData.MIN_HEIGHT
|
||||
WallData.MAX_LENGTH = Machine.Trave.YMAX or WallData.MAX_LENGTH
|
||||
WallData.MAX_WIDTH = Machine.Trave.XMAX or WallData.MAX_WIDTH
|
||||
WallData.MAX_HEIGHT = Machine.Trave.ZMAX or WallData.MAX_HEIGHT
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
-------------------------------------------------------------------------------------------------------------
|
||||
local function GetOrigCorner( RefPos)
|
||||
if RefPos == 1 or RefPos == 2 or RefPos == 3 then
|
||||
return 'TL'
|
||||
elseif RefPos == 4 or RefPos == 5 or RefPos == 6 then
|
||||
return 'BL'
|
||||
elseif RefPos == 7 or RefPos == 8 or RefPos == 9 then
|
||||
return 'TR'
|
||||
elseif RefPos == 10 or RefPos == 11 or RefPos == 12 then
|
||||
return 'BR'
|
||||
else
|
||||
return 'TL'
|
||||
end
|
||||
end
|
||||
WallData.GetOrigCorner = GetOrigCorner
|
||||
|
||||
---------------------------------------------------------------------
|
||||
return WallData
|
||||
@@ -0,0 +1,9 @@
|
||||
-- %TABLE_NAME%.lua by Egaltech s.r.l. %DATE_TIME%
|
||||
-- Gestione dati lavorazioni per Travi
|
||||
|
||||
-- Tabella per definizione modulo
|
||||
local %TABLE_NAME% = {
|
||||
}
|
||||
|
||||
---------------------------------------------------------------------
|
||||
return %TABLE_NAME%
|
||||
Reference in New Issue
Block a user