Zum Inhalt springen

mathias wellner

theater, schauspiel und bergsport

Archiv

Tag: matlab

Ich schreibe. An mei­ner Diss. Ich habe sie This! genannt, das klingt so wie Diss und erin­nert mich an Peter Gabri­els Album So, ein Weih­nachts­ge­schenk mei­ner Schwester.

Ich schreibe. Über die Ergeb­nisse der Ruder­stu­die mit Wett­be­wer­bern. Teil­neh­mer 1 hat rea­giert, und das deut­lich. Man sieht es an den Gra­phen, den Prunk­stü­cken die­ses Kapi­tels. Es lässt sich so viel aus­sa­gen mit einem Gra­phen. Dann brau­che ich auch weni­ger zu schrei­ben. Es springt dem Leser dann ins Auge. Aber nur, wenn der Graph gut gemacht ist und in sich das Stu­di­en­de­sign, die Ein­zel­er­geb­nisse, die Durch­schnitts­werte pro Block mit Stan­dard­ab­wei­chun­gen und am bes­ten noch die Schluss­fol­ge­run­gen in sich ver­eint und dabei nicht unüber­sicht­lich wird.

Ich schreibe. Ein Mat­lab–Skript zum Zeich­nen eines Gra­phen. Es wird immer län­ger, Zeile um Zeile kommt hinzu. Zuerst waren da nur die blauen Daten­punkte, etwas chao­tisch zeig­ten sie den Wert einer Varia­blen (zum Bei­spiel der Maxi­mal­kraft) für jeden Ruder­schlag an, und das für die gesamte Renn­stre­cke von 2000 m. Aber das reicht nicht, man muss noch die Blö­cke sehen. Die neu­tra­len Blö­cke, in denen die Geg­ner nichts machen und die Gegner-​​Blöcke, in denen die geg­ne­ri­schen Boote atta­ckie­ren oder zurück­fal­len. Senk­rechte rote Linien für die Block­gren­zen, das ist schon mal ein Anfang. Aber wie kann man die Gegner-​​Blöcke noch durch eine andere Hin­ter­grund­farbe her­vor­he­ben? Zuerst ver­su­che ich es mit dem Befehl patch, damit kann man belie­bige Poly­gone zu einem Gra­phen hin­zu­fü­gen. Aber die­ser ver­deckt die Rand­li­nien. Die Lösung bringt dann der Befehl image, ein ent­spre­chend den Blö­cken defi­nier­tes Bild dient als Hin­ter­grund des Gra­phen. Blaue Punkte auf dezent her­vor­ge­ho­be­nen Blö­cken, getrennt durch ver­ti­kale rote Linien. Schön wäre noch, bei jedem Block den Mit­tel­wert der Varia­blen und die Stan­dard­ab­wei­chung ein­zu­zeich­nen. Mit hori­zon­ta­len, schwar­zen, dicken Linien kom­men die Mit­tel­werte hinzu, mit dün­ne­ren Linien, die sich nach oben und unten stre­cken, die Stan­dard­ab­wei­chun­gen. Jetzt noch zuschnei­den auf die rich­tige Größe, damit es ohne wei­tere Ver­ar­bei­tung in die Diss ein­ge­fügt wer­den kann.

Ich schreibe. Mit LaTeX–Befeh­len füge ich die Gra­phen ein. Und beschrifte noch die Blö­cke, damit klar ist, wel­che neu­tral und wel­che durch Akti­vi­tä­ten der Geg­ner geprägt sind. Dies in allen Gra­phen. Diese Wie­der­ho­lung einer ähnli­chen Auf­gabe, in der sich nur die Rei­hen­folge der Kon­di­tio­nen ver­än­dert, schreit nach einem Makro. So weit ist es mit mir gekom­men, das Doku­ment hat sich in eine Struk­tur ver­wan­delt, wel­che stets ver­bes­sert wer­den kann. Ich sehe über­all Struk­tur, die Ähnlich­keit von Abschnit­ten, die Mög­lich­keit, etwas ele­gan­ter zu lösen, mit weni­ger Redundanzen.

Ich schreibe. 85 Sei­ten ist This! jetzt stark. Es ist nicht mehr viel, das Ziel ist in Sicht. Dann wird die erste Fas­sung voll­en­det sein.

Bis­lang war ich ja doch ein erklär­ter Ver­fech­ter von Mat­lab als einer ein­fa­chen Pro­gram­mierw­pra­che, mit der man schnell zu Ergeb­nis­sen kommt. Doch heute las ich die Seite eines erklär­ten Geg­ners sol­cher ein­fa­chen Skript-​​Sprachen. Er argu­men­tiert, dass durch die vie­len Ver­ein­fa­chun­gen — als da wären:

  • Varia­blen­ty­pen müs­sen nicht dekla­riert wer­den, son­dern erge­ben sich beim ers­ten Aufruf,
  • Auto­ma­ti­sche Umwand­lung von Skalar­wer­ten in Matrit­zen und
  • Skalar­werte und Vek­to­ren sind Spe­zi­al­fälle von Matritzen

Wegwerf-​​Programme ent­stün­den, die nicht mehr les­bar seien und für grö­ßere Pro­jekte unge­eig­net wären. Nun, da bin ich ja gespannt, ob ich mich nach eini­ger Zeit sei­ner Kri­tik anschließe. Die Frage stellt sich halt, wel­che Alter­na­ti­ven zur Ver­fü­gung ste­hen. Alles in C zu pro­gram­mie­ren ist halt nicht wirk­lich toll und erfor­dert lange Einarbeitungszeiten.

Diese Woche ist schnell ver­gan­gen. Ich ver­brachte lange Tage im Labor und beschäf­tigte mich aus­führ­lich mit dem Lokomat-​​Roboter und sei­ner viel­fäl­ti­gen Steue­rung. Es ist zwar schwie­rig, sich in ein solch gro­ßes und kom­ple­xes Pro­jekt inner­halb weni­ger Tage hin­ein­zu­den­ken, aber die wich­tigs­ten Kom­po­nen­ten und Rege­lungs­schlei­fen kenne ich jetzt. Sehr hilf­reich war, dass für die Pro­gram­mie­rung der Rege­lung Mat­Lab Simu­link ver­wen­det wurde. Das ist eine gra­fi­sche Art der Pro­gram­mie­rung, die dem Inge­nieurs­den­ken sehr nahe kommt. This week really pas­sed quickly. I spent some long days in the lab and got acquain­ted with the Loko­mat robot and his various con­trol con­cepts. It is dif­fi­cult to really get into such a huge and com­plex pro­ject wit­hing a few days, but I got a grip on the most import­ant com­ponents and con­trol loops. Very hel­pful was that the ent­ire con­trol pro­gram was crea­ted by Mat­Lab Simu­Link. That’s a gra­phi­cal way of pro­gramming what is pretty close to how engi­neers think.
Mar­tin and Michael are the two guys that have worked on the pro­ject, that I am bound to con­ti­nue in July. Michael wrote a Diploma the­sis and worked for half a year on the pro­ject after finis­hing that. He will con­ti­nue in Munich with his PhD. Mar­tin did his PhD on the Loko­mat pro­ject in Munich and Zurich with Prof. Rie­ner. So he is the main expert with the system. Mar­tin und Michael arbei­ten momen­tan am Pro­jekt, beide wer­den jedoch bald auf­hö­ren. Michael schrieb seine Dipom­ar­beit zu einem Pro­jekt­thema und hat auch danach noch ein hal­bes Jahr wei­ter­ge­macht. Er wird als nächs­tes in Mün­chen eine Dok­to­ran­den­stelle antre­ten. Mar­tin hat seine Dis­ser­ta­tion zum Lokomat-​​Projekt mit Prof. Rie­ner in Mün­chen und Zürich gemacht. Somit ist er der Haupt­ex­perte des Systems.
In einer Woche werde ich in einer Art Crash-​​Kurs an die tech­ni­schen Ein­zel­hei­ten des Pro­jekts her­an­ge­führt. Sämt­li­che Steue­rungs­pro­gramme sind in Simu­link umge­setzt, die Bedien­ober­flä­che ist in Lab­View gehal­ten. Damit kann man sehr schön in Struk­tu­ren den­ken und pro­gram­mie­ren und muss sich nicht durch tau­sende Zei­len Code wüh­len. Aber den­noch, durch aller­lei For­schungs­pro­jekte ist eine Menge zusam­men­ge­kom­men, was sich nicht unbe­dingt auf den ers­ten Blick erschliesst. In one week I will be intro­du­ced to the tech­ni­cal details of the rese­arch pro­ject. The con­trol pro­gram is done com­ple­tely in Simu­Link, all the ele­ments of the user inter­face were crea­ted by Lab­View. The advan­tage of both pro­grams is that you can think in struc­tures and don’t have to look through thousands of code lines. But des­pite of that the pro­ject is quite huge and the­re­fore it is not that easy to get all that at the first glimpse.
Mit Hilfe des Hos­pi­ty­lity Club habe ich einen net­ten Gast­ge­ber gefun­den, bei dem ich für die Woche unter­kom­men kann. Sein Mit­be­woh­ner muss zum Mili­tär, so dass ich des­sen Zim­mer in die­ser Zeit nut­zen kann. Per­fekt, so habe ich sogar ein eige­nes Bett und muss nicht auf der Iso-​​Matte schlafen! Thanks to Hos­pi­ta­lity Club I was able to find a nice host for the ent­ire week. His flat mate has to do mili­tary ser­vice, so I can use his room. That’s per­fect, I even have my own bed and don’t have to sleep on the cam­ping matress.
Als ich ankam, fand gerade eine Bespre­chung mit allen Labor-​​Mitarbeitern statt. Das heis­seste Thema war dann die Keks-​​Finanzierung, eine halbe Stunde lang wur­den ver­schie­dene Vor­schläge ange­bracht, ver­wor­fen, bis es dann am Ende zur Abstim­mung kam. When I arri­ved here on Mon­day morning, there hap­pened to be a mee­ting with all the people invol­ved with tha lab. The hot­test topic was how to finance the coo­kies, since the old model did not work in some people’s opi­nion. For half a hour several pro­po­sals were dis­cus­sed until finally a vote was taken.