Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Afteltimer

Componenten en benodigdheden

Adafruit Neopixel 8x8 RGB LED-matrix
× 1
SparkFun Bluetooth-modem - BlueSMiRF Zilver
× 1
Piezo-zoemer
× 1
Mannelijke-mannelijke doorverbindingsdraden
× 1
Vrouwelijke-mannelijke doorverbindingsdraden
× 1
Arduino UNO
× 1
Mini breadboard
× 1
Draagbare oplaadbare batterijlader
× 1
header-pins
× 1
Lumina 635
× 1

Benodigde gereedschappen en machines

Soldeerbout (algemeen)

Apps en online services

Microsoft Windows 10 IoT Core

Over dit project

Inleiding

Mijn 6-jarige heeft nog steeds geen besef van tijd. Als ik haar vertel dat ze 2 minuten kan blijven spelen voordat ze naar het avondeten gaat, kunnen er 30 seconden of 10 minuten voorbijgaan en zou ze het verschil niet weten. Ik begon de timer op de magnetron te zetten, maar ze kon hem niet zien tikken vanuit haar speelkamer of de zoemer horen vanuit haar slaapkamer. Dus besloot ik een draagbare timer te maken die ik naast haar kon plaatsen, die haar een visuele indicatie zou geven van het verstrijken van de tijd.

Ik begon met een eenvoudig numeriek aftellen op een 16x2 LCD-scherm, maar het was niet echt interessant. En hoewel ze kon tellen en weten dat 45 veel meer is dan 15, gaf het haar niet echt een idee van hoeveel tijd er nog over was. Dus ging ik naar een visuele - een zandloper op een 8x8 LED-matrix. Een 8x16 matrix is ​​naar mijn mening echt het minimum voor een goede weergave van een zandloper; hoe dan ook, een zandloper is ook niet bepaald boeiend om naar te kijken.

Na wat spelen met een paar andere beelden en animatieniveaus, kozen mijn dochter en ik voor dit ontwerp - meerkleurige druppels die vallen en samenvloeien naarmate de tijd verstrijkt. Om de paar seconden, 1/64 van het aftelinterval om precies te zijn, verschijnt er een droppool - oftewel een LED blijft aan. Eenmaal blijven alle LED's branden, dan is de tijd om en knippert de hele LED-matrix en klinkt de zoemer. Om het voor verschillende situaties flexibeler te maken, kunnen verschillende aftelintervallen worden geselecteerd - 1 minuut, 2 minuten, 5 minuten, enz. En om het interessanter te maken, kan het aftelinterval op afstand worden ingesteld door in mijn Windows-mobiel te spreken telefoon. Als de tijd om is, heb ik de mogelijkheid om haar extra tijd te geven, opnieuw door een aftelinterval in mijn Windows-mobiele telefoon in te spreken, zelfs als we in dezelfde kamer zijn (zolang ik me in het Bluetooth-bereik van de LED-matrix bevind).

De kerncomponenten van het project zijn een Arduino Uno, een neopixel 8x8 RGB LED-matrix en een Bluetooth-module. Het leuke van de Adafruit neopixel-matrix is ​​dat er maar een enkele Arduino-pin nodig is om hem te bedienen, dus er zijn genoeg pinnen over voor allerlei extra functionaliteit. De Bluetooth-module wordt gebruikt om te communiceren tussen de mobiele telefoon en de Arduino. De Windows Virtual Shields for Arduino-app draait op de Windows Phone 10 en stelt me ​​in staat om de mogelijkheden van de telefoon te gebruiken in mijn Arduino-schets.

Dit is een beginnersproject en er zijn geen geavanceerde software- of hardwarevaardigheden vereist. Exclusief de vereisten, kan dit project in 30 - 45 minuten worden voltooid als je een Arduino hebt. Als dit je allereerste elektronicaproject is, raad ik je aan een paar uur te besteden aan het bekijken van een paar inleidende Arduino-video's voordat je aan de slag gaat.

Als je verbeteringen of hacks aanbrengt, laat dan een reactie achter en laat me weten hoe het ging. Ik ben erg benieuwd wat voor soort countdown-ontwerpen je maakt of hoe je andere Virtual Shields-mogelijkheden in je project integreert.

Hier zijn enkele online bronnen die ik erg nuttig heb gevonden in de loop van dit project:

  • Microsoft's Windows On Devices heeft een zeer goede stapsgewijze handleiding om aan de slag te gaan met Windows Virtual Shields voor Arduino.
  • Adafruit's Neopixel Uberguide biedt veel details over het werken met de LED-matrix.
  • Nulsom's LED-matrixbibliotheek voor Arduino werkt ook met deze hardware.
  • Er zijn talloze video's op YouTube om je te helpen met Arduino te beginnen, inclusief de installatie van de Arduino IDE en het aansluiten van de microcontroller op je pc. Ik beveel Jeremy Blum's Tutorial Series voor Arduino ten zeerste aan.

Vereisten

  1. Stel uw Arduino in voor de Windows Virtual Shields (instructies hier).
  2. Stel uw Windows-telefoon en pc in voor de Windows Virtual Shields (instructies hier).

Opmerking:het duurt 2-3 uur om aan de vereisten te voldoen als u Windows10 en Visual Studio 2015 nog niet hebt ingesteld, maar het grootste deel van die tijd onbeheerd is.

Wat heb je nodig

Onderdelen:

  1. Arduino Uno en standaard A/B USB-kabel
  2. Neopixel 8x8 RGB LED-matrix
  3. Bluetooth-module
  4. Piëzo-zoemer
  5. Mannelijk-mannelijk en mannelijk-vrouwelijk doorverbindingsdraden
  6. Mini-breadboard
  7. Lumina 635 (of ander apparaat dat compatibel is met Windows Phone 10)
  8. Optioneel:kop met rechte hoek - mannelijk of vrouwelijk
  9. Optioneel:draagbare 5v oplaadbare batterijlader

Hulpprogramma's:

  1. Soldeerbout en soldeer

Projectinstructies

Stap 1:Sluit de LED-matrix aan op de Arduino

Tijd: 15 minuten

Onderdelen: Arduino Uno, neopixel 8x8 RGB LED-matrix, 3-pins header, jumperdraden, mini-breadboard

Hulpprogramma's: soldeerbout, soldeer


Ik heb een paar verschillende LED-matrices geprobeerd, maar ik had moeite om sommige van het schildtype voor dit project te laten werken. Ze zouden op zichzelf prima werken, maar ik kon ze niet aan het werk krijgen toen ik Bluetooth aansloot. Naast de fysieke problemen - de schilden namen alle pinnen in beslag - er waren ook technische - waarschijnlijk een conflict met D0 en D1 (Arduino's RX- en TX-pinnen). Dus toen probeerde ik de neopixelmatrix. Het werkte perfect:er was slechts één controlepin nodig en er waren geen RX/TX-conflicten.

Voordat ik de LED-matrix naar de Arduino bekabelde, moest ik een driepolige header aan de LED-matrix solderen. De keuze voor rechte headers of 90 graden headers hangt echt af van hoe je de LED-matrix gaat monteren. En mannelijke versus vrouwelijke headers komen er echt uit welk type jumperdraad je hebt. Of, zoals in mijn geval, de kopbeslissing werd volledig bepaald door wat ik bij de hand had - 90 graden mannelijke kopteksten. Je kunt ook de jumperdraden rechtstreeks op de LED-matrix solderen, maar ik hou van de flexibiliteit die de header-pinnen bieden.

Er zijn slechts drie verbindingen nodig tussen de neopixel LED-matrix en de Arduino. Gebruik eerst een mannelijk-mannelijke jumper om Arduino's 5v-pin aan te sluiten op een ongebruikte rij op het mini-breadboard. Sluit vervolgens een mannelijke-vrouwelijke jumper van deze stroomrail aan op de 5v-pin van de LED. Gebruik een andere mannelijke-vrouwelijke jumper om de aarde van de Adruino te verbinden met de GND van de LED. En om de LED-matrix te bedienen, sluit u een mannelijk-vrouwelijke jumper van een van de digitale pinnen van de Arduino (behalve pin D0 en D1) aan op de digitale ingang (DIN) pin van de LED-matrix. Voor mijn project heb ik digitale pin 9 gebruikt.

Opmerking:de volgorde van de 5v-, GND- en DIN-pinnen verschilt per fabrikant, dus controleer de labels op de LED-matrix voordat u uw draden aansluit.

Stap 2:Test de LED-matrix

Tijd: 5 minuten

Onderdelen: Nvt

Hulpprogramma's: Nvt

Bijna alle LED-matrices worden geleverd met een bibliotheek zodat u snel aan de slag kunt. De Adafruit-matrix was geen uitzondering omdat deze wordt geleverd met een eigen bibliotheek. Ik geef echter de voorkeur aan de bibliotheek van Nulsom. Ik heb nog niet onder de dekens gekeken om te zien wat de verschillen zijn, maar ik ontdekte dat het project een beetje beter werkte met de Nulsom-bibliotheek - LED's gingen constant uit toen ik de matrix wist en het virtuele schild werkte consistenter.

Ik heb de bibliotheekbestanden gedownload van de Nulsom-website en gekopieerd naar mijn Arduino\libraries-map. Toen lanceerde ik de Arduino IDE, opende een van de voorbeeldschetsen en uploadde de schets naar mijn Arduino. Ah, mooie lichtjes!


Stap 3:Bluetooth-module aansluiten

Tijd: 5 minuten

Onderdelen: Bluetooth-module, jumperdraden

Hulpprogramma's: Nvt

Dit is de eerste keer dat ik een Bluetooth-module gebruik - het was supergemakkelijk en nu zal Bluetooth hoogtij vieren in mijn projecten. De BlueSMiRF Silver-module die ik bij SparkFun heb gekocht, is in wezen een vervanging van een seriële kabel. Ik moest wel op een mannelijke header-pin solderen, maar toen dat eenmaal klaar was, was ik klaar om te rollen.

Sluit de Bluetooth-module aan op het breadboard om verbindingen gemakkelijker te maken. Om de module van stroom te voorzien, voert u een jumper uit van de voedingsrail die in stap 1 is gemaakt naar de Vcc-pin van de module. en voer een mannelijk-mannelijke jumper uit van de GND-pin van de module naar een van de GND-pinnen op de Arduino. Om de seriële communicatie tot stand te brengen, sluit u een mannelijk-mannelijke jumper van de TX-pin van de Bluetooth-module aan op de RX-pin van de Arduino (digitale pin 0) en een andere van de RX-pin van de module op de TX-pin van de Arduino (digitale pin 1).

Opmerking:je kunt geen schetsen uploaden van de Arduino IDE naar de Arduino als je de Bluetooth-TX- en RX-pinnen hebt aangesloten op de Arduino. Koppel ze los wanneer je een schets moet uploaden en sluit ze opnieuw aan zodra de schets succesvol is geüpload.

Stap 4:sluit de Peizo-zoemer aan

Tijd: 5 minuten

Onderdelen: Peizo-zoemer, jumperdraden

Hulpprogramma's: Nvt

De peizo-zoemer heeft slechts twee pinnen. Steek de zoemer in alle ongebruikte rijen in het breadboard en gebruik jumpers om de peizo-pin gemarkeerd met '+' aan te sluiten op een digitale pin op de Arduino (ik gebruikte pin 3) en de pin gemarkeerd met '-' op een GND-pin op de Arduino.

Stap 5:Download en implementeer de code

Tijd: 10 minuten

Onderdelen: Nvt

Hulpprogramma's: Nvt

Nu je alles hebt aangesloten, download je de code van github en laad je deze in de Arduino IDE op je pc. Zorg ervoor dat u de TX/RX-jumperdraden van de Bluetooth-module loskoppelt en upload vervolgens de schets. Sluit de TX/RX-jumperdraden opnieuw aan op de digitale 0- en digitale 1-pinnen van de Arduino.

Start de Virtual Shields-app en koppel de telefoon aan de Bluetooth-module. Raadpleeg vereiste #2 hierboven als je instructies nodig hebt.

Druk ten slotte op de resetknop op uw Arduino om de schets opnieuw te starten.

Spreek, wanneer daarom wordt gevraagd, de afteltijd in op uw Windows-telefoon - d.w.z. één. Dan zullen de LED's hun ding gaan doen.


Stap 6:maak het draagbaar

Tijd: 5 minuten

Onderdelen: 5v oplaadbare batterijlader

Hulpprogramma's: Nvt

De sleutel tot draagbaarheid is dat u uw afteltimer onafhankelijk van uw pc kunt aansturen. Je zou een muur-wrat/stekker kunnen gebruiken maar dan moet je toch nog even op zoek naar een stopcontact. Ik gebruik veel liever een draagbare oplaadbare batterijlader, zodat de afteltimer overal kan komen - ook in de tuin.

Laad de oplader op met uw pc of een muur-wrat wanneer u deze krijgt. Sluit vervolgens de USB-kabel van de Arduino aan op de oplader en voila, de Arduino wordt gevoed en draagbaar.

Code

Afteltimer
https://github.com/peejster/Countdown-Timer

Schema's

countdown_timer.fzz

Productieproces

  1. Typen en toepassingen van titaniumdraden
  2. 555 monostabiele multivibrator
  3. Draden en verbindingen
  4. Netwerken en bussen
  5. Arduino breadboards bouwen zonder jumperdraden
  6. Een timer maken in VHDL
  7. Draagbare Raspberry Pi (Retropie Handheld) Build Guide Part 1
  8. UFO-aanval!
  9. Wat is Watchdog Timer ?
  10. Arduino Countdown Timer
  11. Voertuigbedrading begrijpen