Поиск по этому блогу

суббота, 7 декабря 2013 г.

Автобот-художник aka Drawbot. Part 3.

Йоу! Продолжаем нашу работу с Drawbot'ом - пошаговые инструкции )) Итак, я сконструировал крепления для аккумуляторов, собрал всё и получил следующую конструкцию:
После чего я приклеил плату с аналогом Ардуинки:
Поставил аккумы:
А теперь заливаем самую простую тестовую прогу (машинка будет ехать прямо и мигать диодом).

int m1FPin = 7;
int m1BPin = 11;
int m2FPin = 10;
int m2BPin = 9;



int sens_raw;

const byte DIR_FORWARD = 0;
const byte DIR_BACKWARD = 1;
const byte DIR_LEFT = 2;
const byte DIR_RIGHT = 3;
const byte DIR_STOP = 4;





void walkDir( byte dir ){
    if( dir==DIR_FORWARD ){
        analogWrite( m1FPin, 0 );
        analogWrite( m1BPin, 50 );
        analogWrite( m2FPin, 0 );
        analogWrite( m2BPin, 50 );
    }
    else if( dir==DIR_LEFT ){
        analogWrite( m1FPin, HIGH );
        analogWrite( m1BPin, LOW );
        analogWrite( m2FPin, LOW );
        analogWrite( m2BPin, HIGH );
    }
    else if( dir==DIR_STOP ){
        analogWrite( m1FPin, LOW );
        analogWrite( m1BPin, LOW );
        analogWrite( m2FPin, LOW );
        analogWrite( m2BPin, LOW );
    }
}

int led = 13;

// the setup routine runs once when you press reset:
void setup() {              
  // initialize the digital pin as an output.
  pinMode(led, OUTPUT);   
}

// the loop routine runs over and over again forever:



void loop() {

        walkDir( DIR_FORWARD );
        digitalWrite(led, HIGH);   // turn the LED on (HIGH is the voltage level)
        delay(1000);               // wait for a second
        digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
        delay(1000);               // wait for a second
// Serial.print(sens_raw);
// delay(500);
}
Проверяем, как всё работает )))
Вот видяшка нашего тест-драйва Drawbot_v1 :DDDDDDDDDDDD На фоне - руки Олега, мой ржач и озвучка Стаса :DDDDD
Далее я хочу сделать следующее - подружить Drawbot с Matlab'ом, чтобы он умел рисовать любые функции. Дружить Ардуинку и Матлаб я знаю как, теперь будем писать софт для нашего робота-художника )))

воскресенье, 10 ноября 2013 г.

Автобот-художник aka Drawbot. Part 2.

В этом посте будем разбирать создание "мозгов" для Drawbot'a со стороны "железа".
Управлением нашего автобота-художника будет заниматься Arduino Uno, а точнее его клон Shrimp, как решилось в итоге. Так же нам понадобится драйвер для двигателей.
Собираем схему на макетной плате:

Подробное описание схемы можно посмотреть тут - http://www.poprobot.ru/home/handmadearduino и тут http://robotclass.ru/?p=185
Для проверки, работает ли всё использовали светодиод:
Дальше мы решили сделать нормальные проводки для движка, а также просверлить углубления под болты в корпусе ("body"):
Далее подсоединяем питание к плате, устанавливаем все на базу. В итоге у нас стал вырисовываться такой монстрик (аккумы пока взяли такие, чтобы не запариваться):
Конечно же проверяем с помощью светодиода как всё работает:
Теперь следующие этапы - проектирование креплений под аккум, оптимизация железа и написание софта.

суббота, 9 ноября 2013 г.

Автобот-художник aka Drawbot. Part 1.

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

Составные части моего Drawbot'а:
  • DC Boarduino;
  • колеса с редуктором;
  • шаровая опора; 
  • макетная плата 5.4х8.2 см;
  • аккумулятор;
  • две базовых детали, напечатанных на 3D-принтере.  
Как следует из списка составных частей, изначально я сел проектировать в SketchUp'е базовые детали, на которых и будут крепиться все остальные части. Базу я решил разбить на две части, поскольку так лучше для 3D-печати, да и при необходимости можно легко поменять головную часть с маркерами не затрагивая всего остального. Для первой модели я решил не заморачиваться и изготовить "голову" с креплениями под три маркера, которые фиксируются шурупами.

Головная часть с креплениями под маркеры.
На "body" же крепятся абсолютно все части Drawbot'a. 
Процесс печати на 3D-принтере "body"-части.
  В итоге получилась такая красивая деталька ^^ :
После чего я приступил к сборке базы моего автобота-художника.
Составные части базы Drawbot'a.

 Сначала цепляем колеса на "body":
Затем собираем шаровую опору и соединяем её вместе с body и головной частью (да, скорее всего понадобится дополнительная подложка, как в моей модели, или же придется сделать дополнительную часть к body):
В итоге мы получаем вот такую адскую машину ))))) :
Собранная база для Drawbot'a )))
В следующей части будет собственно про "мозги" Drawbot'a, про программы и прочие интересные вещи )))

четверг, 24 октября 2013 г.

MakeItLab - первый хакспейс Екатеринбурга.

Привет! Сегодня я расскажу про такое интересное явление, как "хакспейс" или же "хакерспейс". Для России это понятие ещё относительно новое, ведь первые "официальные" хакспейсы появились у нас году так в 2011 (согласно Википедии). Но в своей заметке я рассмотрю подробно не так давно появившийся (летом 2013го года) хакспейс MakeItLab, находящийся в городе Екатеринбурге. Итак, поехали!
Начнем с того, что я сам занимаюсь робототехникой, люблю пособирать интересные механизмы, а заодно и применить на них свои программные или математические разработки. И вот, работая над одним своим проектом, я абсолютно случайно узнал от знакомых, что у нас в городе появилось такое место, куда можно придти, пообщаться с "себе подобными", попросить совета, поучаствовать в крутом проекте, получить возможность изготовить нужные детали на 3D-принтере, ну и плюс еще куча-куча возможностей. Так что же такое хакспейс?
Hackerspace (хакерспейс) или hackspace (хакспейс) (от англ. hacker и англ. space) — реальное (в противоположность виртуальному) место, где собираются люди со схожими интересами, чаще всего научными, технологическими, в цифровом или электронном искусстве, общении и совместном творчестве.
Типичные действия в хакспейсах включают:
  • получение знаний и обмен ими
  • презентации и лекции
  • социальную активность, включая игры и развлекательные мероприятия
Хакспейсы предоставляют инфраструктуру необходимую для этих действий: помещения, серверы и компьютерные сети, разнообразнейшие инструменты и т.д.
Но это всё вы можете прочитать и в Википедии, а вот что увидел я, зайдя через черный ход старинного особняка, находящегося в самом центре города? Первое, что мне бросилось в глаза - это большой стол с разложенной трассой для движения роботов, самих роботов, квадрокоптер на стойке в углу, жужжащий 3D-принтер, кучу инструментов...  Короче, тут ты сразу чувствуешь что попал в свой собственный техно-рай ;) 
Няшка-робот, ездящий по трассе ^^
 
 
Детали и фигурки, напечатанные на 3D-принтере.

Конечно же очень полезной для себя я считаю возможность обмена опытом. Ведь одно дело, когда ты спрашиваешь что-то в группе в соцсети или на форуме, или же ты можешь пообщаться вживую с людьми, которые занимаются интересующей тебя задачей. Кстати, именно в хакспейсе можно получить необходимые практические навыки работы с железом и программированием реальных контроллеров, поскольку в универе часто лабы ограничены лишь моделированием на компе.  Так же можно поделать различные лабораторки, основанные на работе с Raspberry, научиться собирать простенький компьютер, поиграться в старые игрушки на собранном здесь же аркадном автомате, провести выходные, запуская квадрокоптер или орнитоптер, да много чего ещё. Вот тут можно посмотреть список доступных компонентов и оборудования хакспейса. А если вас заинтересовала эта небольшая заметка и вы хотите сюда попасть - вот ссылка на сайт нашего хакспейса со всеми контактами - http://www.makeitlab.ru/