<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xml:lang="en" article-type="research-article">
<front>
<journal-meta>
<journal-id journal-id-type="nlm-ta">Sensors</journal-id>
<journal-title>Sensors</journal-title>
<issn pub-type="epub">1424-8220</issn>
<publisher>
<publisher-name>Molecular Diversity Preservation International (MDPI)</publisher-name></publisher></journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3390/s120709551</article-id>
<article-id pub-id-type="publisher-id">sensors-12-09551</article-id>
<article-categories>
<subj-group>
<subject>Article</subject></subj-group></article-categories>
<title-group>
<article-title>Carriage Error Identification Based on Cross-Correlation Analysis and Wavelet Transformation</article-title></title-group>
<contrib-group>
<contrib contrib-type="author">
<name><surname>Mu</surname><given-names>Donghui</given-names></name><xref ref-type="aff" rid="af1-sensors-12-09551"><sup>1</sup></xref></contrib>
<contrib contrib-type="author">
<name><surname>Chen</surname><given-names>Dongju</given-names></name><xref ref-type="aff" rid="af1-sensors-12-09551"><sup>1</sup></xref><xref ref-type="corresp" rid="c1-sensors-12-09551"><sup>*</sup></xref></contrib>
<contrib contrib-type="author">
<name><surname>Fan</surname><given-names>Jinwei</given-names></name><xref ref-type="aff" rid="af1-sensors-12-09551"><sup>1</sup></xref></contrib>
<contrib contrib-type="author">
<name><surname>Wang</surname><given-names>Xiaofeng</given-names></name><xref ref-type="aff" rid="af1-sensors-12-09551"><sup>1</sup></xref></contrib>
<contrib contrib-type="author">
<name><surname>Zhang</surname><given-names>Feihu</given-names></name><xref ref-type="aff" rid="af2-sensors-12-09551"><sup>2</sup></xref></contrib></contrib-group>
<aff id="af1-sensors-12-09551">
<label>1</label> School of Mechanical &amp; Electrical Engineering, Beijing University of Chemical Technology, Chao Yang District, Beijing 100029, China; E-Mails: <email>badyun@163.com</email> (D.M.); <email>jwfan@bjut.edu.cn</email> (J.F.); <email>wxf19982000@163.com</email> (X.W.)</aff>
<aff id="af2-sensors-12-09551">
<label>2</label> Department of Mechanical Engineering, Harbin Institute of Technology, Harbin 15001, China; E-Mail: <email>zhangfhu@hit.edu.cn</email></aff>
<author-notes>
<corresp id="c1-sensors-12-09551">
<label>*</label>Author to whom correspondence should be addressed; E-mail: <email>dongjuchen@gmail.com</email>; Tel./Fax: +86-10-6739-1622.</corresp></author-notes>
<pub-date pub-type="collection">
<year>2012</year></pub-date>
<pub-date pub-type="epub">
<day>12</day>
<month>07</month>
<year>2012</year></pub-date>
<volume>12</volume>
<issue>7</issue>
<fpage>9551</fpage>
<lpage>9565</lpage>
<history>
<date date-type="received">
<day>24</day>
<month>05</month>
<year>2012</year></date>
<date date-type="rev-recd">
<day>28</day>
<month>06</month>
<year>2012</year></date>
<date date-type="accepted">
<day>03</day>
<month>07</month>
<year>2012</year></date></history>
<permissions>
<copyright-statement>© 2012 by the authors; licensee MDPI, Basel, Switzerland.</copyright-statement>
<copyright-year>2012</copyright-year>
<license>
<p>This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (http://creativecommons.org/licenses/by/3.0/).</p></license></permissions>
<abstract>
<p>This paper proposes a novel method for identifying carriage errors. A general mathematical model of a guideway system is developed, based on the multi-body system method. Based on the proposed model, most error sources in the guideway system can be measured. The flatness of a workpiece measured by the PGI1240 profilometer is represented by a wavelet. Cross-correlation analysis performed to identify the error source of the carriage. The error model is developed based on experimental results on the low frequency components of the signals. With the use of wavelets, the identification precision of test signals is very high.</p></abstract>
<kwd-group>
<kwd>carriage error</kwd>
<kwd>multi-body system</kwd>
<kwd>error identification</kwd>
<kwd>cross-correlation analysis</kwd>
<kwd>wavelet transform</kwd></kwd-group></article-meta></front>
<body>
<sec sec-type="intro">
<label>1.</label>
<title>Introduction</title>
<p>With the rapid advances in the development of electronic and optical devices, machines need to meet high precision requirements. Component errors of machine tools are the main factor which affects the machinery accuracy. Due to some limitation reasons, some errors cannot be tracked in real-time, hence identifying the main errors which affect machinery accuracy is important.</p>
<p>A carriage is an oriented-device that can travel in a given trajectory. It is one of the important moving parts which can determine the surface roughness, the surface shape and the relative position. It has a direct effect on the processing results. In order to improve the accuracy of a machinery tool, analyzing and identifing the carriage error(s) is essential.</p>
<p>The measurement of the carriage straightness error plays an important role in metrology. Various methods are adopted in the industrial measurement field [<xref ref-type="bibr" rid="b1-sensors-12-09551">1</xref>–<xref ref-type="bibr" rid="b5-sensors-12-09551">5</xref>]. Wei Gao [<xref ref-type="bibr" rid="b6-sensors-12-09551">6</xref>] used the capacity probe and reversal method to measure and compensate the straightness of guideways. Other attempts were made to measure motion error sources of NC machines from circular tests. However, in the case of long-range measurement, the accuracy is affected by environmental conditions.</p>
<p>Some researchers have analyzed and identified the motion errors of the machine tool including the guideway errors using some direct ways. For example, Kakino <italic>et al.</italic> [<xref ref-type="bibr" rid="b7-sensors-12-09551">7</xref>–<xref ref-type="bibr" rid="b9-sensors-12-09551">9</xref>] proposed a step-by-step identification method of dominant motion error sources with the aim of extracting major motion error patterns from several circular test results. However, since the method requires an insight into motion error patterns step by step, it may be of limited use if error sources simultaneously influence the motion errors. Recently, correlation analysis has been used in many research fields. Wieleba [<xref ref-type="bibr" rid="b10-sensors-12-09551">10</xref>] applied correlation analysis to tribological research, evaluating the coefficient of friction and wear rate of PTFE composite with steel counterface roughness and hardness. Lockwood <italic>et al.</italic> [<xref ref-type="bibr" rid="b11-sensors-12-09551">11</xref>] used digital image correlation (DIC) to provide an accurate and fast method of digitally reconstructing fracture surfaces. Ekinci <italic>et al.</italic> [<xref ref-type="bibr" rid="b12-sensors-12-09551">12</xref>] investigated the relationship between the motion errors of the axis' carriage and the guideways' geometric errors both mathematically and experimentally. The analysis and experiments just for the bearings location and stiffness, guideway and static equilibrium, do not research the relationship between the geometric error and performance of guideway and flatness of the workpiece, and does not identify the guideway errors.</p>
<p>From the above, the previous work just measured or modeled the single component error of a machinery tool. These methods will introduce some errors. The analytical results are different from the actual values. Some researchers have analyzed and identified the motion errors of machine tools from several measured results, but they cannot identify the dominant error from the flatness of workpieces.</p>
<p>Multi-body theory is a theory developed several decades ago and used for analyzing complex mechanical systems with movement errors [<xref ref-type="bibr" rid="b13-sensors-12-09551">13</xref>]. It can be generalized and used to describe complex mechanical systems. Also, both various factors affecting the systems and the mutual coupling relationship can be fully considered. During the early design stages, the kinematic behavior of machine tools can be simulated using multi-body simulation (MBS) tools and a rough estimation [<xref ref-type="bibr" rid="b14-sensors-12-09551">14</xref>] can be obtained using rigid bodies. The simulation enables design engineers to make a preliminary and quick prediction of the kinematic behaviors so as to estimate the effects of the variations of the parameters in the model. The rigid coupled multi-body simulation tool can be used to simulate the kinematic behaviors of machine tools while the control loops of the drives are considered [<xref ref-type="bibr" rid="b15-sensors-12-09551">15</xref>–<xref ref-type="bibr" rid="b17-sensors-12-09551">17</xref>]. Since a machine tool is composed of various parts and it is a multi-body system, multi-body theory can be applied to study its behaviors.</p>
<p>This paper proposes a model for identifying carriage errors of a multi-body system, computes the cross-correlation between the carriage errors and the machining accuracy of a workpiece, as well analyzes and identifies the error sources of the carriage. Straightness and squareness of the carriage are measured and calculated. From the fitting equations, if the errors are given, then a cylindical workpiece is machined and the flatness is measured. Hence, the dominant error sources of the carriage can be deduced by performing the cross-correlation analysis on both the simulation results obtained from the model and the actual data obtained from measuring the flatness of the workpiece. The cross-correlation results show that the impact factor of each error of the carriage on the flatness of the workpiece and the main impact factor of the error from the carriage can be identified.</p></sec>
<sec sec-type="methods">
<label>2.</label>
<title>Analysis Theory</title>
<sec>
<label>2.1.</label>
<title>Multi-Body System and Translated Matrix</title>
<p>In this session, the multi-body theory is used to model the errors of the carriage. In the multi-body system, topology and low-order array are used for describing the relationship of the physical body. Topology is a major area in mathematics. It is a subject that studies the preservative properties of continuous deformations of the objects, such as the deformations due to stretching without tearing or gluing. This subject has overlapped with geometry and set theory, such as space, dimension and transformation. It is used to describe a family of sets that have certain properties and are used to define a topological space which is a basic object of topology. <xref ref-type="fig" rid="f1-sensors-12-09551">Figure 1(a)</xref> shows the structure of a machinery tool in the laboratory. It includes X and Z axes which are supported by a bridge. The topology of a machinery tool is obtained from its structure. As shown in <xref ref-type="fig" rid="f1-sensors-12-09551">Figure 1(b)</xref>, body 0 includes a bed, a spindle and a workpiece. Body 1 is the X carriage. Body 2 includes the Z carriage and a tool. The low-order array is calculated as follows:
<disp-formula id="FD1">
<label>(1)</label>
<mml:math id="mm1" display="block">
<mml:semantics id="sm1">
<mml:mrow>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msup>
<mml:mi>L</mml:mi>
<mml:mi>n</mml:mi></mml:msup>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mi>L</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:msup>
<mml:mi>L</mml:mi>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msup>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mi>S</mml:mi></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msup>
<mml:mi>L</mml:mi>
<mml:mn>0</mml:mn></mml:msup>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>j</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mi>j</mml:mi></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msup>
<mml:mi>L</mml:mi>
<mml:mi>n</mml:mi></mml:msup>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>0</mml:mn></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow></mml:mrow></mml:mrow></mml:semantics></mml:math></disp-formula>where <italic>L</italic> is the operator of the lower-order and <italic>S</italic> is <italic>n</italic> lower-order of body <italic>j</italic> when <italic>L</italic>(<italic>j</italic>) = <italic>S</italic>, <italic>S</italic> is the adjacent lower body of the body <italic>j</italic>, and <italic>j</italic> is the adjacent higher-order body of body <italic>S</italic>. In the multi-system, the body which is connected to the ground is fixed. It is called the inertia body. The coordinate of each body is the sub-coordinate in the coordinate system of the inertia body.</p>
<p>The total error motion of the <italic>i<sup>th</sup></italic> and <italic>j<sup>th</sup></italic> body is a combination of the rotational and translational errors. For the motion of the body <italic>i</italic>, it rotates anticlockwise by the angle <italic>α<sub>ij</sub></italic> about the <italic>X</italic> axis first. Then, it rotates anticlockwise by the angle <italic>β<sub>ij</sub></italic> about the <italic>Y</italic> axis. Finally, it rotates anticlockwise by the angle <italic>γ<sub>ij</sub></italic> about the <italic>Z</italic> axis. At the same time, it translates <italic>x<sub>ij</sub></italic> along the <italic>X</italic> axis first. Then, it translates <italic>y<sub>ij</sub></italic> along the <italic>Y</italic> axis. Finally, it translates <italic>z<sub>ij</sub></italic> along the <italic>Z</italic> axis. The actual position of the body <italic>j</italic> with respect to the reference frame can be obtained by multiplying the coordinate transformation matrix. The transformation matrix of the body <italic>i</italic> with respect to its adjacent body <italic>j</italic> is given below:
<disp-formula id="FD2">
<label>(2)</label>
<mml:math id="mm2" display="block">
<mml:semantics id="sm2">
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>[</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mn>1</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:mo>cos</mml:mo>
<mml:msub>
<mml:mi>α</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mo>sin</mml:mo>
<mml:msub>
<mml:mi>α</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:mo>sin</mml:mo>
<mml:msub>
<mml:mi>α</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:mo>cos</mml:mo>
<mml:msub>
<mml:mi>α</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>1</mml:mn></mml:mtd></mml:mtr></mml:mtable></mml:mrow>
<mml:mo>]</mml:mo></mml:mrow>
<mml:mspace width="0.2em"/>
<mml:mrow>
<mml:mo>[</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>cos</mml:mo>
<mml:msub>
<mml:mi>β</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:mo>sin</mml:mo>
<mml:msub>
<mml:mi>β</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>1</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mo>sin</mml:mo>
<mml:msub>
<mml:mi>β</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:mo>cos</mml:mo>
<mml:msub>
<mml:mi>β</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>1</mml:mn></mml:mtd></mml:mtr></mml:mtable></mml:mrow>
<mml:mo>]</mml:mo></mml:mrow>
<mml:mspace width="0.2em"/>
<mml:mrow>
<mml:mo>[</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>cos</mml:mo>
<mml:msub>
<mml:mi>γ</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mo>sin</mml:mo>
<mml:msub>
<mml:mi>γ</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>sin</mml:mo>
<mml:msub>
<mml:mi>γ</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:mo>cos</mml:mo>
<mml:msub>
<mml:mi>γ</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>1</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>1</mml:mn></mml:mtd></mml:mtr></mml:mtable></mml:mrow>
<mml:mo>]</mml:mo></mml:mrow>
<mml:mspace width="0.2em"/>
<mml:mrow>
<mml:mo>[</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mn>1</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>1</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>1</mml:mn></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>1</mml:mn></mml:mtd></mml:mtr></mml:mtable></mml:mrow>
<mml:mo>]</mml:mo></mml:mrow></mml:mrow></mml:semantics></mml:math></disp-formula>where <italic>α<sub>ij</sub></italic>, <italic>β<sub>ij</sub></italic>, <italic>γ<sub>ij</sub></italic> are the Eulerian angles of axis <italic>X</italic>, <italic>Y</italic> and <italic>Z; x<sub>ij</sub></italic>, <italic>y<sub>ij</sub></italic>, <italic>z<sub>ij</sub></italic> are the linearity displacement in axis <italic>x</italic>, <italic>y</italic> and <italic>z</italic>; subscript <italic>i</italic> and <italic>j</italic> is the body number. The transformation matrix between two random body <italic>i</italic> and <italic>k</italic> is:
<disp-formula id="FD3">
<label>(3)</label>
<mml:math id="mm3" display="block">
<mml:semantics id="sm3">
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>k</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:munderover>
<mml:mo>∏</mml:mo>
<mml:mrow>
<mml:msup>
<mml:mi>L</mml:mi>
<mml:mi>n</mml:mi></mml:msup>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mi>i</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:munderover>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:msup>
<mml:mi>L</mml:mi>
<mml:mi>n</mml:mi></mml:msup>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:msup>
<mml:mi>L</mml:mi>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msup>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>k</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:msub></mml:mrow></mml:mrow></mml:semantics></mml:math></disp-formula></p></sec>
<sec>
<label>2.2.</label>
<title>Components Error of the Machinery Tool</title>
<p>A rigid solid body has six degree of freedom [<xref ref-type="bibr" rid="b18-sensors-12-09551">18</xref>], three translational errors and three rotational errors (roll, pitch, and yaw) for determining its location. When the slide moves along any axis, five degrees of freedom are limited in the space. In this paper, the errors of two carriages of the machinery tool shown in <xref ref-type="fig" rid="f1-sensors-12-09551">Figure 1(a)</xref> are modeled based on the homogeneous coordinate transformation. The description of the carriages errors is shown in <xref ref-type="fig" rid="f1-sensors-12-09551">Figure 1(b)</xref>. Since the effect of the carriages errors on the machining results has been just considered as well as the spindle and the workpiece are shown together with the bed, they are fixed with the ground. The Z carriage and the tool are shown together. That is, the total error includes the Z carriage error. The tool's coordinate is an ideal condition, but it's error is ignored. Here, the corresponding errors of the X carriage are shown with the subscript 1, and the Z carriage ones are expressed with the subscript 2. The positional errors Δ<italic>y</italic><sub>1</sub>, Δ<italic>z</italic><sub>1</sub>, Δ<italic>x</italic><sub>2</sub> and Δ<italic>y</italic><sub>2</sub> are the translational errors. Δ<italic>α</italic><sub>1</sub> and Δ<italic>γ</italic><sub>2</sub> are the roll errors of the carriage, Δ<italic>β</italic><sub>1</sub> and Δ<italic>β</italic><sub>2</sub> are the pitch errors. Δ<italic>γ</italic><sub>1</sub> and Δ<italic>α</italic><sub>2</sub> are the yaw errors. Assume that the coordinates of the tool at <italic>P</italic> (<italic>p</italic><sub>x</sub>, <italic>p</italic><sub>y</sub>, <italic>p</italic><sub>z</sub>):
<disp-formula id="FD4">
<label>(4)</label>
<mml:math id="mm4" display="block">
<mml:semantics id="sm4">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mi>A</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mn>21</mml:mn></mml:mrow></mml:msub>
<mml:mi>P</mml:mi>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>[</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mn>1</mml:mn></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>γ</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>β</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>γ</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mn>1</mml:mn></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>α</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>β</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>α</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mn>1</mml:mn></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>1</mml:mn></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>1</mml:mn></mml:mtd></mml:mtr></mml:mtable></mml:mrow>
<mml:mo>]</mml:mo></mml:mrow>
<mml:mspace width="0.2em"/>
<mml:mrow>
<mml:mo>[</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mn>1</mml:mn></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>γ</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>β</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>γ</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mn>1</mml:mn></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>α</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>β</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>α</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mtd>
<mml:mtd>
<mml:mn>1</mml:mn></mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn></mml:mtd>
<mml:mtd>
<mml:mn>1</mml:mn></mml:mtd></mml:mtr></mml:mtable></mml:mrow>
<mml:mo>]</mml:mo></mml:mrow>
<mml:mspace width="0.2em"/>
<mml:mrow>
<mml:mo>[</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>x</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>y</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>z</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>1</mml:mn></mml:mtd></mml:mtr></mml:mtable></mml:mrow>
<mml:mo>]</mml:mo></mml:mrow></mml:mrow></mml:semantics></mml:math></disp-formula></p>
<p>The deviation between the actual coordinate <italic>P<sub>A</sub></italic> and the ideal coordinate <italic>P</italic> is the volumetric error. That is, the machinery error under the effect of the carriages is:
<disp-formula id="FD5">
<label>(5)</label>
<mml:math id="mm5" display="block">
<mml:semantics id="sm5">
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mi>A</mml:mi></mml:msub>
<mml:mo>-</mml:mo>
<mml:mi>P</mml:mi>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>[</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>x</mml:mi></mml:msub>
<mml:mo>-</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>γ</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>γ</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>y</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>β</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>β</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>z</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>γ</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>γ</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>x</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>y</mml:mi></mml:msub>
<mml:mo>-</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>α</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>α</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>z</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>β</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>β</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>x</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>α</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>α</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>y</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>z</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>1</mml:mn></mml:mtd></mml:mtr></mml:mtable></mml:mrow>
<mml:mo>]</mml:mo></mml:mrow>
<mml:mo>-</mml:mo>
<mml:mrow>
<mml:mo>[</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>x</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>y</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>z</mml:mi></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>1</mml:mn></mml:mtd></mml:mtr></mml:mtable></mml:mrow>
<mml:mo>]</mml:mo></mml:mrow>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>[</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>γ</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>γ</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>y</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>β</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>β</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>z</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>γ</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>γ</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>x</mml:mi></mml:msub>
<mml:mo>-</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>α</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>α</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>z</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>β</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>β</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>x</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>α</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>α</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>y</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>1</mml:mn></mml:mtd></mml:mtr></mml:mtable></mml:mrow>
<mml:mo>]</mml:mo></mml:mrow></mml:mrow></mml:semantics></mml:math></disp-formula></p></sec>
<sec>
<label>2.3.</label>
<title>Cross-Correlation Analysis</title>
<p>The cross-correlation techniques have been widely used in engineering and science, particularly in the fields of measurement and communication [<xref ref-type="bibr" rid="b19-sensors-12-09551">19</xref>]. The power of the techniques lies in their ability to eliminate the independent noise and the disturbances naturally occurring in the systems. In this paper, a correlation technique has been demonstrated to constitute a powerful tool for identifying the main impact errors of the carriage system on machinery accuracy. In the signal processing community, the cross-correlation refers to a time-lag function used to measure the similarity of two waveforms. To characterize a correlation between two random variables <italic>x</italic> and <italic>y</italic>, where their realizations are denoted as <italic>x</italic> = {<italic>x</italic><sub>1</sub>,….,<italic>x</italic><sub>n</sub>} and <italic>y</italic> = {<italic>y</italic><sub>1</sub>,….,<italic>y</italic><sub>n</sub>}, respectively, the correlation coefficient is used to measure the similarity between these two random variables [<xref ref-type="bibr" rid="b20-sensors-12-09551">20</xref>]:
<disp-formula id="FD6">
<label>(6)</label>
<mml:math id="mm6" display="block">
<mml:semantics id="sm6">
<mml:mrow>
<mml:msub>
<mml:mi>γ</mml:mi>
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mi>y</mml:mi></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:munderover>
<mml:mtext>∑</mml:mtext>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo>-</mml:mo>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo>-</mml:mo>
<mml:mover accent="true">
<mml:mi>y</mml:mi>
<mml:mo>¯</mml:mo></mml:mover>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mrow>
<mml:msqrt>
<mml:mrow>
<mml:munderover>
<mml:mtext>∑</mml:mtext>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo>-</mml:mo>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:msqrt>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:munderover>
<mml:mtext>∑</mml:mtext>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo>-</mml:mo>
<mml:mover accent="true">
<mml:mi>y</mml:mi>
<mml:mo>¯</mml:mo></mml:mover>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:msqrt></mml:mrow></mml:mfrac></mml:mrow></mml:semantics></mml:math></disp-formula></p></sec>
<sec>
<label>2.4.</label>
<title>Daubechies Wavelet</title>
<p>Daubechies wavelets can describe the details of signals because of their compact support and orthogonality properties. Another advantage of using compact support wavelets is they have fewer degree of freedoms than the others. Daubechies wavelets have enormous potential for the analysis of problems with local high gradients. For constructing Daubechies, the properties of Daubechies wavelets are presented below. A more detailed description can be found in [<xref ref-type="bibr" rid="b21-sensors-12-09551">21</xref>]. Like other wavelets, both the scaling function <italic>φx</italic>) and the wavelet function <italic>ψ</italic>(<italic>x</italic>) of the Daubechies wavelets satisfy the following two-scaling relation:
<disp-formula id="FD7">
<label>(7)</label>
<mml:math id="mm7" display="block">
<mml:semantics id="sm7">
<mml:mrow>
<mml:mi>ϕ</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>0</mml:mn></mml:mrow>
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:munderover>
<mml:mrow>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>i</mml:mi></mml:msub></mml:mrow>
<mml:mi>ϕ</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi>x</mml:mi>
<mml:mo>-</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:semantics></mml:math></disp-formula>
<disp-formula id="FD8">
<label>(8)</label>
<mml:math id="mm8" display="block">
<mml:semantics id="sm8">
<mml:mrow>
<mml:mi>ψ</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>-</mml:mo>
<mml:mi>N</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:munderover>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mi>i</mml:mi></mml:msup>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>-</mml:mo>
<mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:mrow>
<mml:mi>ϕ</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi>x</mml:mi>
<mml:mo>-</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:semantics></mml:math></disp-formula></p>
<p>Define <italic>p<sub>i</sub></italic>(<italic>i</italic> = 0,1,…,<italic>N</italic>-1) as the so-called filter coefficients, the scaling function <italic>φ<sub>N</sub></italic> (where <italic>N</italic> is an even integer) has a support in [0, <italic>N</italic>-1], while the corresponding wavelet <italic>ψ<sub>N</sub></italic> has a support in [1-<italic>N</italic>/2, <italic>N</italic>/2] with <italic>N</italic>/2-1 vanishing wavelet moments [<xref ref-type="bibr" rid="b22-sensors-12-09551">22</xref>]. Different choices of <italic>φx</italic>) and <italic>ψ</italic>(<italic>x</italic>) may have different multi-resolution properties. The scaling functions have compact support.</p></sec></sec>
<sec sec-type="discussion">
<label>3.</label>
<title>Impact of the Carriage Errors on the Flatness of the Workpiece</title>
<p>According to <xref rid="FD5" ref-type="disp-formula">Equation (5)</xref>, the machinery error caused by the <italic>X</italic> carriage in the <italic>Z</italic> direction can be expressed as:
<disp-formula id="FD9">
<label>(9)</label>
<mml:math id="mm9" display="block">
<mml:semantics id="sm9">
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>z</mml:mi>
<mml:mo>=</mml:mo>
<mml:mo>-</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>β</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>β</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>x</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>α</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>α</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>y</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>2</mml:mn></mml:msub></mml:mrow></mml:semantics></mml:math></disp-formula>where Δ<italic>β</italic><sub>1</sub> and Δ<italic>β</italic><sub>2</sub> are the pitch error and the squareness error of the carriages, Δ<italic>z</italic><sub>1</sub> is the straightness of the <italic>X</italic> carriage, Δ<italic>z</italic><sub>2</sub> is the positional error of the <italic>Z</italic> carriage and is ignored here, <italic>p<sub>x</sub></italic> is the displacement of the tool of the machine tool, <italic>p<sub>y</sub></italic> = 0 for two-axis machine tool.</p>
<sec>
<label>3.1.</label>
<title>Straightness of the Carriage</title>
<p>If the <italic>X</italic> carriage has a straightness error Δ<italic>z</italic><sub>1</sub>(<italic>x</italic>) in the vertical plane, then it will be reflected in the tool path. As shown in <xref ref-type="fig" rid="f2-sensors-12-09551">Figure 2</xref>, the cross carriage is expressed with subscript 1, and Z carriage is expressed with subscript 2, Δ<italic>α</italic><sub>1</sub>, Δ<italic>γ</italic><sub>2</sub> are roll errors of carriage, Δ<italic>β</italic><sub>1</sub>, Δ<italic>β</italic><sub>2</sub> are the pitch errors, Δ<italic>γ</italic><sub>1</sub>, Δ<italic>α</italic><sub>2</sub> is the yaw errors, the guideway is for turning machine tool. In this research, we turn a cylindrical flat. Since the tool fixed on the <italic>z</italic> guideway moving in the <italic>X</italic> direction, the main error due to the pitch error. Δ<italic>β<sub>2</sub></italic>(<italic>z</italic>) is inducted by the variation of the <italic>x</italic> coordinate in the Z direction, the yaw error Δ<italic>α</italic><sub>2</sub>(x) is not affect by the flatness of the machinery flat workpiece. The calculated value is ignored. The pitch error Δ<italic>β</italic><sub>2</sub>(<italic>z</italic>) is obtained by straightness Δ<italic>x</italic><sub>2</sub>(<italic>z</italic>) of the <italic>Z</italic> carriage. They are expressed by in a polynomial form as follows:</p>
<p>The straightness of the <italic>X</italic> carriage in the vertical plane:
<disp-formula id="FD10">
<label>(10)</label>
<mml:math id="mm10" display="block">
<mml:semantics id="sm10">
<mml:mrow>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>l</mml:mi></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>0</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>k</mml:mi></mml:msub>
<mml:msup>
<mml:mi>x</mml:mi>
<mml:mi>k</mml:mi></mml:msup></mml:mrow></mml:mrow></mml:semantics></mml:math></disp-formula></p>
<p>The induced yaw error:
<disp-formula id="FD11">
<label>(11)</label>
<mml:math id="mm11" display="block">
<mml:semantics id="sm11">
<mml:mrow>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>γ</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo>tan</mml:mo></mml:mrow>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msup>
<mml:mfrac>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>y</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>x</mml:mi></mml:mrow></mml:mfrac>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo>tan</mml:mo></mml:mrow>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msup>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msub>
<mml:mi>a</mml:mi>
<mml:mi>k</mml:mi></mml:msub></mml:mrow>
<mml:mo>⋅</mml:mo>
<mml:msup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msup>
<mml:mo>≈</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msub>
<mml:mi>a</mml:mi>
<mml:mi>k</mml:mi></mml:msub></mml:mrow>
<mml:mo>⋅</mml:mo>
<mml:msup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:semantics></mml:math></disp-formula></p>
<p>The pitch error:
<disp-formula id="FD12">
<label>(12)</label>
<mml:math id="mm12" display="block">
<mml:semantics id="sm12">
<mml:mrow>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>β</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo>tan</mml:mo></mml:mrow>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msup>
<mml:mfrac>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>z</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>x</mml:mi></mml:mrow></mml:mfrac>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo>tan</mml:mo></mml:mrow>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msup>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>k</mml:mi></mml:msub></mml:mrow>
<mml:mo>⋅</mml:mo>
<mml:msup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msup>
<mml:mo>≈</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>k</mml:mi></mml:msub></mml:mrow>
<mml:mo>⋅</mml:mo>
<mml:msup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:semantics></mml:math></disp-formula></p>
<p>Pitch error Δ<italic>β</italic><sub>2</sub>(<italic>z</italic>) is:
<disp-formula id="FD13">
<label>(13)</label>
<mml:math id="mm13" display="block">
<mml:semantics id="sm13">
<mml:mrow>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>β</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>z</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo>tan</mml:mo></mml:mrow>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msup>
<mml:mfrac>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>x</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>z</mml:mi></mml:mrow></mml:mfrac>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo>tan</mml:mo></mml:mrow>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msup>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msub>
<mml:mi>c</mml:mi>
<mml:mi>k</mml:mi></mml:msub></mml:mrow>
<mml:mo>⋅</mml:mo>
<mml:msup>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msup>
<mml:mo>≈</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msub>
<mml:mi>c</mml:mi>
<mml:mi>k</mml:mi></mml:msub></mml:mrow>
<mml:mo>⋅</mml:mo>
<mml:msup>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:semantics></mml:math></disp-formula></p>
<p>The machinery errors caused by the straightness:
<disp-formula id="FD14">
<label>(14)</label>
<mml:math id="mm14" display="block">
<mml:semantics id="sm14">
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>l</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:mo>-</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>k</mml:mi></mml:msub></mml:mrow>
<mml:mo>⋅</mml:mo>
<mml:msup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msup>
<mml:mo>+</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msub>
<mml:mi>c</mml:mi>
<mml:mi>k</mml:mi></mml:msub></mml:mrow>
<mml:mo>⋅</mml:mo>
<mml:msup>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msup>
<mml:mo stretchy="false">)</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>x</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>0</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>k</mml:mi></mml:msub>
<mml:msup>
<mml:mi>x</mml:mi>
<mml:mi>k</mml:mi></mml:msup></mml:mrow></mml:mrow></mml:semantics></mml:math></disp-formula></p></sec>
<sec>
<label>3.2.</label>
<title>Squareness of the Carriage</title>
<p>The major causes for squareness errors are as follows:
<list list-type="order">
<list-item>
<p>In multi-axis machine tools, the carriages are located on the same structure. There is an angular error between the carriages and the structure of the machine tool. In <xref ref-type="fig" rid="f2-sensors-12-09551">Figure 2</xref>, the <italic>X</italic>-axis and the <italic>Z</italic>-axis are located on the gantry. They will generate squareness errors when they are not perpendicular to each other.</p></list-item>
<list-item>
<p>When the two axes are not perpendicular due to the upright column tilts forwards or backwards, or due to the right or left when the column base is not horizontal, the two-axis machine of a reference coordinate system will fix the machinery frame to each body in the kinematic chain. Based on the reference Cartesian coordinate systems, the <italic>Y</italic>-reference axes coincide with the actual <italic>Y</italic> machinery axis. Thus, the actual <italic>Y</italic> axis has no angular error or squareness error component. The actual <italic>X</italic> axis has only one angular or squareness error Δ<italic>β<sub>xz</sub></italic> on the <italic>ZX</italic> plane. The machinery error caused by squareness is:
<disp-formula id="FD15">
<label>(15)</label>
<mml:math id="mm15" display="block">
<mml:semantics id="sm15">
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>q</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:mo>-</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>β</mml:mi>
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mi>z</mml:mi></mml:mrow></mml:msub>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>x</mml:mi></mml:msub></mml:mrow></mml:semantics></mml:math></disp-formula></p></list-item></list></p>
<p>Therefore, the machinery error caused by the straightness and the squareness of the carriage according to <xref rid="FD5" ref-type="disp-formula">Equation (5)</xref> is:
<disp-formula id="FD16">
<label>(16)</label>
<mml:math id="mm16" display="block">
<mml:semantics id="sm16">
<mml:mrow>
<mml:mi>E</mml:mi>
<mml:mi>z</mml:mi>
<mml:mo>=</mml:mo>
<mml:mo>-</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>k</mml:mi></mml:msub></mml:mrow>
<mml:mo>⋅</mml:mo>
<mml:msup>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msup>
<mml:mo>+</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>⋅</mml:mo>
<mml:msub>
<mml:mi>c</mml:mi>
<mml:mi>k</mml:mi></mml:msub></mml:mrow>
<mml:mo>⋅</mml:mo>
<mml:msup>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>-</mml:mo>
<mml:mn>1</mml:mn></mml:mrow></mml:msup>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mi>β</mml:mi>
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mi>z</mml:mi></mml:mrow></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>x</mml:mi></mml:msub>
<mml:mo>+</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>0</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mi>k</mml:mi></mml:msub>
<mml:msup>
<mml:mi>x</mml:mi>
<mml:mi>k</mml:mi></mml:msup></mml:mrow></mml:mrow></mml:semantics></mml:math></disp-formula></p></sec></sec>
<sec>
<label>4.</label>
<title>Identification for the Carriage Errors</title>
<sec>
<label>4.1.</label>
<title>Simulation for the Carriage Errors</title>
<p>The structure of a machine tool is shown in <xref ref-type="fig" rid="f1-sensors-12-09551">Figure 1(a)</xref>. It is a vertical lathe, and it has one cross-slide and one vertical slide. The cross slide belongs to the aerostatic slide type. The tool is set up in the Z (vertical) carriage. The workpiece is supported by the spindle system. <xref ref-type="fig" rid="f3-sensors-12-09551">Figure 3</xref> shows the experimental setup for the measurement of the straightness of the cross carriage. The photoelectric autocollimator TA80 is mounted on the cross guideway. The measurement range of the device is ±600 arc-s, and the resolution and accuracy are 0.01 arc-s and 0.5 arc-s, respectively. A mirror is mounted on the cross slide. The measurement data is collected with 10 mm intervals. The measured result is 0.3 μm/600 mm. The best polynomial fitting equation of these test data according to <xref rid="FD9" ref-type="disp-formula">Equations (9</xref>–<xref rid="FD16" ref-type="disp-formula">16)</xref> is:
<disp-formula id="FD17">
<label>(17)</label>
<mml:math id="mm17" display="block">
<mml:semantics id="sm17">
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mi>E</mml:mi>
<mml:mi>z</mml:mi>
<mml:mo>=</mml:mo>
<mml:mo>-</mml:mo>
<mml:mn>2.3</mml:mn>
<mml:mo>×</mml:mo>
<mml:msup>
<mml:mn>10</mml:mn>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mn>16</mml:mn></mml:mrow></mml:msup>
<mml:msup>
<mml:mi>x</mml:mi>
<mml:mn>5</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:mn>3.4</mml:mn>
<mml:mo>×</mml:mo>
<mml:msup>
<mml:mn>10</mml:mn>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mn>13</mml:mn></mml:mrow></mml:msup>
<mml:msup>
<mml:mi>x</mml:mi>
<mml:mn>4</mml:mn></mml:msup>
<mml:mo>-</mml:mo>
<mml:mn>1.558</mml:mn>
<mml:mo>×</mml:mo>
<mml:msup>
<mml:mn>10</mml:mn>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mn>10</mml:mn></mml:mrow></mml:msup>
<mml:msup>
<mml:mi>x</mml:mi>
<mml:mn>3</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:mn>2.29</mml:mn>
<mml:mo>×</mml:mo>
<mml:msup>
<mml:mn>10</mml:mn>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mn>8</mml:mn></mml:mrow></mml:msup>
<mml:msup>
<mml:mi>x</mml:mi>
<mml:mn>2</mml:mn></mml:msup></mml:mtd></mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mo>-</mml:mo>
<mml:mn>5.19</mml:mn>
<mml:mo>×</mml:mo>
<mml:msup>
<mml:mn>10</mml:mn>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mn>7</mml:mn></mml:mrow></mml:msup>
<mml:mi>x</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>2.41</mml:mn>
<mml:mo>×</mml:mo>
<mml:msup>
<mml:mn>10</mml:mn>
<mml:mrow>
<mml:mo>-</mml:mo>
<mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:mtd></mml:mtr></mml:mtable></mml:semantics></mml:math></disp-formula></p>
<p>The results obtained by measuring the data and fitting the curve are shown in <xref ref-type="fig" rid="f4-sensors-12-09551">Figure 4</xref>. The abscissa shows the test range from 0 to 600 mm. The vertical coordinate is the value of the straightness with the unit being mm. It shows that the maximum measured straightness error is 2.5 × 10<sup>−4</sup> mm, the maximum measured straightness error is 2.48 × 10<sup>−4</sup> mm and the fitting error is about 0.065 μm. It is approximately at the point of 360 mm test range. Here, the measured straightness is 2 × 10<sup>−5</sup> mm, and the value of the fitting curve is −4.5 × 10<sup>−5</sup> mm. The actual tool displacement is from 0 to 10 mm in the X direction as shown in the blue curve of the small figure region in <xref ref-type="fig" rid="f4-sensors-12-09551">Figure 4</xref>.</p>
<p>To verify the effect of the errors of the carriage on the out-of-flatness of the workpiece, an aluminum workpiece with a diameter of 20 mm has been machined by the two-axis lathe. The workpiece is a cylindrical flat, and it is supported by the rotating spindle of the machine tool. The tool is fixed on the Z carriage. The displacement in the horizontal direction is controlled by the cross-slider. The <italic>Z</italic>-directional depth-of-cut of the cutting tool is kept constant, so that a flat surface could be generated. The rotating speed of the spindle is 110 rpm and the cutting depth is 15 μm.</p>
<p><xref ref-type="fig" rid="f5-sensors-12-09551">Figure 5</xref> shows the measured out-of-flatness of the machined surface with a profiler, with different feed rates: 2 mm/min and 8 mm/min. It shows that the out-of-flatness error is approximately 2 μm. It can also be observed that the out-of-flatness profile has a main component. The <italic>p-v</italic> is 2 μm. In addition, there is a lot of waviness. The vibration amplitude with the feed rate 8 mm/min is larger than that with feed rate 2 mm/min. The straightness and the squareness errors of the cross carriage are included in the out-of-flatness profile. There is a relationship among the straightness of the carriage, the feed rate and the spindle rotation speed when both the feed rate and the spindle speed are high. The straightness will be increased. For the squareness error, it is different. It is dependent on the structure of the machine tool. Thus, the errors of the carriage that caused the out-of-flatness have been obtained. The straightness has been tested. The amplitude of the squareness is the same as that of the signal in which the straightness has been removed from the low-frequency test results. The simulation based on <xref rid="FD15" ref-type="disp-formula">Equation (15)</xref> is shown in <xref ref-type="fig" rid="f6-sensors-12-09551">Figure 6</xref>. It shows the squareness between the cross carriage and the axis line of the rotation spindle, that is, the normal line of the workpiece supported by the worktable and its value is proportional to the displacement of the tool, it reflects the machining error in machining direction, in ideal situation, it is zero.</p></sec>
<sec>
<label>4.2.</label>
<title>Dealing with the Test Result by Daubechies Wavelet</title>
<p>The test result of the machined workpiece includes every error of the machine tool. The errors of the carriage are geometric and the motion errors belong to the low frequency domain. The db1 wavelet is used to decompose the test result first. Then, the test result are expressed as <italic>x</italic>(<italic>t</italic>):
<disp-formula id="FD18">
<label>(18)</label>
<mml:math id="mm18" display="block">
<mml:semantics id="sm18">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>m</mml:mi></mml:munderover>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi></mml:msub></mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mi>m</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi></mml:msub></mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>s</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>s</mml:mi>
<mml:mn>2</mml:mn></mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:semantics></mml:math></disp-formula></p>
<p>The first part <italic>s</italic><sub>1</sub>(<italic>t</italic>) constitutes the low-frequency signal and the second part <italic>s</italic><sub>2</sub>(t) constitutes the high-frequency signal. The signal <italic>x</italic>(<italic>t</italic>) is taken into <xref rid="FD18" ref-type="disp-formula">Equation (18)</xref>. Then, <italic>s</italic><sub>1</sub>(<italic>t</italic>) and <italic>s</italic><sub>2</sub>(<italic>t</italic>) are decomposed from the signal <italic>x</italic>(<italic>t</italic>). In the calculation, the scale is 5 and the test signal is decomposed to five layers. The corresponding wavelet coefficients in different scales are obtained. They represent the error shape in different error bands. The decomposed result is shown in <xref ref-type="fig" rid="f7-sensors-12-09551">Figure 7</xref>. The decomposed low-frequency signal is from <italic>a</italic>1 to <italic>a</italic>5, where <italic>a</italic>1 is the first scale of the test signal and it is very similar to the original low-frequency data. It only includes the low-frequency component. The random error has been removed from it by wavelet methods. It is taken into the correlation analysis with the guideway simulated results discussed in the following. The high-frequency components are from <italic>d</italic>1 to <italic>d</italic>5.</p></sec>
<sec>
<label>4.3.</label>
<title>Correlation between Carriage Errors and the Decomposed Signal of the Workpiece Flatness</title>
<p>Here, the carriage errors include the straightness and the squareness. The straightness is determined by measurement. The simulation process of the carriage errors and the decomposed signal of the measured flatness of workpiece are different processes. The shapes of the simulation of the carriage errors and the decomposed low signal (<italic>a</italic>1 in <xref ref-type="fig" rid="f7-sensors-12-09551">Figure 7</xref>) are very similar, in which the error of the carriage is the main error. It cannot be identified just from the test result or only by existing wavelet methods. Here, the correlation analysis is used to identify the errors. The test process is <italic>x</italic>(<italic>t</italic>) = <italic>s</italic><sub>1</sub>(<italic>t</italic>) + <italic>s</italic><sub>2</sub>(<italic>t</italic>), where <italic>s</italic><sub>1</sub>(<italic>t</italic>) is low-frequency component of the test result decomposed by db1 WT, <italic>s</italic><sub>2</sub>(<italic>t</italic>) is the corresponding high-frequency component. a1 in Figure7 is <italic>s</italic><sub>1</sub>(<italic>t</italic>). The simulation process of the carriage is <italic>y</italic>(<italic>t</italic>) = <italic>y</italic><sub>1</sub>(<italic>t</italic>) + <italic>y</italic><sub>2</sub>(<italic>t</italic>), where <italic>y</italic><sub>1</sub>(<italic>t</italic>) is the squareness simulation of the carriage, <italic>y</italic><sub>2</sub>(<italic>t</italic>) is the straightness simulation of the carriage, the correlation between the test result <italic>x</italic>(<italic>t</italic>) decomposed from the low frequency component <italic>x</italic><sub>1</sub>(<italic>t</italic>) and the squareness <italic>y</italic><sub>1</sub>(<italic>t</italic>) is calculated, and the straightness <italic>y</italic><sub>2</sub>(<italic>t</italic>) are analyzed. Therefore, the correlation coefficient <italic>γ<sub>xy</sub></italic><sup>m</sup> and <italic>γ<sub>x</sub></italic><sup>1</sup><italic><sub>y</sub>m</italic> are obtained by <xref rid="FD6" ref-type="disp-formula">Equation (6)</xref> as follows:
<disp-formula id="FD19">
<label>(19)</label>
<mml:math id="mm19" display="block">
<mml:semantics id="sm19">
<mml:mrow>
<mml:msub>
<mml:mi>γ</mml:mi>
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>m</mml:mi></mml:msub></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:munderover>
<mml:mtext>∑</mml:mtext>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo>-</mml:mo>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi></mml:mrow></mml:msub>
<mml:mo>-</mml:mo>
<mml:mover accent="true">
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>m</mml:mi></mml:msub></mml:mrow>
<mml:mo>¯</mml:mo></mml:mover>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mrow>
<mml:msqrt>
<mml:mrow>
<mml:munderover>
<mml:mtext>∑</mml:mtext>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo>-</mml:mo>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:msqrt>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:munderover>
<mml:mtext>∑</mml:mtext>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi></mml:mrow></mml:msub>
<mml:mo>-</mml:mo>
<mml:mover accent="true">
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>m</mml:mi></mml:msub></mml:mrow>
<mml:mo>¯</mml:mo></mml:mover>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:msqrt></mml:mrow></mml:mfrac></mml:mrow></mml:semantics></mml:math></disp-formula>
<disp-formula id="FD20">
<label>(20)</label>
<mml:math id="mm20" display="block">
<mml:semantics id="sm20">
<mml:mrow>
<mml:msub>
<mml:mi>γ</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn></mml:msub>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>m</mml:mi></mml:msub></mml:mrow></mml:msub>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:munderover>
<mml:mtext>∑</mml:mtext>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mi>i</mml:mi></mml:mrow></mml:msub>
<mml:mo>-</mml:mo>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi></mml:mrow></mml:msub>
<mml:mo>-</mml:mo>
<mml:mover accent="true">
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>m</mml:mi></mml:msub></mml:mrow>
<mml:mo>¯</mml:mo></mml:mover>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mrow>
<mml:msqrt>
<mml:mrow>
<mml:munderover>
<mml:mtext>∑</mml:mtext>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mi>i</mml:mi></mml:mrow></mml:msub>
<mml:mo>-</mml:mo>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>¯</mml:mo></mml:mover></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:msqrt>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:munderover>
<mml:mtext>∑</mml:mtext>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi></mml:mrow></mml:msub>
<mml:mo>-</mml:mo>
<mml:mover accent="true">
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>m</mml:mi></mml:msub></mml:mrow>
<mml:mo>¯</mml:mo></mml:mover>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:msqrt></mml:mrow></mml:mfrac></mml:mrow></mml:semantics></mml:math></disp-formula>where <italic>m</italic> = 1,2, <italic>γ<sub>xy</sub>m</italic> in <xref rid="FD19" ref-type="disp-formula">Equation (19)</xref> is the correlation coefficient between the test process <italic>x</italic>(<italic>t</italic>) and the simulation process <italic>y</italic>(<italic>t</italic>) which includes <italic>y</italic><sub>1</sub>(<italic>t</italic>) and <italic>y</italic><sub>2</sub>(<italic>t</italic>). <italic>γ<sub>x</sub></italic><sup>1</sup><italic><sub>y</sub>m</italic> in <xref rid="FD20" ref-type="disp-formula">Equation (20)</xref> is the correlation coefficient between the low-frequency component of the measured result <italic>x</italic><sub>1</sub>(<italic>t</italic>) and the simulation process <italic>y</italic>(<italic>t</italic>).</p>
<p>In order to demonstrate the effect of the wavelet transform, the correlation between the carriage errors and test result is shown. The case treated by the wavelet transform and that without treating are compared. <xref ref-type="fig" rid="f8-sensors-12-09551">Figure 8</xref> shows the results of the correlation of two different test result <italic>x</italic>(<italic>t</italic>) without the wavelet transform. The abscissa presents the signal number. The maximum value is 2 × 10<sup>4</sup>. The longitudinal coordinate is the correlation coefficient and it is in the range of [0–1]. Both the correlation coefficient <italic>γ<sub>xy</sub></italic><sup>1</sup> of the squareness error <italic>y</italic><sub>1</sub>(<italic>t</italic>) and the test result <italic>x</italic>(<italic>t</italic>) both are in the range of 0.6–0.83. The correlation coefficient with the feed rate 8 mm/min is lower than that with the feed rate 2 mm/min, but it is higher than the correlation coefficient of the straightness with the same feed rate. The correlation coefficient <italic>γ<sub>xy</sub></italic><sup>2</sup> of the straightness error <italic>y</italic><sub>2</sub>(<italic>t</italic>) and the measured result <italic>x</italic>(<italic>t</italic>) is from 0.45 to 0.6. It is lower than the correlation of the squareness.</p>
<p><xref ref-type="fig" rid="f9-sensors-12-09551">Figure 9</xref> shows the results of the correlation of the low signal test result <italic>x</italic><sub>1</sub>(<italic>t</italic>) processed by the wavelet transform. The correlation coefficient <italic>γ<sub>x</sub></italic><sup>1</sup><italic><sub>y</sub></italic><sup>1</sup> of the squareness error and the measured result is close to 1. It means that the squareness error of the carriage is the main error in the test results. The correlation coefficient <italic>γ<sub>x</sub></italic><sup>1</sup><italic><sub>y</sub></italic><sup>2</sup> of the straightness is similar to that shown in <xref ref-type="fig" rid="f8-sensors-12-09551">Figure 8</xref>. This shows that the measured results need to be processed by the wavelet transform in order to get the ideal signal. It also indicates that the cross-correlation method is valid for identifying the main error of the carriage.</p></sec>
<sec>
<label>4.4.</label>
<title>Experimental Verification</title>
<p>In the above correlation analysis, it shows that the squareness between the cross carriage and the axis line of the spindle (that is, the normal line of the workpiece shown in <xref ref-type="fig" rid="f1-sensors-12-09551">Figure 1(a)</xref>) is the main error source of the machine tool. <xref ref-type="fig" rid="f10-sensors-12-09551">Figure 10</xref> shows an indirect measurement of the squareness. It verifies the identification results based on the correlation analysis. An inductance micrometer is placed on the top of the spindle. The probe is in touch with the thrust plate (assume that it is parallel to the cross carriage). It measures the run-out of the spindle. The run-out of the thrust plate at <italic>r</italic> = 0.3 μm is obtained. The largest deflection angle of the spindle can be deduced by <italic>r</italic>. It is assumed that the thrust plate is parallel to the cross carriage in the measurement. In fact, a parallelism error between them is <italic>p</italic> = 2.5 μm. The parallelism error should be considered in the calculation of the deflection angle of the spindle. It is shown in <xref rid="FD21" ref-type="disp-formula">Equation (21)</xref>. <italic>L</italic> = 1,000 mm is the diameter of the worktable. The amplitude value of the deflection angle is 2.8 × 10<sup>−6</sup> rad:
<disp-formula id="FD21">
<label>(21)</label>
<mml:math id="mm21" display="block">
<mml:semantics id="sm21">
<mml:mrow>
<mml:msub>
<mml:mi>θ</mml:mi>
<mml:mn>0</mml:mn></mml:msub>
<mml:mo>≈</mml:mo>
<mml:mo>tan</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>θ</mml:mi>
<mml:mn>0</mml:mn></mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mtext>r</mml:mtext>
<mml:mo>+</mml:mo>
<mml:mi>p</mml:mi></mml:mrow>
<mml:mi>L</mml:mi></mml:mfrac></mml:mrow></mml:semantics></mml:math></disp-formula></p>
<p>Based on <xref rid="FD15" ref-type="disp-formula">Equation (15)</xref>, the above deflection angle is 2.8 × 10<sup>−6</sup> rad. The squareness error is Δ<italic>β<sub>xz</sub></italic> = 2.8 × 10<sup>−6</sup> rad on the <italic>ZX</italic> plane, <italic>p<sub>x</sub></italic> is the range of the movement of the slide. It is 600 mm. Thus, the amplitude of the squareness is 1.7 × 10<sup>−3</sup> mm. It can be verified from <xref rid="FD15" ref-type="disp-formula">Equation (15)</xref> that this result is very similar to the simulated value 1.8 × 10<sup>−3</sup> mm shown in <xref ref-type="fig" rid="f6-sensors-12-09551">Figure 6</xref>.</p>
<p>In [<xref ref-type="bibr" rid="b22-sensors-12-09551">22</xref>], the simulated errors of the axis <italic>x</italic>, <italic>y</italic>, and z have been obtained. The data in [<xref ref-type="bibr" rid="b22-sensors-12-09551">22</xref>] is analyzed by the above correlation method. The result is shown in <xref ref-type="fig" rid="f11-sensors-12-09551">Figure 11</xref>. It shows that the impact factor of the Y error is at the maximum. The impact factor of the Z error is at the minimum. These results are consistent with the simulated results. The method in [<xref ref-type="bibr" rid="b22-sensors-12-09551">22</xref>] requires the model and many parameters. It cannot analyze the flatness of workpiece directly. On the other hand, the correlation analysis method is simple and it can analyze the flatness of workpiece directly.</p>
<p>For a large complex structure machine tool, some errors are not easy to test. With correlation analysis, the main impact error can be identified from the flatness of the workpiece of the machine tool. Some of the complicated measurements of the components of the machine tool can be eliminated. This method makes up for the drawbacks of some errors of the machine tools for which we cannot measure the component errors directly.</p></sec></sec>
<sec sec-type="conclusions">
<label>5.</label>
<title>Conclusions</title>
<p>This paper applies the cross-correlation method and the wavelet transform to identify the main error of the carriage of a machine tool. The error model which considers the geometry and the motion errors of the carriage system provides an analytical relationship between the flatness error and the carriage system. This method can identify the correlation coefficient between the carriage errors and the flatness of the workpiece. With the wavelet analysis, the identification precision of the test signal is improved. Also, the dominant errors of the carriage and the impact on the flatness of the workpiece are identified. The method can also be applied to the error identification of other machine tool components.</p></sec></body>
<back>
<ack>
<p>This research was funded by the National Natural Science Foundation of China Grants Nos. 51105005 and 50775004, and the Fund for New Teachers from the Ministry of Education (No. 20111103120002).</p></ack>
<ref-list>
<title>References</title>
<ref id="b1-sensors-12-09551"><label>1.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Hwang</surname><given-names>J.</given-names></name><name><surname>Parka</surname><given-names>C.H.</given-names></name><name><surname>Gao</surname><given-names>W.</given-names></name><name><surname>Kim</surname><given-names>S.-W.</given-names></name></person-group><article-title>A three-probe system for measuring the parallelism and straightness of a pair of rails for ultra-precision guideways</article-title><source>Int. J. Mach. Tools Manuf.</source><year>2006</year><volume>47</volume><fpage>1053</fpage><lpage>1058</lpage></citation></ref>
<ref id="b2-sensors-12-09551"><label>2.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Pahk</surname><given-names>H.J.</given-names></name><name><surname>Park</surname><given-names>J.S.</given-names></name><name><surname>Yeo</surname><given-names>I.</given-names></name></person-group><article-title>Development of straightness measurement technique using the profile matching method</article-title><source>Int. J Mach. Tools Manuf.</source><year>1997</year><volume>31</volume><fpage>135</fpage><lpage>147</lpage></citation></ref>
<ref id="b3-sensors-12-09551"><label>3.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Knapp</surname><given-names>W.</given-names></name><name><surname>Bringmann</surname><given-names>B.</given-names></name></person-group><article-title>Straightness measurement for long movements</article-title><source>Nanotechnol. Preci. Eng.</source><year>2005</year><volume>3</volume><fpage>249</fpage><lpage>256</lpage></citation></ref>
<ref id="b4-sensors-12-09551"><label>4.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ekinci</surname><given-names>T.O.</given-names></name><name><surname>Mayer</surname><given-names>J.R.R.</given-names></name></person-group><article-title>Relationships between straightness and angular kinematic errors in machines</article-title><source>Int. J. Mach. Tools Manuf.</source><year>2007</year><volume>47</volume><fpage>1997</fpage><lpage>2004</lpage><pub-id pub-id-type="doi">10.1016/j.ijmachtools.2007.02.002</pub-id></citation></ref>
<ref id="b5-sensors-12-09551"><label>5.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Jywe</surname><given-names>W.</given-names></name><name><surname>Chen</surname><given-names>C.J.</given-names></name></person-group><article-title>A new 2D error separation technique for performance tests of CNC machine tools</article-title><source>Precis. Eng.</source><year>2007</year><volume>31</volume><fpage>369</fpage><lpage>375</lpage><pub-id pub-id-type="doi">10.1016/j.precisioneng.2007.03.004</pub-id></citation></ref>
<ref id="b6-sensors-12-09551"><label>6.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Gao</surname><given-names>W.</given-names></name><name><surname>Tano</surname><given-names>M.</given-names></name><name><surname>Araki</surname><given-names>T.</given-names></name><name><surname>Kiyono</surname><given-names>S.</given-names></name><name><surname>Park</surname><given-names>C.H.</given-names></name></person-group><article-title>Measurement and compensation of errors motions of a diamond turning machine</article-title><source>Precis. Eng.</source><year>2007</year><volume>31</volume><fpage>310</fpage><lpage>316</lpage><pub-id pub-id-type="doi">10.1016/j.precisioneng.2006.06.003</pub-id></citation></ref>
<ref id="b7-sensors-12-09551"><label>7.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kakino</surname><given-names>Y.</given-names></name><name><surname>Ihara</surname><given-names>Y.</given-names></name><name><surname>Nakatsu</surname><given-names>Y.</given-names></name></person-group><article-title>A study on the motion errors of NC machine tools diagnosis of motion error origins by using double ball bar test</article-title><source>Precis. Eng.</source><year>1986</year><volume>52</volume><fpage>73</fpage></citation></ref>
<ref id="b8-sensors-12-09551"><label>8.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kakino</surname><given-names>Y.</given-names></name><name><surname>Ihaa</surname><given-names>Y.</given-names></name><name><surname>Nakatsu</surname><given-names>Y.</given-names></name></person-group><article-title>The measurement of motion errors of NC machine tools and diagnosis of their origins by using telescoping magnetic ball bar method</article-title><source>Ann. CIRP</source><year>1987</year><volume>36</volume><fpage>377</fpage><pub-id pub-id-type="doi">10.1016/S0007-8506(07)62626-2</pub-id></citation></ref>
<ref id="b9-sensors-12-09551"><label>9.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kakino</surname><given-names>Y.</given-names></name><name><surname>Ihara</surname><given-names>Y.</given-names></name><name><surname>Nakatsu</surname><given-names>Y.</given-names></name><name><surname>Shinohara</surname><given-names>A.</given-names></name></person-group><article-title>A study on the motion accuracy of NC machine tools (5th report): Diagnosis of angular motion error origins</article-title><source>Precis. Eng.</source><year>1989</year><volume>55</volume><fpage>153</fpage></citation></ref>
<ref id="b10-sensors-12-09551"><label>10.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Wieleba</surname><given-names>W.</given-names></name></person-group><article-title>The statistical correlation of the coefficient of friction and wear rate of PTFE composites with steel counterface roughness and hardness</article-title><source>Wear</source><year>2002</year><volume>252</volume><fpage>719</fpage><lpage>729</lpage><pub-id pub-id-type="doi">10.1016/S0043-1648(02)00029-7</pub-id></citation></ref>
<ref id="b11-sensors-12-09551"><label>11.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Lockwood</surname><given-names>W.D.</given-names></name><name><surname>Reynolds</surname><given-names>A.P.</given-names></name></person-group><article-title>Use and verification of digital image correlation for automated 3-D surface characterization in the scanning electron microscope</article-title><source>Meter. Character</source><year>1999</year><volume>42</volume><fpage>123</fpage><lpage>134</lpage><pub-id pub-id-type="doi">10.1016/S1044-5803(98)00052-7</pub-id></citation></ref>
<ref id="b12-sensors-12-09551"><label>12.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ekinci</surname><given-names>T.O.</given-names></name><name><surname>Mayer</surname><given-names>J.R.R.</given-names></name><name><surname>Cloutier</surname><given-names>G.M.</given-names></name></person-group><article-title>Investigation of accuracy of aerostatic guideway</article-title><source>Int. J. Mach. Tools Manuf.</source><year>2009</year><volume>49</volume><fpage>478</fpage><lpage>487</lpage><pub-id pub-id-type="doi">10.1016/j.ijmachtools.2009.01.001</pub-id></citation></ref>
<ref id="b13-sensors-12-09551"><label>13.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Wong</surname><given-names>S.S.M.</given-names></name><name><surname>French</surname><given-names>J.B.</given-names></name></person-group><article-title>Level-density fluctuations and two-body <italic>versus</italic> multi-body interactions</article-title><source>Nucl. Phys. A</source><year>1972</year><volume>198</volume><fpage>188</fpage><lpage>208</lpage><pub-id pub-id-type="doi">10.1016/0375-9474(72)90779-8</pub-id></citation></ref>
<ref id="b14-sensors-12-09551"><label>14.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Weule</surname><given-names>H.</given-names></name><name><surname>Albers</surname><given-names>A.</given-names></name><name><surname>Haberkem</surname><given-names>A.</given-names></name><name><surname>Neithardt</surname><given-names>W.</given-names></name><name><surname>Emmrich</surname><given-names>D.</given-names></name></person-group><article-title>Computer Aided Optimisation of the Static and Dynamic Properties of Parallel Kinematics</article-title><conf-name>Proceedings of the 3rd Chemnitz Parallel Kinematic Seminar, Chemnitz</conf-name><conf-loc>Germany</conf-loc><conf-date>23–25 April 2002</conf-date><fpage>527</fpage><lpage>546</lpage></citation></ref>
<ref id="b15-sensors-12-09551"><label>15.</label><citation citation-type="book"><person-group person-group-type="author"><name><surname>Brecher</surname><given-names>C.</given-names></name><name><surname>Denkena</surname><given-names>B.</given-names></name><name><surname>Giesler</surname><given-names>M.</given-names></name><name><surname>Golzer</surname><given-names>P.</given-names></name><name><surname>Hamann</surname><given-names>J.</given-names></name><name><surname>Kelichhaus</surname><given-names>T.</given-names></name><name><surname>Prier</surname><given-names>M.</given-names></name><name><surname>Prust</surname><given-names>D.</given-names></name><name><surname>Reinhart</surname><given-names>G.</given-names></name><name><surname>Quein</surname><given-names>M.</given-names></name><etal/></person-group><article-title>Effiziente Entwicklung von Werkzeugmaschinen-Mit Virtu-ellen Prototypen direct Zum Marktfahigen Produkt</article-title><source>Tagungsband Aachener Werkzeugmaschinen Kolloquium</source><publisher-name>Shaker-Verlag</publisher-name><publisher-loc>Aachen, Germany</publisher-loc><year>2002</year><fpage>157</fpage><lpage>190</lpage></citation></ref>
<ref id="b16-sensors-12-09551"><label>16.</label><citation citation-type="book"><person-group person-group-type="author"><name><surname>Pritschow</surname><given-names>G.</given-names></name><name><surname>Berkemer</surname><given-names>J.</given-names></name><name><surname>Burger</surname><given-names>T.</given-names></name><name><surname>Croon</surname><given-names>N.</given-names></name><name><surname>Korajda</surname><given-names>B.</given-names></name><name><surname>Rock</surname><given-names>S.</given-names></name></person-group><article-title>Die Simulierte Werkzeugmaschine</article-title><source>Tagungsband Fertigungstechnisches Kolloquium Stuttgart</source><publisher-name>Springer</publisher-name><publisher-loc>Berlin, Germany</publisher-loc><year>2003</year><fpage>219</fpage><lpage>246</lpage></citation></ref>
<ref id="b17-sensors-12-09551"><label>17.</label><citation citation-type="book"><person-group person-group-type="author"><name><surname>Winkler</surname><given-names>H.-H.</given-names></name><name><surname>Prust</surname><given-names>D.</given-names></name></person-group><article-title>Konzeptionen fur hochdynamische Maschinen</article-title><source>Tagungsband Fertigungstechnisches Kolloquium Stuttgart</source><publisher-name>Springer</publisher-name><publisher-loc>Berlin, Germany</publisher-loc><year>2003</year><fpage>89</fpage><lpage>137</lpage></citation></ref>
<ref id="b18-sensors-12-09551"><label>18.</label><citation citation-type="book"><person-group person-group-type="author"><name><surname>Goldstein</surname><given-names>H.</given-names></name></person-group><source>Classical Mechanics</source><edition>2nd ed.</edition><publisher-name>Addison-Wesley Publishing Company</publisher-name><publisher-loc>Reading, MA, USA</publisher-loc><year>1980</year></citation></ref>
<ref id="b19-sensors-12-09551"><label>19.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Burt</surname><given-names>P.G.</given-names></name><name><surname>Yen</surname><given-names>C.</given-names></name><name><surname>Xu</surname><given-names>X.</given-names></name></person-group><article-title>Local correlation measures for motion control analysis: A comparative study</article-title><source>IEEE Conf. Pattern Recognit. Image Process.</source><year>1982</year><volume>3</volume><fpage>269</fpage><lpage>274</lpage></citation></ref>
<ref id="b20-sensors-12-09551"><label>20.</label><citation citation-type="book"><person-group person-group-type="author"><name><surname>Pres</surname><given-names>W.H.</given-names></name><name><surname>Teukolsky</surname><given-names>S.A.</given-names></name><name><surname>Vetterling</surname><given-names>W.T.</given-names></name><name><surname>Flannery</surname><given-names>B.P.</given-names></name></person-group><source>Numerical Recipes</source><publisher-name>Cambridge University Press</publisher-name><publisher-loc>Cambridge, UK</publisher-loc><year>1992</year></citation></ref>
<ref id="b21-sensors-12-09551"><label>21.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Daubechies</surname><given-names>I.</given-names></name></person-group><article-title>Orthonormal bases of compactly supported wavelets</article-title><source>Commun. Pure Appl. Math.</source><year>1988</year><volume>41</volume><fpage>909</fpage><lpage>996</lpage><pub-id pub-id-type="doi">10.1002/cpa.3160410705</pub-id></citation></ref>
<ref id="b22-sensors-12-09551"><label>22.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Srivastava</surname><given-names>A.K.</given-names></name><name><surname>Veldhuis</surname><given-names>S.C.</given-names></name><name><surname>Ebestawit</surname><given-names>M.A.</given-names></name></person-group><article-title>Modeling geometric and thermal errors in a five-axis CNC machine tool</article-title><source>Int. J. Mach. Tools Manuf.</source><year>1995</year><volume>35</volume><fpage>1321</fpage><lpage>1327</lpage><pub-id pub-id-type="doi">10.1016/0890-6955(94)00048-O</pub-id></citation></ref></ref-list>
<sec sec-type="display-objects">
<title>Figures</title>
<fig id="f1-sensors-12-09551" position="float">
<label>Figure 1.</label>
<caption>
<p>The researched machine tool. (<bold>a</bold>) The structure; (<bold>b</bold>) The topology.</p></caption>
<graphic xlink:href="sensors-12-09551f1.gif"/></fig>
<fig id="f2-sensors-12-09551" position="float">
<label>Figure 2.</label>
<caption>
<p>The processing error caused by the straightness error of carriage.</p></caption>
<graphic xlink:href="sensors-12-09551f2.gif"/></fig>
<fig id="f3-sensors-12-09551" position="float">
<label>Figure 3.</label>
<caption>
<p>Experimental setup for measurement straightness of cross guideway.</p></caption>
<graphic xlink:href="sensors-12-09551f3.gif"/></fig>
<fig id="f4-sensors-12-09551" position="float">
<label>Figure 4.</label>
<caption>
<p>Measurement and fitting curve of straightness.</p></caption>
<graphic xlink:href="sensors-12-09551f4.gif"/></fig>
<fig id="f5-sensors-12-09551" position="float">
<label>Figure 5.</label>
<caption>
<p>Out-of-flatness of workpiece with different feed rates.</p></caption>
<graphic xlink:href="sensors-12-09551f5.gif"/></fig>
<fig id="f6-sensors-12-09551" position="float">
<label>Figure 6.</label>
<caption>
<p>Squareness of guideway.</p></caption>
<graphic xlink:href="sensors-12-09551f6.gif"/></fig>
<fig id="f7-sensors-12-09551" position="float">
<label>Figure 7.</label>
<caption>
<p>Decomposed result of test by wavelet transformation.</p></caption>
<graphic xlink:href="sensors-12-09551f7.gif"/></fig>
<fig id="f8-sensors-12-09551" position="float">
<label>Figure 8.</label>
<caption>
<p>Cross-correlation analysis before using wavelet transformation.</p></caption>
<graphic xlink:href="sensors-12-09551f8.gif"/></fig>
<fig id="f9-sensors-12-09551" position="float">
<label>Figure 9.</label>
<caption>
<p>Cross-correlation analysis after using wavelet transformation.</p></caption>
<graphic xlink:href="sensors-12-09551f9.gif"/></fig>
<fig id="f10-sensors-12-09551" position="float">
<label>Figure 10.</label>
<caption>
<p>Measurement of squareness between guideway and spindle rotated line.</p></caption>
<graphic xlink:href="sensors-12-09551f10.gif"/></fig>
<fig id="f11-sensors-12-09551" position="float">
<label>Figure 11.</label>
<caption>
<p>Cross-correlation analysis of the axis errors in [<xref ref-type="bibr" rid="b22-sensors-12-09551">22</xref>].</p></caption>
<graphic xlink:href="sensors-12-09551f11.gif"/></fig></sec></back></article>
