Ответ на пост «Я у мамы инженер»
Видел видео где такие штуки используются чтобы поставить рекорд в играх не телефоне или планшете, например вот такое
С сервоприводами
С использованием реле
Видел видео где такие штуки используются чтобы поставить рекорд в играх не телефоне или планшете, например вот такое
С сервоприводами
С использованием реле
Я собирался показать что экструдер работает, но сначала расскажу как я всё таки его подключал и с чем пришлось столкнуться.
Вот фото оптического датчика квадратурного энкодера, чтобы считать и крутить на нужное количество шагов и в нужном направлении, для этого есть 4 контакта: +,-(которые я в первый раз, что на фото перепутал), и два выхода с энкодера. Долго ломал голову: почему не работает. Помогло родным шлейфом от струйного принтера подключиться к плате струйника и там вызвонить минусовой провод. На + подал 5 Вольт с ардуины.
В процессе вызванивания я понял что на минус припаял плюсовой провод и на плюс минусовой провод. Перепаял + и -, поменяв их местами и Энкодер начал светиться красным:
Вспоминал статью pamalofeev, про его энкодеры с принтера hp, иподумал было припаять подтягивающие резисторы к плюсу. Но глядя на осцилограф на сигналы с энкодера при вращении диска, выяснил что в струйниках от Canon всё намного проще, и на энкодерных выходах(2 выхода, тонкий зеленый и желтый проводники) сразу идёт сигнал с TTL уровнями(0 и 5 Вольт).
Дальше прошил Ардубину Уно на проброс ком порта,, подключил выводы Уно DI2,DI3 к RXT, TXD(если не подключается, поменять их местами и не забыть про землю) и соединился с помощью программы ServoTuning c сервоконтроллером. Скорость Com-порта 38400 БоД.
Кстати. Тинька прошита бинарником, который можно найти в иинтернете на форумах чпушников, или могу прислать по электропочте.
Собственно управляющая плата с 4 контроллерами:
Оборотную сторону показывать не буду, ибо там всё выглядит немного похабно и порнографично не очень. Температуру хотенда Teacup firmware через софт Pronterface уже показывает. Но на настоящий момент она незакончена, нужно соединить Нанку с Y-осью(X,Z, Extruder уже подсоединены) и добавить схему для датчика температуры стола. И на отдельной небольшой платке расположить полевые транисторы для нагрева стола, экструдера, и вентилятора хотенда.
А вот работа эктрудера но пока без филамента. В процессе тестов я выяснил одну деталь: ось подающей пруток шестерни немного перекошена, что немного печалит и отдаляет запуск, так как экструдер скорее всего придётся переделывать, но посмотрим.
Дальше по плану сборка механической части: посадить экстредур на подшипники, заставить его кататься по оси Х, начать делать каретки для оси Y, а уже по ним отталкиваться к постройке рамы. Для оси Х,У я купил профильную стальную трубу квадрат 15мм*15мм, так что съедать её ка алюминиевый профиль подшипники не будут.
Проект подойдет для тех, кто только начинает осваивать Ардуино. Код подробно прокомментирован, а требуемая элементная база минимальна.
Робот реагирует на движение. Если положить мелкий предмет ему в корыто, он открывает рот и забрасывает предмет внутрь себя. Для реализации проекта потребуется 3D-принтер, паяльник, установленная среда программирования Arduino IDE, простейшие навыки работы с Ардуино, большой адронный коллайдер и несколько электронных компонентов:
- Arduino pro mini
- Ультразвуковой дальномер HC-SR04
- Сервопривод SG90 или аналогичный
- Блок питания 5V или аккумуляторы
- Корпус напечатанный на 3D-принтере
- Светодиод и резистор 220 Ом (опционально)
Печатаем корпус
Качаем файлы для печати на 3d-принтере с Thingeverse и собираем по инструкции. При желании можно раскрасить корпус акриловыми красками.
Анимация с процессом сборки робота
Паяем электронику
Перед пайкой прошиваем контроллер. Здесь Качаем скетч для загрузки в Arduino IDE. Затем паяем по схеме.
Вместо Arduino Uno (на схеме) нужно использовать Arduino Pro Mini. Компактная плата легко умещается в голове робота, на то она и mini.
Для питания робота из его затылка выведен провод для подключения блока питания на 5 вольт.
И на прощание видео с процессом сборки и демонстрация результата.
Одна вакансия, два кандидата. Сможете выбрать лучшего? И так пять раз.
Пикабу, привет!
Вот уже года два с перерывами я собираю один проект на базе Arduino, а именно RC модель на WI-FI управлении, но как и в любом деле встречаются трудности.
Вообщем, в состав моей RC машинки входит:
●сервопривод sg90,
●arduino wemos d1 mini,
●драйвер двигателя
●130 электро двигатель
Сама схема:
Само управление происходит с помощью мобильного приложения REMOTE XY
Суть проблемы:
Ни в какую не хочет работать сервопривод, абсолютно не подает никаких признаков жизни, в то время как вся остальная аппаратура исправно работает. Грешу на китайцев, что может они прислали брак, а может и я так криво спаял, а может и ардуинка не пашет, а может я входы на ардуино перегрел и сжег как раз таки входы для сервы, а может, а может все что угодно... Я в этом не очень силен, но закончить дело мне нужно все таки были потрачены деньги на остальные комплектующие, а без решения этой проблемы они абсолютно не нужны.
P.S. Если реально заморочитесь и поможете, скину на хлеб, честно.
Добрый день, возможно немного глупый вопрос, я только начинаю изучать ардуино и как это все работает, подскажите пожалуйста. У меня есть приемник\передатчик 27Мгц, в зависимости от нажатия кнопок на двух проводах полярность либо + - либо - +. Как я могу определить с помощью ардуино какая кнопка в данный момент нажата?
У меня есть вот такой код, но в нем наверное что-то не так:
Серва подключена к 10 порту, а один из двух проводов к шестому.
В рамках создания комплекса экзокисти под управлением нейрокомпьютерного интерфейса написал прошивку для Arduino Mega, которая через CAN-контроллер управляет серводвигателем RMD-X8 Pro, приводящим в движение механизм экзокисти. Модель экзокисти создавали наши студенты, прошивка представляла собой скетч, вырезанный из другого проекта, двигатель мог управляться только с помощью джойстика. Причем джойстик при движении вперед раскручивал двигатель вперед, а при отклонении джойстика в обратную сторону постепенно останавливал его и начинал неконтролируемые движение в обратном направлении. При остановке джойстика движение также не прекращалось. Контроля углов вращения не было.
Особенность этого двигателя в том, что при вращении вала двигателя на 360 градусов редуктор примерно в четыре раза уменьшает угол поворота, а энкодер двигателя контролирует вращение только на 360 градусов по валу двигателя, что фактически является только четвертью полного оборота. При прохождении отметки в 360 градусов энкодер сбрасывался в ноль и считал данные заново.
Для двигателя есть настроечная программа, которая работает по протоколу serial-232, имеются варианты интерфейса двигателей с RS485 у которого больше возможностей, чем у CAN, который через один датафрейм может передать максимум 8 байт. В тестовой вкладке программы настройки примеры интерфейса управлением двигателя работают не так, как хотелось бы, но зато оказалось, что там есть команды, не описанные в документации. При использовании тестовых режимов программа указывает, какие данные она пересылает в датафрейме, и стало видно, что кроме команд позиционирования А1-А6 также используются команды А7 и А8, и последняя команда как раз подошла для нашей задачи.
Сейчас прошивка реализована следующим образом: от джойстика или от внешней управляющей программы (в итоге это будет нейрокомпьютерный интерфейс) приходит команда, что нужно выставить угол экзокисти в заданное значение. Прошивка определяет текущее положение двигателя, если угол больше, то подается команда на движение в обратную сторону, положение кисти постоянно контролируется.
Энкодер двигателя очень чувствительный – он позволяет позиционировать двигатель с точностью до сотых долей градуса. При команде на остановку двигатель по инерции проходит еще несколько сотых градуса, и без усреднения данных положения энкодер постоянно пытался бы вернуть двигатель точно в заданное положение, опять бы проскакивал его по инерции и т.д., что вызывало бы постоянное дерганье. Усреднил показания позиции, разделил их на 100 и отбросил дробную часть, чтобы сравнивались только целые градусы углов, поскольку точность в 1 градус вполне достаточна, а лишних дерганий удается избежать.
Добавил в прошивку подстраховку, что в случае неисполнения двигателем команды на остановку она будет посылаться снова и снова, пока двигатель не остановится. Кроме того, есть команда на аварийное отключение двигателя, если что-то идет не так.
Также добавил в прошивку работу с внешними интерфейсами через последовательный порт в формате JSON, через которые прошивка будет получать команды от внешней управляющей программы. На Java написана ретранслирующая программа, которая принимает пакеты по протоколу UDP, пересылает их в Ардуино по serial, с последовательного же порта получает ответ от платы и пересылает его обратно в управляющую программу высокого уровня по UDP. Это необходимо для обратной совместимости со сторонним программным обеспечением.
Думаю клубничку ставить не нужно
Справились? Тогда попробуйте пройти нашу новую игру на внимательность. Приз — награда в профиль на Пикабу: https://pikabu.ru/link/-oD8sjtmAi
Мне нужно подключить сервопривод к машинке на пульте управления, чтобы управлять сервой при помощи пульта. Насколько я почитал в интернете, для управления ей нужен микроконтроллер. В машине двигатель управляется двумя проводами с плюсом и минусом, в зависимости от того куда нужно ехать, полярность меняется. Можно подключить машинку, например, к Arduino Uno и чтобы в зависимости от того какая полярность сейчас, двигать серву в нужную сторону? Как лучше сделать?