Robot Bilen, del 4: Løsning

Hvad den kan og ikke kan:

Robotten kan følge en streg, men:

  • Den ved ikke hvornår den kommer til et kryds
    • Den “tror” at stregen bare drejer (husk at den bare følger kanten af stregen)
    • Derfor vil den også altid følge kanten og ende med at dreje mod C

 

  • Den ved ikke hvor langt den er kommet på en streg, heller ikke selvom vi sætter nogle mærker på stregen
    • Robotten kan ikke se mærkerne (husk at den bare følger kanten af stregen)
    • Derfor vil det også se ud som om, at den bare drejer uden om mærkerne

 

 

 

Programmering:

Hvad der skal ske:

  • Når højre sensor ser hvidt:
    • Skal højre motor køre
  • Når højre sensor ser sort:
    • Skal højre motor stoppe?

  • Når venstre sensor ser hvidt:
    • Skal venstre motor køre?
  • Når venstre sensor ser sort:
    • Skal venstre motor stoppe?

 

Prøv at sæt robotten på stregen som på billederne neden under og bevæg den med hånden, som det er beskrevet oven over.

 

  • Robotten kører lige ud:
    • Højre sensor ser hvidt, så højre motor kører
    • Venstre sensor ser hvidt, så venstre motor kører

 

 

  • Robotten drejer mod venstre:
    • Højre sensor ser hvidt, så højre motor kører
    • Venstre sensor ser sort, så venstre motor stopper

 

 

  • Robotten drejer mod højre:
    • Højre sensor ser sort, så højre motor stopper
    • Venstre sensor ser hvidt, så venstre motor kører

 

 

Den færdige kode ser sådan ud.

 

 

Hvad den kan og ikke kan:

Robotten zig zagger meget mindre og kører mere stabilt, det går også lidt hurtigere, fordi begge motorer nogle gange kan køre på samme tid.

 

 

Når robotten kommer til et kryds vil den automatisk stoppe. Dette gør den fordi:

  • Højre sensor ser sort, så højre motor stopper
  • Venstre sensor ser sort, så venstre motor stopper

Men robotten ved ikke at den er stoppet, den gør kun det den er programmeret til og lige nu er den programmeret til at motorerne stopper når sensorerne ser sort.

Det smart er, at nu ved vi, at robotten vil stoppe i krydset. Så nu kan vi begynde at programmere så vi kan bestemme hvilken vej den skal dreje, før den fortsætter hen af en streg.

 

 

Robotten kører stadig forbi område A og B, fordi den ikke ved hvor langt på stregen den er, husk at robotten ikke kan tænke, den kan kun gøre det den er programmeret til.

Lige nu er den programmeret til at motorerne kører, alt efter om sensorerne ser sort eller hvidt, intet andet.

 

 

Hvis vi sætter nogle mærker på stregen, så vil robotten stoppe ved dem, ligesom i krydset.

Det er smart, for nu ved vi at robotten stopper ved A, hvis vi skubber den videre stopper den også ved B.

Derfor kan vi nu begynde at programmere så den selv kan køre videre, og ved hvor den stoppede sidste.