Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-13 06:58
Я зашел на сайт howtomechatronics.com и увидел там манипулятор робота, управляемый через Bluetooth.
Мне не нравится использовать bluetooth, к тому же я видел, что мы можем управлять сервоприводом с помощью поворотного энкодера, поэтому я переделал его так, чтобы я мог управлять рукой робота, использовать поворотный энкодер и записывать его
Запасы
SG90 * 3
MG996 * 3
поворотный энкодер * 6
Ардуино мега * 1
2-контактная кнопка * 2
Резистор 560 Ом * 2
Винты и гайки M3
3д принтер
Шаг 1: Подключите сервоприводы
Слева направо: базовый сервопривод (MG996), сервопривод нижней талии (MG996), сервопривод локтя (MG996), нижний ручной сервопривод (SG90), средний ручной сервопривод (SG90), сервопривод захвата (SG90)
Мы не должны подключать 5V Arduino к внешним 5V (это резистор, подключенный параллельно, и они будут пытаться заряжать друг друга), но нам нужно соединить землю вместе в качестве эталона, чтобы они работали, если у вас нет заземления, подключенного к Arduino., нет обратного пути для тока от вашего сигнального провода (желтый провод), поэтому заземление внешнего источника питания должно подключаться как к контакту заземления сервопривода, так и к контакту заземления Arduino. (В то время как черный и красный провод - независимый источник питания)
Обратите внимание, что здесь я разделил схему подключения на сервопривод, кнопку и поворотный энкодер, потому что их легче читать по отдельности (все они подключаются к одному Arduino Mega с помощью контакта на каждой диаграмме)
Шаг 2: Подключите кнопку
Левая кнопка сброса
Кнопка воспроизведения правильная
Кнопка воспроизведения будет воспроизводить записанные движения.
Я использовал два резистора по 560 Ом.
Шаг 3: Подключите поворотные энкодеры
Контакты подключения:
// Входы поворотного энкодера 1
#define CLK1 53 #define DT1 51 #define SW1 49
// 2 входа поворотного энкодера
#define CLK2 45 #define DT2 43 #define SW2 41
// Роторный энкодер 3 входа
#define CLK3 50 #define DT3 48 #define SW3 46
// Роторный энкодер 4 входа
#define CLK4 42 #define DT4 40 #define SW4 38
// 5 входов поворотного энкодера
#define CLK5 34 #define DT5 32 #define SW5 30
// Поворотный энкодер 6 входов крайний правый
#define CLK6 26 // 26 #define DT6 24 // 24 #define SW6 22 // 22
Шаг 4: файлы STL
Файлы STL предоставлены howtomechatronics.com
Шаг 5: Код
Шаги:
Нажмите reset (сбросить воспроизведение)
Для сервопривода, кроме сервопривода захвата: поверните энкодер каждого сервопривода - нажмите энкодер (начальное положение записи) для каждого сервопривода, например, энкодер 1 - нажмите энкодер поворота 1 - поверните энкодер 2 - нажмите энкодер поворота 2
После того, как мы запишем начальные позиции, мы можем сделать то же самое, чтобы записать конечную позицию.
Для сервопривода захвата: (с другим сервоприводом) нажмите на энкодер (захват записи открыт) (после того, как мы запишем начальную позицию другого сервопривода, и они находятся в этом положении) поверните - нажмите еще раз (захват записи близко, чтобы что-то поймать) (после того, как мы запишем конечное положение другого сервопривода, и они будут в этом положении) вращение - нажмите на энкодер (захват записи открыт, чтобы освободить объект)
нажмите кнопку пуска (сервоприводы будут вращаться, начиная с начальной позиции, до конечной позиции) // если вы хотите повторить процесс, нужно нажать кнопку запуска несколько раз
кнопка воспроизведения правильная