Оглавление:

Venus Flytrap - ITM осень 2019: 5 шагов
Venus Flytrap - ITM осень 2019: 5 шагов

Видео: Venus Flytrap - ITM осень 2019: 5 шагов

Видео: Venus Flytrap - ITM осень 2019: 5 шагов
Видео: 5 Incredible Venus Flytrap Varieties #YouTubeShorts #Shorts 2024, Июль
Anonim
Image
Image

Чего не хватает на всех столах? Механическая мухоловка Venus Flytrap, в которой хранятся карандаши, ручки и другие предметы.

Шаг 1: Детали

Тебе понадобится:

* 3D-принтер (см. Файл.stl) для горшка

* Деревянные палки и дрель

* Паяльные инструменты

* Arduino Uno и IDE

* Макетная плата

* Фоторезистор

* Выключатель

* MicroServo Sg90

* Пенопласт

* Электрическая и силиконовая лента

* Провода

* Петли

* Горячий клей

Шаг 2: Создайте схему и напишите код Arduino

Распечатайте горшок и разрежьте ствол и ветви
Распечатайте горшок и разрежьте ствол и ветви

Схема соединяет фоторезистор, переключатель, сервопривод и силовой механизм через Arduino. Мы подключаем сервопривод к его рабочему циклу ШИМ на контакте Arduino, считываем фоторезистор с аналогового контакта A0 и считываем кнопку с цифрового контакта 2.

Простая макетная плата на фотографии работает, хотя в конечном итоге мы припаяли провода к постоянной макетной плате для устойчивости.

Код Arduino предназначен, прежде всего, для трех вещей:

1. Считайте показания фоторезистора и сравните показания с предварительно установленным порогом. Когда фоторезистор показывает низкий уровень (темный), показание будет ниже порогового значения, а когда показание высокое (светлое), оно будет выше порогового значения.

2. Основываясь на показаниях фоторезистора, скажите сервоприводу перейти в одно из двух положений («открытое» и «закрытое» положение, обозначенное в коде как val и val2). Когда фоторезистор ничто не закрывает, показания будут высокими, а сервопривод находится в открытом положении. Когда есть объект, закрывающий фоторезистор, показание будет низким, и сервопривод переместится в закрытое положение.

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

См. Код ниже:

#include Servo myservo; int val = 20; // инициализируем значение закрытой позиции int val2 = 70; // инициализировать значение открытой позиции void setup () {// инициализировать последовательную связь со скоростью 9600 бит в секунду: Serial.begin (9600); // инициализируем сервопривод и прикрепляем его рабочий цикл ШИМ к выводу 9 myservo.attach (9); pinMode (2, ВХОД); // инициализируем переключатель как вход} const int threshold = 20; // инициализируем порог фоторезистора для закрытия int buttonState = 0; // инициализируем переменную для чтения состояния переключателя int sensorValue = 100; // инициализируем переменную для значения фоторезистора int stayclosed = 0; // инициализируем переменную для сохранения позиции после активации //// процедура цикла запускается снова и снова бесконечно: void loop () {// считываем ввод с переключателя: buttonState = digitalRead (2); // считываем вход с датчика фоторезистораValue = analogRead (A0); // выводим показания фоторезистора на серийный монитор: Serial.println (sensorValue); if (buttonState == LOW) {// переключатель выключен if (stayclosed == 1) {// если переменная стабильности положения включена,; // оставаться в текущей позиции} else if (sensorValue <threshold) {// если значение датчика упало ниже порогового значения, myservo.write (val); // переводим ловушку в закрытое положение, stayclosed = 1; // и изменим переменную стабильности, чтобы она оставалась закрытой}} else {// переключатель включен if (stayclosed == 0) {// если переменная стабильности положения выключена,; // остаемся в текущем положении} else {// обнаруживаем, что переключатель включен в первый раз delay (500); // Задержка на 500 мс и проверка, чтобы убедиться, что переключатель все еще включен buttonState = digitalRead (2); // считываем ввод с переключателя if (buttonState == HIGH) {// если переключатель включен, myservo.write (val2); // переводим ловушку в открытую позицию stayclosed = 0; // и меняем переменную стабильности, чтобы она оставалась открытой}}}}

Шаг 3: Распечатайте горшок и отрежьте ствол и ветви

CAD: Цветочный горшок с печатью

* Используйте файл STL, включенный выше, для 3D-печати цветочного горшка, который служит основанием для ловушки венериной мухи.

* Убедитесь, что размеры цветочного горшка достаточно велики, чтобы в основании можно было разместить Arduino и макетную плату.

Работа по дереву: ствол и ветви

* Используйте ленточную пилу, чтобы вырезать деревянный дюбель размером 1 на 24 дюйма до длины 12 дюймов для ствола.

* Используйте ручную дрель, чтобы сделать три отверстия диаметром ½ дюйма на разной высоте на стволе, куда должны быть вставлены ветви. Отверстия следует просверлить под углом примерно 45 °, чтобы ветви можно было вставить под углом.

* Используйте ленточную пилу, чтобы разрезать деревянные дюбели ½ на 12 дюймов на три ветви разной длины по желанию. Используя ленточную пилу, обрежьте один конец каждой ветви под углом 45 °, чтобы создать плоскую поверхность, на которой можно установить ловушки.

* Вставьте ветки в отверстия ствола (открытыми скошенными концами) и закрепите клеем гориллы или горячим клеем.

Шаг 4: создайте ловушки

Шаги по созданию ловушки:

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

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

* Вставьте две стороны петель в соответствующие зажимы.

* Оберните зажимы цветной лентой для эстетики.

* Проделайте небольшое отверстие в нижнем зажиме и вставьте фоторезистор (он должен плотно прилегать)

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

* Прикрепите двигатель к стороне прямоугольного основания верхнего зажима суперклеем и лентой (на этом механизм ловушки завершен)

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

Шаг 5: Собираем все вместе

* Поместите ствол и ветви внутрь горшка и приклейте Arduino UNO и макет также внутрь горшка

* Стабилизируйте ствол камнями, осторожно, чтобы не порвать провода.

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

* Используйте внешний аккумулятор в качестве источника питания

* Удачной ловли Венеры на мухоловку!

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