roboforum.ru

Технический форум по робототехнике.

Помогите с выбором железа, делаю робота!

Как собрать и запрограммировать робота на Arduino(Freeduino, Roboduino, Seeduino ...). Используем Wiring и Processing.

Помогите с выбором железа, делаю робота!

Сообщение Kolin117 » 11 июн 2012, 14:59

Собираюсь зделать обьезжающего препятсвия робота.Имеется известный в робототехнике редуктор Tamiya twinmotor gear, желательно питание 6 вольт от 4 баттареек типа АА.
Вопросы относильно вас, форумчан:
1)какой драйвер двигателей использовать?
2)какую arduino выбрать?
3)по возможности, опишите, как это все (и чем?) соеденить.
4)какой или какие аккумуляторы использовать?
5)как обойтись без стабилизатов питания, чтобы можно реализовать схему  с истоник питания-МК плата-драйвер движков-движки?
Заранее огромное спасибо!)

Добавлено спустя 39 минут 49 секунд:
Вот что нашел:
1)arduino uno.
2)MOTOR SHIELD FOR ARDUINO=>http://www.electronshik.ru/card/kontroller-kollektornogo-dvigatelya-2-kanala-2a-dlya-arduino-114351
3)полуловчкий датчик расстояния =>http://www.electronshik.ru/item/pololu-carrier-distance-sensor-10cm-576837

Что уже есть:
1)колесная база на основе tamiya twin motor gear box

Оцените совместимость компонентов, и какое выбрать питание?
Kolin117
 
Сообщения: 43
Зарегистрирован: 08 июн 2012, 16:49

Re: Помогите с выбором железа, делаю робота!

Сообщение Tsi329 » 12 июн 2012, 08:39

Kolin117 писал(а):1)какой драйвер двигателей использовать?

Любой, рассчитанный на твой ток и напряжение;
Kolin117 писал(а):2)какую arduino выбрать?

Если думаешь навешать на нее в дальнейшем много всего, то Arduino Mega (куча выводов, в том числе очень полезных: ШИМ, ком. порты и т.д.), Если нужна компактность, то Arduino nano, но тут придется паять. Для начала думаю Arduino Uno самое то.
Kolin117 писал(а):3)по возможности, опишите, как это все (и чем?) соеденить.

Это бесконечная песня.
- motorshield никуда подключать не надо. На то он и shield. Фактически существует два варианта его подключения: использовать 4 ШИМ выхода(по два на мотор) или использовать 2 ШИМ+2 вывода задающих направление. Я предпочитаю второй вариант - свободные ШИМ на дороге не валяются ;)
- SR-04 - Ультразвуковые датчики. Любых два цифровых вывода;
- IR датчики растояния - любой аналоговый вывод;
- датчики столкновения - бамперы - любых два цифровых сигнала; Желательно поддерживающих прерывание;
Kolin117 писал(а):4)какой или какие аккумуляторы использовать?

Я бы не использовал батарейки АА. Вот причины:
- это батарейки, а не аккумуляторы;
- у батареек напряжение выходное 1,5В, а у аккумов - 1,2В. Т.е. Если ты возьмешь 4xбатарейки, то получешь 6В, а с аккумами тольки 4,8В. Значит нужно уже 5 штук. И т.д.
- Проблема их заряжать. Особенно исходя из последнего примера. Как зарядить 5 штук? Два зарядных? ;)
В принципе нужно использовать Lipo аккумы. Но для маленьких роботов я бы брал 2x18650. Очень советую. http://www.dx.com
Kolin117 писал(а):5)как обойтись без стабилизатов питания, чтобы можно реализовать схему  с истоник питания-МК плата-драйвер движков-движки?

Почти никак. Хотя бы потому, что я бы не стал вешать моторы и Arduino на одну линию питания. Во вторых двигателям нужно 6-7В обычно, а Arduino потребляет только 5В.
Если изголиться, то в твоем случае можно запитаться от двух 18650 и подать их на вход питания Arduino (не 5В вход!!!), а он сам преобразует до 5В, а движки питать напрямую от двух 18650. Т.е. питание в этом случае будет от 8,2В (заряженные аккумы) до 7В (разряженные аккумы). Я думаю для начала вариант очень неплох.
Да. Упаси тебя Господь использовать КРЕН-ки. Это линейные стабилизаторы. Всё, что не потребил Arduino развеется в виде тепла!!! Только DC-DC конвертеры. Существуют два типа понижающие и повышающие. Так что поле огромное для фантазии ;)

Добавлено спустя 39 минут 49 секунд:
Kolin117 писал(а):Вот что нашел:
1)arduino uno.

Хорошо.

Почему бы и нет. Только обращаю внимание. Указано, что он работает минимум с 7,2В!
Kolin117 писал(а):3)полуловчкий датчик расстояния =>http://www.electronshik.ru/item/pololu-carrier-distance-sensor-10cm-576837

Ни в коем случае!!! Это не то, что тебе надо. Он только сообщает есть ли препятствии и всё! Тебе же надо знать еще и расстояние до него. Почувствуй разницу ;)
Kolin117 писал(а):Что уже есть:
1)колесная база на основе tamiya twin motor gear box

Для начала почему бы и нет.
Kolin117 писал(а):Оцените совместимость компонентов, и какое выбрать питание?

Всё выше.
Tsi329
 
Сообщения: 135
Зарегистрирован: 24 авг 2010, 11:48
Откуда: Минск
прог. языки: C++,C,Asm

Re: Помогите с выбором железа, делаю робота!

Сообщение Kolin117 » 12 июн 2012, 09:47

Насчет датчиа - я делаю простого обьезжающего робота, нашел препятсвие - развернулся на 90 градусов поехал дальше
Kolin117
 
Сообщения: 43
Зарегистрирован: 08 июн 2012, 16:49

Re: Помогите с выбором железа, делаю робота!

Сообщение Tsi329 » 12 июн 2012, 10:21

Kolin117 писал(а):Насчет датчиа - я делаю простого обьезжающего робота, нашел препятсвие - развернулся на 90 градусов поехал дальше

Не глупи. За эту цену можно два купить SR-04, который тебе и растояние сообищит от 2см до 450см. http://dx.com/p/hc-sr04-ultrasonic-sens ... 696?item=1
Ровно в тот момент как ты сделаешь первый вариант алгоритма, тебе захочится поиграться с расстоянием до объекта. Поверь мне.
Tsi329
 
Сообщения: 135
Зарегистрирован: 24 авг 2010, 11:48
Откуда: Минск
прог. языки: C++,C,Asm

Re: Помогите с выбором железа, делаю робота!

Сообщение Kolin117 » 12 июн 2012, 15:13

Ладно, с датчиками согласен.А насчет стабилизаторов, я почитал, что они уже встроены в драйвер встроены.Вы говорили об аккумуляторах aa.Я хотел в первом проекте, как например в этом роботе[url]http://roboforum.ru/post158457.html?hilit=Крепыш#p158457[/url]Просто такой вопрос - Шаилд соединяется с ардуино просто тем, что шаилд на нее сажается?к motor shield подключаются двигатели, к ардуино питание и датчик, так?
Kolin117
 
Сообщения: 43
Зарегистрирован: 08 июн 2012, 16:49

Re: Помогите с выбором железа, делаю робота!

Сообщение Tsi329 » 12 июн 2012, 20:03

Kolin117 писал(а):А насчет стабилизаторов, я почитал, что они уже встроены в драйвер встроены.

В драйвер двигателей? Нет!
В Arduino да. Но там линейный, как я помню. Но не заморачивайся пока на этом, используй его. Но!
В спецификации ему нужно минимум 6 вольт! Где возьмешь столько?
Я тебе уже объяснял: 4 батарейки? Да, но ты разоришься на них.
5 аккумов? Как и заряжать и главное как крепить!?!?
Kolin117 писал(а):Вы говорили об аккумуляторах aa.Я хотел в первом проекте, как например в этом роботе[url]http://roboforum.ru/post158457.html?hilit=Крепыш#p158457[/url]

Хороший проект. Мне понравился. Но! Там и не пахнет Arduino!
Там собственная разработка. Микроконтроллер(МК) ATmega16L. Такие я не помню, чтобы ставили на Arduino.
Но хитрость не в этом! Буква L в конце названия МК означает, что он может работать в диапазоне напряжений 2.7В-5.5В.
На фотографии хорошо видно, что автор проекта использует 4 аккума. Т.е. 1,2В на 4 = 4,8В. Ему для питания МК хватает за глаза!!! А тебе не хватит. Это я тебе и пытаюсь объяснить.
Kolin117 писал(а):Просто такой вопрос - Шаилд соединяется с ардуино просто тем, что шаилд на нее сажается?к motor shield подключаются двигатели, к ардуино питание и датчик, так?

Да. В этом вся суть плат с именем arduino shield. Они просто насаживаются разъемами на саму плату Arduino.
В случает с motor shield вообще всё просто. Насадил на плату. Вставил провода от моторов в разъёмы shield-а. Подал питание на Arduino и на shield и всё заработало. Даже паять не надо. С датчиками придется повозится. Или покупать плату с кучей разъемов для датчиков. Стоят копейки. Или паять самому. Раз это твой первый проект, то может лучше купить shield для датчиков. Когда получишь работающего робота и наиграешься с алгоритмами, то поймешь сам в каком направлении тебе нужно двигаться дальше. Я, например, люблю Arduino, но предпочитаю не использовать кучу shield-ов. Люблю паять самому. Так как ничего универсального нет. А все что есть, в основном, заточены для работы начинающих.

Ты выбрал shield на L293. Многие скажут: не бери. Но для твоих слабеньких моторчиков разницы нет. Так что не заморачивайся. Вопрос в другом - переплата. Ты переплачиваешь опять в раза два. Я не из России и не могу посоветовать российский магазин, но ебей говорит, что любой shield на L293 можно купить меньше чем за 10 долларов США.
http://www.ebay.com/sch/i.html?_trksid=p5197.m570.l1313&_nkw=arduino+shield+motor&_sacat=0
Tsi329
 
Сообщения: 135
Зарегистрирован: 24 авг 2010, 11:48
Откуда: Минск
прог. языки: C++,C,Asm

Re: Помогите с выбором железа, делаю робота!

Сообщение =DeaD= » 12 июн 2012, 21:43

Tsi329 писал(а):Ты выбрал shield на L293. Многие скажут: не бери. Но для твоих слабеньких моторчиков разницы нет.

Как раз для моторчиков на 6В разница будет ощутима (потери в 1.5В на драйвере дадут понижение мощности движков до P=U*I=0,75*0,75=56% от номинала, вот если бы движки были на 12В, тогда понижение мощности было бы всего до 76%)
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Помогите с выбором железа, делаю робота!

Сообщение Kolin117 » 12 июн 2012, 21:45

На батарейках - возможно, но как первый проект мне легче использовать их, говорят, что от 6 V сенсоры будут барахлить, следовательно нужно 7,5.А как быть с тамиевскими редукторами?Чтобы не разориться на них, нужно, чтобы выходящее из шаилда напряжение не превышало рекомендованных 3,5-5 вольт.6-предел, но срок службы резко падает.Или же, ток проходя через ардуино и шаилд падает?Я запутался...
Kolin117
 
Сообщения: 43
Зарегистрирован: 08 июн 2012, 16:49

Re: Помогите с выбором железа, делаю робота!

Сообщение Tsi329 » 13 июн 2012, 23:40

=DeaD= писал(а):Как раз для моторчиков на 6В разница будет ощутима (потери в 1.5В на драйвере дадут понижение мощности движков до P=U*I=0,75*0,75=56% от номинала, вот если бы движки были на 12В, тогда понижение мощности было бы всего до 76%)

Не хочу спорить, тем более, что Вы правы. ;)
Но если моторы рассчитаны на 3В, а в его случае так и есть, то есть смысл, возможно, подавать на L293 пять вольт, что бы получать на выходе падение в 1,5В как раз необходимое для питания двигателей. И тогда движки будут работать на 100% от своей мощности, получая примерно 3-3,5В. Я не прав?

Добавлено спустя 7 минут 34 секунды:
Kolin117 писал(а):На батарейках - возможно, но как первый проект мне легче использовать их, говорят, что от 6 V сенсоры будут барахлить, следовательно нужно 7,5.А как быть с тамиевскими редукторами?Чтобы не разориться на них, нужно, чтобы выходящее из шаилда напряжение не превышало рекомендованных 3,5-5 вольт.6-предел, но срок службы резко падает.Или же, ток проходя через ардуино и шаилд падает?Я запутался...

Предлагаю тебе довольно глупый, но самый простой вариант решения данной задачи.
Во-первых определись с напряжением и током твоих движков. По моей информации им необходимо 1,5В-3В!!!
http://www.sparkfun.com/products/319
Если у тебя именно этот случай, то вот тебе мое решение. Самое простое.
Крона 9В->вход Arduino->5В вырабатывает сам Arduino для себя и для всех подключаемых датчиков-> все датчики на 5В
Три батарейки по 1,5В каждая=4,5В->Motor shield L293->3В вырабатывает для моторов->твои моторы.
Всё это, конечно, некрасиво. Я бы использовал DC-DC преобразователи, но я уверен, что пока не стоит тебе дурить голову всем этим. Построишь первый робот и сам поймешь куда двигаться дальше.
Tsi329
 
Сообщения: 135
Зарегистрирован: 24 авг 2010, 11:48
Откуда: Минск
прог. языки: C++,C,Asm

Re: Помогите с выбором железа, делаю робота!

Сообщение =DeaD= » 14 июн 2012, 09:42

Да, я уже увидел, что после моего сообщения ТС озвучил таки требования к питанию моторов :)
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Помогите с выбором железа, делаю робота!

Сообщение Kolin117 » 14 июн 2012, 10:51

Тоечть, лучше взять такой шаилд с выходом для отдельного питания http://www.electronshik.ru/card/drayver-kollektornogo-dvigatelya-2-kanala-2-a-arduino-shield-114353, чем такой http://www.electronshik.ru/card/kontroller-kollektornogo-dvigatelya-2-kanala-2a-dlya-arduino-114351?
И платы сажаются друг на друга также, как при едином питании, только на выходы для питания первого драйвера подать 4,5 вольт, а на ардуино на разъем для питания подать кроновские 9 вольт?Вроде все удобно для новичка) :roll: а когда ардуино подключаешь для программирования нужно ли подавать на нее питание или отсоединять от шаилда?
Kolin117
 
Сообщения: 43
Зарегистрирован: 08 июн 2012, 16:49

Re: Помогите с выбором железа, делаю робота!

Сообщение Tsi329 » 14 июн 2012, 23:10

Kolin117 писал(а):Тоечть, лучше взять такой шаилд с выходом для отдельного питания http://www.electronshik.ru/card/drayver-kollektornogo-dvigatelya-2-kanala-2-a-arduino-shield-114353, чем такой http://www.electronshik.ru/card/kontroller-kollektornogo-dvigatelya-2-kanala-2a-dlya-arduino-114351?

Да, конечно. Первый вариант нуждается в отдельном питании, а вот второй берет питание входное Vin от Arduino и использует его как питание двигателей.
Kolin117 писал(а):И платы сажаются друг на друга также, как при едином питании, только на выходы для питания первого драйвера подать 4,5 вольт, а на ардуино на разъем для питания подать кроновские 9 вольт?Вроде все удобно для новичка) :roll:

Я еще раз внимательно изучил известные шилды на L293D. Им всех необходимо минимум 4,5В для питания двигателей(а на тот, что ты дал ссылку так и все 4,8В)!!!
Вот в чем проблема. Есть три решения:
- Использовать всё-таки 4х1,5В батарейки, т.е 6В для питания motor shield. Это, конечно, великовато (4,5-5В) для движков. Но всё же вариант.
- Не использовать motor shield или найти такой, который позволяет питать двигатели от 3В(я не нашел), а использовать любой контроллер двигателей(придется подпаивать его к arduino). Например вот этот:
http://www.pololu.com/catalog/product/2130
Врать не буду: я никогда не управлял такими двигателями как у тебя. Все мои были рассчитаны на напряжение 5-6В или 12В.
- Спаять самому motor shield на транзисторах. Тебе будет сложно.
Я бы пошел по второму пути, но переделал бы его в shield, на который так же напаял бы сразу еще разъемы для датчиков. Но тебе советую попробовать самый простой вариант - первый. Он самый простой.

Kolin117 писал(а):а когда ардуино подключаешь для программирования нужно ли подавать на нее питание или отсоединять от шаилда?

Питание не нужно. Arduino берет питание от USB разъема. Отсоединять также ничего не нужно.
Tsi329
 
Сообщения: 135
Зарегистрирован: 24 авг 2010, 11:48
Откуда: Минск
прог. языки: C++,C,Asm

Re: Помогите с выбором железа, делаю робота!

Сообщение Kolin117 » 15 июн 2012, 09:15

Спасибо.А какой выбрать датчик и как его подключить?
Kolin117
 
Сообщения: 43
Зарегистрирован: 08 июн 2012, 16:49

Re: Помогите с выбором железа, делаю робота!

Сообщение Tsi329 » 15 июн 2012, 10:20

Я не знаю, почему ты выбрал именно этот сайт. Может, конечно, тебе удобно через него покупать, но там как-то всё дорого. Просто имей в виду.
Вот тебе вариант датчика:
http://www.electronshik.ru/card/datchik ... j00f-96936
Я брал здесь. Сравни цены.
http://www.pololu.com/catalog/product/1136
Работать с ним легко:
Три вывода: 5В,0В и аналоговый выход. Аналоговый выход подключаешь к любому аналоговому входу Arduino и всё.
Вот тебе график как соотносить напряжение получаемое с датчика с расстоянием до объекта.
0J1127.600.png

А вот и простейшая программа, которая данные из датчика, подключенного к 0-му аналоговому входу, шлет по com-порту.
Код: Выделить всёРазвернуть
void setup()
{
  Serial.begin(9600);
}
void loop()
{
   int distance = analogRead(0);
   distance = (2914 / (distance + 5)) - 1;
   Serial.println(distance);
   delay(200);
}
Tsi329
 
Сообщения: 135
Зарегистрирован: 24 авг 2010, 11:48
Откуда: Минск
прог. языки: C++,C,Asm

Re: Помогите с выбором железа, делаю робота!

Сообщение Kolin117 » 18 июн 2012, 21:31

Т.е. Если я возьму какой нибудь ик дальномер sharp, arduino uno и motor shield for arduino, то как подключить датчик, и какой кабель купить?
Kolin117
 
Сообщения: 43
Зарегистрирован: 08 июн 2012, 16:49

След.

Вернуться в Arduino и другие Xduino

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

Сейчас этот форум просматривают: Google [Bot] и гости: 8