Содержание:
- Введение
- Видеопрезентация работы
- Шаг 1. Материалы и инструменты
- Шаг 2. Построение каркаса
- Шаг 3. Установка сервоприводов
- Шаг 4. Установите сервопривод один на другой
- Шаг 5. Прикрепите ноги
- Шаг 6. Посмотрите на все вместе
- Шаг 7. Создание диаграммы для соотношения
- Шаг 8. Макетная плата
- Шаг 9. Настройка сервоприводов
- Шаг 10. Вверх и вниз
- Шаг 11. Вперед и назад
- Шаг 12. Комбинирование
- Заключение
Введение:
Если вам нужен проект, который будет использовать все свои сервоприводы и механизмы движения, вы можете создать простого робота-паука. Если у вас есть навыки работы с техникой Fischertechnik, LEGO и K'NEX и лишние сервоприводы, этот проект для Вас. Действительно, этот паук с нелепыми движениями является большой обучающей платформой. Основной целью этого проекта является обучение основам работы сервоприводов, их синхронизации, программированию и пониманию диапазона и силы. Результат будет очень забавным.
Техника Fischertechnik, безусловно, не так популярна, как Lego или K'NEX, но она очень хорошо подходит для осуществления строительных навыков.
Видеопрезентация работы:
Шаг 1. Материалы и инструменты:
Инструменты:
- термоклей
- набор лезвий
- винтовёрт Philips
- дрель с 7/32 сверлом
- дремель с очень тонким сверлом
Электроника:
- 6 AA батареек и прищепка
- 8 микросервоприводов с креплениями
- более 30 перемычек и контактных разъемов
Программная часть:
- плата Arduino и блок питания для неё
Запчасти:
- набор Fischertechnik.
1 – Fischertechnik
2 – макетная плата
3 – термоклей
4 – 30 перемычек
5 – батарея для Arduino
6 – тонкое сверло
7 – дремель
8 – отсек для батарей для сервоприводов
9 – сверло 7/32
10 – дрель
11 – прищепка для проводов
12 – Arduino
13 – микросервопривод с креплением
14 – лезвие
17 - крестообразная отвертка
Шаг 2. Построение каркаса:
Каркас вашего робота должен быть сделан из комплекта Fischertechnik. На данных изображениях видно, как он должен выглядеть.
1 – здесь показаны 3 различные вещи, которые будут работать. В принципе, вам нужны высокие «кирпичики». Но в примере показана средняя часть; 2 – между кирпичиками должны быть 4 отверстия. Вы будете использовать кусок с 11 вырезами на двух концах и одним в центре. Убедитесь, что у вас рабочие сервоприводы.
1 – это блоки, к которым будут крепиться сервоприводы; 2 – вы будете делать всё на обратной стороне, здесь конструкция перевернута.
Шаг 3. Установка сервоприводов:
Теперь возьмите дремель. Сервоприводы удобно могут поместиться между «кирпичиками». Просверлите небольшое отверстие, затем с помощью винта сервопривода прикрепите их до дюйма. Для этой цели вы можете просто использовать термоклей, но всегда легче разобрать, если вы используете болты.
1 – установите другой серво на другой стороне вспять. Повторите это на лицевой стороне; 2 - обратите внимание на точку подключения, которая находится на стороне ближайшего края; 3 – самое меньшее сверло
Шаг 4. Установите сервопривод один на другой:
Сначала вам нужно привести в порядок крепления сервоприводов. Если серво вращается в противоположную сторону от вас, поверните его до упора вправо. Смотрите фотографии.
Винт сервопривода должен торчать над пластиком в отличие от других, где головка винта опускается ниже пластика. Таким образом, он будет колебаться и вращаться вокруг центра. Чтобы это исправить, возьмите дрель со сверлом 7/32 и просверлите небольшой отступ на сервоприводе, который будет прикреплен к верхней части основания сервопривода. Затем, используя термоклей, приклейте два сервопривода вместе.
1 - здесь нижняя часть устройства должна всё время вращаться.
1 - просверлите в центре. Будьте осторожны, чтобы не затронуть другие стороны.
1 – это слишком большая головка винта, чтобы поместиться внутрь.
1 – так должна выглядеть спина, когда вы закончите. Вы просто должны быть внимательны, чтобы узнать, как монтировать каждый сервопривод.
1 – обратите внимание на ориентацию сервоприводов.
Шаг 5. Прикрепите ноги:
Эта часть немного сложнее. Смотрите фотографии, как сделать ноги для робота. Ног должно быть 4.
1 – это запчасти под номером 45; 2 – убедитесь, что эта часть повернута в другую сторону от остальных частей.
1 - одна из 45 деталей будет крепиться через эти 4 отверстия.
1 – подключите все это вместе, и у вас осталось ещё три ноги, чтобы робот смог полноценно ходить.
Шаг 6. Посмотрите на все вместе:
После того, как вы соберете все ноги вместе, у вас должен получиться приблизительно такой вид.
1 – обратите внимание на большое количество клея для того, чтобы прикрепить ноги.
Шаг 7. Создание диаграммы для соотношения:
Это самый полезный шаг из всех. Создайте диаграмму, как показано на рисунке, и выясните, какой путь составляет для каждого сервопривода 180 градусов, а какой 0. Затем пронумеруйте все сервоприводы. Эти номера вы будете использовать в вашей программе Arduino.
1 – это верхний левый сервопривод; 2 – эти 10 должны быть нулевыми; 3 - это правый нижний и верхний сервоприводы.
Шаг 8. Макетная плата:
Вытащите все 30 перемычек. Соедините проводами все, в зависимости от схемы. Вот как это работает. Каждый сервопривод имеет 3 выхода проводов, питание, заземление и контроль.
Подключите Vcc и GND от сервопривода к Vcc и GND каналам вашего макета. Подключите 7,5 вольт от вашей батареи к GND и Vcc каналов вашего макета. Затем, следуя вашей схеме, которую вы сделали ранее, подключите провода для управления сервоприводом (желтого или оранжевого цвета) к контактам 2-9. Например, серво-1 подключается к контакту 2 на Arduino. Servo 2 подключается к контакту 3 и так далее.
Шаг 9. Настройка сервоприводов:
Теперь время выработать код. Первое, что нужно сделать, это создать новый проект Arduino для синхронизации сервоприводов. В этом проекте вы будете синхронизировать все сервоприводы.
Итак, что вы должны сделать, чтобы выяснить, под каким градусом нужно ввести код (1-179), чтобы направить сервоприводы вверх и вниз на одном уровне с землей. Тогда получите левый и правый сервоприводы на нижнем уровне. Давайте рассмотрим код.
Затем, посмотрите на вторую фотографию, чтобы понять, как получить код для вашего робота-паука.
1 – скопируйте это для серво библиотеки; 2 – это указывает Arduino на сервоприводы 1, 2, 3…; 3 - это крепления сервоприводов присоединяются к контактам (серво1 к контакту 2 и так далее); 4 – это были все номера, используемые, чтобы получить работу всех сервоприводов. Нечетные номера вверху и внизу предназначены для сервоприводов задней части.
1 - код выше (и ниже) выравнивает ноги.
#includede<Servo.h>
Servo servo1;
Servo servo2;
Servo servo3;
Servo servo4;
Servo servo5;
Servo servo6;
Servo servo7;
Servo servo8;
void setup()
{
servo1.attach(2); // s is on pin 8
servo2.attach(3);
servo3.attach(4);
servo4.attach(5);
servo5.attach(6);
servo6.attach(7);
servo7.attach(8);
servo8.attach(9);
}
void loop()
{
// all the motors level fowards and backwards
servo1.write(15);
servo2.write(100);
servo3.write(179);
servo4.write(95);
servo5.write(160);
servo6.write(140);
servo7.write(15);
servo8.write(85);
}
Шаг 10. Вверх и вниз:
Теперь вы должны узнать значения для работы ног, чтобы поднять паука с земли. Создайте новый проект под названием Up и Down. Этот проект заставляет ноги паука двигаться вверх и вниз. Обратите внимание, что противоположности будут поднимать в первую очередь. Смотрите видео.
1 – смотрите предыдущие соотношения; 2 – очень важно. Возьмите длину сервоприводов и поместите их на место. Это обеспечит их режимом ожидания, пока другие серво работают; 3 – противоположности двигаются вверх и вниз, бесконечный цикл.
#include<Servo.h>
Servo servo1;
Servo servo2;
Servo servo3;
Servo servo4;
Servo servo5;
Servo servo6;
Servo servo7;
Servo servo8;
void setup()
{
servo1.attach(2); // s is on pin 8
servo2.attach(3);
servo3.attach(4);
servo4.attach(5);
servo5.attach(6);
servo6.attach(7);
servo7.attach(8);
servo8.attach(9);
}
void loop()
{
servo2.write(100); // these numbers are to keep the spin servos put.
servo4.write(95);
servo6.write(140);
servo8.write(85);
servo1.write(50); // M1 Up
servo7.write(50); // M1 Up
delay(500);
servo1.write(25); // M1 Down
servo7.write(35); // M7 Down
delay(1000);
servo3.write(135); // M3 Up
servo5.write(120); // M5 Up
delay(500);
servo3.write(150); // M3 Down
servo5.write(140); // M5 Down
delay(1000);
}
Шаг 11. Вперед и назад:
Теперь нам нужно заставить сервоприводы двигаться вперед и назад.
Вот код, который можно использовать. Когда вы сделали всё, это должно выглядеть следующим образом.
#include<Servo.h>
Servo servo1;
Servo servo2;
Servo servo3;
Servo servo4;
Servo servo5;
Servo servo6;
Servo servo7;
Servo servo8;
void setup()
{
servo1.attach(2);
servo2.attach(3);
servo3.attach(4);
servo4.attach(5);
servo5.attach(6);
servo6.attach(7);
servo7.attach(8);
servo8.attach(9);
}
void loop()
{
servo2.write(80); // M2 foward
servo8.write(120); // M8 foward
delay(500);
servo2.write(120); // M2 backwards
servo8.write(90); // M8 backwards
delay(1000);
servo4.write(120); // M4 fowards
servo6.write(110); // M6 fowards
delay(500);
servo4.write(80); // M4 backwards
servo6.write(140); // M6 backwards
delay(1000);
}
Шаг 12. Комбинирование:
Теперь вам нужно скомбинировать переднюю и заднюю часть с верхом и низом робота. Он должен пойти.
1 – смотрите аналогичный код в предыдущих картинках.
#include<Servo.h>
Servo servo1;
Servo servo2;
Servo servo3;
Servo servo4;
Servo servo5;
Servo servo6;
Servo servo7;
Servo servo8;
void setup()
{
servo1.attach(2); // s is on pin 8
servo2.attach(3);
servo3.attach(4);
servo4.attach(5);
servo5.attach(6);
servo6.attach(7);
servo7.attach(8);
servo8.attach(9);
}
void loop()
{
servo1.write(50); // M1 Up
servo7.write(50); // M1 Up
delay(500);
servo2.write(80); // M2 foward
servo8.write(120); // M8 foward
delay(500);
servo1.write(25); // M1 Down
servo7.write(30); // M7 Down
delay(500);
servo2.write(120); // M2 backwards
servo8.write(90); // M8 backwards
servo3.write(140); // M3 Up
servo5.write(120); // M5 Up
delay(500);
servo4.write(120); // M4 fowards
servo6.write(110); // M6 fowards
delay(500);
servo3.write(160); // M3 Down
servo5.write(145); // M5 Down
delay(500);
servo4.write(80); // M4 backwards
servo6.write(140); // M6 backwards
}
Заключение:
Ваш проект полностью готов. Теперь вы можете добавить некоторые датчики или что-то в этом роде, чтобы увеличить возможности робота. Но и в таком виде он очень интересный и забавный!