Оглавление:

Makecourse: Одинокая лодка: 11 шагов
Makecourse: Одинокая лодка: 11 шагов

Видео: Makecourse: Одинокая лодка: 11 шагов

Видео: Makecourse: Одинокая лодка: 11 шагов
Видео: How to Build a LEGIT Online Course (2023) 2024, Ноябрь
Anonim
Image
Image
Список материалов
Список материалов

Это руководство было создано во исполнение требований проекта Makecourse в Университете Южной Флориды (www.makecourse.com).

Новичок в Arduino, 3D-печати и автоматизированном проектировании (САПР)? Этот проект - отличный способ изучить все основы этих тем и предлагает пространство для вашего творчества, чтобы воплотить его в жизнь! Он включает в себя множество CAD-моделирования конструкции лодки, введение в автономные системы и знакомство с концепцией гидроизоляции 3D-отпечатков!

Шаг 1: Список материалов

Чтобы начать работу над проектом, сначала нужно знать, с чем вы будете работать! Вот материалы, которые вам нужно иметь перед началом:

  • 1x микроконтроллер Arduino Uno R3 и USB-кабель (Amazon Link)
  • 1x контроллер мотора L298N (Amazon Link)
  • 4x (2 резервных) двигателя постоянного тока 3-6 В (Amazon Link)
  • 2 шаговых двигателя 28BYJ-48 и модули ULN2003 (Amazon Link)
  • 1x портативное зарядное устройство для телефона (вот то, что я использовал, но оно немного больше. Вы можете использовать другое, если хотите: Amazon Link)
  • 1x ультразвуковой датчик HCSR04 (по этой ссылке добавлено несколько дополнительных элементов с некоторыми перемычками: ссылка Amazon)
  • 3 набора перемычек (мужчина-женщина, мужчина-мужчина, женщина-женщина. Amazon Link)
  • 1x банка Flex Seal (16 унций, Amazon Link)
  • 1x Лента художника (ссылка на Amazon)
  • 1x мелкозернистая наждачная бумага (около 300 штук)
  • Несколько палочек для мороженого и кистей для нанесения гибкого уплотнения.
  • Доступ к 3D-печати. (Вот относительно дешевый и эффективный 3D-принтер - Amazon Link)

    • Красная нить для 3D-печати (ссылка на Amazon
    • Черная нить для 3D-печати (ссылка на Amazon)

Не стесняйтесь добавлять любые материалы, которые вы придумаете для своей версии проекта!

Шаг 2: детали и дизайн, напечатанные на 3D-принтере

Детали и дизайн, напечатанные на 3D-принтере
Детали и дизайн, напечатанные на 3D-принтере
Детали и дизайн, напечатанные на 3D-принтере
Детали и дизайн, напечатанные на 3D-принтере

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

Компоненты разрабатываются в SolidWorks и собираются в сборку. Все файлы деталей и сборка помещены в zip-файл, который можно найти в конце этого шага. Обратите внимание, что SolidWorks - не единственное программное обеспечение САПР, которое вы можете использовать, поскольку для САПР можно использовать многие программы, такие как Inventor и Fusion360. Вы можете импортировать в них детали SolidWorks.

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

Все в этом проекте напечатано на 3D-принтере (за исключением электрических компонентов), поэтому размеры важны. Я дал допуски около 0,01 дюйма на детали, чтобы убедиться, что все подходит друг к другу (вроде как свободная посадка). Было меньше допусков для осей, идущих к двигателю, чтобы они могли плотно прилегать. Лопасти плотно прилегают к оси, так что, когда моторы включены, лопасти движутся и приводят лодку в движение.

При просмотре САПР вы заметите платформы для электрических компонентов. Это делается для того, чтобы компоненты «вставали» в свою платформу, чтобы они не могли двигаться.

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

Шаг 3: Цепь управления

Цепь управления
Цепь управления
Цепь управления
Цепь управления

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

Не все компоненты, используемые в этом проекте, находятся во Fritzing, поэтому они заменены. Черный фотодатчик представляет собой датчик HCSR04, а небольшой полумост - контроллер двигателя L298N.

HCSR04 и L298N подключены к шинам питания на макетной плате, которые, в свою очередь, подключены к стороне питания Arduino (к контактам 5V и заземления). Выводы эха и триггера HCSR04 подключаются к контактам 12 и 13 на Arduino соответственно.

Контакты разрешения (которые управляют скоростью) для L298 подключены к контактам 10 и 11 (разрешение A / двигатель A) и 5 и 6 (ENB / двигатель B). Затем питание и заземление двигателей подключаются к портам L298N.

Arduino, конечно же, будет получать питание от нашего портативного зарядного устройства для телефона. Когда цепь включена, двигатели устанавливают максимальную скорость в направлении, определяемом нашим датчиком приближения. Это будет рассмотрено в части кодирования. Это сдвинет лодку.

Шаг 4: Код Arduino

Image
Image

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

- Код, написанный для Arduino, написан в программе, известной как интегрированная среда разработки Arduino (IDE). Это то, что вы должны скачать с официального сайта Arduino, который можно найти здесь. IDE написана на языках программирования C / C ++.

Код, написанный и сохраненный через IDE, известен как набросок. Включены в эскизы и файлы классов и библиотеки, которые вы можете включить из Интернета или те, которые вы создали сами. Подробные объяснения этого и того, как программировать в Arduino, можно найти здесь.

- Как видно в начале этого шага, у меня есть видео на YouTube, посвященное основному эскизу проекта, вы можете посмотреть его здесь! Это перейдёт к основному эскизу и его функциям.

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

В файле.h (HCSR04.h) перечислены функции и переменные, которые мы будем использовать в этой библиотеке, и указано, кто может получить к ним доступ. Мы начинаем с конструктора, который представляет собой строку кода, определяющую объект (в нашем случае, «HCSR04ProxSensor», который мы используем), который содержит значения, которые мы вводим в круглых скобках. Эти значения будут используемыми нами выводами эха и триггера, которые будут привязаны к создаваемому нами сенсорному объекту (который может называться как угодно, включая «HCSR04ProxSensor NameOfOurObject»). К вещам в рамках "общедоступного" определения может получить доступ кто угодно, как внутри библиотеки, так и за ее пределами (например, наш основной набросок). Здесь мы будем перечислять наши функции, которые мы вызываем в основном скетче. В «приватном» мы храним переменные, которые запускают библиотеку. Эти переменные могут использоваться только функциями в нашей библиотеке. По сути, это способ для наших функций отслеживать, какие переменные и значения связаны с каждым создаваемым нами сенсорным объектом.

Теперь переходим к файлу «HCSR04.cpp». Именно здесь мы определяем наши функции и переменные и то, как они работают. Это похоже на то, как если бы вы писали код в своем основном скетче. Обратите внимание, что функции должны быть указаны для того, что они возвращают. Для readSensor () он вернет число (в виде числа с плавающей запятой), поэтому мы определяем функцию пометки с помощью «float HCSR04ProxSensor:: readSensor ()». Обратите внимание, что мы должны включить «HCSR04ProxSensor::», имя объекта, связанного с этой функцией. Мы определяем наши контакты с помощью нашего конструктора, находим расстояние до объекта с помощью функции «readSensor ()» и получаем последнее прочитанное значение с помощью функции «getLastValue ()».

Шаг 5: 3D-печать всех деталей и сборки

Гидроизоляция печати
Гидроизоляция печати

После того, как две части корпуса напечатаны, вы можете склеить их малярной лентой. Это должно скрепить все вместе. Затем вы можете собрать все остальные детали как обычно, основываясь на нашем проекте САПР.

3D-принтеры работают на g-коде, который можно получить с помощью программного обеспечения для слайсера, которое поставляется вместе с принтером. Это программное обеспечение возьмет файл.stl (части, которую вы создали в САПР) и преобразует его в код для чтения принтером (расширение этого файла зависит от принтера). Популярные слайсеры для 3D-печати включают Cura, FlashPrint и другие!

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

Практически все 3D-отпечатки не подходят для воды, поэтому нам необходимо сделать их водонепроницаемыми. В этом проекте я выбрал применение Flex Seal, так как это довольно просто и отлично работает, чтобы не допустить попадания воды на печать.

Шаг 6: гидроизоляция печати

Гидроизоляция этого отпечатка важна, так как вы не хотите, чтобы ваша дорогая электроника была повреждена!

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

Шаг 7: шлифование корпуса

Шлифовка корпуса
Шлифовка корпуса

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

Шаг 8: нанесите Flex Seal

Нанесите Flex Seal
Нанесите Flex Seal

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

Шаг 9: оставьте гибкое уплотнение на месте

Оставьте уплотнение Flex Seal на месте
Оставьте уплотнение Flex Seal на месте

Теперь ждем! Обычно для полного высыхания гибкого уплотнения требуется около 3 часов, но я бы оставил его на 24 часа на всякий случай. Вы можете нанести еще один слой гибкого уплотнения, как только он закончится высыхать, чтобы защитить корпус еще больше, но это немного излишне (1 слой отлично подошел для меня).

Шаг 10: Сборка и тестирование

Сборка и тестирование
Сборка и тестирование

Теперь, когда гибкое уплотнение завершило высыхание, я бы рекомендовал протестировать корпус в воде перед добавлением электрических компонентов (если корпус НЕ является водонепроницаемым, это может создать проблемы для вашего Arduino!). Просто отнесите его к раковине или бассейну и посмотрите, может ли лодка плавать без протечек более 5 минут.

Убедившись, что наш корпус водонепроницаем, можно начинать добавлять все наши детали! Убедитесь, что Arduino, L298N и остальные компоненты правильно подключены к соответствующим контактам.

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

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

Шаг 11: конечный продукт

И теперь все готово! Проверьте, нет ли ошибок в тест-драйве (проверьте плавучесть лодки и корпуса перед применением электроники), и все готово!

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