Projecten/Dobot AI starter robots: verschil tussen versies

Uit Hackerspace Drenthe WIKI
Regel 16: Regel 16:
Uitlezen van knop A en B kan gewoon met een digitalRead:
Uitlezen van knop A en B kan gewoon met een digitalRead:
  digitalRead(PINSW1)
  digitalRead(PINSW1)
(Knop A = PINSW1 en knop B = PINSW2)
Als de knop word ingedrukt geeft hij een 0 en in rust toestand een 1.


=== Leds ===
=== Leds ===

Versie van 23 okt 2022 11:26

Intro

De AI robots kunnen rondrijden en bevatten een aantal sensoren.

Met behulp van de sensoren kunnen ze lijnen volgen, obstakels detecteren en kleuren herkennen.

Intern heeft de robot een DuDuino Mega2560 (Compatiable with Arduino Mega2560)

Achterkant

Knoppen

Vier knoppen aan de achterkant, van links naar rechts:

  • Knop A, B: Deze knoppen zijn uit te lezen door het programma en kunnen van alles doen.
  • Knop C: Word gebruikt om het programma te starten of pauzeren.
  • PWR: Aan/uit

Uitlezen van knop A en B kan gewoon met een digitalRead:

digitalRead(PINSW1)

(Knop A = PINSW1 en knop B = PINSW2)

Als de knop word ingedrukt geeft hij een 0 en in rust toestand een 1.

Leds

  • Linker en rechter blauwe led: Bepaald door het programma, kunnen van alles doen.
  • 2 rode leds naast elkaar bij de USB poort:
    • links: Brand als batterij bijna leeg is. (deze word aangestuurd via SmartBot.cpp)
    • rechts: Brand als hij aan het laden is.

(De vier kleine leds binnen in geven waarschijnlijk ook de laadstatus aan.)


De blauwe leds aansturen kan als volgt:

AIStarter_SmartBotSetLED(LED1, OFF);
AIStarter_SmartBotSetLED(LED2, ON);

De waarde kan ON, OFF en BLINK zijn.

USB

Opladen en programmeren gaat via de USB aansluiting.

Voorkant, onder

Voor aan de onderkant vind je de lijn-volg sensoren.

Controleer of de sensor goed werkt:

  • Boven wit papier is het lampje aan.
  • Boven een zwarte lijn is het lampje uit.

Als ze niet goed reageren kun je ze afstellen met een kleine schroevendraaier op de blauwe potmeters.

Uitlezen kan met:

AIStarter_SmartBotGetIRModuleValue(IR1)

Voor IR1 t/m IR6.

Een IRsensor geeft 1 bij de kleur zwart en 0 bij wit.

Voorkant

Aan de voorkant bevinden zich ultrasone sensoren. Totaal 3 stuks: Links, Midden en Rechts.

De ultrasone sensoren zenden een hoge geluids puls uit en kijken hoe lang het duurt voordat deze puls terug is.

Het ene ronde ding is de luidspreker, de andere de microfoon.

De maximale meet afstand is meer dan 20cm.

Uitlezen kan met:

AIStarter_SmartBotGetSonar(SONAR1)  

(Links, midden, rechts is SONAR1, SONAR2, SONAR3.

De uitgelezen waarde geeft de afstand in cm aan.

Onderkant

Aan de onderkant bevinden zich 2 kleuren sensoren.

Deze sensoren kunnen een kleur herkennen als de robot er over heen rijdt.

Uitlezen gaat als volgt:

  char buffer[100];

  //start meting, witte leds gaan aan:
  AIStarter_ColorFlash();
  
  //wacht tot meting klaar is
  while (!AIStarter_ColorIsReady())
    delay(250);

  sprintf(buffer,
          "Kleuren     : L=(%3d,%3d,%3d)  R=(%3d,%3d,%3d) ",
          AIStarter_SmartBotGetColorSenor(COLORSENOR1, RCOLOR),
          AIStarter_SmartBotGetColorSenor(COLORSENOR1, GCOLOR),
          AIStarter_SmartBotGetColorSenor(COLORSENOR1, BCOLOR),
          AIStarter_SmartBotGetColorSenor(COLORSENOR2, RCOLOR),
          AIStarter_SmartBotGetColorSenor(COLORSENOR2, GCOLOR),
          AIStarter_SmartBotGetColorSenor(COLORSENOR2, BCOLOR));

  Serial.println(buffer);


Bovenkant

Aan de bovenkant bevind zich binnenin nog een ronde licht sensor. De kan bijvoorbeeld gebruikt worden om te detecteren of er iets op de robot ligt.

Uitlezen kan met:

AIStarter_SmartBotGetLightAnalog()

Hoe meer licht hoe lager de waarde. Bereik loopt van 0 tot 1024.

Software

Originele software en handleiding is erg lastig te vinden op de originele site, en je bent een account nodig.

Dus hebben we ze hier neergezet: https://github.com/Hackerspace-drenthe/dobot-ai-starter/tree/master/originals