Братцы, помогите разобраться с подключением силовой части! Имею бутерброд Мега+Troyka Shield и MotorShield. Мега и двигатели (два 6В из комплекта MakeBlock) запитаны от аккумулятора 6В 2200 мАч (на MotorShield'е свич питания выставлен в PWRIN). Логика MotorShield'a запитана 5В от Меги. На Troyk'e (помимо 4,5,6,7 пинов управления логикой MotorShield'a) сидят две сервы (8 и 10). Засада вот в чем: когда запускаю простейшую программку (вращаю сервами, кручу колесами), поведение крайне нестабильно: то все крутится, то без видимых внешних причин начинает мигать желтый светодиод L на Troyk'e (L - load, нагрузка?), сервы дергаются на месте, колеса не вертятся. Стоит подключить к Меге USB - все нормально. Что-то с питанием, не хватает мощности? Замерял: на аккумуляторе (на входе питания Меги) - 6,3 В; на "5V" Меги - 4,5 В (странно, маловато?). Есть идеи?
Да. Жёлтый светодиод — это дубль того, что обозначен буквой L на Arduino. Т.е. это просто подсветка 13-го пина. Делаете на нём HIGH — светодиод загорается. Ну а по симптомам у вас проблема с питанием. Либо с мощностью, либо с шумами. Моторы сбивают с толку ATmega, она перезагружается, вы видите жёлтый светодиод. Выход — развязать питание моторов и логики.
Мигание желтого светодиода (который я не использую) - признак перезагрузки? Питание моторов и логики развязано (смотрите схему). Снял осциллограмму в момент попытки крутить колеса и вращать сервы: верхний канал - внешнее питание от аккумулятора 6,3В, нижний канал - питание 5В с Меги. Импульсы на линиях питания идут с PWMовской частотой 50 Гц. Колеса и сервы дергаются. Отлючил (выдернул) сервы - колеса вращаются нормально, на осциллографе "зубчиков" нет - питание ровное. Сервы влияют! 6,3В с сервами напрямую не связано (только через ноль и через Меговский преобразователь Vin->5В). Может помеха по нулю? Идиотский вопрос: три провода от сервы - коричневый - ноль, красный - 5В, оранжевый - PWM? Пичаль!
Да, скорее всего помехи по земле. Когда сервы подключены вот так, непосредственно к питанию Arduino и начинаются проблемы. Можете попробовать дать им питание от источника для ваших моторов?
Еще одну серву, запитанную 5В от Меги, тянет: колеса крутятся, серва вращается, хотя на осцилле - все те же "зубчики". На вторую мощи питания 5В, видимо, не хватает и - начинаются дерганья. Запитав обе сервы от аккум-ра 6,3В (хотя по паспорту у них питание 6В макс), получил стабильное вращение колес и кручение серв. Хотя "зубчики" остались. Итак, сервы надо питать через отдельный источник. Пока сам на граблях не спляшешь - ни за что не поймешь! Понятно, что Troyka Shield мне не нужна. Есть у меня DFRobot'овская Mega Sensor Shield v 1.2 (может я ее даже и у вас покупал) - попробую ее использовать - у нее есть даже посадка под XBee и отдельный вход внешнего питания.
Да, Mega IO подойдёт. Единственная засада с ней: если подадите внешнее питание, оно разойдётся по всем контактам, и если захотите подключить сенсоры — они получат то самое, внешнее завышенное питание.
На этой DFRobot'овской Mega Sensor Shield v 1.2 это внешнее питание разведено по всем группам контактов, кроме аналоговых А0-А15 - на них 5В от Меги. Прозвонил. Буду танцевать с ней. Спасибо за участие.