Отчаянно нуждаюсь в помощи(нуб) *ардуино**серво**ключ*

Тема в разделе "Моторы, сервоприводы, робототехника", создана пользователем BrunenG, 27 янв 2015.

  1. BrunenG

    BrunenG Нуб

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

    Итак: есть ардуино уно р3, один серводвигатель, и переключатель "ключ"
    [​IMG]

    [​IMG]


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

    Megakoteyka Оракул Модератор

    Посмотрите в примерах Arduino IDE примеры работы с сервой и кнопкой.
    На концевике есть его схема. Подключать как кнопку.
    Попробуйте что-то самостоятельно сделать и задавайте вопросы по существу в случае проблем.
    Посты в стиле "привет, сделайте все за меня, я сам не хочу" тут любят, но только в этом в разделе.
     
  3. atompost

    atompost Гик

    Уважаемый Megakoteyka, ну что же вы так сразу, ну давайте подтолкнем человека в нужном направлении, просто алгоритм без конкретного кода.;)
     
  4. atompost

    atompost Гик

    Давайте по порядку:

    Вам нужен некий программный триггер. Что такое триггер? Попробую объяснить на примере триггерного выключателя, наверное видели такие в светильниках, нажимаете один раз свет включился, нажимаете еще раз свет выключился, но это реализовано механически, вам же нужно собрать это программно. Что для этого нужно? Объявляете некую переменную - счетчик. и при каждом нажатии на кнопку увеличиваете переменную на 1, но с условием что если переменная >1 то переменная становиться равной 0 (нулю). Надеюсь понятно? Тем самым вы получаете триггер, то есть первый раз нажали на кнопку получили в переменной 1, еще раз нажали получили 0 (ноль) и так далее до бесконечности. каждое нажатие на кнопку будет менять значение переменной, в нашем случае это будет либо ноль либо единица. Все наш триггер готов. Теперь просто в зависимости от значения переменной крутим серву в ту или в другую сторону. Как видите ничего сложного. А как это написать программно вам уже ответил уважаемый Megakoteyka. Надеюсь у вас все получиться!:)
     
  5. atompost

    atompost Гик

    И от себя добавлю. Я учился программировать еще в те времена когда про интернет мало чего слышали, чудная такая диковинка была, так вот если бы в те времена кто то за меня писал программки нужные мне, то я вряд ли стал бы программистом ...
     
  6. BrunenG

    BrunenG Нуб

    Честно говоря вы описали самый непонятный для меня момент. я в общих чертах представлял как это должно быть, но всё упиралось в выключатель. спасибо. буду пробовать.
     
  7. atompost

    atompost Гик

    А учиться программировать все же придется, так как Arduino без знания программирования просто "железка со штырьками" :rolleyes:
     
  8. X-Dron

    X-Dron Гик

    Коллеги, крайне поддерживаю стремление в воспитании молодежи.:)
    Но триггер на кнопке это борьба с дредезгом контакта. Я все-таки пошлю в конкретном направлении.
    Здесь описано как работать с кнопкой и как считать нажатия. Вам нужно зацикливать на на 10, а на 2
    http://wiki.amperka.ru/конспект-arduino:счетчик-нажатий
    Здесь, как работать с сервой.
    http://wiki.amperka.ru/конспект-arduino:пантограф
    Если Вам действительно интересно что-то сделать, то начинайте с разжеванного и азов.
    Решать за Вас задачки по лабам здесь не будут.
     
  9. atompost

    atompost Гик

    Я просто попытался как можно примитивнее описать принцип работы такого устройства, а топикстартеру уже самому решать как он будет обходить дребезг контактов и как управлять сервами, просто хочется чтоб человек сам с этим столкнулся и разобрался, ИМХО взять готовую схему и собрать, а после включения ничего не настраивать, не совершать магических танцев с бубном, на мой взгляд это уныло ...
     
  10. BrunenG

    BrunenG Нуб

    Гуглить то я знаю как, но товарищ X-Dron сэкономил кучу времени, которое как недавно выяснилось у меня в дефиците, собственно по причине сжатых сроков я даже готов заплатить деревянной валютой за ещё большее сэкономленное время.
    Не поймите неправильно, в другой ситуации я бы с удовольствием ковырялся в статьях и руководствах.
     
  11. atompost

    atompost Гик

    Тогда вот тут есть то, что вам пригодиться
     
  12. X-Dron

    X-Dron Гик

    Послал дак послал.;)
    Но в данном конкретном случае можно обойтись примерами из Вики. Просто так скопировать там не получится. Придется поудалять большУю часть кода. А вот что остатить, действительно есть подсказка в моем топике.
    Главная загвоздка не в программировании, а в серве.
    http://forum.amperka.ru/threads/Несложная-схема-интересуют-расценки.4296/
     
    Последнее редактирование: 28 янв 2015
  13. Все без меня решили
     
  14. Megakoteyka

    Megakoteyka Оракул Модератор

    Завязывай с флудом.
     
  15. DrProg

    DrProg Вечный нерд

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