» Elektronica » Arduino »Zelfgemaakte Homing Fan

Zelfgemaakte Homing Fan

Groetjes de bewoners van onze site!
Het wordt een beetje heet, zomer en zo. Ik heb een Chinese ventilator op mijn bureau, maar ik werk aan verschillende kanten van mijn nieuwe grote bureau, en de ventilator waait bijna altijd voorbij, en elke keer omdraaien is op de een of andere manier triest. Dus vandaag gaan we een fan doen met automatisch richten op het doel.

We moeten dus de positie van het doel volgen, rekening houdend met de situatie op de tafel, zodat de ventilator niet op andere objecten richt. In het ideale geval zou je natuurlijk een Raspberry Pi-minicomputer met een camera kunnen nemen en een bibliotheek voor machinevisie gebruiken om bewegingen of een helder T-shirt te herkennen.

Maar dit is een nogal moeilijke taak en het bord zelf kost meer dan 10 keer duurder dan het platform arduino, die de camera niet aankan. Maar naast de camera zijn er nog andere manieren om het doel te bepalen, bijvoorbeeld een centrische ultrasone afstandssensor.

Een keer kwam ik op internet een interessant project "radar" tegen gebaseerd op arduino en deze sensor. Het project zelf is vrij nutteloos, maar het idee zelf is geweldig - de afstandssensor roteren en de ruimte scannen, gebonden aan de rotatiehoek.

Laten we dit project voor de lol herhalen, en dan gaan we verder.
Dit betekent dat de sensor moet worden gedraaid, hiervoor wordt de gebruikelijke servo van het model gebruikt (wie weet niet, de servo is een motor met een versnellingsbak en feedback naar de hoek, dat wil zeggen, we kunnen hem de rotatiehoek instellen en deze zal inschakelen).

Laten we niet slim zijn en de sensor gewoon bevestigen met de ring uit de fietskamer.

We monteren het circuit op een breadboard.

Dat is alles, het blijft om de firmware in Arduino te downloaden. Deze versie gebruikt een snellere bibliotheek.


Je kunt de bronnen downloaden op de projectpagina, de link vind je in de beschrijving onder de video. Daar vindt u alle gedetailleerde instructies, met name een enorm artikel voor degenen die de arduino voor het eerst hebben opgehaald. Over het algemeen laden we de firmware in het bord en komt onze radar tot leven. Nu moet je op de computer een programma uitvoeren dat gegevens van de radar zal ontvangen (het staat ook in de projectmap, maar je hebt een verwerkingsomgeving nodig om het te starten, je kunt het downloaden op de officiële website).

We starten het, en hier hoeft u slechts één moment te configureren - het poortnummer waarmee de arduino is verbonden. Dit is hetzelfde nummer dat is geselecteerd in het arduino ide-programma, alleen moeten we het handmatig invoeren.

We beginnen.


Dat is alles, onze radar werkt geweldig en geeft de afstand tot de gevonden obstakels weer. Zoals je kunt zien, werkt het met voldoende nauwkeurigheid om niet alleen een groot doelwit in de vorm van een persoon of een hoofd te detecteren, maar het gaat ook om met alle kleine dingen die een heel veld kunnen worden voor interessante experimenten. Dus terwijl iedereen plezier heeft met frambozen pi, besloot ik mezelf uit te dagen en een letterlijk blind systeem te leren om het doelwit te herkennen en ernaar te streven. Dit wordt een geweldig eenvoudig project dat zelfs met behulp van de Arduino-starterkit kan worden herhaald. Laten we het doen en nadenken over het algoritme van werk.

De mogelijkheden van het systeem zijn dus vrijwel beperkt. We krijgen alleen de afstand tot de radar, maar we weten met welke hoek elke dimensie overeenkomt. Het eerste dat in je opkomt is het bouwen van een werkruimtekaart. Dat wil zeggen, we maken één doorgang en onthouden onder welke hoek welke afstand was. Nu kunnen we in volgende passen het verschil voor elke hoek vinden volgens onze kaart. En zo kunnen we een nieuw object zien dat opvalt tegen de achtergrond van reeds bekende waarden. Nu moet je het systeem leren om doelen te definiëren. Laten we deze optie proberen: we zullen kijken naar het aantal onderscheiden punten die zich achter elkaar bevinden, dat wil zeggen dat dit in het leven een bepaald gebied is dat de radar scant.

We zullen het doel overwegen - het gebied is groter dan een bepaalde grootte. Dit filtert onmiddellijk alle meetruis uit. Ik stel ook voor om het systeem meerdere fouten te vergeven bij het scannen van één gebied, omdat de ultrasone sensor niet perfect is.


De radar kan een groot gebied herkennen, dat wil zeggen dat hij de hoek van het begin van dit gebied en de hoek van zijn uiteinde in zijn coördinatensysteem kent. Het blijft alleen om het midden van dit gebied te berekenen en de radar daarheen te richten en hem niet langer te laten bewegen. Dit zal een hold-modus zijn.
We blijven de afstand meten en als het gemeten punt plotseling het zichtbereik van de radar verlaat, zullen we na een tijdje weer overschakelen naar de doelzoekmodus. Dat is alles wat het niet begreep, de computer is hier niet meer nodig, arduino doet alles zelf. Het volstaat alleen om hem van stroom te voorzien via een 5 volt voeding. De firmware staat in de projectmap, er zijn een heleboel instellingen waarmee je kunt spelen en alles zelf kunt configureren.
Dus we starten het systeem. Ten eerste gaat de kalibratie van rand tot rand. Het systeem onthoudt de afstand in de kalibratie-array in zijn coördinatensysteem. Dan begint het werk onmiddellijk, we scannen het gebied, als we het doelwit opmerken, vinden we de hoekgrootte en het doel in het midden. Het werkt als een klok en is bijna op het midden van het doel gericht.

Trouwens, alle vertragingen zijn configureerbaar, in het bijzonder de tijd tussen het verlies van doelen en het begin van een nieuwe scan, anders zul je ook denken dat het systeem vertraagt ​​- zoiets niet, je stelt het gewoon in. Over het algemeen zijn de hersenen voor de ventilator klaar, laten we ijzer verzamelen.



Deze ventilator is ongeveer 5 jaar geleden door AliExpress gekocht. Het is compact, wordt gevoed via USB en is geweldig voor dit project. U kunt ook zoeken naar een usb-ventilator in vaste prijs of in huishoudelijke artikelen.

Laten we deze ventilator eens bekijken en kijken of er vrije ruimte in zijn koffer zit die kan worden gepropt met zijn eigen elektronica.

Arduino nano past hier helaas niet, maar er is een arduino pro mini, hetzelfde, maar kleiner en zonder programmeur aan boord, maar hij past perfect.


En waarom niet de stroom naar de ventilator regelen met de Arduino en de native knop weggooien? Er is niet genoeg ruimte, het relais past niet, dus we zullen een veldeffecttransistor gebruiken.


Hij heeft nog steeds twee weerstanden nodig van 100 ohm en 10 kOhm. We verwijderen de knop volledig zodat deze niet interfereert. Het aansluitschema ziet er als volgt uit:

Laten we de afstandsmeter verbinden met een kabel van de harde schijf.

We hebben ook een condensator in het circuit, het is niet nodig, maar zeer wenselijk, omdat de servo-aandrijving vrij merkbare stroompieken geeft voor usb, en dit kan afstandsmetingen beïnvloeden.

Om firmware in pro mini te downloaden, heb je een externe programmeur nodig, het kost de Chinezen als een blikje bier en verbindt als volgt:

Je hoeft verder niets te doen, klik op de downloadknop en de firmware laadt zoals gewoonlijk in het nano-board.De behuizing sluit en alle draden komen uit de gaten van de schakelaar.

Vervolgens moet je de servo repareren. Er werd besloten om de ventilator op een plank te hangen en de servo aan een hoek te bevestigen.



Om te voorkomen dat de hoek gaat draaien, gebruiken we dubbelzijdige tape, maar het elastiek van de fietscamera zou beter zijn.

De ruimte voor de sensor moet iets worden vergroot. Bevestig het op de schroeven die bij de servo zijn geleverd.
De laatste hand, alles, zet aan en wacht tot de kalibratie is geslaagd en geniet van de homing-fan.


Heel grappig bleek. Het was oorspronkelijk ontworpen als een mock-up, maar dankzij de Chinezen en een groot leeg compartiment in de ventilator was het mogelijk om een ​​afgewerkt apparaat te maken met bijna geen uitstekende draden en snot, wat erg prettig was. Trouwens, als de ventilator het doel enige tijd niet kan vinden, stijgt het in het midden en wordt uitgeschakeld. Om het in te schakelen, hoeft u alleen uw hand op te steken en de ventilator is klaar om op het doel te richten en het weer af te koelen.

De servo bleek goedkoop plastic te zijn, de versnellingsbak hangt overal, dus de beweging trilt, maar wat kan ik doen. Op de projectpagina staat een link naar een betere servo, deze heeft een metalen versnellingsbak. Het project was behoorlijk cool en interessant vanwege de eenvoud: één sensor, één drive, maar als resultaat een volwaardige homing op de kaart van de regio en aanraakbediening.
Bedankt voor je aandacht. Tot binnenkort!

Video:

8.1
8
7.9

Voeg een opmerking toe

    • lachglimlachtxaxaokweet het nietyahoonea
      baaskrabbendwaasjaja-jaagressiefgeheim
      sorrydansdance2dance3pardonhulpdrankjes
      stopvriendengoedgoedfluitjebezwijmdtong
      rookklappencrayverklarenbeledigenddon-t_mentiondownloaden
      hittebooslach1mdavergaderingmoskingnegatief
      not_ipopcornstraffenlezenschrikschriktzoeken
      bespottendankjewelditto_clueUmnikacuutmee eens
      slechtbeeeblack_eyeblum3: oopscheppenverveling
      gecensureerdbeleefdheidgeheim2bedreigenoverwinningyusun_bespectacled
      shokrespektlolvoorgekomenwelkomkrutoyya_za
      ya_dobryihelperne_huliganne_othodifludverbodsluiten
2 commentaar
Danil
Heb je een AlexGyver-kanaal?
Geweldig idee voor gebruik. Arduino, en in praktische zin zou men zich kunnen beperken tot het gebruik van een eng gerichte Pir-sensor, logica en een servo-aandrijving (goedkoper).

We raden je aan om te lezen:

Geef het voor de smartphone ...