выбор библиотеки для работы с PCA9685

vde69
Offline
Зарегистрирован: 10.01.2016

Делаю игрушку (паучка)

NANO и два модуля PCA9685 по I2C, 

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

нужна библиотека

1. которая не жрет ресурсы (в частности для обмена по I2C, или например с загрузкой через прерывания, или с большим использованием памяти), для меня ресурсы точно будут слабым местом...

2. Простая, и с примерами (PCA9685 - довольно простая железка, по этому всякие универсальные библиотеки заточенные под другие варианты работы это скорее минус для меня)

3. Должна быть поддержка передачи команд без больших временных интервалов (то есть на несколько моторов одновременно/почти одновременно)

 

подскажите чего попробовать?

Или если что-то модифицировать, что взять за основу (где есть все необходимые команды изменения регистров этой железки и с комментариями)

 

b707
Онлайн
Зарегистрирован: 26.05.2017

vde69 пишет:

где есть все необходимые команды изменения регистров этой железки

в даташите

 

Вопрос типичный наброс на вентилятор. Честно говоря, я для себя его перевел так: "ничего не знаю и разбираться не хочу. Посоветуйте библиотеку-  такую, чтоб понятная, быстрая и эффективная. в общем такую, чтобы ррраз - готово" :)))

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

У тя 32 моточика будет?

b707
Онлайн
Зарегистрирован: 26.05.2017

DetSimen пишет:

У тя 32 моточика будет?

гулять так гулять... Опять какой-нить "супер-паук" с восемью ногами и по 4 мотора на ногу :)

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

Да это вообще изначально LED-драйвер, с ОК 25ма на ногу, 400ма на корпус.  Для моторчиков придётся ключи на выходе ляпать. 

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

b707 пишет:
такую, чтоб понятная, быстрая и эффективная
Самое важное упущено - чтобы я смог ею воспользоваться.

vde69
Offline
Зарегистрирован: 10.01.2016

DetSimen пишет:

Да это вообще изначально LED-драйвер, с ОК 25ма на ногу, 400ма на корпус.  Для моторчиков придётся ключи на выходе ляпать. 

питание моторчиков там идет ОТДЕЛЬНО https://micro-pi.ru/pca9685-16-%D0%BA%D0%B0%D0%BD%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D0%B9-pwm-servo-i2c/

 

ЕвгенийП пишет:

b707 пишет:
такую, чтоб понятная, быстрая и эффективная
Самое важное упущено - чтобы я смог ею воспользоваться.

Я спрашиваю тех кто  уже пользовался разными и могут подсказать. Если человек спрашивает "если я шагну влево я наступлю на грабли?" это не значит, что он не хочет шагать.

 

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

vde69 пишет:
что взять за основу (где есть все необходимые команды изменения регистров этой железки и с комментариями)

https://www.nxp.com/docs/en/data-sheet/PCA9685.pdf

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

Интересная железяка, надо заказать.  Мошт, и драйвер напишу тогда. 

b707
Онлайн
Зарегистрирован: 26.05.2017

vde69 пишет:

Я спрашиваю тех кто  уже пользовался разными и могут подсказать.

ага, прям кто-то сидел и тесты разных библиотек проводил.... специально для вас.

sadman41
Offline
Зарегистрирован: 19.10.2016

Там библиотека особо и не нужна: https://github.com/zbx-sadman/zabbuino/blob/master/src/i2c_pca9685.cpp
Но написать можно, если нужно ))

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

DetSimen пишет:

Интересная железяка, надо заказать.  Мошт, и драйвер напишу тогда. 

если лучше чем adafruit напишешь, тогда есть смысл ...

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

ua6em пишет:

если лучше чем adafruit напишешь, тогда есть смысл ...

Чем здесь, напишет, конечно.

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

ua6em пишет:
если лучше чем adafruit напишешь

Памойму, там даже гайвер лучше напишет, без float, но с крикетом и герцогинями. 

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

DetSimen пишет:

ua6em пишет:
если лучше чем adafruit напишешь

Памойму, там даже гайвер лучше напишет, без float, но с крикетом и герцогинями. 

а наложниц из Тараза не запросишь? )))
ЗЫ я к тому, где их теперь взять?

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

ЕвгенийП пишет:

ua6em пишет:

если лучше чем adafruit напишешь, тогда есть смысл ...

Чем здесь, напишет, конечно.

Тогда пора Дарбаз собирать )))

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Собирайте.

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

ua6em пишет:

Тогда пора Дарбаз собирать )))

Я не знаю чо это. Я тока биб-ку могу. 

lilik
Offline
Зарегистрирован: 19.10.2017

vde69 пишет:

Делаю игрушку (паучка)

NANO и два модуля PCA9685 по I2C, 

 

А серв 18?

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

DetSimen пишет:

ua6em пишет:

Тогда пора Дарбаз собирать )))

Я не знаю чо это. Я тока биб-ку могу. 

Образно - царский совет, я в него не вхож, могу тока указы тутошние по-чи-тать )))
PS надо жеж гугла не знает, кошмар

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

Каоче, после 17-го денег получу, закажу, пащюпаю. Самому прям интересно стало.

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

DetSimen пишет:

Каоче, после 17-го денег получу, закажу, пащюпаю. 

а что так поздно пенсию дают, обычно до 10

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

ua6em пишет:

а что так поздно пенсию дают, обычно до 10

У меня шабашка, я коробки пакую с печатной продукцией для одной типографии, до 17-го надо 1000 штук упаковать.  :)  

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

DetSimen пишет:

ua6em пишет:

Тогда пора Дарбаз собирать )))

Я не знаю чо это. 

А какая разница? Если человеку пора собирать, нехай собирает. Мы ж тут не Клапы, чтобы всё запрещать :-)

vde69
Offline
Зарегистрирован: 10.01.2016

lilik пишет:

vde69 пишет:

Делаю игрушку (паучка)

NANO и два модуля PCA9685 по I2C, 

 

А серв 18?

пока 18, но будет больше, я думаю на счет манипулятора и поворотных камер/сенсеров

 

lilik
Offline
Зарегистрирован: 19.10.2017

18 серв можно на одной нано сделать. Манипулятор на другой.

vde69
Offline
Зарегистрирован: 10.01.2016

lilik пишет:

18 серв можно на одной нано сделать. Манипулятор на другой.

меня тут убедили, что нельзя :) 

Есть штатное ограничение в библиотеке 12 сервов, я читал, что 14 делается не сложно, но вот больше уже граблики разбросаны. Хотя если упереться наверно можно, но я решил, что проще купить две платки, тем более, что сопрягать 2 нано то же потрачу и ноги и ресурсы.

lilik
Offline
Зарегистрирован: 19.10.2017

На нём 17 серв и про мини с блютуз модулем для управления и загрузки

скетчей по воздуху.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Боюсь даже предположить чем он занимается на верхней гифке.

lilik
Offline
Зарегистрирован: 19.10.2017

Это он отжимается так.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

А-а-а, мышцу качает, ну, в принципе, я так и подумал :-)

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

vde69 пишет:

lilik пишет:

18 серв можно на одной нано сделать. Манипулятор на другой.

меня тут убедили, что нельзя :) 

Есть штатное ограничение в библиотеке 12 сервов, я читал, что 14 делается не сложно, но вот больше уже граблики разбросаны. Хотя если упереться наверно можно, но я решил, что проще купить две платки, тем более, что сопрягать 2 нано то же потрачу и ноги и ресурсы.

ты жеж не через библиотеку Servo.h будешь, значит можно, пишут до 64 серв без проблем )))

b707
Онлайн
Зарегистрирован: 26.05.2017

ua6em пишет:

ты жеж не через библиотеку Servo.h будешь, значит можно, пишут до 64 серв без проблем )))

судя по вопросам ТС, ему - нельзя

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

lilik пишет:

На нём 17 серв и про мини с блютуз модулем для управления и загрузки

 

класс!!!

vde69
Offline
Зарегистрирован: 10.01.2016

DetSimen пишет:

ua6em пишет:
если лучше чем adafruit напишешь

Памойму, там даже гайвер лучше напишет, без float, но с крикетом и герцогинями. 

Да в целом там не плохо написано, немного не удобные единицы измерения (и сам программный интерфейс убогий), ну и еще тот самый float, плюс типовые задержки по шине I2С при чтении данных. 

Наверно возьму ее за основу. Допилю под себя, будет в виде более широкого объекта а не библиотеки.

vde69
Offline
Зарегистрирован: 10.01.2016

lilik пишет:

На нём 17 серв и про мини с блютуз модулем для управления и загрузки

а как ты решал проблему перегиба проводов?

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

а вот интересно Servo.h использует 16 битные таймера, на каком количестве серв она захватит второй таймер?

lilik
Offline
Зарегистрирован: 19.10.2017

ua6em пишет:

 

класс!!!

Спасибо.

lilik
Offline
Зарегистрирован: 19.10.2017

vde69 пишет:

lilik пишет:

На нём 17 серв и про мини с блютуз модулем для управления и загрузки

а как ты решал проблему перегиба проводов?

А в чём она заключается?

lilik
Offline
Зарегистрирован: 19.10.2017

Вид на провода.

vde69
Offline
Зарегистрирован: 10.01.2016

lilik пишет:

А в чём она заключается?

в месте крепления они должны ломаться от частых перегибов, обычно подобные вещи решают внешним кожухом (например металорукав, или траковые защиты), на бытовой техники ставят резиновое утолщение...

lilik
Offline
Зарегистрирован: 19.10.2017

У меня дешёвые сервы SG90, они не ломаются :-)

Игрушек поделал много, провода всегда целы.

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

DetSimen пишет:

Каоче, после 17-го денег получу, закажу, пащюпаю. Самому прям интересно стало.

Денег получил, заказал. Пащюпаю. :) 

Дорогие, с-ка.  273р. 

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

DetSimen пишет:

DetSimen пишет:

Каоче, после 17-го денег получу, закажу, пащюпаю. Самому прям интересно стало.

Денег получил, заказал. Пащюпаю. :) 

Дорогие, с-ка.  273р. 

зато сделаешь робота будет вместо  тебя навоз на даче развозить

lilik
Offline
Зарегистрирован: 19.10.2017

:-)

Лучше на SG90. Хорошо под музыку.

https://www.youtube.com/watch?v=KvMRsJpcNbw