БП с цифровым управлением.

Блоки питания, преобразователи напряжения, UPS'ы - это здесь :)
Аватара пользователя
kotyk7
Вымогатель припоя
Сообщения: 546
Зарегистрирован: Пт ноя 06, 2009 00:19:36
Откуда: Львов

Re: БП с цифровым управлением.

Сообщение kotyk7 »

Тема енкодер
Пошел конечно по самому простому пути указаном по ссылке http://radiokot.ru/articles/27/ (вторая схема которая на инверторах)
Сначала для пробы вставил 155ЛН2. Как оказалось ТТЛ логика не хочет работать по указаной схеме. Пришлось перевести среднюю точку мотора с "плюса" на "корпус". Тогда "ожило" и "заморгало". Но к сожалению никакие ухищрения с обраной связью не помогли в проблеме пропуска шагов. Такая схема реально работает только при довольно больших оборотах вала. Итого: мне не подходит.
Вернулся к первоисточнику - выпаял 155 и поставил 561ЛН2. Востановил связь средней точки и опять светодиоды "моргают". Многократные попытки "уловыть" пропуск шага были безуспешными. Даже один шаг сделаный очень медленно улавливался, а когда крутил быстро то куча морганий.
Вроде все ОК!
Но, есть пока у меня вопросы. Нормальное состояние на выходных выводах - высокий уровень. При вращении вала светодиды гаснут и вспыхивают. По идее входные порты МК будут подтянуты на +5В и высокий уровень схемы должны "сойтись". Но надо все учесть в программе, я сначала думал, что нормальное состояние енкодера будет "низкое". Надо все еще раз проверить.
P.S. поделюсь способом поиска двух обмоток которые нужно закоротить. Оные ведь должны быть симетрычны в обе стороны. Итак, думал, думал, пробовал и так и так и придумал вариант которыый не вызавает сомнений в правильности выбора:
Ведь есть две симетрычные обмотки со средней точкой и эти точки соедененные вместе в моторах с пятью выводами а с шестью - нужно соеденить самому.
Итого надо просто два крайних вывода одной из обмоток (любой) соединить вместе и соединить с точкой соединения средних точек. Тогда одна обмотка будет исполнять роль "ТОРМОЗА", а другая - датчиков движения.
Почему-то всегда приходится программировать то, что невозможно запаять...
Сергий
Родился
Сообщения: 2
Зарегистрирован: Сб сен 05, 2009 22:53:51
Откуда: УКраина

Re: БП с цифровым управлением.

Сообщение Сергий »

Можно вместо ВС478 использовать Вс557?
Аватара пользователя
kotyk7
Вымогатель припоя
Сообщения: 546
Зарегистрирован: Пт ноя 06, 2009 00:19:36
Откуда: Львов

Re: БП с цифровым управлением.

Сообщение kotyk7 »

Сергий, тут как в сказке, все можно если осторожно...
Если по существу то ВС478 в последнем варианте я не указывал. ВС557 более мощные. Точнее они средней мощности, аналог КТ814 или КТ816. Они подойдут на место Q2 и конечно с запасом в Q1 в схеме (файл: BG_0-25V-AVR-15 страница 10 форума). Но как для Q1 он слишком мощный. На него в принцыпе подойдет любой р-n-р из импортного лома без разбора параметров и маркировки, в том числе ВС478 или КТ316, КТ20... серии.
Но напоминаю, то при настройке цепи управления связки Q2, Q10 нужно контролировать ток коллектора Q10. И достичь минимального его значения (у меня где то 25 мА) Тут многое зависит от тока базы используемого Q2. По сему я отказался от советских КТ814, 816 серии. Ух "засранцы" жрали много... Иначе сопротивление R41 приходится катастрофически уменьшать и тогда он превращается в сковородку, а это неприятно во всех отношениях.
При достижении малого тока управления Q10 тоже можна использовать без разбору маркировки. Итого нужно быть внимательным с этой связкой транзисторов, а то мороки с дымом будет предостаточно. Чтобы это предотвратить серезно отнеситесь к выбору Q2. Тоесть не махайте шашкой по принцыпу "чем толще партизаны тем легче в лесу" (перефразировано на галыцький манер).

P.S. припаял четыре проводка к основной плате с процессором (благо предусмотрительно вывел контактные площадки со свободными на то время портами). Теперь есть питание и выход на порты для платы енкодера. Осталось препрограммировать МК и начать поиск ошибок... Но это наверное завтра, всетаки день по легше будет. Надо морально подготовится так сказать....
Почему-то всегда приходится программировать то, что невозможно запаять...
Аватара пользователя
kotyk7
Вымогатель припоя
Сообщения: 546
Зарегистрирован: Пт ноя 06, 2009 00:19:36
Откуда: Львов

Re: БП с цифровым управлением.

Сообщение kotyk7 »

НОВАЯ ПРОШИВКА В ПРОЦЕ!!!
ИТАК НАЧАЛОСЬ... САМОЕ ИНТЕРЕСНОЕ!!!
Почему-то всегда приходится программировать то, что невозможно запаять...
Аватара пользователя
kotyk7
Вымогатель припоя
Сообщения: 546
Зарегистрирован: Пт ноя 06, 2009 00:19:36
Откуда: Львов

Re: БП с цифровым управлением.

Сообщение kotyk7 »

УРАААААА!!!!
Все работает! Мне нравится. Правда пробежала мысль поставить и кнопки и енкодер на лицевую панель блока. Но это сегодня, а завтра посмотрим.
Правда в последнее мгновение я заметил, что крутя шаговый двигатель показания вольтметра изменяются не с шагом в 0,1, а - 0,2. Кнопками как положено. Пока мне странно. Может двигатель со странностями, или я чтото не доделал. Завтра посмотрим.
Пока.
Почему-то всегда приходится программировать то, что невозможно запаять...
Аватара пользователя
kotyk7
Вымогатель припоя
Сообщения: 546
Зарегистрирован: Пт ноя 06, 2009 00:19:36
Откуда: Львов

Re: БП с цифровым управлением.

Сообщение kotyk7 »

М-да... похоже я снова один... как в пустыне информационной так сказать.
Похоже спецы по енкодерам на эту ветку форума не забегают, очень жаль.
Прийдется и дальше все самому.
Короче что ни делаю на железе, чуть лезгинку не танцую, а он, ну тот который типа енкодер, имел меня ввиду со всех так сказать сторон. Дает удвоенный шаг и все, сцука. И аккурат в обе стороны.
Видать дело не в программе, а в нем. С сегоднешнено дня, я его уже очень сильно подозреваю.
И думаю больше с ним не воевать. Раз уж он мне такой вредный попался я его все равно в стойло поставлю (даже если он будет в позе "бегущего египтянина"). Короче я ентот "косяк" пограммно учту. Пусть он "скачет" как хочет, лиш бы ритмично, а значит я на него управу найду - просто поделю его на два как мальчишку и посмотрим... Но энто уже завтра.
Почему-то всегда приходится программировать то, что невозможно запаять...
Аватара пользователя
Liv
Вымогатель припоя
Сообщения: 525
Зарегистрирован: Сб сен 20, 2008 12:12:30
Откуда: Minsk
Контактная информация:

Re: БП с цифровым управлением.

Сообщение Liv »

Вот мой модуль поддержки энкодера. Правда, у меня используется PEC-16 от Bourns, а не из шагового двигателя. Сейчас на рынке полно всяких энкодеров, они продаются как запчасти к аудио-видео аппаратуре.

Код: Выделить всё

//----------

//Модуль поддержки энкодера

//Энкодер подключается к портам ENC_F1 (фаза 1) и ENC_F2 (фаза 2).
//Для подавления дребезга используется анализ двух последовательных
//состояний. Это позволяет обойтись от временных задержек.
//Функция Encoder_Init() должна вызываться один раз в начале программы.
//Функция Encoder_Exe() должна вызываться в основном цикле.
//При повороте энкодера на шаг вправо или влево вызываются функции
//To_Do_Step_Up() и To_Do_Step_Dn() соответственно.

//----------

#include "Main.h"
#include "Encoder.h"

//---------- Константы: ----------

#define ENC_F1   (1 << PC0) //фаза энкодера F2
#define ENC_F2   (1 << PC1) //фаза энкодера F1

#define Pin_ENC_F1 (PINC & ENC_F1)
#define Pin_ENC_F2 (PINC & ENC_F2)

enum { State0, StateA, StateB, StateAB }; //состояния энкодера

//---------- Переменные: ----------

static char EncPrev;      //предыдущее состояние энкодера
static char EncPrevPrev;  //пред-предыдущее состояние энкодера

//---------- Инициализация энкодера: ----------

void Encoder_Init(void)
{
  DDRC  &= ~(ENC_F1 | ENC_F2); //настройка портов на ввод
  PORTC |= ENC_F1 | ENC_F2;    //включение подтягивающих резисторов
  EncPrev = State0;       //инициализация предыдущего состояния
  EncPrevPrev = State0;   //инициализация пред-предыдущего состояния
}

//---------- Обработка энкодера: ----------

void Encoder_Exe(void)
{
  char EncCur = 0;
  if(!Pin_ENC_F1) EncCur  = StateA; //опрос фазы 1 энкодера
  if(!Pin_ENC_F2) EncCur |= StateB; //опрос фазы 2 энкодера
  if(EncCur != EncPrev)             //если состояние изменилось,
  {
    if(EncPrev == StateAB &&        //если предыдущее состояние StateAB
       EncCur != EncPrevPrev )      //и текущее и пред-предыдущее не равны,
    {
      if(EncCur == StateB)          //если текущее состояние StateB,
        To_Do_Step_Up();            //шаг вверх
      else                          //иначе
        To_Do_Step_Dn();            //шаг вниз
    }
    EncPrevPrev = EncPrev;          //сохранение пред-предыдущего состояния
    EncPrev = EncCur;               //сохранение предыдущего состояния
  }
}

//----------
Аватара пользователя
kotyk7
Вымогатель припоя
Сообщения: 546
Зарегистрирован: Пт ноя 06, 2009 00:19:36
Откуда: Львов

Re: БП с цифровым управлением.

Сообщение kotyk7 »

Mr,Liv
Моя программа опроса енкодера построена по такому же алгоритму как Вы указали. Спасибо.
Да, я тоже могу взять готовый прибамбас, но мне просто интересно "помучить" шаговый двигатель.
По нескольким так сказать причинам:
- мне просто интересно (есче не ламал и не использовал);
- он прекрасно крутится и четко фиксирует шаги без люфта и прочих дребезгов;
- доступность - хоть вагон есть везде...

В моем так сказать случае, я использовал ШД не от дисковода, а от принтера НР, который продвигает бумагу.
Он маленький и, как мне кажется, имеет маленький шаг, или возможно, полушаг. Вот по сему и двойной прогон импульсов. Дребезга нет наверняка.
Сегодня времени "мудрить" с программой не было, но время конечно найду и повоюю.
Почему-то всегда приходится программировать то, что невозможно запаять...
Аватара пользователя
Liv
Вымогатель припоя
Сообщения: 525
Зарегистрирован: Сб сен 20, 2008 12:12:30
Откуда: Minsk
Контактная информация:

Re: БП с цифровым управлением.

Сообщение Liv »

Полушаг - это способ управления ШД. К конструкции двигателя отношения не имеет.

Недостатки использования ШД в качестве энкодера - большие габариты, необходимость применять дополнительные схемы для формирования сигнала, не подходят стандартные ручки, проблемы с креплением, дорого стоит. В единичных изделиях еще применить можно, но для серии - это абсурд. Радиолюбительство в худшем понимании этого слова.

Обычный энкодер подключается прямо к портам микроконтроллера, не требует никаких внешних элементов. Тоже фиксирует шаги, дребезг давится программно. Широко представлен на рынке. Единственное, чем дешевые энкодеры уступают ШД - это механическая прочность. Но я уже давно использую энкодеры в разных приборах (генераторах, паяльной станции, вот планирую в БП поставить), ни один еще не сломался.
Аватара пользователя
kotyk7
Вымогатель припоя
Сообщения: 546
Зарегистрирован: Пт ноя 06, 2009 00:19:36
Откуда: Львов

Re: БП с цифровым управлением.

Сообщение kotyk7 »

Хорошо, не буду идти против ветра...
ШД отменяется.
Пойду куплю готовый енкодер. Тогда ничено мудрить не прийдется и пограмма готова.

P.S. Mr.Liv, извините за не скромный вопрос: как ваши успехи, на ентом поприще? Ваш блок питания уже готов?
Почему-то всегда приходится программировать то, что невозможно запаять...
Аватара пользователя
Liv
Вымогатель припоя
Сообщения: 525
Зарегистрирован: Сб сен 20, 2008 12:12:30
Откуда: Minsk
Контактная информация:

Re: БП с цифровым управлением.

Сообщение Liv »

Ну зачем же так сразу :)
В единичном изделии применить энкодер из ШД вполне даже можно. Заочно знаю людей, которые так делали и не жалуются. Такой энкодер оправдан там, где требуется его очень активное использование, ведь надежные оптические энкодеры стоят очень дорого.

Мой блок питания еще не готов, более срочно понадобился двухканальный генератор синуса, над ним пока и работаю.
Аватара пользователя
kotyk7
Вымогатель припоя
Сообщения: 546
Зарегистрирован: Пт ноя 06, 2009 00:19:36
Откуда: Львов

Re: БП с цифровым управлением.

Сообщение kotyk7 »

Да, меня именно тактильные ощущения от ШД очень покупают. Обычный фирменный енкодер крутится не так, а со временем шатается бл...я во все стороны. posting.php?mode=reply&f=11&t=29110#
Почему-то всегда приходится программировать то, что невозможно запаять...
Аватара пользователя
Liv
Вымогатель припоя
Сообщения: 525
Зарегистрирован: Сб сен 20, 2008 12:12:30
Откуда: Minsk
Контактная информация:

Re: БП с цифровым управлением.

Сообщение Liv »

Не сказал бы, что тактильные ощущения у ШД слишком приятные. У энкодера лучше. Что касается механической прочности, тут да, ШД далеко впереди.
Аватара пользователя
kotyk7
Вымогатель припоя
Сообщения: 546
Зарегистрирован: Пт ноя 06, 2009 00:19:36
Откуда: Львов

Re: БП с цифровым управлением.

Сообщение kotyk7 »

И, что посоветуете форумчане, "добить" вопрос с ШД или успокоится и купить да поставить обычный енкодер?
Да, вопрос с ручкой к ШД меня скажу чесно беспокоит...
Почему-то всегда приходится программировать то, что невозможно запаять...
Аватара пользователя
kotyk7
Вымогатель припоя
Сообщения: 546
Зарегистрирован: Пт ноя 06, 2009 00:19:36
Откуда: Львов

Re: БП с цифровым управлением.

Сообщение kotyk7 »

Так, отчитаюсь о проделаной работе.
Если помните, у меня проблемы с енкодером на ШД, который хотя и изменяет выходное напряжение в обе стороны, но не так как надо.
Конечно имей я доступ к двохлучевому цыфровому осцылографу с памятю все бы было значительно проще, а так времени потратил однако пока разрулил ситуацию.
Сначала думал, что дребезг, но не похоже уж больно ритмично.
Короче, решил чего мучатся, пускай "камень" мучается, а посмотрю... Добавил в тело прграммы примочку - при нажатии на все кнопки - переход в режим индикации состояния портов от ШД. Сказано сделано перешил проц, кручу ротор и смотрю на индикатор, что "получает" проц. Кручу, кручу и понимаю, что халтура однако. В связке 11, 10, 00, 01 напрочь отсутствует положение "00". Нет вру, иногда проскакивает, но так редко и както не понятно когда и почему, что можно считать что нету его.
Но кажется мне, что ШД тут ни причем, тут плата усилителей "маху дает". Как сказать нех....й сверх меры економить или искать "легкие" пути...
Так что завтра пойду на рынок посмотрю "меню" из наличия настоящих енкодеров.
Почему-то всегда приходится программировать то, что невозможно запаять...
Аватара пользователя
kotyk7
Вымогатель припоя
Сообщения: 546
Зарегистрирован: Пт ноя 06, 2009 00:19:36
Откуда: Львов

Re: БП с цифровым управлением.

Сообщение kotyk7 »

Всем привет!
Извините, что "пропал" на некоторое время. Не хотел писать всякую муру пока не доведу все до логического завершения. А то напишу, потом понимаю, что не то..., а вытирать бесполезно все и так уже прочитали. :oops:
Но сегодня вечером, после многократных проверок, могу сказать - ВСЕ ОК!
Энкодер работает как надо (правда купил я таки настоящий). С кнопкой достать не удалось ибо у нас на рынке на слово "энкодер" реагируют, к сожалению, не так как хотелось. А кто о них слышали то говорят Вы первый, кто обратился с таким запросом. Один "Жук", по другому не скажешь, после долгих обьяснений предложил взять у него б/у выкуроченый с панели автомагнитолы за 50 грн. (больше 6 долларов). Аж за наше радиосообщество обидно стало. Слава богу, как ни странно у фирмачей которые в магазине с понтами все продают, предложили по приятной в даной ситуации цене - за 9 грн.(1,1$), но без кнопки. Взамен оной "упихнули" мне к нему пластиковую ручку "фирменного разлива".
Чтото меня на лирику потянуло, наверно от радости...
Короче можно сказать, что разработка завершена. Ух упарился пока разобрался в какую сторону мой энкодер синус с косинусом "крутит". При покупке на радостях маркировку не записал, ох дурья башка!!!. Так что напоминаю для тех кто впервые с оным сталкивается - "оные гады" бывают разные не только с виду (конструктивно), но и по виду управляющих импульсов, всего два вида, вроде не много, а уже лотерея (самое больное место которое лечится только программно тоесть одному так сказать легко, а остальным - геморойно). Если кому приспичит, что я "втулил", дабы на грабли не наступать пишите, я постараюсь сходить к фирмачам еще и записать маркировку на всякий случай так сказать.
Оценив работу блока питания с энкодером, решил, что с оным всетаки приятнее работать нежели с кнопками. По сему поставлю его и одну кнопку которая выбирает шаг. И ВСЕ. Если бы был энкодер с кнопкой то вопрос был бы исчерпан полностью.
Так что перехожу к этапу завершения компоновки управления на корпус, а далее - эксплуатация.
Да, прикрепляю еще пару файлов может кому сгодится:
Вложения
BG_0-25V-AVR-final.PDF
(168.56 КБ) 450 скачиваний
Cap FUSE.zip
(7.61 КБ) 258 скачиваний
Почему-то всегда приходится программировать то, что невозможно запаять...
Аватара пользователя
Liv
Вымогатель припоя
Сообщения: 525
Зарегистрирован: Сб сен 20, 2008 12:12:30
Откуда: Minsk
Контактная информация:

Re: БП с цифровым управлением.

Сообщение Liv »

Поздравляю!
Аватара пользователя
kotyk7
Вымогатель припоя
Сообщения: 546
Зарегистрирован: Пт ноя 06, 2009 00:19:36
Откуда: Львов

Re: БП с цифровым управлением.

Сообщение kotyk7 »

И САМОЕ ГЛАВНОЕ - всем СПАСИБО за участие и терпение, а МR. Liv, Хатуль_мадану и ploop отдельное спасибо за оказанную помощь.

P.S. Только сейчас заметил - в схеме диодный мост неверно нарисован - плюс с минусом надо наоборот. Но кто не боится строить с МК тот сможет сей огрех и не заметит, соорудив "мост" с закрытыми глазами, "автоматично" так сказать, тоесть верно.

Теперь САМое, СаМОЕ главное: - если кто повторяет пишите, хвастайтесь или спрашивайте, пока я еще при памяти.
Последний раз редактировалось kotyk7 Вс ноя 21, 2010 20:12:18, всего редактировалось 1 раз.
Почему-то всегда приходится программировать то, что невозможно запаять...
Аватара пользователя
Liv
Вымогатель припоя
Сообщения: 525
Зарегистрирован: Сб сен 20, 2008 12:12:30
Откуда: Minsk
Контактная информация:

Re: БП с цифровым управлением.

Сообщение Liv »

Кстати, насчет энкодера из шагового двигателя: Вы этот проект смотрели? http://radiokot.ru/circuit/audio/amplifier/31/
Выглядит убедительно.
Аватара пользователя
kotyk7
Вымогатель припоя
Сообщения: 546
Зарегистрирован: Пт ноя 06, 2009 00:19:36
Откуда: Львов

Re: БП с цифровым управлением.

Сообщение kotyk7 »

Здравствуйте, Mr.Liv.
Ваше упорство направду похвально.
Прочитал я проэкт по Вашей ссылке. Я так понял, что изуминка именно в истории автора с применением энкодера.
Да, теперь и я могу подтвердить, что на бесконечных просторах наших стран и ближнего зарубежья этот прибор все еще остется диковинкой. При чем для большинства из тех кто в той или иной мере занимается радиоэлектроникой. (Сужу хотя бы по тому, что у самых так сказать больших месных поставщиков деталей оного не оказалось в принцыпе, не говоря уже о выборе из нескольких) Наверное все это связано из продолжающейся деградацией економики. На Украине Радиодело практически не развивается. А сообщество спецов постепенно разслаивается на тех кому же давно много лет и им не до процессорной техники, на дельцов которым пофих, что продавать лиш бы спрос, и молодежь которая не столько хочет учится сколько хочет денежку иметь особых усилий при этом не прикладывая. Или я уже тоже уже старею...
Чтото я отвлекся от темы.
Схему такую я видел и готов был повторить, но меня сбил с толку вариант попроще на инверторах, а оный то у меня был, а операционник нет, вот и решилось в пользу того, что было. Рабочие оба варианта. Но в программировании я не еще не сильный Ас, "я только учусь" и мне было интересно осилить все возможные варианты. Посему потратил много времени на освоение ШД да программы к нему. Изза того что сначала я не думал об енкодере (и для меня он был диковинкой заграничной) я не оставил свободными порты с внешними прерываниями и в итоге пришлось морочиться с программой. Изза начальной неточности ее работы обижался на ШД. Именно новый заводской энкодер привел меня к тому, что причина не в моторе с усилителями, а именно во мне и моей программе ее обработки. Сосредоточив усилия, с помощью Интернета, зубила и молотка освоил до конца логику работы сего дивайса и запрограммировал проц как надо. Чем и хвастаюсь. А то кто еще..., если не сам себя.
Вообще проэкт сего блока питания для меня лично уникальный. Тут у меня двойная цепь: ради него я начал учится работать с МК и одновременно он стал найлучшим практическим пособием и стимулом на пути освоения сего гранита знаний. При чем начав сначала с процов от PIC, "перешагнув" их из экономмических соображений "поборол" и AVR.
Так что форумчане кто думает взятся за МК не теряйте даром времени, "не так страшен черт как его малюют". А дабы сей процесс был более интересен придумайте себе соответсвующий проэкт, как я. А то книжки читать одно, а биты в регистре гонять - энто совсем другое.

P.S. Посетил Ваш сайт. Мне понравился.
Почему-то всегда приходится программировать то, что невозможно запаять...
Ответить

Вернуться в «Питание»