MorAlex

Нужна Схема Управления Двигателем 12 Вольт С Реверсом

67 сообщений в этой теме

MorAlex    0

Спасибо всем кто откликнулся! Проблема плавности старта отошла на второй план. Хотя я попробую. В изначальной схеме и в протеусе использовалось два аккумулятора 12 вольт. На схеме видно как они соеденины чтобы получить для схемы +12, центральную точку и -12 вольт. Всё прекрасно работало когда это питалось от компьютерного блока питания. Но когда я зацепил всё это от аккумуляторов работает только одно "плечо". Т.е. вращение происходит только в одну сторону. Не могу понять почему?! Цэшка показывает честные + и -12 вольт. Почему?! Как это победить?

Гдето в сети натыкался на схему, что можно с помощью КРЕН17 получить отрицательное напряжение и избавиться от второго аккумулятора (в тайге каждый грамм на счету), но найти эту схему я не могу. Помогите пожалуйста советом кто может. Уже вот прям близка победа!

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Быстрый заказ печатных плат

Полный цикл производства PCB по низким ценам!

  • x
    мм
Заказать Получить купон на $5.00
Эсер    0

Гдето в сети натыкался на схему, что можно с помощью КРЕН17 получить отрицательное напряжение и избавиться от второго аккумулятора (в тайге каждый грамм на счету), но найти эту схему я не могу. Помогите пожалуйста советом кто может. Уже вот прям близка победа!

Не мучайся, используй что нибудь типа TDA7377 в мостовом включении http://tec.org.ru/_bd/25/2536_TDA7377-2x30W-.pdf

Как раз одной микрухи хватит сразу на два двигателя. И только один аккумулятор нужен будет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
MorAlex    0

или так с обратной связью по току

Собственно да, но так человек разорится.

на чем ? ее цена меньше 100р

Видимо придётся воспользоваться Вашей схемой. Она и проще и видимо будет надёжней. Предыдущая схема конечно заработала и заработала как нужно, но я не могу понять почему горят транзисторы на одном плече. Одно мне не очень понятно. Ваша схема выполнена в протеусе. Что там за двигатель? Не шаговый ли?

Изменено пользователем MorAlex

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
APB    122

Может использовать готовое, выйдет дешевле. Первая ссылка в поисковике

http://www.gaw.ru/html.cgi/txt/publ/powersuply/rohm_revers.htm

Логику управления на КМОП собрать, стоит логика дёшево.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
MorAlex    0

Пересобрал заново первоначальную схему. Работает идеально! С микросхемой TDA для моего случая вообще не вариант. Пока испытываю с двигателем выпаянным из DVD-ROM`a. Всё отлично работает. Завтра попробую с реальными двигателями на головке крана. Смущает, что даже этот двигатель от сд рома высасывает аккумуляторы достаточно быстро. Но так или иначе схема заработала, ничего не греется и управляется как нужно

По питанию от аккумуляторов спишу на то, что они дохлые. Они реально еле живые. Взял только для эксперимента. От компьютерного БП всё норм.

Изменено пользователем MorAlex

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
MorAlex    0

Может использовать готовое, выйдет дешевле. Первая ссылка в поисковике

http://www.gaw.ru/ht...rohm_revers.htm

Логику управления на КМОП собрать, стоит логика дёшево.

Купил подобный драйвер двигателя. Не подойдёт. По крайней мере я не смог приспособить.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Falconist    4 299

Есть такие микросхемы, как L2722 Специализированный 1-амперный ОУ, как раз и предназначенный как для реверсирования, так и для регулировки скорости вращения мотора постоянного тока. Подробности - в даташите.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Wilter    1

Вот схема управление двигателем на 12 в с реверсом достаточно проста в изготовлении

(Примечание :резистор R 15-37Om можно исключить из схемы )схема проверенная рабочая

post-196794-0-18156700-1451049146.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Vslz    237

Сомневаюсь, что нужна такая мощность, но вот здесь есть реверсивный 4х квадрантный ШИ-регулятор для коллекторного мотора. В среднем положении как раз останов, причём, с удержанием. При торможении "накачивает" шину питания, т.е., возвращает ток в батарею. Ток мотора ограничен в любом квадранте, хоть при разгоне, хоть при торможении. Датчик тока - канал полевика. КПД зависит от конкретной реализации. Сразу говорю, схему в железе не собирал, только моделировал в LTSpice - пока не придумал, где может такое пригодиться. Результаты моделирования - весьма обнадёживают. Быстродействия компараторов более чем достаточно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Gors    0

собрал схему с первого поста , без  дроселя  и конденсаторов , не работает ,греются транзисторы , MorAlex какая схема у вас заработала ?   

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Gors    0
19 часов назад, kuzmitch сказал:

А ты еще пару деталек выкинь, может заработает :)

ну так обьяснилбы почему  оно е работает !  на 1 странице человек писал что  может и без этих деталей работать 

Изменено пользователем Gors

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Поищите схему электрокорректора фар от Волги 3110. Не помню, какой УО с мощным выходом там стоит, но 1А точно тянет. Питание однополярное, выход - мостовой. Проще не придумать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ваша публикация должна быть проверена модератором

Гость
Вы не авторизованы. Если у вас есть аккаунт, пожалуйста, войдите.
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Восстановить форматирование

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Загрузка...

  • Сообщения

    • Да цап от Мазилы "DYK DAC",  звучит очень хорошо, даже не ожидал если честно, с той акустикой что у меня сейчас с D47V3 пока сравнить по звучанию не выйдет, не тот уровень ,через недельку будет готова трех полоска от Крылова с Пирлесом 830869, купольном СЧ и Мореле ЕТ338, вот тогда будет и сравнение , но основным  цапом естественно у меня будет D47V3 ,"DYK DAC"  собрал чисто для сравнения почитав хорошие отзывы о нем, самому стало интересно.
    • Я надеюсь у Вас @ARV не пойдет кровь из глаз...   #include "main.h" char trig[4], butdown[4], //переменные для обработки нажатия на рычаг поворотника и кнопок code, old_code, //переменные кода команды prog_available=TRUE, count_right_prog, count_left_prog, prog_ini, prog_start,//переменные для режима программирования count_turn=10, count_thx, //переменные для чтения из eeprom accept_mode, accept_count, //переменные для режима подтверждения turn_count, long_ini=FALSE, //переменные для режима удлинения поворотника thx_count, thx_ini, //переменные для режима "Спасибо!" count_right, count_left; //переменные для счёта мыргов от правого и от левого поворотника int prog_available_count=0; uint8_t EEMEM turn; //переменная EEPROM для хранения количества повторений поворотника в режиме удлинения uint8_t EEMEM thx; //переменная EEPROM для хранения количества повторений аварийки в режиме "Спасибо" uint8_t get_button(void) { return PINB & ANY_K; } void press_button() //функция обработки нажатия на кнопку спасибо или включение заднего хода { if(PINB&(1<<THX_REAR)) //опрос входа от кнопки спасибо\заднего хода { if(trig[THX_REAR]==OFF) { if(butdown[THX_REAR]<LONG) { butdown[THX_REAR]++; _delay_ms(10); } else //обработка при включении заднего хода { trig[THX_REAR]=ON; PORTB|=(ON<<LEFT_OUT)|(ON<<RIGHT_OUT); } } } else { if(trig[THX_REAR]==OFF) { if(SHORT<butdown[THX_REAR])// обработка при коротком нажатии на кнопкку спасибо { trig[THX_REAR]=ON; if((PINB&(1<<LEFT_OUT))){PORTB&=~(ON<<LEFT_OUT); PORTB&=~(ON<<RIGHT_OUT);} else{PORTB|=(ON<<LEFT_OUT)|(ON<<RIGHT_OUT);} } } else { if(butdown[THX_REAR]==LONG){PORTB&=~(1<<LEFT_OUT);PORTB&=~(1<<RIGHT_OUT);} trig[THX_REAR]=OFF; butdown[THX_REAR]=OFF; } } } void Stand_by(void) //рычаг ПП выключен, огни погашены { if(old_code==0) { if((count_right==1)||(count_left==1)) { if(count_right==1) { PORTB|=(ON<<RIGHT_OUT); } if(count_left==1) { PORTB|=(ON<<LEFT_OUT); } else { if(accept_mode==0) { PORTB|=(ON<<LEFT_OUT);PORTB|=(ON<<RIGHT_OUT); } } } } else { if(old_code==6) { if(prog_ini==ON) { eeprom_write_byte(&turn, count_turn); eeprom_write_byte(&thx,count_thx); accept_mode=ON;PORTB|=(ON<<LEFT_OUT);PORTB|=(ON<<RIGHT_OUT); } } } } void Ligts_On_Right(void) //рычаг ПП включен вправо, горит правый поворотник { if(old_code==2) { if(long_ini==ON) { count_right++; } else { if(prog_available==ON) { turn_count++; } else { long_ini=ON;count_right++;PORTB|=(ON<<RIGHT_OUT); if(prog_available==TRUE) { count_right_prog++; } } } } else { if(old_code==0) { if(long_ini==ON) { count_right++; } else { if(count_right==1) { count_right=0; } if(prog_ini==ON) { if(turn_count<MAX_TURN) { turn_count++; } } else { if(prog_available==TRUE) { count_right_prog++; if(count_right_prog>3) { prog_available=FALSE; } } } } } } } void Ligts_On_Left(void) //рычаг ПП включен влево, горит левый поворотник { if(old_code==2) { if(long_ini==ON) { count_left++; }else { if(prog_ini==ON) { thx_count++; } else { long_ini=ON;PORTB|=(1<<LEFT_OUT); count_left++; if(prog_available==TRUE) { count_left_prog++; } } } } else { if(old_code==0) { if(long_ini==ON) { count_left++; } else { if(count_left==1) { count_left=0; } if(prog_ini==ON) { if(thx_count<MAX_THX) { thx_count++; } } else { if(prog_available==TRUE) { if(count_right_prog==3) { count_left_prog++; if(count_left_prog==3) { prog_ini=ON; thx_count=0; turn_count=0;prog_available=FALSE;prog_start=0; } } else { prog_available=FALSE; } } } } } } } void Lights_Pause(void) //рычаг ПП включен в какую-либо сторону, либо включена аварийка, огни погашены { if(old_code==3) { if(count_right==1) { long_ini=OFF;PORTB&=~(1<<RIGHT_OUT); } if(long_ini==ON) { if(count_right==count_turn) { long_ini=OFF;PORTB&=~(1<<RIGHT_OUT);count_right=0; } } } else { if(old_code==6) { if(count_left==1) { long_ini=OFF;PORTB&=~(1<<LEFT_OUT); } else { if(long_ini==ON) { if(count_left==count_turn) { long_ini=OFF;PORTB&=~(1<<LEFT_OUT);count_left=0; } } else { if(prog_ini==ON) { if(prog_start==ON) { accept_mode=ON; } } } } } else { if(old_code==7) { if(thx_ini) { if(thx_count==count_thx) { thx_count=0;thx_ini=OFF;PORTB&=~(1<<LEFT_OUT);PORTB&=~(1<<RIGHT_OUT); } } else { if(accept_mode==ON) { if(accept_count==3) { accept_mode=OFF;PORTB&=~(1<<LEFT_OUT);PORTB&=~(1<<RIGHT_OUT); accept_count=0;prog_start=0; } } } } } } } void Ligts_On_All(void) //включена аварийка горит оба поворотника { if(old_code==3) { long_ini=ON;PORTB&=~(1<<RIGHT_OUT);count_right=0; } if(old_code==6) { long_ini=ON;PORTB&=~(1<<LEFT_OUT);count_left=0; } if(old_code==2) { if(thx_ini==ON) { thx_count++; } else { if(accept_mode==ON) { accept_count++; } } } if(old_code==0) { if(long_ini==ON) { long_ini=OFF;PORTB&=~(1<<LEFT_OUT);PORTB&=~(1<<RIGHT_OUT); } } if(thx_ini==ON) { thx_count++; } else { if(accept_mode==ON) { accept_count++; } } } void get_command(char mode) { if(!((old_code)==mode)) { switch(mode) { case 0:{Lights_Pause(); break;} //рычаг ПП включен в какую-либо сторону, либо включена аварийка, огни погашены case 2:{Stand_by(); break;} //рычаг ПП выключен, огни погашены case 3:{Ligts_On_Right(); break;} //рычаг ПП включен вправо, горит правый поворотник case 6:{Ligts_On_Left(); break;} //рычаг ПП включен влево, горит левый поворотник case 7:{Ligts_On_All(); break;} //включена аварийка горит оба поворотника break; } old_code=mode; } } void pol_ports(void) //опрос портов { code=get_button(); _delay_ms(10); if(code!=get_button()){code=10;} } ISR(TIM0_OVF_vect) { if(prog_available==TRUE){prog_available_count++;if(prog_available_count>1220){PORTB|=(ON<<RIGHT_OUT);prog_available=FALSE;}} //отключаем возможность //входа в режим программирования после истечения 10 секунд с момента включения устройства } int main(void) { port_ini(); timer_ini(); sei(); while(1) { pol_ports(); get_command(code); //вызов команды press_button(); //опрос кнопки спасибо/ЗХ } } Вот такую схемку накидал для проверки.
    • Спасибо за ответы. А увеличить частоту модуляции возможно?
    • Я уже начинаю привыкать. И под анод кинескопа попадал, и под анод рентгеновской трубки (ладно, хоть саму трубку отцепил и убрал в сторону). На морде лица что-ли у меня какой-то тайный знак, что меня постоянно суют в какую-то высоковольтно-радиоактивно-облучающую жопу, не совместимую с жизнью. В судьбу не верю, а вот судьба в меня верит, походу.
    • Может у него дежурка никакая ?