230 likes | 410 Views
Practical Session. RoboCup MSL Workshop – Kassel (2013). Practical Session - Schedule. Framework Overview ( now – 16:10) Software scheme Development environment Tooling Mini-workshops (16:15 – 17:30) 4 groups , 4 assignments Prepare feedback Discussion (17:30 – ??)
E N D
Practical Session RoboCup MSL Workshop – Kassel (2013)
Practical Session - Schedule Framework Overview (now – 16:10) • Software scheme • Development environment • Tooling Mini-workshops (16:15 – 17:30) • 4groups, 4 assignments • Prepare feedback Discussion (17:30 – ??) • Short feedback presentations • Conclusions
Communication (on PC) Real-Time Database tool by CAMBADA
Simulink – MultiTasking Target • Simulinkby default does not support asynchronoustasks • Therefore: MultiTasking Target (MTT) has been made • MTT task block canbetriggered in three different ways: • Clock-triggered • Event-triggered • Self-triggered
Tooling: Turtle Remote Control (TRC) • Trc + tuning
Workshops: 4 groups, 4 assignments • Groups A, B, C, D • Three assignments per group, 15 minutes per assignment • Feedback from each assignment on one slide
Discussion: Development Environment Disadvantages • Tendancyto make large executables, long time compiling • RequiresMatlablicense • Hard to share code withpeoplenotusingMatlab/Simulink Advantages • Lots of toolingavailable in Matlab • Blockschemestructureenforcesmodular code • Visual way of browsingthrough code • Easy to make GUI’sand scripts
Discussion: Our software Disadvantages • Large executables, soifonething crashes, everything does (and long compiling time) • Afterintroduction of MTT the Motion, Vision, Worldmodeldivisionmakesless sense Advantages • Toolingallowsquicktuning, debuggingandcalibration • Debugging based on whathappenedduring match withGreenfield replay • Well organized variables because of bus manager • … • …
Further reading • SimulinkCoder (formerly ‘real-time workshop’): • http://www.mathworks.nl/products/simulink-coder/ • Simulink S-Functions: • https://www.mathworks.nl/help/simulink/s-function-basics.html • MultiTasking Target: • http://www.techunited.nl/wiki/index.php?title=MultiTasking_Target_for_Linux • BussesforSimulink: • http://www.techunited.nl/wiki/index.php?title=User-friendly_Bus_for_Simulink • S-Function tester: • http://www.techunited.nl/wiki/index.php?title=C_Function_Tester • Simulator: • http://www.techunited.nl/wiki/index.php?title=Simulator
Discussion: Questions that might arise • WhynotuseSimulink’s default bussesinstead of yours? • Whynot start threadsfrom S-functionsinstead of MTT task block? • How muchphysics is simulated in your simulator? • Whydevide Motion/Vision/Worldmodel • How does appmanwork? • Are Motion/Vision/Worldmodel on different cores?