PROGETTAZIONE DI INGRANAGGI IN AMBIENTE INTEGRATO OPEN SOURCE: METODOLOGIA GENERALE DI PROGETTAZIONE E DISEGNO DELL EVOLVENTE



Documenti analoghi
Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti

Guida all uso di Java Diagrammi ER

EasyPrint v4.15. Gadget e calendari. Manuale Utente

lo PERSONALIZZARE LA FINESTRA DI WORD 2000

. A primi passi con microsoft a.ccepss SommarIo: i S 1. aprire e chiudere microsoft access Start (o avvio) l i b tutti i pro- grammi

GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain.

RUOTE DENTATE. Introduzione

GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL

~ Copyright Ripetizionando - All rights reserved ~ STUDIO DI FUNZIONE

Cosa è un foglio elettronico

LE FUNZIONI A DUE VARIABILI

SOMMARIO... 3 INTRODUZIONE...

per immagini guida avanzata Uso delle tabelle e dei grafici Pivot Geometra Luigi Amato Guida Avanzata per immagini excel

per immagini guida avanzata Organizzazione e controllo dei dati Geometra Luigi Amato Guida Avanzata per immagini excel

GUIDA AL CHART TRADING

MANUALE PARCELLA FACILE PLUS INDICE

Corso di Automazione industriale

Teoria in sintesi 10. Attività di sportello 1, 24 - Attività di sportello 2, 24 - Verifica conclusiva, 25. Teoria in sintesi 26

Consideriamo due polinomi

Per studio di funzione intendiamo un insieme di procedure che hanno lo scopo di analizzare le proprietà di una funzione f ( x) R R

Mon Ami 3000 Ratei e Risconti Calcolo automatico di ratei e risconti

COMUNI-CHIAMO S.R.L. Via San Martino n. 26/1- Monte San Pietro P.IVA, C.F. e numero di iscrizione alla Camera di Commercio di Bologna

Capitolo 13: L offerta dell impresa e il surplus del produttore

Creare diagrammi di Gantt con Visio 2003

DISEGNO TECNICO INDUSTRIALE

Gestione Rapporti (Calcolo Aree)

PROGRAMMAZIONE ASSISTITA DAL COMPUTER (CAD/CAM)

CREAZIONE DI UN DATABASE E DI TABELLE IN ACCESS

Mon Ami 3000 Conto Lavoro Gestione del C/Lavoro attivo e passivo

Basi di matematica per il corso di micro

APPENDICE LINEE GUIDA PER SPERIMENTAZIONE WEB

Pagina 2 di 14. Indice

I TUTORI. I tutori vanno creati la prima volta seguendo esclusivamente le procedure sotto descritte.

Registratori di Cassa

Excel. A cura di Luigi Labonia. luigi.lab@libero.it

Alla scoperta della nuova interfaccia di Office 2010

Dispensa di database Access

CORSO ACCESS PARTE II. Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?)

Il database management system Access

Manuale d uso Software di parcellazione per commercialisti Ver [05/01/2015]

Progettaz. e sviluppo Data Base

Il software ideale per la gestione delle prenotazioni GUIDA UTENTE

Relazioni tra tabelle

Excel avanzato. I nomi. Gli indirizzi e le formule possono essere sostituiti da nomi. Si creano tramite Inserisci Nome Definisci

ESERCITAZIONE Scrittura di un programma CNC per la fresatura di un componente dato

Il calendario di Windows Vista

Analisi sensitività. Strumenti per il supporto alle decisioni nel processo di Valutazione d azienda

Manuale Utente Albo Pretorio GA

STAMPA DI UNA PAGINA SEMPLICE

Analisi e diagramma di Pareto

EXCEL PER WINDOWS95. sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area di lavoro, detta foglio di lavoro,

Modellazione 3D con elementi solidi. Esempio guidato 10 Pag. 1

GESTIONE FATTURE (VELINE)

Fasi di creazione di un programma

Gestire immagini e grafica con Word 2010

Introduzione a Jeronimo Essentials

Gestione Risorse Umane Web

3.2. Passo 2: Navigazione per individuare l articolo richiesto

DOCUMENTO ESERCITAZIONE ONENOTE. Utilizzare Microsoft Offi ce OneNote 2003: esercitazione rapida

WoWords. Guida all uso: creare ed utilizzare le frasi. In questa guida è descritto come creare ed utilizzare le frasi nel software WoWords.

Università degli Studi di Messina

Software Gestionale Politiche Giovanili

MArine Coastal Information SysTEm

Novità di Access 2010

Dalla a alla zeta: Guida facile ALCUNE NOTE SU COME UTILIZZARE vers. 1 Dicembre 2010 per le assicurazioni non profit

MODULO 5 ACCESS Basi di dati. Lezione 4

Banca dati Professioniste in rete per le P.A. Guida all uso per le Professioniste

Mon Ami 3000 Varianti articolo Gestione di varianti articoli

Il sistema C.R.M. / E.R.M.

Progetti e diagrammi di Gantt con Access

Strumenti per la Progettazione

SCRUTINIO ON LINE 2 PERIODO

Programma Gestione Presenze Manuale autorizzatore. Versione /08/2010. Area Sistemi Informatici - Università di Pisa

ACCESSO AL SISTEMA HELIOS...

RUOTE DENTATE CILINDRICHE A DENTI DIRITTI E CREMAGLIERE

Volume GESTFLORA. Gestione aziende agricole e floricole. Guidaall uso del software

2.0 Gli archivi. 2.1 Inserire gli archivi. 2.2 Archivio Clienti, Fornitori, Materiali, Noleggi ed Altri Costi. Impresa Edile Guida all uso

FUNZIONE. Si scrive: A B f: A B x y=f(x) (si legge: f funzione da A in B) x f y= f(x)

WG-TRANSLATE Manuale Utente WG TRANSLATE. Pagina 1 di 15

PULSANTI E PAGINE Sommario PULSANTI E PAGINE...1

PROCEDURE GENERALI ATTIVAZIONE MACRO

Sistema Informativo Gestione Fidelizzazione Clienti MANUALE D USO

IRSplit. Istruzioni d uso 07/10-01 PC

Il calcolatore - Applicazioni

FIRESHOP.NET. Gestione Lotti & Matricole.

CONTROLLO IN TENSIONE DI LED

MANUALE D'USO. ORIONE DI BISTULFI srl - Via Moscova, MILANO tel: info@orionesrl.it 1

Sistema per scambi/cessioni di Gas al Punto di Scambio Virtuale

Invio SMS. DM Board ICS Invio SMS

Uso delle tabelle e dei grafici Pivot

Manuale d uso per la raccolta: Sicurezza degli impianti di utenza a gas - Postcontatore

Uso di base delle funzioni in Microsoft Excel

Raggruppamenti Conti Movimenti

Prof.ssa Paola Vicard

Appunti sulla Macchina di Turing. Macchina di Turing

Guida al sistema. Dott. Enea Belloni

e-procurement Hera MANUALE FORNITORI: FUNZIONALITA DI UPLOAD/DOWNLOAD EXCEL

ANALISI SOSPENSIONI Modalità Base

4. Fondamenti per la produttività informatica

Il menu File contiene tutti i comandi relativi alle seguenti operazioni:

Transcript:

AIAS ASSOCIAZIONE ITALIANA PER L ANALISI DELLE SOLLECITAZIONI 41 CONVEGNO NAZIONALE, 5-8 SETTEMBRE 2012, UNIVERSITÀ DEGLI STUDI DI PADOVA AIAS 2012-044 PROGETTAZIONE DI INGRANAGGI IN AMBIENTE INTEGRATO OPEN SOURCE: METODOLOGIA GENERALE DI PROGETTAZIONE E DISEGNO DELL EVOLVENTE L. Landi Università degli Studi di Perugia, Dipartimento di Ingegneria Industriale, Via G. Duranti, 63 06125 Perugia, e-mail: l.landi@unipg.it Sommario La presente ricerca ha riguardato l implementazione teorica e lo sviluppo di una piattaforma software per la progettazione e verifica di ingranaggi basato su un ambiente integrato di programmazione open source. Secondo lo scrivente lo sviluppo di una qualsiasi piattaforma di progettazione basata su software open source porta ai seguenti vantaggi: costo nullo della l implementazione e la gestione del software, portabilità totale del software nei vari sistemi operativi (ad esempio Windows/Linux/Mac), sviluppo aperto di nuovi moduli basati sulle specifiche esigenze di ricerca e facile integrazione con routine sviluppate in altri linguaggi (C++, Visual Basic, ) Nella memoria saranno presentati i componenti principali sviluppati e in particolare sarà mostrato il modulo grafico di disegno degli ingranaggi sviluppato utilizzando routine Python integrate con una interfaccia grafica in Qt. Abstract This research activity deals with the theoretical implementation and development of a software platform, based on open source programming, for designing and optimizing gears. A design platform based on an open source software gives the following advantages: zero management costs and software deployment, software portability through different operating systems (e.g. Windows/Linux/Mac), rapid development of new modules based on specific research requirements and easy integration with other languages (C + +, Visual Basic,...).. In this paper the main components of the application will be presented, focussing also on the developed gear graphic design module written by the author using Python routines and the Qt graphical interface. Parole chiave: ottimizzazione ingranaggi, software open source 1. PIATTAFORMA DI SVILUPPO PYTHON(X,Y) Questa applicazione per la progettazione di coppie di ingranaggi è stata interamente realizzata in ambiente Python(x,y) versione 2.6.5.3 [1]. Il Python è un linguaggio di programmazione ad alto livello, rilasciato pubblicamente per la prima volta nel 1991 dal suo creatore Guido Van Rossum. La caratteristica di essere un programma freeware determina forti vantaggi di utilizzo e diffusione del software stesso e delle applicazioni che si basano su questo linguaggio di programmazione. Il Python è un linguaggio di programmazione orientato ad oggetti, caratteristica che ne garantisce facilità e velocità sia di stesura che di comprensione, altra caratteristica molto importante è quella di

essere facilmente integrabile con uno modulo per lo sviluppo dell interfaccia grafica denominata Qt [2]. Questo ultimo applicativo, molto intuitivo e di facile utilizzo, permette la creazione veloce e personalizzata di finestre grafiche a bottoni anche complesse. La finestra grafica realizzata in Qt viene facilmente tradotta in linguaggio Python, operazione eseguita in automatico con un file batch, in modo da integrare completamente la grafica realizzata ed il programma compilato in Python. Python è infatti un linguaggio pseudo compilato: un interprete si occupa di analizzare il codice sorgente (semplici file testuali con estensione.py) e, se sintatticamente corretto, di eseguirlo. In Python, non esiste una fase di compilazione separata (come avviene in C) che generi un file eseguibile partendo dal sorgente, i file vengono direttamente compilati prima dell esecuzione. Interfaccia grafica In particolare tramite l applicazione QT sono state create due finestre principali: una per il calcolo geometrico ed una per il calcolo/verifica delle dentature, ogni delle quali è costituita da numerose fogli di calcolo dedicati a singole fasi di progettazione. In figura 1 sotto viene riportata la finestra principale di interfaccia del modulo di calcolo geometrico con l indicazione delle principali modalità di interazione fra il progettista e la piattaforma di progettazione. lettura e salvataggio fogli funzioni principali modulo grafico e scrittura report campi di inserimento dati pulsanti di calcolo campi di scelta imposizione dati campi di lettura avvertimenti e messaggi di sistema Figura 1: metodi principali di interazione con l interfaccia utente Classi Python e dictionary Senza soffermarsi ulteriormente sugli aspetti relativi alla programmazione si vogliono brevemente riportare alcune dei costrutti principali utilizzati per lo sviluppo dell applicativo, che sono peculiari nella programmazione python, e che si sono dimostrati di fondamentale importanza per mantenere la coerenza globale della piattaforma software nelle varie fasi dello sviluppo e per la sua espandibilità futura: programmazione strutturata in classi base e derivate, ad esempio per definire la classe fondamentale dell applicativo, l oggetto ruota dentata è stata sviluppata primariamente la classe base ruota per la cui costituzione sono necessari: nome, modulo(m), angolo di pressione

primitivo (alfa) e angolo d elica (teta), fascia ella ruota (f), spostamento (x), ribassamento (k), addendum (a), dedendum(d) e tipo della ruota (ad esempio esterna od interna, si veda ad esempio [3]). Questi dati sono quelli strettamente necessari alla definizione geometrica di una ruota qualsiasi e prescindono dal tipo stesso della ruota. Definiti questi mattoni principali per le definizione delle classi si possono, a partire da queste, definire classi derivate, ad esempio la classe ruota esterna che contiene tutti i parametri della classe base più quelli necessari per la specifica classe derivata. In questo modo l applicativo può essere progettato a fasi successive e le scelte effettuate nella programmazione e gestione della classi derivate non andranno mai ad influire sulle potenzialità generali del sistema e sulla sua possibile espandibilità; gestione delle informazioni tramite dictionary: un limite ricorrente di molti linguaggi di programmazione strutturati è quello di dover definire il contenuto, od almeno il tipo, delle variabili con cui vengono effettuati i calcoli all interno del sistema. Questo porta a dover progettare prima in modo abbastanza preciso dove andranno poste le informazioni che si rendono disponibili durante lo sviluppo di un qualsiasi sistema, la gestione del passaggio e del salvataggio di queste informazioni fra i vari moduli dell applicativo,. In Python esiste un costrutto veramente versatile chiamato dictionary che essenzialmente è una mappa di coppie di dati chiave/valore definibili ovunque all interno dell applicazione stessa. In estrema sintesi un dictionary può essere inizializzato all interno di una classe ad esempio nel seguente modo: self.geom={'init':'ok'}, cioè la classe self da ora in poi ha un dictionary geom che può essere utilizzato dalla sua inizializzazione in poi per contenere dati qualsiasi. Ad esempio più avanti nel programma potrebbe essere necessario calcolare e salvare in memoria il valore del diametro primitivo [3] della ruota: self.geom['dia_pr']=self.m_t * self.ndenti. Questa istruzione calcola il diametro primitivo di una ruota esterna qualsiasi a partire dal modulo e numero di denti e lo scrive nel dictionary geometrico della classe sotto la chiave dia_pr. Da qui in poi questa quantità verrà resa disponibile quando si voglia all interno della classe con una semplice chiamata. Senza dilungarsi ulteriormente si comprende come con l utilizzo delle classi basi-derivate e dei dictionary possa essere costruita una piattaforma facilmente mantenibile ed aggiornabile: se ci sono nuove quantità da calcolare e tenere di conto basta aggiungerle nel dictionary, le molte funzioni di interrogazione degli stessi ci aiuteranno a tener conto della grossa mole di dati contenuta nei dictionary stessi. L applicazione sviluppata prevede quindi lo progettazione e l ottimizzazione di dentature tramite una serie di fasi che si susseguono in cascata seguendo un filo logico di diretta corrispondenza con il processo industriale di progettazione e produzione degli ingranaggi. Inoltre, per ogni fase della progettazione, l utente riesce a comprendere in tempo reale l influenza delle scelte progettuali effettuate nei confronti delle proprietà geometrico-cinematiche dell accoppiamento in esame. In questo modo, passo dopo passo, l utente può modificare facilmente i parametri immessi ottimizzandone il valore in funzione dei risultati desiderati; in questo modo viene garantita sia velocità che efficacia della progettazione. ARCHITETTURA GENERALE DELLA PIATTAFORMA DI PROGETTAZIONE L architettura generale del software sviluppato è basato su tre moduli principali: modulo cineto/dinamico, modulo di disegno e modulo di verifica secondo la normativa ISO. In figura 2 sono riportati brevemente i moduli appena enumerati e le funzioni principali presenti in ogni modulo. Per una descrizione puntuale dei moduli cineto/dinamico e di verifica ISO si veda [4].

Figura 2 moduli principali della piattaforma Pygear UniPG In particolare nella figura sopra le frecce monodirezionali indicano la reale direzione del flusso progettuale e quindi dei dati. In altre parole, per non incorrere in pericolose riscritture parziali del database della singola ruota o dell accoppiamento, non è possibile modificare le impostazioni del modulo cineto/dinamico direttamente dal modulo di verifica ISO, ma è possibile agire in senso inverso. Si può comunque sempre entrare nel modulo cineto/dinamico ed apportare le verifiche volute e poi caricare di nuovo le ruote modificate nel modulo ISO. Per come è strutturato il database è possibile inoltre prevedere la verifica della stessa coppia di ruote dentate con condizioni di carico completamente diverse. Nella schermata principale del modulo di verifica ISO è possibile infatti associare a una stressa struttura dati geometrica più condizioni di carico differenti per potenza (coppia) e numero di giri differenti e salvare i risultati su file distinti. Nella figura 3 sotto viene infine riportato un esempio delle innumerevoli immagini e tabelle di aiuto sviluppate all interno della piattaforma di progettazione. Essendo il software specificamente sviluppato per utenti esperti è stato volutamente scelto di non utilizzare finestre addizionali più o meno nascoste per i parametri secondari come in alcuni ottimi software commerciali presenti sul mercato [5,6]. In questi casi infatti il programma Figura 3 esempio di una delle figure richiamabili all interno del software, in particolare definizione ISO degli spessori delle ruote deve essere comprensibile anche per utenti non del tutto esperti che vogliono effettuare calcoli di massima sulla base delle opzioni standard suggerite nelle varie norme.

Nel presente software si è invece optato per lasciare in chiaro tutti i parametri fondamentali necessari per il calcolo e la verifica e di riepilogarne il significato dei principali attraverso numerose finestre grafiche di aiuto per il progettista. E stato inoltre scelto, nell impostazione dei materiali, di lasciare libero l utente di definire, tramite un file Excel appositamente predisposto di facilissima comprensione, un materiale qualsivoglia secondo la nomenclatura della normativa ISO 6336-5 [7]. Introducendo una nuova riga nella tabella di definizione dei materiali standard e salvando la nuova tabella in formato testo direttamente da Excel alla nuova apertura del software l utente si troverà con il database aggiornato con il materiale introdotto senza dover più immettere i numerosi dati necessari sulla apposita finestra della piattaforma. I campi necessari saranno automaticamente compilati e presentati prendendoli da quelli forniti su Excel, con possibilità nulle di errori dovuti a trascrizione o errata conversione di unità di misura. MODULO GRAFICO DI DISEGNO DEL DENTE E DELL INGRANAMENTO Uno dei problemi fondamentali da risolvere per l ottenimento di una piattaforma pienamente utilizzabile per la progettazione di ingranaggi era quello del disegno e della visualizzazione delle geometrie reali dei denti. Specialmente nel caso particolare di sottotaglio nella fabbricazione e nel successivo ingranamento risulta essere necessario per il progettista l ottenimento della reale geometria del fondo del dente e del reale raggio limite dell evolvente [3,8]. Questo raggio limite è un parametro fondamentale per la corretta simulazione dell ingranamento, infatti esso è valore minimo del raggio in cui viene preservato, durante il taglio, l evolvente matematico. Al di sotto (cioè per diametri più piccoli) di questo raggio l evolvente viene asportato dal taglio con la dentiera, tale valore non è ricavabile in forma chiusa e non è disponibile in letteratura. Figura 4 esempio di un caso in cui il raggio limite di evolvente si trova all esterno del raggio attivo, causando un cattivo funzionamento dell ingranamento In figura 4 viene presentato il caso esemplificativo di due ruote (modulo 3 mm, movente con 11 denti e cedente con 25, angolo di pressione 20, denti diritti e spostamento dei profili nullo) in cui la dentiera (in nero presentata senza raggio di raccordo di testa per maggiore chiarezza) asporta la parte di evolvente teorico (in rosso nel particolare a destra) durante il taglio. Il raggio attivo teorico di fondo dell ingranaggio a 11 denti (linea tratteggiata in rosso) non può essere rispettato creando sicuri problemi nell ingranamento, di rumore e rapporto di condotta reale ridotto. Ottenere questo raggio limite esatto, come si vedrà in seguito, non è semplice poiché deve essere simulato matematicamente il meccanismo di taglio della dentiera per ottenere la reale geometria di inviluppo ed il moto relativo fra i corpi.

Moto della dentiera Nello sviluppo del modulo grafico si è fatto riferimento principalmente al lavoro di Su e Houser [9] che permette una trattazione analitica corretta del meccanismo di taglio considerando ferma la ruota ed la dentiera in moto. Nella figura 5 viene riportato un esempio, ottenibile con il modulo già citato, utile per capire come possa essere ottenuto un dente qualsiasi (verde) dall inviluppo della rotazione di una qualsivoglia dentiera (nero). L origine degli assi viene convenzionalmente posta nel punto P 5 (cerchiato in rosso in figura) che rappresenta l intersezione dei diametro primitivo della ruota da tagliare e la retta primitiva della dentiera (ruota con numero di denti infinito). Y X P 2 di dentiera senza raccordo di testa (speculativa) Origine degli assi per il disegno (P 5 ) Centro del raccordo della dentiera (P rac ) Dentiera con raccordo di testa 0,2 m (DIN 3972, tipo II) Figura 5 esempio di creazione del dente tramite inviluppo del moto della dentiera In particolare per un qualsiasi punto appartenente alla dentiera, la traiettoria del moto si ottiene tramite una cosiddetta trocoide primaria la cui equazione di un generico punto T a partire da un punto (x p,y p ) rispetto all origine degli assi P 5 ed ad un parametro u è: = sin+ + cos+ sin 1 cos + sin+ cos (1) dove: - r p raggio primitivo della ruota da tagliare, pari a al modulo per il numero dei denti per ruote senza spostamento del profilo, - u parametro di rotolamento, che permettere di descrivere lo sviluppo della trocoide in forma chiusa. Quindi, una volta definite le coordinate generiche (x p,y p ) di un punto sulla dentiera si riesce facilmente, facendo variare il parametro u, ad ottenere la traiettoria del moto del punto scelto. E da notare che la trocoide ha due rami, corrispondenti ai differenti segni del parametro u; per generare il giusto dente, i rami da considerare sono quelli ad u positivo per i punti sulla dentiera sopra P 5 e quelli a parametro u negativo per i punti al di sotto della primitiva (si vedano le trocoidi riportate in figura 5 a sinistra). Il punto P rac, centro del raccordo di testa della dentiera, genera nel moto una trocoide come tutti i punti della dentiera, mentre i punti dell arco del raccordo globalmente hanno la proprietà di giacere tutti alla stessa distanza r t dal centro del raccordo stesso. Si dimostra che tutti i punti dell arco del raccordo generano globalmente una cosiddetta trocoide secondaria (x TS,y TS ), la cui equazione è riportata sotto[10].

= sin + + cos+ sin 1 cos + sin + cos + cos! sin! " (2) Dove: - r t raggio del raccordo di testa della dentiera, ' -! = # $%#& ()*+ angolo caratteristico della trocoide secondaria., -./ ()*+ Si nota che l equazione della trocoide secondaria è quella della generica trocoide passante per il punto di raccordo P rac più un termine che descrive in termini parametrici l equazione di una circonferenza ruotata di un certo angolo caratteristico(γ) che dipende dalla posizione iniziale del centro del raccordo. Utilizzando questa descrizione del profilo del dente, basato sull inviluppo delle successive posizioni della dentiera, risulta semplice generare profili dei denti anche nel caso di spostamento del profilo: è sufficiente descrivere i punti della dentiera stessa secondo la loro posizione variata dalla traslazione rigida dovuta allo spostamento che gli deve essere imposto per il taglio. Generazione del profilo del dente e del raccordo di piede del dente Per generare il dente deve essere quindi creato l inviluppo dei vari trocoidi primari e secondari per il fondo del dente e deve essere trovata l intersezione fra l evolvente matematica teorica che si genera dal diametro di base ed il tratto raccordato per ricavare, fra gli altri, anche il già menzionato raggio limite dell evolvente. Le caratteristiche fondamentali per la famiglia delle trocoidi utili per il disegno dell inviluppo del dente in ogni sua parte sono [9]: 1. due punti P 1 e P 2 che giacciono sulla stessa linea orizzontale tracciano due trocoidi identiche τ 1 e τ 2, se il punto P 2 giace alla destra di P 1, τ 2.giace alla destra di τ 1 ; 2. nel caso teorico di dentiera non raccordata (si veda punto limite P 2 in figura 5 a destra nel cerchio blu), scorrendo la dentiera sul segmento inclinato dell angolo di pressione, i punti che stanno sotto P 2 fino a P 5 (che genereranno il dedendum del dente), danno luogo delle trocoidi che sono tangenti all evolvente (cioè generano il fianco della dentatura). Il raccordo di fondo viene quindi generato unicamente dal punto P 2 in testa alla dentiera; 3. quando invece la dentiera ha un raccordo di testa esso crea nella rotazione dell arco raccordato un singolo trocoide secondario da considerarsi con le formule del trocoide secondario. In questo caso per ottenere la forma del piede del dente devono essere trovati tutti i punti di intersezione fra i trocoidi limite dei tratti orizzontali ed inclinati rettilinei (in quanto i trocoidi intermedi dei tratti rettilinei sono tangenti a circonferenze di raggio conosciuto) con il trocoide secondario. Il raccordo sul fondo del dente comprenderà un tratto di trocoide secondario fino all intersezione del trocoide secondario con il profilo teorico dell evolvente. Nella figura 6 si riporta la generazione del piede di un dente teorico per una ruota di modulo m=1 mm, angolo alfa =20, senza spostamento del profilo e dentiera con raccordo 0,2 mm e 0,05 mm (quest ultima speculativa). Si nota che: diminuendo il raggio di raccordo il trocoide primario del punto limite P 2se tende a sovrapporsi al trocoide secondario del raccordo. Il diametro limite dell evolvente è comunque sempre dato dall intersezione del trocoide secondario con l evolvente teorico. I trocoidi primari tracciati dai punti P 2pr P 2se nel caso di raccordo risultano sempre essere asportati dal trocoide secondario e quindi non prendono parte alla definizione del raccordo di fondo. Situazione differente si avrebbe nel caso di utensile con protuberanza [2,11] in cui i trocoidi limite primari e quelli secondari danno luogo a geometrie ancora più complesse [9]. Per i punti sotto P 5 (parte della dentiera che forma l addendum del dente) valgono delle regole analoghe ma sono meno importanti poiché la dentiera sul piede non è mai raccordata in modo evidente come in testa e, quindi, considerando il profilo ad evolvente teorico con uno spigolo di testa, non si commettono approssimazioni evidenti, soprattutto non ci sono approssimazioni dal punto di vista della resistenza del dente.

Le eventuali altre modifiche come la spoglia di testa o di piede, che vengono eventualmente applicate tramite delle mole di forma successivamente dopo il taglio con la dentiera, non sono contemplate allo stato attuale del software. Traiettorie trocoide secondario e P 2se per raccordo 0,2 mm Generazione in tratti orizzontali Traiettorie trocoide secondario e P 2se per raccordo 0,05 mm Figura 6 generazione del dente, esempio di creazione del dente con dentiera con raccordo di testa di valori differenti, modulo unitario Per ricavare e disegnare la forma finale del dente quindi devono essere trovate le intersezioni fra equazioni trascendenti trigonometriche, circonferenze e rette [12]. In particolare per il solutore non lineare che è stato implementato all interno della piattaforma di progettazione devono essere scelte in modo coerente le soluzioni individuate per le varie intersezioni. Infatti anche nella costruzione dell evolvente (le equazioni non vengono riportate per brevità), se si prendono gli angoli di rotazione positivi o negativi (concordemente a quanto visto per i valori del parametro u per i trocoidi) si ottengono soluzioni che disegnano rispettivamente fianchi destri o sinistri della ruota a partire da uno stesso punto della circonferenza di base. Il diagramma di flusso del solutore sviluppato e dei moduli necessari per il suo funzionamento vengono riportati in figura 7. Figura 7 parti principali del modulo di disegno della piattaforma Pygear UniPG

Il solutore-gestore implementato è veramente molto efficiente e si basa sul solutore di equazioni non lineari richiamabile con la funzione fsolve del pacchetto scipy.optimize.minipack del Python. In tutte le prove effettuate il calcolo ed il successivo disegno della soluzione è pressoché istantaneo. Nella figura 8 a sinistra si riporta la schermata dell interfaccia utente (GUI) sviluppata con la descrizione dei comandi principali utilizzabili dal progettista, a destra in alto si riporta l ingranamento di due ingranaggi speculativi long addendum di modulo m=2 mm, rispettivamente con 6 e 30 denti, addendum 1,2 m e dedendum 1,4 m senza spostamento dei profili (interasse nominale 35 mm). A destra i basso vengono disegnate le stesse ruote fatte ingranare ad un interasse modificato di 37 mm, il profilo della ruota con 6 denti è spostato x 1 =,2 m e ribassato k 1 =,3 m, la ruota 2 viene spostata x 2 =0,348 mm e ribassata k 2 = 0,047 m per premetterne l ingranamento al giusto interasse e mantenerne il gioco di fondo. Questi esempi, come detto, sono presentati soltanto a scopo dimostrativo per presentare l estrema flessibilità e stabilità del modulo grafico. Annotazioni e disegno dentiera Zoom, traslazione e messaggi di sistema Parte/i della ruota/a da disegnare Figura 8 GUI del modulo di disegno Senza soffermarsi ulteriormente nella descrizione di questo modulo si vuole far notare come il progettista, tramite i semplici comandi riportati nella GUI può ad esempio: visualizzare il taglio degli ingranaggi (fig. 5 e 6), congelare delle soluzioni di primo tentativo e disegnarne sopra differenti, rappresentare/nascondere graficamente tutti i parametri e le legende, ingrandire zone particolari del disegno, (si veda la breve descrizione in figura 8 sopra). E inoltre possibile esportare le ruote disegnate in uno sketch 2D di un noto CAD commerciale per includere i risultati nei disegni tecnici 3D di officina effettuando una semplice estrusione per giungere al profilo finale. CONCLUSIONI La presente ricerca ha riguardato l implementazione teorica e lo sviluppo di una piattaforma software per la progettazione e verifica di ingranaggi basato un ambiente integrato di programmazione open source. Secondo lo scrivente, lo stato attuale del pacchetto Open Source denominato Python (x,y), integrato con l interfaccia Qt permette di sviluppare piattaforme di progettazione anche complesse e dotate di solutori non lineari ed interfaccia grafica avanzata.

La documentazione presente in rete in lingua inglese permette inoltre di sopperire alla eventuale mancanza di guide utente omnicomprensive che rappresentano di solito il tallone d achille dell Open Source. La programmazione ad oggetti e l estrema facilità di integrazione nel Python di routine scritte in altri linguaggi (C++, Visual Basic, ), permette il rapido sviluppo e diffusione dei risultati senza alcun costo di gestione delle licenze o necessità di acquisto di particolari compilatori. La portabilità delle piattaforme di sviluppo sviluppate su sistemi operativi differenti è altresì assicurata. BIBLIOGRAFIA [1] http://code.google.com/p/pythonxy/ [2] M. Summerfield, Rapid GUI Programming with Python and Qt, Prentice Hall, 2007, ISBN-13: 978-0-13-235418-9 [3] G. Niemann, H. Winter, Maschinenelemente - Band 2, Springer-Verlag, Berlin, Germany, 2003. [4] S.Baglioni e L. Landi, Progettazione di ingranaggi in ambiente integrato open source: ottimizzazione cinematica e verifiche secondo la normativa ISO, 41 convegno nazionale AIAS, Vicenza, 5-8 settembre 2012. [5] G. Castellani, RHF & IPAR/IDIS - Manuale d uso, Modena, 2002. [6] KISSsoft AG, KISSsoft calculation program for machine design, 2010 Hombrechtikon, Switzerland. [7] ISO 6336 5, Calculation of load capacity of spur gear and helical gears. Part 5:Strength and quality of materials,2003. [8] G. Ruggeri, P. Righettini, Ruote dentate con spostamento del profilo, McGraw-Hill, Milano, 2003. [9] Xiaogen Su, D. R. Houser, Characteristic of trochoids and their application to determining gear teeth fillet shapes, Machanism and Machine Theory 35(2000), pp 291-304, Pergamon [10] T.W. Khiralla, On the geometry of external involute gears, 1976 [11] G. Henriot, Traité théorique et pratique des engranages, Vol. 1 and 2, Dunod, 1972. [12] M. Guiggiani, Generazione per Inviluppo di Ruote Dentate ad Evolvente, SEU, Pisa, 1996.