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

Игра «Бинарный переключатель» – Проект на Arduino UNO

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

Компонент Количество
Arduino UNO 1
Toggle switch SPDT 7
M3 x 8 Socket Head Cap Screw 15
M3 Nut 3
Adafruit Standard LCD - 16x2 White on Blue 1
40mm Standoff 4
Adafruit Silicone Cover Stranded-Core Wire - 30AWG 1
Switch Dress Nut 1/4-40 9
Rugged Metal Pushbutton with White LED Ring - 16mm White Momentary 1

О проекте

Это игра, которую я создал на Autodesk Circuits для изучения двоичных чисел.

Играбельная онлайн-версия доступна по адресу: https://circuits.io/circuits/2924784-binary-game

Если вы хотите следовать этому руководству и собрать свою версию, файлы и код можно найти на моем GitHub: https://github.com/keebie81/BinaryGame

Шаг 1: Необходимые детали

Шаг 2: Проектирование

Я спроектировал корпус в Fusion 360. Это позволило мне разместить все детали и убедиться, что они подходят. После этого я смог 3D-печатать корпус и проверить, как он собирается.

Все хорошо сошлось, затем я создал SVG-файлы двух панелей. Следующий шаг — подготовить файлы для лазерной резки. Я следовал шаблонам Ponoko. Инструкции также размещены на нижней панели, чтобы люди знали, как работает игра.

Получение деталей от Ponoko заняло чуть более недели.

Шаг 3: Сборка верхней панели

Верхняя панель собирается довольно легко.

Сначала вставьте девять тумблеров и затяните их. Затем вставьте винты M3 для дисплея. Наденьте распорки с другой стороны и затяните винты в монтажные отверстия дисплея. Последняя деталь — кнопка 16мм.

Шаг 4: Сборка нижней панели

Используйте 3 винта M3 и гайки для крепления платы к нижней панели. На фото видно, что я ошибся с отверстиями при лазерной резке. Я исправил это для шаблона, выложенного на GitHub.

Шаг 5: Проводка

Для проводки следуйте схеме. Оригинальный дизайн также использовал цифровые пины 1 и 0, но если переключатели не были в правильном положении, плата имела проблемы с загрузкой кода.

Я припаял провода к мужским заголовкам, вставленным в плату Arduino. Это позволяет легко отключать их в будущем, если вы захотите перепрофилировать плату. LCD-дисплей также использует женские заголовки для пайки.

Одна проблема, которую я заметил после проводки — это проводка переключателей. Вы должны проверить связи для замкнутой цепи. Используя переключатели, которые я перечислил ранее, когда рычаг вниз, средний и верхний контакты замкнуты. Поскольку я ошибся с проводкой, мне пришлось изменить код. Для кода, приведенного в этом руководстве, предполагается, что ваша проводка выполнена правильно.

Также при подключении металлической кнопки она должна быть в конфигурации «нормально открыто».

Шаг 6: Питание

Вы можете подключить плату к компьютеру через USB-кабель для питания или использовать портативный зарядный блок для телефона, например: https://www.adafruit.com/products/1959

Шаг 7: Как играть

При включении, если выбран легкий режим, вам дается случайное число от 0 до 15. Если сложный — от 0 до 255.

Затем вы переключаете тумблеры вверх для 1 или вниз для 0, затем нажимаете кнопку, чтобы проверить, правильно ли вы угадали. Если правильно — звучит тональный сигнал правильного ответа и выдается новое число. Если неправильно — звучит гудок и надпись «попробуй снова».

Значение переключателей слева направо: 2^7(128), 2^6(64), 2^5(32), 2^4(16), 2^3(8), 2^2(4), 2^1(2), 2^0(1).

Если случайное число было 18, двоичное значение будет 0001 0010. Потому что 2^4(16) + 2^1(2) = 18.

Если 255 — будет 1111 1111, так как сумма всех чисел равна 255.

Шаг 8: Видео игрового процесса

(Видео доступно в оригинальном проекте)

Код

Код доступен на GitHub: https://github.com/keebie81/BinaryGame

Схемы

Схема подключения доступна во вложениях.

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

  1. Десятичная и двоичная системы: разрядный вес, эффективность и преобразование
  2. Сложение в двоичной системе: правила, примеры и роль в цифровых компьютерах
  3. Отрицательные числа в двоичной системе: знаковый модуль, дополнение и дважды дополнительный код
  4. Двоичное вычитание с использованием двухкратного дополнения
  5. Переполнение в двоичной арифметике: влияние знакового бита на сложение
  6. Понимание четырехбитных двоичных счетчиков
  7. Проектирование двоичного полусумматора: от логических вентилей к релейным диаграммам
  8. Шахматы: от древних корней к современному производству — экспертный обзор
  9. Пинбол: история, дизайн и производство классической аркадной игры
  10. Футбольный мяч: от древних игр к современным инновациям