или войти через:
Ваша корзина пока пуста
favorite_border
Доступно только зарегистрированным пользователям

DIY: Простой робот паук на Arduino и Fischertechnik. Пошаговая инструкция по созданию

schedule 09.12.2013 в 18:39 link DIY Fischertechnik робот-паук простой робот Робот среднего уровня сложности
Содержание:
  1. Введение
  2. Видеопрезентация работы
  3. Шаг 1. Материалы и инструменты
  4. Шаг 2. Построение каркаса
  5. Шаг 3. Установка сервоприводов
  6. Шаг 4. Установите сервопривод один на другой
  7. Шаг 5. Прикрепите ноги
  8. Шаг 6. Посмотрите на все вместе
  9. Шаг 7. Создание диаграммы для соотношения
  10. Шаг 8. Макетная плата
  11. Шаг 9. Настройка сервоприводов
  12. Шаг 10. Вверх и вниз
  13. Шаг 11. Вперед и назад
  14. Шаг 12. Комбинирование
  15. Заключение


Введение:

Если вам нужен проект, который будет использовать все свои сервоприводы и механизмы движения, вы можете создать простого робота-паука. Если у вас есть навыки работы с техникой 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

 }
      


Заключение:

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

Комментарии: