roboforum.ru

Технический форум по робототехнике.
Текущее время: 26 ноя 2024, 18:53

Часовой пояс: UTC + 4 часа


Правила форума


В данном разделе каждый может иметь не более одной темы. Тема должна начинаться с логина (ника) робофорума.



Начать новую тему Ответить на тему  [ Сообщений: 39 ]  На страницу 1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: Cleric - Осваиваем робототехнику с нуля =)
СообщениеДобавлено: 11 мар 2014, 18:01 
Не в сети
Аватара пользователя

Зарегистрирован: 22 фев 2014, 21:55
Сообщения: 34
Откуда: Москва
прог. языки: Delphi
ФИО: Дмитрий Соколов
Итак, услышав разговор про робототехнику, решил тоже заняться ей. Погуглив немного, нашел несколько форумов по робототехнике(включая этот). Не зная с чего начать начал смотреть проекты и захотел сотворить что-то подобное.
Изображение

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

Ну чтож, ждём пока приедет. А пока посмотрю, что ещё можно заказать. Есть предложения?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cleric - Осваиваем робототехнику с нуля =)
СообщениеДобавлено: 12 мар 2014, 22:38 
Не в сети

Зарегистрирован: 07 авг 2010, 21:29
Сообщения: 1725
Откуда: КМВ
прог. языки: C
ФИО: Андрей
Пару АКБ литий-полимерных не помешало б заказать, зарядку и степ-ап к ним.

_________________
Дым, идущий из всех устройств в помещении предвещает появление электрика.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cleric - Осваиваем робототехнику с нуля =)
СообщениеДобавлено: 13 мар 2014, 13:51 
Не в сети
Аватара пользователя

Зарегистрирован: 22 фев 2014, 21:55
Сообщения: 34
Откуда: Москва
прог. языки: Delphi
ФИО: Дмитрий Соколов
АКБ на данной стадии не имеют первостепенный приоритет. Думаю над датчиками, а конкретно какие заказать. Буду развиваться с сторону этого проекта т.к. всё подробно и достаточно понятно описано. Но сначала освою программирование на МК.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cleric - Осваиваем робототехнику с нуля =)
СообщениеДобавлено: 15 мар 2014, 00:12 
Не в сети

Зарегистрирован: 07 авг 2010, 21:29
Сообщения: 1725
Откуда: КМВ
прог. языки: C
ФИО: Андрей
А параллельно - электроникой. Чтоб представлять вто вокруг контроллера происходит.

_________________
Дым, идущий из всех устройств в помещении предвещает появление электрика.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cleric - Осваиваем робототехнику с нуля =)
СообщениеДобавлено: 15 мар 2014, 12:50 
Не в сети
Аватара пользователя

Зарегистрирован: 22 фев 2014, 21:55
Сообщения: 34
Откуда: Москва
прог. языки: Delphi
ФИО: Дмитрий Соколов
Ну, кое-какие прелставления о электронике у меня есть. Отличить резистор от транзистора в состоянии :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cleric - Осваиваем робототехнику с нуля =)
СообщениеДобавлено: 07 апр 2014, 14:27 
Не в сети
Аватара пользователя

Зарегистрирован: 22 фев 2014, 21:55
Сообщения: 34
Откуда: Москва
прог. языки: Delphi
ФИО: Дмитрий Соколов
Дождался я своей платы. Дошла за 20 дней, но почему-то извещение пришло спустя неделю :-| Всё тщательно запаковано, повреждений нет. Итак, пришло время программировать.

Вложение:
Комментарий к файлу: Плата
P4070462.JPG
P4070462.JPG [ 2.25 МиБ | Просмотров: 3740 ]


Для начала решил написать простенький скетч "Мигание светодиодом". Всё прошло гладко. Видео ниже.
Код:
#define LED 13

void setup()
{
   pinMode(LED, OUTPUT);
}

void loop()
{
  digitalWrite(LED, HIGH);
  delay(500);
  digitalWrite(LED, LOW);
  delay(250);
  digitalWrite(LED, HIGH);
  delay(500);
  digitalWrite(LED, LOW);
  delay(250);
  digitalWrite(LED, HIGH);
  delay(1000);
  digitalWrite(LED, LOW);
  delay(1000);
  digitalWrite(LED, HIGH);
  delay(1000);
  digitalWrite(LED, LOW);
  delay(1000);
  digitalWrite(LED, HIGH);
  delay(1000);
  digitalWrite(LED, LOW);
  delay(1000);
 
}





Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cleric - Осваиваем робототехнику с нуля =)
СообщениеДобавлено: 09 апр 2014, 18:15 
Не в сети
Аватара пользователя

Зарегистрирован: 22 фев 2014, 21:55
Сообщения: 34
Откуда: Москва
прог. языки: Delphi
ФИО: Дмитрий Соколов
Сегодня добрался до радиорынка и прикупил светодиодов с резисторами. Сваял мини-гирлянду =)



Код:
#define LED1 11
#define LED2 10
#define LED3 5
#define BUT 7

int val = 0;

void setup()
{
   pinMode(LED1, OUTPUT);
   pinMode(LED2, OUTPUT);
   pinMode(LED3, OUTPUT);
   pinMode(BUT, INPUT);
}

void loop()
{
  val = digitalRead(BUT);
 
  if (val == HIGH) {
    digitalWrite(LED1, HIGH);
    delay(1000);
    digitalWrite(LED1, LOW);
    digitalWrite(LED2, HIGH);
    delay(1000);
    digitalWrite(LED2, LOW);
    digitalWrite(LED3, HIGH);
    delay(1000);
    digitalWrite(LED3, LOW);
  } else {
    digitalWrite(LED1, LOW);
    digitalWrite(LED2, LOW);
    digitalWrite(LED3, LOW);
  }
}


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cleric - Осваиваем робототехнику с нуля =)
СообщениеДобавлено: 17 апр 2014, 11:15 
Не в сети
Аватара пользователя

Зарегистрирован: 22 фев 2014, 21:55
Сообщения: 34
Откуда: Москва
прог. языки: Delphi
ФИО: Дмитрий Соколов
Собираюсь прикупить мотор шилд, сенсор шилд и пару датчиков. Думаю над покупкой платформы. Либо взять совсем простую, либо получше. Кто что думает по поводу платформ?
Кто может посоветовать по АКБ? Какие брать? На что обратить внимание?


А пока выложу небольшой пример работы с фоторезистором.

Код:
#define LED1 6
#define LED2 10
#define LED3 11

int val = 0;

void setup()
{
   pinMode(LED1, OUTPUT);
   pinMode(LED2, OUTPUT);
   pinMode(LED3, OUTPUT);
}

void loop()
  {
    val = analogRead(0);
    if (val > 400)
      {
         digitalWrite(LED1, LOW);
         digitalWrite(LED2, LOW);
         digitalWrite(LED3, LOW);
      }
     else
     {
      if (val >= 200 && val <= 300)
        {
          digitalWrite(LED1, HIGH);
          digitalWrite(LED2, HIGH);
          digitalWrite(LED3, LOW);
        }
      else
        {
          if (val > 300 && val <= 400)
            {
              digitalWrite(LED1, HIGH);
              digitalWrite(LED2, LOW);
              digitalWrite(LED3, LOW);
            }
           else
             {
               digitalWrite(LED1, HIGH);
               digitalWrite(LED2, HIGH);
               digitalWrite(LED3, HIGH);
                 
             }
           }
        }
  } 


Вложение:
Комментарий к файлу: Схема подключения
Svet схема.JPG
Svet схема.JPG [ 50.47 КиБ | Просмотров: 3674 ]




Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cleric - Осваиваем робототехнику с нуля =)
СообщениеДобавлено: 17 апр 2014, 14:00 
Не в сети
скрытый хозяин вселенной :)
Аватара пользователя

Зарегистрирован: 18 сен 2006, 12:26
Сообщения: 18018
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич
чтож вас всех так тянет на убогие L293D?
вот такой хотябы возьми.
http://www.ebay.com/itm/Dual-H-Bridge-L ... 3cda8c2898

платформу рекомендую ту которая с стандартными моторредуткорами жёлтыми
их потом можно будет использовать ещё где-то когда надоест.
а вторая платформа хоть и 4х колёсная но достаточно бестолковая и не поддаётся модификациям.

_________________
<telepathmode>На вопросы отвечает Бригадир Телепатов!</telepathmode>
Всё уже придумано до нас!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cleric - Осваиваем робототехнику с нуля =)
СообщениеДобавлено: 17 апр 2014, 14:22 
Не в сети
Аватара пользователя

Зарегистрирован: 22 фев 2014, 21:55
Сообщения: 34
Откуда: Москва
прог. языки: Delphi
ФИО: Дмитрий Соколов
Myp писал(а):
чтож вас всех так тянет на убогие L293D?
вот такой хотябы возьми.
http://www.ebay.com/itm/Dual-H-Bridge-L298Nщество-DC-Stepper-Motor-Driver-Module-Controller-Board-for-Arduino-/261364656280?pt=AU_B_I_Electrical_Test_Equipment&hash=item3cda8c2898


А чем L293D убоги? Можно узнать поподробней в чём преимущество L298N шилдов?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cleric - Осваиваем робототехнику с нуля =)
СообщениеДобавлено: 18 апр 2014, 00:12 
Не в сети
Аватара пользователя

Зарегистрирован: 05 фев 2008, 15:33
Сообщения: 2687
Откуда: St. Petersburg - Moscow
Skype: SkyStorm77
ФИО: Костюк Константин Вячеславович
cleric писал(а):
А чем L293D убоги?

Открой FAQ на этом форуме и почитай. Если лень открой даташит и посмотри сколько там вольт на входе и сколько на выходе.
cleric писал(а):
Можно узнать поподробней в чём преимущество L298N шилдов?

Тоже не фонтан, если сравнивать с современными драйверами, но хуже L293D найти сложно :)

_________________
Никто кроме нас!!!
4Robots.ru - Все для роботов!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cleric - Осваиваем робототехнику с нуля =)
СообщениеДобавлено: 18 апр 2014, 12:05 
Не в сети
Аватара пользователя

Зарегистрирован: 22 фев 2014, 21:55
Сообщения: 34
Откуда: Москва
прог. языки: Delphi
ФИО: Дмитрий Соколов
SkyStorm писал(а):
Открой FAQ на этом форуме и почитай. Если лень открой даташит и посмотри сколько там вольт на входе и сколько на выходе.

Спасибо за ответ. Буду думать над вопросом мотор шилда.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cleric - Осваиваем робототехнику с нуля =)
СообщениеДобавлено: 23 апр 2014, 16:57 
Не в сети
Аватара пользователя

Зарегистрирован: 10 ноя 2011, 12:02
Сообщения: 5691
Откуда: Turku, Finland
Skype: elmot73
прог. языки: Java и все-все=все
ФИО: Илья
http://www.pololu.com/product/713


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cleric - Осваиваем робототехнику с нуля =)
СообщениеДобавлено: 06 май 2014, 15:55 
Не в сети
Аватара пользователя

Зарегистрирован: 22 фев 2014, 21:55
Сообщения: 34
Откуда: Москва
прог. языки: Delphi
ФИО: Дмитрий Соколов
Давно не заходил, не писал. Решил исправиться.
Продолжаю баловаться, пока жду необходимых деталей. Нашёл платформу с моторчиками из первых выпусков "Робота-шпиона" (когда-то начинал собирать). Решил заставить её двигаться =) Управление через COM порт.


Код:
#include <AFMotor.h>
AF_DCMotor motor1(1);
AF_DCMotor motor2(2);

void setup() {
  Serial.begin(9600);
  motor1.setSpeed(255);
  motor1.run(RELEASE);
  motor2.setSpeed(255);
  motor2.run(RELEASE);
}



void loop() {
  while (Serial.available() == 0);
  int val = Serial.read() - '0';
  if (val == 1)
  {
    motor1.run(FORWARD);
    motor2.run(FORWARD);
    motor1.setSpeed(255);
    motor2.setSpeed(255);
    delay(1000);
 
    motor1.run(RELEASE);
    motor2.run(RELEASE);
    delay(500);
  }
    else if (val == 2)
    {
      motor1.run(BACKWARD); 
      motor2.run(BACKWARD);
      motor1.setSpeed(255); 
      motor2.setSpeed(255);
      delay(1000);
 
      motor1.run(RELEASE);
      motor2.run(RELEASE);
      delay(500);
    }
      else if (val == 3)
      {
        motor1.run(FORWARD);
        motor1.setSpeed(255);
        delay(500);
        motor1.run(RELEASE);
        delay(500);
      } 
        else if (val == 4)
        {
          motor2.run(FORWARD);
          motor2.setSpeed(255);
          delay(500);
          motor2.run(RELEASE);
          delay(500);
        } 
  else
  Serial.flush();
  motor1.run(RELEASE);
  motor2.run(RELEASE);
  delay(500);

}


Видео


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Cleric - Осваиваем робототехнику с нуля =)
СообщениеДобавлено: 07 май 2014, 13:55 
Не в сети
Аватара пользователя

Зарегистрирован: 22 фев 2014, 21:55
Сообщения: 34
Откуда: Москва
прог. языки: Delphi
ФИО: Дмитрий Соколов
Управление платформой через COM порт это конечно круто, но не очень удобно. Плюс ко всему хотелось бы, чтоб можно было управлять платформой в реальном времени (нажал клавишу-едет, отпустил клавишу-остановилась). И тут начались брождения и плутания по интернету(в основном гугл). Спустя часа полтора всё таки нашёл то, что искал :)

Поставил программу, настроил клавиши (W,A,S,D + Q и Е для резких разворотов). Написал скетч и вуаля... Всё работает ;)

Вложение:
Комментарий к файлу: Программа
shot.jpg
shot.jpg [ 53.28 КиБ | Просмотров: 3544 ]


Код:
#include <AFMotor.h>
AF_DCMotor motor1(1);
AF_DCMotor motor2(2);

void setup() {
  Serial.begin(9600);
  motor1.setSpeed(255);
  motor1.run(RELEASE);
  motor2.setSpeed(255);
  motor2.run(RELEASE);
}



void loop() {
  while (Serial.available() == 0);
  int val = Serial.read() - '0';
  if (val == 1)
  {
    motor1.run(FORWARD);
    motor2.run(FORWARD);
    motor1.setSpeed(255);
    motor2.setSpeed(255);
  }   
    else if (val == 2)
     {
       motor1.run(BACKWARD); 
       motor2.run(BACKWARD);
       motor1.setSpeed(255); 
       motor2.setSpeed(255);
     }
       else if (val == 4)
        { 
          motor2.run(FORWARD);
          motor2.setSpeed(255); 
        }
          else if(val == 3)
           {
             motor1.run(FORWARD);
             motor1.setSpeed(255);
           }
             else if(val == 6)
              {
                motor1.run(FORWARD);
                motor2.run(BACKWARD);
                motor1.setSpeed(255);
                motor2.setSpeed(255);
               
              }
                else if(val == 5)
                 {
                   motor1.run(BACKWARD);
                   motor2.run(FORWARD);
                   motor1.setSpeed(255);
                   motor2.setSpeed(255);
                 }
     else
   { 
    Serial.flush();
    motor1.run(RELEASE);
    motor2.run(RELEASE);
   }
   
}



И видео.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 39 ]  На страницу 1, 2, 3  След.

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO