Reverse Engineering
Transcript
Reverse Engineering
Metodi e tecniche di Reverse Engineering Caterina Rizzi Dipartimento di Ingegneria Industriale 2 3D Data Capture sistema di acquisizione 3D: strumenti e tecnologie per l’acquisizione dei dati 3D da oggetti fisici processo che combina tecnologie hardware (sensori) e software (algoritmi) per catturare i dati 3D misurandoli, al fine di ottenerne una rappresentazione digitale. i punti risultanti - nuvola di punti - vengono processati per essere utilizzati in successive applicazioni che spaziano da: – reverse modelling (per prodotto industriale) Università degli Studi di Bergamo Caterina Rizzi 2 1 3 3D Data Capture sistema di acquisizione 3D: strumenti e tecnologie per l’acquisizione dei dati 3D da oggetti fisici processo che combina tecnologie hardware (sensori) e software (algoritmi) per catturare i dati 3D misurandoli, al fine di ottenerne una rappresentazione digitale. i punti risultanti - nuvola di punti - vengono processati per essere utilizzati in successive applicazioni che spaziano da: – reverse modelling (per prodotto industriale) – reverse engineering (per campo ingegneria) Università degli Studi di Bergamo Caterina Rizzi 3 4 3D Data Capture sistema di acquisizione 3D: strumenti e tecnologie per l’acquisizione dei dati 3D da oggetti fisici processo che combina tecnologie hardware (sensori) e software (algoritmi) per catturare i dati 3D misurandoli, al fine di ottenerne una rappresentazione digitale. i punti risultanti - nuvola di punti - vengono processati per essere utilizzati in successive applicazioni che spaziano da: – reverse modelling (per prodotto industriale) – reverse engineering (per campo ingegneria) – riproduzione Università degli Studi di Bergamo Caterina Rizzi 4 2 5 3D Data Capture sistema di acquisizione 3D: strumenti e tecnologie per l’acquisizione dei dati 3D da oggetti fisici processo che combina tecnologie hardware (sensori) e software (algoritmi) per catturare i dati 3D misurandoli, al fine di ottenerne una rappresentazione digitale. i punti risultanti - nuvola di punti - vengono processati per essere utilizzati in successive applicazioni che spaziano da: – – – – – – – – – – – reverse modelling (per prodotto industriale) reverse engineering (per campo ingegneria) riproduzione Archiviazione ispezione analisi controllo qualità medicina campo forense Animazione --- Università degli Studi di Bergamo Caterina Rizzi 5 6 Reverse Engineering … in cosa consiste ricavare il modello geometrico dal modello fisico attraverso due fasi: – la digitalizzazione tridimensionale del modello fisico – la realizzazione del suo modello geometrico digitale Export Export Realizzazione modello Digitalizzazione geometrico Tecnologia Hardware Università degli Studi di Bergamo Caterina Rizzi Tecnologia Software Applicazione finale Prototipazione rapida Modellazione solida FEM ….. 6 3 7 Reverse Engineering Come – Esistono diverse tecnologie – La scelta dipende dal problema Perché integrarla nel processo di progettazione – L’introduzione nel mercato di nuovi prodotti impone l’adozione di una serie di metodologie TCT ( Time Compression Technologies) la cui integrazione consente di ottenere significative riduzioni dei tempi di ideazione, progettazione ed ingegnerizzazione. Università degli Studi di Bergamo Caterina Rizzi 7 8 … riassumendo E’ un insieme di operazioni che permettono di ricostruire la geometria di un oggetto 3D a partire dalla geometria e dalle textures visibili in una scena Il modello è ottenuto a partire da un insieme di misure prodotte da un insieme di sensori Il modello, inizialmente rappresentato da una nuvola di punti P(x,y,z), viene modificato e completato, per essere usato in un processo di progettazione digitale. Nel campo applicativo dell’ingegneria, il modello originale deve essere ricostruito rispettando i valori di tolleranza predefiniti. Università degli Studi di Bergamo Caterina Rizzi 8 4 9 Fasi del processo INPUT • • • • • • Prototipi fisici Pezzi esistenti Pezzi rotti o detoriariti Parti da ispezionare Mock-up … Acquisizione dati 3D Ricostruzione mesh poligonale Ricostruzione superficie parametrica Modello geometrico Definizione modello CAD OUTPUT Università degli Studi di Bergamo Caterina Rizzi 9 10 Fasi ricostruzione modello Nuvola di punti Modello Nurbs Mesh poligonale Università degli Studi di Bergamo Caterina Rizzi Profili caratteristici 10 5 11 Applicazioni Acquisizione di una superficie matematicamente corretta nei casi tipici di: – modelli fisici (reali o di concept) per ottenere una matematica di partenza per ulteriori analisi progettuale – ri-progettazione di parti meccaniche in assenza del modello CAD – controllo dimensionale e di qualità per pezzi già in produzione – verifica di parti soggette ad usura eccessiva e loro modifica – aggiornamento rapido di modelli CAD in seguito ai cambiamenti avvenuti in sede di produzione – Replica di prototipi fisici – Definizione di un modello utilizzabile come mezzo di simulazione Università degli Studi di Bergamo Caterina Rizzi 11 12 Aspetti chiave conoscere vantaggi e limiti delle diverse tecnologie per poter scegliere la tecnologia corretta per il problema in esame valutare la qualità dei sistemi in funzione dei parametri caratterizzanti il processo (quali risoluzione, incertezza di misura e accuratezza) con attenzione verso le caratteristiche dei materiali e delle features della superficie dell’oggetto Definire procedure “user-friendly ” tali da semplificare le operazioni di acquisizione, garantendo la qualità dimensionale dei dati: — — — l’accuratezza dei moderni sistemi di scansione (50 µm e oltre per gli scanner a triangolazione) la risoluzione spaziale di acquisizione (es. la distanza media tra 2 punti, normalmente nell’ordine di 0,1-0,5 mm) la velocità di campionamento (> 300K al secondo sono considerati parametri adeguati per la maggior parte delle applicazioni) Università degli Studi di Bergamo Caterina Rizzi 12 6 13 Tassonomia Università degli Studi di Bergamo Caterina Rizzi Optical Scanners 13 Coordinate Measuring Machines Computerised Tomography - CT Università degli Studi di Bergamo Caterina Rizzi 14 7 Misurazione manuale Misurazione manuale di punti (x, y, z) rispetto ad un punto di riferimento (calibro, …) Generazione di curve e superfici interpolanti i punti Processo lento e laborioso Accuratezza dipende dall’ accuratezza dello strumento di misura Università degli Studi di Bergamo Caterina Rizzi 15 16 Metodi a contatto sistemi a contatto non distruttivi, automatici o semiautomatici utilizzano un sensore montato su una macchina o su un braccio articolato. I sensori (mono o bidimensionali) acquisiscono le forme integrandosi con sistemi di posizionamento in grado di rilevare la posizione e l’orientamento nello spazio Università degli Studi di Bergamo Caterina Rizzi 16 8 CMM (Coordinate Measuring Machine) Le macchine di misura a coordinate sono caratterizzate da differenti strutture in riferimento al posizionamento ed orientamento reciproco dei vari componenti Sonde seguono il contorno della superficie in modo automatico Università degli Studi di Bergamo Caterina Rizzi Brown & Sharpe (www.brownandsharpe.com) 17 18 Tastatori Il tastatore rileva le coordinate cartesiane dei punti appartenenti alle superfici degli oggetti I punti possono quindi essere importati direttamente oppure sotto forma di profili o superfici in un modellatore CAD Università degli Studi di Bergamo Caterina Rizzi 18 9 19 Bracci articolati Braccio articolato a 5 gradi di libertà sulla cui testa è installata la sonda a contatto. Il robot è posizionato vicino al particolare da digitalizzare e l’operatore rileva manualmente sistema portatile che richiede una certa abilità ed esperienza Output: sia le coordinate dei punti, sia alcune primitive quali le curve spline Università degli Studi di Bergamo Caterina Rizzi 19 20 Sistemi misti sistemi che montano bracci articolati con sonda laser su macchine CMM combinano la metodologia dei tastatori con il sistema laser di scansione per ottenere maggior velocità ed accuratezza le teste di scansioni possono avere più componenti laser accoppiati per ottenere prestazioni migliori. Università degli Studi di Bergamo Caterina Rizzi Ref. Steinbchler 20 10 21 … riassumendo VANTAGGI: SVANTAGGI: non sono richiesti trattamenti delle superfici per evitare riflessioni pareti verticali possono essere misurate con facilità la densità dei dati non é fissa, ma automaticamente controllata a seconda della forma del pezzo non è richiesto un editing manuale per eliminare dati affetti da errori dettagli minuscoli possono essere accuratamente replicati grande accuratezza nelle misure (fino a 1μm ) per sistemi ben calibrati e ben manovrati Volume di misura limitato da lunghezza del braccio di comando della sonda Bassa velocità di acquisizione per controllare accuratezza Necessità di materiale “duro” per resistere agli urti del tastarore Università degli Studi di Bergamo Caterina Rizzi 21 Sistemi ottici 22 Tecniche di misura 3D ottiche TECNICHE OTTICHE (100 < f < 1000 THz ) PASSIVE Topografia Fotogrammetria Microscopia confocale Shape from silhouette ATTIVE Triangolazione Singolo spot Piano luminoso singolo Piani luminosi multipli Misure distanza Tempo di volo (TOF) Università degli Studi di Bergamo Caterina Rizzi Interferometria Moirè Proiezione di pattern Shift di fase Pulsato Modulazione continua Multi-wavelenght Olografia 22 11 23 Metodi ottici passivi Sistemi ottici passivi Passive vision o a luce non strutturata forma 3D generata sfruttando l’illuminazione naturale presente nell’ambiente – basati sulla acquisizione di molte immagini RGB prese da punti diversi, sulla ricostruzione dei contorni dell’oggetto ripreso ed sull’integrazione di tali contorni per la ricostruzione del modello 3D Caratteristiche: • • • Veloci, economici Acquisizione solo parti visibili Sensibili alle proprietà superficiali dei materiali Università degli Studi di Bergamo Caterina Rizzi 24 Sistemi ottici attivi 23 24 Active vision Costituiti da una coppia sorgente – sensore – la sorgente emette una qualche forma di pattern illuminante – il sensore acquisisce il segnale di ritorno riflesso dalla superficie dell’oggetto – La sorgente luminosa scandisce lo spazio in modo regolare ed il sistema ritorna una matrice che codifica i punti rilevati, detta usualmente range map, che riporta l’informazione spaziale della parte di superficie dell’oggetto visibile dallo strumento di scansione dato il suo orientamento corrente. Active Vision Le coordinate si calcolano a partire dal piano della lente Lo strumento che impiega una tecnica 3D attiva viene normalmente chiamato Range Camera Università degli Studi di Bergamo Caterina Rizzi 24 12 25 Scanner ottici Università degli Studi di Bergamo Caterina Rizzi 26 25 Sensori basati sulla triangolazione Principio di funzionamento 1. Un raggio laser colpisce il bersaglio e viene riflesso (in modo diffuso) 2. Il punto colpito viene messo a fuoco da lenti su un sensore CCD 3. In base alla posizione del punto sul sensore si può determinare la distanza del bersaglio D1 = distanza di riferimento (lo zero) 26 D2 = campo di validità delle misure Università degli Studi di Bergamo Caterina Rizzi 26 13 30 Sistemi a tempo di volo Viene emesso un segnale ad impulsi (o modulato) ed il sensore misura il tempo necessario per raggiungere la superficie e tornare in modo riflesso al dispositivo sistemi in genere poco precisi (l’accuratezza si colloca nei valori 1 - 5 cm) possibilità di acquisire ampie superfici in una singola immagine (nell’ordine delle decine di metri quadrati) FARO Università degli Studi di Bergamo Caterina Rizzi Leica Riegl LMS 30 31 Problematiche Verifica delle prestazioni dei sistemi ottici – Abbondanza di sensori ottici presenti sul mercato – Le normative per la verifica di prestazioni sono ancora in fase di sviluppo (es. ISO 10360-7, VDI/VDE 2617-6, ANSI/ASME B89.4.14) – I costruttori di sistemi adottano procedure di verifica diverse Gli utilizzatori: – hanno difficoltà nell’effettuare confronti tra sistemi – non sanno come eseguire le verifiche di accettazione e le verifiche periodiche delle prestazioni metrologiche – non conoscono l’accuratezza degli specifici processi di misura N.B. Il risultato di una misurazione effettuata ha senso solo se è noto il grado di incertezza e più in generale tutti i parametri che convergono nella caratterizzazione di una misura Università degli Studi di Bergamo Caterina Rizzi 31 14 33 Fattori di criticità Caratteristiche Formali Geometria, dimensione e sviluppo spaziale fino ad arrivare alla analisi sulla variazione di curvatura e alla presenza di dettagli in rapporto alla dimensione principale del modello Caratteristiche Materiche Materiale, finitura superficiale e colore condizionano in maniera determinante la risposta ottica della luce come elemento esplorante Condizioni Ambientali Università degli Studi di Bergamo Caterina Rizzi Condizioni al contorno come la luminosità dell’ambiente, lo spazio di movimentazione, il tempo per il rilievo determinati per la qualità del rilievo e la diminuzione o amplificazione delle problematiche di acquisizione 3D 33 34 Pipeline Università degli Studi di Bergamo Caterina Rizzi 34 15 35 Calibrazione Alcune procedure sono fatte “a priori” per verificare i dati di targa forniti dal costruttore dello strumento: – Verifico l’incertezza di misura dello strumento Altre procedure devono essere ripetute durante il funzionamento dello scanner, per verificarne la stabilità nel tempo – Es. circa ogni mese si deve ri-calibrare la lente in uso – Ogni volta che cambia l’ottica è necessaria una calibrazione specifica Altre procedure di calibrazione sono da farsi in funzione del caso specifico: – Es. nel caso di utilizzo della tavola rotante, è necessario definire, per la specifica distanza di utilizzo, il centro del sistema di rotazione della tavola Università degli Studi di Bergamo Caterina Rizzi 35 36 Prestazioni scanner Prestazion di misura dello strumento su bersagli di test di cui sia nota a priori la forma (supporti certificati): – pezzo campione avente delle features tecnologiche: piani, cilindro, cono. – pezzo avente cilindri concentrici di diverse altezze che determinano una scala di gradini variabile da 30 a 7680 μm – piano rettificato la cui deviazione dal piano teorico sia almeno 10 volte inferiore alla incertezza di misura che si vuole determinare Università degli Studi di Bergamo Caterina Rizzi 36 16 37 Scansione PIANIFICAZIONE quante range maps acquisire quali punti di vista con quale risoluzione Range Camera X Parametri della scansione: Obiettivo - distanza focale f (mm) Profondità di campo / area di ripresa Risoluzione acquisizione in X,Y e in Z Tempo di scansione Definizione dei punti di riferimento sull’oggetto Z – – – – – Standoff Near FOV Depth-of-view DOV Measured Laser Plane Far Field of view FOV Università degli Studi di Bergamo Caterina Rizzi 37 38 Allineamento Partendo da una nube che si assume come riferimento, si carica una nube adiacente e si individuano manualmente punti corrispondenti Si avvia una procedura iterativa che minimizza lo scarto quadratico medio tra le nubi. Quando lo scarto scende sotto una soglia prefissata la procedura si interrompe La matrice di rototraslazione della seconda nube,associata alla nuova posizione, viene salvata Il blocco delle due nubi costituisce adesso il riferimento per la successiva integrazione etc. Immagini sovrapposte del 30% Registro le immagini usando almeno 3 punti omologhi Università degli Studi di Bergamo Caterina Rizzi 38 17 41 Pulizia scansioni Eliminazione delle scansioni inutili e che presentano dei parametri troppo alti Eliminazione dei bordi delle scansioni (profondità da valutare) e quindi degli eventuali problemi di bordo Eliminazione delle aree di sovrapposizione, in funzione della profondità di ridondanza dei dati e la distanza tra le scansioni Università degli Studi di Bergamo Caterina Rizzi 42 41 Merge Attenzione ai parametri – Noise reduction – Point spacing Università degli Studi di Bergamo Caterina Rizzi 42 18 43 Merged Model Perdita di dettagli Aligned Model vs Merged Model Rumore Università degli Studi di Bergamo Caterina Rizzi 43 44 Editing Prima fase: si e eliminano le anomalie derivanti da: – – – – – Triangoli degeneri presenti, per esempio, sui bordi Facce intersecanti la superficie complessiva Ricostruzione dei bordi Chiusura dei buchi/gap eventualmente rimasti Una prima decimazione e successivo remesh per ridurre il numero dei triangoli, alleggerendo il modello Facce non-manifold Unstable Faces Università degli Studi di Bergamo Caterina Rizzi Facce ridondanti Crossing Faces 44 19 45 Editing del modello Eliminazione del rumore Definizione dei contorni Editing locale e mirato per preservare la geometria del modello 3 punti di controllo 9 punti di controllo Università degli Studi di Bergamo Caterina Rizzi 24 punti di controllo 45 46 Operazioni editing Modello finale Modello originale Reduce noise – Attenzione al tipo di forma sulla quale si interviene (libera o prismatica) Relax – Per lisciatura complessiva Sandpaper – Per lisciatura locale Università degli Studi di Bergamo Caterina Rizzi 46 20 47 Ricostruzione superficie parametrica suddividere il modello in regioni semplici aventi una bassa curvatura. Il processo è in parte automatico ed in parte manuale Università degli Studi di Bergamo Caterina Rizzi 47 48 Ricostruzione superficie parametrica suddividere il modello in regioni semplici aventi una bassa curvatura. Il processo è in parte automatico ed in parte manuale estrarre e perfezionare i contorni delle regioni per ottenere un modello suddiviso in regioni elementari Università degli Studi di Bergamo Caterina Rizzi 48 21 49 Ricostruzione superficie parametrica suddividere il modello in regioni semplici aventi una bassa curvatura. Il processo è in parte automatico ed in parte manuale estrarre e perfezionare i contorni delle regioni per ottenere un modello suddiviso in regioni elementari costruire le patches all’interno delle regioni trovate intervenendo manualmente per regolarizzare la struttura creata automaticamente dal programma Università degli Studi di Bergamo Caterina Rizzi 49 50 Ricostruzione superficie parametrica suddividere il modello in regioni semplici aventi una bassa curvatura. Il processo è in parte automatico ed in parte manuale estrarre e perfezionare i contorni delle regioni per ottenere un modello suddiviso in regioni elementari costruire le patches all’interno delle regioni trovate intervenendo manualmente per regolarizzare la struttura creata automaticamente dal programma definire la griglia da utilizzare per calcolare le Nurbs (automatico) Università degli Studi di Bergamo Caterina Rizzi 50 22 51 Verifica tra modello digitalizzato e modello finale CAD Università degli Studi di Bergamo Caterina Rizzi 51 52 Re-engineering per Alessi (b) Konica Minolta Vi-9i laser scanner Tele lens f = 25 mm Depth of view 600 mm Accuracy (X,Y,Z) ± 0.050 mm Precision (Z, σ ) ± 0.008 mm In order to decide the final shape, the focus was put on aspects like stylistic coherence, and on the identification of those characterizing style features which had to be maintained in the all shapes of the cutlery pieces, as opposed to considering precision aspects alone. (c) The main problems were: • restoring the symmetry plane of the object (a) Nowadays, designers have more powerful tools which allow them to directly participate in the design, production, evaluation and quality control phases of product development. The re-engineering activity described in this paper concerns the use of RE and RP technologies applied in field of high-range home products and accessories, qualified for their “design excellence” , in detail a cutlery set. • obtaining the curve network referred to the symmetry plane of the object (b) • manipulating curves to improve their quality (c) while at the same time maintaining the global shape (d) (a) Comparison stl-Nurbs model- table fork. The cutlery set, first designed in 1938 by architect Luigi Caccia Dominioni, perhaps one of the most historical and famous Alessi cutlery set, was redesigned in 1990 together with brother Castiglioni. (d) 3D Scanning 3D Modelling and Prototyping 3D Reconstruction Global alignment (± 0,01 mm) 3D digital models. σ = 0,028 mm Requirements • global dimensional tolerance < 0.2 mm Isophotes of the reflection lines . • fixed dimensions related to pre-defined sections “L. Caccia Dominioni, L.and P.L. Castiglioni” Cutlery set. 1990 (1938) Università degli Studi di Bergamo Caterina Rizzi The physical prototypes of the re-engineered models were manufactured by means of a rapid prototyping system, to permit designers having a visual check of the final shape. 52 23 53 Analisi FEM telaio pianoforte Modello CAD in costruzione Telaio ricostruito con lacune Schema di applicazione carichi Università degli Studi di Bergamo Caterina Rizzi 53 54 Progettazione custom-fit Schuberth Engineering AG Progetto per casco di Formula 1 Università degli Studi di Bergamo Caterina Rizzi 54 24 Settore Abbigliamento Modellatore 3D Digitalizzazione ACQUISIZIONE DATI Ottimizzazione Modulo Modifiche SVILUPPO SOFTWARE Modulo Export Università degli Studi di Bergamo Caterina Rizzi 55 Digitalizzazione Modello digitale 3D rilevato x1 , y 1 , z 1 x2 , y 2 , z 2 x3 , y 3 , z 3 x4 , y 4 , z 4 Nuvola di punti …….. xn , y n , z n Sistema ATOS Linee caratteristiche rilevate Oggetto fisico Manichino Giacca Modello digitale 3D del manichino Università degli Studi di Bergamo Caterina Rizzi 56 25 Ottimizzazione 373.683 Triangoli RAPPRESENTAZIONE MEDIANTE PUNTI RILEVATA 14.468 Triangoli SUPERFICI TRIANGOLI NURBS (.STL) RAPPRESENTAZIONE OTTIMIZZATA Università degli Studi di Bergamo Caterina Rizzi 57 Ottimizzazione 25.000 Triangoli Università degli Studi di Bergamo Caterina Rizzi 2.000 Triangoli 58 26 Ottimizzazione (3/4) PARAFORM Riduzione n. punti PARAFORM MAYA Riempimento gap Rilevata Ottimizzata Creazione manica mancante Creazione Linee di cucitura MAYA Università degli Studi di Bergamo Caterina Rizzi 59 Ottimizzazione (4/4) MOD9 TEST-CASE Rilevata (con 1 manica): 114.149 punti, 223.707 triangoli Ottimizzata (due maniche): 24.352 punti, 38.026 triangoli MOD8 Rilevata (con 1 manica): 411.880 punti, 819.725 triangoli Ottimizzata (due maniche): 16.982 punti, 26.572 triangoli MOD0 Rilevata (con 1 manica): 139.393 punti, 272.535 triangoli Ottimizzata (due maniche): 94.000 punti, 167.000 triangoli Università degli Studi di Bergamo Caterina Rizzi 60 27 Modulo modifiche Def. tipologie modifiche Applicazione Deformer Elemento strutturale Modifica Range [cm] 1.Fondo Definizione Giacca base Allungare-Accorciare +/- 6 2.Maniche Generazione deformazioni base (LATTICE e Allungare-Accorciare +/- 6 WIRE) Allargare-Stringere +/- 2 3.Spalle Generazione Modifica (BLEND SHAPE) Spalle Alzare-Abbassare Bacino Allargare-Stringere +/- 1,5 +/- 3 Vita Allargare-Stringere +/- 3 Torace Allargare-Stringere +/- 2 Interfaccia utente Università degli Studi di Bergamo Caterina Rizzi 61 Protesi artificiali Progettazione Università degli Studi di Bergamo Caterina Rizzi 62 28 Protesi artificiali Acquisizione morfologia moncone EXTERNAL LASER SCANNER INTERNAL (+ EXTERNAL) CT MRI Minolta VI-9i Point cloud Università degli Studi di Bergamo Caterina Rizzi 63 Protesi artificiali Ricostruzione modello 3D EXTERNAL Università degli Studi di Bergamo Caterina Rizzi INTERNAL 64 29