Inhoud

  • Inleiding
  • Bouw van de line follower
  • Toepassing van line follower
  • Werking van de kleurensensor
  • Uitleg programma werking
  • Programeren van de lijnvolger
  • Conclusie

 

Inleiding

In periode 2 begonnen we aan de opdracht robotica. We hadden er allemaal in het begin veel zin in.  We zijn toen begonnen met het in elkaar zetten van de robot. Het in elkaar zetten was op zich een leuk proces. Het daadwerkelijk programmeren van de robot was iets minder spannend.

 

Bouw van de line follower

Stap 1:

Stap 2:

 

 

Stap 3:

Stap 4:

Stap 5:

Stap 6:

De robot kan met behulp van de kleurensensor de zwarte lijn volgen. Dit is ook de reden dat de kleurensensor naar beneden is gericht. De robot meet met behulp van de kleurensensor hoe dichtbij de zwarte lijn is.  De robot beweegt als het ware langs de zwarte lijn omdat de kleurensensor het verschil kan meten tussen de zwarte lijn en de witte ondergrond. Je kunt zelf programmeren aan welke kant van de lijn de robot rijdt.

 

 

 

Toepassing line follower

Nadat we onze robot gebruiksklaar hadden gemaakt voor het volgen van lijnen werd het tijd om de robot zo te programmeren dat we ook echt konden beginnen met het uit testen van deze functie. Daarvoor hebben we het bijbehorende programmeringsprogramma gebruikt.  Het programmeren van de line follower kun je stap voor stap mogelijk maken m.b.v. deze link: http://ac-host.nl/I2/index.php/robotica

De instructies staan onder het kopje decisions. Let wel op het feit dat je eerst al andere stappen voltooid moet hebben voordat je aan de line follower begint. Toen we dat allemaal gedaan hadden en op de robot hadden geïnstalleerd was het tijd om de robot uit te testen. We merkte meteen op dat de robot in grote lijnen prima de lijn kon volgen, maar zodra het op scherpe bochten aankwam ging het mis. We kregen toen van meneer Melchior de opdracht de programmering dusdanig te optimaliseren dat zelfs scherpe bocht geen probleem meer zouden vormen voor onze robot. Hoe we dit precies hebben gedaan zal later in dit artikel aan bod komen. Robots die gebruik maken van een kleurensensor om een bepaalde patroon te volgen worden door veel bedrijf gebruikt om te controleren of dingen wel op de juiste plaats staan. De robot legt dan een bepaalde route af en als het stuit op een kleurverandering stopt de robot met rijden. Dit zorgt ervoor dat het personeel een kijkje gaat nemen en de afwijking corrigeert.

 

 

Werking van de kleurensensor

 

De kleurensensor kan een kleur herkennen door te meten hoeveel van het rood uitgezonden licht wordt teruggekaatst. Wanneer de kleurensensor voor een zwart voorwerp staat zal er weinig van de rode kleur worden teruggekaast sinds zwart weinig kleuren reflecteert. Wanneer de sensor wit detecteert komt dat omdat wit alle kleuren weerkaatst en de sensor dat ook meet.

Door met het programma LEGO Mindstorms te werken kon de robot zo geprogameerd worden dat het bepaalde activiteiten zou uitvoeren bij het zien van een kleur. Dit is wat we hebben gedaan bij de line follower. Bij het zoeken van instructievideo’s voor de line follower zie je heel vaak dat een zwarte tape wordt gebruikt als een lijn. Hier zou je in principe elk kleur voor kunnen gebruiken die kan worden gedetecteerd maar omdat de kleuren zwart en wit zo een tegengestelde werking hebben is het veel makkelijker voor de kleurensensor om de lichtintensiteit te detecteren. Eerder zei ik dat zwart heel weinig kleuren terugkaatst terwijl wit alle kleuren terugkaatst. Dit is het belangrijke verschil tussen deze twee tinten. Als we hier nog dieper op in zouden gaan zouden we het hebben over de elektromagnetische straling van de kleuren maar wij houden het op de werking van de kleurensensor.

Dit is hoe de robot geprogrammeerd is:

De robot kan twee verschillende kleuren waarnemen. Zwart en wit. Wanneer de robot zwart waarneemt, zal de robot of naar links of naar rechts rijden, voor dit voorbeeld nemen we links. Dit gebeurt tot de robot de kleur wit waarneemt, want dan zal de robot naar rechts rijden. Dit blijft zich heel de tijd herhalen waardoor de robot de zwarte lijn blijft volgen.

 

Uitleg programma werking

Aan het begin is het belangrijk dat we weten wat lijn-volging betekent.
Het betekent niet een lijn volgen maar we stellen een grens voor onze robot, zogenaamd linker-hand benadering.
De robot volgt een lijn waarvan 50% zwart en 50% wit is.
- Eerst moeten we onze robot leren wat wit en wat zwart is en dit doen we via het meten van de intensiteit van het licht.

Hoe meten we de lichtintensiteit van het licht bij zwarte lijn en de grond/het oppervlak waarin de zwarte lijn zich bevindt mrt behulp van kleursensor?

- De kleursensor meet de totale hoeveelheid licht die binnen de sensor komt.
-Dit licht is de weerspiegeling van de rode LED(sensorlicht) plus de eventuele lichten in de kamer.
-We moeten de verstoring van andere lichtbronnen verminderen daarom houden we de kleursensor dicht bij het oppervlak.
-Pak je mindstoorm robot druk twee keer op de het rechter knopje zo dat je bij het “Brik App”tab bent.
-Bij “Port view”druk het midden knopje.
-Druk weer twee keer op het rechter knopje.
-Nu zie je de intensiteit van het licht.De intensiteit van het licht wordt aangegeven in percentage       (RLI-waarde) dus tussen 0 en 100. 0 betekent heel erg donker en 100 heel licht.
-Bij ons is de lichtintensiteit bij zwartelijn 8 en bij het oppervlak 78.

 

 

 

Programeren van de lijnvolger

-Open het programma “Lego Mindstoorm”
-Hieronder zie je een overzicht van alle beschikbare blokjes van het programma en blokjes die wij hebben gebruikt voor het programeren van onze lijnvolger robot.

-Dit is het hele programma van onze lijnvolger

1-De ingevoerde berekening bij de eerste reken-blokje
 (a-b)*c
-Bij het eerste blokje voeren we bij a* de “door onze kleursensor gemeten” lichtintensiteit-waarde van het oppervlak in, dus a=78.

2-De ingevoerde berekening bij tweede reken-blokje is hezelfde als eerste blokje.
-Bij tweede blokje voeren we bij b* de “door onze kleursensor gemeten” lichtintensiteit-waarde van zwarte lijn in, dus b=8.



-De output van ons rekenblokje sluiten we aan de input van het variabel blokje (B-power), omdat:
 als de robot weg gaat van zwarte lijn dan is daar de lichtintensiteit b=78 en voor de waarde van             B-Power (onze variabel) krijgen we dan nul : (78-78)*1=0 en nu gaat de b-power niet bewegen.
 Dus niet meer naar recht.
 Hoe dichter bij de zwarte lijn (hoe kleiner de waarde van b) des te groter de waarde van B-power variabel en daarom slaat de robot rechts af om meer witte kleur (de kleur van ons oppervlak) te vinden

-De output van onze tweede rekenblokje suiten we aan de tweede variabel (C-power), omdat:
 Als de B-power weinig of niet beweegt (  (78-78)*1=0  ) dan is de waarde van C-Power (78-8)*1=70
 Dus de C-Power krijgt de maximale vermogen om te bewegen.
-Hoe ver van de zwarte lijn (hoe groter de waarde van b) des te groter de waarde van C-Power en daarom slaat de robot links af om meer zwarte kleur te vinden.
 Bij een waarde van nul beweegt de C-power niet meer.
-Bij het benaderen van zwarte lijn wordt de waarde van a* steeds kleiner. Boven de zwarte lijn is de waarde van a*8 en de waarde van C-Power nul dus de C_power beweegt niet meer betekent niet meer naar links.

Als de waarde van B-Power gelijk is aan de waarde van C-Power dan beweegt de robot rechtdoor.

Opmerking:Als de waarde van C een is dan maakt onze robot heel veel schommelingen en om deze scommelingen te voorkomen of verminderen, moeten we de waarde van C verlagen bijvoorbeeld van 1 naar 0,4.

Voeg nu nog twee andere variabelen en laat hun de waarde van C-Power en B-Power lezen.
Pas de waarde aan  B-Power en c-Power .

 

 

 

Conclusie

In het begin hadden we nog geen idee waar we aan begonnen. Dankzij de bouwinstructies en programmering video’s hebben we verschillende functies van de robot uit kunnen proberen. De laatste opdracht die we uitmoesten voeren was de opdracht voor de line follower. Het duurde een tijdje voordat we erachter kwamen hoe we de robot de lijn goed konden laten volgen. Door middel van berekeningen en het gebruiken van andere blokjes in het programma dan in de video werd aangegeven lukte het ons de robot scherpe bochten te laten maken.

 

Opdracht uitgevoerd door:

Reyhan Sert(5VNT), Sofia Sakhi (5VNT), Nusaiba Tahari (5VNG)

12 – 02 – 2019

About

All demo content is for sample purposes only, to represent a live site.

Note: Galatea is built on the latest version of the Gantry 5 Framework.