Inhoudsopgave:
- Benodigdheden
- Stap 1: Stap 1: Het circuit maken
- Stap 2: Stap 2: Programmeren voor de Boe-bot
- Stap 3: Stap 3: Aluminiumfolie en ijslollystokjes gebruiken voor draadbumpers
- Stap 4: Stap 4: De rest van de bumpers monteren
Video: Robotbumpers maken (met code): 4 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:17
Deze instructable leidt lezers door het maken en coderen van bumpers op een Boe-bot die door een doolhof kan navigeren en obstakels kan detecteren. De codering voor het project is gedaan met behulp van BASIC Stamp-programmeersoftware en de Boe-Bot-robot, en basiskennis van circuits en programmeren is vereist om deze bumpers te maken.
Benodigdheden
Om deze bumpers te maken, hebt u het volgende nodig:
- Boe-Bot-robot
- BASIC Stamp programmeersoftware
- Ijslollystokjes
- Een spons
- Aluminiumfolie
- Paperclips
- 8 behoorlijk lange draden (minstens 6 inch)
- 2 LED-lampjes
- 2 bruin-zwart-gele weerstanden
- 2 rood-rood-bruine weerstanden
- Tape en hete lijm (of een soortgelijke lijm)
- Batterijen voor je Boe-Bot
Stap 1: Stap 1: Het circuit maken
Volg het bovenstaande breadboard-diagram om een circuit te maken om uw breadboard te oriënteren en te bedienen. Aan het einde zou je breadboard er ongeveer zo uit moeten zien als de afbeelding aan de linkerkant.
Dingen om te onthouden:
- Zorg ervoor dat de LED in de juiste positie staat. Dit betekent dat het platte been van de LED aan de negatieve kant moet zitten en het andere been aan de positieve kant.
- De Vss dient als grond op dit breadboard, wat betekent dat deze de waarde nul heeft en de Vdd een waarde van 1.
- Een lopend circuit heeft een waarde van 0. Een circuit dat is uitgeschakeld heeft een waarde van 1.
Stap 2: Stap 2: Programmeren voor de Boe-bot
De volgende code programmeert de robot om 90 graden naar links en rechts te draaien op basis van op welke van de bumpers wordt gedrukt (meer details over het maken van bumpers in de volgende stap). Deze code zorgt ervoor dat de robot naar links draait wanneer de rechter bumperdraden worden ingedrukt, en naar rechts wanneer de linker bumperdraden worden ingedrukt.
Enkele basistaalvertalingen:
- GOSUB = subroutine (moet gevolgd worden door een vraag in de code)
- If.. Else = specificeert een groep code die moet worden uitgevoerd, als de voorwaarden waar zijn, en voert instructies uit als de voorwaarden onwaar zijn
De code:
' {$STAMP BS2}
' {$PBASIC 2.5} '***************************************** ******************************* 'Reset Herstart Code ' Gebruik de resetknop om de robot te stoppen en te starten '** ************************************************** ********************* temp VAR Byte 'tijdelijke opslag RunStatus DATA $00' variabele opgeslagen in ROM READ RunStatus, temp 'Lees de variabele uit ROM temp = ~ temp 'inverteer de waarde 0 naar 1 of 1 naar 0 SCHRIJF RunStatus, temp 'Schrijf de variabele terug naar ROM IF (temp>0) THEN END 'Controleer of de waarde 1 is' zo ja END het programma PAUSE 3000 'Pauzeer om toe te staan u om ' uw hand te bewegen wanneer u op reset drukt '**************************************** *********************************** '*************** ************************************************** *********** 'Pins AND Constants ' Gebruikt om het programmeren te vereenvoudigen '****************************** ***************************************** LMOTOR PIN 15 RMOTOR PIN 14 RFast CON 650 LFast CON 850 RSlow CON 700 LSlow CON 780 MStop CON 750 RFastRev CON 8 50 LFastRev CON 650 RSlowRev CON 800 LSlowRev CON 700 TurnLeft90 CON 90 TurnRight90 CON 90 '*********************************** ************************************ '********** ************************************************** *********** 'Variabelen ' Gebruikt om het programmeren te vereenvoudigen '**************************** ********************************************* MLoopC VAR Woord 'Voor'.. Volgende variabele tot 65000ish sideCount VAR Byte turnAngle VAR Word '**************************************** ************************************ '----------- -------------------------------------------------- ------------- 'Hoofd code '--------------------------------- ----------------------------------------- DO IF IN10 = 0 DAN 'Als de draad in pin 10 is aan, draai dan links GOSUB LeftTurn90 GOSUB LFastRev GOSUB RFastRev ELSEIF IN11 = 0 THEN 'Als de draad in pin 11 is aan, draai dan rechts GOSUB RightTurn90 GOSUB LFastRev GOSUB RFastRev ENDIF GOSUB ForwardFast 'Move- one pulse LOOP'- --------------------------------- ------------------------------------ '**EINDE HOOFDCODE****** ********************************************** '- -------------------------------------------------- --------------------- '**************************** ***************************************** '**Subroutines / Subprocedure / Methoden ******************************* '*********** ************************************************** ********** '**************************************** ******************************* '*************** ************************************************** ****** RightTurn90: ' Subprocedure om 90 graden naar rechts te draaien '*********************************** ************************************ HOOG 1 LAAG 0 VOOR MLoopC = 1 TOT 22 PULSOUT LMOTOR, Lfast 'beweeg één puls vooruit PULSOUT RMOTOR, RfastRev' met behulp van pinnen en constanten PAUZE 20 ' 20mS laat robot VOLGENDE ' bewegen voor VOLGENDE puls RETURN '******************** ************************************************** * LeftTurn90: ' Subprocedure om 90 graden naar rechts te draaien '** ************************************************** ******************** HOOG 0 LAAG 1 VOOR MLoopC = 1 TOT 22 PULSOUT LMOTOR, LfastRev 'ga één puls vooruit PULSOUT RMOTOR, Rfast' met behulp van pinnen en constanten PAUSE 20 ' Met 20 mS kan de robot VOLGENDE ' bewegen voor VOLGENDE puls TERUG '**************************************** ******************************* ForwardFast: ' Subprocedure om de robot een vierkant snel vooruit te bewegen '**** ************************************************** **************** VOOR MLoopC = 1 TOT 55 PULSOUT LMOTOR, LFast PULSOUT RMOTOR, RFast PAUZE 20 VOLGENDE TERUGKEER '*************** ************************************************** ****** ReverseTurnLeft: 'Subprocedure om de robot om te keren en naar links te draaien wanneer de rechterbumper wordt geraakt '****************************** ***************************************** VOOR MLoopC = 1 TOT 55 PULSOUT LMOTOR, LSlowRev PULSOUT RMOTOR, RFastRev PAUZE 20 VOLGENDE TERUG '**************************************** ******************************* ReverseTurnRight: 'Vervolgen' dwang om achteruit te rijden en de robot naar rechts te draaien wanneer de linkerbumper wordt geraakt '**************************************** *********************************** VOOR MLoopC = 1 TOT 55 PULSOUT LMOTOR, LFastRev PULSOUT RMOTOR, RSlowRev PAUZE 20 VOLGENDE RETURN '************************************************** ************************* 'EINDE SUBROUTINES' ******************** ************************************************** *
Stap 3: Stap 3: Aluminiumfolie en ijslollystokjes gebruiken voor draadbumpers
Voordat u met deze stap begint, moet u ervoor zorgen dat de 4 draden van het breadboard (zie stap 1) in paren zijn verdeeld, waarbij elk paar een rechter- of linkerbumper bedient. LED's functioneren in deze situatie om te controleren of de code van kracht was op de rechter- en linkerbumpers. Op de ijslollystokjes deelt één draad van elk paar een uiteinde van de ijslollystok (dit betekent dat draden van hetzelfde paar NIET op dezelfde bumper kunnen zitten).
Knip 4 kleine rechthoeken van folie en gebruik een om de draad om elk uiteinde van twee ijslollystokjes te wikkelen. Dit vergroot het geleidende oppervlak van de ijslollystok en zorgt voor een groter oppervlak voor de stokjes om aan te raken.
Om de folie en draden aan de ijslollystokjes te houden, gebruikt u 1-2 paperclips om de materialen bij elkaar te houden. De paperclips bieden ook meer toegankelijkheid voor de ijslollystokjes om aan te raken zonder veel externe interferentie. Schuif de paperclip over het ijslollystokje zoals je zou doen met een normale stapel papier. Herhaal dit voor alle vier de stukken folie en elk uiteinde van de twee ijslollystokjes.
Stap 4: Stap 4: De rest van de bumpers monteren
Zodra de aluminiumfolie en paperclips in staat zijn om de draden aan elk ijslollystokje vast te houden, snijdt u twee kleine blokjes spons en lijmt u elk blokje tussen de stokjes (aan de uiteinden van elk stokje zodat de hete lijm niet interfereert met de geleidbaarheid van het metaal De sponzen zorgen ervoor dat de bumpers elkaar raken telkens wanneer de robot een muur raakt.
Optioneel: Knip een extra ijsstokje doormidden en lijm deze schuin op de punt van de buitenste ijsstokje bumper. Dit versterkt de impact van de bumper die een muur raakt en draait.
Denk aan het buigen van de draden zodat de bumpers recht voor de Bot-bot naar buiten buigen.
Aanbevolen:
Verbinding maken met API's zonder code: 8 stappen
Verbinding maken met API's zonder code: deze handleiding is bedoeld voor mensen die iets willen bereiken waarvoor een API nodig is, maar niet helemaal zeker weten hoe ze moeten beginnen. Je weet al waarom het handig is om met een API te werken, en deze gids laat je zien hoe je dat moet doen
Een rekenmachine maken met C-code: 14 stappen
Een rekenmachine maken met behulp van C-code: Welkom bij wat waarschijnlijk uw eerste code ooit zal zijn, u zult een eenvoudig programma schrijven dat een eenvoudige rekenmachine maakt met behulp van de programmeertaal "C". Opmerking: als afbeeldingen te ver of te dichtbij zijn, klikt u erop om de volledige afbeelding te bekijken
Robotbumpers: 6 stappen
Robotbumpers: dit is een ontwerp dat ik heb gemaakt voor een robot om te detecteren wanneer hij tegen een oppervlak botst. De basisstempelcode wordt nog uitgevoerd
Een Bluetooth-adapter Pt.2 maken (een compatibele luidspreker maken): 16 stappen
Een Bluetooth-adapter Pt.2 maken (een compatibele luidspreker maken): in deze instructie laat ik u zien hoe u mijn Bluetooth-adapter kunt gebruiken om een oude luidspreker Bluetooth-compatibel te maken. * Als u mijn eerste instructie over "Maken nog niet hebt gelezen een Bluetooth-adapter" Ik raad u aan dit te doen voordat u doorgaat.C
Een video met gesplitst scherm maken in vier stappen: 4 stappen (met afbeeldingen)
Een video met gesplitst scherm maken in vier stappen: we zien vaak dezelfde persoon twee keer in een scène in een tv-toneelstuk. En voor zover we weten heeft de acteur geen tweelingbroer. We hebben ook gezien dat er twee zangvideo's op één scherm worden gezet om hun zangkunsten te vergelijken. Dit is de kracht van spl