Desmo inside! đŸ„ˆ

Die Sache mit der desmodromischen Ventilsteuerung sollte eigentlich jedem Ducati-Fahrer wenigstens grob gelÀufig sein, war sie doch bis vor Kurzem Markenzeichen und Alleinstellungsmerkmal einer jeden Ducati.

Desmodromische Ventilsteuerung, Screenshot aus Interaktiver 3D Animation.

Update 09.11.2022: nachdem heute der erste Beitrag auf diesem Blog die Schwelle von 5’000 views erreicht und ĂŒberschritten hat und ich aus diesem Anlass eine Goldmedaille vergeben habe, soll auch der vorliegende Beitrag als aktuell Zweitplatzierter angemessen gewĂŒrdigt werden:. Vom Autor gibt es auch an dieser Stelle meinen Dank an die Leser und eine Gratulation an mich selbst, verbunden mit der Silbermedaille im Titel. 👍

Aber eben: «grob gelĂ€ufig» ist nicht das Gleiche wie «grĂŒndlich verstanden».

FĂŒr die Ungeduldigen: >> hier << geht’s direkt zur Animation.

Jedenfalls in dem Umfang, der erforderlich ist, den «Großen Desmo-Service», eine relativ teure Wartung eines Ducati-Motors mit Ventilspiel-Einstellung und Zahnriemenwechsel in Eigenregie selbst durchfĂŒhren zu können. Ich wollte das jedenfalls vorher buchstĂ€blich be-griffen haben, bevor ich ansonsten wegen eines evtl. Fehlers fĂŒr möglicherweise mehrere Wochen meine Monster 1200S ausser Gefecht gesetzt hĂ€tte, bei dem im kommenden Jahr anstehenden ersten selbst-durchgefĂŒhrten «Großen Desmo-Service».

Ziel des vorliegenden Blog-Beitrags ist es, zunĂ€chst die beteiligten Bauteile vorzustellen, ihre Funktion zu beschreiben sowie schließlich in einer interaktiv allseitig dreh- und zoombaren Echtzeit 3D-Animation (nicht vor-gerendert) zu zeigen. Damit vorab das Konzept der Desmodromik klar wird, sowie die Anteile der jeweiligen Bauteile an der Realisierung dieses Konzepts.

Fragen zu Zerlegung des Zylinderkopfs, Einstellung des Ventilspiels, Zusammenbau, benötigten (Spezial-) Werkzeugen etc. werde ich in einem Folgeartikel behandeln.


Vor diesem Hintergrund traf es sich gut, daß ich vor etwa einem Jahr ĂŒber eine Anzeige auf Ebay-Kleinanzeigen stolperte:

Zylinderkopf (liegend), Multistrada 2010, defekt, €99,-

Der Defekt bestand in einem Riss im Kopf, in der Folge in einem anhaltenden Verlust von KĂŒhlwasser, welches durch den Brennraum abhanden kam. Anscheinend nicht ungewöhnlich in dieser Baureihe. Ansonsten aber war der Kopf lt. Beschreibung mechanisch intakt und komplett, mit beiden Nockenwellen, allen Kipp- und Schlepphebeln nebst Hebelwellen, allen Ventilen mit allen Shims etc.. Hab ich natĂŒrlich gleich zugeschlagen und zunĂ€chst in meinen Vorrat aufgenommen.

Den winterlichen StraßenverhĂ€ltnissen und den unter dem Vorwand von Corona verhĂ€ngten «Maßnahmen» sei Dank, hatte ich kĂŒrzlich viel Zeit, mich diesem Projekt endlich einmal durchgehend zu widmen. Ich habe den Kopf zerlegt, jedenfalls alle beweglichen Bauteile zur Ansteuerung eines (1) Ventils ausgebaut (fĂŒr alle ĂŒbrigen Ventile funktioniert das genau gleich):

Ducati Desmo Testastretta 1200 Evoluzione Ventiltrieb
Bewegte Bauteile fĂŒr die Ansteuerung eines (1) Einlassventils an einem Ducati 1200 Testastretta Evoluzione Motor (hier: aus Multistrada 2010, liegender Zylinder)

Im Anschluss daran habe ich alle beteiligten Bauteile im Rahmen meiner Amateur-Möglichkeiten akribisch vermessen, mittels digitaler Schieblehre (Ablesegenauigkeit: 0.01 mm), Messuhr (ebenfalls 0.01 mm Ablesegenauigkeit.

FĂŒr die Positionen der Schlepp-/Kipphebelachsen relativ zum gewĂ€hlten Koordinatenursprung in der Drehachse der Einlass-Nockenwelle, sowie die Neigungswinkel der Ventile konnte ich auf eine CAD-Zeichnung des Testastretta Evoluzione Kopfs zurĂŒckgreifen, die ich im Internet aufgestöbert hatte:

CAD Zeichnung Schnitt eines Ducati Testastretta Evoluzione Zylinderkopfs
Schnittzeichnung des Ducati Testastretta Evoluzione Kopfs; Quelle: www.desmo-net.com

Die Zeichnung habe ich zu diesem Zweck passend skaliert ausgedruckt und mit dem Geodreieck ausgemessen.

Die aufgewandte Sorgfalt bei der Vermessung diente dem Zweck, spĂ€ter anhand dieser Informationen eine realistische und aussagekrĂ€ftige Computeranimation zu erstellen, bei der man das Zusammenspiel aller beteiligten Bauteile aus allen Richtungen «in Aktion» und quasi-beliebiger Verlangsamung betrachten kann.

Nockenwelle

Messung von Durchmessern und LĂ€ngen der einzelnen Wellenabschnitte mittels digitaler Schieblehre. Fasen, sowie Radien und Breiten von Freistichen an QuerschnittsĂŒbergĂ€ngen nach Augenmaß geschĂ€tzt.

FĂŒr die Vermessung der Nocken habe ich die Nockenwellen mit ihrem linken Ende in das Futter meiner Drehbank eingespannt. FĂŒr die Abtastung in Schritten von 5° habe ich mir einen kleinen Adapter gefertigt, den ich auf das Zahnriemen-seitige M17 x 1.0 mm Feingewinde der Nockenwelle aufgeschraubt, und auf dessen PlanflĂ€che ich mittels Klebestrips eine 360° Winkelscheibe aus dem Architekturbedarf geklebt hatte.

Dann habe ich das Dreibackenfutter von Hand durchgedreht, und alle 5° eine Ablesung an Winkelmessscheibe und Messuhr vorgenommen und die jeweiligen Werte notiert. Hier die resultierenden Nockenformen, fĂŒr die beiden Nockenwellen des liegenden Zylinders:

Ducati Desmo Testastretta 1200 Evoluzione Nockenformen
Hinweis: Blick von Zahnriemenseite, Null-Grad Lage links, Winkelskala im Uhrzeigersinn, entsprechend Drehrichtung der Nockenwellen im Gegenuhrzeigersinn!

Es fĂ€llt bereits auf, daß die beiden Nockenwellen fĂŒr Einlass und Auslass voneinander verschieden und nicht untereinander austauschbar sind. Damit hier auch ohne Vergleich keinerlei IrrtĂŒmer aufkommen können, ist jede Nockenwelle eindeutig gekennzeichnet:

Nockenwellen Ducati Testastretta Evoluzione eindeutig gekennzeichnet

Die Kennzeichnung der Nockenwellen verwendet folgenden SchlĂŒssel:

OOrizzontaleliegender Zylinder
VVerticalestehender Zylinder
AAspirazioneEinlass
SScaricoAuslass
SchlĂŒssel der Nockenwellenkennzeichnung

Die «10Q1» am Ende des Codes bezeichnet offensichtlich den Produktionszeitraum. Der VerkĂ€ufer des untersuchten Zylinderkopfs sprach nĂ€mlich von seiner 2010er Multistrada.

Schlepp- bzw. Kipphebel

Zur Namensgebung:

  • beim Öffner-Hebel handelt es sich technisch um einen Schlepphebel, weil sich der Antrieb (Nocken-seitige Kontaktbahn) und der Abtrieb (Ventil-seitige Kontaktbahn) auf der gleichen Seite der Hebel-Drehachse befinden.
  • beim Schliesser-Hebel handelt es sich technisch um einen echten Kipphebel, weil sich der Antrieb (Nocken-seitige Kontaktbahn) und der Abtrieb (Ventil-seitige Kontaktbahn) auf gegenĂŒberliegenden Seiten der Hebel-Drehachse befinden.

So sehen die beiden Hebel in Natura aus:

Sehr schön zu sehen sind jeweils die Anlassfarben, die zweifelsfrei anzeigen, das die Stahlguss-Rohlinge im Anschluss an ihre mechanische Bearbeitung (Bohren, FrÀsen, Schleifen, LÀppen) noch einer WÀrmebehandlung unterzogen wurden, um z.B. die Kontaktbahnen zu hÀrten.

Im Hinblick auf die angestrebte Modellierung dieser Bauteile in meinem Visualisierungsprogramm war die unregelmĂ€ĂŸige Formgebung der o.a. Hebel eine kleine Herausforderung fĂŒr mich. Denn standardmĂ€ĂŸig werden fĂŒr technische Visualisierungen Grundkörper unterstĂŒtzt, wie Kugel, Kegel, Torus, Zylinder, Quader etc., sowie Bool’sche Operationen (Addition, Subtraktion, Union, Schnitt) zwischen derartigen Grundkörpern. Zudem noch Extrusionskörper und Rotationskörper, aber all dies kam hier nicht in Frage.

Nach scharfem Hinsehen habe ich die eigentlich entscheidenden OberflĂ€chen identifiziert, welche fĂŒr die Funktion unbedingt erforderlich sind: das sind nĂ€mlich die Teil-OberflĂ€chen, die in unmittelbarem Kontakt zu anderen Bauteilen stehen und KrĂ€fte ĂŒbertragen:

Diese KontaktflĂ€chen sind zum GlĂŒck Kreisbahnen, oder Abschnitte davon:

Ducati Desmo Testastretta Evoluzione Kinematisches Ersatzschema
Kinematische Äquivalenz: Ersatz der Kontaktbahnen durch Rollen passender Durchmesser und Position

FĂŒr die kinematische Funktion dieser Getriebekette wĂŒrde sich nichts Ă€ndern, wenn man die originalen Schlepp- bzw. Kipphebel durch entsprechende Rollen-Schlepp- bzw. -Kipphebel mit Rollenzentrum und Durchmesser der dĂŒnn ausgezogenen Vollkreise ersetzen wĂŒrde. Und natĂŒrlich können derartige Rollen theoretisch beidseitig (also Nocken- und Ventilseitig) eingesetzt werden. Das wird in einem Fortsetzungsbeitrag hier auf diesem Blog noch eine Rolle spielen.

FĂŒr die weiter unten vorgestellte Animation habe ich mich auf die prĂ€zise Modellierung der Kontakt-Konturen beschrĂ€nkt, und die Querschnitte dazwischen ohne Verlust an Genauigkeit der Animation eher grob modelliert.

Ventile, Shims und C-Ringe

Das Ventil ist ebenfalls in GĂ€nze ein höchst-belastetes High-Tech Bauteil. FĂŒr die desmodromische Funktion und die vorliegende Animation ist insbesondere dessen oberes Ende zu betrachten:

Beide Shims tragen am Zylinderumfang eingeprĂ€gt, bzw. geĂ€tzt/gelasert die Bezeichnung ihrer nominellen Dicke (rechtes Bild). Auch da komme ich in einem Folgebeitrag drauf zurĂŒck.

Zum VerstĂ€ndnis des oben rechts abgebildeten Shim-Pakets aus Öffner-Shim (oben) und Schliesser-Shim (unten) muss man dessen»Innere Werte» betrachten:

Ganz linksdas nackte Ende des Ventilschafts
2. von linksSchliesser-Shim (blau) auf den Ventilschaft aufgesteckt
3. von linksC-Ringe (rot) in die Rille des Ventilschafts eingelegt
4. von linksSchliesser-Shim bis zum Anschlag an den C-Ringen
hochgeschoben;
C-Ringe werden dadurch in ihrer Position fixiert.
5. von linksÖffner-Shim (grĂŒn) von oben aufgesteckt
Reihenfolge bei der Montage der Shims auf dem Ventilschaft

Die Ventil-Baugruppe bestehend aus Ventil und Shims wird in ihrer VentilfĂŒhrung radial fixiert und axial ĂŒber Öffner-Schlepphebel und Schliesser-Kipphebel zwischen der geöffneten und geschlossenen Position hin und her bewegt:

Ventile werden zwischen Öffner-Schlepphebel und gegabeltem Schliesser-Kipphebel eng gefĂŒhrt; Schlepp- und Kipphebelwellen wg. Übersichtlichkeit ausgeblendet;

Dabei drĂŒckt der Öffner-Schlepphebel (hellgrĂŒn) wĂ€hrend der Öffnungsphase des Ventils von oben auf den Öffner-Shim (grĂŒn-transparent), welcher seine Kraft direkt auf den Kopf des Ventilschafts ĂŒbertrĂ€gt.

Zum Schliessen des Ventils drĂŒckt der gegabelte Schliesser-Kipphebel (hellblau) von unten gegen den Schliesser-Shim (blau-transparent), welcher die Kraft ĂŒber die eingelegten C-Ringe auf den Ventilschaft ĂŒbertrĂ€gt und so eine Schliessung des Ventils bewirkt.

Konstruktiv wurde dabei darauf geachtet, daß sich die beteiligten Bauteile niemals gegeneinander verspannen. Es muss in jeder Winkelstellung der Nockenwelle, bei jeder Drehzahl und bei jeder Motortemperatur ein minimales Spiel im Antriebsstrang eines jeden Ventils vorhanden bleiben.

Hilfsfeder

Die Beschreibung der am desmodromischen Ventiltrieb beteiligten Bauteile wĂ€re nicht vollstĂ€ndig, ohne die «Hilfsfeder» zu berĂŒcksichtigen. Damit ein Ventil dicht schliesst, sorgt je Ventil eine Hilfsfeder in der Ruhelage fĂŒr ein Anpressen des Ventiltellers in seinen Ventilsitz. Die Hilfsfeder zieht den Schliesser-Kipphebel permanent vom Schliessnocken weg, wodurch der Schließer-Kipphebel permanent auf den Schliesser-Shim Druck ausĂŒbt und das Ventil in die «geschlossen»-Stellung drĂŒckt. Der in der Animation freie, nach unten ragende Schenkel der Drehfeder stĂŒtzt sich in der RealitĂ€t gegen eine Nase im Zylinderkopf ab.

So sieht die Hilfsfeder aus, und es gibt sie in einer «rechten» und (spiegelbildlich) «linken» AusfĂŒhrung. Die sind also nicht beliebig untereinander austauschbar:

Hilfsfeder der Schliesser-Kipphebel am Testastretta Motor

«Hilfsfeder» klingt so unscheinbar, dabei ist sie ĂŒberraschend krĂ€ftig dimensioniert:

Mit einem

  • Drahtdurchmesser von 2.8 mm
  • mittlerer Windungsdurchmesser: 19.3 mm
  • vorgespannt: 5 Windungen

komme ich auf eine Dreh-Federrate von ca. 35 Nmm/°. Bei geschlossenem Ventil ist die Feder um rund 60° vorgespannt, und arbeitet im Betrieb um weitere bis zu 20°, was einem Moment am Schliesser-Kipphebel im Bereich von ca. 2.15 bis 2.85 Nm entspricht. Daraus folgt am Wirk-Radius von 28 mm eine Schliesskraft bei geschlossenem Ventil von rund 80 N, sowie bei geöffnetem Ventil eine auf rund 100 N ansteigende Widerstandskraft.

Dazu passend habe ich auf der Einlassseite (ohne Zahnriemen) ein Moment von 7 Nm gemessen, um die Nockenwelle ĂŒber den Punkt des grĂ¶ĂŸten Widerstands hinweg zu drehen.

So, mit diesem Wissen bewaffnet, kann man nun die gesamte Konstruktion richtig wĂŒrdigen. Hier geht’s zur interaktiv beeinflussbaren Echtzeit 3D-Animation des desmodromischen Ventiltriebs:

Zur Animation

  • Links-Klicken-und-Ziehen dreht die Animation (Betrachtung aus frei wĂ€hlbarer Richtung),
  • Rechts-Klicken-und-Ziehen verschiebt den Bildausschnitt (PAN)
  • ĂŒber das Mausrad kann man ein- und aus-zoomen.
  • Mittels der Funktionen im Bildschirm-MenĂŒ lassen sich Bauteile ein- oder ausblenden,
  • sowie die Animation in ihrer Geschwindigkeit beeinflussen.

Wer bis hierher durchgehalten hat, interessiert sich vermutlich auch fĂŒr die Fortsetzung des Themas. Stichworte: «the making of …», Reverse Engineering, VorwĂ€rtskinematik.

Zur Computergrafik und Performance

Update 15.10.2021

Die Animation ist immer noch gleich geblieben, allerdings habe ich einige verwendete OberflĂ€chen (Materialien) mithilfe von «dynamic cube reflection mapping» mit einer scheinbar hochglanzpolierten Chrom-OberflĂ€che versehen. Vielleicht habe ich den Effekt in meiner Begeisterung ein wenig großzĂŒgig aufgetragen, aber ich find’s ganz schick. 😎

Edle Mechanik verdient edle Materialien

Update 20.01.2021

Mit Version 2.02 hat sich nach aussen hin nichts verĂ€ndert, unter der «Verkleidung» habe ich aber weitere Code-und Datenoptimierung betrieben, mit dem Ziel und Ergebnis 😎 des verbesserten Load-Balancings zwischen CPU und GPU. Der komplette Kopf lĂ€uft nach Seitenaufruf nun auf meinem iPhone 5s mit 32 fps. Ich habe dies auf verschiedenen Ebenen erreicht:

In Cinema4d habe ich, soweit möglich, bei Bool’schen Operationen angehakt, daß das Ergebnis jeweils in einem (1) Objekt abgelegt wird, anstatt die beiden Teilnehmer der Operation zu behalten.

Dadurch wurde die innere Struktur des VRML2.0 Exports weniger komplex. Wenn man so will, entspricht dies einer Art Vor-Kompilierung auf Datenebene.

Im Viewer habe ich die aus einem VRML-Import resultierenden Einzel-Meshes in ein einziges ge-«merged». In der Summe der Maßnahmen konnte ich so die Anzahl von «calls» an die GPU von vorher 320 / Frame auf weniger als ein Viertel herunter bringen.

Update 11.01.2021

Nachdem ich die Entwicklung bisher als «proof-of-concept» betrieben hatte, um zu sehen ob ich die Animation auf Standard-Hardware flĂŒssig zum Laufen kriege, habe ich anschliessend noch Zeit investiert, den Code zu verschlanken und insgesamt effizienter zu gestalten, um Performance-Reserven zu haben fĂŒr den kompletten Testastretta Evoluzione Kopf, mit beiden Nockenwellen samt allen beweglichen Anbauteilen. Mein MacBook Air Ă€chzt, aber hĂ€lt die 60 fps. Das ist nun mit Version 2.0 vorlĂ€ufig abgeschlossen. 😎

Ich hatte sogar noch «Luft», Kipp- und Schlepphebel realitĂ€ts-nĂ€her zu modellieren. Die vollstĂ€ndige Szene umfasst nun rund 139’000 DreiecksflĂ€chen.

Update 04.01.2021

Ich habe Bauteile mit «einfacher» Geometrie als TubeBufferGeometry und als LatheBufferGeometry direkt in Three.js hart-kodiert. Komplizierter geformte Bauteile importiere ich nun als VRML2.0 Dateien, wodurch die gesamte Grafik nun kontinuierlich (Phong) schattiert ist. Die Anzahl der DreiecksflĂ€chen hat sich – bei verbesserter visueller Wirkung – auf rund 67’000 reduziert. (Heimliches Ziel ist es, auch noch die Auslass-Seite gleichzeitig mit anzuzeigen. FĂŒr eine flĂŒssige Animation mit 60 fps werde ich dann allerdings ein potenteres Notebook als mein MacBook Air benötigen.)

Ausserdem habe ich mir die kĂŒnstlerische Freiheit gegönnt, die beiden Shims semi-transparent darzustellen. 😎


Noch ein paar Bemerkungen zur Performance der vorgestellten Animation:

Die Liebe zum Detail hat einen Preis, der durch zunehmenden Berechnungsaufwand zu entrichten ist. Insgesamt umfasst das vollstĂ€ndige 3D-Modell des Desmodromischen Ventiltriebs im Modellierungsprogramm rund 185’000 Eckpunkte (vertices) und rund 170’000 DreiecksflĂ€chen (faces). Das verwendete Datenaustausch-Format (stl) zwischen meinem Modellierungsprogramm (Cinema4D) und dem fĂŒr diese Animation entwickelten Viewer kennt keinerlei logische ZusammenhĂ€nge zwischen benachbarten DreiecksflĂ€chen. Was zur Folge hat, daß gemeinsame Eckpunkte benachbarter DreiecksflĂ€chen mehrfach 3D-transformiert werden. Da steckt also noch gehöriges Optimierungspotenzial drin.

Auf meiner Entwicklungsmaschine, einem MacBook Air 13″ aus 2017, welche nicht im Ruf steht, eine Monster-Gaming-Maschine zu sein, werden in Grundstellung, unmittelbar nach Seitenaufruf, volle 60 frames pro Sekunde erreicht. Eine entsprechende Performance-Statistik wird oben links im Bildschirm angezeigt.

Trotzdem kommt der Rechner beim Einzoomen gehörig ins Schwitzen, wie man am anschwellenden LĂŒftergerĂ€usch unschwer erkennen kann. Dabei bricht auch die Framerate ein. UnabhĂ€ngig von der gewĂ€hlten Zoomtiefe werden zwar immer gleich viele Vertices 3D-transformiert, jedoch werden abhĂ€ngig von der Zoom-Tiefe unterschiedlich viele Pixel gezeichnet. Die Grafik-Hardware meines MacBook Air ist fĂŒr diese Animation offensichtlich durch ihre maximale Pixel-FĂŒllrate limitiert, nicht durch die 3D-Transformationsleistung.

Die Verringerung der Animationsgeschwindigkeit ĂŒber den «Speed»-Regler der GUI bringt keine Entlastung. Denn hierdurch wird lediglich das Winkelinkrement der Nockenwelle zwischen zwei aufeinander folgenden frames manipuliert, wĂ€hrend die Framerate und damit die Berechnungslast konstant bleiben.

Wer eine noch schwĂ€chere Hardware einsetzt, kann durch Ausblenden von Bauteilen die KomplexitĂ€t des Modells reduzieren. Besonders lohnend ist das Ausblenden der «Hilfsfeder», welche alleine fĂŒr ĂŒber je 60’000 vertices und faces verantwortlich ist. Bei Limitierung durch die FlĂ€chenfĂŒllrate der GPU hilft nur Aus-Zoomen, so daß nur eine kleinere BildschirmflĂ€che beschrieben werden muss.

Unerwartet: auf meinem sieben Jahre alten iPhone 5s werden in Grundstellung ebenfalls noch beachtliche ca. 34 fps erreicht, bei allerdings sehr viel weniger sichtbaren Pixeln.

Ich ĂŒbernehme ĂŒbrigens keinerlei Haftung fĂŒr evtl. abrauchende GPUs! 😉

2 Gedanken zu „Desmo inside! đŸ„ˆ“

  1. Ich bin total geflasht!!
    Nicht nur von der Animation an sich und der dazugehörigen ErklĂ€rung. Sondern dass sich jemand die MĂŒhe macht, das alles zu vermessen und zu erstellen! Muss Myriaden von Stunden gekostet haben. Neben der Energie und der Kenntnisse hĂ€tte ich weder Zeit noch Drive so etwas zu machen! Chapeau!

    1. Frank, freut mich immens, daß ich Dich derart begeistern konnte 😎
      Ja, in diese Animation sind schon ein paar Stunden Lebenszeit reingeflossen. Aber es hat sich fĂŒr mich nicht nach immens viel Arbeit angefĂŒhlt, da hier viele bereits vorhandene Erfahrungen aus meinen diversen Hobbies zusammengeflossen sind: Ducati, Computergrafik, mechanische Fertigung und natĂŒrlich mein Beruf, den ich wirklich als Berufung erlebe. Letzterer hat das strukturierte Vorgehen und die nötige Ausdauer beigesteuert.

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert