Unlimited Part Sizes With This Genius Macro Program

preview_player
Показать описание
Learn Macro Programming on a Swiss CNC Machine. Macros can use only one line of code to make several different lengths or optional features on any part. CNC machining done on Torno's GT 32.

0:00 Insane Roughing Cut on Tornos Swiss Machine
0:33 Writing Macros on a CNC Machine
1:57 Macro Programming Length
3:00 IF statement in Programming
4:02 In depth breakdown of Macro Code
7:04 Writing out Code on that is usually done by Tornos’ TISIS software
7:25 Running the Macro on Tornos GT 32
9:11 Member Shoutout
9:45 Quoting Quantities for machining parts

Join this channel to get access to perks:

Help us fund FREE Education by purchasing tools seen in our videos here:

Create your free CNCEXPERT profile here:

FREE CNC Machining Academy:

FREE Aerospace Academy:

FREE Grinding Academy:

___
___

Follow us on Instagram:

Like us on Facebook:

Join the conversation on our Facebook Group:

Connect with us on LinkedIn:

___
___

THANK YOU to our Partners who make this content possible:

#Machining #Machinist #Engineering #3DPrinting
Рекомендации по теме
Комментарии
Автор

%
O4000(<Macro Video 2+A>)
(*** SAVING PART VARIABLES ***)

#600 = 1. (Part OAL)
#601 = 1 (OPTION B? 0=NO 1=YES)

G800 A1.125 B #600 C [ #600-.5 ] D0.3 E.003 F0.0155
(A: BAR DIAMETER)
(B: LENGTH OF PART)
(C: PART PICKOFF LENGTH)
(D: FEEDING ALLOWANCE)
(E: FRONTWORK FACING ALLOWANCE)
(F: BACKWORK FACING ALLOWANCE)
(H: LENGTH PINCHES SPINDLE FOR WORK WITHOUT GUIDEBUSH)
(I: INTERNAL DIAMETER)
(J: QUANTITY OF PARTS BY CLAMPING)
(K: QUANTITY OF FEEDING PER PART)
()
(*** SAVING CUT VARIABLES***)
G801 A1100 B0.118 C0 D97 E2000 F0.0035
(A: CUTOFF TOOL NO + CORRECTOR)
(B: CUTOFF TOOL WIDTH)
(C: CUTOFF TOOL ANGLE)
(D: SPINDLE MODE 97=G97 96=G96)
(E: SPINDLE SPEED BASED ON ARG D)
(F: INITIAL FEED RATE)
(I: SPINDLE SPEED LIMIT)
(J: INCREMENT OF CHIP BREAKING)
(K: DEAD TIME TO BREAK THE CHIP)
(M: WITHDRAWAL TO BREAK THE CHIP)
()
(*** SAVING DWELL VARIABLES ***)
G802 A0.5 B0.5 C0.5 D0.5 E1 F0.5
(A: DWELL AFTER OPENING COLLET S1)
(B: DWELL AFTER CLOSING COLLET S1)
(C: DWELL AFTER OPENING COLLET S4)
(D: DWELL AFTER CLOSING COLLET S4)
(E: DWELL AFTER STOP PUSHED BARLOADER)
(F: DWELL BEFORE CLOSING COLLET S1 WHILE FEEDING MATERIAL)
()
(*** SAVING ELEMENTS MACHINE VARIABLES ***)
G803 A2 B0 C1
(A: GUIDEBUSH TYPE 2: MOTORIZED GUIDEBUSH 3: WITHOUT GUIDEBUSH 3.1: WITHOUT GUIDEBUSH TYPE2 100: NOT STANDARD)
(B: BARLOADER TYPE 0: ANY 20 : MANUAL 100: NONE)
(C: TYPE OF EJECTION 1: EJECTOR 2: LONG PART DEVICE WITHOUT CYLINDER 100: NONE)
()
M9000
(*** INITIALISATION ***)
M10
M82
/M8
G4 X1
G900
M9001
M9002
(*** AXIS REF ***)
G28 U0
G28 V0
(*** INITIAL CUTOFF ***)
G910
M9003
(*** START LOOP ***)
N1 M120
(*** END OF BAR TEST ***)
G913
G930
M9004
(*** FEED NEW PART ***)
G912 B500
G0 W0.00787 (RETRACT THE BAR IN Z)
G0 Z-.75 T0
G0 X1.33858 T110 D0 (RETRACT THE CUT OFF TOOL X)
M9005
(*** MACHINING ***)
/M8
(TURN)
G0 Y0 T112 M103 S8000 P1
M45
M600
G0 Z0.0 X [ #500+0.02 ]
G1 X-.05 F.003
X.3, R.025 F.001
X.375, A150., R.025
Z-.26
X1.123
X1.129 W-.03
G0 X1.2
Z.1
G28 U0


(GROOVE)
G0 Y0 T220 S5000 M103 P1
G0 X1.2 Z-.25
X.4
G1 X.3 F.002
G0 X.42
W-.01
G1 X.375
X.355 W.01
G0 X.42
W.01
G1 X.375
X.355 W-.01
G0 X.45
G28 U0


(TURN 2ND SECTION)
G0 Y0 T112 S8000 M103 P1
G0 X1.2 Z-.23
X.4
G1 X.375 Z-.23 F.001
Z- [ #600-.25 ], R.01
X1.120, R.025 F.005
Z- [ #600+.05 ]
X1.129 W-.03
G0 X1.2
G28 U0


IF [ #601 EQ 0 ] GOTO 1234


(GROOVE)
G0 Y0 T220 S5000 M103 P1
G0 X1.2 Z- [ #600-.25-.1 ]
X.4
G1 X.3 F.002
G0 X.4
W-.01
G1 X.375
X.355 W.01
G0 X.4
W.01
G1 X.375
X.355 W-.01
G0 X.45
G28 U0


N1234

M601
M46

()
()
M9200
(*** CUT-OFF PREPARATION ***)
G97
G0 X1.33858 Y0 T110 D0 M103 S5000 P1
G911

(G0Z-[#600+.787+.01])

M9201
M9202
G1 G95 X0 F.006 (CUTOFF)
M9203
G1 X-0.03937 F0.00118 (END OF CUTOFF)
G97 (CONSTANT CUT-OFF CANCELLATION)
(*** END LOOP ***)
M121
M9204
M9
M105
M1105
M2105
M9205
M0 (STOP A END OF CYCLE)
/M8
G4 X1
M9206
M99 P1
M2

O4000(<Macro Video 2+B>)
M9000
(*** INITIALISATION ***)
M10
G900
M702 M2 M22 (Z4 TORQUE LIMITER VALUE)
M702 M3 M1181 (Z4 SERVO-LAG VALUE)
M9001
(*** AXIS REF ***)
G28 W0 (REF Z4)
G28 U0 V0 (REF X4 Y4)
M9002
G919
M9003
(*** START LOOP ***)
N1 M120
M9004
G55
M405
M9005
(*** MACHINING ***)
G55
G28 W0
G0 T540 Y0 X-1.2 S5000 M404 P4
Z0
G1 X.05 F.002
G0 X-1. Z.05
G1 Z0
X-1.12, R.025
U-.003 W-.06
G0 X-1.2 Z.1
M405 P4
G28 W0
()
()
(*** PART EJECTION ***)
G55 (Z4 ZERO OFFSET FOR BACKWORK MACHINING)
M405
G28 W0 (REF Z4)
G0 X0 T500
M11 (OPEN THE COLLET S4)
G4 X0.5
M84
M85
G4 X0.2
G28 W0 (REF Z4)
G28 U0 (REF X4)
M9200
M9201
(*** PART PICKOFF ***)
G915 (SHIFTING FOR WORK IN OPERATION)
G97
G0 X0 Z0.07874 T400 M404 S5000 P4 (APPROACH BACK SPINDLE)
M418 (SYNCHRO PHASE)
M702 M4 M1 (TORQUE LIMIT Z4)
M702 M5 M1 (ENABLE SERVO-LAG CHECK Z4)
G924 (PART PICKOFF)

(G0Z-[#600-.5])

M9202
M9203
G1 G94 W0.07874 F78.74016 (CHECK BREAKAGE CUTOFF TOOL)
M702 M5 M0 (Z4 DISABLE SERVO-LAG CHECK)
M702 M4 M0 (Z4 TORQUE LIMIT CANCELLATION)
G95 (FOR LOOP START)
G28 W0 (RETRACT BACK SPINDLE)
(*** END LOOP ***)
M121
M9204
M405
M5105
M9205
M0 (STOP A END OF CYCLE)
M9206
M99 P1
M2

TITANSofCNC
Автор

I'm a CNC machinist from switzerland. But in a wood furniture manufacture. I also wrote similar macros for furniture parts and house doors. So we're able to take the measurment at the customers house for example how large and deep the wardrobe has to be. The macro just turns the external dimensions of the furniture in to a program for each part. Like an excel-file with "if-then-function", all the necessary holes and millings were adjusted automaticaly. You remember the tour at the Tornos factory, where every working process is totally streamlined for maximum efficency? In switzerland it is necessary that allmost every manufacter works like this. As well cabinet makers and carpenters. Otherwise the products are too expensive.
Love your chanel!

konradkoller
Автор

I don’t understand anything about programming but I love to watch everything on this channel, you guys are awesome 🤩 CNC is mesmerizing !

CyberscoutX
Автор

I love following this channel. Everyone is so informative, professional, and easy to understand. I am a relatively young machinist rising through the ranks in Canada at just 20 years old. (just finished level 2 of my apprenticeship) I hope to one day... run my own shop

Great video Titan & team!

Truckers
Автор

Dang bro, Titan changed your life, sent you around the world seeing all kinds of cool stuff. But you absolutely earned it with your knowledge in Swiss machining. Im really happy for you friend. Much Love from Dallas TX.

AndJusticeForAll...
Автор

Great video Donnie! You definitely help make macros seem less intimidating. Very practical and helpful information!👏👏

markdavis
Автор

I do exactly this at my shop! We have multiple lengths for shafts on a flange. Using macros we can adjust the part length with 1 number adjusted in the program. Its fantastic.

halfhappy
Автор

Always enjoy the funny stuff at the end. Worth waiting for.

deanavitale
Автор

Hey dude great video, it’s so reassuring when I see someone doing stuff that is so similar to my own approach.
I use macros all the time on our regular machines. I bought a book on it years ago and it just makes so much sense to use parametric programming on similar parts.
I also like to take a more modular approach, writing sub programs and calling them whenever I want them. It just makes so much sense for the type of work we do.

tj
Автор

i've been a screw machine programmer for close to a year now and these vids are fantastic, fully agree about writing out every constant in your program even if it makes the code longer (human readability is important), i've already been looking for an excuse to try macro variables and this only makes me want to try it more

curiouskarl
Автор

Hi, I'm spanish machinist programer and I use to use Macros in all machines I code. I did 3d surfaces, coordinate shift and a lot more. Thanks for the video

abelmartinez
Автор

To follow this better, I typed in:

B#600 =11:11 (Video length)
()
(F: INITIAL FEED RATE =DS.50

This played the entire 11:11 video at 50% DS
DS =(Donnie Speed)

Much easier for my slow mind to absorb. 😁

I can't begin to comprehend the amount of inputs on a complex part. One single digit entered incorrectly must create scrap metal rather quickly.
You guys are doing a fantastic job educating the masses and at the same time entertaining the rest of us.
👍👍👍

randywl
Автор

I like the way you explane every days stuff like it's something special. I made many of programms like this. In one program I change 13 differences on a part by canging one numer in my program

Kurtaurus
Автор

Kratje bier 🍻
I think the mathematics genius his name was Marco.
Due to a later spelling error, it is Macro 😂
Well done Donnie, writing the whole way of thinking in a Macro is way better....
I had some colleagues who wrote only Macros they even don't understand anymore the next time the parts were ordered 😵

piratiniwood
Автор

Excellent way to teach how to use macros, at my last job, i used to have STAR CNC, CITIZEN L20's i had to learn the hard way how to work out with macros and synchronize with sub spindles for shafts over from 3" to 24" using 1 or 2 single programs with macros ....

luisontiveros
Автор

Can you guys do more videos on setting up macros like this? I have seen them before but I always wonder how they were made. Can you do macros like this in CAM software?

coachingwinner
Автор

We do something like that in turning parts of different diameters on a lathe (Okuma). We call them "Variable Parameters", but it amounts to the same kind of functionality.

drafty
Автор

2:22 - months will pass, everyone would forget the details. Then someone would invoke that macro with a wrong value (less than 0.25’), and the machine would crash by moving below zero on Z axis. So - always check user inputs in your code!

AB-pboo
Автор

This is in Dutch and means crate of beer xD Greetings from the Netherlands! I've been watching you almost forever!

AmateurPlaysGames-ouon
Автор

ACB stands for 'Active Chip Breaker.' This breaks chips in a controlled manner, eliminating the accumulation of long, stringy chips, bird nests, etc. It's supposed to save the operator downtime from having to pause or stop the machine cycle in order to clear chip accumulations.

Sara-TOC