Почему библиотека Servo ограничивается 12 шт для NANO ?
- Войдите на сайт для отправки комментариев
Вс, 07/11/2021 - 23:53
библиотека Servo ограничивается на NANO
Везде пишут, что ограничение в 12 сервоприводов и это это связано с количеством цифровых пинов.
А разве аналоговые пины не могут работать как цифровые?
Мне кажется, что должны работать
14 цифровых + 8 аналоговых - 2 UART = 20 шт...
объясните где я ошибаюсь?
Сделай лучше, раз такой умный
библиотека Servo ограничивается на NANO
Везде пишут, что ограничение в 12 сервоприводов и это это связано с количеством цифровых пинов.
А разве аналоговые пины не могут работать как цифровые?
Мне кажется, что должны работать
14 цифровых + 8 аналоговых - 2 UART = 20 шт...
объясните где я ошибаюсь?
Везде. Считай сколько можно сделать шимов, а не ноги.
библиотека Servo ограничивается на NANO
Везде пишут, что ограничение в 12 сервоприводов и это это связано с количеством цифровых пинов.
объясните где я ошибаюсь?
Ограничение связано с временными параметрами. Период серво сигнала 20 мс. Максимальная длительность одного импульса 2,4 мс (так задано в библиотеке). Переполнение таймера происходит за 32мс с хвостиком (для 16 МГц). Чтобы период серво сигналов гарантированно был не больше 20 мс, серв должно быть не больше 20/2,4 = 8.33 Чтобы гарантированно не допустить переполнения таймера серв должно быть не больше 32/2,4 = 13. Может быть я ошибся в цифрах, но смысл точно такой.
Если нужно больше серв, то надо чуть изменить библиотеку.
Переполнение таймера не играет никакой роли совершенно.
14 цифровых + 8 аналоговых - 2 UART = 20 шт...
Помимо прочего: не любой аналоговый пин может работать как цифровой, т.е.
14 цифровых + 6 аналого-цифровых - 2 UART = 18 шт...
Переполнение таймера не играет никакой роли совершенно.
Отвечу вам в вашем стиле. Да неужели?
Абсолютно точно. Можешь даже открыть исходник библиотеки и убедиться. (странно, что ты этого не сделал до того, как взялся объяснять библиотеку, но такова уж жизнь балабола, я полагаю)
Если надо управлять с нано 20 приводами делаем как описано тут.
http://arduino.ru/forum/pesochnitsa-razdel-dlya-novichkov/arduino-pro-mini-i-17-servoprivodov
To rkit
Я в своем первом сообщении довольно подробно написал причину. Вы же просто бросили реплику, для меня очевидно ошибочную. Балабол - это вы.
Если надо управлять с нано 20 приводами делаем как описано тут.
http://arduino.ru/forum/pesochnitsa-razdel-dlya-novichkov/arduino-pro-mini-i-17-servoprivodov
интересно, качественные (цифровые) сервы имеют следующие параметры:
0 - 1000 мксек
90 - 1500 мксек
180 - 2000 мксек
как они себя на этой библиотеке ведут
Не знаю, у меня дешевые SG90.
спасибо всем, собственно стало немного понятнее моя проблема.
Собственно у меня 2 варианта
1. программный - изменять не все сразу а не более половины, при этом придется править библиотеку
2. ставить две NANO и настраивать между ними синхронизацию
второй вариант мне нравится больше, он немного логичнее по сколько у меня половина приводов левых а половина правых (зеркальных), то есть будет меньше помех, по сколько платы будут разнесены на приличное расстояние.
Два специализированных 16-канальных сервоконтроллера не получится заюзать?
я программист а не электронщик, если есть готовая плата управления сервоприводами я ее осилю, но самому взять микросхему и куда-то ее впаять - это не мое.
Ключевое слово - PCA9685
:) только они стоят так-же как NANO, а вообще интересно, надо подумать
1. программный - изменять не все сразу а не более половины, при этом придется править библиотеку
Чушь какая. Откуда вообще вылезла эта половина? Еще раз: возьми и сделай лучше, раз ты программист. Сделать можно.
Только они не зависят от остального кода, как Servo.h, и не нужно ломать голову над синхронизацией.
классный модуль, как раз для этих целей!
по сколько у меня половина приводов левых а половина правых (зеркальных), то есть будет меньше помех, по сколько платы будут разнесены на приличное расстояние.
Ходун (гексапод) на 18 сервах?
по сколько у меня половина приводов левых а половина правых (зеркальных), то есть будет меньше помех, по сколько платы будут разнесены на приличное расстояние.
Ходун (гексапод) на 18 сервах?
паук, 6 лап, на каждую 3 сервы
:-)
Тогда про мини 168 хватит и ещё на блютуз модуль для управления останется.