Не могу двигать сервопривод с моим Nano
Я новичок в таких вещах. Мой код без проблем работает на моем Uno с двумя отдельными сервоприводами. Я убедился, что это не неисправные выводы, попробовав также несколько других схем со светодиодами, кнопками и потенциометрами, просто переключаясь между моим Uno (который работает нормально) и Nano.
Я каждый раз выбираю правильный порт, набор микросхем и плату, и код загружается в Nano нормально. Nano просто отказывается выполнять все, что я ему говорю.
Цифровой вывод сервопривода подключается к назначенному контакту D5.
Земля подключается к GND рядом с аналоговыми контактами (не имеет значения, как я себе представляю).
Питание составляет 5 В.
Приведенный выше код просто говорит сервоприводу двигаться до определенного уровня при загрузке. Может ли кто-нибудь сказать мне, почему сервопривод вообще не будет двигаться с Nano? Я только что купил его и не подключал к нему никакого питания, кроме USB, конечно, он не сгорел. Он также загорается и мигает.
#include <Servo.h>
Servo my_servo;
void setup() {
my_servo.attach(5);
// Определение вывода
}
void loop() {
my_servo.write(60);
// Количество степеней
}
@ardoknow, 👍0
Обсуждение2 ответа
Подключите мультиметр последовательно с соединением сервопривода от uno к сервоприводу и посмотрите, какой ток он потребляет при работе (вероятно, менее 20 мА, определенно менее 40 мА). Затем подключите его последовательно с нано и посмотрите, что произойдет. Если у вас нет тока, значит, вы активируете не тот контакт.
Если вы видите потребление тока, но сервопривод не двигается, вам нужно использовать какой-либо переключатель (транзистор, полевой транзистор, реле) для переключения сервопривода. Вы также можете сравнить напряжение и ток, считанные с нано, с требованиями в таблице данных для сервопривода. Опять же, это может привести к необходимости переключения.
Редактировать на основе комментариев выше... Также попробуйте подключить 5 В напрямую к сервоприводу, а затем последовательно добавить диод с прямым смещением, который должен имитировать падение напряжения до уровня вашего нано (0,4-0,6 В). Если сервопривод не работает с диодом и работает без него, вы можете быть уверены, что проблема в недостаточном напряжении (вероятно, учитывая рейтинг 4,8 В, который вы упомянули в комментариях).
я попробую это, когда я буду дома. Вы также можете быть правы, что, если я активирую неправильный контакт ... Может быть, ШИМ Uno (я использовал D9/10) отличается от Nano?, @ardoknow
Ваш код говорит d5. В любом случае это возможно, и я бы проверил, что он переключается с 0 на 5 В и что ток потребляется соленоидом., @Squats
У меня такая же проблема. Пример: с Arduino Uno, подключенным только к 5 В от ПК, сервоприводы работают отлично, а с Nano нет, возможно, сервоприводы пытаются двигаться, но нет. Я зарядил Skecth на Arduino Nano и ПК Deesconect, а затем поставил на Arduino Nano аккумулятор Li-ion 2s. Другими словами, для сервоприводов необходимо подавать более 6 вольт. Будьте осторожны, потому что максимальное напряжение сервоприводов может быть 6 вольт, вы можете использовать регулятор Arduino, несколько сервоприводов вызывают перегрев в этом регуляторе. Да, мой английский нуб.
- avrdude ser_open() can't set com-state
- Как отправить команду AT на sim800l с помощью SoftwareSerial
- Как заставить сервопривод вращаться на угол больше 180°
- Подключение Arduino к сервоприводу с внешним источником питания
- Мой сервопривод не работает плавно
- 9 сервоприводов на Arduino Nano?
- Бесполезная проводка коробки и код
- Почему сервопривод не перемещается по углам должным образом
сервоприводу хватает мощности?, @ratchet freak
Я знаю, что сервопривод отлично работает только через USB, используя ту же схему, что и Uno. Как вы думаете, может быть, Nano может подавать меньше энергии через USB на контакт 5V?, @ardoknow
@ratchetfreak Я проверил напряжение (с помощью мультиметра), идущее от GND и 5 В к сервоприводу, и я получил 4,58 В для Nano и 5,06 В для Uno. Может ли это иметь такое значение? Сервоприводы, которые я использую, рассчитаны на 4,8 В +, @ardoknow
Если вы недополучаете сервопривод, то внутренний контроллер может не работать., @Majenko
@Majenko, возможно, мне следует выяснить, как понизить 9-вольтовую батарею до 5-вольтовой и включить Nano?, @ardoknow
Или включите сервопривод отдельно от Nano., @Majenko
@Majenko Из Uno я попытался подать 5 В от переключаемого (5 В) источника питания прямо на GND / Power сервопривода, и он не двигается. Если я верну GND / Power обратно в Uno, он будет работать нормально. Что я могу делать неправильно?, @ardoknow
Бьюсь об заклад, вы удалили землю из Arduino, когда добавили внешний источник питания, не так ли?, @Majenko
https://hackingmajenkoblog.wordpress.com/2016/12/06/the-importance-of-sharing-grounds/, @Majenko
@Majenko Это была моя ошибка. Однако ... это то, что я сделал сейчас, и Nano все еще не работает. GND/Power от сервопривода к источнику питания GND/Power - затем от GND этих я взял один провод к GND Uno, и он работал нормально. Но если я переключу его на Nano, он не двигается. Странный., @ardoknow