kramann.info
© Guido Kramann

Login: Passwort:










kramann.info
© Guido Kramann

Login: Passwort:




Prüfungsaufgaben zu "Entwicklung autonomer mobiler Systeme" (Master) und "Software-Entwicklung für selbst lernende eingebettete Systeme" (Bachelor SR Mechatronik)

(EN google-translate)

(PL google-translate)


Die vorliegende Seite erreichen Sie über: kramann.info/05_pruefung


Ablauf:

Beide Prüfungen bestehen aus drei Teilen.

  1. Prüfungsgespräch mit jeder Gruppe (je Gruppe 15Min)
  2. Entwicklungsaufgabe mit Processing (60 Min)
  3. Entwicklungsaufgabe mit Jetson-Bot (und Processing, 60Min+)

1. Prüfungsgespräch mit jeder Gruppe (je Gruppe 15Min)

Füllen Sie bitte einzeln die ersten fünf Zeilen im Formular für mündliche Prüfungen aus und gebe es gruppenweise ab.

2. Entwicklungsaufgabe mit Processing (60 Min)

DEUTSCH:

Eine Masse von einem Kilogramm soll entlang einer geraden Strecke von einem Meter bewegt werden.

Das darf maximal zehn Sekunden dauern

Nach zehn Sekunden muss die Masse zwischen 1m und 1.1m liegen und sich nicht mehr schneller als +/-0.01m/s bewegen.

Es gibt zwei Parameter zu optimieren: Eine konstante positive Kraft FA, die ab t=0s bis t=5s wirkt und eine zweite Kraft FB, die ab t=5s wirkt, bis x>=1m ist, oder t>10s.

Zugehörige Simulationsgleichungen:

$ m \ddot x = F\left(t & x\right) $

Formel 0-1: Dynamische Gleichung zum Problem.


m=1
x=0
v=0
x_neu=0
v_neu=0
dt=0.001
F=0
FA=1 //Beispiel
FB=-1 //Beispiel
t=0
while(x<1.0 && t<=10)
{
    if(t<5.0)
    {
        F=FA
    }
    else if(x<1.0 && t<10.0)
    {
        F=FB
    }
    else
    {
        F=0
    }


    x_neu = x + v*dt
    v_neu = v + (F/m)*dt 
    t=t+dt    

    x = x_neu
    v = v_neu
}

Code 0-1: Pseudocode zur Simulation des Problems.

Zu minimieren ist die aufgewendete Arbeit. Addieren Sie den Betrag der aktuell wirksamen Kraft mal dem zurückgelegten Weg seit dem letzten Meßpunkt auf.

  1. Schreiben Sie einen Simulator, der bei Vorgabe von FA und FB den Verlauf des Weges und der Kraft [x0,F0],[x1,F1],..., also double[][] xF in Schritten von 0,001s zurück gibt.
  2. Schreiben Sie eine Visualisierung zum Verlauf von xF.
  3. Schreiben Sie eine Fehlerfunktion, die aus xF die aufgewendete Leistung bestimmt.
  4. Implementieren Sie ein modifiziertes Gradientenverfahren für dieses Problem.
  5. Geben Sie gute Werte für FA und FB an.

Versehen Sie Ihren zugehörigen Projektnamen mit dem Prefix: GRUPPE_NUMMER_ERSTEAUFG_... (Nummer auf Fahrzeug) Das Projekt wird auf einem USB-Stick kopiert zur Benotung.

ENGLISCH:

A mass of one kilogram is to be moved along a straight line of one meter.

This may take a maximum of ten seconds

After ten seconds, the mass must be in between 1m and 1.1m and moving no faster than +/-0.01m/s.

There are two parameters to optimize: A constant positive force FA, which acts from t=0s to t=5s and a second force FB, which acts from t=5s until x>=1m or t>10s.

Associated simulation equations:

$ m \ddot x = F\left(t & x\right) $

Formel 0-2: Dynamic equation to the problem.


m=1
x=0
v=0
x_new=0
v_new=0
dt=0.001
F=0
FA=1 //Example
FB=-1 //Example
t=0
while(x<1.0 && t<=10)
{
    if(t<5.0)
    {
        F=FA
    }
    else if(x<1.0 && t<10.0)
    {
        F=FB
    }
    else
    {
        F=0
    }


    x_new = x + v*dt
    v_new = v + (F/m)*dt 
    t=t+dt    

    x = x_new
    v = v_new
}

Code 0-2: Pseudocode to simulate the problem.

To be minimized is the work expended. Add up the amount of force currently effective times the distance traveled since the last measurement point.

  1. Write a simulator which, given FA and FB, returns the course of the path and force [x0,F0],[x1,F1],..., i.e. double[][] xF in steps of 0.001s.
  2. Write a visualization to the progression of xF.
  3. Write an error function that determines the power expended from xF.
  4. Implement a modified gradient method for this problem.
  5. Give good values for FA and FB.

Provide your associated project name with the prefix: GROUP_NUMBER_ERSTEAUFG_... (number on vehicle) The project will be copied on a USB stick for grading.

3. Entwicklungsaufgabe mit Jetson-Bot (und Processing, 60Min+)

Unter folgendem Link sehen Sie die Fahrt von Fahrzeugen, die einer Linie folgen und ihre Richtung wechseln, wenn sie auf ein Hindernis treffen:

http://kramann.info/schwarm.ogg
http://kramann.info/schwarm.mp4 -- wie oben, anderes Format. Bitte prüfen, welches bei Ihnen funktioniert.

Task: Have your Jetbot follow the red line and turn 180 degrees and go in the opposite direction, when it hits the blue marker.

Versehen Sie Ihren zugehörigen Projektnamen mit dem Prefix: GRUPPE_NUMMER_ZWEITEAUFG_... (Nummer auf Fahrzeug) Das Projekt wird auf einem USB-Stick kopiert zur Benotung.

EN: Provide your associated project name with the prefix: GROUP_NUMBER_ZWEITEAUFG_... (number on vehicle) The project will be copied on a USB stick for grading.