• Dieses Forum ist die maschinengenerierte Übersetzung von www.cad3d.it/forum1 - der italienischen Design-Community. Einige Begriffe sind nicht korrekt übersetzt.

Subroutine in Adams

  • Ersteller Ersteller Dani84
  • Erstellt am Erstellt am

Dani84

Guest
hallo alle,
ich bin ingenieurstudent und ich benutze adams, um schlagmuster zwischen zwei festen körpern zu schaffen.
was ich tun möchte, ist, verschiedene arten von kontakten durch ein unterprogramm einzufügen, aber ich kann nicht herauskommen: wie setzen sie in ein modell der kraft von mir erstellt?
danke für die aufmerksamkeit, grüße

 
hallo, dani84,

können sie benutzer geschriebene unterprogramme wie vfosub (auch vtosub möglicherweise) verwenden?

ich verstehe nicht, was sie speziell tun wollen, aber in der regel können sie kräfte definieren (kontakte erzeugen kräfte), die ihr unterprogramm berechnet, wie am besten sie denken.

hi.

 
ersten dank für die antwort.
der vfosub ich habe es bereits benutzt, der nachteil ist, dass ich die erzeugte kraft nicht kontrollieren kann: die stärke zwischen den beiden körpern sollte zum zeitpunkt der ablösung aufhören, aber ich weiß nicht, wie man diese bedingung setzt (ich sollte ein "wenn" in der formel einsetzen, aber ich habe nicht verstanden, wie man es wieder tut).
in der tat ging ich simulink verwenden, um schlagmodelle zu schaffen, weil ich weiß, wie ich mich besser handhabe.
wenn ich vorschlagen wollte, wie man die kraft kontrolliert, wäre ich dankbar.
ich habe auch die anwendungssteuerung (die schnittstelle für matlab) der adams-ansicht verwendet, aber mit wenig ergebnissen.
danke.
 
hallo, dani84,

um auf 0 die kraft zu wechseln, zusätzlich zu der verwendung, die instabilität bei der unterbrechung der funktion erzeugen kann, empfehle ich ihnen die wirkungsfunktion zu verwenden.

aber wenn sie mir diese fragen stellen, verstehe ich nicht, warum sie unterroutinen verwenden.

für kontrollen, was meine ich mit schlechten ergebnissen? hat das simulink tutorial?
was ist nicht klar?

hi.

 
die wirkungsfunktion, die ich benutzte, aber es verwendet eine formulierung, um die dämpfung zu berechnen, die ich nicht mag.
was ich in adams tun möchte, wäre, ein von mir geschaffenes kraftmodell einzufügen, zum beispiel das hertzdamp-modell, das eine nichtlineare feder und feuchtigkeit verwendet, dessen funktion sich von der von adams implementierten unterscheidet.
ich hoffe, ich habe es erklärt.
 
hallo, dani84,

ich würde sagen, dass sie mit vfosub kein problem haben sollten, aber haben sie versucht, mehr einfach kräfte mit funktionen zu verwenden, in denen sie splines verwenden, um nicht linear zu charakterisieren, was sie wollen?

in jedem fall können sie die wirkungsfunktion auch mit argumenten verwenden, die nicht linear sind, andernfalls verwenden sie die if-funktionen, ich empfehle nur, um die kontinuität solcher funktionen zu überprüfen, zumindest auf die unabhängige variable, besser auch auf ihre erste ableitung, groß, wenn sie kontinuität auch dem sekundären ableitung geben können.
andernfalls können sie konvergenzprobleme haben, die jedoch durch die solvenzphase lösen können (auch sensoren, lokale gleichgewichte usw.), weil physisch vielleicht es nicht genau das ist, was in der natur geschieht.

hi.

 
ich bringe den einfachen fall von geraden auswirkungen zwischen 2 sphären zurück:
1 kugel fest und entlang der schlagachse gebunden;
kugel 2 entlang der achse gebunden und mit einer von null verschiedenen anfangsgeschwindigkeit;
schlagmodell als einfache feder: f=k*x (x=penetration, k= kontaktsteifigkeit).

syntax eingefügt in funktion, zum zeitpunkt, wenn ich kraft ändern (eine kraft auf 2 körper angewendet):






frage: wie füge ich das ein, wenn in funktionszustand, was ist die syntax zu verwenden?

andere sache: mit der schlagfunktion würde ich in diesem fall kein problem haben (ich setze die dämpfung gleich null und ich bin an ort und stelle). sollten sie jedoch den abschreibungsbeitrag hinzufügen wollen, aber indem sie ihn anders berechnen, als es adams tut, würde ich nur die eingangs erwähnte "einzelkraft"-funktion verwenden. das problem entsteht, wenn die körper, die impat sind nicht regelmäßig: in diesem fall, wie ich die penetration definieren (bei 2 kugeln war es einfach: pongo x=dx(ball mass center 1, kugel mass center 2)-r1-r2, mit r1 und r2 die strahlen der 2 kugeln)?
 
hallo, dani84,

die funktion zu tun, was sie wollen ist einfach:

wenn(x:0,0,k*x)

die hilfe zu verstehen.

wenn die feststoffe nicht regelmäßig sind, müssen sie die kontaktfunktion verwenden, die nach den verwendeten geometrien die mitte der komponierten fläche bzw. das komponierte volumen, deren projektion an der kante bzw. oberfläche des festen verbinders berechnet (um die richtung der kontaktkräfte zu identifizieren), dann die kompnetration selbst, die geschwindigkeit der kompnetration und damit alle in die schlagfunktion fällt.
sie können diese funktion auch verwenden, um einfach die geometrischen kontaktparameter (baricentre, geschwindigkeit, derection) zu berechnen und in einer anderen kraftfunktion zu verwenden.

ich schlage vor, sie verwenden die unterstützung, wenn sie die gewünschte funktion definiert haben.

hi.

 
vielen dank für ihre antworten und geduld.
der punkt ist, dass ich nicht weiß, wie man die kraft ändert: wo soll ich hin?
ich erstelle kontakt zwischen den beiden körpern, offen "kontakt ändern", und dann?
wie sie sehen, vermisse ich die grundlagen: ich weiß nicht, wie man die wirkungsfunktion auf meine lust ändert.
 
legen wir den fall an, dass er an einem punkt eine angewandte kraft benutzt.
apro "modify force".definieren mit" > subroutine... und in "routine" > sosub (probieren)....alle gehen nicht...wo ist der fehler?
er sagt, er findet die blähung nicht...
 
tut mir leid, dani84.

aber wenn sie subroutinen verwenden möchten, haben sie das von ihnen entwickelte subroutin (in fortran oder c++) erstellt und verlinkt?

ich schlage vor, sie lesen die hilfe. sie finden ein ganzes kapitel, innerhalb der adams/solver-handbuch, die über unterroutinen spricht, was sie sind, wie sie erstellt und verwendet werden und viele beispiele (von denen ich ihnen empfehlen, zu verlassen, nachdem sie verstehen, was sie sind).

hi.

 
hi.
ich versuchte, die hilfe online sorgfältig zu verfolgen.
das problem ist, dass ich aufgrund von fehlern aufgrund des compilers viel zeit verliere (der compiler, den ich habe, ist nicht okay).
wenn sie noch meine funktion mit der verwendung des "funktions-builders" erstellen wollen, was viel einfacher ist, wenn ich die "impakt"-funktion nenne, muss ich die position und geschwindigkeitsvariable einfügen.
die frage ist: wie füge ich diese 2 variablen ein, wenn in meinem fall objekte, die angst nicht regelmäßig sind?
die "dm"-funktion, die den abstand zwischen 2 markern berechnet, wäre in diesem fall nicht gut, weil ich nicht angeben konnte, welche auftreffpunkte auf den oberflächen der jeweiligen objekte liegen.

danke.
 

Statistik des Forums

Themen
58.521
Beiträge
499.056
Mitglieder
104.110
Neuestes Mitglied
ChristianR

Zurzeit aktive Besucher

Keine Mitglieder online.
Zurück
Oben