О, все заработало! Интересное решение - я бы не догадался :)
Ну вроде все, все мои желания осуществлены, спасибо :)
Теперь буду смотреть почему когда питание не от USB, а от аккумулятора, то сервы начинают дергаться в ручном режиме - я так понимаю если уж от USB работает, то дело не в софте.
Заменил ардуину с dx.com на оригинальную (надеюсь, потому что стоит в 2 раза больше:)) dfrduino купленную в одном из наших онлайн магазах - дерганий стало на порядок меньше, но все же есть
Отснял видео работы сервы наклона в ручном режиме с разными дуинами и с разным питанием, видео ускорено в 10 раз (снимал 10 минут)
Когда серво сильно отклоняется это похоже начинает срабатывать автоматический цикл - т.е теряется связь с передатчиком, потом восстанавливается и серва опять переходит в ручное управление. Видно, что при питании от USB серва стоит как влитая - подозреваю что дело в том что там шнур питания экранированный, поэтому наводки не проходят... хотя от ардуины дальше идут обычные провода к тому же приемнику. Никаких видеопередатчиков, раций и прочей аппаратуры рядом нет %)
Если бы терялась связь и программа переходила в автоматический цикл, то он отрабатывался бы полностью, так как у вас в автоматическом цикле нет проверки time. Попробуйте сами, если переключиться в автоматический режим и обратно, то в ручной режим переключится только после завершения всего автоматического цикла, если конечно вы не убрали delay(2000) в setup().
Попробуйте сделать следующее: возьмите провод и подключите одним концом к GND дуины, а другим к корпусу системного блока и проверьте будет ли дергаться.
Ну так и что? У вас же нет проверки в самом cycle() и он будет отрабатываться полностью.
И еще, у вас этот cycle() будет повторяться до бесконечности или пока не переключите тумблер, а не 9 раз и никогда не будет сфотографирован надир и зенит(а точнее где-то 1 к 1000000000 что вы переключите тумблер в определенный момент и надир с зенитом будут).
Прям мгновенно переходит? У вас cycle() длится 3,6 секунды так что если вы туда-сюда щелкните тумблером, то в ручной режим перейдет на раньше чем через 3 секунды.
Рисовать буду 3 часа, лучше по фото объясню, на красный контроллер не обращайте внимание - питание через ubec идет на приемник. От приемника идет дальше на дуину, сервы и ИК-диод. Собственно и все.
Так, по схеме питания - переткнул GRN как сейчас показано на схеме, вроде все пучком - колебания совсем не значительные, а дерганий таких сильных нет. Раньше GRN был воткнут в тот который через пин от +5
Небуду клонов плодить, ибо вопрос из той же группы что и у топик-стартера. Значит так же есть Spektrum AR8k и Freeduino Nano v5. Управляется это все с DX7s. Мне управление сервами не нужно, нужно банально определить нажата ли кнопка на пульте (раньше это был двухпозиционный тумблер). НО, подключаю все как на пике
А оно мне в порт только нули посылает. пробовал разные пины на ардуине, разные каналы на пульте, пробовал питать приемник отдельно от ардуины, пробовал от самой ардуины и тд, а все равн нули. ЧЯДНТ?
Who's awesome? You're awesome! Может мне просто надо было выспаться наверное, но вы оказались правы и касательно пина и касательно сигнала с пульта. Третий пин я тоже пробовал, но все это свелось к тому, что отвалился бинд пульта и приемника. Сначала подключаю к третьей ноге, вроде дрыгается, но на пульт не отвечает, потом думаю "В чем затык?" подключил серву, а она не дергается вообще, и тут осенило, я же после резета забыл пульт забиндить опять. Вам плюс и спасиба, Максим!
ибо вопрос из той же группы что и у топик-стартера. Значит так же есть Spektrum AR8k и Freeduino Nano v5. Управляется это все с DX7s. Мне управление сервами не нужно, нужно банально определить нажата ли кнопка на пульте (раньше это был двухпозиционный тумблер). НО, подключаю все как н
Готовый скетч rc_pwm-111213a.zip, вводятся сразу 4 канала от приемника, можно и боле при желании, с полученными значениями делай что хочешь... для определения же положения тумблера достаточно сравнивать результат со средним положением - 1520мс, если больше - включен, меньше - выключен...
О, все заработало! Интересное решение - я бы не догадался :)
Ну вроде все, все мои желания осуществлены, спасибо :)
Теперь буду смотреть почему когда питание не от USB, а от аккумулятора, то сервы начинают дергаться в ручном режиме - я так понимаю если уж от USB работает, то дело не в софте.
Заменил ардуину с dx.com на оригинальную (надеюсь, потому что стоит в 2 раза больше:)) dfrduino купленную в одном из наших онлайн магазах - дерганий стало на порядок меньше, но все же есть
Отснял видео работы сервы наклона в ручном режиме с разными дуинами и с разным питанием, видео ускорено в 10 раз (снимал 10 минут)
https://vimeo.com/53663565
Когда серво сильно отклоняется это похоже начинает срабатывать автоматический цикл - т.е теряется связь с передатчиком, потом восстанавливается и серва опять переходит в ручное управление. Видно, что при питании от USB серва стоит как влитая - подозреваю что дело в том что там шнур питания экранированный, поэтому наводки не проходят... хотя от ардуины дальше идут обычные провода к тому же приемнику. Никаких видеопередатчиков, раций и прочей аппаратуры рядом нет %)
Если бы терялась связь и программа переходила в автоматический цикл, то он отрабатывался бы полностью, так как у вас в автоматическом цикле нет проверки time. Попробуйте сами, если переключиться в автоматический режим и обратно, то в ручной режим переключится только после завершения всего автоматического цикла, если конечно вы не убрали delay(2000) в setup().
Попробуйте сделать следующее: возьмите провод и подключите одним концом к GND дуины, а другим к корпусу системного блока и проверьте будет ли дергаться.
Нет, я же добавил добавил проверку time в автоматический цикл - гляньте последний код :)
Сейчас проверю заземление
Ну так и что? У вас же нет проверки в самом cycle() и он будет отрабатываться полностью.
И еще, у вас этот cycle() будет повторяться до бесконечности или пока не переключите тумблер, а не 9 раз и никогда не будет сфотографирован надир и зенит(а точнее где-то 1 к 1000000000 что вы переключите тумблер в определенный момент и надир с зенитом будут).
Когда тумблер возвращаю в 1900 - переходит в ручное, а насчет надира вы правы - спасибо :))
Прям мгновенно переходит? У вас cycle() длится 3,6 секунды так что если вы туда-сюда щелкните тумблером, то в ручной режим перейдет на раньше чем через 3 секунды.
Задержка сейчас в конце сетапа
Да, не мгновенно - так что срабатывание автоматического режима отпадает, вы опять правы :))
Подключил заземление на корпус пк, наблюдаю - раз в несколько минут всеже есть оооочень незначительные рывки, но работает практически как от USB.
А если чем другим (еще сервы, двигатели, подключенные к этому же аккумулятору) поуправлять изменения есть?
сейчас на приемник повесил еще одну серву - подергивания увеличились
а сейчас уже как 5 мин работает идеально %)
А схему что куда подключаете нарисовать можете?
И кстати, если хотите прерывать автоматический цикл, то можно сделать так
задержка при этом составит не более 1 секунды.
Схему попробую сейчас нарисовать.
И кстати, если хотите прерывать автоматический цикл, то можно сделать так
Ого! Вот оно как оказывается
Рисовать буду 3 часа, лучше по фото объясню, на красный контроллер не обращайте внимание - питание через ubec идет на приемник. От приемника идет дальше на дуину, сервы и ИК-диод. Собственно и все.
В первую очередь мне надо знать как и куда у вас подключено питание. Мультиметр имеется?
Хорошо, тогда подробную схему нарисую сегодня вечерком, сейчас к сожалению уже не успеваю
Да, мультиметр есть
Прошу прощения что пропал, обстоятельства :)
Так, по схеме питания - переткнул GRN как сейчас показано на схеме, вроде все пучком - колебания совсем не значительные, а дерганий таких сильных нет. Раньше GRN был воткнут в тот который через пин от +5
Нарисовал как сумел, извиняйте :)
Скорее всего помехи возникают в питании. Сделайте так - отключите питание от 5V дуины и напрямую с аккума подключите 7.4В к VIN дуины.
тогда UBEC 2S можно было бы и 6V поставить, если конечно такие существуют и приемник от 6 вольт работает, тогда и сервы пошустрее и помощнее крутили.
Подрубил - вообще пропали все колебания\дерганья :)
Как раз покупаю ubec с возможностью переключения 5v\6v - приедет, попробую.
Небуду клонов плодить, ибо вопрос из той же группы что и у топик-стартера. Значит так же есть Spektrum AR8k и Freeduino Nano v5. Управляется это все с DX7s. Мне управление сервами не нужно, нужно банально определить нажата ли кнопка на пульте (раньше это был двухпозиционный тумблер). НО, подключаю все как на пике
заливаю туда вот такой код
А оно мне в порт только нули посылает. пробовал разные пины на ардуине, разные каналы на пульте, пробовал питать приемник отдельно от ардуины, пробовал от самой ардуины и тд, а все равн нули. ЧЯДНТ?
Так может там и сигнала то никакого нет. Вы серву подключать ко всему этому делу как оно сейчас у вас есть пробовали?
Может частота сигнала много ниже чем вы ее ограничили и инвертирован
long
pwmIn = pulseIn(3, HIGH);
И не надо пробовать на всех выводах пробуйте на D3.
Who's awesome? You're awesome! Может мне просто надо было выспаться наверное, но вы оказались правы и касательно пина и касательно сигнала с пульта. Третий пин я тоже пробовал, но все это свелось к тому, что отвалился бинд пульта и приемника. Сначала подключаю к третьей ноге, вроде дрыгается, но на пульт не отвечает, потом думаю "В чем затык?" подключил серву, а она не дергается вообще, и тут осенило, я же после резета забыл пульт забиндить опять. Вам плюс и спасиба, Максим!
Готовый скетч rc_pwm-111213a.zip, вводятся сразу 4 канала от приемника, можно и боле при желании, с полученными значениями делай что хочешь... для определения же положения тумблера достаточно сравнивать результат со средним положением - 1520мс, если больше - включен, меньше - выключен...