Problemen oplossen met IQ-sensoren (1e generatie).

Wanneer uw robot zich niet gedraagt ​​zoals bedoeld tijdens het gebruik van sensorfeedback, kunt u een stapsgewijze probleemoplossingsprocedure volgen om uw problemen op te sporen en op te lossen. In dit artikel worden de stappen in een probleemoplossingsproces uitgelegd en worden tips gegeven voor het gebruik van deze stappen. 

De stappen van dit proces zijn:

  • Identificeer het probleem
  • Controleer de hardware
  • Software controleren
  • Gegevens analyseren en toepassen

Identificeer het probleem

De eerste stap bij het oplossen van problemen met uw sensor is vaststellen welke sensor het probleem veroorzaakt. Vergelijk het waargenomen robotgedrag met het beoogde robotgedrag. Wordt het problematische gedrag veroorzaakt door een sensor? Zo ja, welke sensor? Als u meer informatie nodig heeft om te bepalen welke sensor het probleem kan zijn, lees dan de onderstaande artikelen over de sensoren op uw robot.

VEX IQ (1e generatie) sensoren:

Zodra u heeft vastgesteld welke sensor het onbedoelde gedrag veroorzaakt, kunt u verder gaan in het proces.


Controleer hardware

De tweede stap is het controleren van de hardware op de robot om er zeker van te zijn dat de sensor kan functioneren zoals bedoeld. Elk van de volgende hardwareoverwegingen kan van invloed zijn op de functionaliteit van uw sensor.

Controleer de plaatsing van de sensor

Clawbot IQ is een robot die over een veld rijdt, met een pijl die vanaf een bevestigde kleurensensor naar een groene kubus voor de robot wijst.

Kijk eerst waar de sensor zich op uw robot bevindt. Wordt de sensor door iets geblokkeerd, zoals een ander onderdeel van uw robot? Zorg ervoor dat de sensor voldoende ruimte heeft om te functioneren zoals bedoeld.

Zoals hier weergegeven, heeft de kleurensensor een duidelijke zichtlijn naar het object dat hij moet detecteren.

Controleer sensorverbinding

Het Brain-scherm wordt weergegeven in het menu Instellingen, waarbij de optie Apparaatinfo is geselecteerd. Apparaatinfo is de tweede optie in de lijst, onder Systeeminfo.

Test de functionaliteit van de sensor door te kijken naar de gegevens die worden gerapporteerd in het Apparaatmenu op de VEX IQ (1e generatie) Brain. Dit kan u helpen te valideren dat de sensor is aangesloten en werkt.

Om toegang te krijgen tot het Apparaatmenu, volgt de stappen in dit artikel.

Schema van een (1e generatie) brein aangesloten op een slimme motor en een bumperschakelaar. De Bumper Switch wordt aangegeven met een pijl en is gemarkeerd met Sensor.

Zodra het scherm Apparaten is geopend, controleert u of de sensor gegevens rapporteert.

Als dit niet het geval is, zorg er dan voor dat uw sensoren correct zijn aangesloten. Wanneer u sensoren aansluit, hoort u een klik wanneer het vergrendelingslipje van de sensor volledig in een poort zit.

U kunt ook proberen de sensor die u gebruikt te vervangen door een andere om te zien of dit uw probleem oplost.

Als u iets heeft gewijzigd aan de plaatsing van uw sensor of de sensorverbinding, test dan uw project opnieuw om te zien of het probleem hiermee is opgelost. Als de plaatsing en aansluiting van uw sensor niet zijn gewijzigd, gaat u verder met de volgende stap om door te gaan met het probleemoplossingsproces.


Controleer software

Zodra u heeft vastgesteld dat de sensor met succes op de robot is geplaatst en aangesloten, kunt u vervolgens naar het VEXcode IQ-project kijken. Door een project te herhalen, kunt u ervoor zorgen dat de gegevens van de sensor effectief in uw project worden gebruikt. De volgende strategieën kunnen u helpen bij het coderen van uw sensor.

Als u een van deze strategieën toepast op uw VEXcode IQ-project, test dan uw project opnieuw om te zien of het probleem hiermee is opgelost.

Controleer firmware en configuratie

VEXcode IQ met een aangesloten Brain en het Brain-dropdownmenu geopend, wat aangeeft dat het gebruikt kan worden om de firmware van de Brain te controleren. De VEXos-versie wordt vermeld als 2.2.0 en rechts vindt u de knop Force Update.

Zorg er eerst voor dat de firmware van uw IQ Brain up-to-date is.

Zie dit artikel voor informatie over het updaten van de firmware op de VEX IQ (1e generatie) Brain.

VEXcode IQ Devices-menu met een lange lijst met aangesloten apparaten. Met behulp van dit menu kunt u controleren of elke sensor goed is aangesloten en welke specifieke poort deze op de Brain heeft.

Nu u er zeker van bent dat alle apparaten correct op de Brain zijn aangesloten, controleert u de apparaatconfiguratie in VEXcode IQ.

Controleer of alle sensoren aanwezig zijn in de configuratie. Controleer vervolgens of ze allemaal op de juiste poort zijn aangesloten.

Wijzig eventuele onjuiste apparaatconfiguraties.

Voer een voorbeeldproject uit

VEXcode Blocks Voorbeeldprojectenmenu met een verscheidenheid aan projecten in verschillende categorieën om uit te kiezen. De categorie 'Sensing' is gemarkeerd.

Open een voorbeeldproject dat gebruikmaakt van de sensor waarvoor u problemen oplost. Om voorbeeldprojecten te filteren kunt u de categorie 'Sensing' selecteren.

Voor meer informatie over IQ Blocks voorbeeldprojecten en sjablonen, dit artikel.

Voor meer informatie over IQ C++ voorbeeldprojecten en sjablonen, dit artikel.

VEXcode IQ met een voorbeeldproject geopend vanuit de categorie Sensing, inclusief een stapel codeblokken en een notitie met een beschrijving van het project. De notitie is gemarkeerd.

Eenmaal geopend, leest u de opmerking om te bepalen of de functionaliteit in het voorbeeldproject overeenkomt met wat u met de sensor probeert te doen.

In het hier getoonde voorbeeldproject geeft de opmerking aan dat dit project een voorbeeld biedt van hoe alle beschikbare afstandssensorcommando's met de robot kunnen worden gebruikt.

Voer het voorbeeldproject uit en observeer het robotgedrag. Kijk vervolgens naar het project om te zien hoe de sensorgegevens worden gebruikt om het waargenomen gedrag te veroorzaken. Mogelijk wilt u het voorbeeldproject meerdere keren uitvoeren om hierbij te helpen.

U kunt ook proberen uw eigen vereenvoudigde project te maken, zodat u op uw taak kunt toepassen wat u uit het voorbeeldproject hebt geleerd.

Gebruik andere VEXcode IQ-tools

Er zijn ook tools en strategieën die u kunt gebruiken om u te helpen terwijl u meer leert over het coderen van uw sensor in VEXcode IQ. U kunt afzonderlijk meer te weten komen over de blokken of opdrachten in de Toolbox door de Help te gebruiken. U kunt ook sensorgegevens bekijken terwijl een project loopt, om meer te weten te komen over wat de sensor rapporteert.

VEXcode IQ met het Help-menu geopend en het Drive-kopblok geselecteerd. Er worden beschrijvingen van het blok en hoe het gebruikt kan worden getoond, samen met afbeeldingen van voorbeeldgebruiken.

De hulp

Lees de Help voor de blokken of opdrachten in het voorbeeldproject of in uw project om meer te weten te komen over de gegevens die worden gebruikt, welke waarden de opdracht zal rapporteren en voorbeelden van hoe u de opdracht in een project kunt gebruiken.

Bekijk dit artikel voor meer informatie over toegang tot Help in VEXcode IQ Blocks.

Bekijk dit artikel voor meer informatie over toegang tot Help in VEXcode IQ C++.

Gegevens afdrukken

U kunt ook gegevens van de sensor afdrukken terwijl het voorbeeldproject of uw project loopt, zodat u beter begrijpt wat de sensor in realtime rapporteert. Dit kan u helpen bepalen welke gerapporteerde waarden van de sensor u als parameters in uw project moet gebruiken. 

Merk op dat in een Blocks-project een afzonderlijk {When started} hatblok kan worden gebruikt om alle afdrukopdrachten in hun eigen stapel te organiseren.

VEXcode IQ-blokken

VEXcode IQ blokkeert projecten die een When started-hatblok gebruiken om sensorgegevens live af te drukken terwijl het project loopt. Het project heeft een When started-blok gevolgd door 4 blokken in een Forever-lus. In de lus is er eerst een commentaarblok met de tekst: Druk de afstand tot een object af in de hersenen. Vervolgens leest een Print-blok print Distance7 afstand in mm op Brain en plaatst de cursor op de volgende rij. Vervolgens verschijnt een opmerkingenblok met de tekst Wacht tot de waarde is afgedrukt en herhaal de lus. Ten slotte is er een Wait-blok met de tekst wait 0,1 seconden.

Selecteer de afbeelding hierboven om te vergroten.

VEXcode IQ C++

int main() {
// Begin projectcode
// Verander de lettergrootte zodat deze op het scherm van de IQ (2e generatie) Brain past
Brain.Screen.setFont(mono12);

// Herhaal om alle waarden voor afstandsdetectie op het scherm af te drukken
while (true) {
// Wis het scherm en plaats de cursor in de linkerbovenhoek van het scherm
Brain.Screen.clearScreen();
Brain.Screen.setCursor(1, 1);
Brain.Screen.print("Gevonden object: %s", Distance.foundObject() ? "TRUE" : "FALSE");
Brain.Screen.newLine();

Brain.Screen.print("Afstand - mm: %.0f", Afstand.afstand(mm));
Brain.Screen.newLine();

Brain.Screen.print("Afstand - inches: %.0f", Afstand.afstand(inches));
Brain.Screen.newLine();

// Een korte vertraging zodat de tekst kan worden afgedrukt zonder vervorming of scheuren
wait(0,2, seconden);
}
}

Afdrukken naar IQ Brain is handig als u de waarden wilt zien veranderen terwijl een VEXcode IQ-project wordt uitgevoerd. Dit kan u helpen bepalen welke gerapporteerde waarden van de sensor u als parameters in uw project moet gebruiken. Deze printopdrachten kunnen worden ingebouwd in het VEXcode IQ-project dat u al hebt gemaakt, zodat u de sensorwaarden op specifieke tijdstippen kunt zien veranderen terwijl de robot beweegt. 

Deze voorbeeldprojecten hierboven laten zien hoe waarden van de afstandssensor naar de IQ Brain kunnen worden afgedrukt. In de opmerkingen bij elk project wordt de voortgang van het project en het gebruik van elke opdracht uitgelegd.

Het gebruik van het apparaatmenu op de IQ Brain is handig als u sensorwaarden wilt bekijken terwijl u de robot handmatig manipuleert. U kunt het Apparaatmenu openen zonder een VEXcode IQ-project uit te voeren en de waarden bekijken die door een sensor zijn gedetecteerd. 

Het Brain-scherm wordt weergegeven in het menu Instellingen, waarbij de optie Apparaatinfo is geselecteerd. Apparaatinfo is de tweede optie in de lijst, onder Systeeminfo.

Selecteer de X-knop om toegang te krijgen tot de Brain-instellingen, scrol omlaag naar Apparaatinfo en druk op het vinkje om het Apparaatmenu te openen.

Het hersenscherm wordt weergegeven in het apparaatmenu. In dit voorbeeld wordt de poort 3-kleurensensor weergegeven, met modus 3 voor Kleur, een kleurwaarde van Groen en een afstandswaarde van Dichtbij. Hieronder staat het bericht 'Druk op de knop Controleren om de modus te wijzigen'. Onderaan het scherm staan pictogrammen waarmee u met de pijltjesknoppen kunt scrollen en waarmee u met de X-knop het apparaatmenu kunt verlaten.

Gebruik in het Apparaatmenu de pijlknoppen om het apparaat te selecteren waarover u meer informatie wilt bekijken. In deze afbeelding is de kleursensor geselecteerd. dit artikel voor meer informatie over het bekijken van apparaatinformatie op de (1e generatie) hersenen.


Analyseer en pas gegevens toe

Gebruik vervolgens wat u in de voorgaande stappen hebt geleerd om uw oorspronkelijke project aan te passen. U kunt hulpmiddelen zoals de Help en afdrukgegevens blijven gebruiken, zodat u de sensor effectief kunt gebruiken om uw doel te bereiken.

U kunt ook vragen stellen over uw project om u verder te helpen. Denk aan zaken als:

  • Gebruikt u meer dan < of minder dan > in uw project? Staat het symbool in de goede richting? Als u 'gelijk aan =' gebruikt, probeer het dan te vervangen door groter dan of kleiner dan, om een ​​reeks waarden te gebruiken.
  • Zijn uw parameters correct? Gebruikt u de gegevens van de sensor om uw parameters in te stellen? Heeft u de vervolgkeuzelijst gekozen die u nodig heeft?
  • Controleert u de voorwaarden vaker? Probeer een Forever-lus aan uw project toe te voegen, zodat de voorwaarde herhaaldelijk wordt gecontroleerd wanneer het project wordt uitgevoerd.
  • Loopt uw ​​project vast? Zijn uw voorwaarden goed ingesteld? Als u geneste lussen gebruikt, probeer dan uw project te vereenvoudigen om individueel gedrag te isoleren.
  • Beïnvloeden uw omgevingsomstandigheden de sensor? Is het te licht of te donker? Staan er voorwerpen of mensen in de weg? Probeer uw project op een andere locatie uit te voeren om te zien of dat helpt.
  • Gebruikt u de meest recente versie van uw project? Heeft u uw bijgewerkte project naar de Brain gedownload? Zorg ervoor dat u het project elke keer dat u een wijziging aanbrengt, opnieuw downloadt.
  • Ontdekt u de juiste kleur? Rapporteert de sensor een andere kleur dan de kleur die u in uw project heeft? Probeer de kleurparameter te wijzigen.
  • Detecteer je een object binnen het gezichtsveld van de sensor? Bedenk dat het gezichtsveld meebeweegt met de beweging van de robot.
  • Maakt u gebruik van een wachtblok terwijl u een voorwaarde controleert? Zorg ervoor dat u niet-wachtende blokken in een project gebruikt bij het controleren op een voorwaarde. Bekijk dit artikel voor meer informatie over wachtende versus niet-wachtende blokken in VEXcode IQ.
  • Als u in blokken codeert, is uw hele stapel dan aan het blok met {When started} hoed gekoppeld? Blokken werken alleen als ze verbonden zijn. Je kunt luisteren naar een klikgeluid wanneer je blokken sleept en ze met elkaar verbindt.

Terwijl u deze vragen beantwoordt, moet u één ding tegelijk in uw project veranderen, het testen en vervolgens evalueren of die verandering effectief was. Door uw project regelmatig te testen, kunt u gemakkelijker zien hoe uw code verband houdt met het gedrag van de robot.  Mogelijk moet u de stappen in het probleemoplossingsproces meerdere keren herhalen om uw probleem op te lossen, en dat is prima. Elke iteratie helpt u meer te leren over de sensor die u gebruikt en hoe u deze codeert in VEXcode IQ.

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: