Web разработчик
0,0
рейтинг
14 сентября 2013 в 14:54

Делаем автоспуск почти для любого фотоаппарата

Panasonic G3 remoteЕсли кто не знает, есть у меня хобби — коптеры и задался недавно целью поднять вместо мыльницы нечто приличное для фотографирования с воздуха. Но в воздухе на кнопки не по нажимаешь, а лепить механику, для имитации пальцев рук — это лишний вес и геморрой с собственно механикой. Поэтому не долго думая глянул на дырочку с надписью remote на Panasonic G3 и полез гуглить что с ней можно сделать. И попал на замечательный сайт с распиновкой подобного разъема почти под все фотоаппараты.
Как выяснилось всё сводится к тому чтобы просто закоротить контакты, но Panasonic подкинула заботу, решив видимо, что как у всех не круто. Поэтому на фотографии справа вы видите страшные сборки из последовательно соединенных резисторов, чтоб немного приблизится к указанному на картинке номиналу:
panasonic remote pinout
Конечно же точно подобрать не удалось, но в итоге всё заработало и даже не нужно было думать о кнопке фокуса, при «нажатии» на кнопку спуска происходит и то и другое сразу.

Как вы помните, мне это нужно для управления фотоаппаратом в воздухе и, побаловавшись замыканием проводков, стал искать, как же эти самые проводки замыкать через Arduino. Подавать +5в как минимум опасно, просто так закоротить контакты, не влезая в цепь, ардуинка не умеет. Первым что пришло в голову — обычное реле, но знающие люди рассказали что есть такая штука — n-fet, которая сделает всё то же самое, только проще и меньше по весу. RC моделисты знают, что в любом регуляторе скорости (ESC) этих fet-ов просто завались, поэтому добил один из регулей, выпаяв из него сразу 3 n-fet с маркировкой 4420, что привело меня к Si4420DY* Single N-Channel Logic Level PowerTrench® MOSFET, что как раз мне и было нужно. Далее (я ни сколько не радиолюбитель, уж простите) начал искать как подключать это чудо к Arduino, оказалось всё очень просто, вот например подключение лампочки:
image
Или моторчика:
image
Поразмыслив и посмотрев на маркировку, сделал вывод что вот такое подключение будет работать (перед пайкой сверился со знающим человеком, который дал добро):
image
Спаял по схеме, залил небольшой скетч:
void setup() {                
  pinMode(13, OUTPUT);     
  pinMode(3, OUTPUT);
}

void loop() {
  digitalWrite(13, HIGH);   // зажечь статусный светодиод
  digitalWrite(3, HIGH);    // активировать спуск
  delay(500);               // ждем пол секунды, чтобы фотоаппарат сфокусировался
                            // и сделал кадр (надо варьировать в зависимости от вашей технике)
  digitalWrite(3, LOW);     // выключаем спуск
  digitalWrite(13, LOW);    // и светодиод
  delay(5000);              // ждем 5 секунд и делаем еще один кадр
}

Подключаем Arduino к фотоаппарату и подаем на неё питание:

Как видите работает прекрасно и дальше можно делать всё что угодно, например добавить переменный резистор или экран с кнопочками для изменения задержки перед спуском. Или ловить насекомых и животных, пересекающих датчик. Или так же фотографировать и потом выкладывать в интернет воров. Или сделать вращающийся предметный столик с автоматическим фотографированием и делать псевдо-3D модели для интернет-магазинов. Применений масса и ограничена только фантазией и потребностями.
Но меня интересовала работа с обычный RC приемником. Не буду утомлять читателя подробностями, да и не нужно это (а еще я не знаю точно как эта магия работает). Поэтому простенький копипастный проект выложил на github, чтобы любой мог дополнить и улучшить эту штуку для авиамоделей и не только.

А что делать если нет специализированного выхода


Вот тут уже сложнее, иногда производитель оставляет подобные вход для управления техникой в хитром проприетарном разъеме, но самый простой и наиболее опасный вариант — подпаяться к контактам кнопки спуск вашего фотоаппарата.
Препарировал я Sony tx55 (так же использую на коптере, видео снимает прекрасно, весит всего 100 грамм).
Вскрытие показало вот такую красоту очень маленьких размеров. Тестером удалось выяснить какие контакты отвечают за нажатие кнопки фокусировки (полунажатие) и кнопки собственно спуска.
Sony TX55 pinout shutter button
После чего надфилем заточил паяльник и очень аккуратно приладил 3 провода: focus, shutter и gnd (земля/общий).
Sony TX55 pinout shutter button
После чего включил фотоаппарат и попробовал замыкать контакты, оказалось что замыкать надо сразу всё, т.е. focus и shutter на землю. Для будущего подключения Arduino вывел контакты на гребенку:
image
В плане эстетики это конечно ужасно, но мыльница используется исключительно на коптерах, где подобные вещи совершенно никого не волнуют — главное чтобы было легко и работало.

Можно было бы вывести кнопки трансфокатора (зум) и подключить их через оставшиеся n-fet-ы. К сожалению кнопка начала видео записи сделана в виде иконки на экране, куда уже никак не припаять провода.

Статья хоть и сумбурная, но надеюсь понравится и принесет пользу фотографам и не только.
Противники Arduino контроллеров, спешу вас заверить что на нажатии кнопки дело не закончится. И простите меня за столь ламерское описание процесса.
SovGVD @SovGVD
карма
45,2
рейтинг 0,0
Web разработчик
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое

Комментарии (27)

  • +3
    Я бы рекомендовал использовать оптопару, все-таки гальваническая развязка.
    • +1
      Была идея, но ехать в Москву из-за одной детальки не хотелось, выпаять неоткуда, а n-fet-ов 9 штук на регуле, которых у меня скопилось 3 штуки (атмега на них не пережила перепрошивку по непонятным причинам).
      • +1
        Из доступного старого железа оптопары есть а) в блоках питания десктопов и ноутов и б) в Упсах. Печатная плата под ними обычно имеет сквозную просечку, чтобы предотвратить утечку тока по поверхности между изолируемыми цепями. По этим просечкам их и можно найти на плате, если визуально с ними не знакомы
        • 0
          Не поверите, весной переезжал и выкинул УПС, БК от компа и 2 БП от убитых ноутов.
    • 0
      и к чему она тут нужна?
  • 0
    Отличный пост. Давно, сам хотел подобное реализовать, но вскрывать фотоаппарат не хотел.
  • 0
    А ИК-приемника на фотоаппарате нету? Тогда бы и подключать ничего не пришлось: раз, два или заводской вариант
    • 0
      Ни в одном нет ИК. Поэтому такой колхоз и приходится городить.
  • +1
    Круто, но очень габаритно. На одной Тини13 было бы компактнее, особенно для коптеров, где каждый грам важен.
    Кстати, если кому интересно есть еще такой ресурс: интерфейсы цифровых видео и фотокамер.
    • +1
      Эта штучка на Arduino Mini вешалась на вот такую махину:
      image
      Ей даже не вижно тут.
      Исходил из того что было под рукой. Сейчас хочу поставить 2 ардуинки: одну на пульт, другую на коптере и использовать один канал передатчика для кучи дискретных штук, вроде нажатия кнопок, пищалки или включения подсветки.
  • 0
    А почему вы изначально рассматривали только механику? Просто обычно эта задача решается радиосинхронизатором за 1.5-3 т.р и дальностью около 200 метров…
    • 0
      На подвесе изначально предусмотрено крепление сервы для нажатия на кнопку спуска, но она предназначена исключительно для мелких фотиков.
      3т.р это слишком дорого (а 200 метров слишком мало), при том что есть пульт управления (с 2мя лишними каналами), теоретически пробивающий почти километр (в реальности меньше). Задача была только в том чтобы PWM сигнал (с приемника) преобразовать в замыкание контактов (в данном случае через ардуинку и n-fet).
      Второе изменение — я перешел на БК подвес (был на сервах, которые дрожали и видео выходили на троечку), где ставить что-то лишнее означало полную перебалансировку, поэтому пришлось раскрыть маленький фотоаппарат и подпаяться к кнопке для фотографирования.
      • 0
        А можно взглянуть на сам подвес, а не только снятое с рук видео ;)?
        • 0
          Мой или вообще? По сути обычный подвес, только сервы заменены БК моторами + специальный контроллер под это дело. Погуглите Brushless gimbal или alexmos.
          И в начале видео показывается внешний вид подвеса под большую камеру.
          • 0
            Спасибо!
            В первую очередь интересовали именно ваши — просто недавно добавил в список хотелок такие вот штуки — потому собираю опыт чужой ;)…
            • 0
              Кокретно мой вот такой
              Вид сбоку
              image

              Вид спереди
              image

              Сборная солянка из купленно на aliexpress, моторов с rctimer и гнутого профиля.
              • 0
                Я правильно понимаю, что приводы от HK можно подключить вместо серв к любой существующей системе стабилизации?
                • 0
                  Нет, требуется специльный контроллер для БК моторов для подвеса, а так же балансировка подвеса и долгая и упорная настройка PIDов.
                  • 0
                    Жаль… А я сначала подумал, что они туда прямо мозги от сервы поставили, а, похоже, это просто разъём такой же использован…
                    • 0
                      Более того, он совсем не как серва работает, мотор не знает своего положения, он только подкручивает так, чтобы установленный на подвесе гироскоп+акселерометр (будте внимательны, не все контроллеры подвеса продаются с ним и потом придется где то искать MPU6050) находился параллельно планете и он в разы слабее сервы, поэтому без балансировки будет полная фигня (никакой стабилизации только непонятные дрыгания и перелеты).
                      • 0
                        Услышал, спасибо :)
  • 0
    Как-то мне не очень нравится схема подключения МОСФЕТа. Резистор 10к можно выкинуть, ибо есть внутренняя подтяжка, которая как раз для таких целей. А вот между выходом контроллера и затвором (G) не помешало бы поставить 100Ом для защиты выхода от возможных высоких токов при коммутации транзистора.
    • 0
      Подобная подтяжка на всех ардуино схемах в туториалах, т.к. сам не супер шарю в этом деле — сделал как у всех. Откуда на ардуине высокие токи будут? Там вроде 0.2A на вывод всего (хотя сейчас питаю от источника 5V 2A всю схему).
      • +1
        По даташиту каждый пин контроллера может выдать не более 0,04А=40мА тока. Эквивалентная схема МОСФЕТа — это конденсатор между затвором (G) и истоком (S), при подаче напряжения на разряженный конденсатор, фактически, возникает короткое замыкание, но на очень короткий промежуток времени, чем выше емкость — тем больше это время. Вот в этот момент и могут возникнуть большие токи. Конечно, в 100 случаях оно может сработать нормально, а вот на 101 — сожжет порт контроллера.
        • 0
          Понятно, спасибо, припаяю резюк туда, на всякий пожарный.
  • 0
    Не холивара ради: зачем снимать с воздуха «чем-то более приличным»? У вас же не художественнная съемка, а современные мыльницы дают вполне хорошую картинку + не надо сильно париться с фокусировкой. Даже в raw сохранят если цветопередача ржаных полей и лесов важна =) Единственное «за» придумал, что зеркало намного меньше акум. жрет, но ведь можно найти мыльницу с возможностью выключить экран и будет почти то же.
    • 0
      Эксперимента ради (и это кстаии не зеркалка и я вообще не понимаю зачем поднимать зеркалку без ФФ сенсора в воздух). Ну и качество на порядок лучше, сравните кропы (по деревьям):
      Sony tx55
      Panasonic G3
      Другое дело, что эксперимент показал что для хобби этого всего нафиг не надо, т.к. для «показать друзьям вконтакте» разницы нет, после ужатия (если не придираться к ДД), при этом еще и время полета заметно сократилось, а цена возможного падения возрасла на стоимость фотика с линзой (что в общем то не сильно дешево).
      После эксперимента я плюнул на гексокоптер, он конечно крут, грузоподъемность нормальная, отказоустойчивость выше, но жрет, занимает место и весит много, а летает мало (до 10 минут висения, а с большим фотиком вообще 5-7 минут). Поставил на полочку повыше до лучших времен и быстренько собрал обычный квадрик на H раме с БК подвесом, который делает всё то-же самое, но на 50% дольше (10-15 минут) и легче, осталось только складывание сделать.

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.