Vítejte !   Přihlášení | Registrace
Hlavní menu
CATIA fórum.cz
Novinky
Seriál CATIA
Obecně o CAD
Novinky ze světa DS
Makra pro CATIA V5
Diskuse
Základy Catia
Ke stažení
Doporučujeme
Pracovní příležitosti
Reklama a kampaně
O fóru
Nápověda

Generické modely pružin

Publikováno: 14. února 2026 | Zobrazeno: 238x
V tomto příspěvku si ukážeme další efektivní využití možností modulu KWA (Knowledge Advisor) při vytváření generických modelů základních typů pružin. "Generický model" si můžeme představit jako běžný parametrický model, který má určité specifické parametry (u pružiny např. průměr, délka, průměr drátu,..) pro snadnou dohledatelnost vytažené přímo do složky Parameters ve stromu (vhodně pojmenované), a dále je v něm vytvořena modelová "logika", která řídí celou topologii modelu. Změnou hodnot těchto řídících parametrů je (v ideálním případě) možné vytvořit všechny myslitelné variace daného modelu bez nutnosti editovat samotné geometrické features.

Generický model je v Catia použitý např. v základním katalogu normalizovaných součástí (šrouby, matice, atd), kdy se výsledný model vytvoří na základě parametrů předaných z Design table. Lze ale samozřejmě vytvořit i mnohem složitější a sofistikovnější modely.


Proč pružiny?

Pružina je typickým kandidátem na generický model. Její základní tvar i variace v rámci konkrétního typu lze poměrně lehce popsat parametry a neobsahuje žádné obecné tvary, který by parametrizovat nešly vůbec nebo jen omezeně. Na druhou stranu je pro definici všech možných variant pružiny potřeba mít parametrů více a zároveň by se měla aplikovat přiměřená automatická korekce zadávaných hodnot, aby model "přežil" update i při nesprávné či nesmyslné kombinaci hodnot parametrů.

K problematice jsem se dostal při snaze podpořit konstruktéry a usnadnit jim práci při modelování, když mě o to jednoho dne sami požádali. V tu dobu již několik variant modelů pružin existovalo, každý v různém stadiu "dokonalosti" s větším či menším počtem omezení. U tlačné pružiny nebyly závěrné závity (nebo nešly snadno editovat), zkrutné pružiny měly omezené možnosti vytvoření složitějších ramének, a model tažné pružiny byl prakticky jen základ, který se vždy musel celý přemodelovat.

Výzva byla vyřčena a cíl jasný - vytvořit generické model zkrutné, tažné a tlačné pružiny, které budou splňovat:
  • možnost zobrazení v modelu i na výkresu současně ve třech různých stavech - výrobní, při namontování, a při max zatížení (u všech typů)
  • orientace L/P (po / proti směru hodinových ručiček, u všech typů)
  • délka očka (tažná)
  • mezera mezi koncem očka a závity (tažná)
  • vyosení oček (tažná)
  • jednoduché vytvoření složitých ramínek (zkrutná)
  • kontrola sevření na ose/čepu (zkrutná)
  • pozice vůči ose/čepu (zkrutná)
  • závěrné závity (tlačná)
  • volných / zbroušené konce (tlačná)
  • kuželový tvar (tlačná)


Definice parametrů

U základních parametrů to je jednoduché. Zajímá nás bude počet závitů N, průměr pružiny dx (vnitřní, střední, vnější, někdy i oba pro lepší možnost zadávání), průměr drátu d a celková délka L. To by pro úplně základní model tlačné pružiny stačilo, resp. by se extra generický model ani nevyplatilo vytvářet, protože jediné dvě editovatelné features by byly parametry šroubovice (Helix) a průměr u Sweepu (Center curve and radius).

Pokud chceme mít v modelu více stavů (jako samostatná Body), potřebujeme další dva parametry pro základní a maximální zatížení (buď jako délky L1 a L2 nebo úhly sevření ramének T1 a T2), a jeden další parametr State, které ty stavy bude "přepínat" (zobrazovat). Ke všem typům se ještě musí přidat parametr Orientation pro orientaci závitu (pak se dá snadno použít Symmetry podle jedné roviny procházející osou)

Tažná pružina
U tlačné pružiny potřebujeme dále délku oček LHs a LHe (LHs na začátku, LHe na konci), velikost mezery mezi koncem očka a závity Gs a Ge, vyosení očka od osy Os a Oe, a poloměr napojení závirů na očko Rc. Schéma si můžete prohlédnout na obrázku.

Schéma parametrů tažné pružiny
Parametry tažné pružiny

















Aby byl model, jak se říká, co nejvíce "blbuvzdorný", muselo se kromě velkého počtu formulí použít i několik Rules a Reactions. Bylo třeba automaticky korigovat délku oček LHx, mezeru mezi očkem a závity Gx a délky L1 a L2, pokud se měnila celková délka (hlavně když se zmenšovala), jinak by model praktiky pokaždé kolaboval a musely by se manuálně měnit i LHx a Gx, než by se dosáhlo updatovatelné konfigurace.

Většinu hodnot lze potom zadávat nezávisle a bez obav, že by došlo k nějaké chybě při update. Když konstruktér zadá větší hodnotu Gx nebo naopak menší LHx než by geometrie dovolila, hodnoty se automaticky upraví na největší/nejmenší možné.

Není to samozřejmě ani tak stoprocentní, při opravdu evidentně nesmyslných kombinacích délky/průměru/počtu závitů model zkolabuje, ale to v praxi téměř nenastává. Občas zlobí příliš velké Rc a musí se zmenšit. Model potom sice úplně neodpovídá reálnému tvaru pružiny, ale od toho je výkresu fake kóta :-).

Poznánka: Někdy to "zabije" sama Catia - např. při. počtu závitů xx,75 se u oblouku očka otočí normála a update padne, ale xx,751 nebo xx,749 už je opět OK.

Na výsledek se můžete podívat na obrázcích níže. Vlevo je default tvar (tak jak se otevře šablona), uprostřed je více závitů a jiný průměr drátu, vpravo dále prodloužená a vyosená očka, každé s jinou mezerou očka k závitům.

Základní tvar
Potočená očka
Dlouhá a vyosená očka















Pokud chceme zobrazit jiný než základní stav (Delivery), stačí přepnout parametr State - zde je na výběr L1, L2 a All. Na obrázku je přepnuto na All, takže můžeme vidět najednou všechny stavy. ("kovová" = Delivery, žlutá = L1, červená = L2). Při použití v sestavě se model většinou nastaví na L1 a pružina pak "sedí" zaháknutá do dílů, se kterými pracuje.
Na výkres lze použít kterýkoliv ze stavů nezávisle na aktuálním zobrazení.

Stavy Delivery, L1 a L2



Zkrutná pružina
Zkrutná pružina na první pohled vypadá jednodušeji než tažná, ale s ohledem na požadavky konstruktérů tu bylo také poměrně dost matematiky a pomocné geometrie. Chtěli totiž zohlednit zmenšování průměru při zkroucení a hlídat "zakousnutí" do čepu (průměr čepu se zadá a kontroluje se při změně stavu), a dále požadovali zvolit možnost, zda bude osa pružiny vždy v ose čepu nebo se o něj opře vnitřní stranou (což je reálný stav, pokud se neopírá o bok a nebo není jinak fixovaná v ramínkách).

Pružina opřená o čep


Také byl požadavek na možnost zadávat nezávisle vnitřní nebo střední průměr tak, aby se druhá hodnota vždy přepočetla.

Jsou zde tedy zapotřebí jiné specifické parametry než u tažné pružiny - pro mezeru mezi závity a, a pro úhly natočení ramínka T1 a T2 při pracovním a maximálním zkroucení. Vše ostatní opět obstarají Formulas, Rules a Reactions. Změna orientace stoupání se řeší stejně jako u tažné pružiny - použije se symetrie.

Na obrázcích níže je zobrazen základní tvar, poté již s modifikovaným ramínkem a úplně vpravo pak všechny stavy. Součástí modelu je i osa/čep pro vizuální kontrolu kolize.

Základní tvar
Komplexní ramínko
Ramínko ve všech stavech













Ramínka lze modifikovat na obou stranách velmi jednoduše. Na obou koncích šroubovice je asociativní AxisSystem, který se pohybuje s Helix. Pak stačí podle něj namodelovat jakoukoliv prostorovou, tangentně spojitou křivku pro základní stav (Delivery), tuto křivku v existující operaci Join (kde je na začátku jen jedna Line pro default rovné ramínko) vyměnit, a model se opět sám dopočte. Takto modifikované ramínko se automaticky aplikuje i do ostatních stavů (transformace Axis to axis, kdy se křivka ramínka posouvá podle referenčních AxisSystems pro další dva stavy) - velice efektivní :-)


Tlačná pružina
U tlačné pružiny jsou proti základu navíc je dva parametry - ploché konce FlatEnds a úhel zkosení (kuželu) TaperAngle. Na začátku jsem si říkal, že to bude "brnkačka", ale nakonec mě potrápila snad nejvíc ze všech. Požadavek totiž byl mít v ní závěrné závity, u kterých jsem mírně narazil. Helix sice u stoupání šroubovice má možnost Law, ale ta bohužel nenabízí to samé co u jiných features. Stoupání (pitch) tak nelze řídit pomocí externě definované závislosti, ale pouze v rozmezí dvou různých hodnot. Dá se tak vytvořit pouze závěrná část pružiny, nikoliv celá. Pro celou pružinu tedy potřebujeme vytvořit tři samostatné šroubovice a ještě je nějak mezi sebou tangentně napojit.

Tady začíná přituhovat, a to ještě nejsme u kuželu a stlačování pro stavy L1 a L2 :-)

Konstrukce komplexní šroubovice


Aby mi Spline pro napojení šroubovic neutíkaly z ideálního tvaru, musel jsem si pomoci vytvořením ploch (Revolve podle osy s přímkovým profilem, tj. válec/kužel podle úhlu zkosení), a tyto plochy (pro každý stav) použít jako Support pro Spline, kdy ale na té samé ploše samozřejmě musely ležet i koncové body Helixů...
V jednu chvíli už skoro vzteky letěla myš z okna, ale nakonec se podařilo.

Na obrázcích jsou všechny možné tvary, které můžeme z modelu vytvořit. Kombinace kužel / zbroušené konce je samozřejmě nezávislá.

Základní tvar
Ploché konce
Kuželový tvar
















Integrace do Catia a vytvoření pružiny

Dalším krokem bylo už jen vhodně zaintegrovat tyto tři generické modely do našeho firemního prostředí a zpřístupnit v Catia. K tomu posloužila aplikace MacrosStarter (plovoucí toolbar se všemi makry která máme k dispozici) a tři jednoduché CATScripty, které zajistily otevření konkrétního modelu. A poslední, neméně důležitým úkolem bylo vytvoření manuálu (který se stejně většina konstruktérů neobtěžuje číst :-)) a řádná osvěta.

Integrace do Catia


Pokud má konstruktér k dispozici vypočtené všechny potřebné parametry, je vytvoření přesného modelu pružiny otázkou několika málo minut a hlavně prakticky bez nutnosti modelování (jen u zkrutné se někdy musí vytvořit specifické ramínko). V modelu jsou už také vytvořené všechny stavy (Body) pro výkres, tj. ani příprava pro tvorbu výkresu není nutná.

Jak vytvořit pohledy pro různé stavy jsem v článku Triky pro výkresy - výrobní a montážní stav dílu


Závěr

Určitě vás zajímá, jaké hlavní přínosy nám generické poskytnou. Jsou to především:
  • jednotné modely > lze snadno distribuovat a aktualizovat
  • přehledná struktura, se kterou každý konstruktér dokáže pracovat, aniž by model zničil
  • odpadá nutnost modelování > úspora času
  • eliminace "lidové tvořivosti", kdy jsou modely ve stylu "každý pes, jiná ves"


Pokud máte ve firmě osobu, který se tvorbou podobných standardů zabývá, nebo jste jí vy sami, můžete se inspirovat a vytvořit si něco podobného. Potřebujete poradit, jak na to? Neváhejte a zeptejte se :-)



Autor článku
Jan Cinert - CATIA fórum
+420 734 762 843
honza.cinert@gmail.com




Poznámka: Modely pružin se ve firmě (WITTE Automotive) velmi rychle osvědčily, zejména díky tomu, že pružina (často i více) se vyskytuje ve většině sestav, tím pádem je úspora času při modelování značná. Investice do vytvoření generických modelů se tak již mnohokrát vrátila.