Автор Тема: Step-Up на микроконтроллере  (Прочитано 33803 раз)

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

Оффлайн technic

  • Наш человек
  • ****
  • Сообщений: 348
  • Репутация: 0
  • Андрей, Вильнюс
  • Поблагодарили: +7
Step-Up на микроконтроллере
« : 10 Октября 2014, 13:54:33 »
0
Наткнулся в тырнетах на сайт, где джентельмен изготавливает интересные штуки.
http://forum.modding.ru/viewtopic.php?f=12&t=38383#p459807
Среди всего прочего - флэшки с неоновой лампочкой. Идея показалась мне интересной. Хочется сделать нечто подобное, не особо беспокоя автора - для него это, как я понимаю, коммерция.

Преобразователь напряжения для неонки выполняется по схеме:


Автор не приводит номиналов, я понял только, что используется PIC10.

Собственно, уважаемые форумчане, нужна помощь в подборе деталюшек. Т.е. понятно, что нужен полевой транзистор и диод вольт на 300-400, может подскажите какую-нибудь конкретную марку, исходя из личного опыта? Ну и номиналы дросселя и конденсаторов.

Микроконтроллер должен обеспечить достаточную частоту работы преобразователя, чем выше, тем компактнее индуктивности и емкости. Т.е. можно взять PIC10F320/322 (16 Mhz). Вначале думал, что используется ШИМ для ключевания. Но, судя по даташиту, как раз на этой ноге PIC10 ШИМ-а нет. Т.е. можно просто программно дергать транзистор с максимальной частотой. А раз так, то можно взять и другой контроллер, к примеру, из серии ATTiny (у атмег ШИМ - медленный, до килогерца).

Лампочке нужно вольт 170, резистор возле нее пару сотен Ком... Вроде все, что сам смог додумать  ;-[

Оффлайн xar

  • Старожил
  • *****
  • Сообщений: 5224
  • Репутация: 16
  • Ренат
  • Поблагодарили: +271
Re: Step-Up на микроконтроллере
« Ответ #1 : 10 Октября 2014, 14:23:15 »
0
attiny4,5,9,10 в таком же корпусе идут. по распиновке вроде подходит даже.
(у атмег ШИМ - медленный, до килогерца).

почему это? вообще для чего это все? на счет номиналов - тут готовое изделие. можешь полностью взять, можешь номиналы.

Оффлайн WolfTheGrey

  • Старожил
  • *****
  • Сообщений: 2151
  • Репутация: 6
  • Алексей
  • Поблагодарили: +98
Re: Step-Up на микроконтроллере
« Ответ #2 : 10 Октября 2014, 14:36:47 »
0
А если драйвер DC-DC применить специализированный?  Выйдет дешевле + контроль за напряжением, да и программировать не придется.
На вскидку марок микр не скажу, но в инете фоток малоногих UC**** полно. 

Оффлайн technic

  • Наш человек
  • ****
  • Сообщений: 348
  • Репутация: 0
  • Андрей, Вильнюс
  • Поблагодарили: +7
Re: Step-Up на микроконтроллере
« Ответ #3 : 10 Октября 2014, 15:49:20 »
0
attiny4,5,9,10 в таком же корпусе идут. по распиновке вроде подходит даже.

У меня сейчас для тестов пока 13-ая нашлась, правда, в DIP8, но для тестов пойдет.

почему это? вообще для чего это все? на счет номиналов - тут готовое изделие. можешь полностью взять, можешь номиналы.


"Медленный" в данном случае означает частоту ШИМа. У атмег (тех, по крайней мере, что в арудинах идут http://arduino.cc/en/Tutorial/SecretsOfArduinoPWM ) частота 490 или 980 Гц, что на фоне 16кГц PICовских - медленно. Посему аппаратный ШИМ отпадает, надо самому ножку делать.
Это все чтоб сделать как можно меньший по габаритам преобразователь для питания неоновой лампочки. Мне очень идея флешки с неонкой вместо светодиода понравилась. Т.е. надо минимизировать количество деталей и их размеры. Посему использовать специальную микросхему, конечно, соблазнительно, но ей еще что-то для управления надо.
Спасибо за пдф-ку! Интересно, на какой частоте там все работает. Судя по фото, это достаточно крупный блок.

и добавил...
А если драйвер DC-DC применить специализированный?  Выйдет дешевле + контроль за напряжением, да и программировать не придется.
На вскидку марок микр не скажу, но в инете фоток малоногих UC**** полно. 

Да, соблазнительно,конечно, но хочется минимум корпусов.
« Последнее редактирование: 10 Октября 2014, 15:56:57 от technic »

Оффлайн xar

  • Старожил
  • *****
  • Сообщений: 5224
  • Репутация: 16
  • Ренат
  • Поблагодарили: +271
Re: Step-Up на микроконтроллере
« Ответ #4 : 10 Октября 2014, 16:33:40 »
0
тех, по крайней мере, что в арудинах идут
может дело в ардуине?

Оффлайн technic

  • Наш человек
  • ****
  • Сообщений: 348
  • Репутация: 0
  • Андрей, Вильнюс
  • Поблагодарили: +7
Re: Step-Up на микроконтроллере
« Ответ #5 : 10 Октября 2014, 16:44:06 »
0
может дело в ардуине?

Нет, дело не только в ардуино, но и в атмегах, судя по pdf-кам с atmel.com и статьям в тырнетах. Почитал спецификацию, похоже, при тактовой частоте 20 MHz от 13-ой attiny можно получить ШИМ частотой 20 000 000 / (8  * 256), это где-то 9.7 КГц (в ардуинах делитель выставлен на 64, и частота ниже, посему на выходе до килогерца). Да, собственно, и фиг с ним, с ШИМ-ом, его, похоже, в данном случае не используют просто.
« Последнее редактирование: 10 Октября 2014, 17:06:38 от technic »

Оффлайн Althair

  • Старожил
  • *****
  • Сообщений: 1766
  • Репутация: 11
  • Поблагодарили: +348
Re: Step-Up на микроконтроллере
« Ответ #6 : 10 Октября 2014, 23:07:35 »
0
А контроллер кагбэ критичен, или это просто хотелка?

Оффлайн technic

  • Наш человек
  • ****
  • Сообщений: 348
  • Репутация: 0
  • Андрей, Вильнюс
  • Поблагодарили: +7
Re: Step-Up на микроконтроллере
« Ответ #7 : 11 Октября 2014, 12:43:43 »
0
А контроллер кагбэ критичен, или это просто хотелка?
Наличие контроллера весьма желательно - чтобы всякие дополнительные вещи делать.
Поясню на примере сайта, откуда идея и схемка. Автор мастерски делает флэшки в стиле стим-панка или дизель панка, встраивая в них неонку в качестве индикатора. Контроллер, который ключует транзистор преобразователя, подключен к светодиоду флешки. В результате можно реализовать такой вариант поведения -  во время передачи данных неонка показывает наличие обращений к ней, во время бездействия просто плавно мерцает...

Другое дело, какой там  будет контроллер - по большей части безразлично. Разве что в данный момент под рукой "валяются" attiny, да и программатор под Atmel'овские продукты есть. Для микрочиповских контроллеров программатор пока "в пути"

Оффлайн xar

  • Старожил
  • *****
  • Сообщений: 5224
  • Репутация: 16
  • Ренат
  • Поблагодарили: +271
Re: Step-Up на микроконтроллере
« Ответ #8 : 11 Октября 2014, 12:51:31 »
0
во время бездействия просто плавно мерцает...
настоящую неонку мерцающую слабо себе представляю. точнее она сама вполне так мерцает когда дуга скачет  :D а цель то какая в итоге? тоже стимпанк?

Оффлайн technic

  • Наш человек
  • ****
  • Сообщений: 348
  • Репутация: 0
  • Андрей, Вильнюс
  • Поблагодарили: +7
Re: Step-Up на микроконтроллере
« Ответ #9 : 13 Октября 2014, 11:07:19 »
0
не, не стим-панк, но флешку с неонкой в подарок хочу таки сделать.

Оффлайн technic

  • Наш человек
  • ****
  • Сообщений: 348
  • Репутация: 0
  • Андрей, Вильнюс
  • Поблагодарили: +7
Re: Step-Up на микроконтроллере
« Ответ #10 : 06 Ноября 2014, 15:38:09 »
0
Знакомый хороший человек поделился найденной полезной ссылкой по данному предмету.
В статье расписывается теория работы такой штукенции, и, самое главное, есть калькулятор для приблизительного расчета емкости и индуктивности.
Тут статья https://learn.adafruit.com/diy-boost-calc
тут калькулятор https://learn.adafruit.com/diy-boost-calc/the-calculator


Оффлайн technic

  • Наш человек
  • ****
  • Сообщений: 348
  • Репутация: 0
  • Андрей, Вильнюс
  • Поблагодарили: +7
Re: Step-Up на микроконтроллере
« Ответ #11 : 09 Ноября 2014, 20:36:51 »
0
 :DIY1:
Вести с полей: дошли руки на практике проверить кой-какие вещи.
Взял ATtiny13, светодиод  и программатор. Вооружился гуглом.

Результаты: насколько я понял, для данного контроллера максимальная тактовая частота на встроенной RC-цепочке - 9.6 МГц. Тогда "быстрый" ШИМ работает на частоте 9.6/8/256 = 4.7КГц. Не фонтан.

С другой стороны, нашлись неонки, работающие при напряжении 65-90 В, кушает меньше миллиампера (лампочка NE-2H). Уже веселее.

Придется транзистор ключевать "вручную", безо всяких ШИМов. Меандр тут не подходит, надо чтоб импульсы были с коэффициентом заполнения не менее 95%. Т.е. частота получится чутка ниже, чем просто установить бит/ сбросить бит.

Жаль, нет осциллографа, не могу посмотреть, что получается при обычном ключевании.

Пока так.

и добавил...
пока вырисовывается транзистор BSP125 да диод BAS20. С кондерчиком и индуктивностью получится определится, когда доберусь до осциллографа...
« Последнее редактирование: 09 Ноября 2014, 20:48:34 от technic »

Оффлайн blindman

  • Старожил
  • *****
  • Сообщений: 798
  • Репутация: 13
  • Андрей
  • Поблагодарили: +18
Re: Step-Up на микроконтроллере
« Ответ #12 : 10 Ноября 2014, 04:12:03 »
0
9.6/8/256 = 4.7КГц
А делитель на 8 выключить?

Оффлайн technic

  • Наш человек
  • ****
  • Сообщений: 348
  • Репутация: 0
  • Андрей, Вильнюс
  • Поблагодарили: +7
Re: Step-Up на микроконтроллере
« Ответ #13 : 10 Ноября 2014, 09:06:16 »
0
А делитель на 8 выключить?

Была такая мысль, но есть подозрение, что это минимально возможный делитель. Проверю в слюдующем сете курения мануалов и практических работ.

Оффлайн xar

  • Старожил
  • *****
  • Сообщений: 5224
  • Репутация: 16
  • Ренат
  • Поблагодарили: +271
Re: Step-Up на микроконтроллере
« Ответ #14 : 10 Ноября 2014, 10:04:13 »
0
technic, FUSE CKDIV8 убрать и усе. только остальные не трогай. а то с прямым/инвертированным представлением у аврок беда (точнее так исторически сложилось)
вот здесь посмотри. http://www.engbedded.com/fusecalc/

Оффлайн technic

  • Наш человек
  • ****
  • Сообщений: 348
  • Репутация: 0
  • Андрей, Вильнюс
  • Поблагодарили: +7
Re: Step-Up на микроконтроллере
« Ответ #15 : 10 Ноября 2014, 10:12:45 »
0
спасибо!

Почитал сейчас официальную pdf-ku ( http://www.atmel.com/images/doc2535.pdf#page=58 ), там на 73 странице нарисовано, что можно программно делитель установить в положение no_prescaling. Попробую. Если это пойдет, то будет мне щастье.

Оффлайн blindman

  • Старожил
  • *****
  • Сообщений: 798
  • Репутация: 13
  • Андрей
  • Поблагодарили: +18
Re: Step-Up на микроконтроллере
« Ответ #16 : 10 Ноября 2014, 10:28:51 »
0
Андрей, ты не путай прескэйлер таймера, и предделитель тактовой частоты.

В состоянии "с завода" тактовая частота делится на 8. Там есть специальный регистр CLKPR, и если CKDIV8 запрограммирован, то при старте в CLKPR записывается 3 , что значит деление на 8. А если CKDIV8 не запрограммирован, то в CLKPR пишется 0 - вообще без деления.  Этот регистр можно изменять во время работы программы, и таким образом менять тактовую частоту.

А TCCR0B задает делитель таймера, и включен этот делитель после делителя тактовой частоты.

Так что тебе надо снять CKDIV8 и в TCCR0B писать единицу

Оффлайн technic

  • Наш человек
  • ****
  • Сообщений: 348
  • Репутация: 0
  • Андрей, Вильнюс
  • Поблагодарили: +7
Re: Step-Up на микроконтроллере
« Ответ #17 : 10 Ноября 2014, 10:41:05 »
0
Андрей, ты не путай прескэйлер таймера, и предделитель тактовой частоты.
Благодарю за важное замечание! А то с наскоку бывает сложно разобраться во всем сразу :)


Оффлайн technic

  • Наш человек
  • ****
  • Сообщений: 348
  • Репутация: 0
  • Андрей, Вильнюс
  • Поблагодарили: +7
Re: Step-Up на микроконтроллере
« Ответ #18 : 19 Ноября 2014, 21:42:08 »
0
В продолжене темы. Вооружился осциллографом, теперь могу рассказывать предметно, с иллюстрациями.

Убрал деление частоты на 8, получил частоту ШИМа 40кГц, что считаю вполне достойным результатом. Вот, собственно, картинки:

(Извините, но у Вас нет доступа в Галерею)

(Извините, но у Вас нет доступа в Галерею)

(Извините, но у Вас нет доступа в Галерею)

(Извините, но у Вас нет доступа в Галерею)



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



#include <avr/io.h>
#include <util/delay.h>

void pwm_write (int val)
{
    OCR0B = val;
}

void pwm_setup (void)
{
TCCR0B |= (1 << CS00);
TCCR0A |= (1 << WGM01) | (1 << WGM00);
TCCR0A |= (1 << COM0B1);
}

int main(void)
{
  int i;
  pwm_setup();
  DDRB |= (1<<PB1);
  while(1) {
   
    for(i=0; i<256; i++)
    {
      pwm_write(i);
      _delay_ms(5);
    }
    for(i=255; i>0; i--)
    {
      pwm_write(i);
      _delay_ms(5);
    }
   }
  return 0;
}
« Последнее редактирование: 19 Ноября 2014, 21:50:19 от technic »

Оффлайн WolfTheGrey

  • Старожил
  • *****
  • Сообщений: 2151
  • Репутация: 6
  • Алексей
  • Поблагодарили: +98
Re: Step-Up на микроконтроллере
« Ответ #19 : 20 Ноября 2014, 14:06:50 »
0
А можешь рассказать к какой части схемы относятся сигналы на картинках.
По край ней мере могу предположить, чо хвостик на восходящем фронте меандра - это затухающие колебания. Образуются из за плохой разводки ПП.

Оффлайн technic

  • Наш человек
  • ****
  • Сообщений: 348
  • Репутация: 0
  • Андрей, Вильнюс
  • Поблагодарили: +7
Re: Step-Up на микроконтроллере
« Ответ #20 : 20 Ноября 2014, 15:20:02 »
0
Это не печатка, это "собачник" с дырками, куда можно вставлять компоненты и собирать на скорую руку схемку для отладки. Посему тут шумов и прочего мусора может быть много.
В данном случае схема простая - микроконтроллер, к его ноге подключен светодиод, который, в свою очередь, подключен к плюсу через резистор. Снимал с ножки резистора.

что-то типа такого (что-то тэг {img} не поддерживает изменения размера, звиняйте):
 
« Последнее редактирование: 20 Ноября 2014, 15:27:24 от technic »

Оффлайн technic

  • Наш человек
  • ****
  • Сообщений: 348
  • Репутация: 0
  • Андрей, Вильнюс
  • Поблагодарили: +7
Re: Step-Up на микроконтроллере
« Ответ #21 : 22 Ноября 2014, 21:53:59 »
0
После длительных раздумий, тестов и экспериментов вырисовывается следующая картина:
Неоновой лампочке надо 60-80В, имеем ШИМ частотой около 40 КГц, заполнение должно быть 95%.
Транзистор пробую BSP125, диод BAV21, неоновая лампочка NE-2H. Без резистора думаю обойтись (подберу напряжение). Лампочке надо меньше 1-го миллиампера. Остаются загадкой емкость конденсатора и величина индуктивности дросселя. Возьмем, для определенности, 100 микрогенри.
Соберу макетку, посмотрю, что получится.

Оффлайн WolfTheGrey

  • Старожил
  • *****
  • Сообщений: 2151
  • Репутация: 6
  • Алексей
  • Поблагодарили: +98
Re: Step-Up на микроконтроллере
« Ответ #22 : 23 Ноября 2014, 00:36:02 »
0
На сколько помню, эта неонка питается переменным напряжением а не постоянкой. В детстве пытался запустить от обычных 5ти вольт, ии подмигивала.

Оффлайн technic

  • Наш человек
  • ****
  • Сообщений: 348
  • Репутация: 0
  • Андрей, Вильнюс
  • Поблагодарили: +7
Re: Step-Up на микроконтроллере
« Ответ #23 : 23 Ноября 2014, 21:52:17 »
0
На сколько помню, эта неонка питается переменным напряжением а не постоянкой. В детстве пытался запустить от обычных 5ти вольт, ии подмигивала.

Горит от постоянки как милая! Ей 60-80 вольт надо.


Вести с полей  :DIY2:

Собрал схемку на Attiny13, дроссель на 100 uH, транзистор BSP125, диод BAV21, конденсатор 1мкФ, неоновая лампочка NE-2H.
Лампочка горит, мультиметр показывает напряжение 50 вольт.
Более здорова лампочка NE-6H тоже устойчиво горит.
Замена дросселя на 220uH прироста яркости не дала.
Что характерно, значение скважности ШИМ можно уменьшать до 4%, только тогда яркость лампочки начинает уменьшаться.
Полагаю, есть запас для уменьшения значения емкости конденсатора (а заодно и его габаритов, это пока самый габаритный элемент).

« Последнее редактирование: 23 Ноября 2014, 21:54:48 от technic »

Оффлайн technic

  • Наш человек
  • ****
  • Сообщений: 348
  • Репутация: 0
  • Андрей, Вильнюс
  • Поблагодарили: +7
Re: Step-Up на микроконтроллере
« Ответ #24 : 26 Ноября 2014, 12:19:18 »
0
Попытался изучить "пределы" этой схемы.
В итоге получается, что конденсатор тоже "лишний", т.е. если оставить в схеме только транзистор, дроссель, диод и лампочку - этого достаточно, лампочка устойчиво горит.
Не совсем понимаю, как оно работает без емкости, но факты вещь такая.
Если поставить последовательно с лампочкой токоограничивающий резистор, то наличие емкости уже сказывается на яркости свечения.

Такие пока новости

Оффлайн WolfTheGrey

  • Старожил
  • *****
  • Сообщений: 2151
  • Репутация: 6
  • Алексей
  • Поблагодарили: +98
Re: Step-Up на микроконтроллере
« Ответ #25 : 26 Ноября 2014, 12:32:34 »
0
Конденсатор в прыжке хавает лишнюю энергию, из за отсутствия онного неонке не хватает тока для продолжительного запала. Как то так.

Оффлайн technic

  • Наш человек
  • ****
  • Сообщений: 348
  • Репутация: 0
  • Андрей, Вильнюс
  • Поблагодарили: +7
Re: Step-Up на микроконтроллере
« Ответ #26 : 26 Ноября 2014, 15:18:45 »
0
из за отсутствия онного неонке не хватает тока для продолжительного запала

Ну так ведь горит как-то, зараза

Оффлайн xar

  • Старожил
  • *****
  • Сообщений: 5224
  • Репутация: 16
  • Ренат
  • Поблагодарили: +271
Re: Step-Up на микроконтроллере
« Ответ #27 : 26 Ноября 2014, 17:22:35 »
0
technic, в любом случае (с кондером или без) неонка работает как разрядник, и питание скачет импульсно. кондер слишком мал, чтоб на это сильно повлиять.

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

Оффлайн technic

  • Наш человек
  • ****
  • Сообщений: 348
  • Репутация: 0
  • Андрей, Вильнюс
  • Поблагодарили: +7
Re: Step-Up на микроконтроллере
« Ответ #28 : 26 Ноября 2014, 23:09:35 »
0
подключил неонку через резистор 100КОм, яркость не изменилась, а вот на конденсатор схема стала "замечать".
Более-менее понятно все.
Надо теперь искать мелкий конденсатор SMD, вольт на 100. Как-то в наших магазинах не густо

Оффлайн xar

  • Старожил
  • *****
  • Сообщений: 5224
  • Репутация: 16
  • Ренат
  • Поблагодарили: +271
Re: Step-Up на микроконтроллере
« Ответ #29 : 27 Ноября 2014, 07:17:44 »
0
искать мелкий конденсатор SMD, вольт на 100.
ну попробуй  :D если и есть - редкость.  имхо паровозиком более мелкие придется ставить.

 

Похожие темы

  Тема / Автор Ответов Последний ответ
12 Ответов
14032 Просмотров
Последний ответ 13 Мая 2012, 10:08:31
от MrEagle
79 Ответов
50921 Просмотров
Последний ответ 15 Мая 2015, 06:08:17
от misa
2 Ответов
14164 Просмотров
Последний ответ 27 Октября 2019, 11:32:22
от Althair