Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Превращение старого телефона в систему подсказок для «Поиска сокровищ» на Arduino Pro Mini

Компоненты и материалы

Необходимые инструменты

О проекте

Проект превращает старый стационарный телефон в интерактивный терминал для квеста/поиска сокровищ. Игрок вводит 4-значный код на клавиатуре телефона — если код верен, в трубке звучит аудиоподсказка (голос + азбука Морзе). При нажатии клавиш воспроизводится звук набора номера.

Этапы реализации

1. Определение матрицы клавиатуры

Разберите телефон, извлеките клавиатуру. Мультиметром в режиме прозвонки определите строки и столбцы. Составьте матрицу соответствия пинов клавиатуры кнопкам и пинам Arduino. В проекте используется 4 строки × 3 столбца, 5 кнопок (цифры кода + * для подтверждения).

2. Пайка проводов к клавиатуре

Припаяйте удлинители к нужным пинам клавиатуры для подключения к макетной плате.

3. Подготовка аудиофайлов

Используйте Audacity. Сгенерируйте речь (например, через Natural Readers), азбуку Морзе (онлайн-генератор), звук нажатия клавиши. Объедините, отредактируйте длительность. Экспортируйте каждый трек в MP3 с именами 001.mp3, 002.mp3… и положите в папку 01 на microSD (требование плеера).

4. Библиотеки и код

Установите библиотеки Keypad и Password (с официального Playground Arduino). Загрузите скетч, задайте свой пароль (в примере «7365»), заполните матрицу клавиш согласно вашему раскладке.

5. Сборка

Разместите Arduino, MP3-плеер, батарею (power bank) внутри корпуса телефона. Подключите динамик телефона к выходу MP3-плеера. Выведите microSD-карту наружу для удобства.

Программный код (основные фрагменты)

#include <Password.h>
#include <Keypad.h>

Password password = Password("7365");
const byte ROWS = 4, COLS = 3;
char keys[ROWS][COLS] = {
  {'4','5','6'},
  {'7','8','A'}, // A — заглушка
  {'B','2','3'}, // B — заглушка
  {'*','C','D'}  // C,D — заглушки
};
byte rowPins[ROWS] = {7,5,3,8};
byte colPins[COLS] = {6,4,2};
const int dial = 13;   // пин -> MP3 триггер (beep)
const int morse = 12;  // пин -> MP3 триггер (clue)

Keypad keypad = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);

void setup() {
  pinMode(dial, OUTPUT); digitalWrite(dial, HIGH);
  pinMode(morse, OUTPUT); digitalWrite(morse, HIGH);
  Serial.begin(9600);
  keypad.addEventListener(keypadEvent);
}

void loop() { keypad.getKey(); }

void keypadEvent(KeypadEvent eKey) {
  if (keypad.getState() == PRESSED) {
    digitalWrite(dial, LOW); delay(50); digitalWrite(dial, HIGH); // beep
    switch (eKey) {
      case '*': checkPassword(); break;
      default: password.append(eKey);
    }
  }
}

void checkPassword() {
  if (password.evaluate()) {
    digitalWrite(morse, LOW); delay(50); digitalWrite(morse, HIGH); // play clue
    password.reset();
  } else {
    password.reset();
  }
}

Схема

Превращение старого телефона в систему подсказок для «Поиска сокровищ» на Arduino Pro Mini

Производственный процесс

  1. Игра «UFO Attack» на Arduino UNO и матрице MAX7219 — Собираем аркаду с джойстиком Atari
  2. DIY-костюм «Облако»: LED-лента, Arduino Nano и детали SparkFun
  3. 3D RGB Arduclock — Bluetooth-часы на адресных LED с RTC
  4. Мониторинг состояния реки: Arduino-система контроля качества воды
  5. Строим Iron Man на Arduino: компоненты, сенсоры и пошаговый гайд
  6. Интерактивная игра с джойстиком и LED-обратной связью на Arduino
  7. Find Me: Умный поисковик вещей на Arduino и Bluetooth
  8. DIY-контроллер увлажнителя на Arduino с реле: безопасная работа с высоким напряжением
  9. Маленький ровер на Arduino: собираем автономного робота своими руками
  10. Своё рулевое управление (джойстик) для игр на Arduino