Регулятор оборотов микродрели на PIC-контроллере
ПОТАПЧУК,
г.Ровно, Украина. E-mail: mapic@mail.ru

В радиолюбительской практике одним из самых важных инструментов является дрель. В качестве миниатюрных электродрелей для сверления плат часто используются двигатели постоянного тока с приделанным микровыключателем на рукоятке. Питание на такую микроэлектродрель подается от внешнего блока питания. В большинстве случаев обороты электромотора не регулируются, а чтобы "сверлилка" лучше работала, на нее подается завышенное напряжение питания. Это приводит к преждевременному выходу со строя электромотора. Еще одним слабым звеном устройства является кнопка включения. Это и не удивительно, если учесть, что пусковой ток электромотора может достигать 3 А и более.

Эти недостатки побудили разработать регулятор оборотов на современном микроконтроллере ф.Microchip PIC16F627/628. Важной особенностью данной модели микроконтроллера является наличие внутреннего двухскоростного RC-генератора. Используя эту особенность, в процессе выполнения программы можно переключать тактовую частоту микроконтроллера с 4 МГц на 32 кГц и наоборот. Данная микросхема содержит также встроенный широтно-импульсный модулятор (ШИМ), что позволяет реализовать весь диапазон регулировки оборотов. Коэффициент заполнения импульсов (величина, обратная скважности) меняется от 0 до 1. Это позволяет построить очень эргономичное устройство практически на одной микросхеме с минимальным количеством внешних компонентов.


 Технические характеристики


Напряжение питания, В 8…25
Ток потребления устройством в рабочем режиме
(зависит от мощности электромотора), А 0.5…3
Ток потребления в ждущем режиме работы, мА < 1
Частота работы ШИМ, кГц 15
Коэффициент заполнения ШИМ 0.4…1
Количество ступеней регулировки напряжения на электродвигателе 50
Плавность регулировки скважности ШИМ, ступени/с 2


 

  

К выводам 18, 7 и 8 микроконтроллера (рис.1) подключены кнопки управления устройством. Следует отметить, что от электромотора и соединительного шлейфа во время работы идет довольно солидное электромагнитное излучение, которое может привести к самопроизвольному срабатыванию кнопок SB2 и SB3. Для предотвращения этого используются блокировочные конденсаторы С4 и С5, которые шунтируют высокочастотные наводки на выводах кнопок. Цепь R2-VD2 представляет собой простейший параметрический стабилизатор, снижающий уровень напряжения, которое подается с кнопки SB1 на цифровой вход микроконтроллера, до стандартных TTL-уровней сигнала. Резистор R3 формирует на
выводе 18 DD1 уровень логического "О" в то время, когда кнопка SB1 отпущена. Светодиод HL1 отображает режимы работы устройства.
ШИМ-сигнал с выхода микроконтроллера через резистор R4 подается на составной транзистор VT1, VT2. Коллекторы транзисторов подсоединены к одному из полюсов электромотора. Электромотор подключается к устройству при помощи трехпроводного шлейфа. Два провода используются для подачи питания, третий — для приема сигнала от кнопки "Пуск". Напряжение питания на двигателе зависит от коэффициента заполнения ШИМ-сиг-нала. Стабилизатор на микросхеме DA1 обеспечивает питанием микроконтроллер. Конденсаторы С1 и С2 используются для фильтрации высокочастотных помех, поступающих как с блока питания, так и от самого электромотора. Для этих же целей установлен конденсатор СЗ, включенный параллельно полюсам питания электромотора. Диод VD1 гасит токи самоиндукции, которые появляются в цепи питания электромотора при работе.
Подробно разобраться в принципах работы устройства поможет схема алгоритма, представленная на рис.2. В соответствии с ним сразу после старта программы микроконтроллер проходит начальную инициализацию. Во время инициализации настраиваются порты микроконтроллера, таймеры (счетчики), и переключается тактовая частота с 4 МГц на 32 кГц. После этого микроконтроллер входит в программный цикл ожидания нажатия кнопки "Пуск" (SB1). В этом цикле также происходит обработка прерывания по переполнению таймера-счетчика 2, которое используется для задания периодов работы светодиодаНL1.
После нажатия кнопки SB1 программа микроконтроллера сразу же переключает частоту тактирования с 32 кГц на 4 МГц и проводит инициализацию внутреннего ШИМ-контрол-лера. Далее процессор читает сохраненное ранее в энергонезависимой памяти (EEPROM) значение длительности импульса ШИМ и записывает его в соответствующий служебный регистр. Проделав все эти операции, микроконтроллер запускает ШИМ и снова оказывается в программном цикле ожидания нажатия кнопок SB2, SB3, либо отпускания кнопки SB1.
При нажатии кнопки SB2 (SB3) микроконтроллер увеличивает (уменьшает) длительность импульса ШИМ, и тем самым изменяет напряжение, прикладываемое к электромотору. После каждого изменения длительности импульса ШИМ текущее значение сохраняется в виде константы в энергонезависимой памяти микроконтроллера (EEPROM). Это позволяет не проводить начальную настройку скорости вращения "сверлилки" каждый раз при начале работы. Если же программа обнаруживает, что кнопка SB1 отпущена, микроконтроллер сразу же переходит на программную ветвь завершения работы ШИМ-регулятора. В этой ветви производится выключение ШИМ (на выводе 9 DD1 устанавливается низкий уровень), и микроконтроллер снова переходит в цикл ожидания нажатия кнопки "Пуск". Дальше алгоритм работы устройства повторяется.
Управляющая программа микроконтроллера приведена в табл.1, а карта прошивки — в табл.2. Основные ее задачи — сканирование кнопок и управление ШИМ-сигналом.
Благодаря наличию в данном микроконтроллере регистра периода ШИМ, можно задать практически любую его частоту. В данном устройстве из практических соображений частота ШИМ выбрана около 15 кГц (точное значение зависит от частоты внутреннего RC-генератора). Коэффициент заполнения (К3), как уже упоминалось выше, можно задать от 0 до 1. Но практика показала, что большинство электромоторов при К3 меньше 0,4 не вращаются. По этой причине диапазон возможных К3 в данной программе составляет 0,4.. 1. Программа обеспечивает дискретное изменение К3 (50 ступеней) при нажатии соответствующих кнопок управления.
Устройство управляется с помощью трех кнопок SB1.. SB3. При помощи кнопки SB1 осуществляется включение и выключение электромотора (пока эта кнопка нажата, мотор вращается). Кнопка SB2 увеличивает обороты, a SB3 — уменьшает. Каждое изменение оборотов запоминается в энергонезависимой памяти микроконтроллера. Поэтому при следующем включении питания электродвигатель вращается со скоростью, заданной раньше.
Когда электродрель выключена, микроконтроллер находится в режиме энергосбережения (частота RC-генератора — 37 кГц), и ток потребления составляет менее 1 мА. О данном режиме сигнализирует светоди-Од HL1, который неравномерно мигает (с интервалом в 3 с). После пуска электромотора кнопкой SB1 светоди-од гаснет Изменение К3 можно производить только при включенном электромоторе. Все нажатия кнопок SB2 и SB3 подтверждаются миганием светодиода HL1. Если во время регулировки оборотов достигнут верхний либо нижний предел, светодиод HL1 перестает мигать, сигнализируя о том, что регулятором достигнут предел регулировок.
Устройство собрано на плате размерами 55x38 мм (рис.3). На одном ее конце сверлят три отверстия, в которые впаивают выводы шлейфа питания электромотора, длина которого может быть 0,5… 1 м. На корпусе электромотора в удобном месте монтируют кнопку SB1, а также блокировочный конденсатор СЗ и импульсный диод VD1. В описываемом устройстве используется микроконтроллер PIC16F627 или PIC16F628. Без какой-либо коррекции программы возможно замена на PIC16F627A, PIC16F628A или PIC16F648A, которые в большинстве случаев стоят дешевле. Основное различие между этими тремя микроконтроллерами заключается в разном объеме памяти программ. Так, у PIC16F627/627A объем памяти программ составляет 1024 слова, у PIC16F628/628A — 2048 слова, а у PIC16F648A — 4096 слов. Кроме того, PIC16F648A имеет больший объем ОЗУ и EEPROM (по 256 байт). Саму микросхему микроконтроллера выгодно установить в плату на "панельке". Это позволяет модернизировать устройство, не прибегая к паяльнику, т.к. в любое время можно вынуть микроконтроллер и запрограммировать его обновленным программным обеспечением.
Поскольку ток потребления электромотора может быть довольно большим, транзистор VT2 желательно установить на теплоотвод размерами не менее 40x40 мм (я использовал теплоотвод от блока разверток старого телевизора). Транзистор VT2 подбирается по мощности используемого мотора, например, КТ817 имеет рассеваемую мощность с теплоот-водом 20 Вт, а КТ819 — 60 Вт [1, 2]. В моем устройстве работает электромотор типа ДПМ-25-03.
В некоторых случаях необходимо, чтобы электродрель плавно набирала обороты при пуске (например, при сверлении отверстий в платах без кернения). Для таких случаев разработан второй вариант программы (карта прошивки — в табл.3).

В электронном виде таблицы можно найти по адресу http //radio-mir.com

ТУТ можно скачать прошивку. А тут печатку.

1. Полупроводниковые приемно-усилительные устройства (Р.М.Терещук и др.). — К., 1987.
2. http://www.microcontrollers.narod.ru



   
delta24 # 1
 
 
Прошивку и печатку изменили всё работает гуд.


   
Romma # 2
 
 
Перезалейте пожалуста схему регулятора или скажите номинал диода(стабилитрона).заранее сенкс


   
Gipsy # 3
 
 
Сдается мне там не стабилитрон а просто диод, по типу как на обмотках реле вешают


   
Gipsy # 4
 
 
"…Диод VD1 гасит токи самоиндукции, которые появляются в цепи питания электромотора при работе...."
"…На корпусе электромотора в удобном месте монтируют кнопку SB1, а также блокировочный конденсатор СЗ и импульсный диод VD1. …"

Ставь 1N4001 и не заморачивайся.



   
alexwolf # 5
 
 
..... а прошивки , что бы медленно дрель стартовала нет…? вроде здесь видел..???!!!


   
alexwolf # 6
 
 
здесь же были две прошивки ..одна -движок сразу стартовал.., другая он медленно стартовал… куда делись..??? МОЖЕТ У кого есть..???!!! БРОСЬТЕ !!!!очень надо !!!!


   
alexwolf # 7
 
 
а что за стабилитрон (VD 2) стоит ? мне бы маркировку его …


   
Nikolai4 # 8
 
 
посмотри, в схеме он чуть выше написан


   
vocha # 9
 
 
У кого есть прошивка контроллера с плавным пуском двигателя ,отправте мне на почту пожалуйста.Заранее благодарен.


   
Dormidon # 10
 
 
Пожалуйста, мне тоже нужна прошивочка с плавным стартом, плиз, ктонить, киньте на почту или ссылочку дайте.


   
sergei_sitnik # 11
 
 
Всем привет! Слушайте кому нужны прошивки и другая инфа по этому девайсу пишите на
sit_kov@mail.ru

Мои прошивки точно рабочие я сам такой дрелью пользуюсь уже около двух лет есть и универсальная схема как с плавным так и быстрым стартом в добавок позволяет программировать уровни запуска (верхний и нижний предел) .Вышлю совершенно бесплатно.


   
Dormidon # 12
 
 
Исправьте пожалуйста печатку, так которая скачивается у вас по ссылке, там на 7805 минусовое питание не подходит.
sergei_sitnik
Спасибо за прошивку.


   
labutin1983 # 13
 
 
Добрый день поделитесь пожалуйста прошивкой на PIC16f628 с плавным запуском дрели и без в формате HEX


   
t56 # 14
 
 
Здравствуйте. Будьте любезны отправить прошивку с задержкой.
Почта - t56@inbox.ru


   
Libra74 # 15
 
 
буду благодарен если кто скинет прошивку для медленного старта на почту leon741@rambler.ru


Обновления

Сообщения ФорумаОтветов
3D Модели для Авто0
Бакометр 2335
Touch Start-Stop Engine.587
Кодграберр17
Исправляем AVR фьюзы при помощ …109
Бакометр - измеритель остатка…4
IR конструктор на PIC12F62977
Универсальное зарядное устройство103
бaкoмeтр1974
Двунаправленный автомобильный…2
Программатор GENIUS G8401
Светодиодный тахометр34
Индикаторы ГРИ ИН1 - ИН141
Multiprog1
Управляющая программа LED CUB959
Универсальное зарядное устройство9
Изготовлю печатные платы29
Простой автоматический выключа…25