Оглавление:

Хэллоуинская тыква с движущимся аниматронным глазом - Эта тыква может закатить глаз !: 10 шагов (с картинками)
Хэллоуинская тыква с движущимся аниматронным глазом - Эта тыква может закатить глаз !: 10 шагов (с картинками)

Видео: Хэллоуинская тыква с движущимся аниматронным глазом - Эта тыква может закатить глаз !: 10 шагов (с картинками)

Видео: Хэллоуинская тыква с движущимся аниматронным глазом - Эта тыква может закатить глаз !: 10 шагов (с картинками)
Видео: Тыква с движущимися глазами! | Сервопривод Arduino Raspberry Pi | Хэллоуинские проекты 2024, Июль
Anonim
Хэллоуинская тыква с движущимся аниматронным глазом | Эта тыква может закатить глаза!
Хэллоуинская тыква с движущимся аниматронным глазом | Эта тыква может закатить глаза!
Хэллоуинская тыква с движущимся аниматронным глазом | Эта тыква может закатить глаза!
Хэллоуинская тыква с движущимся аниматронным глазом | Эта тыква может закатить глаза!
Хэллоуинская тыква с движущимся аниматронным глазом | Эта тыква может закатить глаза!
Хэллоуинская тыква с движущимся аниматронным глазом | Эта тыква может закатить глаза!

В этом руководстве вы узнаете, как сделать тыкву на Хэллоуин, которая пугает всех, когда ее глаз движется

Отрегулируйте расстояние срабатывания ультразвукового датчика на правильное значение (шаг 9), и ваша тыква превратит в камень любого, кто осмелится забрать конфеты из вашего дома

В видео выше вы увидите демонстрацию движений, на которые способен этот глаз. Первые 2 клипа показывают случайные судорожные движения, на которые можно запрограммировать глаз, а 3-й и 4-й клипы показывают, как тыква может вращать глазом так же, как человек, когда его раздражает.

Для меня это был пиковый проект на Хэллоуин, поэтому я сделал большую часть фотографий после того, как мой проект был завершен. По этой же причине, вместо того, чтобы покупать универсальный шарнир для глаза, я разработал шарнир, который не требует каких-либо деталей, не предназначенных для 3D-печати. Поэтому вы можете завершить этот проект всего за один день!

Вот ссылка на папку с необходимыми файлами.

Запасы:

1. 1x Arduino Nano (или аналогичный)

2. 2x SG90 9G Micro сервопривод

3. 1x тыква (не менее ~ 20 см в диаметре)

4. 2 деревянных шпажки

5. 4 батарейки типа АА (или аналогичная установка на 5 В)

6. ~ Провода-перемычки (или 1 м провода 22 AWG)

7. ~ 15 см проволока с изгибом и фиксацией (скрепки подойдут)

8. Несколько маркеров или краски (красный, синий и черный цвета).

9. Белая (PLA) нить

По желанию:

1. 1x ультразвуковой датчик расстояния HC-SR04

2. Паяльник и припой.

3. Изолента

Шаг 1: 3D-печать файлов для глазного механизма

3D-печать файлов для глазного механизма
3D-печать файлов для глазного механизма
3D-печать файлов для глазного механизма
3D-печать файлов для глазного механизма

Во-первых, вам нужно будет распечатать прикрепленные файлы STL на белой нити PLA на 3D-принтере.

Загрузите папку "2020_Halloween_Pumpkin_With_Moving_Animatronic_Eye_MASTER". В этой папке есть все файлы 3D и кода, а также ссылки.

3D-файлы уже ориентированы в том направлении, которое лучше всего подходит для 3D-печати. Важно отметить, что «OuterEye» нужно будет печатать круглой стороной вниз, а «InnerEye» - плоской стороной вниз. Хотя это означает, что вам потребуются опоры для внешнего глаза, вы не должны печатать ни один из этих файлов в противоположной ориентации. Это связано с тем, что внутренняя часть внешнего глаза и внешняя часть внутреннего глаза должны быть как можно более гладкими, чтобы предотвратить заедание механизма глаза.

Я напечатал детали Outer и Inner Eye с высотой слоя 0,1 мм, потому что это уменьшит эффект ступенек, что приведет к более гладкой поверхности. Остальные файлы я распечатал с высотой слоя 0,2-0,3 мм.

Когда проект был готов к показу, я поместил фонарик прямо за механизмом глаза, чтобы глаз светился. Если вы хотите добиться этого эффекта свечения, я бы рекомендовал использовать низкие настройки заполнения и периметра для частей Outer и Inner Eye.

Шаг 2: базовая постобработка деталей, напечатанных на 3D-принтере

Единственная часть, которая требует доработки, - это Внешний глаз.

Поскольку на видимой стороне внешнего глаза использовались опоры, поверхность будет немного шероховатой. Используя наждачную бумагу с зернистостью ~ 120 - 240, разгладьте поверхность до тех пор, пока она не станет хорошо выглядеть (я знаю, что никто не любит шлифование, поэтому просто разгладьте ее, пока не будете довольны внешним видом, или полностью пропустите этот шаг).

Шаг 3. Сделайте глазное яблоко более реалистичным

Сделайте глазное яблоко более реалистичным
Сделайте глазное яблоко более реалистичным

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

Я предполагаю, что вы могли бы сделать гиперреалистичный глаз, грунтовав и закрасив глаз, но меня это не беспокоило; Никто не увидит эти мельчайшие детали, когда ваша тыква находится в темноте!

Шаг 4. Формируйте связи

Формируйте связи
Формируйте связи

Теперь, когда у вас есть все детали, напечатанные на 3D-принтере, вы почти готовы к сборке механизма. Вам просто нужно согнуть 3 куска изогнутой проволоки (я просто использовал стандартную скрепку), чтобы сформировать связи.

С помощью тонких плоскогубцев согните провода до тех пор, пока они не станут такими же, как на картинке выше.

Шаг 5: соберите механизм глаза

Соберите механизм глаза
Соберите механизм глаза
Соберите механизм глаза
Соберите механизм глаза
Соберите механизм глаза
Соберите механизм глаза

Теперь у вас есть все необходимое для сборки механизма проушины.

1. Первым делом приклейте «25mmEyeConnector» к внутренней проушине и боковой стороне основания.

2. Затем приклейте 2 «BaseSkewerMount1» к нижней части основания, как показано выше. Вам нужно будет продеть стандартную деревянную шпажку через отверстия в ее креплениях, поэтому при необходимости просверлите отверстия.

3. Установите 2 микро сервопривода SG90 в соответствующие гнезда в основании и закрепите их по 1 винту на каждый сервопривод. Оба этих сервопривода должны быть выровнены так, чтобы их провода выходили из открытой стороны гнезда.

4. Подсоедините 3 звена к внешней проушине и рупорам сервопривода. Самое большое звено идет на верхнее отверстие проушины, а нижнее отверстие остается неподключенным. Затем наденьте внешний глаз на внутренний. См. Изображения выше.

НЕ ПОДКЛЮЧАЙТЕ СЕРВОРОГАТЫ К СЕРВОПРИЯТИЯМ. Это связано с тем, что сначала необходимо установить сервоприводы (объяснено на более позднем этапе).

Шаг 6: Подключите все

Подключить все
Подключить все
Подключить все
Подключить все
Подключить все
Подключить все

Нам нужно подключить все, прежде чем мы сможем разместить сервоприводы и подключить сервоприводы.

Если вы используете файлы корпусов Arduino Nano, которые включены:

1. Извлеките 6 штырей с вилки из верхней части Nano. Они будут мешать крышке корпуса, но 2 ряда штекерных разъемов на дне Nano предназначены для размещения, поэтому их можно оставить.

2. Вставьте плату в нижнюю часть корпуса, направляя 2 ряда разъемов через прорези в нижней части корпуса, пока плата не станет ровной.

3. Подключите сигнальный провод сервопривода горизонтальной оси (сервопривод установлен ниже и ближе к глазу) к контакту D8 на Arduino Nano. Подключите сигнальный провод сервопривода вертикальной оси к контакту D9 Nano.

5. Подключите триггерный контакт ультразвукового датчика к контакту D3.

6. Подключите вывод эхо к выводу D2.

7. Наконец, подключите два провода к контактам 5V и GND Nano.

8. Подключите провода питания Nano, сервопривода горизонтальной оси, сервопривода вертикальной оси и ультразвукового датчика параллельно к батарейному блоку AA (я склеил 2 корпуса 2SAA и соединил их последовательно, чтобы получился корпус 4SAA). Убедитесь, что есть точки соприкосновения. См. Законченную схему и схему выше.

9. Оберните соединения изолентой. Это помогает сделать соединения водонепроницаемыми, а также сводит к минимуму вероятность ослабления соединений.

4. Крышка этого кейса имеет удлинение кнопки, так что вы можете нажать кнопку сброса без необходимости открывать кейс. Перед тем, как закрыть крышку кейса, вставьте «buttonExtender» в отверстие более тонкой стороной наружу и защелкните крышку на месте. Я считаю, что кнопка полезна для быстрой остановки программы, но если вас не волнует доступ к кнопке сброса и вы не возражаете против небольшого отверстия в крышке, пропустите этот шаг.

Шаг 7: верните сервопривод в исходное положение и завершите работу с глазным механизмом

Домой ваши сервоприводы и завершите работу глазного механизма
Домой ваши сервоприводы и завершите работу глазного механизма
Домой ваши сервоприводы и завершите работу глазного механизма
Домой ваши сервоприводы и завершите работу глазного механизма
Домой ваши сервоприводы и завершите работу глазного механизма
Домой ваши сервоприводы и завершите работу глазного механизма
Домой ваши сервоприводы и завершите работу глазного механизма
Домой ваши сервоприводы и завершите работу глазного механизма

Сервоприводы перемещаются от 0 до 180 °, поэтому важно, чтобы середина диапазона движения сервопривода составляла середину диапазона движения глаза.

Вам необходимо центрировать сервоприводы на 90º перед подключением сервоприводов, и это можно сделать, загрузив эскиз «Home_Servos1» в Nano. Этот набросок сделает так, что когда сервопривод подключен к любому цифровому выводу, сервопривод получит команду перейти на 90º.

Установив сервоприводы по центру, вы можете осторожно надавить на их соответствующие сервоприводы. См. Последнюю из вышеприведенных фотографий, чтобы узнать приблизительный угол, под которым должны находиться рупоры сервоприводов, когда сервоприводы центрированы.

Закрепите каждый рог сервопривода одним винтом через его центр.

Шаг 8: вырежьте тыкву и прикрепите глаз к тыкве

Вырежьте тыкву и прикрепите глаз к тыкве
Вырежьте тыкву и прикрепите глаз к тыкве
Вырежьте тыкву и прикрепите глаз к тыкве
Вырежьте тыкву и прикрепите глаз к тыкве
Вырежьте тыкву и прикрепите глаз к тыкве
Вырежьте тыкву и прикрепите глаз к тыкве

Вырежьте из тыквы все, что захотите! Это не инструкция по вырезанию тыквы, поэтому я пропущу большинство этих деталей.

Единственная важная вещь в вашей резьбе по тыкве - это то, что отверстие для глаз не должно быть слишком высоким, иначе сервоприводы будут заблокированы «потолком» тыквы.

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

Чтобы установить проушинный механизм:

1. Коротко обрежьте шпажку и вставьте ее в одно из креплений, которые мы приклеили к нижней части основания. Теперь держите все это внутри тыквы так, чтобы глаз находился в нужном месте, и протолкните короткую шпажку внутри тыквы, пока она не выйдет с другой стороны. Таким образом вы точно отметите расположение шампуров, а не просто протыкаете шампур снаружи тыквы и надеетесь, что попадете в нужное место. Повторите то же самое для другого крепления для шампуня и другой стороны тыквы.

2. Теперь вы можете протолкнуть 2 шампура с внешней стороны тыквы через крепления для шампуров, а затем вытащить другую сторону тыквы. Теперь механизм проушины должен быть закреплен достаточно надежно. См. Изображения выше. (Вы заметите черную ленту, которую я использовал, когда клей не удался).

3. Я поместил электронику и батарейки в пластиковый пакет, чтобы они оставались чистыми, и положил его внутрь тыквы.

4. Закройте линзу электрического фонарика полупрозрачным желтым пластиком и поместите фонарик прямо за глазом, чтобы глаз светился в темноте. Чтобы установить фонарик на уровень с глазком, я поставил его на банку.

Я думаю, что лучший способ использовать ультразвуковой датчик - это удлинить его провода, чтобы вы могли разместить его где-нибудь рядом с тыквой, а не на тыкве. Я решил, что датчик не нужен для моего приложения, поэтому пропустил датчик, оставив четыре дополнительных провода. Один и тот же код будет работать независимо от того, подключен ли у вас ультразвуковой датчик, и никаких параметров изменять не нужно.

Шаг 9: Загрузите код

Ты почти сделал!

Загрузите код и откройте IDE Arduino.

Я проведу вас через настройки кода, которые вам может потребоваться изменить:

int Repeats = 40; // определяем количество движений глаз, которые нужно сделать перед ожиданием следующего пинга сонара

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

#define hLeftLIMIT 55

#define hRightLIMIT 110 #define vTopLIMIT 6 #define vBotLIMIT 155

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

#define hServoCenterTrim -3

#define vServoCenterTrim -13

Эти значения позволяют точно установить исходное положение глаза, когда тыква ожидает повторного срабатывания ультразвукового датчика.

const int hServoPin = 8; // определяем штифт для подключения горизонтального сервопривода к

const int vServoPin = 9; // определяем штифт для подключения вертикального сервопривода к

Эти строки кода определяют контакты, которым будут назначены сервоприводы.

const int ultrasonic1 = {3, 2}; // определяет триггерные и эхо-выводы соответственно

Эта строка кода создает массив, который сообщает программе, к каким контактам подключен ультразвуковой датчик.

const long triggerDistance = 1000; // устанавливаем максимальное расстояние (мм) до срабатывания ультразвукового датчика

Эта строка кода устанавливает максимальное расстояние до срабатывания ультразвукового датчика и вызова функции.

const byte whatFunctionToCall = 1; // (0-1) сообщает программе, какую функцию вызывать

// rollEyes = 0 // randomTwitching = 1

Эти строки кода позволяют вам выбрать, хотите ли вы, чтобы тыква закатила глаз или двигалась случайным, нервным образом. Значение должно быть = 0 или 1. Если значение = 1, программа выполнит функцию randomTwitching. Если значение = 0, программа выполнит функцию rollEye. Если значение ≠ 1 или 0, программа не будет выполнять никаких функций.

Шаг 10: Готово

Готово!
Готово!
Готово!
Готово!
Готово!
Готово!
Готово!
Готово!

Выполнив эти простые шаги, вы только что создали свою собственную тыкву с аниматронным глазом!

Пожалуйста, оставьте комментарий, если у вас есть какие-либо вопросы или вы хотите оставить отзыв.

Рекомендуемые: