Editor
Editoren er det område, hvor du skriver den kode, der styrer robotten, enten med blokke eller med skriptkode.
Herunder kan du læse, hvordan du koder i hvert af de to miljøer — blokkodning og skriptkodning (Python) — og hvad du skal være opmærksom på.
Editoren til blokkodning
Blokkategorier

Det område, hvor blokkene i RobomationLAB er inddelt i kategorier.
Klikker du på en kategori, kan du se den bloksamling, der hører til kategorien.
Her er de blokkategorier, der findes som standard.
- Logik
- Løkker
- Matematik
- Tekst
- Liste
- Farve
- Lyd
- Styring
- Variabler
- Funktioner
- Andre
Tilføjer du desuden en robot eller et udvidelsesmodul til programmet, kan du bruge robottens eller modulets egen bloksamling i programmet.
⚙️ Bemærk

Kategorier, du har tilføjet til programmet, men ikke bruger længere, kan du fjerne fra blokkategorierne med højreklik med musen → Fjern.
Bloksamlingen

Det område, hvor alle blokkene i en kategori er samlet.
Blokkene i bloksamlingen kan du flytte over i kodningsområdet ved at trække og slippe.

⚙️ Bemærk
Vil du vide, hvordan en blok bruges, kan du med højreklik med musen → Hjælp se en hjælpetekst, der beskriver, hvordan hver enkelt blok bruges.
Kodningsområdet

Det område, hvor du sætter de blokke sammen, du har hentet fra bloksamlingen.
De samlede blokke konverteres til Python-kode i realtid,
og når du kører koden, fortolkes den, så robotten bevæger sig og styres.
Blokkenes grundstruktur
Når du koder i editoren til blokkodning, skal du følge denne grundstruktur.

Editoren til blokkodning fortolker og kører den kode, der ligger inde i funktionsblokkene funktion opsætning og funktion løkke.
Du skal derfor skrive koden ved at lægge blokke ind i funktionsblokkene funktion opsætning og funktion løkke.
funktion opsætning
Inde i funktionsblokken funktion opsætning definerer du de handlinger, der skal udføres i starten, når koden køres.
Med blokken Vent kan du få handlingerne til at blive udført i tidsmæssig orden.
funktion løkke
Inde i funktionsblokken funktion løkke definerer du de handlinger, der skal gentages, så længe koden kører.
De handlinger, du definerer, gentages én gang hvert 10. ms.
⚙️ Bemærk
(Bortset fra de brugerdefinerede funktioner, du opretter via kategorien Funktioner)
har blokke, der ligger uden for funktionsblokkene funktion opsætning og funktion løkke, ingen virkning, når koden køres.
Sådan bruger du blokkene
Tilføj en blok



Du tilføjer en blok ved at trække den fra bloksamlingen og slippe den i editoren.
Kopiér/indsæt blokke
Der er i alt to måder at kopiere og indsætte blokke på i editoren.
Markér blokken, og tryk på Ctrl+C for at kopiere den markerede blok.
Trykker du på Ctrl+V, kan du indsætte den blok, du sidst kopierede, i editoren.Markér blokken, og tryk på knappen 'Kopiér Ctrl+C' i menuen Rediger for at kopiere den markerede blok.
Trykker du på knappen 'Indsæt Ctrl+V' i menuen Rediger, kan du indsætte den blok, du sidst kopierede, i editoren.
Slet blokke
Der er i alt tre måder at slette blokke på i editoren.
Markér blokken, og tryk på Backspace for at slette den markerede blok.
Du kan slette en blok ved at trække den i editoren og slippe den i blokkategorierne.



- Du kan slette en blok ved at trække den i editoren og slippe den i papirkurven.
Du kan se de slettede blokke igen i papirkurven.

Markér flere blokke på én gang
Der er i alt to måder at markere flere blokke på én gang i editoren.
Holder du Shift nede, mens du trækker hen over arbejdsområdet eller klikker på blokkene én for én,
kan du markere flere blokke på én gang.Klikker du på afkrydsningsknappen nederst til højre i arbejdsområdet, kan du slå tilstanden 'markér flere blokke' til og fra.
Er knappen fyldt med farve, er tilstanden slået til.
Er knappen ikke fyldt med farve, er tilstanden slået fra.


Så længe tilstanden 'markér flere blokke' er slået til, kan du kun markere blokke.
Vil du flytte eller redigere de markerede blokke på én gang, skal du slå tilstanden fra, når du er færdig med at markere.
Flere valgmuligheder
Ud over dette kan du højreklikke med musen på en blok
og få flere valgmuligheder frem, blandt andet fold blokken sammen/ud, aktivér/deaktivér og hjælp.
Python-editoren
Kodesamlingen

Det område, hvor de grundlæggende funktioner til robotkodning og den Python-kode, der hører til robotter og udvidelsesmoduler, er inddelt i kategorier.
Her er de kodekategorier, der findes blandt grundfunktionerne (Kode).
- Logik (logic)
- Løkker (loops)
- Matematik (math)
- Tekst (text)
- Liste (lists)
- Farve (color)
- Lyd (audio)
- Styring (control)
Koderne blandt grundfunktionerne gør nøjagtig det samme som de grundlæggende blokke i editoren til blokkodning.
⚙️ Bemærk
Du kan læse under Sådan bruger du kodesamlingen, hvordan du koder i Python-editoren ved hjælp af kodesamlingen.
Kodeeditoren

Det område, hvor du skriver den kode, der styrer robotten.
Vælger du Python-editoren under Editorindstillinger, kan du skrive Python-kode.
Kodens grundstruktur
Når du koder i kodeeditoren, skal du følge denne grundstruktur.
from robomation import *
# (er der en robot, du vil bruge, erklæres den som en instans, eksempel)
hamster_s = HamsterS(0)
# indsæt opsætningskode her, som skal køres én gang:
def setup():
pass
# indsæt styringskode her, som skal køres gentagne gange:
def loop():
passKodeeditoren fortolker og kører den kode, der ligger inde i funktionerne setup og loop.
Du skal derfor skrive koden inde i funktionerne setup og loop.
For at styre robotten skal du desuden skrive from robomation import * øverst i koden og erklære den robot, du vil bruge, som en instans.
setup
Inde i funktionen setup definerer du de handlinger, der skal udføres i starten, når koden køres.
Med funktionen Utils.wait kan du få handlingerne til at blive udført i tidsmæssig orden.
loop
Inde i funktionen loop definerer du de handlinger, der skal gentages, så længe koden kører.
De handlinger, du definerer, gentages én gang hvert 10. ms.
Sådan bruger du kodesamlingen
Herunder beskrives med enkle eksempler, hvordan du bruger kodesamlingen, når du koder.
Find den kode, du vil bruge
Kodesamlingen indeholder mange forskellige funktioner og koder til robotkodning.

Ser du på menupunkterne i kategorien Kode, kan du se, at nogle af dem har ikonet .
Klikker du én gang på menupunktet Logik, skifter ikonet til , og undermenuerne indeni foldes ud, så du kan se dem.
Et menupunkt, der på denne måde har undermenuer, kaldes en 'kategori'.
Har et menupunkt ikke ikonet — som ternær inde i kategorien Logik — betyder det, at menupunktet ikke har flere undermenuer.
Et menupunkt, der på denne måde ikke har undermenuer, kaldes en 'kode'.

Klikker du igen på en kategori, hvis undermenuer er foldet ud, skifter ikonet tilbage til , og undermenuerne skjules.
På denne måde kan du følge kategorierne og finde den kode, du vil bruge, i kodesamlingen.
Indsæt kode i editoren
Sådan indsætter du kode i editoren.

Har et menupunkt ikonet til venstre for navnet, betyder det, at menupunktet ikke har nogen kodemuligheder at vælge.
Det gælder for de fleste kategori-menupunkter, der har undermenuer.
Har et menupunkt ikonet til venstre for navnet, betyder det, at du kan vælge kodemuligheder i menupunktet.
Det gælder for de fleste kode-menupunkter, der ikke har undermenuer.
Højreklikker du med musen på den kode, du vil indsætte i editoren, kan du se de valgmuligheder, du har.

Højreklikker du på et kode-menupunkt, ser du de samme valgmuligheder, uanset om det er en grundfunktion eller en kode, der hører til en robot eller et udvidelsesmodul.
- Indsæt kode: indsætter den valgte kode dér, hvor markøren står i editoren.
- Hjælp: viser en hjælpetekst, der beskriver, hvordan koden bruges.
- Annuller: lukker menuen med valgmuligheder.
For koder, der hører til en robot eller et udvidelsesmodul, indsættes koden som et kald af en metode på robottens instans, når du vælger Indsæt kode.
( F.eks. set_wheel_speed hos HamsterS → hamster_s.set_wheel_speed('both', 50) )
⚙️ Bemærk

Kodekategorier for robotter og udvidelsesmoduler, du har tilføjet til programmet, men ikke bruger længere,
kan du fjerne fra kodesamlingen med højreklik med musen → Fjern.
