воскресенье, 26 февраля 2012 г.

Фотодатчик своими руками.

Инфракрасные фотодиоды используемые в телевизорах (или каких либо других управляемых приборах) для приёма сигнала могут быть применены для множества других целей. Повысив чувствительность фотодиода усилителем можно определять степень освещённости солнцем (или каким либо другим источником света в спектре которого присутствует инфракрасный свет). Для повышения чувствительности фотодиода можно применить простую схему доступную для сборки начинающему радиолюбителю. Рассмотрим эту схему:
Рисунок 1 - Фотодатчик

Транзистор VT1 усиливает ток фотодиода VD1, транзистор VT2 усиливает ток транзистора VT1.
Всё просто! Фотодиод можно достать из фотоприемника из телевизора. Фотоприемник может выглядеть так:

Остальные детали несложно достать, транзисторы КТ315 широко использовались (и используются) в разной аппаратуре. Рассмотрим детали:
Катод у фотодиода располагается справа (если фотодиод лежит как на фотографии выше), на схеме (рисунок 1) катод соединён с коллекторами транзисторов VT1 и VT2 и соединён с резистором R1. Электродвигатель пригодиться для экспериментов с фотодатчиком. Для упрощения сборки на выводы транзисторов можно нацепить куски изолятора от проводов с разными цветами, например:
зелёный - база, 
белый -коллектор,
без изолятора - эмиттер.
Далее рассмотрим сборку:
Чёрными линиями показано как соединять выводы. Моторчик служит для визуального определения работоспособности схемы (вместо него можно поставить другой подходящий прибор например миллиамперметр (это даже лучше)).
Рассмотрим собранный фотодатчик:
Такой датчик можно использовать для построения beam роботов, программируемых роботов, игрушек и много чего ещё. Рассмотрим схему с электродвигателем и батарейками:
Рисунок 2 - Схема с электродвигателем и батарейками

Электродвигатель для транзистора представляет активно-индуктивную нагрузку так как обмотки двигателя имеют индуктивность поэтому для защиты транзистора VT2 желательно поставить параллельно ему обратный диод и/или конденсатор параллельно двигателю, но схема работает и без этого.  
Схема приведенная ниже иллюстрирует как данный фотодатчик можно использовать для включения освещения в темноте и включения электродвигателя при свете от солнца или какого либо другого источника инфракрасного излучения (пульт д. у., свеча, лампа и т. д. (тепло человеческого тела и другие подобно холодные предметы не подходят из за малой длинны волны)):
Рисунок 3 - Схема включения светодиода в темноте и включения электродвигателя при свете


Данный фотодатчик можно использовать в системах дистанционного управления с нестандартными протоколами передачи данных или для управления электромагнитными реле коммутирующими мощную нагрузку и много для чего ещё.

суббота, 18 февраля 2012 г.

Управление электродвигателем 2. Простой робот с одним мотором.

Мостовая схема на транзисторах КТ940А, рассмотренная в статьях управление электродвигателем микроконтроллером ATmega8 и доработка схемы управления электродвигателем имеет недостатки: во первых это транзисторы КТ940А, максимальный ток этих транзисторов 100мА поэтому двигатель  должен потреблять не больше 100мА. Также, в мостовых схемах с активно-индуктивной нагрузкой необходимы обратные диоды, хотя, рассмотренная ранее схема, работала и без них (возможно из за достаточно большого напряжения Uкэ=300В для КТ940А). На рисунке 1 приведена другая, проверенная, схема управления электродвигателем:

Рисунок 1 - Схема управления электродвигателем

Транзисторы КТ961А рассчитаны на ток до 1.5 А, КТ837В на ток до 7.5 А, обратные диоды КД105А рассчитаны на ток до 0.3 А (можно поставить диоды рассчитанные на больший ток).
В схеме, на рисунке 1, отсутствуют оптопары и вообще гальваническая развязка силовой части схемы от управляющей (в отличии от предыдущей схемы) это значит что микроконтроллер будет хуже защищен от перегрузок по току и напряжению, но если используется маломощный электродвигатель то это не так важно, к том уже в схеме с полной гальванической развязкой необходимо использовать два источника питания (для силовой части и для управляющей) а это не всегда удобно, в схеме же на рисунке 1 можно использовать один источник питания. Оптопары в предыдущей схеме были необходимы для управления мостом с транзисторами 
n-p-n типа в схеме же на рисунке 1 верхние транзисторы моста n-p-n типа а нижние p-n-p типа, это позволяет обойтись без подходящих оптопар которых иногда бывает трудно достать в местных магазинах радиодеталей. Детали для прверки схемы на рисунке 1, кроме микроконтроллера и электромотора, были "изъяты" из старых "отслуживших" телевизоров. Транзисторы управляющие мостом - КТ209Е их можно отличить по закрашенному ромбику - ♦ на корпусе и букве е справа от него (от ромбика). Ротор двигателя будет вращаться в ту или другую сторону если на выводах микроконтроллера 2 и 3 будут разные уровни напряжения, если они будут одинаковы то ротор вращаться не будет. Если требуется чтобы ротор не вращался то лучше задавать на этих выводах высокий уровень напряжения т.е. лог. 1 т.к. при этом транзисторы VT1 и VT5 закрыты следовательно ток через них почти не проходи и следовательно энергия источника питания не расходуется зря что особенно актуально при питании схемы от батареек. Для проверки схемы была написана простая программа на языке C++:

   #include <avr/io.h>
   #include <avr/delay.h>
   #define F_CPU 8000000UL  // 8 MHz

   int main(void)            
   {
DDRD = 0xff;            // выводы порта D сконфигурировать как выходы

while (1)        
{
DDRD = 0x02;
_delay_ms(250);
DDRD = 0x00;
_delay_ms(250);
 DDRD = 0x01;
_delay_ms(250);
DDRD = 0x00;
_delay_ms(250);
}

 }    

Этот код был преобразован в hex файл программой WinAVR. hex файл был записан в микроконтроллер программой PonyProg2000. К редуктору, от игрушки, приделаны колесики, сверху к нему приделаны батарейки и собранная схема управления двигателем (см. рисунок 1). Как все это двигалось можно посмотреть на видео:


У данного робота мало вариантов того что он может делать, и воспринимать информацию из окружающего мира он не может, но его работоспособность свидетельствует о работоспособности схемы управления двигателем (см. рисунок 1). Для управления одним двигателем достаточно двух выводов микроконтроллера. К микроконтроллеру можно подключить несколько таких схем и датчики и сделать более сложного робота. Мостовой схеме также может быть найдено множество применений.

воскресенье, 5 февраля 2012 г.

Особенности коммутации двигателя триггером на транзисторах.

В статье реверс маломощного электродвигателя постоянного тока приводился способ коммутации электродвигателя триггером на транзисторах. Такой способ возможно и не очень удачный но он имеет некоторые особенности. Наиболее интересной особенностью является то что двигатель сам осуществляет переключение триггера в другое состояние тогда когда на его (двигателя) ротор действует сила направленная противоположно той которая создает вращение ротора. Но это не единственная особенность данного способа коммутации двигателя. Рассмотрим схему:

Рисунок 1 - Подключение электродвигателя к триггеру

  Схема симметрична. Сопротивление резистора R1 равно сопротивлению резистора R4, сопротивление резистора R2 равно сопротивлению резистора R3. Если это выполняется с достаточной точностью, параметры транзисторов одинаковы и сопротивления соединительных проводов и выводов элементов в правой и левой части схемы тоже одинаковы, с достаточной точностью, то двигатель работать не будет, при подаче питания на схему, пока его ротор не будет приведен во вращение внешними силами. Возможно триггер имеет какое то третье неопределённое состояние при котором либо оба транзистора закрыты, либо открыты, либо (что совсем маловероятно) в активном состоянии. Как бы там ни было, но двигатель не работает сразу после подачи питания:


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