roboforum.ru

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

 

Что купить для Hexapod'а?

Раздел создан специально для людей которым интересна робототехника, но в силу разных причин они не знают с чего начать.
Задавайте ваши вопросы, какими бы простыми они не казались, постоянные посетители форума постараются ответить на них по мере своих сил.
Робот своими руками. Самодельный робот.

Re: Что купить для Hexapod'а?

Сообщение zyto » 08 май 2014, 07:30

Догадка с нехваткой питания оказалась верна.
Сегодня подключил от компьютерного блока питания, теперь сервы шевелятся как надо.
zyto
 
Сообщения: 31
Зарегистрирован: 04 апр 2014, 12:14

Re: Что купить для Hexapod'а?

Сообщение zyto » 19 май 2014, 12:22

Странно... Собрал некий "тестер" для серв, что бы попробовать определить на глаз разницу между MG-995 и MG-996.
Использовалось:
1. Arduino Mega 2560
2. Mega Sensor Shield v2 (для удобной коммутации)
3. Питание - от USB напрямую в Ардуино + дополнительное питание от 5В блока питания компа.
4. Ну и ещё по мелочи - 3 кнопки для управления углом + экранчик для отображения текущих параметров сервы.

В итоге заметил такую вещь: если в скетче объявить 2-3 сервы, так:
Servo myservo1;
Servo myservo2;
Servo myservo3;

Потом прявязать к ним пины:
myservo1.attach(22);
myservo2.attach(46);
myservo3.attach(47);

и потом попробовать управлять одной из серв, например:
myservo1.writeMicroseconds(1700);

То оставшиеся 2 сервы тоже чуть-чуть дёргаются, буквально на 1-2 градуса, но глазу заметно. Такое ощущение что они дёргаются в одну сторону, и сразу же возвращаются в начальную позицию.

Что это может быть? Просадка питания? Неужели надо на каждую серву использовать конденсатор? Кто как обходит проблему подключения множества серв к одной плате? (или эта проблема только у меня?)

Добавлено спустя 4 минуты 34 секунды:
ЗЫ Если объявить только одну серву, но при этом оставить остальные 2 воткнутыми в плату - то никаких дёрганий не наблюдается, т.е. похоже что проблема софтовая.
Может я неправильно несколько серв объявляю?

Добавлено спустя 4 минуты 23 секунды:
ЗЗЫ Пробовал на разных пинах, результат примерно одинаковый.
zyto
 
Сообщения: 31
Зарегистрирован: 04 апр 2014, 12:14

Re: Что купить для Hexapod'а?

Сообщение Aseris » 19 май 2014, 14:10

Ет нада смотреть осцилографом. Подозрение что скетч криво реализован.
Хотя - как передается команда? мож ет радости коммуникация + работа скетча - попробуй поднять скорость UART если он используется
Или по кнопкам идет управление?
Аватара пользователя
Aseris
 
Сообщения: 954
Зарегистрирован: 01 сен 2009, 14:58
Откуда: Чехия, Хеб
прог. языки: C/С++, VHDL, Verilog, ASM, Python

Re: Что купить для Hexapod'а?

Сообщение zyto » 19 май 2014, 22:35

Убрал всё лишнее, оставил только код, управляющий сервой:

Код: Выделить всёРазвернуть
#include <Servo.h>

int del = 700;

Servo myservo1;
Servo myservo2;
Servo myservo3;

void setup(){
  myservo1.attach(22);
  myservo2.attach(46);
  myservo3.attach(50);
}

void loop(){
  moveservo(myservo1);
}

void moveservo(Servo cservo){
  cservo.writeMicroseconds(1500);
  delay(del);
  cservo.writeMicroseconds(2300);
  delay(del);
  cservo.writeMicroseconds(1500);
  delay(del);
  cservo.writeMicroseconds(700);
  delay(del);
}


Пока не "подключаю" в коде вторую и третью серву - они не двигаются, как только прописываю вот это:
Код: Выделить всёРазвернуть
  myservo2.attach(46);
  myservo3.attach(50);

начинают дёргаться. Причём похоже они дёргаются в конце движения основной сервы.

Попробовал подключить DC-DC преобразователь, взяв с компа 12В, и сделав на выходе 5.95В (практически 6) - результат тот же.
Думал может опять питания не хватает... Похоже не подтвердилось.

Добавлено спустя 12 минут 3 секунды:
Попробовал заменить writeMicroseconds на write:
Код: Выделить всёРазвернуть
cservo.write(90);
  delay(del);
  cservo.write(170);
  delay(del);
  cservo.write(90);
  delay(del);
  cservo.write(10);
  delay(del);

Результат тот же - подёргиваются...

Добавлено спустя 26 минут 50 секунд:
Ещё заметил, если вращать второй сервой:
moveservo(myservo2);
то дёргается только третья серва, а первая не дёргается!

Как такое может быть? Кривая библиотека Servo.h или я что-то не так делаю?
zyto
 
Сообщения: 31
Зарегистрирован: 04 апр 2014, 12:14

Re: Что купить для Hexapod'а?

Сообщение Aseris » 19 май 2014, 23:05

Похоже библиотека не айс.
Попробуй писать одновременно все три сервы.

Добавлено спустя 4 минуты 58 секунд:
Код: Выделить всёРазвернуть
  myservo1.writeMicroseconds(1500);
  myservo2.writeMicroseconds(s2pos);
  myservo3.writeMicroseconds(s3pos);
  delay(del);
  myservo1.writeMicroseconds(2300);
  myservo2.writeMicroseconds(s2pos);
  myservo3.writeMicroseconds(s3pos);
...


Мож оно криво перещитывает длительности при изменении ток одной сервы. Но ет так, пальцем в небо.. как библиотека в адруине работает я незнаю.
Аватара пользователя
Aseris
 
Сообщения: 954
Зарегистрирован: 01 сен 2009, 14:58
Откуда: Чехия, Хеб
прог. языки: C/С++, VHDL, Verilog, ASM, Python

Re: Что купить для Hexapod'а?

Сообщение zyto » 19 май 2014, 23:27

Похоже всё-таки была проблема с питанием...
Убрал лишние клеммы, китайские проводки папа-папа, взял провода потолще, подключил напрямую СенсорШилд <=> блок питания - теперь всё хорошо, ничего не дёргается (во всяком случае не заметно).

Вот как оно бывает...

Добавлено спустя 1 минуту 13 секунд:
Но блин, все 3 сервы были подключены одинаково!
Почему дёргалась только объявленная второй при перемещении первой,а не наоборот...
Загадка.
zyto
 
Сообщения: 31
Зарегистрирован: 04 апр 2014, 12:14

Re: Что купить для Hexapod'а?

Сообщение Spider1973 » 14 сен 2016, 21:13

Подниму ещё раз эту тему.Собираю шестилапого хекса на 18шт sg995 серв с управлением по тороботовскому шилду на 32 канала вопрос по питанию, хватит ли мне одного липо 30с на 11.1в чтобы записать всю схему сразу,причем питать сервы собираюсь через UBEC ну примерно такой https://ru.aliexpress.com/item/ZTW-6A-B ... .66.pxI6tF а шилд наверное тоже от этой липо через регулятор например такой https://ru.aliexpress.com/item/DC-DC-St ... .80.HD9sAy потому что не известно ,что с ним будет при перезаряженном липо.а теперь сам вопрос хватит ли такого липо на эту схему если 995 жрут до 0.3 А ?
Spider1973
 
Сообщения: 3
Зарегистрирован: 12 сен 2016, 13:24

Пред.

Вернуться в Новичкам или основы основ роботостроения.

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

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

Mail.ru counter