0  BEGIN PGM RS232 MM 
1  FN 9: IF +0 EQU +0 GOTO LBL 1
2  ; ################################
3  ; PROGRAM TO EXECUTE RS232
4  ; SERIAL INTERFACE COMMANDS
5  ; FOR IF59A2, IC56/IC57 + S/Z-PROBE
6  ; S-PROBE ACTIVATION IN MODE 'TC'
7  ; Z-PROBE ACTIVATION IN MODE 'DUO'
8  ;
9  ; 145718 / TOOL SETTING PROBE 1D / KN_KM / RD
10 ; HDH iTNC 530 SINCE 34049x 01
11 ;
12 ; 145722 / TOOL SETTING PROBE 1D / KN_KM / RD
13 ; HDH  TNC 320/620/640 SINCE 3405xx 01
14 ;
15 ; 146456 / TOOL SETTING PROBE 3D / KN_KM / RD
16 ; HDH iTNC 530 SINCE 34049x 01
17 ;
18 ; 146460 / TOOL SETTING PROBE 3D / KN_KM / RD
19 ; HDH  TNC 320/620/640 SINCE 3405xx 01
20 ;
21 ; VERSION V3CC-R001 / 01.01.17
22 ; @ COPYRIGHT BLUM-NOVOTEST GMBH
23 ; 2007-2017. ALL RIGHTS RESERVED.
24 ; ################################
25 ;
26 ; ================================
27 ; PARAMETER FILE: S_PROBE_0.TAB AND/OR Z_PROBE_0.TAB
28 ; Pxx=LINE NUMBER IN PARAMETER FILE
29 ; TRANSFER PARAMETER FROM CYCLE:
30 ; IN : Q95 =TYPE OF OPERATION
31 ;      Q96 =TYPE OF PROBE SYSTEM
32 ;      Q211=MODE TO ENABLE S-PROBE
33 ;      Q212=MODE TO DISABLE S-PROBE
34 ;      Q221=MODE TO ENABLE Z-PROBE
35 ;      Q222=MODE TO DISABLE Z-PROBE
36 ; OUT:
37 ; ================================
38 ; PARAMETER FILE: S_PROBE_0.TAB
39 ; MODE TO ENABLE S-PROBE: P11
40 ; Q211=-1111: IF59A2 ONLINE, 'TC_ON'
41 ; Q211=-1121: IF59A2 ONLINE, 'DUO_ON'
42 ; MODE TO DISABLE S-PROBE: P22
43 ; Q212=-1x11: x=STATUS IF59A2, 'TC_ON'+'DUO_OFF'
44 ; Q212=-1x21: x=STATUS IF59A2, 'DUO_ON'+'TC_OFF'
45 ; Q212=-1100: IF59A2 ONLINE,  'STANDBY'
46 ; Q212=-1000: IF59A2 OFFLINE, 'STANDBY'
47 ; ================================
48 ; ================================
49 ; PARAMETER FILE: S_PROBE_0.TAB OR Z_PROBE_0.TAB
50 ; MODE TO ENABLE Z-PROBE: P21
51 ; Q221=-1111: IF59A2 ONLINE, 'TC_ON'
52 ; Q221=-1121: IF59A2 ONLINE, 'DUO_ON'
53 ; MODE TO DISABLE Z-PROBE: P22
54 ; Q222=-1x11: x=STATUS IF59A2, 'TC_ON'+'DUO_OFF'
55 ; Q222=-1x21: x=STATUS IF59A2, 'DUO_ON'+'TC_OFF'
56 ; Q222=-1100: IF59A2 ONLINE,  'STANDBY'
57 ; Q222=-1000: IF59A2 OFFLINE, 'STANDBY'
58 ; ================================
59 ; PLEASE SETUP RS232 AT THE CONTROL:
60 ; CONNECT RS232 CABLE TO X27 - IF59A2
61 ; PLC: SETUP RS232 PARAMETER TO:
62 ; 9600 Baud, 8 Bit, No Parity, 1 Stop
63 ; MP5000   =0
64 ; MP5020.0 =131(dec)=%1000 0011(bin)
65 ; MP5030.0 =0
66 ; TNC: SETUP RS232 INTERFACE TO:
67 ; MODE OF OPERATION: EXT1
68 ; BAUDRATE EXT1:     9600
69 ; ASSIGN  PRINT:
70 ; ================================
71 ;
72 LBL 1
73 ; TYPE OF PROBE SYSTEM
74 ; Q96: 1=S-PROBE (SPINDLE PROBE)/ 2=Z-PROBE (TOOL MEAS. PROBE)
75 Q91 = Q211 * ( 2 - Q96 ) + Q221 * ( Q96 - 1 ) ; MODUS TASTSYSTEM ANWAEHLEN/~
 ENABLE S/Z-PROBE
76 Q92 = Q212 * ( 2 - Q96 ) + Q222 * ( Q96 - 1 ) ; MODUS TASTSYSTEM ABWAEHLEN/~
 DISABLE S/Z-PROBE
77 ;
78 ; TYPE OF OPERATION
79 ; Q95: 0/ 1/ 2/ 3/ 4/ 5/ 6
80 FN 9: IF +Q95 EQU +0 GOTO LBL 10 ; TASTSYSTEM ANWAEHLEN/ ENABLE S/Z-PROBE
81 FN 9: IF +Q95 EQU +1 GOTO LBL 10 ; TASTSYSTEM ANWAEHLEN/ ENABLE S/Z-PROBE
82 FN 9: IF +Q95 EQU +2 GOTO LBL 20 ; TASTSYSTEM EINSCHALTEN/ SWITCH ON~
 S/Z-PROBE
83 FN 9: IF +Q95 EQU +3 GOTO LBL 30 ; TASTSYSTEM AUSSCHALTEN/ SWITCH OFF~
 S/Z-PROBE
84 FN 9: IF +Q95 EQU +4 GOTO LBL 40 ; TASTSYSTEM ABWAEHLEN/ DISABLE S/Z-PROBE
85 FN 9: IF +Q95 EQU +5 GOTO LBL 50 ; REINIGUNG EIN/ CLEANING ON
86 FN 9: IF +Q95 EQU +6 GOTO LBL 60 ; REINIGUNG AUS/ CLEANING OFF
87 FN 9: IF +0 EQU +0 GOTO LBL 254
88 ;
89 ;---------------------------------
90 LBL 10
91 ; Q95=1: P11/P21=TASTSYSTEM ANWAEHLEN/ ENABLE S/Z-PROBE
92 ; RS232-COMMAND "/////M02.TO0/"
93 FN 16: F-PRINT PLC:\BLUM\RS232\M_IF59_ON.A / RS232:\IF59A2.A
94 Q90 = INT ( FRAC ( ABS Q91 / 100 ) * 100 ) ; -11xx
95 FN 9: IF +Q90 EQU +10 GOTO LBL 11
96 FN 9: IF +Q90 EQU +11 GOTO LBL 11
97 FN 9: IF +Q90 EQU +20 GOTO LBL 12
98 FN 9: IF +Q90 EQU +21 GOTO LBL 12
99 FN 9: IF +0 EQU +0 GOTO LBL 12
100 LBL 11
101 ; Q95=1: P11=TASTSYSTEM ANWAEHLEN/ ENABLE S-PROBE
102 ; RS232-COMMAND "/////O20.O11/"
103 FN 16: F-PRINT PLC:\BLUM\RS232\M_TC_ON.A / RS232:\IF59A2.A
104 FN 9: IF +0 EQU +0 GOTO LBL 254
105 LBL 12
106 ; Q95=1: P21=TASTSYSTEM ANWAEHLEN/ ENABLE Z-PROBE
107 ; RS232-COMMAND "/////O10.O21/"
108 FN 16: F-PRINT PLC:\BLUM\RS232\M_DUO_ON.A / RS232:\IF59A2.A
109 FN 9: IF +0 EQU +0 GOTO LBL 254
110 ;
111 ;---------------------------------
112 LBL 20
113 ; Q95=2: P13/P23=TASTSYSTEM EINSCHALTEN/ SWITCH ON S/Z-PROBE
114 ; RS232-COMMAND "/////O51/"
115 FN 16: F-PRINT PLC:\BLUM\RS232\M_START_ON.A / RS232:\IF59A2.A
116 FN 9: IF +0 EQU +0 GOTO LBL 254
117 ;
118 ;---------------------------------
119 LBL 30
120 ; Q95=3: P14/P24=TASTSYSTEM AUSSCHALTEN/ SWITCH OFF S/Z-PROBE
121 ; RS232-COMMAND "/////O50/"
122 FN 16: F-PRINT PLC:\BLUM\RS232\M_START_OFF.A / RS232:\IF59A2.A
123 FN 9: IF +0 EQU +0 GOTO LBL 254
124 ;
125 ;---------------------------------
126 LBL 40
127 ; Q95=4: P12/P22=TASTSYSTEM ABWAEHLEN/ DISABLE S/Z-PROBE
128 Q90 = INT ( FRAC ( ABS Q92 / 100 ) * 100 ) ; -11xx
129 FN 9: IF +Q90 EQU +10 GOTO LBL 41
130 FN 9: IF +Q90 EQU +11 GOTO LBL 41
131 FN 9: IF +Q90 EQU +20 GOTO LBL 42
132 FN 9: IF +Q90 EQU +21 GOTO LBL 42
133 FN 9: IF +Q90 EQU +0 GOTO LBL 43
134 FN 9: IF +0 EQU +0 GOTO LBL 43
135 LBL 41
136 ; RS232-COMMAND "/////O20.O11/"
137 FN 16: F-PRINT PLC:\BLUM\RS232\M_TC_ON.A / RS232:\IF59A2.A
138 FN 9: IF +0 EQU +0 GOTO LBL 44
139 LBL 42
140 ; RS232-COMMAND "/////O10.O21/"
141 FN 16: F-PRINT PLC:\BLUM\RS232\M_DUO_ON.A / RS232:\IF59A2.A
142 FN 9: IF +0 EQU +0 GOTO LBL 44
143 LBL 43
144 ; RS232-COMMAND "/////O10.O20/"
145 FN 16: F-PRINT PLC:\BLUM\RS232\M_STANDBY.A / RS232:\IF59A2.A
146 FN 9: IF +0 EQU +0 GOTO LBL 44
147 LBL 44
148 Q90 = INT ( FRAC ( ABS Q92 / 1000 ) * 10 ) ; -1x00
149 FN 9: IF +Q90 EQU +1 GOTO LBL 254
150 ; RS232-COMMAND "/////M00/"
151 FN 16: F-PRINT PLC:\BLUM\RS232\M_IF59_OFF.A / RS232:\IF59A2.A
152 FN 9: IF +0 EQU +0 GOTO LBL 254
153 ;
154 ;---------------------------------
155 LBL 50
156 ; Q95=5: P25=REINIGUNG MESSFLAECHE EIN/ CLEANING ON
157 ; PLEASE REPLACE 'L M0' BY CORRECT M-CODE
158 L M0
159 FN 9: IF +0 EQU +0 GOTO LBL 254
160 ;
161 ;---------------------------------
162 LBL 60
163 ; Q95=6: P27=REINIGUNG MESSFLAECHE AUS/ CLEANING OFF
164 ; PLEASE REPLACE 'L M0' BY CORRECT M-CODE
165 L M0
166 FN 9: IF +0 EQU +0 GOTO LBL 254
167 ;
168 ;---------------------------------
169 LBL 254
170 FN 20: WAIT FOR  SYNC
171 END PGM RS232 MM 
