Inhoudsopgave:

De Securibot: een kleine bewakingsdrone voor huisbeveiliging - Ajarnpa
De Securibot: een kleine bewakingsdrone voor huisbeveiliging - Ajarnpa

Video: De Securibot: een kleine bewakingsdrone voor huisbeveiliging - Ajarnpa

Video: De Securibot: een kleine bewakingsdrone voor huisbeveiliging - Ajarnpa
Video: SCP-4730 Earth, Crucified | objectklasse keter | extradimensionale scp 2024, Juli-
Anonim
De Securibot: een kleine bewakingsdrone voor huisbeveiliging
De Securibot: een kleine bewakingsdrone voor huisbeveiliging

Het is een simpel feit dat robots geweldig zijn. Beveiligingsrobots zijn echter vaak veel te duur voor een gemiddelde persoon om te betalen of zijn wettelijk onmogelijk te kopen; Particuliere bedrijven en het leger hebben de neiging om dergelijke apparaten voor zichzelf te houden, en terecht. Maar wat als u echt een persoonlijke beveiligingsrobot wilt hebben?

Betreed de Securibot: een kleine robot met vierwielaandrijving die kan patrouilleren waar u maar wilt en informatie terugkoppelt met een breed scala aan sensoren. Het is klein, robuust en goedkoop, en vereist slechts minimale kennis van bedrading en programmering om te creëren.

Stap 1: Materialen verzamelen

De volgende materialen zijn vereist. Dit zijn onderdelen die moeten worden gekocht en verbruikt voor het eindproduct, en daarom kan het verstandig zijn om extra back-upmateriaal te hebben voor het geval er zich een ongeluk voordoet. Klik gewoon op een onderdeel om een nieuw tabblad te openen als je het moet kopen!

STROOMBEHEER

  • 9-volt batterij 4-pack x1
  • AA-batterij 8-pack x1
  • 4-slot AA-batterijhouder x1
  • Mannelijke/Mannelijke Jumper Draden x1
  • Mannelijke/vrouwelijke doorverbindingsdraden x1
  • Vrouwelijke/vrouwelijke verbindingsdraden x1
  • Mini Breadboard x1"
  • 1k Weerstand x1
  • 2k Weerstand x1
  • Rood/Zwart Stroomkabels x1
  • Tuimelschakelaar x2

HARDWARE EN SENSOREN

  • Arduino Uno Rev3 x1
  • ESP8266 wifi-module met NodeMCU x
  • HCSR04 Ultrasone sensor x1
  • PIR Bewegingssensor x1
  • Motorkaart x1

CHASSIS

Makerfire Robot Smart Car Kit x1

AANVULLENDE MATERIALEN*

  • Soldaat ijzer en soldeer
  • Draadstrippers
  • Draadsnijders
  • 8 "Acryl
  • Lasersnijder
  • Elektrische tape
  • Zipties
  • Kleine schroeven en moeren

*Deze materialen zijn niet vereist, maar voegen zeker een extra laag organisatie en bescherming toe. Omdat ze optioneel zijn, zijn ze vaker te vinden in bouwmarkten, en lasersnijders zijn een serieuzere overweging om te kopen in plaats van er gewoon een te huren of onderdelen te laten verzenden.

Stap 2: Programmeren en plannen

Programmeren en plannen
Programmeren en plannen

De Securibot is een vrij complex apparaat in termen van bedrading en programmering dat in eerste instantie misschien intimiderend lijkt, maar als het in kleine stappen wordt gedaan, kan het gemakkelijker worden gemaakt. Hieronder vindt u een diagram dat het volledige bedradingsschema toont. Ook al is dit hier nu, het zou onverstandig zijn om alles te bedraden, aangezien dit hele mechanisme aan de robot zal worden bevestigd. Dit is gewoon hier om een beter begrip te krijgen van hoe het apparaat op papier is ingesteld.

Om de robot te programmeren, gebruiken we twee verschillende talen: Python en C/C++. Het is ook belangrijk om te begrijpen dat dit het beste kan als het op MacOS is geprogrammeerd.

Voordat we beginnen, bevestigt u de NodeMCU fysiek aan het motorbord. U kunt dit doen door de kleine kronkel aan de onderkant met elkaar uit te lijnen. ZET HET NIET ACHTERWAARTS OF HET ZAL FRAAIEN!

Nadat u de NodeMCU + Motorboard op een computer hebt aangesloten, opent u een terminalvenster en begint u deze regels te schrijven, waarbij u negeert om iets na een # te typen.

ls /dev/tty.* #Vindt de poort waarop de NodeMCU luistert.

scherm ls/dev/tty. 115200

#hierna druk je op enter totdat je >>> ziet en typ je het volgende:

netwerk importeren

sta = netwerk. WLAN(netwerk. STA_IF)

ap = netwerk. WLAN(netwerk. AP_IF)

ap.actief (waar)

sta.actief(False)

Als je dit correct hebt geprogrammeerd, zou je nu een verbinding voor MicroPython-xxxxxx (de nummers zullen verschillen op basis van de gebruikte ESP8266) in je wifi moeten zien. Maak er verbinding mee, het wachtwoord ervoor is micropythoN (precies zoals geschreven)

Ga nu naar https://micropython.org/webrepl/ en druk op "Verbinden". WIJZIG HET IP NIET. De standaard die wordt gegeven, is wat nodig is. U moet worden gevraagd om een wachtwoord in te voeren; Voer eenvoudig het wachtwoord in.

Daarna moeten we alle code verkrijgen die wordt gebruikt voor de besturing van de motoren van de robot. Download in deze github-repository crimsonbot.py. U kunt indien nodig andere dingen downloaden voor toekomstig gebruik. Nu kunnen we beginnen met programmeren, maar dat is misschien te moeilijk, dus in plaats daarvan hebben we hier een andere repository gemaakt. Pak demo.py en plaats het op dezelfde locatie als crimsonbot.py.

Ga terug naar de webrepl en maak opnieuw verbinding. Druk op "Verbinden" en log opnieuw in met wachtwoord. Klik aan de rechterkant op "Bestand kiezen" en zoek waar u demo.py plaatst. Nadat u demo.py hebt geselecteerd, verzendt u deze door op "Verzenden naar apparaat" te drukken. Als je het goed hebt gedaan, zou je import demo moeten kunnen typen en geen foutmelding krijgen. Gefeliciteerd, je hebt alle software ingesteld voor besturing. Nu is het tijd om dit in de robot zelf te monteren.

Stap 3: De basis opbouwen

Nu we het primaire deel van de software hebben ingericht, kunnen we aan de hardware werken. Open het pakket voor het Makerfire-chassis van de robot en monteer het volgens de instructies in de meegeleverde handleiding. Opgemerkt moet worden dat de draden niet gesoldeerd zijn, dus wees voorzichtig zoals altijd wanneer u ermee werkt. Zodra je de hele robot hebt gemonteerd volgens de meegeleverde handleiding, hoeven we de bovenkant er voorlopig niet op te hebben, dus je kunt die assistent voor nu zetten.

Als we de bovenkant eraf halen, kunnen we nu wat dingen bevestigen. Pak een lijm naar keuze en plaats het motorbord en twee 9V-batterijen voor het blauwe gedeelte op het bord. Het spreekt voor zich, maar u kunt hiervoor wel de Motor Board losmaken.

Gebruik gesoldeerde draden of krokodillenklemmen om de twee 9V-batterijen in serie te bevestigen, voor ongeveer 18V stroom. Neem nu het ene uiteinde daarvan en sluit het aan op een tuimelschakelaar. Je zou nu een negatief/positief uiteinde aan de rocker moeten hebben en een eenvoudig aan één uiteinde. Verwijder bij draadstrippers een beetje van de rood/zwarte voedingskabel om een deel van het koper te onthullen. Je kunt ze nu in het Motorboard op het blauwe gedeelte plaatsen door ze erin te steken. Gebruik een kleine kruiskopschroevendraaier om ze omhoog en omlaag te brengen om ze goed vast te zetten. De rode draad wordt bevestigd aan het stopcontact met de naam VIN en de aarde wordt bevestigd aan het stopcontact met de naam GND.

Nu is het moeilijkste deel van de bedrading. Het is waarschijnlijk het moeilijkste deel omdat het erg ingewikkeld is. Gebruik de uiteinden van de motoren en sluit deze op de volgende manier aan:

De twee zwarte draden aan de linkerkant naar uitgang A-

De twee rode draden aan de linkerkant naar uitgang A+

De twee zwarte draden rechts naar uitgang B-

De twee rode draden rechts naar uitgang B+

Elektriciteitstape en kabelbinders zijn erg handig om de dradenparen bij elkaar te houden. Nu dat gemonteerd is, kunnen we testen of de motoren goed werken.

Log in en volg alle onderdelen in stap 1 vanaf het starten van webrepl tot het laden van demo.py. Nadat u de importdemo hebt ingetypt, typt u een van de volgende opdrachten:

demo.demo_fb() #Laat de robot vooruit en achteruit gaan.

demo.demo_rot() #Laat de robot draaien.

Deze zullen evalueren of je vooruit kunt gaan en kunt draaien. Als ze allebei werken zoals bedoeld, dan fantastisch! Als dat niet het geval is, controleer dan nogmaals uw bedrading en zorg ervoor dat uw batterijen volledig zijn opgeladen. Bijgevoegd is een kleine video van het demo_fb() programma en hoe het de wielen aanstuurt als voorbeeld. Merk op dat deze niet volledig worden gevoed, dus we moeten er met behulp van een multimeter voor zorgen of het vermogen voldoende is voor de vier motoren.

Stap 4: Een gevoel voor dingen kleuren

Nu we hebben vastgesteld dat onze bot kan bewegen, is het eindelijk tijd om te beginnen met de automatisering van de robot.

Net zoals een bewaker de taak heeft om een gebied voor een bepaalde periode te patrouilleren, is de robot geprogrammeerd met behulp van de code in demo.py om een gebied te patrouilleren door een zwarte lijn te volgen. De beste kandidaat voor deze lijn is zwarte elektrische tape.

Gebruik drie vrouwelijke/vrouwelijke jumperdraden en sluit deze aan op de volgende pinnen op een van de kleurensensoren: VCC (voeding), GND (aarde) en DAT (gegevens). Verbind de andere uiteinden met behulp van eventuele pinnen van rij 2-8 op de motorkaart voor de volgende aansluitingen:

VCC => V

GND => G

DAT => D

Merk op dat deze allemaal in dezelfde rij moeten staan om te kunnen functioneren. De rijen zijn gelabeld aan de zijkant van het motorbord. Herhaal dit twee keer voor een tweede sensor en monteer ze aan de voorkant met wat extra afstandhouders of wat je maar wilt. Houd er rekening mee dat de kleursensoren zeer dicht bij de grond moeten zijn. Als ze niet dichtbij genoeg zijn, zullen ze niet goed functioneren. Zorg ervoor dat u ze ook symmetrisch aan weerszijden monteert voor het beoogde effect.

Ga terug naar de webrepl, stuur demo.py en importeer het nogmaals. Leg het daarna op een niet-zwart oppervlak en breng een meter of twee een lijn zwarte elektrische tape in kaart. Leg de robot neer met de lijn tussen de twee sensoren. Typ de volgende opdrachten na het inschakelen:

demo.setup()

demo.loop()

De Securibot moet nu de lijn volgen en zichzelf corrigeren wanneer de kleurensensor wordt geactiveerd. De code werkt door te detecteren welke waarde normaal is, dat wil zeggen niet zwart gekleurd, en wanneer die waarde als anders wordt ervaren, corrigeert deze zichzelf. Merk op dat, aangezien het programma bedoeld is om voor onbepaalde tijd te draaien, de enige manier om de robot te stoppen is door hem uit te schakelen. Test op deze manier een paar keer, en als je echt durft, probeer dan wat bochten en bochten te maken.

Stap 5: Klinkt uit

Klinkt uit
Klinkt uit

Het bovenstaande diagram laat zien hoe de ultrasone sensor wordt opgesteld. De sensor werkt door een ultrasone geluidspuls uit te zenden, hoger dan enig mens kan horen, en te berekenen hoe lang het duurt voordat het wordt teruggekaatst. Dit is waar de mannelijke / vrouwelijke tabbladen naast de 1k- en 2k-weerstanden zullen schijnen.

Op dit moment zal onroerend goed moeilijk te beheren zijn, dus het zou een goed moment zijn om de bovenkant van de auto er weer op te bevestigen. Houd er echter rekening mee dat de grijze TRIG-draad en de witte ECHO-draad moeten worden aangesloten op twee afzonderlijke D-pinnen op de motorkaart eronder, dus sluip ze en bevestig ze. Als je het breadboard in het materiaalgedeelte hebt gekocht, heeft het een zelfklevende onderkant die kan worden gebruikt door het papier gewoon weg te pellen. Bevestig dat aan de voorkant van de auto en bevestig vervolgens het batterijpakket met de gewenste lijm aan de achterkant van de auto.

Opgemerkt moet worden dat de koperdraden die bij het AA-batterijpakket worden geleverd geen vrouwelijke uiteinden hebben, dus u moet de draad verwijderen voordat u ze in het breadboard plaatst.

De code voor de ultrasone sensor is iets complexer, maar is nog steeds toegankelijk vanuit deze github-repo. Download HCSR04.py en motion_control.py en bewaar ze op dezelfde locatie. Hiermee kunt u de afstand tussen de sensor en elk object detecteren. Het bereik van de ultrasoon is ongeveer twee tot drie meter.

Stap 6: Hittehandtekeningen

Hittehandtekeningen
Hittehandtekeningen

Nu we de andere onderdelen hebben gemonteerd, kunnen we ons concentreren op het gebruik van de Arduino Uno met de passieve infraroodsensor (PIR) om thermische beweging te detecteren.

Zorg er allereerst voor dat u de nieuwste IDE voor Arduino downloadt. Sluit de benodigde kabel van uw USB-uitgang aan op de Uno. Mogelijk moet u hiervoor de beveiligingsvragen bevestigen, zeg "Ja" tegen iedereen. Zorg ervoor dat het dit herkent door te controleren onder Tools > Board > Arduino/Genuino Uno en Tools > Port > dev/cu. Bluetooth-Incoming-Port. Zodra deze zijn opgevoerd, gaat u naar Tools > Board Info ophalen en kijkt u of de boardinformatie verschijnt.

Nu kunnen we de code terug gebruiken op de goede oude github-repo om thermische beweging te detecteren. Download het.ino-bestand in de repository en open het met de Arduino IDE. Klik op "Verifiëren" om de code te compileren en duw deze naar de Uno met de knop ernaast.

Nu moeten we de Arduino Uno fysiek bedraden. Volg hiervoor het bovenstaande diagram en gebruik bij het bevestigen van de PIR aan de auto wat superlijm om het bovenop de ultrasone sensor te bevestigen. Eventuele lijm zal door de extra 9V, schakelaar en Uno te bevestigen.

Stap 7: Samenkomen

Nu alles op zijn plaats is, laadt u alle code op de respectieve borden. Als je klaar bent en demo.loop() hebt uitgevoerd, kan de robot zwarte lijnen volgen en moeten de sensoren gegevens invoeren in hun respectieve terminalvensters. Gefeliciteerd, je hebt nu je eigen persoonlijke Securibot!

Als u de logistiek van de robot wilt leren, dan is dit gedeelte aanvullend materiaal over hoe de software werkt. In wezen zal de robot de lijn in een lus blijven volgen en de ultrasone en passieve infraroodsensoren zullen de afstand en beweging van objecten direct voor de auto weergeven.

Als u er meer protocollen aan wilt toevoegen, vindt u hier aanvullende bronnen die u kunt gebruiken om ervoor te zorgen dat de auto betere software of hardware heeft. Omdat de Securibot een beetje standaard is, dient hij als een platform om naar hartenlust aan te passen. Ontwerp lasergesneden bepantsering, geavanceerde detectieprogramma's, voeg spikes toe om je eigen gevechtsrobot te maken; Het potentieel is onbeperkt met wat u kunt doen met de Securibot!

Als je meer acrylpantser wilt toevoegen om het chassis er mooier uit te laten zien, hebben we ze al in de github-repository gemaakt als.pdf's die op een lasersnijder kunnen worden geladen. De bestanden zijn armor-side.pdf, front-back-plates-fixed.pdf en hinge-fix.pdf. Ga voor meer tutorials over lasersnijden naar https://www.troteclaser.com/en/knowledge/do-it-yourself-samples/ voor meer snijprojecten.

Aanbevolen: