Оглавление:
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:52
В этом руководстве будет рассказано, как делается 2D-блок выбора и размещения и как его кодировать.
Шаг 1. Компунеты
1x Адрио Мега
2 шаговых двигателя (мы использовали шаговый двигатель JLB, модель 17H1352-P4130)
Модуль платы контроллера привода шагового двигателя 2x L298N Dual H Bridge DC для Arduino
1x серводвигатель (у нас нет пятнышка на этом)
3 резистора по 10 кОм
2x нейлоновые волдыри
1x блок питания 12 В
Немного дерева для каркаса
Провода
Шаг 2: Строительство
Первым делом на этапе строительства было определиться с размером и формой механизма захвата и размещения.
Сначала мы строим древесину основной формы. Мы построили рамку для выбора и размещения размером 50 на 25 на 30 см. Все, кроме рамы, моста и подъемного рычага, было изготовлено с помощью лазерного резака.
Вот ссылка на все файлы
Затем мы захотели шкивную систему. Здесь мы пошли с двумя кольцами 50 мм и одним кольцом 20 мм. Затем мы кладем паракорд рядом с 20 мм с небольшим количеством клея. После этого мы сжали два 50-миллиметровых кольца с каждой стороны 20-миллиметрового кольца.
20мм
50 мм
Затем нам нужно разработать направляющую для руки. Здесь мы сделали две боковины и одну заднюю пластину.
Которая затем была склеена в виде П-образной формы. Затем мы соединили это с мостом.
Боковая пластина
Задняя пластина
Теперь, когда части для перемещения руки вверх и вниз готовы. Нам нужно двигать его вперед и назад.
При его разработке мы позаботились о том, чтобы зубы совпадали друг с другом. Таким образом, оба объекта были созданы в одном и том же месте проекта.
Шаг 3: Код
Программирование довольно простое и состоит из 5 частей.
- Включение библиотек и настройка переменных для внутреннего использования и ввода-вывода
- Загрузите входы в RAM
- Секвенс, выбрав нужное движение.
- Управление позиционированием шагового / сервопривода
- Выход в мир
Мы в общих чертах объясним каждую часть, но помните, что это лишь одно из многих решений.
1: Перед настройкой void мы включили 2 библиотеки, необходимые для этого проекта. Шаговый и сервопривод. Использование прилагаемых библиотек избавляет вас от необходимости изучать все подробности о шаговых и серводвигателях.
#включают
#включают
const int stepsPerRevolution = 200; // измените это, чтобы оно соответствовало количеству шагов на оборот для вашего двигателя
// инициализируем библиотеку шагового двигателя на контактах с 8 по 11:
Stepper XStepper (stepsPerRevolution, 22, 23, 24, 25); Степпер YStepper (stepsPerRevolution, 28, 29, 30, 31); Сервопривод Griper; // создаем сервообъект для управления сервоприводом
Захват должен быть прикреплен в настройках void
void setup () {// инициализируем последовательный порт: Serial.begin (9600); Griper.attach (9); // присоединяет сервопривод на выводе 9 к сервообъекту
Остальная часть этого раздела - это просто настройка переменных и констант.
2: Первое, что нужно сделать в Void Loop, - это загрузить все используемые входные данные в переменную. Это сделано по двум причинам. Первая причина - ограничить тяжелые задачи ЦП по чтению ввода. Вторая причина, которая является наиболее важной, состоит в том, чтобы убедиться, что если вход используется более одного раза, он будет иметь одно и то же значение на протяжении всего сканирования. Это упрощает написание последовательного кода. Это очень распространенная практика в программировании ПЛК, но она также применима и к встроенному программированию.
// ------------------------- Вывести в ОЗУ -------------------- Xend = digitalRead (34); Yend = digitalRead (35); Ena = digitalRead (36);
3: В части кода секвены мы только что создали секвены с помощью команд Switch и case. Часть sekvens просто подает сигналы части кода, управляющей положением. Эту часть можно легко настроить для вашего приложения или использовать как есть.
4: Положение сервопривода контролируется только сервоприводом liberi и оператором if для открытия и закрытия захвата.
Управление шаговым двигателем немного сложнее. Функция сравнивает заданное значение (положение, в которое должна перейти рука) и текущее положение. Если текущая позиция ниже, функция добавляет к позиции и просит функцию Stepper liberi сделать положительный шаг. Обратное верно для высокой позиции. если положение совпадает с заданным, бит XinPos установлен, и шаговый двигатель останавливается.
// SP controal X
if (XstepCountXsp, а не Home) {
XstepCount = XstepCount-1; Xstep = -1; XinPos = 0; } если (XstepCount == Xsp) {Xstep = 0; XinPos = 1; }
5: Добавьте конец кода, двигатели управляются с помощью функций liberi.
// -------------------- Вывод ---------------------- // шаг один шаг: XStepper.step (Xstep); // шаг на один шаг: YStepper.step (Ystep);
Griper.write (GripSp);
Шаг 4: Сделано
casp6099 - Каспер Хартунг Кристенсен
rasm616d - Расмус Хансен
Рекомендуемые:
UCL-Embedded-Omnidirestional Handsfree Car: 4 шага
UCL-Embedded-Omnidirestional Handsfree Car: вот как построить всенаправленный автомобиль, который будет следовать за вашей рукой, когда вы перемещаете ее над автомобилем. Файл "3d prrint omni-bil" 3D-принт рамы автомобиля. Файл "омни-машина" это код для вашей платы Arduino
Поместите свои SMD-детали на стандартную монтажную плату: 6 шагов (с изображениями)
Поместите свои SMD-детали на стандартную перфорированную плату: сейчас у Instructables проводится конкурс электронных советов и приемов, поэтому я подумал, что поделюсь некоторыми из своих относительно использования SMD-деталей и методов в стандартных задачах, односторонних, хороших старых перфокартах. Многие из нас, более тридцати типов, часто находят
Поместите ЖК-экран в свой покерный стол: 18 шагов (с изображениями)
Поместите ЖК-экран в свой покерный стол. Если вы похожи на нас, вам нравится время от времени проводить домашний покерный турнир. Мы с друзьями занимаемся этим несколько лет и привыкли использовать компьютер или ноутбук в качестве слепых часов, чтобы не отставать от игры и статистики игроков
Поместите изображение для своей учетной записи: 4 шага
Поместите изображение для своей учетной записи: я покажу некоторым из вас, кому нужна помощь, в добавлении изображения в качестве аватара или для вашего инструктажа. Вот несколько пошаговых инструкций, как это сделать. Пожалуйста, не стесняйтесь добавлять любые комментарии и несколько советов по этому поводу. Ниже
Поместите видео без задержек с вашего компьютера / Youtube на плееры Sansa: 4 шага
Поместите видео без задержек с вашего компьютера / Youtube на проигрыватели Sansa: видеоплееры Sansa испытывают задержку звука при воспроизведении большинства видео длительностью более 5 минут. My Instructable проведет вас через шаги по размещению видеороликов Youtube и видеороликов на вашем компьютере в видеоплеере Sansa