반응형

프로그램 실행하다보면 종종 격는 일입니다.
응답없음 ...
창을 닫고 다시 할때도 있고 어쩔땐 힘들게한 프로그램 다 날아가서 황당 ....닫지도 못하고 기다려보기도 하고 ㅎㅎㅎㅎ 다 소용 없죠?!
그런데 이방법을 쓰면 응답없음이 해결 됩니다.
프로그램도 안날아가고 하던거 이어서 계속 할 수 있어요.
아래로
.....쪽지
.
.
.


.


.....

..
..
















.

.
.
.
.
.
.
.
.
.
...











..

....



.


..





.....










..





...

.






.

...
시스템 응답없음 에서 오른쪽 마우스 클릭
파일 위치에서 실행 하시면 해결 됩니다.

반응형
Posted by max2017
:
반응형


사용목적:

신속 정확하게 공구셋팅을 도와주며 입력 실수로 인한 사고를 예방 할 수 있습니다.

기준공구 사용하여 공구셋팅하는 매크로입니다.

주의

 

사용중 리셋은 오작동의 원인이 될 수 있음으로 주의 합니다.

 

사용 환경 ( FANUC 31i /18i/0i)

 

달라진 점 (업그래이드)

1: cancel 기능  추가 (z축을 전혀 움직이지않은 상태에서 그대로 스타트버튼을 누르면 취소됩니다.)

2: 길이보정 옵셋값 리셋 기능 (길이보정값이 입력되면 자동으로 보정값의 옵셋값은 0으로 최기화 됩니다)

3: z축 오작동 방지 (z축이동 지령전 항상 g28 z0 원점 복귀 하도록 하였습니다.)

 

프로그램 기준은 31i 16호기 입니다.

 

사용 방법

MDI 모드에서 작동 

(여러개 동시에 셋팅할경우)

M66 H1  ;

M66 H5  ;

M66 H10 ;

M66 H20 ;

M22 ;

 

M22지령은  공구셋팅 작업을 종료하고자 할때 합니다.

 

xe)

MDI 모드에서 M66 H1;    시작버튼

1. 기준공구 호출 23번 공구가 나옵니다

2. 배드가 하이프리세터 고정 위치로 자동 이동 합니다. 

3. 화면에 매새지가 나오면 조그모드 또는 핸들모드로 Z 0 점 터치 

4. 다시 MDI 모드로가서 시작버튼 누릅니다.

5.스핀들 원점 복귀하면서 툴채인지 H1은 즉 T1 번 공구가 나옵니다.

6. 화면에 매새지가 뜨면 조그모드 또는 핸들모드로 공구 0점 터치를 합니다.

7.다시 MDI 모드로가서 시작버튼 느루면 자동으로 길이보정값 H가 입력 됩니다.

(여기까지가 기본 동작입니다.)

8. 마지막에 MDI 모드에서 M22; 입력하면 Y축 원점 복귀하며 종료합니다.

9.M22; 입력하지 않으면 공구 셋팅모드 상태는 지속합니다.,

10. 기준공구는 공구 셋팅 시작시 첫회에만 호출합니다.

 

<매크로 설명>

 

M66 은 공구 셋팅 마크로 호출 번호이며

H 값은 사용할 공구와 옵셋 번호입니다.

 M66 H1 ;

단독 지령시 첫 공구로 기준공구 호출합니다

기준공구는 T23 으로 하였으며

기준공구 제로점을 터치후  각각의 공구길이를 측정하여

자동으로 길이보정값을 입력하여 줍니다.

공구 셋팅을 종료하고자 할때에는 M22 를 입력합니다,.

 

<매크로 등록 방법 >

 

MDI 모드 에서 OFS/SET 버튼누르고 화면메뉴에서 설정으로 들어 가서

파라메타 쓰기 값=1을 입력합니다.

다음으로 SYSTEM 버튼 파라메타 검색 3202= NE9=0 을 입력

파라메타 검색

6080= 66 입력

6081= 22 입력

그리고나서 프로그램 입력 합니다.

EDIT 모드에서 아래의 프로그램을 머신으로 전송 합니다.

 

O9020 은 공구 길이보정 메인 매크로이며

O9021 은 공구 길이보정 서브 매크로 입니다.

 

 

< 매크로 프로그램 .>

 

 

%
O9020(M66 H?=SET/M22=END)
IF[#11GT0]GOTO1
GOTO3
N1
IF[#110EQ1]GOTO2
M5
G91G28Z0.
T23

M98P9001
G90G0G53Y-600.T#11
G91G0Z-250.
G91G1Z-100.F1000
G4P500
#112=#5023
#3006=1( Z ZERO PRESET )
#113=#5023
IF[#112EQ#113]GOTO4
#502=#113
G91G1Z10.F500.
G91G28Z0.
N2
IF[#110EQ1]THEN#113=#502
T#11
M98P9001
G91G28Z0.
G91G0Z-200.
G4P500
#114=#5023
#3006=1( TOOL H OFFSET )
#115=#5023
IF[#114EQ#115]GOTO5
#[2200+#4120]=[#113-#115]*[-1]
#[2000+#4120]=0
G91G1Z10.F500
G91G28Z0.
#110=1
GOTO6
N3
#3000=1(TOOL "H" NUMBER ?)
N4
G91G28Z0.
G91G28Y0.
#110=0
#3000=1 (CANCEL CLOSE)
GOTO6
N5
G91G1Z10.F500
G91G28Z0.
#110=1
#3006=1 (NEXT TOOL)
N6
M99
%

반응형
Posted by max2017
:
반응형

MAKE; KIM CHANG SUB [김창섭]

사용목적:

신속 정확하게 공구셋팅을 도와주며 입력 실수로 인한 사고를 예방 할 수 있습니다.

 

기준공구 사용하여 공구셋팅하는 방법 입니다.

머신공구 1번부터 40번까지 모두 셋팅해야 할 경우 아래의 프로그램을 사용 합니다.

 

기능설명

첫회 기준공구 한번만 나오며 나머지 공구는 낮은 자리수부터 순차적으로

자동호출되며 길이보정값을 자동으로 입력해주고

공구길이보정 작업을 반복하여 마지막공구에서 종료하는  프로그램입니다.

 

AUTO 모드에서 사용방법

 

%
O6000( TOOL SETTING PROGRAM )
M5
G91G28Z0.

#125=23        (T23번은 기준공구이며 이곳을 원하는 공구번호로 변경하여 사용 합니다.)

#126=40        (머신기계 마지막 공구번호가 25인경우40을 25로 수정합니다.
T#125M6    

G0G90G53Y-500.X-300.   (하이프리세터가 놓여질 기계좌표값을 입력 합니다.)

#3006=1( Z ZERO PRESET )   (화면에 이 메새지가 보이면 라피드모드와 핸들을 이용하여 0점을 맞춘후 AUOT모드로 가서 스타트합니다)
#100=#5023
#1=1
WHILE[#1LT#126]DO1  
IF[#1EQ#125]THEN#1=#125+1   

T#1M6
G0G90G53Y-500.X-300.   (하이프리세터가 놓여질 기계좌표값을 입력 합니다.)

G91G0Z-100.

#3006=1( TOOL H OFFSET )   (화면에 이 메새지가 보이면 라피드모드와 핸들을 이용하여 호줄한 공구 0점을 맞추고 AUTO모드에서 스타트 버튼 누르면 H 값이 자동입력되고 다음 공구가 나옵니다.
#101=#5023
#[2200+#4120]=[#100-#101]*[-1]

#[2000+#4120]=0
G90G28Z0.

#1=#1+1
END1
N3
M30
%

 

 

반응형
Posted by max2017
:
반응형

워크좌표 설정 후 간혹 워크옵셋 값을 초기화 하지않아 이전 작업에 사용했던 보정 값으로 인해 불량발생의 원인이 됩니다. 그래서 워크좌표 설정시 워크옵셋의 보정값을 자동으로 초기화 해주는 변수를 워크좌표 설정매크로에 추가 합니다.

#5201=0 (x좌표

#5202=0 (y좌표

위의 변수 코드를 매크로 선두에 추가합니다.

ex)

O9010(G101);

#5021=0

#5202=0

M5

G90G0G28Z0.

...

...

..

M99

%

기타 워크좌표 설정 매크로도 선두부분에 추가하여 사용할수 있습니다.

 

※ 워크좌표 설정시 작업자의 부주의로 인한 모든 실수를 최소화하기 위해

반응형
Posted by max2017
:
반응형

일부 머시닝에서 현재 툴이 호출 하려는 툴과 같을 때 알람이 발생 합니다.

이것을 매크로를 이용하여 우회 하는 방법을 쓸 수 있습니다.

방법은 현재 툴이  무엇인지 검출하고 호출하려는 출과 같은지 비교하여 같을때 분기 하도록

하면 됩니다.

 

ex) 만약이라는  IF 명령을 이용하여 무엇이 다음과 같다면 (EQ) 분기하라 GOTO1 는 코드를 이용 합니다.

     %

     O9001N (M06) 

     IF [#4120 EQ #20] GOTO1   

     T#20 M6

     N1

     ;

     ;

     ;

     ;

     M99

     %

 

 

반응형
Posted by max2017
:
반응형

추가 기능

1. 단독 셋팅

2. 복합 셋팅

3. 셋팅좌표간 자동이동

4. 측정값 메모리 확인

G101 코드

G101 에서 한쪽 모서리 셋팅시 X 와 Y 중 하나만 필요할때

MDI창에서 G101 X1;  하면 X좌표값만 셋팅 됩니다.

그리고 G101 Y1; 하면 Y좌표값만 셋팅 됩니다.

 

G102  /  G103

G102 에서 중심 셋팅시 X 와 Y 중 하나만 필요할때

MDI창에서 G102 X1;  하면 X좌표값만 셋팅 됩니다.

그리고 G102 Y1; 하면 Y좌표값만 셋팅 됩니다.

좌표간 자동이동 방법은 G102 X1000 Y600 Z200 ;

X와Y값으로 재료 크기값을 입력하고 특정 높이값으로 이동을 원할때

Z값을 입력 할 수 있고 Z값 생략하면 자동 기본 Z값은 100 입니다.

그런데 만약 X좌표값만 셋팅을 하고 X좌표간 자동 이동을 원할때는

G102 X1000 Y0 ; 이렇게 입력합니다.(Y축은 G102 Y1000 X0 ;)

 

복합사용

 

MDI 에서

G101 X1;

G102 Y600 X0;

%

 

( X좌값은 측면 기준이며 Y좌표값은 양센터 중앙이며 셋팅시 Y좌표간 600 자동 이동 합니다.)

 

 

 

 

MAKE; KIM CHANG SUB [김창섭]

사용목적:

신속 정확하게 워크좌표 셋팅을 도와주며 좌표 자동연산 입력으로 계산할 필요가 없으며

입력 실수로 인한 사고를 예방 할 수 있습니다.

 

사용 환경 ( FANUC 31i /18i/0i)

 

프로그램 기준은 18i 7.6호기 입니다.

 

 

지령방법( X 와  Y 둘다 셋팅시)

MDI 모드에서

G101;       OR     G101 B55;

G102;       OR     G102 B55;

G103;       OR     G103 B55;

G45 좌표는 상시임으로 B코드 생략함니다.

 

 <매크로 등록 방법 >

 

MDI 모드 에서 OFS/SET 버튼누르고 화면메뉴에서 설정으로 들어 가서

파라메타 쓰기 값=1을 입력합니다.

다음으로 SYSTEM 버튼 파라메타 검색 3202= NE9=0 을 입력

파라메타 검색

6050= 100 입력

6051= 101 입력

6052= 102 입력

6053= 103 입력

그리고 EDIT 모드에서 DNC 프로그램을 이용하여 아래의 프로그램 입력 합니다.

 

O9010 은 G100 매크로프로그램 입니다.

O9011 은 G101 메인 매크로프로그램 입니다.

O9012 은 G102 메인 매크로프로그램 입니다.

O9013 은 G103 메인 매크로프로그램 입니다.

O9100 은 G54~59 서브 매크로프로그램 입니다.

O9200 은 G102/ G103 서브 매크로프로그램 입니다.

 

 

<매크로프로그램>

%

O9010(G100 SELF MOTION)

G91G28Z0.

T30 M98P9001

S800M3

M99

%

G100 기능 설명

MDI 모드에서 G100; 입력후 스타트 버튼 누르면 T30 번 아큐센터가 나오며

회전하는 기능을 합니다.

 

%
O9011(G101)
M98P9100
#3006=1(1 POINT START)
#120=#5021
#121=#5022
IF[#25EQ1]GOTO20
S800M3
#3006=1(2 X TOUCH)
#124=#5021
IF[#124LT#120]GOTO3
#[1+#137]=#124-5
GOTO4
N3#[1+#137]=#124+5
N4M5
IF[#124GT#120]THEN#122=10
IF[#124LT#120]THEN#122=-10
G91G1X#122F500.
G91G0Z50.
#5201=0
IF[#24EQ1]GOTO21
N20
S800M3
#3006=1(3 Y TOUCH)
#125=#5022
IF[#125LT#121]GOTO5
#[2+#137]=#125-5
GOTO6
N5#[2+#137]=#125+5
N6M5
IF[#125GT#121]THEN#123=10
IF[#125LT#121]THEN#123=-10
G91G1Y#123F500.
G91G0Z50.
#5202=0
IF[#25EQ1]GOTO22
G90G0X0.Y0.
GOTO23
N21
G90G0X0.
GOTO23
N22
G90G0Y0.
N23
G4P1500
G91G28Z0.
M99
%

 

 

%
O9012(G102)
#500=134
M98P9100
M98P9200
M99
%

 

 

%
O9013(G103)
#500=135
M98P9100
M98P9200
M99
%

 

 

%
O9100(G54/G59)
M5
G91G28Z0.
IF[#4120EQ0]GOTO1
T0
M98P9001
N1
IF[#2EQ55]THEN#137=5240
IF[#2EQ56]THEN#137=5260
IF[#2EQ57]THEN#137=5280
IF[#2EQ58]THEN#137=5300
IF[#2EQ59]THEN#137=5320
G#2
IF[#2GT54]GOTO2
#137=5220
G54
N2
M99
%

 

 

%
O9200 (G102/G103)
IF[#500EQ122]THEN#134=10
IF[#500EQ122]THEN#135=-10
IF[#500EQ123]THEN#134=-5
IF[#500EQ123]THEN#135=5
#124=#24
#125=#25
#126=#26
IF[#24EQ1]GOTO20
IF[#25EQ0]GOTO20
S800M3
#3006=1(1 Y+ TOUCH)
#129=#5022
#127=[#125+40]
M05
G91G1Y#134F500.
IF[#500EQ123]GOTO1
IF[#126GT100]GOTO10
G91G0Z100.
GOTO11
N10
G91G0Z#126
N11
IF[#127LE40]THEN#127=0
G91G0Y-[#127]
N1
G90
S800M3
#3006=1(2 Y- TOUCH)
#120=#5022
#136=#129+#120
#511=[#129-#120]-10
#107=#136/2
#[2+#137]=#107
#5202=0
M05
G91G1Y#135F500.
IF[#500EQ123]GOTO2
IF[#126GT100]GOTO12
G91G0Z100.
GOTO13
N12
G91G0Z#126
N13
N2
G90G0Y0.(Y=OK)
N20
IF[#25EQ1]GOTO21
IF[#24EQ0]GOTO21
S800M3
#3006=1(3 X- TOUCH)
#130=#5021
#128=[#124+40]
M05
G91G1X#135.F500.
IF[#500EQ123]GOTO3
IF[#126GT100]GOTO14
G91G0Z100.
GOTO15
N14
G91G0Z#126
N15
IF[#128LE40]THEN#128=0
G91G0X#128
N3
S800M3
#3006=1(4 X+ TOUCH)
#131=#5021
#132=#130+#131
#121=[#130-#131]*[-1]
#510=[#121-10]
#133=#132/2
#[1+#137]=#133
#5201=0
M05
G91G1X#134F500.
IF[#500EQ123]GOTO4
IF[#126GT100]GOTO16
G91G0Z100.
GOTO4
N16
G91G0Z#126
N4
IF[#24EQ1]GOTO22
G90G0X0.Y0.
N22
G90G0X0.
N21
G4P1500
G91G28Z0.
#3006=1 (X/Y SIZE VIWE? START)
#3006=1 (SETING->SOFTKEY->MACRO)
#3006=1 (X=510,Y=511 SIZE VIEW)
G91G28Y0.
M99
%

 

 

 

 

반응형
Posted by max2017
: