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

Scavenger Hunt CluePhone

Componenten en benodigdheden

SparkFun Arduino Pro Mini 328 - 5V/16MHz
× 1
MP3-/WAV-trigger
× 1
Oude telefoon
× 1
Broodplank (algemeen)
× 1
Jumperdraden (algemeen)
× 1
SparkFun Aansluitkabel
× 1
microSD-kaart
× 1

Benodigde gereedschappen en machines

Soldeerbout (algemeen)
SparkFun Heteluchtpistool

Over dit project


Volg deze instructies om een ​​oude telefoon om te toveren in een speurtochtsysteem.

Stap 1 - Rijen en kolommen op het toetsenbord

Haal de telefoon uit elkaar en verwijder het toetsenbord. Toetsenborden gebruiken een systeem van rijen en kolommen om toetsaanslagen te detecteren. Deze pagina geeft goede instructies voor het identificeren van knoppen op een toetsenbord en het toewijzen ervan aan de juiste rij en kolom met behulp van een multimeter met continuïteit. In mijn geval ziet het toetsenbord er als volgt uit:

Het circuit op uw toetsenbord (indien zichtbaar) maakt het heel gemakkelijk om te identificeren welke pinnen op elke toets zijn aangesloten. Helaas lijken de pinnen van mijn toetsenbord geen perfecte rijen en kolommen te vormen, dus de tweede afbeelding toont de matrix die ik heb gemaakt om me te helpen de pinnen in rijen en kolommen te verdelen. De omcirkelde cijfers vertegenwoordigen de pincodes van het toetsenbord, de cijfers in de matrix vertegenwoordigen de toetsen en de omkaderde nummers "I/O" vertegenwoordigen de Arduino-pinnen. Zorg ervoor dat u de pintoewijzing noteert en wijs vervolgens elk van de toetsenbordpinnen toe aan een Arduino-pin. Mijn toetsenbord is vreemd, omdat het meer pinnen lijkt te hebben dan nodig is, maar dat is oké.

De derde foto toont mijn laatste vereenvoudigde matrix, waarbij ik alleen gebruik maak van de knoppen die ik gebruik. Het lijkt op dit moment bijna op rijen en kolommen! In mijn code gebruik ik tijdelijke aanduidingen A, B, C en D om de lege plekken in de matrix in te vullen. Deze toetsen bestaan ​​niet op mijn toetsenbord.

Stap 2 - Soldeer uitbreidingen op het toetsenbord

Om het gemakkelijker te maken om de toetsenbordpinnen op het breadboard aan te sluiten, soldeer je verlengstukken op de benodigde pinnen. Om dit project te maken, is het niet nodig om elke toets op het toetsenbord te gebruiken, dus de onderstaande afbeelding toont alleen de pinnen die ik heb gekozen om te gebruiken. Ik gebruikte een 4-cijferige toegangscode, dus ik had maar 5 sleutels nodig (inclusief *).

Stap 3 - Bereid de audiobestanden voor

In mijn project is de stem in de aanwijzing Peter van Natural Readers tekst naar spraak. Download het spraakbestand. Bereid vervolgens de moraalcode voor. Er zijn veel morsecode-audiogeneratoren online, maar ik heb deze van SCPhillips.com gebruikt. Download ook dit bestand. Download ook deze pieptoon bij het indrukken van een toets.

Audacity is een geweldig hulpmiddel voor het bewerken van audio en kan worden gebruikt om de morsecode en spraakbestanden samen te voegen en de pieptonen in te korten tot een enkele piep.

Sleep deze bestanden en zet ze neer in Audacity en pas het aanwijzingsbestand aan totdat het aan uw behoeften voldoet. Verkort ook de pieptonen van het toetsenbord door het ongewenste gedeelte te markeren en op verwijderen te tikken.

Sla het Audacity-bestand op en exporteer vervolgens elk nummer afzonderlijk als MP3. Als je Audacity nog nooit eerder hebt gebruikt, moet je misschien de LAME MP3-encoder downloaden.

Om ervoor te zorgen dat de audiobestanden op dit specifieke MP3-spelerbord kunnen worden afgespeeld, moeten ze de juiste naam hebben en in een map op de SD-kaart worden geplaatst. Elke MP3 moet de naam hebben 001, 002, enz. om overeen te komen met triggerpinnen 1-9 op het MP3-bord. De bestanden moeten zich ook in een map bevinden met de naam 01 op de SD-kaart. Andere MP3-triggerboards kunnen dit wellicht gemakkelijker aan.

Stap 4 - Download bibliotheken en bereid code voor

Voor dit project zijn de Arduino-bibliotheken met toetsenbord en wachtwoord nodig. Download en installeer deze bibliotheken en download de code voor dit project (hieronder). Maak de toegangscode zoals je wilt en vul de sleutelmatrix in met de bijbehorende sleutels.

Stap 5 - Sluit alles aan

Haal de binnenkant van de telefoon eruit en prop de nieuwe spullen erin! Je kunt er een powerbank in persen.

Vind je dit project leuk? Bekijk hier mijn andere projecten!

Code

  • Schets telefoontoetsenbord
Telefoontoetsenbord SchetsArduino
Deze voorbeeldcode is aangepast om te werken met een telefoontoetsenbord en MP3-trigger.
#include  //http://www.arduino.cc/playground/uploads/Code/Password.zip#include  //http://www.arduino.cc/playground/uploads/Code/Keypad.zipPassword wachtwoord =Wachtwoord ("7365");const byte RIJEN =4; // Vier rijenconstbyte COLS =3; // kolommen// Definieer de Keymapchar-sleutels [ROWS][COLS] ={ {'4','5','6'}, {'7','8','A'}, //"A" is een tijdelijke aanduiding; zo'n knop bestaat niet op mijn toetsenbord {'B','2','3'}, //"B" is een tijdelijke aanduiding; zo'n knop bestaat niet op mijn toetsenbord {'*','C','D'} //"C" en "D" zijn tijdelijke aanduidingen; zulke knoppen bestaan ​​niet op mijn toetsenbord};byte rowPins[ROWS] ={ 7,5,3,8 };//Sluit toetsenbordrijen aan op deze Arduino pins.byte colPins[COLS] ={ 6,4,2 };/ / Verbind toetsenbordkolommen met deze Arduino pins.const int dial =13; // Digitale Arduino-pin gaat naar MP3-triggerboard.const int morse =12; // Digitale Arduino-pin gaat naar MP3-triggerbord.// Maak het toetsenbord Toetsenbord toetsenbord =toetsenbord (makeKeymap (toetsen), rowPins, colPins, ROWS, COLS); ongeldige setup () {pinMode (dial, OUTPUT); pinMode (morse, UITGANG); digitalWrite (kiezen, HOOG); // MP3-kaart activeert laag actief, dus begin met HOOG. digitalWrite(morse, HOOG); // MP3-kaart activeert laag actief, dus begin met HOOG. Serieel.begin(9600); keypad.addEventListener(keypadEvent); //voeg een gebeurtenislistener toe voor dit toetsenbord}void loop(){ keypad.getKey();}//zorg voor een aantal speciale eventsvoid keypadEvent(KeypadEvent eKey){ switch (keypad.getState()){ case PRESSED:Serieel. print("Ingedrukt:"); //Voor het bewaken van Serial.println (eKey); // Voor het bewaken van digitalWrite (dial, LOW); // Speel het audiobestand van de kiespiep; dit gebeurt voor elke toetsvertraging (50); digitalWrite (kiezen, HOOG); switch (eKey){ case '*':checkPassword(); pauze; // * is de standaard invoersleutel:wachtwoord.append(eKey); } }} ongeldig checkPassword(){ if (password.evaluate()){ Serial.println("Succes"); //Bewaking van wachtwoord.reset(); // Wis de belangrijkste items digitalWrite (morse, LOW); //Speel de aanwijzing audiobestand vertraging (50); digitalWrite(morse, HOOG); }else{ Serial.println("Fout"); //Bewaking van wachtwoord.reset(); // Wis de sleutelinvoer voor de volgende toegangscode }}

Schema's


Productieproces

  1. UFO-aanval!
  2. Cloud-kostuum
  3. 3D RGB Arduclock
  4. MyRiver
  5. Iron Man
  6. Joystick-spel
  7. Vind mij
  8. Arduino-luchtbevochtigerbediening
  9. Little Rover
  10. Arduino-joystick
  11. Stappenteller (Arduino 101)