Område 6 · lektion 29–36 · 15 april – 10 juni
Bygge 5 – eget mekatroniskt system
Kursens femte och sista bedömda system, och det enda där kravlistan är din. Du väljer vad systemet ska göra, skriver kraven, ritar det, bygger det, mäter på det och dokumenterar det. Sidan är områdets fasta punkt: sju av åtta pass arbetar mot den här listan.
Det här är ett bedömt mekatroniskt system Bygge 5 ska sammanföra alla tre delarna — mekanisk struktur, elektroteknik och styrteknik — precis som bygge 1 till 4, med skillnaden att det är du som ser till att de finns med. Det ger belägg för alla fem förmågorna: F1 planera och bygga, F2 använda ritningar och manualer samt samarbeta, F3 dokumentera, F4 beskriva systemuppbyggnad och fysikaliska principer, och F5 bedöma din egen förmåga vid samråd. Det nya jämfört med bygge 4 är att ingen har talat om vad systemet ska göra. Det är därför kravlistan du skriver är det första som bedöms.
Uppgiften
Bygg ett mekatroniskt system som du själv har kravställt. Vad det gör bestämmer du. Ramen är fem punkter, och de är inte förhandlingsbara — de kommer ur kursens centrala innehåll och ur betygskriteriernas krav på vad ett system är:
- Kedjan ska börja i en mätning. En givare som mäter en storhet i världen — ljus, temperatur, avstånd, vinkel, läge, kraft. En knapp får finnas som start eller stopp, men den är inte systemets insignal.
- Något ska besluta. Kod som jämför mätvärdet med ett eller flera villkor du satt, och som avgör vad som ska hända.
- Något ska röra sig. Servo, likströmsmotor eller annan aktuator, med en mekanisk struktur runt sig som håller ihop och som du dimensionerat.
- Systemet ska gå att bygga med det du har. Kitet, verkstan och det som finns i lådorna. Ingenting som måste beställas.
- Det ska rymmas på sju pass. Ungefär som bygge 4 i omfång, plus ett tillstånd och ett felfall.
Några förslag som alla uppfyller ramen. De är exempel, inte alternativ att välja mellan — din egen idé är bättre om den är din:
| Idé | Givaren | Rörelsen | Vad som gör den komplex |
|---|---|---|---|
| Växthusventil som öppnar vid värme | NTC | Servo med spak, eller motor med utväxling | Två trösklar, ändlägen, tidsgräns om luckan kärvar |
| Sorteringslucka som skiljer ljust från mörkt | LDR över bandet | Band med motor, lucka med servo | Tidssamband: luckan ska slå när föremålet hunnit fram |
| Automatisk bom eller grind | HC-SR04 | Motor med utväxling, eller servo | Får inte stänga med något under. Fyra lägen |
| Solföljare i en axel | Två LDR som jämförs | Servo eller stegvis motor | Beslut ur skillnaden mellan två mätvärden, inte ur ett |
| Matare som doserar en portion | Tid plus ändlägesgivare | Skruv eller trumma med motor | Kvittering: portionen räknas först när givaren sett den |
| Fuktvakt som vattnar | Två elektroder som mäter resistans | Pump eller ventil med motor | Får inte vattna igen förrän mätvärdet svarat |
Sista kolumnen är den som är värd att läsa två gånger. Alla sex idéerna går att bygga som enkla system, och alla sex går att bygga som komplexa. Det är inte idén som avgör vilket, utan vad du lägger in i den — se kravställningsguiden.
Sju pass att arbeta, två att redovisa
Området är kursens längsta och det enda där du håller i tidsplanen själv. Passen är 85 minuter, varav de första 15 går till samråd.
| Pass | Vad passet är till för | Vad som ska vara klart efteråt |
|---|---|---|
| Lektion 29 · 15 april | Genomgång om kravställning. Idégodkännande sista 25 minuterna. | Godkänd idé, en mening om vad systemet ska göra, fem krav. |
| Lektion 30 · 22 april | Ritpass. Ingen bygger. | Blockschema, kopplingsschema, materiallista, pinn- och strömbudget. |
| Lektion 31 · 29 april | Bygge med handledning. | Varje delsystem provat för sig. Givaren läser, aktuatorn rör sig. |
| Två veckor hemma. Torsdagen den 6 maj är Kristi himmelsfärds dag och det blir inget pass. Här ska delarna bli ett system. | ||
| Lektion 32 · 13 maj | Bygge med handledning. | Hela kedjan hänger ihop och gör något, om än fel saker. |
| Lektion 33 · 20 maj | Felsökning och mätning. | Kraven prickade av ett i taget, med mätvärden. Kvarstående fel kända. |
| Lektion 34 · 27 maj | Dokumentation. 50 minuter ren skrivtid. | Dokumentationen skriven så långt det går. |
| Lektion 35 · 3 juni | Redovisningar, ungefär halva klassen. | Dokumentationen inlämnad. |
| Lektion 36 · 10 juni | Sista redovisningarna, återkoppling och betyg, kursutvärdering. | Kursen är slut. |
Sätt din sluttid en vecka före min Sikta på att vara klar den 20 maj. Något kommer att gå sönder, kärva eller inte fungera — det är inte otur utan hur konstruktion fungerar — och den veckans marginal är skillnaden mellan ett system du hinner mäta på och ett du hinner klistra ihop. De som blir klara i tid är nästan alltid de som planerade för att något skulle gå fel.
Ensam eller i par, men dokumentationen är din
Du får bygga ensam eller tillsammans med en annan. Bygger ni i par gäller tre saker: ni skriver var sin dokumentation, ni redovisar båda två, och ni ska kunna säga vem som gjorde vad. Det sista är inte kontroll utan kriterium — F2 handlar bland annat om att samarbeta, och ett samarbete som inte går att beskriva går inte att bedöma.
Två identiska dokumentationer belägger ingens förmåga. Bygget får vara gemensamt; texten är individuell, och den ska vara skriven av dig även när systemet är byggt av er två.
Innan varje pass
Sju av områdets åtta pass inleds med 15 minuters samråd. Det gör samrådsunderlaget till den sida du använder mest under hela våren. Fyll i det före passet, inte under det.
Samrådet är bedömt, inte hjälp på nåder F5 handlar om att bedöma din egen förmåga och situationens krav vid samråd, och skillnaden mellan E och A ligger i med viss säkerhet mot med säkerhet. I praktiken: den som kommer med "det fungerar inte" visar mindre än den som kommer med "råvärdet ligger på 390 när det borde passera 400, jag har mätt spänningen över delaren och den stämmer, så jag tror att felet är kalibreringen och inte kopplingen — har jag rätt?" Den andra frågan tar dessutom två minuter att svara på i stället för tjugo.
Skillnaden mellan E och C i F1 ligger i samma område: i samråd mot efter samråd. Att arbeta i samråd är att göra det vi kom överens om medan vi pratade. Att arbeta efter samråd är att ta med dig ett besked och sedan själv avgöra vad som följer av det. Ta med en fråga till varje pass, och ta med vad du gjorde med förra passets svar.
Arbetsgång
- Kravställ (lektion 29). Tre idéer, pröva mot ramen, välj en. Skriv den enda meningen och bryt ned den i fem till åtta krav med tal och enhet. Metoden står i Kravställning och planering.
- Rita och räkna (lektion 30). Blockschema först, kopplingsschema sedan. Pinnbudget, strömbudget, materiallista med skäl. Metoden står i Konstruktion och schema. Skriv konstantblocket i koden ur ditt eget schema och kontrollera att det kompilerar.
- Bygg delarna var för sig (lektion 31 och veckan efter). Givaren med en minsta testskiss, tills råvärdet ändras som det ska. Aktuatorn med en egen skiss, tills den rör sig som den ska. Mekaniken ihopskruvad och provad för hand, med strömmen av. Inget av det här kräver att resten fungerar, och det är hela poängen: fyra saker som var för sig fungerar är en betydligt bättre utgångspunkt än en helhet som gör något oklart.
- Koppla ihop (de två veckorna och lektion 32). Givare, beslut och aktuator i en skiss. Först nu ska systemet göra något som liknar det du beskrivit. Räkna med att det fungerar delvis — det är normalt läge vid det här datumet.
- Lägg till tillståndet. Systemet ska minnas vilket läge det är i, och samma insignal ska kunna betyda olika saker i olika lägen. Rita tillståndsdiagrammet innan du skriver koden. Mönstret ligger i Tillstånd och som skelett längre ned på den här sidan.
- Lägg till felfallet. Vad händer om rörelsen inte blir av? En tidsgräns som stannar aktuatorn och tänder en lampa är tio rader kod och är det billigaste sättet att lyfta både systemet och det du har att skriva om det.
- Felsök och mät (lektion 33). Pricka av kraven ett i taget, med mätvärden. De som inte går igenom ska vara kända och beskrivna — ett krav som inte uppfylldes är inte ett underkännande, ett krav som tyst försvann är det. Metoden står i Systematisk felsökning.
- Dokumentera (lektion 34). 50 minuters skrivtid, med upplägget i Dokumentationens grad.
- Redovisa (lektion 35 eller 36). Åtta minuter. Vad som ska sägas står i Redovisningen.
Systemskelettet
Nästan varje slutprojekt har samma stomme: läs givaren, avgör läge, styr aktuatorn, och ge upp om rörelsen inte blev av. Skriv av skelettet och byt ut lägena, tiderna och villkoren mot dina egna. Det ersätter inte konstantblocket från ritpasset — det läggs till efter det.
// Systemskelett – fyra lägen och en tidsgräns.
// T-prefixet betyder tillstånd, precis som i område 3.
const int T_VILAR = 0; // väntar på att mätvärdet ska passera tröskeln
const int T_ARBETAR = 1; // aktuatorn är i rörelse
const int T_KLAR = 2; // rörelsen är fullbordad, håller läget
const int T_FEL = 3; // rörelsen blev inte av i tid
const unsigned long TIDSGRANS = 4000; // ms innan rörelsen ges upp
int tillstand = T_VILAR;
unsigned long bytteVid = 0; // när tillståndet senast byttes
void loop() {
unsigned long nu = millis();
int ravarde = analogRead(GIVARE_PIN);
bool framme = (digitalRead(ANDLAGE_PIN) == LOW); // LOW = brytaren sluten
if (tillstand == T_VILAR) {
if (ravarde < TROSKEL_START) {
starta_rorelsen();
bytteVid = nu;
tillstand = T_ARBETAR;
}
} else if (tillstand == T_ARBETAR) {
if (framme) { // rörelsen lyckades
stanna_rorelsen();
tillstand = T_KLAR;
} else if (nu - bytteVid >= TIDSGRANS) { // rörelsen blev inte av
stanna_rorelsen();
digitalWrite(LARM_PIN, HIGH);
tillstand = T_FEL;
}
} else if (tillstand == T_KLAR) {
if (ravarde > TROSKEL_ATER) { // mellanrum mot TROSKEL_START
tillstand = T_VILAR;
}
} else if (tillstand == T_FEL) {
// Stannar här tills någon kvitterar. Ett säkert läge är ett läge
// systemet inte lämnar av sig självt.
}
}
Fyra saker i skelettet är värda att lägga märke till, för de är precis det
som skiljer ett enkelt system från ett komplext.
Ingen delay() — loopen går runt hela tiden och
kan reagera på flera saker. Två trösklar —
TROSKEL_START och TROSKEL_ATER med ett mellanrum
emellan, så att systemet inte fladdrar vid gränsen.
En tidsgräns — rörelsen ges upp i stället för att pågå för
evigt. Ett säkert läge — T_FEL lämnas inte av
sig självt. Ingen av de fyra kostar mer än några rader, och alla fyra går att
skriva ett stycke om i dokumentationen.
Mätningarna
Varje krav du skrev ska prickas av med en mätning. Utöver dem finns fyra mätningar som gäller nästan alla system, och som du behöver till dokumentationen oavsett vad du byggt:
| Mätning | Hur | Varför den behövs |
|---|---|---|
| Givarens ytterlägen | Råvärdet i de två extremfall systemet ska skilja mellan, avläst med en testskiss | Trösklarna ska ligga inuti det intervall givaren faktiskt levererar, inte i ett du gissat |
| Matningen under drift | Spänningen mätt vid aktuatorn medan den rör sig, inte i vila | Skillnaden mellan vila och drift är det som avslöjar om matningen orkar |
| Strömmen i det som rör sig | Multimetern i serie, i 10 A-uttaget om det är en motor | Bekräftar strömbudgeten från ritpasset, eller visar att den var fel |
| Tiden för rörelsen | Tidtagning, eller millis() vid start och framme |
Ger dig tidsgränsen i koden, och ett tal till kravlistan |
Skriv upp varje mätvärde med datum och vilken version av kopplingen det gällde. Du kommer att ändra systemet två eller tre gånger under maj, och ett mätvärde utan koppling till en version är en siffra du inte kan använda i juni.
Kraven — det här ska finnas
Ramen varje slutprojekt ska rymmas i, oavsett vad det gör. Kryssen sparas i din egen webbläsare. De är en checklista för dig, inte en inlämning.
Det här bör du lägga till
Punkterna som gör systemet och texten noggranna i stället för bara kompletta. Det är i praktiken här C-nivån ligger.
Utmaningar
Det som gör systemet komplext och beskrivningen nyanserad. Inget av det kräver mer byggtid — det kräver att du bestämmer dig tidigt.
Redovisningen
Åtta minuter den 3 eller 10 juni, med systemet på bordet. Vad som ska sägas, i vilken ordning, och vilka följdfrågor jag ställer står på Redovisningen. Läs den sidan innan den 3 juni och inte samma morgon — två av de fyra sakerna som ska sägas är sådant du behöver ha mätt i förväg.
Dokumentationen
Använd dokumentationsmallen. De fyra E-punkterna är golvet: vad systemet gör, kopplingsschemat, koden, och vad som gick fel på vägen.
Dokumentationen bär E/C-gränsen — sista gången F3 skiljer E från C på ett enda ord: enkel mot noggrann. Ett system som gör allt du lovat, beskrivet på en halv sida, ligger på E. Det omvända går inte — du kan inte skriva dig till en mekanism som orkar. Skillnaden i text, med exempel, står i Dokumentationens grad.
Fem saker som hör särskilt till det här bygget
- Kravlistan som ett eget avsnitt, med utfall. Varje krav, mätvärdet, och om det gick igenom. Det är slutprojektets viktigaste avsnitt, och det finns inte i något tidigare bygge.
- Varför just den här idén. Du hade tre. Vad de andra två var och varför den här valdes säger något om ditt omdöme som ingen kravlista kan säga.
- Tillståndsdiagrammet bredvid koden. Ritningen och
if-kedjan ska gå att jämföra rad för läge. - Felsökningsvägen, inte bara felen. Hur du kom fram till orsaken, inklusive återvändsgränden. Det är det som skiljer ett A-avsnitt från ett C-avsnitt.
- Vad systemet inte klarar. Med tal. En mening räcker, och den är den mest lönsamma meningen i hela texten.
Om det inte fungerar
Hela metoden står i Systematisk felsökning, med symtomtabellen för hela kursen. De fem som slår hårdast just i slutprojekt:
- Slumpmässigt beteende som blir bättre när du håller i sladden. Gemensam nolla saknas eller glappar. Kontrollera den först, varje gång, före allt annat.
- Kortet startar om när något börjar röra sig. Brownout. Mät spänningen vid aktuatorn under rörelse. I vila ser allt normalt ut, och det är därför felet så ofta tolkas som ett programfel.
- Systemet reagerar en gång och sedan aldrig mer. Tillståndet fastnade i ett läge som saknar väg tillbaka. Skriv ut läget varje varv och leta efter övergången som inte finns.
- Mekanismen darrar vid gränsen. En enda tröskel och ett råvärde som skakar över och under den. Två trösklar med mellanrum, eller medelvärde av flera prov.
- Bygget hann inte bli klart. Sluta bygga och börja skriva. Ett halvfärdigt system med noggrann dokumentation, en tydlig beskrivning av var det stannade och vad som hade krävts för att komma vidare, ger belägg för fyra av fem förmågor. Ett färdigt system utan text ger belägg för en.
Vidare
Med bygge 5 inlämnat har du planerat och byggt fem mekatroniska system, och det är de fem tillsammans som är "flera system" i F1:s mening på A-nivå. Det betyder att bygge 1 till 4 och deras dokumentation fortfarande räknas i juni — slutprojektet är kronan, inte hela byggnaden.
Guiderna till området: Kravställning och planering, Konstruktion och schema, Systematisk felsökning och Dokumentationens grad. De följer projektets gång, ett pass i taget.
Tillbaka till område 6 eller till kursens material.