Феерическая расстановка точек над HDD motors. Часть 2

Всем привет! Продолжаем расставлять точки над двигателями HDD. В этой статье переходим от теории к практике.

Введение.

Устройство я разбил на две части: силовую (с ключами и драйверами) и систему управления (с контроллером и его обвязкой). Так было удобнее в отладке. И на будущее, чтоб реализовать к примеру векторное управление каким либо двигателем достаточно будет поменять систему управления, а силовая часть из 6ти ключей останется той же.

Для начала рассмотрим систему управления т.к. она в нашем случае останется практически неизменной.

Система управления.



Работаем с mega8, тикающим от кварца 16 МГц. Можно заменить его на mega8L с макс. частотой 8 МГц, соответственно всё станет ЗАМЕТНО медленнее, поэтому я не рекомендую.
В обвязке – кнопки «Быстрее» «Медленнее», делители для о/с, подключенные к мультиплексору АЦП, который использует компаратор (неинвертирующий вход). На инвертирующий вход подаём напряжение равное половине питания (для способов 2,3,4 из предыдущей части). Нулевой проводник не нужен.
Для способа №1 прийдётся сделать маленькую доработку. Сразу оговорюсь, что способ №1 я испытывал бегло на макетке и без о/с поэтому могут возникнуть некоторые проблемы. Если кто-то решится реализовать этот способ (он минимален по аппаратным затратам) – буду только рад, доведём его до конца.
Итак в способе №1 нам необходимо компаратором фиксировать переход напряжения через 0. Поэтому к неинвертирующему входу (AIN1) подключаем через диод нулевой провод двигателя, а резистором R2 создаём минимальное напряжение смещения. Также необходимо поставить диоды на входы компаратора (PC0/PC1/PC2).

Силовая часть.

К способу №1.



Здесь использовались транзисторы IRF9630 – 200В/6.5А/0.8 ом и драйвер IR4426. Резисторы R1, R2, R3 нужны для исключения наводок ходя в даташит’е обозначены только резисторы R4, R5, R6. По поводу выбора и использования силовых транзисторов рекомендую хорошую статью мистера DI HALT’a.
Конденсаторы в цепи питания нужны обязательно и чем больше ёмкость – тем лучше.
В момент пуска двигателя когда вал неподвижен или обороты его очень малы противоЭДС также мала или её вовсе нет. Поэтому ток в такие моменты будет равен I=Uпит/Rцепи. Где Rцепи – сопротивление двух параллельно соединённых (транзистора+фазы). И того имеем Rцепи ~ 0.9 ома в случае использования способа №1. Соответственно ток в процессе пуска будет большим и для БП это будет означать КЗ, т.е. БП будет давать просадку напряжения. Когда появятся обороты – ток уменьшится.
Напомню, что в идеальном случае когда двигатель вращается с номинальной скоростью и нагрузки на валу нет – ток через двигатель равен 0.
Я использовал ёмкость из старенькой материнской платы 1200мкФ*16В.

Подключаем порт D к драйверам в порядке как на рис.: PD0 -> U4, PD1 -> U1:B, PD2 -> U1:A. О/с подключаем в порядке : фаза А — PC0, фаза В — PC1, фаза С — PC2. Конечно можно подключить всё по собственному желанию и сделать изменения в коде.

К способу №№ 2-4.



Всё то же что и в предыдущем варианте, только добавились транзисторы нижнего плеча IRF630 и использовались драйверы IR4428 у которых, один из выходов инверсный. Обратите внимание на то, как пронумерованы транзисторы. Так принято делать в электроприводе поэтому традицию сохраняем.

Будьте внимательны в подключении о/с : провод от фазы А должен в итоге прийти в PC2, фаза В -> PC1, С -> PC0. Сами драйверы подключаются к порту D в простом порядке: PD0 -> IN A (U1), PD1 -> IN B (U1), PD2 -> IN A (U2) и т.д. (сверху вниз). Резистор R2 настраиваем на напряжение равное половине цепи постоянного тока ключей + учитываем делитель. К примеру: питаем ключи 12 вольтами. После делителя имеем 6 В. Половина питания = 6/2=3 В. Делитель нужно пересчитать если питаете ключи напряжением больше 12 В или убрать вообще если напряжение питания ключей не больше 9В.

О питании.

Пробовал включать устройство от БП 5В/1.2А. Двигатель вращался, транзисторы открывались однако не в ключевом режиме т.к. для их открытия нужно более высокое напряжение. В итоге ключи ужасно грелись.
Сейчас запускаю привод от БП 12В/1А — ключи холодные. Ток потребления – не больше 0.5 А.

Программная часть.

бОльшая часть кода меняться не будет поэтому, сначала привожу полный исходник, а затем — изменения

Способ 1.


#include <avr/io.h>			
#include <avr/interrupt.h>	

unsigned char count=0,counter=0,flag=0xff;
unsigned int vr=500;               //переменная скорость

ISR(ANA_COMP_vect)
{
TCNT1=65534-(vr>>1);            //задержка на включение ключей
}
/////////////////////////
ISR(TIMER1_OVF_vect)		//прерывания от таймера 1
{
switch(count)			//включаем нужную комбинацию ключей
	{
	case 0: 	
		PORTD=0b00000011; count+=1; ADMUX=0b00000000; break;  
	case 1:
		PORTD=0b00000110; count+=1; ADMUX=0b00000010; break; 
	case 2:	
		PORTD=0b00000101; count=0;  ADMUX=0b00000001; break;
	}
	TCNT1=65534-vr;			
}
ISR(TIMER2_OVF_vect)
{
	counter+=1;
	if(counter==20)       //исключаем дребезг кнопки
	{flag=0xff;
	counter=0;
	TIMSK&=~(1<<TOIE2);
	}
}
//////////////////////////////////
int main(void)
{
cli();
DDRC = 0x00;		// настройка порта C на вход
DDRB = 0x00;		// В на вход
DDRD = 0xff;
PORTB= 0xff;

TCCR1B= 0b00000100;	//clock/64  предделитель таймера 1
TIMSK=(1<<TOIE1);	//разрешение прерываний от таймера 1
TCCR2=0b00000111;	//clock/1024  предделитель таймера 2

TCNT1=65534-vr;			
SFIOR|=1<<ACME;		//MUX ON
ACSR=0b00001000;	//ANA COMP On \прерывания при любом изменении входов

sei();					

while(1)			
{
if(flag){
if(!(PINB&0b00000010)) 		//замедление 
	{
	if(vr<=65330) {vr+=10;	//ограничение мин. скорости
				  }
	else vr=65534;
	TCNT2=0x00;		//исключаем дребезг
	TIMSK|=(1<<TOIE2);
	flag=0;
	}
if(!(PINB&0b00000100))		//ускорение 
	{
 	if(vr>=11) 	  {vr-=10;//ограничение макс. скорости
				   }
	else vr=5;		
	TCNT2=0x00;		//исключаем дребезг
	TIMSK|=(1<<TOIE2);
	flag=0;
	}
		   	}	//конец FLAG==true 

}
/////////////////////////////
}//конец main


Способ 1(2) на железе с 6ю ключами.


ISR(ANA_COMP_vect)
{
TCNT1=65534-(vr>>1);
}
/////////////////////////
ISR(TIMER1_OVF_vect)		//прерывания от таймера
{
switch(count)		//включаем нужную комбинацию ключей
	{
	case 0: 	
		PORTD=0b00110000; count+=1; ADMUX=0b00000010; break;  
	case 1:
		PORTD=0b00001100; count+=1; ADMUX=0b00000000; break; 
	case 2:	
		PORTD=0b00000011; count=0;  ADMUX=0b00000001; break;
	}
	TCNT1=65534-vr;			
}


Способ 3 модифицированный (рекомендую!).

Представляет из себя смесь 2ого и 3его способов управления. Действие каждого базового вектора разбито на 3 периода. В течении 1ого периода – работают 3 ключа, в течении 2ого и 3его периодов одна из двух фаз одного и того же плеча отключается и измеряется пЭДС.


#include <avr/io.h>			
#include <avr/interrupt.h>	

unsigned char count=0,counter=0,flag=0xff,vector=0,tmp=0;
unsigned int vr=500;

ISR(ANA_COMP_vect)
{
TCNT1=65534-(vr*3);
vector=0;
}
/////////////////////////
ISR(TIMER1_OVF_vect)		//прерывания от таймера 1
{
switch(count)			//включаем нужную комбинацию ключей
	{
	case 0: 
		switch(vector){
		case 0: ACSR&=~(1<<ACIE);	PORTD=0b00100011; vector+=1;	 break;
		case 1: ADMUX=0b00000001;   PORTD=0b00000011; ACSR|=1<<ACIE; vector+=1;	break;
		case 2: vector=0; count+=1; break;
						} break;
	case 1:
		switch(vector){
		case 0: ACSR&=~(1<<ACIE);   PORTD=0b00110001; vector+=1;	 break;
		case 1:	ADMUX=0b00000010;   PORTD=0b00110000; ACSR|=1<<ACIE; vector+=1;	break;
		case 2: vector=0; count+=1; break;
						} break;
	case 2:
		switch(vector){
		case 0: ACSR&=~(1<<ACIE);   PORTD=0b00111000; vector+=1;	 break;
		case 1: ADMUX=0b00000010;   PORTD=0b00110000; ACSR|=1<<ACIE; vector+=1;	break;	
		case 2: vector=0; count+=1; break;
		 				} break;
	case 3:
		switch(vector){
		case 0: ACSR&=~(1<<ACIE);   PORTD=0b00011100; vector+=1;	 break;
		case 1: ADMUX=0b00000000;   PORTD=0b00001100; ACSR|=1<<ACIE; vector+=1;	break;
		case 2: vector=0; count+=1; break;
						} break;
	case 4:
		switch(vector){
		case 0: ACSR&=~(1<<ACIE);   PORTD=0b00001110; vector+=1;	 break;
		case 1: ADMUX=0b00000000;   PORTD=0b00001100; ACSR|=1<<ACIE; vector+=1;	break;
		case 2: vector=0; count+=1; break;
						} break;
	case 5:	
		switch(vector){
		case 0: ACSR&=~(1<<ACIE);   PORTD=0b00000111; vector+=1;	 break;
		case 1: ADMUX=0b00000001;   PORTD=0b00000011; ACSR|=1<<ACIE; vector+=1;	break;
		case 2: vector=0; count=0;  break;
						} break;
	}
	TCNT1=65534-vr;			
}
////////////////////... ДОБАВЛЯЕМ В ОБРАБОТЧИКИ КНОПОК по строчке
	if(vr<=65330) {vr+=10;
				   tmp-=1;
				   if(tmp==40) ACSR|=1<<ACD;
				  }
////...	
 	if(vr>=11) 	  {vr-=10;			//ускорение  
				   tmp+=1;
				   if(tmp==40) ACSR&=~(1<<ACD);
				   }
////...


Результаты.

Максимальная скорость вращения двигателя для разных жёстких дисков колеблется и может доходить до 15000 об/мин, т.е. реально сфорсировать мотор и добиться скорости 20000 и больше об/мин.
Максимальной скорости мне удалось добиться используя 3ий модифицированный способ (рекомендованный мной). Она примерно в 1.5 раза выше, чем скорость при способе №1. И это единственный из проверяемых мою способов, при котором двигатель стабилен при набросе момента на вал вплоть до полной остановки, т.е. из синхронизма он не выпадает.

Ниже фото того, что у меня получилось. (сорри, хорошей камеры дома нет)


По поводу пуска

Как уже говорилось выше, в процессе пуска пЭДС очень мала и в апноутах присутствует термин “forced start” т.е. пуск без о/с. Из других вариантов – использование, к примеру, FOC управления. В остальном у меня есть только догадки, их нужно проверять

p.c. Многие вопросы электропривода остались незатронутыми и сами готовые проекты можно дорабатывать и дорабатывать. Это сделано намеренно т.к. при написании статьи ставил задачу создать более менее понятный обзор и показать готовые решения для людей, мало знакомых с электромеханикой. Если кто-то решит продолжить работу в этом направлении – буду рад помочь!

В конце статьи схемы, готовые проекты в AVR Studio и наброски печатных плат в Sprint'е.

  • +22
  • 14 августа 2011, 18:58
  • Nothing
  • 1
Файлы в топике: Файлы.zip

Комментарии (69)

RSS свернуть / развернуть
а как тут плюсик ставить? :D
0
а как тут плюсик ставить? :D Сорри нашел
0
Многие вопросы электропривода остались незатронутыми
Надеюсь, про них ты еще напишешь? Тема довольно любопытная, а Di, хоть и сам приводчик, статьями по ней не балует.
0
  • avatar
  • Vga
  • 14 августа 2011, 20:48
Да хреновый из меня приводчик тэп и суэп я вьебал чуть больше чем целиком. Так что знаю материал на уровне среднего студента те никак :(
0
В прочем по электромашинам могу толкнуть мануалину по механическим и нагрузочным характеристикам разных типов движков. Немного по регулировке и работе в разных режимах. Тк эт я еще с теха всосал железно и основательно ну и на практике нарулился
+4
Будет неплохо))
0
Ну а в целом, толку от этих движков?
0
Толк в том, что все brushless двигатели работают по такой схеме, не только от HDD.
0
ога, и данный сабж уже давным- давно разжеван у моделистов, но всеравно релизеру плюс за старания
0
Наверное не стоит вообще статьи писать?.. Оно же все в книгах и патентах 50 лет как описано :-)
0
не стоит придиратся к моему имху. безусловно, видя толпы (? школоты) вопрошающей маны к тому или иному девайсу на русском — польза от статей есть
0
а дш на русском есть?
0
а фаза «В» точно должна идти к гейту Q5 в способе 2-4?
0
Видимо ошибка.
0
Я или туплю или на схеме обмотка B не туда подключена
0
я буду обновлять комментарии перед отправкой. я буду обновлять комментарии перед отправкой. я буду обновлять комментарии перед отправкой. я буду обновлять комментарии перед отправкой. я буду обновлять комментарии перед отправкой.
0
тут не заминусуют. тут не заминусуют. тут не заминусуют. тут не заминусуют. тут не заминусуют. тут не заминусуют. тут не заминусуют. тут не заминусуют. тут не заминусуют. тут не заминусуют. тут не заминусуют.
+4
Я даже не знаю, плюсануть или минусануть)
+1
незнаю, другим нравятся.
0
Мне не нравится, но с другой стороны и правда, не заминусуют. Придется воздержаться)
0
Да, ошибка. Исправлю
0
можно эту фразу разжевать:
«Резистор R2 настраиваем на напряжение равное половине цепи постоянного тока ключей + учитываем делитель. К примеру: питаем ключи 12 вольтами. После делителя имеем 6 В. Половина питания = 6/2=3 В.» Не понял… где там делитель и почему 6/2?
0
К примеру ключи питаем напряжением 9В. В момент когда работают две фазы напряжение между нулевой точкой и выходом 3ей фазы будет равно половине питания т.е. 9/2=4.5 В. Скажем, это будет наша нулевая ось. Когда отключенная 3я фаза будет проходить через магнит напряжение будет переваливаться через нашу нулевую ось (не важно в какую сторону уменьшения/увеличения). Этот момент фиксируем

Сначала я подключил фазы напрямую без делителя, питание ключей было =9В. Т.е. R2 установил на уровне 9/2=4,5 В (нулевая ось).Всё было отлично! Потом подал на ключи 12В и выпалил порт контроллера. Поэтому ставьте делитель

расчёт делителя: подаём на ключи 12 В, нулевая ось на уровне 12/2=6В. Делим это напряжение на 2(как в примере) и получаем 3В.
0
И ещё совет: хорошо было бы сигнал о/c фильтровать т.к. наводки ощущаются довольно хорошо.

и p.s. Да, на форумах моделистов эти темы есть, но я так и не нашёл подробного описания. А выискивать нужный пост с пояснением среди десятков сообщений типа «Иди почитай апноут! Посмотри сайт того-то немца\китайца ...» не приятно. + мне очень нравится формат easyelectronics!

На счёт продолжения — у меня сейчас другие идеи, если меня с этими идеями обломают, то вернусь к управлению движками
0
Насчет воды в топиках на форумах авиамоделистов — в точку. Надеюсь, у тебя найдется время вернуться к этой теме и раскрыть её в управлении мощными bldc без общей точки.
0
Наверное надо как нибудь собраться да сделать тупой трехфазный мост (хотя бы на двух L293) и попробовать сварганить табличный управляемый трехфазный синус, да повертеть движком от винчестера, потестить плавный пуск и прочие фенечки.
0
М-м-м… Не выйдет. Синусоида и двигатель BLDC никак не идут рука об руку. Совсем. Для плавного пуска и высокого КПД надо другие вещи развивать: применять ключи с низкими сопротивлениями, богатый на ШИМы МК, доводить до совершенства цепи и алгоритмы работы обратной связи (т.к. в случае с BLDC от HDD датчиков положения нет).
0
Ну как это не выйдет. Обычный трехфазный синхрон на синусе живет и здравствует. И мощные промышленные привода тоже его кормят синусом. Да родных датчиков нет, но можно поставить внешние.
0
Трехфазный синхронник и BLDC — разные вещи. BLDC может и будет крутиться от трёх синусов, но вращение будет неэффективным. Но я это не проверял на практике (и наверное не проверю), поэтому дальше спорить не буду)
0
Просто мы в универе делали тот же самый BLDC но только киловатт так на 10. Так вот на вход была постоянка, которая инвертировалась в трехфазное напряжение. Причем управление им было как движком постоянного тока — зависимость оборотов от напряжения и тыды.
Делали из трехфазного синхронника. Кормили синусом.
0
10 кВт нихренашечки себе хрена для BLDC. А фотки-доки остались посмотреть бы на шкафчик для двигателя
0
Да шкафчик там не сильно то и большой. Примерно с полтора ящика пива
0
я думаю будет греться как паровоз и КПД низкий будет.
Можно попробовать оставить верхнюю часть синусоиды, может и будет толк)
0
Я тут согласен с DIHALT'ом. Для того чтобы получить синусоидальное распределение обмотки машин укладывают особым образом, что в случае HDD просто лишнее(это всётаки не промышленность). Но это не значит что синусоида принесёт какой-то вред!

как там обмотки уложены можно элементарно проверить — раскрутите мотор до номинальной скорости и посмотрите осциллографом форму сигнала на выходе между фазой и нулём
0
теперь разгони его до 50к оборотов хотя бы и запиши видео, только спрячься подальше

у меня есть шпиндель на 50к с частотником
0
я свой разгонял до 75000
3500 * 20…
но у мя и мотор…
при 12 вольтах и полной нагрузке по крутящему моменту выдаёт 400 ватт и 22000 оборотов :))
без нагрузки в два раза больше

моторам от винтов надо будет питалово в 40...80 вольт не меньше :)
и тут начнутся приколы с дедтаймами, с наводками, с индуктивностями дорожек до транзюков и т.д. и т.п.
и начнутся поиски… скоростных транзюков… скоростных диодов… делителей для сенсинга и т.д. :)))
вот интересен другой факт
в китайских регуляторах нет подстроечника
а питаться могут например от 7 вольт до 24-х… запросто… и работают стабильно и уверенно…

чего я не заметил в этом регуляторе так это метод старта и метод ограничения пускового току…
чтоб делать ШИМ нижними клучами кетайсы красиво придумали — между МК и нижним входом драйверов поставили по пол килоома резюки и ШИМвыходом через транзистор и 3 диода садят все три ноги МК на землю в итоге МК не сгорает — 500 омм спасают, и ШИМ заполнение нижних транзюков есть :)

а старт… вот… это проблема… на моторах от винтов это не заметиш… а вот если бы мой 500 ваттный сюда подключить то взрыв был бы моментален и неизбежен… а со стартом и у мя проблемы
низнаю как пральна организовать старт… а у кетайсов снова таки с любым мотором нет никаких проблем с этим…
0
А видео?
0
www.youtube.com/watch?v=CC4q4aKbth0

мой контроллер от(или для?!) электромопеда крутит моторчик винта от 24-х вольт
0
Повторил — полный 3Ф мост, 12В, сельсин ДФС-32-1В(или 220В синхронник) — крутятся, всё ОК.
0
  • avatar
  • qic
  • 27 августа 2011, 01:46
(я не знаю как в апноуте атмела) А что если все 6 выходов (которые у меня на оптопары идут) по общему проводу оптопар шиммировать синусом.?
ЗЫ Я бы проверил, только хз как сделать.
ЗЫЫ ШИМ до 5кГц пойдет?
0
  • avatar
  • qic
  • 27 августа 2011, 02:32
На счёт ШИМ всё зависит от скорости которую хотите развить. При ШИМ 5кГц можно раскрутить двигатель до 2500 об\мин (две пары полюсов
0
не дописал верхнее сообщение: две пары полюсов и 10 переключений в каждом из 6ти секторов. Большие пром. привода которые регулируют частоту напряжения 0-50 Гц т.е. не выше 3000 об\мин, работают именно с ШИМ 2-10 кГц
0
Опорный резистор компаратора заменил на среднюю точку от 3ф фаз через резистор каждую. Стало работать увереннее. Надо попробовать поставить внешний компаратор на каждую фазу, с ФНЧ.
0
  • avatar
  • qic
  • 28 августа 2011, 16:19
Что значит «увереннее работать»? Плз, попробуйте поменять местами крайние провода которые идут от фаз А и С.

Поставите фильтр — опишите как работает.

А на счёт внешних компараторов — я прикидывал, что это будет сложнее и аппаратно и в коде.
0
Ну аппаратно — один корпус например LM339, в коде никаких изменений (проверил в протеусе — вместо компараторов холлы). Как в АВР компаратор отлавливает пересечение нуля и отмечает для себя его — дискретно — также будет только снаружи. С упором на это я хочу сделать полную опторазвязку, но похоже нет необходимости если применить ir2110 и забить на «вздруг взорвется» и просто сделать новое.
Пожалуй еще несколько изысканий и сделаю свой блекджек.
0
Фазы менять — ничего не дает.
Увереннее это — при пуске у меня ротор дрыгается на месте почуть-чуть поворачиваясь. Стартует с толкача. С виртуальной средней точкой — запуск с толкача увереннее и легче. Попробую всёже достать мотор от HDD взамен моего Г504УХЛ4.
ЗЫ А в коде выбор каналов для сравнения компаратора верный? Как-то интересно они выбираются.
0
Там была ошибка, я извиняюсь.

Каналы к противоЭДС А и С нужно было поменять местами. Уже исправил.
Я поэтому и попросил вас попробовать поменять эти провода.

А на счёт старта — контроль пЭДС включается после N-го нажатия на кнопку. (здесь в коде, после 40-го). Может вашему приводу питания не хватает на старте? Попробуйте на ключи подать вольт 9.
0
Хрень какая-то.
1) Сельсин — заводится с толкача, срывается примерно на +30 нажатии
2) Синхронник нормальный — заводится с толкача, срывается (в дрыганье) вообще на 8м тыке.
Поправил чтобы контроль пЭДС включался сразу. — никакой реакции на подключение/отключение/перефазировку обратной связи. Может быть в порядке ключей что-то не то? Но ведь крутит…
0
Наконец нашел мотор от HDD. Питание 12В. При старте также дрожит медленно проворачиваясь и греясь. Завести с толкача не удалось.
0
По нижним транзисторам перед главным импульсом выскакивает какойто огрызок — в протеусе. Это нормально?
0
Ядибил >_<. Нетуда кинул ОС.
Всебы было ничего — так с контролем пЭДС — вообще останавливается как вкопанный. И еще меня беспокоит этот импульс на нижних ключах.
0
Завелся мотор от флопа с контролем пЭДС. Больше ничто не работает.
PS Очень жалею об отсутствии возможности редакции комментариев.
0
Да, кстати тоже жалею о том, что коменты нельзя редактировать
0
На днях выпрошу у кого-то из друзей фотик или камеру и покажу что и как у меня работает
0
Заменил алгоритм переключения фаз на
A B C
+ 0 — + — 0
0 — +
— 0 +
— + 0
0 + — И это помогло! Моторы теперь крутятся быстро, но выше определенной границы уже срываются и останавливаются не обращая внимания на контроллер — недостаточно напряжение.
Контроль пересечения нуля — в мультиплексоре выбираю фазу с 0. ничего не дает — крутит также.
0
0
наконец-то снял видео
0
Спасибо! Впечатлило. Моё ниразу не так работает. Прошивка как в конце статьи в файлах «AIN(3)»?
0
  • avatar
  • qic
  • 18 сентября 2011, 21:03
Пиши мне в личку. Будем разбираться
0
А что делает команда, например ADMUX=0b00000000? Я понимаю, что это связано с АЦП, но зачем оно тут?
0
Нсколько я помню, ADMUX управляет аналоговым мультиплексором, а он общий для АЦП и компаратора. А компаратор используется для ловли back-EMF.
0
Хорошо, понял. Другой вопрос возник: каково назначение прерываний от таймера 2 в Способе №1?
0
На нем сделан антидребезг кнопки. К собственно кручению мотора не относится.
И да, я выяснил это в результате полуминутного изучения кода. Что мешало тебе сделать то же самое?
0
А почему PORTD.7 настроен на выход???
0
Друзья подскажите пожалуйста, будет ли эта схема работать на 250 оборотах? И можно ли как то ограничить количество оборотов до 500?
0
Будет. Но врядли так, как тебе надо. Так что опиши задачу и требования подробнее.
0
Для заточки штихеля, круг медленно вращается, на него наклеена наждачная бумага. Штихель с небольшим усилием опускается на поверхность…
0
Уууу… Тут уже лучше посмотреть что там у amaora в его phobia)
0
Благодарю за ссылку!
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.