From 6166d431b148768e14ed1641a365d00bfb2b25b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tam=C3=A1s=20Cserteg?= Date: Fri, 24 May 2024 10:54:26 +0200 Subject: [PATCH] start writing --- paper/paper.tex | 83 +++++++++++++++++++++++++------------------------ paper/ref.bib | 43 ++++++++++++++++--------- 2 files changed, 70 insertions(+), 56 deletions(-) diff --git a/paper/paper.tex b/paper/paper.tex index 6971416..9f2ec98 100644 --- a/paper/paper.tex +++ b/paper/paper.tex @@ -11,53 +11,54 @@ \begin{abstract} -Blank localization (also known as workpiece referencing) is an essential task when machining parts. -In this step the geometric relation of the tool of a machine (mill, lathe etc.) and the workpiece(s) needs to be precisely defined/searched. We introduced the concept of multi operation blank localization to address this task for drilling and milling scenarios in a mostly automated way. -The heart of the procedure is a convex quadratically constrained quadratic program (QCQP). -To easily access the solver, the BlankLocalizationCore.jl package was developed. -Its flexibility and extensibility make it an excellent research tool, that can be deployed in production as well. +Blank localization (also known as workpiece referencing) is an essential task in machining. +In this step the geometric relation of the tool of a machine (mill, lathe etc.) and the workpiece(s) needs to be precisely defined/searched. +We introduced the concept of multi operation blank localization to address this task for drilling and milling scenarios in a semi-automated way. +It processes measurement of the rough geometry and the machining CNC code to solve a convex quadratically constrained quadratic program (QCQP). +It gives an optimal solution for given machining allowance - tolerance error, providing a tool for the machinist to find the appropriate balance between the two. +The flexibility and extensibility of the Julia language helped the development of this algorithm, materializing in the \pkg{BlankLocalizationCore} package. +Its flexibility and ease of use make it an excellent research tool, that can be deployed in production as well. \end{abstract} \section{Introduction} -The \LaTeX{} document preparation system is a special version of the -\TeX; typesetting program where-in a collection of \TeX; commands -are added to \LaTeX{} to simplify typesetting. Importantly, it allows -the author to concentrate on the logical structure of the document -rather than its visual layout.\vskip 6pt -Moreover, \LaTeX{} provides a consistent and comprehensive document -preparation interface. There are simple-to-use commands for -generating a table of contents, lists of figures and/or tables, and indexes. -\LaTeX{} can automatically number list entries, equations, figures, -tables, and footnotes, as well as articles, sections, and subsections. -Using this numbering system, bibliographic citations, page -references, and cross references to any other numbered entity (e.g. -article, section, equation, figure, list entry, etc.) become quite simple -and straightforward. The use of \LaTeX{} document classes allows -a simple change of class to transform the appearance of your document.\vskip 6pt -\LaTeX{} is a powerful tool for managing long and complex documents. -In particular, partial processing enables long documents to -be produced article by article without losing sequential information. -The use of document classes allows a simple change of style -(or style option) to transform the appearance of your document. - - - -\section{The JuliaCon Article Class} -\label{sec:documentclass} +Cast parts can have small geometric variations from lot-to-lot, therefore it is required to alter the machining CNC code to adapt it to each lot. +Current practices include human work (long, possible scrap, needs highly trained workers), and automated methods for parts like wind turbines (measurement of the whole part, mini-max/maxi-min optimizations for large free form surfaces). +The multi operation blank localization method is introduced to focus on drilling and milling scenarios covering a wide range of suitable parts. +To better understand the package, a short description of the multi operation blank localization algorithm is given. +The algorithm needs to balance between machining allowance and tolerance error. +Machining allowance is calculated for each feature as the smallest thickness of the material to be removed. +Tolerance error is defined for each dimensional tolerance record, that is defined between to features. +Their distance has a nominal value and upper-lower bounds. +The goal of the algorithm is to keep the tolerance distances close to the nominal value, while keeping a minimum machining allowance value. + + + + +\section{Approach} +\label{sec:approach} % -The juliacon class file preserves the standard LATEX{} interface such -that any document that can be produced using the standard LATEX{} -article class can also be produced with the class file.\vskip 6pt -It is likely that the make up will change after file submission. For -this reason, we ask you to ignore details such as slightly long lines, -page stretching, or figures falling out of synchronization, as these -details can be dealt with at a later stage.\vskip 6pt -Use should be made of symbolic references (\verb|\ref| ) in order to -protect against late changes of order, etc. - -\section{USING THE JuliaCon Article CLASS FILE} +The package needs to support the quick prototyping needs of research, while giving a strong/stable baseline/background to validate the concept in the industry as well (high-level, programozói igények nélkül, amit egy menedzser felsorolna): + +\begin{itemize} + \item Model the problem, including geometry representation, qcqp model building and solving, evaluation, visualization. + \item Modeling the different behavious of the geometries (holes, planes) + \item Handle two basic types of measurements: primitive or free-form. + \item Support for importing geometries: all kinds of measurement (expandable/extendable? type system for introducing new measurement types) +\end{itemize} + +Tasks are defined in the workpiece coordinate frame (called workpiece datum). +Two types of geometries need to be aligned: rough and machined. Currently the algorithm, thus the implementation supports two types of features: holes and planes. +A flexible type system is implemented: abstract types are defined and all methods act on them, so implementing a new geometry type (for example to handle point cloud measurement of a rough hole) means defining the type and those methods. +All other functionality of the package are working automatically: setting up the optimization model, solving it, evaluating the results in details and visualizing the geometries. + +\section{Results} +The following figures show the same part measured with different techniques, such as laser scanner and coordinate measurement arm. +Based on the package, geometries for both measurement types can be implemented in just a few lines, and the optimization can be run on them. +Two papers have been published using this tool \cite{cserteg:2023_Annals} for primitive types and \cite{cserteg:2023_CMS} for free-form surfaces. + +\section{} If the file \verb|juliacon.cls| is not already in the appropriate system directory for \LaTeX{} files, either arrange for it to be put there or copy diff --git a/paper/ref.bib b/paper/ref.bib index 84a6cbf..b13a822 100644 --- a/paper/ref.bib +++ b/paper/ref.bib @@ -10,19 +10,32 @@ @article{bezanson2017julia publisher={SIAM} } -@article{Moore1990, - author = {Moore, James T. and Bard, Jonathan F.}, - doi = {10.1287/opre.38.5.911}, - issn = {0030-364X}, - journal = {Operations Research}, - keywords = {games: noncooperative,integer: branch-and-bound algorithms,programming}, - mendeley-groups = {bilevel - hierarchical}, - month = {oct}, - number = {5}, - pages = {911--921}, - publisher = { INFORMS }, - title = {{The Mixed Integer Linear Bilevel Programming Problem}}, - url = {http://pubsonline.informs.org/doi/abs/10.1287/opre.38.5.911}, - volume = {38}, - year = {1990} +@article{cserteg:2023_Annals, + title = {Multi-Operation Optimal Blank Localization for near Net Shape Machining}, + author = {Cserteg, Tam{\'a}s and Kov{\'a}cs, Andr{\'a}s and V{\'a}ncza, J{\'o}zsef}, + year = {2023}, + month = jan, + journal = {CIRP Annals}, + volume = {72}, + number = {1}, + pages = {433--436}, + issn = {0007-8506}, + doi = {10.1016/j.cirp.2023.04.049}, + urldate = {2023-07-17}, + copyright = {All rights reserved} +} + +@article{cserteg:2023_CMS, + title = {Multi-Operation Blank Localization with Hybrid Point Cloud and Feature-Based Representation}, + author = {Cserteg, Tam{\'a}s and Kov{\'a}cs, Andr{\'a}s and V{\'a}ncza, J{\'o}zsef}, + year = {2023}, + month = jan, + journal = {Procedia CIRP}, + series = {56th {{CIRP International Conference}} on {{Manufacturing Systems}} 2023}, + volume = {120}, + pages = {756--761}, + issn = {2212-8271}, + doi = {10.1016/j.procir.2023.09.071}, + urldate = {2024-01-22}, + copyright = {All rights reserved} }