US20020091497A1 - Coordinate measuring apparatus - Google Patents
Coordinate measuring apparatus Download PDFInfo
- Publication number
- US20020091497A1 US20020091497A1 US09/481,867 US48186700A US2002091497A1 US 20020091497 A1 US20020091497 A1 US 20020091497A1 US 48186700 A US48186700 A US 48186700A US 2002091497 A1 US2002091497 A1 US 2002091497A1
- Authority
- US
- United States
- Prior art keywords
- values
- desired drive
- control computer
- subassembly
- drives
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/414—Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
- G05B19/4142—Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by the use of a microprocessor
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/34—Director, elements to supervisory
- G05B2219/34279—Pc, personal computer as controller
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/34—Director, elements to supervisory
- G05B2219/34433—Multitask processor controls real time processor via communication memory
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/37—Measurements
- G05B2219/37193—Multicoordinate measuring system, machine, cmm
Definitions
- the invention relates to a coordinate measuring apparatus having drives for adjusting the components of the apparatus.
- the drives are adjusted sequentially at a fixed defined clock frequency in accordance with pregiven desired drive values.
- the invention also relates to a method for operating the coordinate measuring apparatus.
- a coordinate measuring apparatus of this kind is already known from the state the of the art and is described in detail, for example, in U.S. Pat. Nos. 5,471,406 and 5,726,917.
- first data as to the geometric elements of the workpiece to be measured are transmitted from a computer to a control arrangement.
- the control arrangement then generates desired drive values from the data and these values are transmitted further to the drives of the coordinate measuring apparatus.
- the control arrangement generates so-called desired position values which are sequentially transmitted to the position control loops of the drives for moving the probe head in the three coordinate measuring directions in a fixed defined clock frequency and are then correspondingly executed by the drives.
- the desired measuring force which is imparted to the probe pin via the measuring force generators.
- This desired measuring force too is computed in advance in correspondence to the geometry of the geometric element to be scanned and is correspondingly transmitted to the measuring force generators during scanning.
- the desired drive values which are generated by the control arrangement, are so computed that they are applied to the drives sequentially at a clock frequency because, otherwise, problems could occur in the measuring sequence.
- the desired position values are so computed that the drives move the probe head in accordance with a velocity profile and an acceleration profile. If the desired position values are, however, not sequentially moved to precisely at the clock frequency as a function of time, then this can lead to excessively large braking and start-up accelerations in the drives of the coordinate measuring apparatus which can rapidly lead to excessive loading of the apparatus.
- the measured measurement values such as the probe pin deflection, that is, the deflection of the probe pin relative to the probe head
- the machine positions that is, the positions of the probe head in the machine coordinate system
- control units as software in a computer of this kind would perforce lead to the condition that some generated desired drive values would be lost with the consequence that, for example, the mechanics of the coordinate measuring apparatus would thereby be inexorably overloaded or that individual measured values would be lost which would lead to the condition that a reasonable readjustment of the desired position values or a reasonable evaluation of the measured values could no longer be ensured.
- the coordinate measuring apparatus of the invention has a component unit for measuring a workpiece and the apparatus includes: a plurality of drives for moving the component unit to scan the workpiece; a control computer for sequentially generating pregiven sets of desired drive values (L i , F des ) in accordance with which the drives are correspondingly adjusted at a fixed clock frequency; scanning devices for detecting several measured sets of values (X T , Y T , Z T , X m , Y m , Z m , F ix , F iy , F iz ) at the fixed clock frequency during a measuring sequence; the control computer having an operating system without real-time performance wherein the desired drive values are computed; a subassembly operating to execute at least one of the following functions: (a) several sets of the desired drive values are stored in advance in response to a command of the control computer and to which the drives are to be moved in the next clock pulses; and, automatically outputting the sets of desired drive values to the plurality
- the desired drive values are computed in a control computer having an operating system without a real time characteristic.
- a subassembly is made available in which at least one of the following functions is executed: (a) several desired position values, which are to be executed in subsequent cycles, are stored in advance in response to commands of the control computer and the subassembly automatically transmits the desired position values, which are stored in advance, to the drives at the clock frequency; and, (b) several measured values, which are recorded at a pregiven clock frequency, are stored in the subassembly and are transmitted for evaluation to the control computer in response to a command of the control computer.
- the desired drive values can be desired position values (with which the drives are driven to move the probe head in the three coordinate directions) and desired measurement force values via which the measurement force generators are driven if the probe head is a measuring probe head.
- desired drive values can also be the desired rotational angles to be set by the rotational pivot unit.
- the measurement values can likewise vary in many ways.
- the measurement values include the so-called machine position of the probe head, that is, the precise position of the probe head in the machine coordinate system. This machine position is achieved by reading off scales via corresponding scanning heads.
- the scales are mounted on the mechanics for moving the probe head in the individual coordinate directions and provide the machine positions in the individual measuring directions (x, y, z).
- the measurement signal of the probe head is a usual measured value.
- the measured value is the deflection of the probe pin out of its rest position.
- the measured value is the spacing of the surface of the workpiece to the probe head. If the probe head is a measuring probe head with active measuring force generators, it can be additionally advantageous to detect the actually adjusted measuring forces. Further possible measurement values would be the adjusted rotational angle as well as the adjusted pivot angle of a rotation-pivot unit.
- the desired drive values and/or the measurement values are stored together with time data in the subassembly which outputs the time point in the measuring sequence at which the particular desired drive value is driven to and/or the measurement values are detected.
- the desired drive values, which are stored in the subassembly, as well as the measurement values can be arranged in time in the measuring sequence.
- the time information can, for example, be the cumulative number of clock flanks of the clock signal since the start of the measuring sequence.
- the time information for the measurement values can be simply determined by a counter which counts the clock flanks of the clock signal and which is reset at the start of the measuring sequence.
- the time information of the desired drive values must be computed in advance by the control computer.
- the components of the subassembly can be built up, in the simplest case, of simple hardware components and, for this purpose, can include at least one or several shift registers as well as, as required, a counter for the time information and/or a read-write subassembly via which the shift register is loaded and read out by the control computer as desired.
- the desired drive values and/or the detected measurement values are shifted further in the shift register(s), as required, together with the corresponding time data each by one memory location.
- the counter optionally supplies the above-mentioned time information and is likewise incremented at the clock frequency of the subassembly.
- the read-write subassembly when driven by the computer, reads out or writes into the shift register.
- a single-chip controller can be additionally provided via which the shift registers and, if required, the counter and the read-write subassembly can be driven and administered. In this way, the performance of the individual components can be coordinated in a targeted manner and, if needed, also changed. Individual components or all components, such as the counter, can be emulated directly by the single-chip controller.
- the object of the invention can also be realized only by a microprocessor which emulates the individual components completely by a corresponding program.
- the microprocessor can reserve a memory region of the microprocessor and organize the read-and-write operations controlled by the program in the same manner as the above-described operation of the shift register and of the read-write subassembly.
- Storage of the above-mentioned desired drive values in response to a command of the computer into different storage locations and the transmission of the desired drive values in correspondence to the applied clock signal to the drives as well as the storage of the measured measurement values at the correct clock frequency and the read-out of the measured values to the control computer are realized exclusively in the microprocessor.
- FIG. 1 is a schematic block diagram of a control arrangement of a corresponding coordinate measuring apparatus; and, FIG. 2 is a detailed schematic of the subassembly identified in FIG. 1 as “real-time clocked data buffer”.
- FIG. 1 is an overview schematic diagram of the control arrangement of a coordinate measuring apparatus.
- the control arrangement functions essentially in the manner that first a so-called desired position value Li is computed from the data of a geometric element to be measured on a workpiece surface.
- the drives 14 are driven to move the probe head in the three coordinate directions (x, y, z) in accordance with these desired position values L i .
- the desired position values L i provide the precise position for each of the three drives in the three coordinate directions for a fixed time point and are sequentially processed in accordance with a clock frequency.
- the desired position values L i are transmitted to the position controller 13 which drives the drives 14 in the three coordinate directions (x, y, z) in accordance with the desired position values.
- the exact position (X m , Y m , Z m ) of the probe head in the machine coordinate system can be measured via corresponding path measuring units 15 , that is, scales and corresponding sensors for reading the scales.
- the exact position (X m , Y m , Z m ) of the probe head can be fed back via the subassembly 16 identified as “measurement” to, on the one hand, the position controller 13 in order to readjust correspondingly and, on the other hand, to the control computer unit ( 3 , 4 , 5 ) in order to be able to evaluate the measurement results.
- the control arrangement likewise generates so-called desired measurement forces (F des ) with which the probe pin 7 is charged in the three coordinate directions (x, y, z) relative to the probe head 2 by corresponding measurement force generators 23 .
- the corresponding measurement forces are likewise computed in the control arrangement and are computed in such a manner that they are directed perpendicularly to the workpiece surface at the particular measurement point.
- the components of the measurement force vector are transmitted to a subassembly 22 which, in turn, drives the measurement force generators 23 in the probe head 2 .
- the effectively adjusted actual measuring force (F ix , F iy , F iz ) can be measured based on the respective currents flowing through the individual measuring force generators and correspondingly fed back to the control computer unit ( 3 , 4 , 5 ).
- the measurement force generators 23 are, for example, electromagnetic linear motors.
- the deflection of the probe pin 7 relative to the probe head 2 is measured in the three coordinate measuring directions via corresponding sensors 18 in the probe head 2 and is transmitted as a so-called probe pin deflection (X T , Y T , Z T ) likewise to the control computer unit ( 3 , 4 , 5 ) for measurement data evaluation and, if required, for feedback to and superposition on the desired position values.
- the very considerable problem is present that no operating systems capable of real time operation are present in present day computers so that a supply, at correct times, of the desired drive values (that is, for example, the desired position values Li) to the position controller 13 or a chronological detection of the measurement values (such as the machine positions (X m , Y m , Z m ) and the probe pin deflection (X T , Y T , Z T )) to the control computer ( 3 , 4 , 5 ) cannot be ensured.
- the operating programs UNIX, LINUX, WINDOWS NT, WINDOWS 98, et cetera are included in those operating systems which are not capable of real time operation.
- the control arrangement of FIG. 1 includes a subassembly 1 identified as “real-time clocked data buffer” in which several desired drive values (L i , F des ) are stored in advance in response to a command of the control computer unit ( 3 , 4 , 5 ).
- the desired drive values (L i , F des ) are to be moved to in the following sequences and are automatically transmitted at the clock frequency to the drives ( 14 , 23 ) of the coordinate measuring apparatus.
- the desired drive values (L i , F des ) can be computed in the control computer unit ( 3 , 4 , 5 ) with an operating system without real-time characteristic and nonetheless supply the pregiven desired drive values (L i , F des ) at correct times to the drives ( 14 , 23 ) sequentially at a fixedly defined clock frequency.
- the detection, at correct times, of the measured measurement values has to be taken care of, namely, the measured machine positions (X m , Y m , Z m ), the measured probe pin deflection (x T , y T , Z T ) and the actual measurement force (F ix , F iy , F iz ).
- the subassembly likewise stores in a time-correct manner several measurement values detected at the pregiven clock frequency sequentially one after the other in the subassembly 1 and transmits these measured values to the control computer ( 3 , 4 , 5 ) in response to a command therefrom for evaluation and for position control.
- the particular values together with time data should be stored in the subassembly 1 in order to chronologically allocate in each case individual data, that is, the desired drive values (L i , F des ) and the measured values (X m , Y m , Z m ; X T , Y T , Z T ; F ix , F iy , F iz ).
- These values provide the time point in the measurement sequence at which the particular desired drive value is to be moved to and/or the measurement values are detected. In this way, a clear allocation of the particular values to the time-dependent sequence can be reconstructed even after the fact.
- the subassembly 1 includes two shift-register type memories ( 8 , 9 ) having memory locations which are shifted to the right by one memory location per clock pulse via a single-chip control 11 .
- the left shift register 8 has stored therein the measurement values which include, for example, the probe pin deflection (X T , Y T , Z T ), the machine position (X m , Y m , Z m ) as well as the actual measurement force (F ix , F iy , F iz ).
- time data (t) is inputted to the upper left memory location of the shift register 8 and provides the exact time point at which the measured values are written into the corresponding memory location. This is the sum of the clock pulse flanks of the clock signal since the start of the measuring sequence, which is counted by the counter 24 , so that it can be precisely reconstructed at which time point the measurement values went into the shift register 8 .
- the counter 24 is reset via the line “reset” at the start of a new measuring operation.
- the content of the particular memory locations is now shifted at the clock frequency of the subassembly 1 always by one position to the right so that the leftmost memory location can always be filled again with new measurement values.
- the control computer 4 Should the control computer 4 not be able to read out the particular measured values promptly, then the measured values with the corresponding time data (t) during a time space of, for example, 10 clock pulses are buffered in the register 8 .
- the subassembly 1 can then read out all 10 measured values via the read-write subassembly 10 from the register 8 and transmit them to the control computer 4 when the control computer is again active.
- the operation of the second register 9 is similar wherein the desired drive values (L i , F des ) are stored.
- the desired drive values (which are computed in advance, for example, for 10 clock pulses) are written into the register 9 at the command of the control computer unit ( 3 , 4 , 5 ) together with corresponding time data (t) via the read-write assembly group 10 .
- the time information (t) is likewise computed in advance in the control computer and the desired drive values are the desired position values L i and the desired measurement force values F des .
- the register 9 is now filled with the desired drive values and is shifted to the right at clock frequency by one memory location so that, in the column of the register 9 farthest to the right, there are always the actual drive values present and these can be transmitted further to the corresponding drives, that is, to the measurement force generators 23 and the drives of the coordinate measuring apparatus 14 .
- the control computer unit 3 , 4 , 5
- the coordinate measuring apparatus can nonetheless continue to perform the previously defined measuring sequence.
- the buffering of the measured values and the desired drive values in the shift registers ( 8 , 9 ) only takes place in order to ensure a trouble-free further operation of the coordinate measuring apparatus in time intervals in which the control computer ( 3 , 4 , 5 ) cannot process these values.
- the clock signal for the subassembly 1 and the subassemblies ( 13 , 16 , 19 ) and 22 it should be further noted that the clock signal is here for the entire system and serves to synchronize the measuring sequence and therefore has a clock frequency of, for example, 1 KHz.
- the clock frequency has nothing to do with the operating clock frequency of the single-chip controller or the control computer which is usually greater than 1 MHz.
- the clock frequency can, for example, be derived from the operating frequency of the control computer unit ( 3 , 4 , 5 ) in that the operating clock frequency is subdivided to a relatively low clock pulse rate.
- a clock generator which is independent of the control computer, can also be used.
- the synchronization of the write-in operation into the shift register 9 should take place in that the control computer unit ( 3 , 4 , 5 ) at first reads out the time data 8 of the left column and the shift register is then filled correspondingly with new desired drive values.
- the drive of individual components in the subassembly 1 takes place via a single-chip controller 11 which assumes organization of the individual components.
- the single-chip controller 11 is operatively connected to the control computer unit ( 3 , 4 , 5 ) and exchanges data Di therewith.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Length Measuring Devices With Unspecified Measuring Means (AREA)
Abstract
Description
- The invention relates to a coordinate measuring apparatus having drives for adjusting the components of the apparatus. The drives are adjusted sequentially at a fixed defined clock frequency in accordance with pregiven desired drive values. The invention also relates to a method for operating the coordinate measuring apparatus.
- A coordinate measuring apparatus of this kind is already known from the state the of the art and is described in detail, for example, in U.S. Pat. Nos. 5,471,406 and 5,726,917. In the coordinate measuring apparatus shown herein, first data as to the geometric elements of the workpiece to be measured are transmitted from a computer to a control arrangement. The control arrangement then generates desired drive values from the data and these values are transmitted further to the drives of the coordinate measuring apparatus. For example, the control arrangement generates so-called desired position values which are sequentially transmitted to the position control loops of the drives for moving the probe head in the three coordinate measuring directions in a fixed defined clock frequency and are then correspondingly executed by the drives. The same is true for the desired measuring force which is imparted to the probe pin via the measuring force generators. This desired measuring force too is computed in advance in correspondence to the geometry of the geometric element to be scanned and is correspondingly transmitted to the measuring force generators during scanning.
- During scanning of the workpiece, the respective machine positions of the probe head in the three coordinate measuring directions as well as the probe pin deflection are detected and are evaluated in the control arrangement.
- The desired drive values, which are generated by the control arrangement, are so computed that they are applied to the drives sequentially at a clock frequency because, otherwise, problems could occur in the measuring sequence. For example, the desired position values are so computed that the drives move the probe head in accordance with a velocity profile and an acceleration profile. If the desired position values are, however, not sequentially moved to precisely at the clock frequency as a function of time, then this can lead to excessively large braking and start-up accelerations in the drives of the coordinate measuring apparatus which can rapidly lead to excessive loading of the apparatus.
- Stated otherwise, it is of equal importance that the measured measurement values (such as the probe pin deflection, that is, the deflection of the probe pin relative to the probe head) or the machine positions (that is, the positions of the probe head in the machine coordinate system) are always correctly detected as a function of time because, otherwise, individual measuring points (which measuring points are required for the evaluation of measurement data as well as for readjusting the precomputed desired position values) could no longer be correctly evaluated.
- In the coordinate measuring apparatus disclosed in U.S. Pat. Nos. 5,471,406 and 5,726,917, this real time performance is achieved in that the individual components of the control arrangement are configured as microprocessors which exhibit a very good real time performance and for which making ready the desired position values for the control loops of the drives as well as the detection of the measured values define no problems whatsoever.
- In recent times, there are more cost-effective and more powerful computers available in the marketplace so that increasingly the desire develops to let the central processor of the evaluating computer execute the operation of the control arrangement which, up to now, has been performed by microprocessors. However, this desire could not be realized without considerable additional complexity because the operating systems for the corresponding computers, which are today available such as UNIX, LINUX, WINDOWS 95, WINDOWS NT, et cetera, have no or only an inadequate real time performance. Real time performance is here understood to be that the computer exhibits time spans of longer than 0.1 milliseconds in which the computer cannot transmit desired drive values to the drives and in which the computer likewise cannot receive measured values.
- Implementing the control units as software in a computer of this kind would perforce lead to the condition that some generated desired drive values would be lost with the consequence that, for example, the mechanics of the coordinate measuring apparatus would thereby be inexorably overloaded or that individual measured values would be lost which would lead to the condition that a reasonable readjustment of the desired position values or a reasonable evaluation of the measured values could no longer be ensured.
- It is an object of the invention to provide a coordinate measuring apparatus wherein as many functions of the control arrangement as possible can be taken over by a computer having an operating system without real time performance as well as a method with which this is possible.
- The coordinate measuring apparatus of the invention has a component unit for measuring a workpiece and the apparatus includes: a plurality of drives for moving the component unit to scan the workpiece; a control computer for sequentially generating pregiven sets of desired drive values (Li, Fdes) in accordance with which the drives are correspondingly adjusted at a fixed clock frequency; scanning devices for detecting several measured sets of values (XT, YT, ZT, Xm, Ym, Zm, Fix, Fiy, Fiz) at the fixed clock frequency during a measuring sequence; the control computer having an operating system without real-time performance wherein the desired drive values are computed; a subassembly operating to execute at least one of the following functions: (a) several sets of the desired drive values are stored in advance in response to a command of the control computer and to which the drives are to be moved in the next clock pulses; and, automatically outputting the sets of desired drive values to the plurality of drives at the fixed clock frequency; and, (b) storing the measurement values (XT, YT, ZT, Xm, Ym, Zm, Fix, Fiy, Fiz) and transmitting the measurement values (XT, YT, ZT, Xm, Ym, Zm, Fix, Fiy, Fiz) to the control computer in response to a command therefrom.
- The basic idea of the invention is seen in that the desired drive values are computed in a control computer having an operating system without a real time characteristic. A subassembly is made available in which at least one of the following functions is executed: (a) several desired position values, which are to be executed in subsequent cycles, are stored in advance in response to commands of the control computer and the subassembly automatically transmits the desired position values, which are stored in advance, to the drives at the clock frequency; and, (b) several measured values, which are recorded at a pregiven clock frequency, are stored in the subassembly and are transmitted for evaluation to the control computer in response to a command of the control computer.
- This affords the advantage that now almost all control functions can be carried out with a very cost-effective control computer having an operating system without a real time characteristic and that no desired drive values and/or measured values are lost.
- Various values can be considered as possible desired drive values. The desired drive values can be desired position values (with which the drives are driven to move the probe head in the three coordinate directions) and desired measurement force values via which the measurement force generators are driven if the probe head is a measuring probe head. For example, for the case that a one-dimensionally measuring optical probe head is utilized as a probe head, which is attached to a rotational-pivot unit, the desired drive values can also be the desired rotational angles to be set by the rotational pivot unit.
- The measurement values can likewise vary in many ways. Usually, the measurement values include the so-called machine position of the probe head, that is, the precise position of the probe head in the machine coordinate system. This machine position is achieved by reading off scales via corresponding scanning heads. The scales are mounted on the mechanics for moving the probe head in the individual coordinate directions and provide the machine positions in the individual measuring directions (x, y, z).
- The measurement signal of the probe head is a usual measured value. In the case, for example, of a so-called measuring probe head (wherein a probe pin is journalled so as to be movable relative to the probe head), the measured value is the deflection of the probe pin out of its rest position. In an optical probe head, for example, the measured value is the spacing of the surface of the workpiece to the probe head. If the probe head is a measuring probe head with active measuring force generators, it can be additionally advantageous to detect the actually adjusted measuring forces. Further possible measurement values would be the adjusted rotational angle as well as the adjusted pivot angle of a rotation-pivot unit.
- In an especially advantageous embodiment of the invention, the desired drive values and/or the measurement values are stored together with time data in the subassembly which outputs the time point in the measuring sequence at which the particular desired drive value is driven to and/or the measurement values are detected. In this way, the desired drive values, which are stored in the subassembly, as well as the measurement values can be arranged in time in the measuring sequence. The time information can, for example, be the cumulative number of clock flanks of the clock signal since the start of the measuring sequence. The time information for the measurement values can be simply determined by a counter which counts the clock flanks of the clock signal and which is reset at the start of the measuring sequence. In contrast, the time information of the desired drive values must be computed in advance by the control computer.
- The components of the subassembly can be built up, in the simplest case, of simple hardware components and, for this purpose, can include at least one or several shift registers as well as, as required, a counter for the time information and/or a read-write subassembly via which the shift register is loaded and read out by the control computer as desired. With the clock pulse signal, the desired drive values and/or the detected measurement values are shifted further in the shift register(s), as required, together with the corresponding time data each by one memory location. The counter optionally supplies the above-mentioned time information and is likewise incremented at the clock frequency of the subassembly. The read-write subassembly, when driven by the computer, reads out or writes into the shift register.
- In a somewhat more complex configuration, a single-chip controller can be additionally provided via which the shift registers and, if required, the counter and the read-write subassembly can be driven and administered. In this way, the performance of the individual components can be coordinated in a targeted manner and, if needed, also changed. Individual components or all components, such as the counter, can be emulated directly by the single-chip controller.
- The object of the invention can also be realized only by a microprocessor which emulates the individual components completely by a corresponding program. To emulate the shift register and the read-write subassembly, the microprocessor can reserve a memory region of the microprocessor and organize the read-and-write operations controlled by the program in the same manner as the above-described operation of the shift register and of the read-write subassembly. Storage of the above-mentioned desired drive values in response to a command of the computer into different storage locations and the transmission of the desired drive values in correspondence to the applied clock signal to the drives as well as the storage of the measured measurement values at the correct clock frequency and the read-out of the measured values to the control computer are realized exclusively in the microprocessor.
- The invention will now be described with reference to the drawings wherein:
- FIG. 1 is a schematic block diagram of a control arrangement of a corresponding coordinate measuring apparatus; and, FIG. 2 is a detailed schematic of the subassembly identified in FIG. 1 as “real-time clocked data buffer”.
- FIG. 1 is an overview schematic diagram of the control arrangement of a coordinate measuring apparatus. The control arrangement functions essentially in the manner that first a so-called desired position value Li is computed from the data of a geometric element to be measured on a workpiece surface. The
drives 14 are driven to move the probe head in the three coordinate directions (x, y, z) in accordance with these desired position values Li. The desired position values Li provide the precise position for each of the three drives in the three coordinate directions for a fixed time point and are sequentially processed in accordance with a clock frequency. The desired position values Li are transmitted to theposition controller 13 which drives thedrives 14 in the three coordinate directions (x, y, z) in accordance with the desired position values. The exact position (Xm, Ym, Zm) of the probe head in the machine coordinate system can be measured via correspondingpath measuring units 15, that is, scales and corresponding sensors for reading the scales. The exact position (Xm, Ym, Zm) of the probe head can be fed back via thesubassembly 16 identified as “measurement” to, on the one hand, theposition controller 13 in order to readjust correspondingly and, on the other hand, to the control computer unit (3, 4, 5) in order to be able to evaluate the measurement results. - In the same manner, the control arrangement likewise generates so-called desired measurement forces (Fdes) with which the
probe pin 7 is charged in the three coordinate directions (x, y, z) relative to the probe head 2 by correspondingmeasurement force generators 23. The corresponding measurement forces are likewise computed in the control arrangement and are computed in such a manner that they are directed perpendicularly to the workpiece surface at the particular measurement point. The components of the measurement force vector are transmitted to asubassembly 22 which, in turn, drives themeasurement force generators 23 in the probe head 2. The effectively adjusted actual measuring force (Fix, Fiy, Fiz) can be measured based on the respective currents flowing through the individual measuring force generators and correspondingly fed back to the control computer unit (3, 4, 5). This is so if themeasurement force generators 23 are, for example, electromagnetic linear motors. Furthermore, the deflection of theprobe pin 7 relative to the probe head 2 is measured in the three coordinate measuring directions via correspondingsensors 18 in the probe head 2 and is transmitted as a so-called probe pin deflection (XT, YT, ZT) likewise to the control computer unit (3, 4, 5) for measurement data evaluation and, if required, for feedback to and superposition on the desired position values. - A control arrangement of the above kind is shown in detail in U.S. Pat. Nos. 5,471,406 and 5,726,917, incorporated herein by reference.
- As described above, substantial efforts have been undertaken in recent times to configure increasingly the individual components of the control arrangement (which were configured in the above-mentioned documents as individual microprocessors having their own firmware) so that their function can be assumed by the central unit of the control computer unit (3, 4, 5). As already described, the very considerable problem is present that no operating systems capable of real time operation are present in present day computers so that a supply, at correct times, of the desired drive values (that is, for example, the desired position values Li) to the
position controller 13 or a chronological detection of the measurement values (such as the machine positions (Xm, Ym, Zm) and the probe pin deflection (XT, YT, ZT)) to the control computer (3, 4, 5) cannot be ensured. The operating programs UNIX, LINUX, WINDOWS NT, WINDOWS 98, et cetera are included in those operating systems which are not capable of real time operation. - In order to meet these requirements, the control arrangement of FIG. 1 includes a
subassembly 1 identified as “real-time clocked data buffer” in which several desired drive values (Li, Fdes) are stored in advance in response to a command of the control computer unit (3, 4, 5). The desired drive values (Li, Fdes) are to be moved to in the following sequences and are automatically transmitted at the clock frequency to the drives (14, 23) of the coordinate measuring apparatus. In this way, the desired drive values (Li, Fdes) can be computed in the control computer unit (3, 4, 5) with an operating system without real-time characteristic and nonetheless supply the pregiven desired drive values (Li, Fdes) at correct times to the drives (14, 23) sequentially at a fixedly defined clock frequency. - In the same manner, the detection, at correct times, of the measured measurement values has to be taken care of, namely, the measured machine positions (Xm, Ym, Zm), the measured probe pin deflection (xT, yT, ZT) and the actual measurement force (Fix, Fiy, Fiz). The subassembly likewise stores in a time-correct manner several measurement values detected at the pregiven clock frequency sequentially one after the other in the
subassembly 1 and transmits these measured values to the control computer (3, 4, 5) in response to a command therefrom for evaluation and for position control. - The particular values together with time data should be stored in the
subassembly 1 in order to chronologically allocate in each case individual data, that is, the desired drive values (Li, Fdes) and the measured values (Xm, Ym, Zm; XT, YT, ZT; Fix, Fiy, Fiz). These values provide the time point in the measurement sequence at which the particular desired drive value is to be moved to and/or the measurement values are detected. In this way, a clear allocation of the particular values to the time-dependent sequence can be reconstructed even after the fact. - A schematic as to how the
subassembly 1 can be built up is shown in FIG. 2. Referring to FIG. 2, thesubassembly 1 includes two shift-register type memories (8, 9) having memory locations which are shifted to the right by one memory location per clock pulse via a single-chip control 11. Theleft shift register 8 has stored therein the measurement values which include, for example, the probe pin deflection (XT, YT, ZT), the machine position (Xm, Ym, Zm) as well as the actual measurement force (Fix, Fiy, Fiz). As can be seen, the actual measurement values are inputted into the left memory location of theshift register 8 and fill this memory location automatically. In addition, time data (t) is inputted to the upper left memory location of theshift register 8 and provides the exact time point at which the measured values are written into the corresponding memory location. This is the sum of the clock pulse flanks of the clock signal since the start of the measuring sequence, which is counted by thecounter 24, so that it can be precisely reconstructed at which time point the measurement values went into theshift register 8. Thecounter 24 is reset via the line “reset” at the start of a new measuring operation. The content of the particular memory locations is now shifted at the clock frequency of thesubassembly 1 always by one position to the right so that the leftmost memory location can always be filled again with new measurement values. Should thecontrol computer 4 not be able to read out the particular measured values promptly, then the measured values with the corresponding time data (t) during a time space of, for example, 10 clock pulses are buffered in theregister 8. Thesubassembly 1 can then read out all 10 measured values via the read-write subassembly 10 from theregister 8 and transmit them to thecontrol computer 4 when the control computer is again active. - The operation of the
second register 9 is similar wherein the desired drive values (Li, Fdes) are stored. Here, the desired drive values (which are computed in advance, for example, for 10 clock pulses) are written into theregister 9 at the command of the control computer unit (3, 4, 5) together with corresponding time data (t) via the read-write assembly group 10. The time information (t) is likewise computed in advance in the control computer and the desired drive values are the desired position values Li and the desired measurement force values Fdes. Theregister 9 is now filled with the desired drive values and is shifted to the right at clock frequency by one memory location so that, in the column of theregister 9 farthest to the right, there are always the actual drive values present and these can be transmitted further to the corresponding drives, that is, to themeasurement force generators 23 and the drives of the coordinate measuringapparatus 14. In this way, it is possible that the control computer unit (3, 4, 5) cannot supply desired drive values during a number of clock pulses and the coordinate measuring apparatus can nonetheless continue to perform the previously defined measuring sequence. - After the control computer is again active in such a case, in a next step, the memory locations of the
register 9 which have been emptied can be correspondingly refilled. Furthermore, it is also possible to overwrite the above-described memory locations of theregister 9 with new data when, for example, the actual geometry of the workpiece deviates from the desired geometry and therefore the desired position values L1 for driving thedrive 14 must be revised. - At this point, it should be emphasized that it is the object of the control arrangement to always read out by the computer unit (3, 4, 5) the most current measurement values from the left column of the
shift register 8 in real time as well as to update the desired drive values in the right column of theshift register 9 in real time operation. This requirement results from the fact that, for a deviation of the workpiece relative to its desired contour, the desired position values Li must be readjusted as early as possible in order to hold theprobe pin 8 in its permissible deflection range. The buffering of the measured values and the desired drive values in the shift registers (8, 9) only takes place in order to ensure a trouble-free further operation of the coordinate measuring apparatus in time intervals in which the control computer (3, 4, 5) cannot process these values. - With respect to the clock signal for the
subassembly 1 and the subassemblies (13, 16, 19) and 22 it should be further noted that the clock signal is here for the entire system and serves to synchronize the measuring sequence and therefore has a clock frequency of, for example, 1 KHz. The clock frequency has nothing to do with the operating clock frequency of the single-chip controller or the control computer which is usually greater than 1 MHz. - The clock frequency can, for example, be derived from the operating frequency of the control computer unit (3, 4, 5) in that the operating clock frequency is subdivided to a relatively low clock pulse rate. Of course, a clock generator, which is independent of the control computer, can also be used.
- The synchronization of the write-in operation into the
shift register 9 should take place in that the control computer unit (3, 4, 5) at first reads out thetime data 8 of the left column and the shift register is then filled correspondingly with new desired drive values. The drive of individual components in thesubassembly 1 takes place via a single-chip controller 11 which assumes organization of the individual components. The single-chip controller 11 is operatively connected to the control computer unit (3, 4, 5) and exchanges data Di therewith. - It is understood that the foregoing description is that of the preferred embodiments of the invention and that various changes and modifications may be made thereto without departing from the spirit and scope of the invention as defined in the appended claims.
Claims (11)
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19900724A DE19900724A1 (en) | 1999-01-12 | 1999-01-12 | Coordinate measuring device |
DE19900724 | 1999-01-12 | ||
DE19900724.1 | 1999-01-12 |
Publications (2)
Publication Number | Publication Date |
---|---|
US20020091497A1 true US20020091497A1 (en) | 2002-07-11 |
US6449581B1 US6449581B1 (en) | 2002-09-10 |
Family
ID=7893949
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/481,867 Expired - Lifetime US6449581B1 (en) | 1999-01-12 | 2000-01-12 | Coordinate measuring apparatus |
Country Status (3)
Country | Link |
---|---|
US (1) | US6449581B1 (en) |
EP (1) | EP1020777B9 (en) |
DE (2) | DE19900724A1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1624281A1 (en) | 2004-08-06 | 2006-02-08 | Dr. Johannes Heidenhain GmbH | Probe system and method of operating a probe system |
WO2007074069A1 (en) * | 2005-12-23 | 2007-07-05 | Robert Bosch Gmbh | Microcontroller system comprising peripheral units |
EP2204636A3 (en) * | 2009-01-06 | 2013-05-15 | Mitutoyo Corporation | Coordinate measuring machine |
US10112237B2 (en) | 2013-05-03 | 2018-10-30 | Heraeus Noblelight Gmbh | Device for drying and sintering metal-containing ink on a substrate |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19950869A1 (en) * | 1999-10-22 | 2001-04-26 | Wolf & Beck Gmbh Dr | Method to determine measurement points on work pieces; involves using co-ordinate measurement device, sensors and common electrical trigger signal to determine measurement time exactly |
EP1498691B1 (en) * | 2000-05-23 | 2009-08-12 | Carl Zeiss Industrielle Messtechnik GmbH | Correction method for coordinate measuring machines |
JP5557620B2 (en) * | 2010-06-29 | 2014-07-23 | 株式会社ミツトヨ | Shape measuring device |
WO2016183339A1 (en) | 2015-05-12 | 2016-11-17 | Hexagon Metrology, Inc. | Apparatus and method of controlling a coordinate measuring machine using environmental information or coordinate measuring machine information |
EP3303991B1 (en) | 2015-05-29 | 2019-09-18 | Hexagon Metrology, Inc | Coordinate measuring machine with object location logic |
DE102019110508A1 (en) * | 2019-04-23 | 2020-10-29 | Carl Zeiss Industrielle Messtechnik Gmbh | Method for controlling a coordinate measuring machine and a coordinate measuring machine |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5255371A (en) * | 1990-04-02 | 1993-10-19 | Unisys Corporation | Apparatus for interfacing a real-time communication link to an asynchronous digital computer system by utilizing grouped data transfer commands |
DE4245012B4 (en) * | 1992-04-14 | 2004-09-23 | Carl Zeiss | Method for measuring shaped elements on a coordinate measuring machine |
DE4212455C3 (en) * | 1992-04-14 | 2001-09-06 | Zeiss Carl | Method for measuring shaped elements on a coordinate measuring machine |
JP2574983B2 (en) * | 1993-04-06 | 1997-01-22 | 本田技研工業株式会社 | Multitask control system |
DE4436507A1 (en) * | 1994-10-13 | 1996-04-18 | Zeiss Carl Fa | Coordinate measurement of workpiece using coordinate measuring unit |
DE19529547A1 (en) | 1995-08-11 | 1997-02-13 | Zeiss Carl Fa | Method for controlling coordinate measuring machines |
DE19712029A1 (en) * | 1997-03-21 | 1998-09-24 | Zeiss Carl Fa | Method for controlling coordinate measuring machines according to target data |
JP3199684B2 (en) * | 1998-07-17 | 2001-08-20 | 政人 石井 | measuring device |
-
1999
- 1999-01-12 DE DE19900724A patent/DE19900724A1/en not_active Ceased
- 1999-12-15 DE DE59914736T patent/DE59914736D1/en not_active Expired - Lifetime
- 1999-12-15 EP EP99124987A patent/EP1020777B9/en not_active Expired - Lifetime
-
2000
- 2000-01-12 US US09/481,867 patent/US6449581B1/en not_active Expired - Lifetime
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1624281A1 (en) | 2004-08-06 | 2006-02-08 | Dr. Johannes Heidenhain GmbH | Probe system and method of operating a probe system |
WO2007074069A1 (en) * | 2005-12-23 | 2007-07-05 | Robert Bosch Gmbh | Microcontroller system comprising peripheral units |
EP2204636A3 (en) * | 2009-01-06 | 2013-05-15 | Mitutoyo Corporation | Coordinate measuring machine |
US10112237B2 (en) | 2013-05-03 | 2018-10-30 | Heraeus Noblelight Gmbh | Device for drying and sintering metal-containing ink on a substrate |
Also Published As
Publication number | Publication date |
---|---|
DE19900724A1 (en) | 2000-07-27 |
DE59914736D1 (en) | 2008-06-05 |
EP1020777A3 (en) | 2006-06-28 |
EP1020777B1 (en) | 2008-04-23 |
EP1020777B9 (en) | 2009-10-21 |
US6449581B1 (en) | 2002-09-10 |
EP1020777A2 (en) | 2000-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6449581B1 (en) | Coordinate measuring apparatus | |
CN100458977C (en) | Apparatus and method for adaptive controlling flash storage interface reading and writing speed | |
CN108168418A (en) | For being stored with the flip-flop number of the measuring apparatus of count value in a flash memory | |
CA1084576A (en) | Data plotter | |
MY103330A (en) | Control system of an industrial robot | |
US5977739A (en) | Stepping motor provided with a drive control integrated circuit having a prestored operating pattern | |
US5974485A (en) | Arrangement and method for improving the data integrity with a ring buffer | |
CA2082919C (en) | Method for diagnosing an electrically controlled mechanical device | |
KR0163385B1 (en) | Digital scan converter of ultrasonic diagnostic device using uniform ladder algorithm | |
US6330485B1 (en) | High-speed multi-task system | |
US5070448A (en) | Method for testing a microprogrammed input/output interface using steal techniques | |
SU474435A1 (en) | Sensible robot | |
JPH0567026A (en) | Peripheral equipment controller | |
JP3005807B2 (en) | Waveform recorder | |
JP2546038B2 (en) | Multiple mouse control method and device | |
JPH02235104A (en) | Programmable controller | |
JP2557491B2 (en) | Recorder | |
JPH09149097A (en) | Alarm raising device | |
RU1805450C (en) | Multichannel device for numeric control of stepping motors | |
JPH07174387A (en) | Self diagnostic device for air-conditioning machine | |
JPH01281520A (en) | External storage device | |
SU1285435A2 (en) | Programmed control device | |
JPH01124513U (en) | ||
EP0534766A2 (en) | Data write device | |
CN113276410A (en) | Leveling device, leveling method, computer device and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: CARL-ZEISS-STIFTUNG HEIDENHEIM/BRENZ, GERMANY Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:RUCK, OTTO;REEL/FRAME:010811/0926 Effective date: 20000201 |
|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
AS | Assignment |
Owner name: CARL ZEISS INDUSTRIELLE MESSTECHNIK GMBH, GERMANY Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:CARL ZEISS STIFTUNG, HEIDENHEIM;REEL/FRAME:015530/0041 Effective date: 20040616 |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
FPAY | Fee payment |
Year of fee payment: 12 |