Inhoudsopgave:

Een op wind gebaseerde omgevingsweergave maken: 8 stappen (met afbeeldingen)
Een op wind gebaseerde omgevingsweergave maken: 8 stappen (met afbeeldingen)

Video: Een op wind gebaseerde omgevingsweergave maken: 8 stappen (met afbeeldingen)

Video: Een op wind gebaseerde omgevingsweergave maken: 8 stappen (met afbeeldingen)
Video: Earth,Wind & Fire - December (Based On September Extended SCCV)(Pix 57527946253) 2024, November
Anonim
Maak een op wind gebaseerde omgevingsweergave
Maak een op wind gebaseerde omgevingsweergave

Dit is een klassikaal project ontworpen en gebouwd door Trinh Le en Matt Arlauckas voor HCIN 720: Prototyping Wearable and Internet of Things-apparaten aan het Rochester Institute of Technology.

Het doel van dit project is om de windrichting en -snelheid abstract te visualiseren op locaties die verband houden met RFID-tokens. Deze twee dimensies zouden nuttig zijn voor iedereen die boten bestuurt, met drones, vliegers, modelraketten, enzovoort vliegt.

Het display zou bestaan uit een naar boven blazende ventilator om linten van stof te laten rimpelen en 'dansen' boven het tafelblad. De levendigheid van de linten zou de grootte van de windsnelheid laten zien. Windrichting zou worden weergegeven door een indicator die is verbonden met een stappenmotor in de basis en in staat is om een volledige 360 ° te draaien.

Stap 1: Materialen en gereedschappen

huisvesting

  • 1/8” acryl (PMMA) platen, geschikt voor lasersnijden
  • 1/8” acryl staven (voor het opvullen van voegen)
  • Felle dingen

Elektronische onderdelen

  • Deeltjesfoton (https://store.particle.io/collections/photon)
  • 2,1 mm DC-cilinderaansluiting (https://www.adafruit.com/product/373)
  • 12VDC 600mA voeding met 2,1 mm stekker (https://www.adafruit.com/product/798)
  • DC-DC-stroomomvormer (https://www.digikey.com/product-detail/en/murata-power-solutions-inc/OKI-78SR-12-1.0-W36-C/811-3293-ND/6817698) OF 7805 Voltage Regulator circuit (https://www.instructables.com/howto/7805/)
  • MFRC522 RFID-lezerkaart (https://www.amazon.com/dp/B00VFE2DO6/ref=cm_sw_su_dp)
  • L293D Dual H-Bridge-motorstuurprogramma (https://www.adafruit.com/product/807)
  • 12V stappenmotor (https://www.adafruit.com/product/918)
  • 120 mm 12 VDC-ventilator (https://www.amazon.com/Kingwin-CF-012LB-Efficient-Excellent-Ventilation/dp/B002YFP8BK)
  • S9013 NPN-transistor (of vergelijkbaar)
  • 2 - 220 Ohm weerstand
  • 1N4001 Diode
  • 5 mm blauwe LED
  • Mifare Classic 1K RFID-stickertags (https://www.amazon.com/YARONGTECH-MIFARE-Classic-Material-adhesive/)

Bedrading

  • Adafruit Perma-Proto Halfpension (https://www.adafruit.com/product/1609)
  • 22 AWG draad, massief en gevlochten
  • 20 AWG, tweeaderige draad (voor voeding)
  • Mannelijke header connector strip (voor ventilator- en motoraansluitingen)
  • 2 - 12-pins vrouwelijke stapelbare headerstrips (voor Photon)
  • 1 - 1x3 0.1” pitch female header strip (voor ventilatortransistor)
  • 1 - 1x8 0,1” pitch header connector en crimp socket contacten (RFID-lezer)
  • 1 - 1x2 0.1” pitch header connector en crimp socket contacten (ventilator)
  • 4 - 1x1 0.1” pitch header connector en crimp socket contacten (stappenmotor)
  • 1 - 16-pins DIP-bus (voor H-brug)
  • Kleine nylon tie-wraps (optioneel)
  • Krimpkous (optioneel)

Hardware

  • 2 - M3x6mm schroeven (voor montage stappenmotor)
  • 4 - M3x35mm schroeven (voor montage ventilator)
  • 8 - M3 platte ringen
  • 4 - M3-moeren

Gereedschap

  • Lasersnijder
  • 3D-printer
  • Soldeergereedschappen
  • Acryllijm (https://www.amazon.com/Acrylic-Plastic-Cement-Applicator-Bottle/)
  • Platte golfkartonplaten (voor montagemal)

Stap 2: Gegevens om te vertegenwoordigen

Gegevens om te vertegenwoordigen
Gegevens om te vertegenwoordigen

Het windscherm toont een weergave van de windrichting en -snelheid vanaf een locatie die is gekoppeld aan een token met RFID-tag. Deze gegevens worden verzameld uit de WeatherUnderground API. Om deze API te gebruiken, maakt u een account aan op https://www.wunderground.com/weather/api en selecteert u de abonnementsoptie die het beste bij uw behoeften past.

Stap 3: Displayconstructie

Weergaveconstructie
Weergaveconstructie
Weergaveconstructie
Weergaveconstructie
Weergaveconstructie
Weergaveconstructie

Laser snijden

Volg de instructiehandleiding voor de lasersnijder die u gaat gebruiken en bereid de Adobe Illustrator-bestanden (hieronder) voor om te snijden. Mogelijk moet u de objecten in de bestanden opnieuw rangschikken om ze aan te passen aan de grootte van de lasersnijder die u gebruikt.

Lasergesneden de platen van 1/8 acryl (PMMA) plastic platen.

Montage Jig

Om de regelmatige buitenhoek van de vijfhoek van 116,6° te behouden, hebben we een snelle mal (assembly_jig.ai) ontworpen om te helpen bij het monteren van de platen.

  1. Open het bestand assembly_jig.ai en knip verschillende stukken uit golfkarton.
  2. Lijm ze in een stapel, zorg ervoor dat de stapel vierkant blijft.

Hoekvulstaven

Omdat de hoeken niet orthogonaal ten opzichte van elkaar zijn, gebruiken we acrylstaven van 1/8 inch om de opening te vullen en zorgen we voor meer oppervlak voor het lijmen. aan elk uiteinde voor waar de hoeken samenkomen.

De basis monteren

Begin met het basisstuk met het grote ventilatorgat en lijm een stuk acrylstaaf op elk van de vijf randen.

Plaats dit waaierstuk op een helling van de montagemal en plaats een basiszijstuk op de tegenoverliggende schuine kant.

Breng de lijm voorzichtig aan op de voeg en wacht tot deze is uitgehard.

Blijf rond de andere zijden van het basisstuk werken en zorg ervoor dat u een stuk vulstaaf bevestigt waar twee platen samenkomen.

Montage van de DeckGlue de twee stappenmotor montage schijven rug aan rug, zorg ervoor dat de gaten uitgelijnd zijn. Wanneer ingesteld, gebruik dan voorzichtig een tap om de twee kleine gaten voor de M3-schroeven in te draaien. Lijm dit nu in het midden van de dekplaat en zorg er opnieuw voor dat het middengat op één lijn ligt.

Bevestig de stappenmotor met behulp van de twee M3x6mm schroeven.

Het bovenblad monteren

De bovenkant wordt op dezelfde manier gemonteerd als de onderkant, maar met slechts vier platen. Je laat een gat achter waar een vijfde plaat 'misschien' staat. Vergeet niet de acrylstaaf te gebruiken bij het verlijmen van de bovenplaten.

Stap 4: Elektronica

Elektronica
Elektronica
Elektronica
Elektronica
Elektronica
Elektronica
Elektronica
Elektronica

Dit project kan snel worden geassembleerd met behulp van een breadboard en jumperdraden. Volg gewoon het bovenstaande diagram.

Voor een meer toegewijde gebouwd, nou, dan is het tijd om die gekke soldeervaardigheden uit te schakelen.

Je hebt wel waanzinnige soldeervaardigheden, nietwaar? Zo niet, hier een paar links om dat te corrigeren …

  • Instructables: hoe te solderen
  • Adafruit Gids voor Uitstekend Solderen

Gebruik het Adafruit Perma-proto halfpension om de componenten in te delen zoals weergegeven in het Fritzing-diagram hierboven. Het gebruik van sockets voor de geïntegreerde schakelingen en transistor zorgt voor snelle en gemakkelijke vervanging als je toevallig Magic Smoke vrijgeeft (https://en.wikipedia.org/wiki/Magic_smoke).

Soldeer header pinnen/sockets aan het bord om de buitenste componenten (stappenmotor en ventilator) te verbinden en ze gemakkelijk te kunnen verwisselen (zie 'Magic Smoke' hierboven). Soldeer eerst de stroom en aardedraad op hun plaats en probeer ze zo kort en direct mogelijk te houden. Soldeer de gelijkstroomaansluiting aan het ene uiteinde van een lengte van de 20AWG-draad met twee geleiders en het andere uiteinde aan de bovenste voedingsrails (bord georiënteerd met Photon-headers naar links).

Soldeer draden om de circuitverbindingen te maken. In sommige gevallen is het gemakkelijker om de bedrading aan de onderkant van het bord te leggen. Voor de RFID-lezer bieden de stapelbare headers voor de Photon voldoende ruimte om verbindingen onder de Photon te maken. Sluit de RFID-draden af met de 1x8-headerconnector om aan de header van de RFID-lezer te bevestigen.

Stap 5: Elektronica installeren

Elektronica installeren
Elektronica installeren
Elektronica installeren
Elektronica installeren
Elektronica installeren
Elektronica installeren

Nadat de basis is vastgelijmd, installeert u de ventilator in de basis met behulp van de vier M3x35-schroeven, ringen en moeren.

Bevestig het moederbord aan de binnenkant van de achterplaat (de plaat met de rechthoekige uitsparing voor de DC-cilinderaansluiting) met behulp van de montagetape met schuimrug.

Steek de DC-cilinderaansluiting in het rechthoekige gat en cement op zijn plaats met behulp van de acryllijm.

Bevestig de RFID-lezerkaart aan de connector en monteer hem waar nodig met behulp van de montagetape met schuimrug. Het is niet erg als de achterkant van het bord naar de buitenkant van het scherm is gericht, de antenne zal nog steeds het RFID-signaal opvangen. Zet de blauwe LED in de buurt vast.

Sluit de ventilator en stappenmotor aan op het moederbord.

Stap 6: Programmeren

Nieuw bij Particle Photon? https://docs.particle.io/guide/aan de slag/intro/photon/

Dit project zal Particle Webhooks gebruiken om de windgegevens te verzamelen. Hier is het proces, in een notendop.

  1. Het apparaat wacht op het scannen van een token.
  2. Wanneer een token wordt gescand, wordt de unieke token-ID opgeslagen.
  3. Het apparaat publiceert deze token-ID vervolgens naar Particle.io.
  4. Na ontvangst van deze gegevens stuurt Particle.io de gegevens naar onze API-pagina via webhook-integratie.
  5. De API-pagina ontvangt de token-ID en zoekt de bijbehorende stad en staat op in de array Locations.
  6. De API-pagina maakt vervolgens de AP-aanroep naar WeatherUnderground (WU) met behulp van de locatie-informatie.
  7. De WU API retourneert een JSON-object van de volledige huidige weersomstandigheden voor die locatie naar de API-pagina.
  8. De API-pagina ontleedt deze informatie, extraheert en converteert de windrichting en windsnelheid, en stuurt ze terug naar het apparaat als een JSON-object.
  9. Het apparaat parseert het JSON-object en slaat de windrichting en -snelheid op die moeten worden gebruikt om de stappenmotor en ventilator te regelen.

Firmware

Maak een nieuw Photon-project met de naam 'wind_display' en overschrijf het hoofdbestand met de code wind_display.ino (hieronder).

Zoek en installeer vervolgens de volgende bibliotheken in uw project:

  • MFRC522 - v0.1.4 RFID-bibliotheek voor deeltjesapparaten
  • SparkJSON - v0.0.2 JSON-bibliotheek Overgezet van @bblanchon
  • Stepper - v1.1.3 Stappenmotorbibliotheek voor Arduino

Compileer het project en download het naar uw Photon.

API-pagina

Om de API-pagina te gebruiken, moet u deze uploaden naar een webserver met PHP. Er zijn veel gratis PHP-webhostingopties beschikbaar.

Download getWindData.txt en verander de bestandsextensie in.php. Open in uw favoriete editor en breng de volgende wijzigingen aan:

Voeg je Photon Core ID toe:

// Voeg de core_id toe voor fotonen die je wilt toestaan om deze API$allowedCores = array('Your CoreID goes here');

Voeg uw WeatherUnderground API-sleutel toe:

// WeatherUnderground API Key$wu_apikey = "Uw WU API-sleutel";

Maak je op dit moment geen zorgen over het instellen van de tokens/locaties. Dat regelen we nadat alles is ingesteld.

Sla het bestand op en upload het naar de webserver. Noteer de live URL voor de API-pagina.

Deeltjeswebhook

Log in op uw Particle Console en klik op het pictogram Integraties aan de linkerkant.

  1. Klik op 'Nieuwe integratie' en selecteer vervolgens 'Webhook'.
  2. Stel de gebeurtenisnaam in op 'wind_display'.
  3. Stel URL in op de live URL van de API-pagina.
  4. Klik op 'Webhook maken'.

Ontvang RFID-token-ID's en wijzig de API-pagina

Terwijl de Photon via USB op uw computer is aangesloten en losgekoppeld van de externe voeding, opent u een terminalvenster en voert u de Particle Serial Monitor uit.

  1. Scan een RFID-tag en noteer de token-ID van 8 tekens die op de seriële monitor wordt weergegeven.
  2. Herhaal dit voor eventuele extra tags die u wilt gebruiken.

Ga nu terug naar getWindData.php en zoek de sectie Locations array:

// Locations Array// Vervang "TokenID n" door gescande token-ID // Vervang "Cityn" door stad die is gekoppeld aan token-ID // Vervang "Sn" door status met twee tekens die is gekoppeld aan stad $locations = array ("TokenID 1" => array("city" => "City1", "state" => "S1"), "TokenID 2" => array("city" => "City2", "state" => "S2"), "TokenID 3" => array("city" => "City3", "state" => "S3"));

Vervang elke token-ID door de token-ID's van uw tags en koppel ze aan een stad en staat waarvan u windinformatie wilt.

Sla het bestand op en upload het naar uw webserver.

Stap 7: Gebruik het

  1. Toon het waar je maar wilt.
  2. Zet de windvaan op het noorden.
  3. Steek de stekker in het stopcontact.
  4. Plaats een token bij de RFID-lezer en wacht tot de blauwe LED knippert.

Stap 8: Verdere ideeën

Hier zijn enkele ideeën om het project uit te breiden!

Aanbevolen: