24 февраля 2022 года в 5 утра, без объявления войны, россия напала на Украину.

Они пришли "освобождать народ от нацистов и националистов".
С этого момента наша жизнь изменилась на "до" и "после".
Нас освобождают от наших домов, от наших любимых, от наших родителей и от наших детей....
Тут я не буду никого агитировать или переубеждать, разумный человек найдёт всю информацию
в интернете, а для зомби никакие доводы и факты не послужат аргументом.

Я не умею много писать, да и без мата тут сложно что-то написать.
Поэтому выражу все мои чувства одним фото.

«Спасибо дедушка путин за счастливое детство и мое освобождение». ©

Дополню словами уважаемого человека, широко известного в узких кругах:
тут путин не виноват, не он нажал на кнопку сброса,
- виноват пилот, который нажал на кнопку сброса, мог промахнуться. виноваты жена/мать/брат/друг пилота, которые не позвонили ему, и не сказали "нет войне",
- виноват тот, кто отдал приказ, и виноваты его жена/мать/брат/друг,
- виноват тот, кто цеплял бомбу, потому что он мог её обезвредить, "ну бывает, не сработала",
- виноват кладовщик, виноват водитель, который перевозил эту бомбу. виноваты жена...и т.д., потому что не позвонили и не сказали "нет войне, не вези бомбы",
- виноваты все журналисты оркостана, потому что они врут,
- виноваты недограждане, потому что не сказали журналистам "не врите",
- виноваты все... все 160 миллионов,
- а те 2, 3, 5 тысяч, которые вышли, и которых запаковали, это даже не десятая процента, это погрешность... случайно оказавшиеся в мордоре люди. ©

PS: За несколько часов до вторжения был атакован и взломан крупный интернет хостинг в Киеве, где и размещался мой сайт. Только 16 марта отважным админам удалось частично восстановить работу хостинга. Далеко не все сайты выжили, т.к. были повреждены даже бэкапы.
Нет, нет, я не жалуюсь, нет. В цифровом мире нет ничего ценного, материального...


Due to periodic DDoS attacks, the forum may not be available.

Регулятор оборотов двигателя постоянного тока.

Здесь только проекты на ATtiny
Post Reply
vasilievich
Пробегал мимо
Posts: 16
Joined: 09 Jun 2011 16:46
Location: Беларусь

Re: Регулятор оборотов двигателя постоянного тока.

Post by vasilievich »

Добрый день. Спасибо за Вашу отзывчивость. Хочу уточнить задачу. Ощутимого изменения в регулировке не наблюдается не в диапазоне от 4 до 10, а приблизительно от 7 до 10 (с положения переменного резистора от 3/4 и до конца, а не от 1/4 и до конца). Вы пишете, что не сильны в языке С, тогда уж что говорить обо мне. Буду вникать в представленную информацию. Транзисторы ставил BUZ102, два в параллель с развязкой резисторами по затвору. Насчет замены транзисторов была мысль, думал, что начального старта при минимальных положениях резистора не происходит именно из-за них, пробовал IRFZ3205, почему-то один вышибло при первом же включении. По току IRFZ3205 не меньше BUZ102, по напряжению управления тоже разницы нет, больше экспериментировать не стал и оставил BUZ102. Ток моторчик потребляет солидный, радиатор порядком греется, да и не зря он стоит под улиткой, работает по принципу: сам регулирую, сам себя и охлаждаю.
User avatar
hardlock
Администратор
Posts: 4003
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Регулятор оборотов двигателя постоянного тока.

Post by hardlock »

vasilievich wrote:с положения переменного резистора от 3/4 и до конца, а не от 1/4 и до конца
а резистор линейный? А то может лучше с напряжениями играться? У Вас же на выходе блока управления напряжения от 0 до 5 вольт...
vasilievich wrote:Транзисторы ставил BUZ102, два в параллель с развязкой резисторами по затвору.
тогда уж надо управлять затворами не просто выходом МК, а каким-нибудь драйвером, хотябы двумя биполярными транзисторами.
vasilievich
Пробегал мимо
Posts: 16
Joined: 09 Jun 2011 16:46
Location: Беларусь

Re: Регулятор оборотов двигателя постоянного тока.

Post by vasilievich »

Пробовал драйвер, собранный на ВС548 и ВС558 - мало что менялось, насчет зависимости резистора - откровенно говоря смотрел только на номинал сопротивления, на букву не обращал внимания, но пробовал не один, а несколько и все они ведут себя одинаково. Сегодня посмотрю на букву, будет очень смешно, если все они окажутся с экспоненциальной зависимостью. Вариант устройства я уже собрал и он полностью готов к установке на автомобиль, посмотрим как он будет себя вести при управлении от блока климы. Но все равно чего-то, но не хватает, хочется довести устройство до конца.
User avatar
hardlock
Администратор
Posts: 4003
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Регулятор оборотов двигателя постоянного тока.

Post by hardlock »

vasilievich wrote:мало что менялось
транзистор должен меньше греться - меньше переходной процесс.
vasilievich wrote:Но все равно чего-то, но не хватает, хочется довести устройство до конца.
Запишите напряжения с климата при разных положениях, потом снимайте двигло и пробуйте на столе запускать его от резистора, замеряя напругу на входе. И смотрите результат. А потом в программе можно будет подкорректировать.

Скажу только что зависимость мощности двигла от "процентов" ШИМ очень нелинейная. Поэтому подбирать придётся и не один раз. С резистором всё проще - надо чуть добавил/убавил, с климатом сложнее - там всего 10 дискретов.
vasilievich
Пробегал мимо
Posts: 16
Joined: 09 Jun 2011 16:46
Location: Беларусь

Re: Регулятор оборотов двигателя постоянного тока.

Post by vasilievich »

Понял, уже разработал печатку под управление полевиками с помощью драйвера. Резисторы оказались с линейной зависимостью. На автомобиле работает как я описывал выше: в начальных положениях регулировка происходит, в конце - максимальные обороты двигателя. Все бы устроило и в таком варианте, но при включении зажигания и соответственно подаче питания на регулятор (в положение min оборотов) двигатель хочет запуститься, но ему не хватает силы, а это напрягает слух. Вопрос отключения ШИМ при минимальном управляющем напряжении пока остается открытым. По поводу ступенчатой регулировки: я думаю не стоит править программу, ведь с блока климы и так подается ступенчатое напряжение, а контроллеру по барабану чем оно изначально регулируется, какой-то схемой или обычным переменным резистором.
User avatar
hardlock
Администратор
Posts: 4003
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Регулятор оборотов двигателя постоянного тока.

Post by hardlock »

vasilievich wrote:а контроллеру по барабану чем оно изначально регулируется, какой-то схемой или обычным переменным резистором.
нда... все мои слова в пустоту.
kredovit
Пробегал мимо
Posts: 18
Joined: 24 Jun 2011 21:54
Location: Алматы, Казахстан

Re: Регулятор оборотов двигателя постоянного тока.

Post by kredovit »

Вот это я и насчитал :oops:

Спасть хотел :-)

Пересчитаю сейчас...

В связи с тем, что 3/4 оборота реостата - это положении 7, то верхний предел X будет 228 [((255-165)/10) *7+165], думаю формула объяснит ход мыслей, почему я решил, что будет 228 :-)

Меняем шаг перестройки
228-165=63
63/10=6.3 грубо 6 (можно попробовать поэкспериментировать - подставить 7 :-) )

в итоге получаем значения Х для каждого положения:
0=0
1=165+6=171
2=177
...
9=219
и 10=255


Далее считаем дискретность для АЦП:
т.к. OCR0A равен 8 битам(255), то
255/10=25,5 грубо 25

теперь листинг

после строчки
// Place your code here

вставить
x=0

далее нужно вместо
pwm = pwm + 165 ;
if (pwm > 255) pwm = 255;


записать для всех положений регуляторя значения Х
if (pwm < 5) x= 0; // положение 0
if (pwm = 25) x = 171; //положение 1
if (pwm = 50) x = 177; //положение 2
...
if (pwm = 225) x = 228;//положение 9
if (pwm > 250) x = 255;//положение 10
pwm = x ;


Извеняюсь :-)


ЗЫ У меня стояли транзисторы с логическим управлением irLz34n, т.е. при пяти вольтах сопротивление минимально( отсюда и меньше греются, т.к. при различном сопротивлении перехода выделяется разная мощность на радиатор- соответственно и разная температура), при 12 вольтах- ещё интересней :-) ...

Когда стоял один BUZ, то он не выдержал той мощности, что к нему была подведена и перегорел, ведь MOSFET открывался на половину(сопротивление сток-исток D-S было больше).

Сопротивление перехода Rds сток-исток от напряжения на затворе Vgs можно подсмотреть в даташите на транзисторы :-) .

Про мощность можно почитать, если перейти по этой ссылке http://ftoe.ru/elec4/Labs/lab5.htm, для наглядности можно передставить, что переменное сопротивление- это сопротивление перехода сток-исток у MOSFET при разном напряжении на затворе).
Last edited by kredovit on 01 Jul 2011 16:33, edited 1 time in total.
User avatar
hardlock
Администратор
Posts: 4003
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Регулятор оборотов двигателя постоянного тока.

Post by hardlock »

kredovit wrote:if (pwm = 25)
низя равно, т.к. фиг попадёшь. нужно диапазоны от и до...
kredovit
Пробегал мимо
Posts: 18
Joined: 24 Jun 2011 21:54
Location: Алматы, Казахстан

Re: Регулятор оборотов двигателя постоянного тока.

Post by kredovit »

if (pwm > 20; pwm < 30) x = 171 ;

так правильней будет?

Если да, то:
if (pwm < 5) x= 0; // положение 0
if (pwm > 20; pwm < 30) x = 171; //положение 1
if (pwm > 45; pwm <55) x = 177; //положение 2
...
if (pwm >220; pwm < 230) x = 228;//положение 9
if (pwm > 250) x = 255;//положение 10
pwm = x ;


:-)
Last edited by kredovit on 01 Jul 2011 16:41, edited 1 time in total.
User avatar
hardlock
Администратор
Posts: 4003
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Регулятор оборотов двигателя постоянного тока.

Post by hardlock »

kredovit wrote:if (pwm > 20; pwm < 30) x = 169 ; так правильней будет?

Code: Select all

if ((pwm>20) & (pwm < 30)) x = 169;
но всё равно это не правильный путь. Надо вначале построить соответствие напряжений положениям на климате, потом посчитать соответствие напряжений и данных с ADC, а потом всё описать одним выражением.
kredovit
Пробегал мимо
Posts: 18
Joined: 24 Jun 2011 21:54
Location: Алматы, Казахстан

Re: Регулятор оборотов двигателя постоянного тока.

Post by kredovit »

неисключено, но работает :-)
просто я не любитель замеров- всё оставляю контроллеру- работаю совместно с EPROM , константы туда записываю с предварительной настройки онреал...
vasilievich
Пробегал мимо
Posts: 16
Joined: 09 Jun 2011 16:46
Location: Беларусь

Re: Регулятор оборотов двигателя постоянного тока.

Post by vasilievich »

Что-то я в конец запутался, на выходных буду пробовать воплощать Ваши идеи в жизнь.
kredovit
Пробегал мимо
Posts: 18
Joined: 24 Jun 2011 21:54
Location: Алматы, Казахстан

Re: Регулятор оборотов двигателя постоянного тока.

Post by kredovit »

vasilievich,как успехи?
vasilievich
Пробегал мимо
Posts: 16
Joined: 09 Jun 2011 16:46
Location: Беларусь

Re: Регулятор оборотов двигателя постоянного тока.

Post by vasilievich »

Да практически никак. По крайней рекомендации изменил указанные Вами строки в исходнике программы, единственно, что пересчитал - это значение Х, так как у меня при более внимательном изучении оказалось не десять положений (от 0 до 9), а восемь (от 0 до 7). В итоге при компиляции CVAVR выдает кучу матерных выражений начиная от строки, где Х присваивается значение 0 и до конца (pwm=x). Так, что пока без результатов.
kredovit
Пробегал мимо
Posts: 18
Joined: 24 Jun 2011 21:54
Location: Алматы, Казахстан

Re: Регулятор оборотов двигателя постоянного тока.

Post by kredovit »

Code: Select all

В итоге при компиляции CVAVR выдает кучу матерных выражений начиная от строки, где Х присваивается значение 0 и до конца (pwm=x).
я забыл указать объявление переменной X

после #include <tiny13.h>
вставить unsigned int x;


после строчки // Place your code here
вставить x=0;

; нужно не забывать ставить в конце каждой строки, в предидущих сообщениях забыл :oops:

значения Х для всех положений регулятора

Code: Select all

  if (pwm < 5)  x = 0; // положение 0
  if ((pwm > 27) & (pwm < 37))  x = 174; // положение 1
  if ((pwm > 59) & (pwm < 69))  x = 183; // положение 2
  if ((pwm > 91) & (pwm < 101))  x = 192; // положение 3
  if ((pwm > 123) & (pwm < 133))  x = 201; // положение 4
  if ((pwm > 155) & (pwm < 165))  x = 210; // положение 5
  if ((pwm > 187) & (pwm < 197))  x = 219; // положение 6
  if (pwm > 219)  x = 255; // положение 7 
  pwm=x ;  


codewision не ругается :-)


вложил все файлы одним архивом.
Attachments
regulator oborotov 12v.rar
(24.96 KiB) Downloaded 733 times
vasilievich
Пробегал мимо
Posts: 16
Joined: 09 Jun 2011 16:46
Location: Беларусь

Re: Регулятор оборотов двигателя постоянного тока.

Post by vasilievich »

Большое спасибо, буду пробовать.
User avatar
hardlock
Администратор
Posts: 4003
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Регулятор оборотов двигателя постоянного тока.

Post by hardlock »

kredovit, думаю в тиньке не хватит памяти. И что будет с устройством при pwm=39, например?
kredovit
Пробегал мимо
Posts: 18
Joined: 24 Jun 2011 21:54
Location: Алматы, Казахстан

Re: Регулятор оборотов двигателя постоянного тока.

Post by kredovit »

Code: Select all

в тиньке не хватит памяти
ещё 45% FLASH доступно

Code: Select all

что будет с устройством при pwm=39

При очередном запуске печки, в положениe ручки регулятора(резистора) соответствующем pwm=39 мотор работать не будет, т.к. было условие x=0 изначально. Для исправления этой ситуации надо будет выбрать любое положение от 1 до 7.


ЗЫ Программа рассчитана на дискретность.
vasilievich
Пробегал мимо
Posts: 16
Joined: 09 Jun 2011 16:46
Location: Беларусь

Re: Регулятор оборотов двигателя постоянного тока.

Post by vasilievich »

Программа расчитана на дискретность - это толково, но при проверке оказалось, что при значениях pwm = от 38 до 58 и так далее двигатель работает как бы с рывками, т.е. по мере увеличения управляющего напряжения с помощью резистора двигатель начинает вращаться с одной скоростью, далее его скорость уменьшается, затем скачкообразно снова увеличивается, затем снова уменьшается и так до положения 7. При этом скорость оборотов двигателя в "неактивной" зоне регулирования, назовем ее так, - это (я так думаю pwm = от 38 до 58, от 70 до 90 и т.д.) постоянна , т.е. увеличение оборотов происходит в пределах 27-37, 59-69 и т.д. Использовал для регулировки резистор, так как первый вариант регулятора стоит у знакомого на авто. Конечно с резистором ни о какой дискретной регулировке не может быть и речи, но hardlock был прав, что для такого варианта программы необходимо знать точно величину управляющего напряжения с блока климы и только после этого привязывать его к программе. Конкретно на авто этот вариант регулятора не пробовал, использовал другой маленький движок (от сюда и вращение в моем случае при pwm=39), времени для всего совершенно не хватает. На следующей неделе попробую приобрести транзисторы, управляемые логическим уровнем. Спасибо за сотрудничество.
kredovit
Пробегал мимо
Posts: 18
Joined: 24 Jun 2011 21:54
Location: Алматы, Казахстан

Re: Регулятор оборотов двигателя постоянного тока.

Post by kredovit »

Code: Select all

скорость оборотов двигателя в "неактивной" зоне регулирования, назовем ее так, - это (я так думаю pwm = от 38 до 58, от 70 до 90 и т.д.) постоянна , т.е. увеличение оборотов происходит в пределах 27-37, 59-69 и т.д.
я этот вариант предлагал как дискретность(ступенчатая регулировка)

Code: Select all

при проверке оказалось, что при значениях pwm = от 38 до 58 и так далее двигатель работает как бы с рывками, т.е. по мере увеличения управляющего напряжения с помощью резистора двигатель начинает вращаться с одной скоростью, далее его скорость уменьшается, затем скачкообразно снова увеличивается, затем снова уменьшается и так до положения 7
проблема может быть в неправильном месте строчки X=0;
косячёк :oops: , виноват.
Попробовать её переместить в начало программы, где присваиваются значения константам.
Я в кодевизион(С++) не силён, поэтому извините :pardon:

Если я не ошибаюсь, то X=0; надо поставить после объявления переменной unsigned int x;
Тогда X=0; не будет заставлять двигатель дёргаться в промежутках между положениями(в pwm = от 38 до 58 и т.п.)
vasilievich
Пробегал мимо
Posts: 16
Joined: 09 Jun 2011 16:46
Location: Беларусь

Re: Регулятор оборотов двигателя постоянного тока.

Post by vasilievich »

Наверное я Вас достал своими задачами, спасибо огромное, вечером обязательно попробую.
kredovit
Пробегал мимо
Posts: 18
Joined: 24 Jun 2011 21:54
Location: Алматы, Казахстан

Re: Регулятор оборотов двигателя постоянного тока.

Post by kredovit »

Всё нормально :-)
я тоже просил помощи у ребят, которые преодолели трудности в стопорных для меня ситуациях :-)
kredovit
Пробегал мимо
Posts: 18
Joined: 24 Jun 2011 21:54
Location: Алматы, Казахстан

Re: Регулятор оборотов двигателя постоянного тока.

Post by kredovit »

vasilievich,как успехи?
kredovit
Пробегал мимо
Posts: 18
Joined: 24 Jun 2011 21:54
Location: Алматы, Казахстан

Re: Регулятор оборотов двигателя постоянного тока.

Post by kredovit »

Видимо всё получилось, раз не отвечают :-)
Casper_pro
Частенько бываю
Posts: 36
Joined: 01 Dec 2010 23:19

Re: Регулятор оборотов двигателя постоянного тока.

Post by Casper_pro »

kredovit wrote: if (pwm < 5) x = 0; // положение 0
if ((pwm > 27) & (pwm < 37)) x = 174; // положение 1
if ((pwm > 59) & (pwm < 69)) x = 183; // положение 2
if ((pwm > 91) & (pwm < 101)) x = 192; // положение 3
if ((pwm > 123) & (pwm < 133)) x = 201; // положение 4
if ((pwm > 155) & (pwm < 165)) x = 210; // положение 5
if ((pwm > 187) & (pwm < 197)) x = 219; // положение 6
if (pwm > 219) x = 255; // положение 7
pwm=x ;
А так не проще было?

x = pwm / 36.5;
x = x * 9 + 165;
if (pwm < 19) x = 0; // положение 0
if (pwm > 235) x = 255; // положение 7
pwm = x;

При условии что х - целая переменная
Post Reply