Frequently Asked Questions SYMO


Laatste wijziging: 28 februari 2010
samenstelling: Jan Mooij (jan.mooij@hu.nl)

 

  1. Wat is een bondgraaf?
    • Een bondgraaf is een grafische voorstelling van een technisch systeem, waarin de energiestroom(vermogen) naar en van de geïdealiseerde componenten centraal staat. Bij de verdeling van het vermogen over de verschillende componenten wordt gebruik gemaakt van de wet van behoud van energie. Uit een bondgraafplaatje kan op relatief eenvoudige wijze een beschrijving afgeleid worden, die geschikt is voor invoer in computersimulatieprogramma's.

  2. Wie heeft de bondgraaftechniek bedacht?
    • Prof. H. Paynter heeft de bondgraaftechniek bedacht in de eind vijftiger jaren. Bekende namen op dit gebied zijn verder Rosenberg en Karnopp. Prof. Dixhorn van TU-Twente heeft de methode in 1974 in Nederland geïntroduceerd.

  3. Waarom zijn bondgrafen nuttig?
    • De dynamica van fysische systemen is altijd bestudeerd aan de hand van de wiskundige beschrijving van de systemen. Als de differentiaalvergelijkingen opgesteld zijn is het een kwestie van het oplossen van deze vergelijkingen. Voor het computertijdperk gebeurde dit analytisch door knappe wiskundekoppen. Later zo rond de Tweede Wereldoorlog werden analoge computers gebouwd, die met operationele versterkers de differentiaalvergelijkingen konden nabootsen. De komst van de digitale computer maakte het mogelijk via numerieke methoden tot oplossingen te komen.

      De differentiaalvergelijkingen gaan uit van signalen en bewerkingen daarop. Wiskunde was dus de insteek en het is een hele kunst om van een meer complex systeem de vergelijkingen en bijbehorende blokschema's te vinden.

      Bondgrafen gaan niet uit van de wiskundige beschrijving maar van de natuurkundige opbouw van systemen. Er wordt gekeken naar energieuitwisseling tussen (ideale) componenten. Een bondgraaf staat intuitief dichter bij het echte systeem dan een set van differentiaalvergelijkingen, welke overigens uit de bondgraaf zijn af te leiden.

      Met de komst van PC's ontstonden ook programma's die rechtstreeks uit een bondgraafbeschrijving simulatieresultaten konden berekenen zonder dat je eerst de vergelijkingen hoefde op te zetten, die vervolgens in wiskundig georienteerde programma's verder behandeld kunnen worden (zoals tegenwoordig matlab en simulink).

      Voor bondgrafen ontstonden de volgende programma's:
      tutsim (van TU Twente) was een van de eerste, inmiddels opgevolgd door meer praktische als 20sim, dymola en dynasim.

      Bondgrafen helpen dus om het fysisch inzicht te bevorderen in de bestudeerde systemen en geven een meer rechtstreekse mogelijkheid om het dynamisch gedrag te simuleren zonder dat je eerst de wiskundige beschrijving hoeft af te leiden.

     

  4. Wat kan je met het dynasim programma?
    • Dynasim is een programma waarmee simulaties gedaan kunnen worden van het dynamisch gedrag van systemen. In feite lost dynasim op numerieke wijze een stelsel differentiaal vergelijkingen op. Dynasim vraagt als invoer een simulatiefile. Dit is een tekstfile (met extensie .sim), die een beschrijving bevat van het systeem in de vorm van onderling gekoppelde rekenblokken. Deze rekenblokken kunnen zowel bondgraafcomponenten zijn als de standaardcomponenten uit de meet- en regeltechniek. Dynasim kan dus ook met blokschema's werken. Je kunt ook digitale schakelingen doorrekenen. En met behulp van multirun's kan je in dynasim experimenteren met het efect van parameters.

  5. Waar kan je dynasim krijgen?
  6. Zijn er nog meer van dergelijke simulatieprogramma's?
    • Ja.
      Bekende zijn TUTSIM, PSI, 20SIM (grafisch onder windows), Dymola.

  7. Waarvoor dient het causale streepje?
    • Causale streepjes geven aan of bij het doorrekenen van de afzonderlijke bondgraafcomponenten (en junctions) een effort- of flowvariabele als output gegenereerd wordt. Een juiste positionering garandeert berekenbaarheid van de bondgraaf. Er zijn regels en afspraken voor plaatsing bij componenten en bij 0- en 1-junctions.

  8. Wat is een causaal conflict?
    • Een causaal conflict ontstaat als:
      1. een buffer differentierend werkt.
      2. een foutief aantal causale streepjes staat bij een 0- of 1-junction.

      Als je aan de hand van de causale analyse een conflict ontdekt duidt dit vaak op iets dat in werkelijk ook niet kan, zoals in een klap een massa een eindige snelheid geven of plotseling een condensator op spanning zetten, of een stroom door een spoel in een klap uitzetten (geeft oneindig hoge inductiespanning). Vaak moet je je model dan iets aanpassen (veranderen of uitbreiden).

  9. Wat te doen bij een causaal conflict veroorzaakt door een DM component?
    • Als je na een zorgvuldige causale analyse niet kunt vermijden dat er een differentierend buffer DM of (DJ) overblijft wijst dit op een te eenvoudig model. De elastische eigenschappen van echte massa's zijn ten onrechte verwaarloosd.
    • Bij een DM wordt de formule F=m.dv/dt gebruikt. v is dus de inputvariabele, die willekeurig gekozen mag worden, bijvoorbeeld stapvormig. Dan wordt F oneindig groot en dat kan niet in werkelijkheid!
    • De oplossing is een veer voor de massa M of J te zetten en DM (of DJ) te vervangen door een 0-junction met een M (of J) en een C.
    • Je zult zien dat het dan ook weer causaal in orde is.

  10. Wat is een causaal pad analyse?
    • Een 'causaal pad analyse' wordt gedaan om de tijdconstantes van een systeem boven water te krijgen.
    • Zo kan gevonden worden welke twee bondgraafcomponenten (waar eventueel een TF of GY tussen kan zitten) aan het begin en eind van een causaal pad staan.
    • Deze twee componenten bepalen samen een tijdconstante van het systeem.
    • Minstens EEN van de TWEE componenten (afgezien van de TF of GY) is een energiebuffer!!!!! Het kost nl altijd tijd om energie in een buffer te krijgen.
    • Een energiebron Se of Sf doet nooit mee!
    • Alle tijdconstanten samen zijn op hun beurt weer maatgevend voor de te hanteren rekenstapgrootte bij de simulatie. (vuistregel: 1/10 deel van de kleinste tijdconstante)
    • In hoofdstuk 5.1 staat het trucje dat je moet uithalen.
    • Dit zijn alle mogelijke combinaties (M kan ook I, L, of J zijn)
      combinatie      tijdconstante
      =============================
      M - C           wortel(M.C)
      M - R           M/R
      C - G           C/G
      R - TF - M      M/(n.n.R)
      G - TF - C      C/(n.n.G)
      C - TF - M      [wortel(M.C)]/n
      R - GY - C      C/(g.g.R)
      G - GY - M      M/(g.g.G)
      C1- GY - C2     [wortel(C1.C2)]/g
      M1- GY - M2     [wortel(M1.M2)]/g
      

  11. Moet je voor het opstellen van een bondgraaf altijd het (omslachtige) recept gebruiken van hoofdstuk 3.1 en 3.2 op pagina 15 van het diktaat?
    • Neen.
      Er zijn ook andere manieren om tot een correct bondgraafmodel te komen. Bij elektrische schakelingen, waarin gemakkelijk parallel- en serieschakelingen te ontdekken zijn, kan je snel de goede structuur vinden van de 0- en 1-junctions.
    • Elektrische brugschakelingen zijn voorbeelden waarbij dit niet gemakkelijk is, dan kan beter het recept gevolgd worden.
    • Bij mechanische constructies is het aan te bevelen altijd het recept te gebruiken, omdat de begrippen parallel en serie daar een andere betekenis hebben dan in het elektrische geval. Dat geldt in iets mindere mate ook voor hydraulische en thermische systemen.

  12. Waarom wordt in de strategie bij mechanische systemen met het plaatsen van 1-junctions begonnen en bij elektrische systemen met 0-junctions?
    • Bij een mechanisch systeem zijn de punten met een bepaalde snelheid makkelijker aan te wijzen dan de krachten, die werken. Je kunt ook zeggen dat snelheden te meten zijn zonder het systeem te hoeven onderbreken. De 1-junctions stellen snelheden voor (t.o.v. een stilstaande referentie).
    • Bij elektrische systemen kan je spanningen meten zonder de schakeling te hoeven onderbreken. De 0-junctions stellen spanningen voor (t.o.v. de nul=aarde).
    • Bij thermische systemen begin je naar temperaturen te zoeken en bij hydraulische systemen naar drukken, die door 0-junction's worden weergegeven.

  13. Als mijn simulator na compilatie in dynasim OK geeft krijg ik bij het runnen toch een wild springende plot op het scherm, of meteen een foutmelding. Waar moet ik de fout zoeken?
    • Probeer allereerst de simulatietijdstap steeds met een factor 10 te verkleinen. Het kan aan een te grove timing liggen. Blijft het probleem, dan zit de fout hoogstwaarschijnlijk in de structuurtabel.
    • Het kunnen bijvoorbeeld min-teken fouten zijn, waardoor (intern) een tegenkoppeling in meekoppeling overgaat en het systeem instabiel wordt.