Wiki source code of Project goals
Version 8.1 by cbu on 2014/05/12 19:29
Hide last authors
| author | version | line-number | content |
|---|---|---|---|
| |
3.1 | 1 | {{info title="DEADLINE 13.05."}} |
| 2 | At the end of this summer term a railway controller modelled in SCCharts should exist that is able to //control// the model railway installation. What exactly //control// means is up to you! | ||
| 3 | |||
| 4 | Define your project goals! Therefore... | ||
| 5 | |||
| 6 | * Define the desired capabilities of your controller. | ||
| 7 | * Devide your project in several subprojects. Organize the whole team in subteams and determine who is responsible for what. | ||
| 8 | * Define interfaces between the subteams and/or components the subteams are responsible of. | ||
| 9 | * Create a detailed roadmap with milestones for each subproject. | ||
| 10 | |||
| |
4.1 | 11 | You are going to present your plan in a short presentation (latex beamer preferred) in the following week, 13.05. 12:30. The presentation should last 30 min. |
| |
3.1 | 12 | |
| 13 | Remember, you are going to present your controller at the end of the summer term! Getting this task done right is a very important step to succeed with your controller and this project! | ||
| 14 | {{/info}} | ||
| 15 | |||
| 16 | |||
| 17 | |||
| |
8.1 | 18 | **The following goals were defined:** |
| 19 | |||
| 20 | * At least 5 trains can drive on the track at the same time | ||
| 21 | * A "cleanup" function for trains should drive all trains to their original position | ||
| 22 | * Our test scenarios should work (see Test-Scenarios) | ||
| 23 | * The trains slow down before braking | ||
| 24 | * All signals are working correctly | ||
| 25 | * Gates should close, when a train is coming, and open again afterwards | ||
| 26 | |||
| 27 | **Additionally the following optional goals were defined:** | ||
| 28 | |||
| 29 | * Deadlock avoidance: Trains should never run into a deadlock | ||
| 30 | * Cleanup function: All Trains which are still on the track travel to their next destination and afterwards they take the shortest way home | ||
| 31 | * Trains should drive slowly at the points | ||
| 32 | |||
| 33 | |||
| 34 | |||
| 35 | |||
| 36 | |||
| |
6.1 | 37 | === Sample Pass for one Track === |
| |
5.1 | 38 | |
| 39 | {{code linenumbers="true"}} | ||
| 40 | state Foo | ||
| 41 | --> Gleissegment with contact(Segment,0) | ||
| 42 | state Gleissegment { | ||
| 43 | entry / req(next_Segment); | ||
| 44 | entry / setSignal(prevSegment, red); | ||
| 45 | |||
| 46 | inital state Entry | ||
| 47 | --> Continue with contact(Segment,0) & perm_next_Segment | ||
| 48 | --> Slowdown with contact(Segment,0); | ||
| 49 | |||
| 50 | state Slowdown { | ||
| 51 | entry / setSpeed(Segment,SLOW); | ||
| 52 | } --> Waiting with contact(Segment,1) | ||
| 53 | --> Continue with perm_next_Segment; | ||
| 54 | |||
| 55 | state Waiting { | ||
| 56 | entry / setSpeed(Segment,BRAKE); | ||
| 57 | } --> Continue with perm_next_Segment; | ||
| 58 | |||
| 59 | state Continue { | ||
| 60 | entry / setSignal(Segment,green); | ||
| 61 | entry / setSpeed(Segment,full); | ||
| 62 | entry / setSpeed(nextSegment,full); | ||
| 63 | entry / setSignal(nextSegment, red); | ||
| 64 | entry / free(prevSegment) | ||
| 65 | entry / setSpeed(prevSegment,OFF); | ||
| 66 | }--> leave immediate; | ||
| 67 | |||
| 68 | final state leave; | ||
| 69 | } | ||
| 70 | {{/code}} | ||
| |
6.1 | 71 | |
| 72 | === Roadmap === | ||
| 73 | |||
| 74 | {{code}} | ||
| 75 | 13.5. Präsentation Annahme: Wir bekommen Interface für Module | ||
| 76 | 27.5. Station-Station Controller + C-Interface | ||
| 77 | 17.6. Integrationstests | ||
| 78 | 24.6. Definierte Testfälle mit Stoppflag | ||
| 79 | 01.7. Fahrpläne | ||
| 80 | |||
| 81 | KW 34 Abschlusspräsentation | ||
| 82 | KW 35 Exkursion Miniatur Wunderland | ||
| 83 | {{/code}} | ||
| |
7.1 | 84 | |
| 85 | == Interfaces == | ||
| 86 | |||
| 87 | === C-Interface === | ||
| 88 | |||
| 89 | klar | ||
| 90 | |||
| 91 | === Station-Station Module === | ||
| 92 | |||
| 93 | Input: Zugnummer, Startgleis, Zielgleis, Cleanup, (Mutex Variablen?) | ||
| 94 | Output: "Echtes" Zielgleis (Ausweichgleis?) | ||
| 95 | |||
| 96 | == Organisation == | ||
| 97 | |||
| 98 | Regelmäßiges Treffen Mittwochs 16:00 |