Arduino nano + servo + мотор с контролеером tb6612

Korpyc

✩✩✩✩✩✩✩
21 Окт 2020
7
0
Добрый день, собрал машинку на ардуино, спереди внедрил сервопривод.
Общая земля и +5в приходит ко всем модулям.
Питание изначально собрал на акб и mt3608, в ходе испытаний, чтоб исключить недостаточный ток, подключил блок питания на 5в.
И ничего не дало успеха.
Как следствие, отдельно либо сервопривод, либо драйвер с мотором работают, но добавляя их в одну прошивку ничего не работает.
Использовал стандартную библиотеку сервы, мотором управлял как вручную дергая пины, так и юзал motor библиотеку Гайвера.

Подскажите что может быть?

P.S. Мотор подключен как на фотке со статьи(7,8,9 пины), серво подключал к 5 и к 10 пину.
 

Korpyc

✩✩✩✩✩✩✩
21 Окт 2020
7
0
Ща всё брошу, буду шарики надувать. :ROFLMAO:

Дайте пожалуйста ссылку. Многие без неё даже заморачиваться не будут с ответами.:cautious:

Подключён только один 1 мотор, питание логики драйвера и мотора запаралелено на 5в, на ардуину 5в входит через VIN.
 

Эдуард Анисимов

★★★★★★✩
23 Сен 2019
2,281
947
58
Марий-Эл
А сервопривод откуда питается. Не совсем понял.
Вам нужно запитать ардуинку через VIN (если уж решили так), но напряжением не ниже 6-9 вольт. Так как на стабилизаторе питания падает около 0.7 вольт.
Далее с ардуины с вывода +5 вольт подать на вход VIN у TB6612.
Питание от БП подать на VM у TB6612. Также это питание нужно подать на серву.
Таким образом у Вас ардуина питается от 6-9 вольт через VIN, через вывод +5в от неё питается цифровая часть TB6612.
А сервопривод и силовая часть TB6612 питается от отдельного БП. Лишь бы его тока хватило на то и другое.

Если такое включение не поможет, дело в прошивке.
 
Изменено:

Korpyc

✩✩✩✩✩✩✩
21 Окт 2020
7
0
@Korpyc, Я ответ поправил. Посмотрите.
Перепаял, 6в поступает на серво, на VIN аррдуины, и питание двигателя. С ардуины +5в уходит на мотор_драйвер VIN и STANDBY.
Ничего не поменялось, мотор не крутит, серва дергается постоянно.

Прилагаю код:

#include <Servo.h>

uint8_t motor_in_1 = 7;
uint8_t motor_in_2 = 8;
uint8_t motor_pwm = 9;
Servo myservo;

void setup() {
digitalWrite(motor_in_1,HIGH);
digitalWrite(motor_in_2,LOW);
myservo.attach(5);
}

void loop() {
analogWrite(motor_pwm, 100);
delay(10);
myservo.write(80);
delay(10);
}

ЗЫ. Если закоментирую строки за серву, то двигатель крутит, также наоборот.
 

Старик Похабыч

★★★★★★★
14 Авг 2019
4,188
1,280
Москва
delay(10); мало для того, что бы серва успела дернутся. надо 25
и вообще если надо чтото увидеть ставь хотя бы пару секунд. а это 2000
 

Эдуард Анисимов

★★★★★★✩
23 Сен 2019
2,281
947
58
Марий-Эл
А это случайно не драка двух функций за ресурсы одного таймера.
Я точно сказать не могу, так как не вдавался в подробности этих двух приблуд.

У меня есть кое что подобное. Три сервы, один двигатель.
Двигатель подключен D3 - ШИМ, D7, D8 - Направление.
D5, D6, D9 - управление сервами.
Только одно но, вместе с двигателем работает одновременно одна серва подключенная к D9.

Остальные по ТЗ не работают при работе двигателя. Поэтому совместимость не проверял.
 

Korpyc

✩✩✩✩✩✩✩
21 Окт 2020
7
0
А это случайно не драка двух функций за ресурсы одного таймера.
Я точно сказать не могу, так как не вдавался в подробности этих двух приблуд.

У меня есть кое что подобное. Три сервы, один двигатель.
Двигатель подключен D3 - ШИМ, D7, D8 - Направление.
D5, D6, D9 - управление сервами.
Только одно но, вместе с двигателем работает одновременно одна серва подключенная к D9.

Остальные по ТЗ не работают при работе двигателя. Поэтому совместимость не проверял.
Перебросил шим двигателя на 3 контакт, но не заработало, глюк IDE какой-то, открыл пример сервы, добавил строчки за двигатель и крутит одновременно, спасибо!
 

Эдуард Анисимов

★★★★★★✩
23 Сен 2019
2,281
947
58
Марий-Эл
АААА.
У меня карма пухнет !!!!
:ROFLMAO: :LOL: ;)
Когда я догоню Старика Похабыча?

Я вспомнил кое что ещё. Я пытался управлять движком как сервой, той же функцией.
У меня движок еле крутился. Хоть там тот же ШИМ. Оказалось всё из за того, у серв скважность шима не может быть 99%.
 
  • Лойс +1
Реакции: Старик Похабыч

Boroda

✩✩✩✩✩✩✩
20 Янв 2020
17
2
https://community.alexgyver.ru/threads/pomogite-s-kodom-dlja-robota.3956/ Варианты решений(х.з гарантировано ли рабочие ли, кроме замены пинов)
Конфликты от библиотеки Servo, которая не дает использовать пин 9 и 10 как ШИМ.
Вопрос немного в сторону т.с. к местным гуру: Когда я отвечал в той ветке, то мой ответ был сразу за вопросом, а сейчас зашёл - там перед моим ответом аж целых три от других пользователей. Причём по времени их ответы раньше моего. Это глюк форума или более рейтинговые "отвечаторы" имеют приоритет?