Автор Тема: Простой сервоконтроллер От gktuning * My_Servo  (Прочитано 64416 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн gktuning

  • Электронщики
  • Освоившийся
  • *
  • Сообщений: 81
  • Карма: +1/-0
И еще вопросик в догонку..
В домашних запасах нашол пару AtMega8A-PU в корпусе DIP28 - Можно ли их использоватьс Вашей прошивкой? Плату, понятно, переделать прийдется.
По даташиту вроде, полный аналог, только каналов АЦП на 2 меньше, ну и, соответственно, порт С 6-и разрядный. Пины в Вашей схеме не задействованы.
Подскажите пожалуйста, а то я с AVRками дела не имел

Оффлайн s13

  • Разработчики
  • Старожил
  • *******
  • Сообщений: 321
  • Карма: +12/-0
Re: Простой сервоконтроллер От gktuning * My_Servo
« Ответ #1 : 21 Январь 2013, 03:04:53 »
Схема поправлена правильно.. НО также следует выбросить со схемы лимиты, они как собаке 5 нога были (в mach заводить надо). И выбросить DA1- она была смесителем для аналоговых входов меги, теперь это не нужно. Мега в дип корпусе отлично работает, проверено. Смысла заводить SD с драйверов на сервоерор нет, мега и так сразу блокирует шим. Будут вопросы - всегда рад подсказать.

Оффлайн gktuning

  • Электронщики
  • Освоившийся
  • *
  • Сообщений: 81
  • Карма: +1/-0
Re: Простой сервоконтроллер От gktuning * My_Servo
« Ответ #2 : 22 Январь 2013, 04:53:15 »
Спасибо!
С лимитами я так и понял, просто забыл затереть остатки на схеме.
DA1, на сколько я понял, была включена смесителем что б использовать все четыре фронта квадратуры (т.е. если реперный диск имеет, к примеру 256 прорезей, то после смесителя получаем 1024 фронта импульсов за один оборот). Теперь мега сама обрабатывает все события квадратуры?   
Черкните пару слов, чтоб я был уверен, что правильно все понимаю, а то дело для меня новое, могу и напутать чего...
Тогда подправлю схему окончательно и выложу. А попозже, как разработаю,  и печатку под DIP корпуса.

Оффлайн s13

  • Разработчики
  • Старожил
  • *******
  • Сообщений: 321
  • Карма: +12/-0
Re: Простой сервоконтроллер От gktuning * My_Servo
« Ответ #3 : 22 Январь 2013, 15:09:26 »
Не совсем так.. смеситель был для того, чтобы можно было использовать прерывания от компаратора ANA_Comp. В моем варианте используется прерывание int0, int1 по фронтам, что быстрее и надёжнее. Процедура квадратурного умножения была переделана для ускорения работы. Да 256 прорезей - 1024 позиции.

Оффлайн gktuning

  • Электронщики
  • Освоившийся
  • *
  • Сообщений: 81
  • Карма: +1/-0
Re: Простой сервоконтроллер От gktuning * My_Servo
« Ответ #4 : 23 Январь 2013, 04:36:58 »
Вот схема, с учетом всех рекомендаций. В архиве два варианта, на одном я еще блок питания подчистил, чтоб он не мешал при разработке платы. В общем выбирайте, кому какой больше нравится.

Оффлайн gktuning

  • Электронщики
  • Освоившийся
  • *
  • Сообщений: 81
  • Карма: +1/-0
Re: Простой сервоконтроллер От gktuning * My_Servo
« Ответ #5 : 26 Январь 2013, 20:14:59 »
Добрый день!
В разработке платы дошел до обвязки IR2184, и сразу возник вопрос по поводу номинала бутсрепных емкостей. (слово то какое, мерзопакостное. Ни выговорить, ни написать с первого раза.  По-русски это вольтодобавка, кажется - или я чтото путаю?)  :D
Вопрос в том, что передо мной три схемы силовых каскадов (абсолютно идентичные по разводке и во всех трех разные существенно разные ноиналы этих самых емкостей (220 мкФ,
10 мкФ, зашунтированная 220 нФ, ну и в той, что я "чистил" 0,22 мФ) - Чему верить? Или как рассчитать?
А то по поводу рассчета в инете или фразы типа -" нужно рассчитывать исходя из частоты ШИМ и емкости затвора", без единой формулы, или глубоко научная теория без привязки к конкретным практическим рассчетам. (по принципу -"трубопровод выбираем деревянный, так как эту галиматью все равно ни кто читать не будет  :D )
Подскажите пожалуйста, какие номиналы (а следовательно и габариты) закладывать в плату?

P.S. Плата пока получается односторонняя, будет пара - тройка коротеньких перемычек, из- за которых нет смысла делать две стороны.

Оффлайн gktuning

  • Электронщики
  • Освоившийся
  • *
  • Сообщений: 81
  • Карма: +1/-0
Re: Простой сервоконтроллер От gktuning * My_Servo
« Ответ #6 : 06 Февраль 2013, 05:56:28 »
Ну вот, полюбовался, чуть подправил узкие места и выкладываю. Только кирпичом не кидайте (тапочком можно) :D - плата в формате Eagle 5.11.0. Ну привык я к нему. На всяк случай в архиве схема и печатка в формате .png.
Большая прсьба, если у кого найдется пол часа времени, проверьте схему, именно СХЕМУ, а не плату, т.к. Eagle работает в режиме "сквозного проектирования" - т. е. рисуется схема, при чем не с абстрактными корпусами DIP28, TO247 и т.д., а с конкретными компонентами - Mtga8, IRFP260 и т.д, при этом соответствующие корпуса автоматом появляются возле поля платы с прорисованными линиями связи в точном соответствии со схемой. Остается только перетащить их на плату, расположить так, чтоб линии поменьше пересекались и проводить дорожки согласно этим сигнальным линиям. Так что в разводке ошибиться очень сложно.

На схеме не прорисованы емкости параллельно кварцу на корпус - так задумано, на плате нарисовал площадки для пайки SMD кондеров, для экономии места не хотелось тулить туда выводные емкости.
И еще, есть пара мест, где дорожки проходят между выводами микрух - не знаю, как ЛУТ к этому отнесется, я его забыл, как страшный сон, давно пользуюсь фоторезистом Positiv-20 в аэрозольной упаковке - доволен, как слон после купания, разрешение - дорожки 0,2мм и даже 0,1мм - без проблем. И ни каких дорожек, протравленных "сеткой", гембеля с принтерами, не желающими наносить достаточно тонера.
Печатаю фотошаблон на прозрачной пленке для лазерников и дальше - хоть сотню плат с него копируй - он не изнашивается, и качество печати на ней выше, нет дефектов, связанных с пористой структурой бумаги.
Хочу еще попробовать энкодерный диск при помощи позитива изготовить, 250 прорезей при  диам. 45мм на стали 0,2мм, только не уверен, что протравить удастся, толщина диска сравнима с шириной прорези. В общем, как до этого руки дойдут - отпишусь.
Ну и архив во вложении. Только повторять пока рановато, если нет ошибок (я уже третью неделю на эту схему пялюсь, примелькалась, мог что-то упустить), то выложу окончательный вариант и плату сэкспортирую в png без слоя элеметов, на случай, если кто с Eagle не дружит.
Хотя с ним проблем нет, ссылок на скачку море.

Оффлайн gktuning

  • Электронщики
  • Освоившийся
  • *
  • Сообщений: 81
  • Карма: +1/-0
Re: Простой сервоконтроллер От gktuning * My_Servo
« Ответ #7 : 10 Февраль 2013, 22:16:41 »
Ну вот, исправил и собрал все в кучу.

Оффлайн gktuning

  • Электронщики
  • Освоившийся
  • *
  • Сообщений: 81
  • Карма: +1/-0
Re: Простой сервоконтроллер От gktuning * My_Servo
« Ответ #8 : 12 Февраль 2013, 05:27:33 »
Кажется, забыл выложить исправленную и подчищенную схему для планарной Меги.
Так вот она.

Оффлайн Konstantin_K

  • Универсалы
  • Постоялец
  • *
  • Сообщений: 128
  • Карма: +8/-0
Re: Простой сервоконтроллер От gktuning * My_Servo
« Ответ #9 : 09 Март 2013, 02:05:25 »
Сегодня закончил сборку своего первого серво-контролера по схеме   My_servo_110v.
Большое спасибо   gktuning за схему и печатку. Планирую использовать контролер для
привода шпинделя настольно_токарного «TURNER 180X300Vario» и последующей
переделке его в полноценный ЧПУ.
Вотт что получилось: 

Оффлайн gktuning

  • Электронщики
  • Освоившийся
  • *
  • Сообщений: 81
  • Карма: +1/-0
Re: Простой сервоконтроллер От gktuning * My_Servo
« Ответ #10 : 10 Март 2013, 06:24:09 »
Не стоит благодарности... Пользуйтесь на здоровье!
Справедливости ради должен заметить - благодарить нужно целый коллектив - схему разработал Arisov A. V., я только ее подправил по рекомендациям разработчика прошивки S13 и разработал плату под DIP-корпуса.

P.S. Парадокс - первый раз в жизни вижу разработанную мной плату, исполненной кем-то, раньше меня! :D
Раз уж Вы оказались в роли первопроходца этого варианта - надеемся на небольшой отчет о работоспособности.
И еще, силовые транзисторы предпологалось ставить на радиатор от компового блока питания, а питание светодиодов микросхемы опторазвязки HCPL-2631 (2531 2530) я бы заменил с 12в на 5в (можно взять с USB-порта), соответственно, уменьшив резисторы  в цепи Step и Dir до 360 Ом (так будет корректнее с точки зрения LPT-порта). Только не путать питание входных цепей оптрона с питаниями (+5в и +12в) в остальной части схемы - это разные источники.

P.P.S. Пишешь - "Механик", а платку исполнил и запаял как профессионал-электроньщик, да еще с хорошими навыками монтажника!  :D

Оффлайн Konstantin_K

  • Универсалы
  • Постоялец
  • *
  • Сообщений: 128
  • Карма: +8/-0
Re: Простой сервоконтроллер От gktuning * My_Servo
« Ответ #11 : 10 Март 2013, 20:53:45 »
Провел настольные испытания, питание силовой части всего 12в. «Нет подходящего БП»
но пока все работает как часы, никаких ошибок на плате и глюков прошивки не обнаружил.
В процессе заливки прошивки «Servo_V4_7.hex» пришлось немного попарится из за шапки
в hex файле, Algorithm Builder никак не хотел шить мегу, пишет «ошибка в файле» после
удаления шапки все зашилось на ура, ну привык я к своему программатору он быстрый
и главное полностью изолированный.
По поводу замечания  gktuning полностью с Вами согласен, благодарю весь коллектив
разработчиков проекта.
  P.S. Написал  "Механик" потому что это моя основная профессия, а электроника любимое
занятие   «хобби». :)

Оффлайн Konstantin_K

  • Универсалы
  • Постоялец
  • *
  • Сообщений: 128
  • Карма: +8/-0
Re: Простой сервоконтроллер От gktuning * My_Servo
« Ответ #12 : 10 Март 2013, 21:19:08 »
Небольшой видеоотчет:
http://youtu.be/2YUd1Pf7TvM

Оффлайн gktuning

  • Электронщики
  • Освоившийся
  • *
  • Сообщений: 81
  • Карма: +1/-0
Re: Простой сервоконтроллер От gktuning * My_Servo
« Ответ #13 : 11 Март 2013, 05:05:33 »
Спасибо за отчет! Приятно видеть, что то, к чему приложил руки - работает!

P.S. Тогда все ясно... Вы так же "Механик", как я "Электроньщик" - пора, кажется, менять подписи на "Универсал"  :D
В прочем, как я заметил, тут большинство ребят таких! 

Оффлайн Konstantin_K

  • Универсалы
  • Постоялец
  • *
  • Сообщений: 128
  • Карма: +8/-0
Re: Простой сервоконтроллер От gktuning * My_Servo
« Ответ #14 : 11 Март 2013, 17:05:01 »
Вчера провел испытания на импровизированном динамомометре «пружинные весы и рычаг длиной 65мм закрепленный перпендикулярно валу двигателя» результаты такие: максимальный вращающий момент 2кг, питание силовой части 37в,
ток потребления 3А  «светодиод токовой защиты светится ярко». При всем этом резистор R22 нагрелся примерно до 80 градусов,
при токах от 1 до 2-х ампер двигатель немного дрожит «возможно надо подправить параметры  в ServoTuning, но пока это не получится сделать, не собран интерфейсный адаптер».
Вот и первая поломка, в момент подачи питания на силовую часть 74в сгорел резистор R22 у меня это 0.51Rx6W, и ключ Q4 пробит.
Есть предположение, что сначала начал отгорать резистор, а потом из за бросков тока пробило и ключ.
По этому поводу есть предложение перестроить узел токовой защиты, исключить R22, заменив его на ACS756SCA-050B
это датчик тока на эффекте Холла, а еще лучше также убрать и компаратор IC2 а выход с датчика «он вроде аналоговый» через узел регулировки тока завести на АЦП меги, чтобы при некритичных значениях тока процессор мог бы немного корректировать частоту ШИМ а при превышении порога тока сразу уходить в Servo Error.
Это уже вопрос к  s13 возможно ли это реализовать программно?
Конечно узел токовой защиты работает и так но когда ток приближается к порогу срабатывания защиты начинают отключатся драйверы силовых ключей это безусловно ограничивает ток но процессор об этом не знает и выдает максимальный ШИМ при этой ситуации возможны броски тока а это не есть хорошо особенно если токи и напряжения серьезные.
Но это чисто мое мнение, жду ответов.