Dato:
|
8 Maj 2014
|
Varighed:
|
7 timer + 3 timer test
|
1. Koden for IO skal skrives om så den passer 100% med bogen og interrupt-implementationen.
2. Implementeringerne skal have nye navne.
3. Kontakt 'Henrik' ift. kode.
?. Overbliksbillede over leJOS til EV3.
2. Implementeringerne skal have nye navne.
3. Kontakt 'Henrik' ift. kode.
?. Overbliksbillede over leJOS til EV3.
Mål
Få IO-implementationen til at fungere
Snak med ven om billeder i rapporten
Snak med ven om billeder i rapporten
Kode
IO-implementeringen driller en del; det er svært at finde frem til præcis hvor fejlen opstår - i adfærden eller i arbiteren. Det kombineret med, at een forkert adfærd nemt kan få konsekvenser for en helt anden (med lavere prioritering) har skabt lidt bøvl for mig.
Koden er kommet dertil, at den nu fungerer præcis ligesom leJOS fra robotten ser og fanger bolden, indtil den finder ud til en af "angrebs-banerne". Loggeren fungerer også, og med de nye ændringer burde det også kun være relevant data der bliver gemt.
Koden ser også ens ud, nu. Fordel! Har man læst implementationen for den ene, har man en god ide om hvordan den anden ser ud (=lighed i kode-stil gør det nemmere at argumentere for at forskelle i adfærd ikke skyldes kode-fejl!++)
Adfærdene benytte samme kode til alle beregninger, så det kun er selve adfærds-hierakiet der nu sammenlignes. Dette betyder dog at PID er en smule "misbrugt" ift. den oprindemige tankegang:
Hvert gennemløb af en PID giver baseret på en fejl-værdi en korrektionsVærdi. PID-kontrollerne er nu pakket således ind, at selve koden der beregner fejlVærdi er gemt væk, så blot korrektionsVærdien bliver returneret. Herunder et eksempel:
Koden er kommet dertil, at den nu fungerer præcis ligesom leJOS fra robotten ser og fanger bolden, indtil den finder ud til en af "angrebs-banerne". Loggeren fungerer også, og med de nye ændringer burde det også kun være relevant data der bliver gemt.
Koden ser også ens ud, nu. Fordel! Har man læst implementationen for den ene, har man en god ide om hvordan den anden ser ud (=lighed i kode-stil gør det nemmere at argumentere for at forskelle i adfærd ikke skyldes kode-fejl!++)
Adfærdene benytte samme kode til alle beregninger, så det kun er selve adfærds-hierakiet der nu sammenlignes. Dette betyder dog at PID er en smule "misbrugt" ift. den oprindemige tankegang:
Hvert gennemløb af en PID giver baseret på en fejl-værdi en korrektionsVærdi. PID-kontrollerne er nu pakket således ind, at selve koden der beregner fejlVærdi er gemt væk, så blot korrektionsVærdien bliver returneret. Herunder et eksempel:
final int[] power = pid.getMotorPowers(0, SPEED);mc.setB(power[0]);mc.setC(power[1]);
Snak om billeder
Gennemgang af rapport's indledning, samt snak om hvordan billederne kan forbedres (læs: udskiftes).
No comments:
Post a Comment