H 2000 6021 0D C Inspection Software Lathes
H 2000 6021 0D C Inspection Software Lathes
H 2000 6021 0D C Inspection Software Lathes
for Fanuc 0, 6, 1015, 16, 18, 21T and iT, and Yasnac LX3 controllers
This document may not be copied or reproduced in whole or in part, or transferred to any other media or language, by any means, without the prior written permission of Renishaw plc. The publication of material within this document does not imply freedom from the patent rights of Renishaw plc. Disclaimer RENISHAW HAS MADE CONSIDERABLE EFFORTS TO ENSURE THE CONTENT OF THIS DOCUMENT IS CORRECT AT THE DATE OF PUBLICATION BUT MAKES NO WARRANTIES OR REPRESENTATIONS REGARDING THE CONTENT. RENISHAW EXCLUDES LIABILITY, HOWSOEVER ARISING, FOR ANY INACCURACIES IN THIS DOCUMENT. Trademarks RENISHAW and the probe emblem used in the RENISHAW logo are registered trademarks of Renishaw plc in the UK and other countries. apply innovation is a trademark of Renishaw plc. All other brand names and product names used in this document are trade names, service marks, trademarks, or registered trademarks of their respective owners.
By installing and/or using the Product you indicate your acceptance of the terms of this Licence. Renishaw grants the Licensee a Licence to use the Product on condition the Licensee accepts the following terms and conditions: 1. 2. All rights in and title to the Product are and shall remain vested in Renishaw and its licensors. Renishaw shall replace or repair the Product if it does not materially perform to specification under proper use within 90 days of delivery. This warranty does not apply where the Product has been modified in any manner that is not specifically described in the Product or in the installation or programming manuals supplied with the Product, or where the Product is used with probing systems that have not been produced by Renishaw. Except as stated in this paragraph, all warranties, conditions and terms implied by law are excluded. In particular, no warranty is given that the Product is bug or error-free. NOTE - LIMITATION OF LIABILITY IN CONNECTION WITH USE OF THE PRODUCT Renishaw does not exclude liability for personal injury or death caused by Renishaws negligence. Renishaws liability is limited to (a) the warranty contained in paragraph 2 and (b) direct losses up to a maximum of 50,000. Renishaw has no liability to the Licensee for any indirect, consequential or economic loss (including, without limitation, loss of data, profits or goodwill). The Product has been designed for use with Renishaws machine tool probing systems. Renishaw has no liability for the results of using the Product with another manufacturers machine tool probing systems. By accepting the terms of this Licence the Licensee agrees that this limitation of liability is reasonable. 4. The Licensee may not make any copies of the Product except as provided in this Licence or as permitted by applicable law. The Licensee is authorised to make a backup copy of the Product for security purposes. The Licensee must not remove any licence and copyright notices, labels or marks contained in the original and shall ensure all copies contain such notices without modification. If the Product contains electronic manuals the Licensee may print out the manuals in part or in full, provided that the print outs or copies are not supplied to any third party that is not an employee or contractor for the Licensee without Renishaws written permission The Licensee shall not reverse engineer, decompile, or modify the Product or re-use any components separately from the Product unless permitted by a specific instruction contained in the Product or the programming or installation manuals supplied with the Product or by applicable law provided that in the latter case, Licensee has first contacted Renishaw to request any information required to interface with Licensees other software. The Licensee shall not make the Product available to any third party in any manner whatsoever nor may this Licence and the Product be transferred to a third party without Renishaws prior written agreement. Any agreement by Renishaw is conditional on the permitted transferee agreeing to all terms of this Licence and the Licensee not retaining any copies of the Product. Where the Licensee is a reseller of Renishaws machine tool probing systems, Licensee may transfer the Product for ultimate use by an end user with Renishaws machine tool probing systems. Renishaw shall have the right to terminate this Licence immediately if the Licensee fails to comply with any of these terms and conditions. The Licensee agrees upon receipt of notice of termination from Renishaw to immediately return or destroy all copies of the Product in its possession or control. This Licence is governed by English law and the parties submit to the exclusive jurisdiction of the English courts.
3.
5.
6.
7.
8.
9.
Form 1
MACHINE DETAILS Machine description.......................................................................................................................... Machine type................................................................................................................................. Controller............................................................................................................................ Special control options................................................................................................................................. ................................................................................................................................. ................................................................................................................................. RENISHAW HARDWARE RENISHAW SOFTWARE
Inspection probe type ....................................... Inspection disk(s)..................................................... Interface type .................................................. ..................................................................................... ........................................................................................ Tool setting probe type .................................... Tool setting disk(s) ..................................................... Interface type .................................................. ..................................................................................... ......................................................................................... SPECIAL SWITCHING M-CODES (OR OTHER) WHERE APPLICABLE Dual systems only Switch (Spin) probe on ................................... Switch on inspection probe ..................................... Switch (Spin) probe off ................................... Switch on tool setting .............................................. Start/Error signal ............................................. Other .......................................................................... ...................................................................................... ADDITIONAL INFORMATION
Tick box if Form 2 overleaf has been filled in.
...................................................................................................... Installation engineer ............................ ......................................................................................................... ...................................................................................................... Date of training........................................ Customer's tel. no.................................................................... Customer's contact name..................................................
Form 2
The software product for which these changes are authorised is subject to copyright. A copy of this deviation sheet will be retained by Renishaw plc. A copy of the software amendments must be retained by the customer they cannot be retained by Renishaw plc.
Cautions
z z
ii
Contents
iii
Contents
Before you begin
Before you begin................................................................................................................. 1 Measurement values used in this manual .......................................................................... 2 Associated publications ...................................................................................................... 2 About the Inspection software ............................................................................................ 2 Software kit no. A-4012-0541 ............................................................................................. 2 File1: Probe horizontal cycles...................................................................................... 2 File2: Probe vertical cycles.......................................................................................... 3 File3: C-axis cycles...................................................................................................... 3 Macro memory requirements.............................................................................................. 3 Macro numbers and functions ............................................................................................ 4 Measurement errors ........................................................................................................... 5 Renishaw customer services .............................................................................................. 5 Calling Renishaw ......................................................................................................... 5
Chapter 1
Installing the software ...................................................................................................... 1-2 Using the Wizard ...................................................................................................... 1-2 Editing macros manually .......................................................................................... 1-2 Setting and adjusting the software................................................................................... 1-2
Chapter 2
Optional inputs
Chapter 3
Variable outputs
Table 1 Variable outputs with probe vertical.................................................................... 3-2 Table 2 Variable outputs with probe horizontal ............................................................... 3-2
Chapter 4
Probe protected positioning (probe vertical) O9610 ..................................................... 4-2 Probe protected positioning (probe horizontal) O9810................................................. 4-4
Chapter 5
Why calibrate a probe and stylus?................................................................................... 5-2 Single-sided calibration.................................................................................................... 5-2 Double-sided calibration .................................................................................................. 5-3
iv
Contents
Calibrating the probe length............................................................................................. 5-3 Calibration cycles............................................................................................................. 5-3 Calibrating the probe length (probe vertical) O9601..................................................... 5-5 Calibrating the stylus Z tool offset double-sided (probe vertical) O9602..................... 5-7 Calibrating the stylus ball radius double-sided (probe vertical) O9603 ....................... 5-9 Calibrating the stylus single-sided (probe vertical) O9604 ......................................... 5-11 Calibrating the probe length (probe horizontal) O9801 .............................................. 5-13 Calibrating the stylus X tool offset double-sided (probe horizontal) O9802 ............... 5-15 Calibrating the stylus ball radius double-sided (probe horizontal) O9803 .................. 5-17 Calibrating the stylus single-sided (probe horizontal) O9804..................................... 5-19
Chapter 6
X Z single surface measurement (probe vertical) O9611............................................. 6-2 Web/pocket measurement (probe vertical) O9612....................................................... 6-5 X Z single surface measurement (probe horizontal) O9811......................................... 6-8 Web/pocket measurement (probe horizontal) O9812................................................. 6-11
Chapter 7
Additional cycles
Storing multi-stylus data (probe vertical) O9630 .......................................................... 7-2 Loading multi-stylus data (probe vertical) O9631 ......................................................... 7-4 Storing multi-stylus data (probe horizontal) O9830 ...................................................... 7-6 Loading multi-stylus data (probe horizontal) O9831..................................................... 7-8
Chapter 8
C-axis cycles
C-axis find (probe vertical) O9650 ................................................................................ 8-2 C-axis find (probe horizontal) O9850............................................................................ 8-4
Chapter 9
Chapter 10
Customising the software .............................................................................................. 10-2 Editing the settings macro (O9524 or O9724)........................................................ 10-2 Setting #33.............................................................................................................. 10-3 Variable base number setting (#111 and #112) ..................................................... 10-3 Alarm settings (#110).............................................................................................. 10-3 Process alarms ....................................................................................................... 10-4 Work offset update tests ................................................................................................ 10-4
Contents
Use of macro variables .................................................................................................. 10-4 Local variables........................................................................................................ 10-4 Common variables.................................................................................................. 10-5 Common retained variables.................................................................................... 10-6
Chapter 11
General information
Tolerances ..................................................................................................................... 11-2 Experience values Ee .................................................................................................... 11-3 Reason for using this option ................................................................................... 11-3 Printing a macro output an example ........................................................................... 11-3
vi
Contents
z z
Associated publications
When you are using the Inspection software, you may find it useful to refer to the following Renishaw publications: z Probe systems Installation manual for machine tools (Renishaw part no. H-2000-6040). Probe software for machine tools data sheet (Renishaw part nos. H-2000-2289 and H-2000-2298).
The CD contains the following data: Probe horizontal cycles Probe vertical cycles C-axis cycles ReadMe File1 (40121191) File2 (40121192) File3 (40121193) (N-4012-1194)
File1: total amount of memory = 16 KB. File2: total amount of memory = 16 KB. File3: total amount of memory = 6 KB.
Measurement errors
When you fit your Renishaw probe into the machines shank/holder, the probes stylus may not be in the correct theoretical position. An error may mean the stylus is either above or below the centre line. Take care to minimise this error otherwise measurements will be taken across a chord and will not be a true diametral or radial dimension. The measuring cycles do not mathematically calculate on-centre errors. However, these errors are usually small, particularly when the probe and stylus have been calibrated on a diameter that is similar in size to the feature being measured. For a description of how to calibrate a probe and stylus assembly, see Chapter 5, Calibrating the probe.
z z
1-1
Chapter 1
This chapter describes how to load the Inspection software. It supplements the information described in the Software installation section of the installation manual titled Probe systems for machine tools (Renishaw part no. H-2000-6040) and the Readme file on the CD.
1-2
4.
Optional inputs
2-1
Chapter 2
Optional inputs
Many of the macros make use of standard optional inputs. Instead of describing them each time they are required, they are described once in this chapter. You will be referred to this chapter from other chapters whenever a standard optional input is required. Details of each non-standard optional input that is required by a macro is provided in the relevant macro description.
2-2
Optional inputs
Optional inputs
The examples given below assume that the controller has been configured for metric values (millimetres). The equivalent inch measurement values are shown in brackets. Ee e= Experience value. Specify the number of a spare tool offset where an adjustment value to the measured size is stored (see (see Chapter 11, General information). Example: E21. causes the experience value stored in tool offset 21 to be applied to the measured size. Ff f= This can be either one of the following: 1. The percentage feedback that is used when updating a tool offset (see Chapter 10, Settings, macros and variables) Enter a value between 0 and 1 (0 % and 100 %). Default: 1 (100 %). 2. The feedrate that is used in protected positioning macros O9610 and O9810 (see Chapter 4, Protected positioning cycles). Example: F3000 sets a feedrate of 3000 mm/min. (F120 sets a feedrate of 120 in/min.)
Hh
h=
The tolerance value of a feature dimension being measured. Example: For dimension 50.0 mm +0.4 mm 0 mm, the nominal tolerance is 50.2 mm with H.2. (For dimension 1.968 in +0.016 in 0 in, the nominal tolerance is 1.976 in with H.008.)
Mm
m=
The true position tolerance of a feature. This is a cylindrical zone about the theoretical position. Example: M.1 sets a true position tolerance of 0.1 mm. (M.004 sets a true position tolerance of 0.004 in.)
q=
This is the probe overtravel distance for use when the default values are unsuitable. The probe will then travel beyond the expected position when it searches for a surface. Default: Example: 4 mm (0.16 in) in the Z axis 10 mm (0.394 in) in the X axis. Q8. sets an overtravel distance of 8 mm. (Q.3 sets an overtravel distance of 0.3 in.)
Optional inputs
2-3
Rr
r=
This is an incremental dimension that is used on external features, such as bosses and webs, to give a radial clearance from the nominal target surface prior to a Z-axis move. Default: 5 mm (0.200 in). Example: R10. sets a radial clearance of 10 mm. (R.4 sets a radial clearance of 0.4 in.)
Rr
r =
This is similar to Rr, except that the clearance is applied in the opposite direction to force an internal boss or web cycle. Default: 5 mm (0.200 in). Example: R10.sets a radial clearance of 10 mm. (R.4 sets a radial clearance of 0.4 in.)
Ss
s=
The number of the work offset to be updated. S0 S1 to S6 S7 S8 The external work offset. G54 to G59. Update G10P0XZ. The incremental G50W- - move will be active until another G50 is read.
Example: S3 will set G56 Tt t= The tool offset that is to be updated. T<1000 T>1000 A milling tool is to be updated. A turning tool is to be updated.
Example: T1 = update the X-wear or Z-wear compensation of a milling tool. T1001 = update the R-wear compensation of a turning tool. Uu u= Upper tolerance limit. If this value is exceeded, no tool offset or work offset is updated and the cycle stops with an alarm. Where applicable, this tolerance applies to both size and position. Example: U2. to set the upper tolerance limit to 2 mm. (U.08 to set the upper tolerance limit to 0.08 in.)
Vv
v=
Null band. This is the tolerance zone where no tool offset adjustment occurs. Default: 0. Example: V.5 for a tolerance zone of 0.5 mm. (V.02 for a tolerance zone of 0.02 in.)
2-4
Optional inputs
Ww
w= W1. W2.
Print the output data. Increment the feature number only. Increment the component number and reset the feature number. Example: W1.
Variable outputs
3-1
Chapter 3
Variable outputs
This chapter lists the variable outputs that may be produced by some of the macros. You will be referred to this chapter from other chapters when a variable output is produced.
3-2
Variable outputs
# 136 # 137 Z position from start Size from start Z position Z position from start Size from start C position X error X error X error X error Z position
# 138
Size
Size
# 139 # 140 # 141 # 142 # 143 # 144 # 145 True position error Metal condition Direction indicator True position error Metal condition Direction indicator Z error Size error Z error Size error
C position
Z error Size error C error True position error Metal condition Direction indicator
Z error Size error C error True position error Metal condition Direction indicator
# 146
# 147
# 148 # 149
4-1
Chapter 4
As the probe moves around the workpiece it is important that the stylus is protected against a collision with the workpiece. This chapter describes how to use the protected positioning cycles. After they are set correctly, the probe will stop moving in the event of a collision.
4-2
Description
It is important to protect the probes stylus against damage should it collide with an obstacle as the probe moves around the workpiece. When this cycle is used, the machine will stop in the event of a collision.
Application
The probe is selected and moved to a safe plane. At this point the probe is made active. It then moves to a measuring position using this macro call. In the event of a collision the machine will stop. Either a PATH OBSTRUCTED alarm is generated or error flag #148 is set (see the Mm input).
Format
G65 P9610 Xx and/or Zz [ Ff Mm ] where [ ] denote optional inputs. Example: G65 P9610 Z10. F3000. M1.
4-3
Compulsory inputs
Xx and/or Zz z= The target position for the probe positioning move. x= The target diameter position for the probe positioning move.
Optional inputs
Ff f= The modal feedrate for all protected positioning moves. The feedrate will be modal to this macro and subsequent feedrate calls are unnecessary unless a change of feedrate is required. The maximum safe fast feedrate established during installation must not be exceeded. M1. This will set a probe trigger flag (but with no PATH OBSTRUCTED alarm). #148 = 0 No probe trigger. #148 = 7 Probe triggered.
Example
Proprietary G and M codes. T??? M?? G65P9610Z-10.X30.F3000 G65P9611X20.T3. M?? Select the probe. Switch on the probe. Protected positioning move. Single surface measure. Switch off the probe.
4-4
Description
It is important to protect the probes stylus against damage should it collide with an obstacle as the probe moves around the workpiece. When this cycle is used, the machine will stop in the event of a collision.
Application
The probe is selected and moved to a safe plane. At this point the probe is made active. It then moves to a measuring position using this macro call. In the event of a collision, the machine will stop. Either a PATH OBSTRUCTED alarm is generated or error flag #148 is set (see the Mm input).
Format
G65 P9810 Xx and/or Zz [ Ff Mm ] where [ ] denote optional inputs.
Example: G65 P9810 Z10. F3000. M1.
4-5
Compulsory inputs
Xx and/or Zz z= The target position for the probe positioning move. x= The target diameter position for the probe positioning move.
Optional inputs
Ff f= The modal feedrate for all protected positioning moves. The feedrate will be modal to this macro and subsequent feedrate calls are unnecessary unless a change of feedrate is required. The maximum safe fast feedrate established during installation must not be exceeded. M1. This will set a probe trigger flag (but with no PATH OBSTRUCTED alarm). #148 = 0 No probe trigger. #148 = 7 Probe triggered.
Example
Proprietary G and M codes. T??? M?? G65P9810X30.Z-10.F3000 G65P9811X20.T8 M?? Select the probe. Switch on the probe. Protected positioning move. Single surface measure. Switch off the probe.
4-6
5-1
Before a probe and stylus are used, they must be calibrated correctly. Only when they have been calibrated accurately can you achieve total quality control over your manufacturing process. This chapter explains why it is so important that the probe and stylus are calibrated and then describes how to use the macros that are provided to calibrate them.
5-2
Three different operations are used to calibrate a stylus. They are: z z z Calibrating single-sided. Calibrating double-sided. Calibrating the probe length.
Single-sided calibration
Single-sided calibration determines the error value for the stylus ball in relation to a known surface. This value is stored in the tool wear offset and is used automatically in the measuring cycles.
NOTE: Only one edge of the stylus is calibrated. Therefore, all subsequent measuring cycles must use only this calibrated edge.
5-3
Double-sided calibration
Double-sided calibration determines the stylus offset and the radius of the stylus ball. The offset is stored in the tool wear offset while the radius is stored in a macro variable. Both values are used automatically in the measuring cycles.
NOTE: Both edges of the stylus are calibrated. Therefore, measuring cycles that use both sides of the stylus can be used.
Calibration cycles
Eight calibration cycles are provided with the Inspection software. Four are for calibrating a probe positioned vertically and four are for calibrating a probe positioned horizontally. They may be used in conjunction with one another for complete calibration of the probe. The purpose of each macro is summarised below. Macros O9601 and O9801 Used to establish the length of the probe in the tool shank. Used to establish the stylus offset (for double-sided calibration only). Used to establish the radius values of the stylus ball (for double-sided calibration only). Used to establish the error value of the stylus ball (for single-sided calibration only).
For complete calibration of a probe system, use the macros as follows: z For double-sided calibration of a vertically mounted probe, use macros O9601, O9602 and O9603. For double-sided calibration of a horizontally-mounted probe, use macros O9801, O9802 and O9803.
5-4
For single-sided calibration of a vertically mounted probe, use macros O9601 and O9604. For single-sided calibration of a horizontally-mounted probe, use macros O9801 and O9804.
The Renishaw calibration cycles are split into separate cycles for flexibility.
5-5
Tt tool offset
Xx reference size
Description
The probe is positioned adjacent to a X-axis reference surface. When the calibration cycle is completed the active tool offset is adjusted to the reference surface.
Application
An approximate tool offset is loaded. The probe is positioned adjacent to the reference surface. When the cycle is run, the surface is measured and the tool offset is reset to a new value. The probe is then returned to the start position.
Format
G65 P9601 Xx Tt Example: G65 P9601 X50. T20
5-6
Compulsory inputs
Tt Xx t= x= The active tool offset number. The size of the reference surface.
Outputs
The active tool offset is set.
5-7
R A X X Z
Figure 5.2 Calibrating the stylus Z tool offset double-sided (probe vertical)
Description
Before the cycle is run, the probe is positioned either above a pre-machined web (A) or inside a pre-machined groove (B). When the cycle is completed, the tool offset is set to the centre of the stylus in the Z axis.
Application
Pre-machine either a web or a groove with a suitable tool so that the exact centre of the feature is known. Position the probe to the centre of the web or groove. When the cycle is run, two measuring moves are made to determine the Z offset of the stylus. The probe is then returned to the start position.
Format
G65 P9602 Zz Tt [ Rr Xx ] where [ ] denote optional inputs. Example: G65 P9602 Z50.005 T8. X50.
Compulsory inputs
Tt Zz t= x= The tool offset number that will be updated. The nominal size of the feature.
5-8
Optional input
Xx x= The absolute X axis measuring position when calibrating on an external feature. If this is omitted, a groove cycle is assumed.
Outputs
The Z tool offset will be updated to the centre of the stylus.
5-9
R A X X Z
Figure 5.3 Calibrating the stylus ball radius double-sided (probe vertical)
Description
Before the cycle is run, the probe is positioned either above a pre-machined web (A) or inside a pre-machined groove (B). When the cycle is completed, the radius values of the stylus ball are stored.
Application
The probe to be calibrated is positioned either above the web or inside the groove of known size. The position of the web or groove is not critical. When the cycle is run, two moves are made to determine the radius values of the stylus ball. The probe is then returned to the start position.
Format
G65 P9603 Zz [ Rr Xx ] where [ ] denote optional inputs. Example: G65 P9603 Z50.005 X50.
Compulsory input
Zz z= The nominal size of the reference web or groove.
5-10
Optional input
Xx x= The absolute X axis measuring position when calibrating on an external feature. If this is omitted, a groove cycle is assumed.
Outputs
The following data will be stored: #503 Stylus ball radius in Z.
5-11
B X OR Z
Description
Before the cycle is run, the probe is positioned adjacent to a Z axis reference surface. When the cycle is completed, the active probe tool offset is adjusted to the reference surface.
Application
An approximate tool offset is loaded. The probe is positioned adjacent to the reference surface. When the cycle is run, the surface is measured and the tool offset is reset to a new value. The probe is then returned to the start position.
Format
G65 P9604 Zz Tt Example: G65 P9604 Z0. T1.
Compulsory inputs
Tt Zz t= z= The active tool offset number. The position of the reference surface.
5-12
Outputs
The Z tool offset will be updated to the edge of the stylus.
5-13
Z Zz reference height
Description
The probe is positioned adjacent to a Z axis reference surface for calibration. When the cycle is completed, the active probe tool offset is adjusted to the reference surface.
Application
An approximate tool offset is loaded. The probe should be positioned adjacent to the reference surface. When the cycle is run, the surface is measured and the tool offset is reset to a new value. The probe is then returned to the start position.
Format
G65 P9801 Zz Tt Example: G65 P9801 Z10. T20
Compulsory inputs
Tt Zz t= z= The active tool offset number. The position of the reference surface.
5-14
Outputs
The active tool offset is set.
5-15
R A X X Z Z
Figure 5.6 Calibrating the stylus X tool offset double-sided (probe horizontal)
Description
Before the cycle is run, the probe is positioned in front of the diameter (A) or inside the bore (B). When this cycle is completed, the centre of the stylus is updated to the tool offset.
Application
Pre-machine either a hole with a suitable boring bar or a diameter with a turning tool. Position the probe as described above. When the cycle is run, two measuring moves are made to determine the X offset of the stylus. The probe is then returned to the start position.
Format
G65 P9802 Xx Tt [ Rr Zz ] where [ ] denote optional inputs. Example: G65 P9802 X50.005 T8. Z50.
5-16
Compulsory inputs
Tt Xx t= x= The tool offset number that will be updated. The nominal size of the feature.
Optional input
Zz z= The absolute Z axis measuring position when calibrating on an external feature. If this is omitted, a bore cycle is assumed.
Outputs
The X tool offset will be updated to the centre of the stylus.
5-17
R A X X Z Z
Figure 5.7 Calibrating the stylus ball radius double-sided (probe horizontal)
Description
Before the cycle is run, the probe is positioned either in front of the diameter (A) or inside the bore (B). When the cycle is completed, the stylus centre is updated to the tool offset.
Application
Pre-machine either a hole with a suitable boring bar or a diameter with a turning tool. Position the probe as described above. When the cycle is run, two measuring moves are made to determine the X radius values of the stylus ball. The probe is then returned to the start position.
Format
G65 P9803 Xx [ Rr Zz ] where [ ] denote optional inputs. Example: G65 P9803 X50.005 Z50.
5-18
Compulsory input
Xx x= The nominal size of the feature.
Optional input
Zz z= The absolute Z axis measuring position when calibrating on an external feature. If this is omitted, a ring gauge cycle is assumed.
Outputs
The following data will be stored: #500 Stylus ball radius in X (XRAD)
5-19
B X OR Z
Description
Before the cycle is run, the probe is positioned either above a diameter (A) or inside a diameter (B). When the cycle is completed, the edge of the stylus is updated to the tool offset.
Application
Pre-machine either a hole with a suitable boring bar or a diameter with a turning tool. Position the probe as described above and run the cycle. When the cycle is run, a measuring move is made to determine the X offset of the stylus. The probe is then returned to the start position.
Format
G65 P9804 Xx Tt where [ ] denote optional inputs. Example: G65 P9804 X50.005 T8.
Compulsory inputs
Tt Xx t= x= The active tool offset number. The nominal diameter of the feature.
5-20
Outputs
The X tool offset will be updated to the edge of the stylus.
6-1
Chapter 6
This chapter describes how to use the non-vector measuring cycles with verticallymounted and horizontally-mounted probes.
6-2
Description
This cycle measures a surface to establish the size or position.
Application
The probe, with its tool offset active, should be positioned adjacent to the surface. The cycle measures the surface and returns to the start position. There are two possibilities, as follows: 1. The surface can be treated as a size, where the tool offset is updated in conjunction with the Tt and the Hh input. The surface can be treated as a reference surface position, for the purpose of adjusting a work offset using the Ss and Mm inputs.
2.
Format
G65 P9611 Xx or Zz [ Cc Ee Ff Hh Ii Qq Ss Tt Uu Vv Ww ] where [ ] denote optional inputs. Example: G65 P9611 X50. C1. E90. F0.8 H0.2 I0.5 Q10. S1. T20. U.5 V.5 W2.
Compulsory inputs
Xx or Zz z= The position of the target surface. x= The size of the target surface.
6-3
Optional inputs
Inputs Cc and Ii are used with the reference touch option. This option eliminates thermal growth errors from within the probe results, helping to maintain measuring accuracy. Cc c = 1. c = 2. Takes the error from the reference diameter and stores it in #134 Takes the error stored in #134 and adds it to the results of the measured diameter This is the maximum tolerance used with the C input.
Ii
i=
6-4
T???? M?? 1. 2. 3. 4. 5. 6. 7. G65P9610X50.Z10.F3000 G65P9610X15. G65P9611Z0.T2 G65P9610X80. G65P9610Z6. G65P9611X40.T4 G65P9610X100. M?? continue
Select the probe. Switch on the probe. Protected positioning move to the start position. Protected positioning move. Single surface measure. Protected positioning move. Protected positioning move. Single surface measure. Protected positioning move. Switch off the probe.
6-5
R Z
-R Z
Figure 6.4 Measurement of a web or pocket feature (probe vertical)
Description
This cycle measures a web or pocket feature. It uses two measuring moves along the Z axis.
Application
Position the probe to the expected centre line of the feature and at a suitable position in the X axis with the probe and probe offset active. Run the cycle with suitable inputs as described.
Format
G65 P9612 Zz [ Ee Ff Hh Mm Qq Rr Ss Tt Uu Vv Ww ] or G65 P9612 Xx Zz [ Ee Ff Hh Mm Qq Rr Ss Tt Uu Vv Ww ]
6-6
where [ ] denote optional inputs. Example: G65 P9612 X50. Z100. E91 F0.8 H0.2 M.2 Q10. R10. S1. T20. U.5 V.5 W2.
Compulsory inputs
Xx x= The absolute X axis position when measuring a web feature. If this is omitted, a pocket cycle is assumed. The nominal size of the feature when measured in the Z axis.
Zz
z=
Optional inputs
See Chapter 2, "Optional inputs".
Outputs
See Chapter 3, "Variable outputs".
Figure 6.5 Probe movements G54 T????? M?? 1. 2. 3. G65P9610Z20.X60.F3000 G65P9610Z0. G65P9612X40.Z10.S2 Select the probe. Switch on the probe. Protected positioning move. Protected positioning move. Measure a 10.0 mm (1.968 in) wide web.
6-7
4.
The centre line of the feature in the X axis is stored in the work offset 02 (G55).
Figure 6.6 Probe movements G54 T????? M?? 1. 2. 3. 4. 5. G65P9610X100.Z20.F3000 G65P9610Z20. G65P9610X40. G65P9612Z10.S2 G65P9610X100. M?? continue The error of the centre line is referred to the datum point Z0 and the revised Z0 position is set in work offset 02 (G55). Select the probe. Switch on the probe. Protected positioning move. Protected positioning move. Protected positioning move. Measure a 10.0 mm (1.181 in) wide pocket. Protected positioning move. Switch off the probe.
6-8
Description
This cycle measures a surface to establish the size or position.
Application
The probe, with its tool offset active, should be positioned adjacent to the surface. The cycle measures the surface and returns to the start position. There are two possibilities, as follows: 1. The surface can be treated as a size, where the tool offset is updated in conjunction with the Tt and the Hh input. The surface can be treated as a reference surface position, for the purpose of adjusting a work offset using the Ss and Mm inputs.
2.
Format
G65 P9811 Xx or Zz [ Cc Ee Ff Hh Ii Qq Ss Tt Uu Vv Ww ] where [ ] denote optional inputs. Example: G65 P9811 X50. C1. E90 F0.8 H0.2 I0.5 Q10. S1. T20. U.5 V.5 W2.
Compulsory inputs
Xx or Zz z= The position of the target surface. x= The size of the target surface.
6-9
Optional inputs
Inputs Cc and Ii are used with the reference touch option. This option eliminates thermal growth errors from within the probe results, helping to maintain measuring accuracy. Cc c = 1. c = 2. Takes the error from the reference diameter and stores it in #134. Takes the error stored in #134 and adds it to the results of the measured diameter. This is the maximum tolerance used with the C input.
Ii
i=
6-10
M?? 1. 2. 3. 4. 5. 6. 7. G65P9810Z10.F3000 G65P9810X20. G65P9811Z0.T2 G65P9810X80. G65P9810Z20. G65P9811X60.T4 G65P9810X100. M?? continue
Switch on the probe. Protected positioning move. Protected positioning move to the start position. Single surface measure. Protected positioning move. Protected positioning move. Single surface measure. Protected positioning move. Switch off the probe.
6-11
Z R
Z X -R Z X
Description
This cycle measures a web or pocket feature. It uses two measuring moves along the X axis.
Application
Position the probe to the expected centre line of the feature and at a suitable position in the Z axis with the probe and probe offset active. Run the cycle with suitable inputs as described.
Format
G65 P9812 Xx [ Ee Ff Hh Mm Qq Rr Ss Tt Uu Vv Ww ] or G65 P9812 Xx Zz [ Ee Ff Hh Mm Qq Rr Ss Tt Uu Vv Ww ] where [ ] denote optional inputs.
6-12
Example: G65 P9812 X50. Z100. E92 F0.8 H0.2 M.2 Q10. R10. S1. T20. U.5 V.5 W2.
Compulsory inputs
Xx or Zz z= The absolute Z axis position when measuring a web feature. If this is omitted, a pocket cycle is assumed. x= The nominal size of the feature.
Optional inputs
See Chapter 2, "Optional inputs".
Outputs
See Chapter 3, "Variable outputs".
5 7 6
Figure 6.11 Probe movements G54 T????? M?? G65P9810.Z10.F3000 1. 2 to 7. G65P9810X0. G65P9812X50.Z10.S2 G65P9810Z10. Select the probe. Switch on the probe. Protected positioning move. Protected positioning move.
6-13
M?? continue
The centre line of the feature in the X axis is stored in work offset 02 (G55).
Figure 6.12 Probe movements T????? M?? 1. 2. 3. G65P9810Z10.F3000 G65P9810Z-10. G65P9812X30.S2 G65P9810Z10. M?? continue The centre line of the feature in the X axis is stored in work offset 02 (G55). Select the probe. Switch on the probe. Protected positioning move. Protected positioning move. Measure a 30.0 mm (1.181 in) wide pocket. Protected positioning move. Switch off the probe.
6-14
Additional cycles
7-1
Chapter 7
Additional cycles
The Inspection software contains four macro cycles that cannot be described under the headings used in previous chapters (see chapters 4 to 6 inclusive). This chapter describes how to use these cycles.
7-2
Probe 1
Probe 2
K1 Calibration data
K2 Calibration data
Description
The macro is used to store the stylus calibration data that is established during the calibration cycles. The data is stored in a spare set of macro variables. Stored data for each probe can be recalled using macro O9631.
Application
Calibrate the stylus using macros O9602 and O9603. Run macro O9630 to store the calibration data #503. The values are recalled when macro O9631 is run.
NOTE: All # numbers shown are with the base number set to 503 in O9524.
Format
G65 P9630 Kk Example: G65 P9630 K1.
7-3
Compulsory input
Kk k= This is the multi-stylus probe number that is used for storing calibration data. The active calibration data is stored in the macro variables shown in the following table. The actual variables used are dependent on the #112 setting in O9524.
K1 #504
K2 #505
NOTE: Spare macro variable locations, in which the calibration data can be stored, are dependent on the machine options available and the variables that are already used by your programs. These can be moved, depending on the #112 setting in O9524.
7-4
Probe 1
Probe 2
K1 Calibration data
K2 Calibration data
Description
This macro is used (in conjunction with O9630) to load stored calibration data for a specific probe/stylus configuration into the active calibration variable range. It must be run before using the probe and stylus.
Application
The program must be run immediately before a measuring cycle to select the correct probe calibration data. The Kk input determines the data that is to be loaded.
NOTE: All # numbers shown are with the base number set to 503 in O9524.
Format
G65 P9631 Kk Example: G65 P9631 K1.
7-5
Compulsory input
Kk k= This is the multi-stylus probe number that is used for loading stored data. For a specific probe/stylus configuration, the Kk input number must be the same as that used when storing the data with O9630. The active calibration data is stored in the macro variables shown in the following table. The actual variables used are dependent on the #112 setting in O9524.
K1 #504
K2 #505
NOTE: Spare macro variable locations, in which the calibration data can be stored, are dependent on the machine options available and the variables that are already used by your programs. These can be moved, depending on the #112 setting in O9524.
7-6
Description
This macro is used to store stylus calibration data that is established during the calibration cycles. The data is stored in a spare set of macro variables. Stored data for each probe can be recalled using macro O9831.
Application
Calibrate the stylus using macro O9802 and O9803. Run macro O9830 to store the calibration data #500. The values are recalled when macro O9831 is run.
NOTE: All # numbers shown are with the base number set to 500 in O9724.
Format
G65 P9830 Kk Example: G65 P9830 K1.
Compulsory input
Kk k= This is the multi-stylus probe number that is used for storing calibration data. The active calibration data is stored in the macro variables shown in the following table. The actual variables used are dependent on the #111 setting in O9724.
7-7
K1 #501
K2 #502
NOTE: Spare macro variable locations, in which the calibration data can be stored, are dependent on the machine options available and the variables that are already used by your programs. These can be moved, depending on the #111 setting in O9724.
7-8
Description
This macro is used (in conjunction with O9830) to load stored calibration data for a specific probe/stylus configuration into the active calibration variable range. It must be run before using the probe and stylus.
Application
The program must be run immediately before any measuring cycle to select the correct probe calibration data. The Kk input determines the data that is to be loaded.
NOTE: All # numbers shown are with the base number set to 500 in O9724.
Format
G65 P9831 Kk Example: G65 P9831 K1.
Compulsory input
Kk k= This is the multi-stylus probe number that is used for loading stored data. For a specific probe/stylus configuration, the Kk input number must be the same as that used when storing the data with O9830. The active calibration data is stored in the macro variables shown in the following table. The actual variables used are dependent on the #111 setting in O9724.
7-9
K1 #501
K2 #502
NOTE: Spare macro variable locations, in which the calibration data can be stored, are dependent on the machine options available and the variables that are already used by your programs. These can be moved, depending on the #111 setting in O9724.
7-10
C-axis cycles
8-1
Chapter 8
C-axis cycles
This chapter describes how to use the two C-axis macros that are supplied as part of the Inspection software.
8-2
Description
This cycle will take two readings by moving the C-axis. External features can also be measured by moving the X axis. The results can be used to update a work shift.
Application
The stylus must be programmed to a start position that is either above an external feature or inside an internal feature. The C-axis must be engaged before calling up the cycle. The inclusion of an Xx input indicates that an external feature is to be measured.
Format
G65 P9650 Dd [ Xx Qq Rr Hh Ss ] where [ ] denote optional inputs. Example: G65 P9650 D20. X10. Q10. R10. H0.2 S1.
Compulsory input
Dd d= The linear width of the feature.
Optional inputs
Hh Qq h= q= Half the total positional tolerance. The amount of scan past the nominal surface position and the clearance for external features. Default: 5 mm.
8-3
Rr
r=
The clearance move amount in C for an external feature only (angle value). Default: 5 mm plus the ball radius converted into an angle.
Xx
x=
The absolute X position at which a reading is taken when measuring a external feature.
Example: Bore
Bore size = 20.0 X position = X60.0 Z position = Z40.0
Move to the safe position. Move over the bore. Move into the bore. Measure the bore. Move out of the bore. Move to the start position.
8-4
Description
This cycle will take two readings by moving the C-axis. External features can also be measured by moving the Z axis. The results can be used to update a work shift.
Application
The stylus must be programmed to a start position that is either above an external feature or inside an internal feature. The C-axis must be engaged before calling up the cycle. The inclusion of an Zz input indicates that an external feature is to be measured.
Format
G65 P9850 Dd [ Zz Qq Rr Hh Ss ] where [ ] denote optional inputs. Example: G65 P9850 D20. Z10. Q10. R10. H0.2 S1.
Compulsory input
Dd d= The linear width of the feature.
Optional inputs
Hh Qq h= q= Half the total positional tolerance. The amount of scan past the nominal surface position and the clearance for external features. Default: 10 degrees.
8-5
Rr
r=
The clearance move amount in C for an external feature only (angle value). Default: 5 mm plus the ball radius converted into an angle.
Zz
z=
The absolute Z position at which a reading is taken when measuring an external feature.
Example: Bore
Bore size = 20.0 X position = X60.0 Z position = Z40.0
Move to the safe position. Move over the bore. Move into the bore. Measure the bore. Move out of the bore.
8-6
9-1
Chapter 9
When an error occurs during use of the Inspection software, an alarm number or message is generated. This is displayed on the screen of the controller. This chapter describes the meaning and likely cause of each alarm message that may be displayed. It then describes typical actions you should take to clear the fault.
9-2
General alarms
Format: 3006= 1 (OUT OF TOLERANCE) 1 (OUT OF POSITION) 1 DIA OFFSET TOO LARGE 1 (UPPER TOL EXCEEDED) Updates the offset if the cycle start button is pressed to continue. No offset update if the cycle start button is pressed to continue. #148 flag 1 2 5 3
Action Format:
Press cycle start to continue. #3000 = 91 (MESSAGE) (FORMAT ERROR) (K INPUT MISSING) (T INPUT MISSING) (X INPUT MISSING) (Y INPUT MISSING) (Z INPUT MISSING) (SH INPUT MIXED) (ST INPUT MIXED) (TM INPUT MIXED) (XZ INPUT MIXED) (K INPUT OUT OF RANGE)
Action:
Edit the program and start again from a safe start position. This is a reset condition.
#3000 = 86 (PATH OBSTRUCTED) The probe has made contact with an obstruction. This alarm occurs only during a protected positioning cycle. Edit the program. Clear the obstruction and start again from a safe position. This is a reset condition.
#3000 = 88 (NO FEED RATE) This alarm occurs only during a protected positioning cycle. Edit the program. Insert the F___ code input and start again from a safe position. This is a reset condition.
9-3
Format: Cause:
#3000 = 92 (PROBE OPEN) This alarm occurs if the probe is already triggered before a move. The stylus may be in contact with a surface or the probe has failed to reseat. This could be due to swarf trapped around the probe eyelid.
Action:
Clear the fault and start again from a safe start position. This is a reset condition.
Format: Cause:
#3000 = 93 (PROBE FAIL) This alarm occurs if the probe did not trigger during the move. The surface was not found or the probe has failed.
Action:
Edit the program and start again from a safe start position. This is a reset condition.
#3000 = 94 (C POSITION ERROR) The positional error of the feature exceeds the tolerance value (H). Re-load the component and start again from a safe start position. This is a reset condition.
#3000 = 95 (CHECK SETTINGS #120) This alarm occurs if the settings in O9724 are set incorrectly. Edit the program O9724 with correct values.
9-4
10-1
Chapter 10
10-2
The examples in this chapter are for general guidance only. Note that the exact programming format may not suit either your machine set or recommended method as specified by your machine builder. #33 = 1 (SET TO 1/2/3/4/5) #120 = 1 See Setting #33 later in this chapter. If less than 64, tool offset = 1. If greater than 64, tool offset = 2. See "Variable base number setting (#111 and #112)" later in this chapter. See "Variable base number setting (#111 and #112)" later in this chapter. The fast feedrate of the cycles can be adjusted by this variable to suit the machine characteristics and should be optimised.
#111 = 500
#112 = 503
#119 = 5000 (FAST FEED MM) #119 = 200 (FAST FEED INCH)
NOTES: 1. 2. 3. The Z-axis P9726 basic move macro fast feedrate is at the #119*.6 value (3000 mm/min as standard). All Z-axis positioning moves are also at the #119*.6 value (3000 mm/min as standard). All X-axis positioning moves are at the #119 value (5000 mm/min as standard).
This is the zone at either the start or end of the block in which the cycle is aborted with either a PROBE OPEN or PROBE FAIL message.
10-3
Setting #33
It has been found that machine configurations can vary between different machine tool builders. This means that a modification to #33 may be necessary. To establish whether #33 needs modifying, carry out the following procedure: 1. Load approximate values into the probe tool offset. This includes entering small values (0.5 mm [0.019 in]) into the wear columns. Set a work offset to a convenient position. Send the machine to a position that is clear of any obstruction; for example, the reference point is ideal. Switch on the probe. Run a protected positioning cycle and move to a position at which no collision will occur. If the cycle completes with no alarm, no edits are required to #33. If the PROTECTED POSITIONING alarm is issued, edit #33 to the next option then repeat the procedure. When no alarm occurs, #33 is set correctly.
2. 3.
4. 5.
6.
7.
10-4
#110 = 0
If one of the conditions ( * ) listed below in Process alarms occurs, the cycle stops with an alarm message and flag #148 is set as appropriate. Otherwise flag #148 = 0 is set and the cycle continues. If one of the conditions ( * ) listed below in Process alarms occurs, flag #148 is set as appropriate but the cycle does not stop. Otherwise flag #148 = 0 is set and the cycle continues.
#110 = 1
Process alarms
* No alarm * Out of tolerance * Out of position * Upper tolerance exceeded * Diameter offset too large #148 = 0 #148 = 1 #148 = 2 #148 = 3 #148 = 5
NOTE: If it is necessary to switch this option on and off during the program, then the following line in macro O9524 or O9724 may be deleted during installation. #110 can then be programmed. #110 = 0(SELECT ALARM METHOD).
10-5
Common variables
#100 to #105 #106 Not used by this software package. Basic move control factor (see Figure 10.1). This is used to control the back-off distance in the basic move before the final gauge move. It should be fine-tuned on installation to suit the machine. A default value of 0.5 is installed by the software. The actual factor should normally be between 0 and 1.0. Reduce the value to reduce the back-off distance.
(a)
(c)
3
a = Fast feed. b = Gauge feed (30 mm/min). c = Return.
Move 1: Fast feed to find the surface. Move 2: Recover off the surface. Move 3: Gauge feed 30 mm/min (1.2 in/min).
Figure 10.1 Basic move control factor #108 #109 #110 Radius or diameter programming. Target position for C-axis cycles. Flag or alarm selection (see Editing the settings macro (O9524 or O9724) earlier in this chapter). Variable base number (probe horizontal). Variable base number (probe vertical). Transfer location for C-axis cycles. Active tool length X axis. Active tool length Z axis.
10-6
#117
Modal feedrate value used in the protected positioning macros (O9610 and O9810). RADIUS TOO LARGE flag macros O9612 and O9812. Fast feedrate value. This is set in macro O9524 or O9724 at 5000 mm/min (200 in/min) default value. Setting variable used in macros O9524 and O9724. Print option. The 6-digit component number is incremented by 1 with each heading program. To reset, state #121 = 0. The 4-digit feature number is incremented by 1 with each print macro call program. To reset, state #122 = 0. Start and end of block position zone normal setting 0.05 mm (0.002 in). If the skip position is within this zone, the cycle aborts with either a PROBE OPEN or PROBE FAIL alarm. Stored X skip position at the end of the basic move macro O9726. Stored skip for C-axis cycles. Stored Z skip position at the end of the basic move macro O9726. X average skip position at the end of the X diameter move macro O9721. Inch/metric multiplier (0.04/1.0). Not used by this software. Error store when using the C1 input macros O9611 and O9811. See Chapter 3, "Variable outputs". Not used by this software.
#118 #119
#120 #121
#122
#123
10-7
(ZRAD) Z calibration radius (probe vertical). Multi-stylus storage K1 (probe vertical). Multi-stylus storage K2 (probe vertical).
10-8
General information
11-1
Chapter 11
General information
11-2
General information
Tolerances
Uu, Hh and Vv apply to size and tool offset updates only.
Uu Hh Vv
e d a
a b c
= = =
Nominal size. Null band. This is the tolerance zone where no tool offset adjustment occurs. Area where the Ff input is effective in percentage feedback. F (0 to 1) gives 0% to 100% feedback to the tool offset. OUT OF TOLERANCE alarm occurs. The tolerance value that applies to the size of the feature is defined by input Hh. Uu upper tolerance. If this value is exceeded no tool offset or work offset is updated and the cycle stops with an alarm. This tolerance applies to both size and position where applicable.
General information
11-3
Experience values Ee
The measured size can be adjusted by an amount stored in a spare tool offset.
Example:
Measure a 40 mm diameter and update tool offset 20. G65 P9812 D40. T20 E21 An experience value stored in tool offset 21 will be added to the measured size.
11-4
General information
A-1
Appendix A
A-2
Additional features for feedback of errors include: f f f Experience values can be applied to the measured size. Percentage feedback of the error can be applied. Null band zone for no tool offset update.
z z
Calibration of multiple styli. Software option to turn off the tolerance alarms and provide a flag-only alarm. Suitable for FMS and unmanned applications. Built-in stylus collision and false trigger protection for all cycles. Diagnostic and format error checking routines for all cycles.
z z
Cycles
z z Protected positioning. Measurement: f f f f XZ single surface. Web/pocket. C axis measurement. Multi-stylus calibration.
Limitations
z z The probe cycles will not run if mirror image is active. Consider macro variable availability.
B-1
Appendix B
CAUTION: While the examples described in this chapter are commonly used, you must be aware that they might not be suitable for your machine. Care must be taken if you change the method of co-ordinate system setting on your machine to one that is described here.
B-2
Turning tool
a = the X geometry of the tool (2 a for diameter type offsets). b = the Z geometry of the tool.
B-3
Example 2 Using either G54 to G59 or G50 to define the component zero
Turret at reference
X tool offset
Z tool offset
O1234 G80G0 G28U0W0 G55T0101X0Z10 Return to the reference position. Select G55 and tool 1, offset 1. The tool tip will move to X0Z10 in the program co-ordinate system.
where the G55 X register = a and the Z register = b (see the description above).
B-4
where the G50 X = a (+ value to the turret reference) and Z = b (+ value to the turret reference).
NOTE: For an alternative G50 method, see Example 4 later in this chapter.
B-5
Machine zero (this position will vary from machine to machine) Component zero a
Figure B.3 Example 3 G10 defines the distance and direction of the machine zero from the component zero. Therefore in the example above: a = zero (0). b = minus value. However, if the machine zero is at the turret home position then: a = plus value. b = plus value. O1234 G80G0 G10P0X(a)Z(b) The previous methods of co-ordinate system setting using either G54 to G59 or G10 can use geometry type offsets (see Example 1). They are all methods of setting the component zero relative to the turret face (that is, NOT the tool tip position). These methods will allow the same tool offsets to be used in another job set up. All that is necessary is to redefine the new component zero.
B-6
Example 4 Using either G92 or G50 to define the component zero-to-tool tip position
Turret at reference
Component zero
a()
Z tool offset
!
O1234 G80G0
G28U0W0 G50X200.0Z100.0 T0101X30.0Z3.0 G28U0 W0T0100 G50X250.0Z75.0 T0202X0Z3.0 G28U0W0T0200 Select the tool and tool offset.
B-7
Tool offsets for a G50 (or G92) co-ordinate system will be small wear compensation amounts and have no obvious relationship to the machine turret. When changing from job to job, all tools will need their new G50 values reset, unlike the other methods described. This means that tools will need resetting for each job.
Renishaw plc
For worldwide contact details, please visit our main web site at www.renishaw.com/contact