Перейти к содержанию
    

STM32F072C8U6 в китайском объективе для фотокамер Nikon

Приветствую знатоков ARM контроллеров.

Я сам в этом полный ноль, по этому прошу помощи!

А именно, имеется китайский объектив Yongnuo af 100mm f/2, и в нём чисто по китайски работает автофокусировка. Так на Никонах Д610, и Д750 фокусировка дёргается как контуженная, такое ощущения, что двигатель работает слишком быстро, как бы "перескакивает" через несколько шагов со звуком тр-тр-тр... А на Никоне Д5300 работает нормально, медленнее, и со звуком жжжжык...жжжжык. Естественно что протоколы связи, и управления во всех Никонах одинаковые, т.е. дело в прошивке объектива. Обращаться к производителю бесполезно, они на этот объектив положили болт.

Я изучил плату управления, шаговый двигатель управляется драйвером 8833С, а драйвером управляет контроллер STM32F072C8U6 по трём каналам.

Описание управления:

Шаговый двигатель подключен к драйверу 8833С по "классической" схеме из даташита - pin 2&7 объеденены OUT1, pin 4&5 объеденены OUT2
Контроллер STM32F072C8U6 управляет драйвером 8833С по трём каналам:
pin 28 (PB15) - подаёт сигнал на IN1 драйвера
pin 29 (PA8) - подаёт сигнал на IN2 драйвера
pin 30 (PA9) - подаёт сигнал на nSLEEP драйвера
Т.е. при движении "вперёд" на большой скорости
pin 28 - PWM (ШИМ)
pin 29 - 0
при движении "назад" на большой скорости
pin 28 - 0
pin 29 - PWM
при движении "вперёд" на маленькой скорости
pin 28 - PWM (ШИМ)
pin 29 - 1
при движении "назад" на маленькой скорости
pin 28 - 1
pin 29 - PWM
Так же имеется датчик импульсов, установленного на оси двигателя. Сигналы с него поступают на контроллер, на pin 25,26,27.

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

Возможно, что в прошивке несколько алгоритмов управления, и выбираются в зависимости от камеры, возможно и всего 2 варианта, для полнокадрового Никона (Д610,Д750...), и для кропнутых камер Никона (Д5300...)

Это только предположение, потому как данные по работе камеры с объективом закрыты Никоном.

Прикладываю файл прошивки, он маленький. Может кто поможет справится с автофокусом сего объектива?

С уважением Андрей.

yn100mmf2n_v1.05.zip

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

17 минут назад, AndreyX сказал:

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

Иными словами нужно заняться реверсом протокола управления объективом - задача не простая, скажу сразу...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

6 минут назад, mantech сказал:

Иными словами нужно заняться реверсом протокола управления объективом - задача не простая, скажу сразу...

Я постарался упростить её до максимума определив физические 3 выхода управления. Как я понимаю, теперь надо плясать "от печки", т.е. от этих выходов к регистрам, а от них к блоку программы, который записывает данные в регистр. Вот эти данные и надо выловить, и подправить... Это только мои догадки. Я дизассемблил прошивку прогой Cutter. Она дизассемблировалась, но для меня это тёмный лес... :crazy:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Дешевле будет с нуля прошивку написать. Для Никонов отреверсили уже протокол? С кэнонами я несколько лет назад возился, протокол на гитхабе выкладывал...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 hours ago, Eddy_Em said:

Дешевле будет с нуля прошивку написать. Для Никонов отреверсили уже протокол? С кэнонами я несколько лет назад возился, протокол на гитхабе выкладывал...

Дешевле будет родной никоновский объектив купить, ну или хотя бы Тамрон или Сигму.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

29 minutes ago, dimka76 said:

Дешевле будет родной никоновский объектив купить

Смотря насколько "родной" дороже. Если тысяч на 5, то можно и не париться с прошивкой, а если на 25 — лучше, все же, свою прошивку написать. А потом ею можно будет барыжить ☺

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

29 минут назад, Eddy_Em сказал:

Смотря насколько "родной" дороже. Если тысяч на 5, то можно и не париться с прошивкой, а если на 25 — лучше, все же, свою прошивку написать.

Лучше устроиться на нормальную работу, с приличной ЗП и:

1 час назад, dimka76 сказал:

родной никоновский объектив купить, ну или хотя бы Тамрон или Сигму.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

19 часов назад, AndreyX сказал:

Я дизассемблил прошивку прогой Cutter. Она дизассемблировалась, но для меня это тёмный лес.

То что вы выложили прошивку в формате DFU, не дизассемблируется, так что лес стал еще темней.

1 час назад, Eddy_Em сказал:

а если на 25 — лучше, все же, свою прошивку написать. А потом ею можно будет барыжить ☺

Так напишите и барыжте, кто мешает-то?

Это вам не девайсы с убогим алгоритмом для тролинга котов клепать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

12 minutes ago, Vasily_ said:

Так напишите и барыжте, кто мешает-то?

Я не барыжу, я выкладываю на гитхаб под свободной лицензией. Покуда мне не нужны никоновские объективы, ничего и не делал. А вот кэноновские очень высокого качества, мы их в спектрографах используем — вот и пришлось реверсить протокол и делать управление ими…

Если б кэноновские были на STM32, я бы значительно меньше сил потратил: просто перепрошил бы своей прошивкой, со своим протоколом (все равно их не нужно к фотоаппарату прицеплять).

P.S. "Девайс для троллинга котов" имеет значительно более сложный алгоритм по сравнению с несчастным фотообъективом!!!

Изменено пользователем Eddy_Em

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

21 hours ago, AndreyX said:

Шаговый двигатель подключен к драйверу 8833С по "классической" схеме из даташита - pin 2&7 объеденены OUT1, pin 4&5 объеденены OUT2

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

9 minutes ago, _pv said:

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

Там может и не быть этого резистора.

1. В инетах пишут, что в этом объективе коллекторный двигатель.

2. Судя по тому, что описал ТС - pin 2&7 объеденены OUT1, pin 4&5 объеденены OUT2, то оно так и есть.

Картинка из datasheet на DRV8833C

image.png.e59086491ccb2f8622027f21698233f7.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

32 minutes ago, dimka76 said:

Там может и не быть этого резистора.

ну если его там нету, резистор можно не только под мост ставить в ISEN, а например просто последовательно с двигателем, это тоже ток ограничит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

11 часов назад, dimka76 сказал:

Дешевле будет родной никоновский объектив купить, ну или хотя бы Тамрон или Сигму.

Фишка в том, что этот китаец, Кэнон 100мм, переделанный под Никон. У Никона нет прямого аналога. У меня имеется Nikon 85mm f1.8G. Хороший фикс, но этот китаец тоже интересная линза, не без огрехов, но своеобразная. Всё в ней нормально, акромя автофокуса... причём на полнокадровых камерах, на кропе работает нормально, но эта линза себя раскрывает именно на фулл фрэйме...

Был бы Yongnuo 100mm f2 гумном, я бы и не заморачивался, и не регился тут на сайте с просьбами. :sorry:

8 часов назад, dimka76 сказал:

Там может и не быть этого резистора.

1. В инетах пишут, что в этом объективе коллекторный двигатель.

2. Судя по тому, что описал ТС - pin 2&7 объеденены OUT1, pin 4&5 объеденены OUT2, то оно так и есть.

Картинка из datasheet на DRV8833C

image.png.e59086491ccb2f8622027f21698233f7.png

Да, именно по такой схеме подключён драйвер к контроллеру, и двиглу, но используется только три входа - IN1? IN2? nSlEEP. nFAULT не используется (я лично не нашёл).

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

11 часов назад, Eddy_Em сказал:

Смотря насколько "родной" дороже. Если тысяч на 5, то можно и не париться с прошивкой, а если на 25 — лучше, все же, свою прошивку написать. А потом ею можно будет барыжить ☺

Такого "родного" у Никона нет, а ближайший к нему фикс Nikon 85mm f1.8G б/у стоит в 2 раза дороже. По рисунку они весьма разные, Никон выдаёт заметно более жесткую картинку (это и плюс, и минус). Ну, в общем это весьма разные объективы. Если говорить про более светосильные объективы Никона с более мягким рисунком, то там цена в разы отличается...

Изменено пользователем AndreyX

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну и еще, немного не в тему. Если брать объектив, то конечно лучше "родные" Никкоры, на худой конец Тамроны (но далеко не все), и уж если брать Сигмы, то ОЧЕНЬ тщательно выбирать, у них с автофокусом бяда как и у этого китайзца... :crazy:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...