Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Отвлекитесь, эмбеддеры! Отвлеченные темы - обсудить проблемы тепловой смерти вселенной, или просто пиво. Этот раздел - для отдыха.

 
Опции темы
Непрочитано 18.12.2017, 00:24  
stalkernet
Почётный гражданин KAZUS.RU
 
Регистрация: 02.07.2009
Сообщений: 1,110
Сказал спасибо: 1,246
Сказали Спасибо 2,178 раз(а) в 624 сообщении(ях)
stalkernet на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

И вобще как саказала легендарная и неповторимая Фаина Раневская - лучше быть хорошим человеком ругающимся матом, чем тихой и воспитаной тварью.
stalkernet вне форума  
Непрочитано 18.12.2017, 02:17  
ALEGYR
Вид на жительство
 
Регистрация: 10.06.2005
Сообщений: 325
Сказал спасибо: 43
Сказали Спасибо 360 раз(а) в 194 сообщении(ях)
ALEGYR на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от stalkernet Посмотреть сообщение
ALEGYR, А оно мне надо? У каждого свой критерий определения наворочености горшка.
Так мы тут не горшок обсуждаем, а ДВА КОНКРЕТНЫХ кода, реализующих один и тот же вид регулятора

Первый представлен AR_Favorit,

Цитата:
Код:

if (pid_counter‹(EE_PID_TIME*1000)) pid_counter++;
else
{
pid_counter = 0;
PID_curr_err = EE_FUEL_TARGET_TEMP - temp;//Начало
if (integral_err‹(EE_PID_TIME*2000)) integral_err += PID_curr_err;
control = (int32_t)EE_PID_P*PID_curr_err;
control += (integral_err*(int32_t)EE_PID_I)/1000;
control -= (PID_prev_err - PID_curr_err)*(int32_t)EE_PID_D;

PID_prev_err = PID_curr_err;//конец
}

if (control›heat_counter) HEAT_ON; else HEAT_OFF;
heat_counter++;
if (heat_counter›(EE_PID_TIME*1000)) heat_counter=0;
и второй, который используется в библиотеке Arduino

Цитата:
void Compute()
{
unsigned long now = millis();
int timeChange = (now - lastTime);
if(timeChange›=SampleTime)
{
double error = Setpoint - Input;
errSum += error;
double dInput = (Input - lastInput);
Output = kp * error + ki * errSum - kd * dInput;
lastInput = Input;
lastTime = now;
}
}
ALEGYR вне форума  
Непрочитано 18.12.2017, 09:03  
avp94
Почётный гражданин KAZUS.RU
 
Аватар для avp94
 
Регистрация: 26.01.2007
Сообщений: 3,123
Сказал спасибо: 61
Сказали Спасибо 1,153 раз(а) в 624 сообщении(ях)
avp94 на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от stalkernet Посмотреть сообщение
лучше быть хорошим человеком ругающимся матом, чем тихой и воспитаной тварью.
При таком скудном выборе -да.
avp94 вне форума  
Непрочитано 18.12.2017, 12:46  
stalkernet
Почётный гражданин KAZUS.RU
 
Регистрация: 02.07.2009
Сообщений: 1,110
Сказал спасибо: 1,246
Сказали Спасибо 2,178 раз(а) в 624 сообщении(ях)
stalkernet на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

А мне не тот не тот не нравится.

Я бы так реализовал.

Опрос АЦП - получаем целое число выраженое в шагах АЦП
Считаем ошибку опятьже выраженую в шагах АЦП например ацп 10бит - 1024 значений
уставка 879. текущая 128.
err = 879 - 128;
Считаем значение ПИД причем коэффициенты целые. без точки.

коректируем под необходимый период регулирования. тоже целочисленно.
загружаем полученное значение в таймер ШИМ.
запускаем второй таймер отсчитывающий период регулирования.
стартуем оба таймера.
теперь или занимаемся своими делами или просто курим в сторонке.
по прерыванию таймера регулирования.
тормозим оба таймера.
возвращаемся к опросу АЦП.

И никаких тебе флоатов. единственное нужно помнить что точность потдержания зависит шага АЦП.

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

Никто это не запрещает. Ведь по ГОСТу ПИД это формула а не алгоритм работы прибора.
stalkernet вне форума  
Сказали "Спасибо" stalkernet
Yuri222 (18.12.2017)
Непрочитано 18.12.2017, 12:58  
Yuri222
Почётный гражданин KAZUS.RU
 
Регистрация: 08.02.2005
Адрес: Минск, Беларусь
Сообщений: 7,862
Сказал спасибо: 2,730
Сказали Спасибо 2,674 раз(а) в 1,978 сообщении(ях)
Yuri222 на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от omercury Посмотреть сообщение
То же с видаками плюс двухфазный БВГ - ОС по датчикам Холла.
Подправлю чуток - датчики Холла всего лишь показывают положение блока видеоголовок.
Скорость их вращения регулируется по кварцевому генератору (т.е. обратная связь - с него). А фаза - подстраивается по синхросигналу, записанному на магнитную ленту стационарной (невращающейся) головкой. (с этим сигналом связан трекинг - регулировка фазы БВГ по отношению к синхросигналу). Т.е. еще одна обратная связь.
Так что да, в видиках используется достаточно сложный регулятор - все же ширина дорожки видеозаписи около полумиллиметра, и вращающаяся головка должна точно по ней проехать.
Yuri222 вне форума  
Непрочитано 18.12.2017, 13:34  
stalkernet
Почётный гражданин KAZUS.RU
 
Регистрация: 02.07.2009
Сообщений: 1,110
Сказал спасибо: 1,246
Сказали Спасибо 2,178 раз(а) в 624 сообщении(ях)
stalkernet на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

omercury, специально залез в хламовник и откопал контроллер диска. стоит драйвер - на входе прямоугольник задающий частоту. на выходе три частоты со сдвигом. обратная связь по току. чтото связаное с моментом пуска. не разбирался. защита по току от заклинивания. Пида не увидел. В свое время хотел переделать под блок вентиляторов. не получилось сильно уж они вылизаны под определенный режим работы.в другом режиме им не очень хорошо.

Блок перемещения головок прост до безобразия. два магнита соедененные в систему. между ними катушка. микросхема есть но дату на нее не нашел. Магниты притом такие что прилипил а ручками отодрать не удалось. только отверткой.
stalkernet вне форума  
Непрочитано 18.12.2017, 13:56  
stalkernet
Почётный гражданин KAZUS.RU
 
Регистрация: 02.07.2009
Сообщений: 1,110
Сказал спасибо: 1,246
Сказали Спасибо 2,178 раз(а) в 624 сообщении(ях)
stalkernet на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Теперь о той части из за которой весь сыр-бор. Второе звено регулятора. именно звено а не ступень. Преславутый корректор мошности. Его суть состоит в том чтобы скоректировать попугаи ПИДа в регулирующее воздействие.

самая простейшая модель для постоянного тока

if Pout › 100 then Pout := 100
else
begin
if Pout ‹ 0 Then Pout := 0
else begin
TSHIM := (TReg * Pout) / 100;
end
end;

Опять же это не есть аксиома и пременима при определенных условиях. Но ею довольно часто пользуются. довольна проста в расчетах и легко применима к разному времени регулирования Treg. Дальше еще можно ввести коэф. пропорциональности, пересчет на интеграл синусоиды. но обычно на это забивают.
stalkernet вне форума  
Непрочитано 18.12.2017, 13:57  
SergeySD
Заблокирован
 
Регистрация: 21.03.2015
Сообщений: 40
Сказал спасибо: 3
Сказали Спасибо 72 раз(а) в 20 сообщении(ях)
SergeySD на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от stalkernet Посмотреть сообщение
и откопал контроллер диска. стоит драйвер - на входе прямоугольник задающий частоту. на выходе три частоты со сдвигом. Пида не увидел.
А почему он должен быть в драйвере двигателя?
Это только часть сервоконтура.

В тиристорном (симмисторном) регуляторе мощности для нагревателя,
тоже трудно найти PID
SergeySD вне форума  
Непрочитано 18.12.2017, 15:23  
stalkernet
Почётный гражданин KAZUS.RU
 
Регистрация: 02.07.2009
Сообщений: 1,110
Сказал спасибо: 1,246
Сказали Спасибо 2,178 раз(а) в 624 сообщении(ях)
stalkernet на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

SergeySD, спорить не буду. а в самом контроллере нет настроения ковырятся. но единственное что запомнился это геморой с пуском на другой частоте. притом выяснилось что это связано с конструктивом двигателя. притом мощность резко падала даже при 7 - 10% отклонения частоты от номинала. доходило до того что даже крыльчатку врощать не мог. поэтому собрал мешок раздербанных винтов и сдал на .... ну вобщем цветмет. в шкафу почти полкуба места освободилось. потом мне дали пощупать авиомодельный асинхронник. вот это весчь. конечно мертвые зоны есть. но в качестве навороченного куллера очень годится. надо еще и с CD приводов пощупать. может мало отличаются. а с винтов сразу в цветмет.
stalkernet вне форума  
Непрочитано 18.12.2017, 17:08  
Yuri222
Почётный гражданин KAZUS.RU
 
Регистрация: 08.02.2005
Адрес: Минск, Беларусь
Сообщений: 7,862
Сказал спасибо: 2,730
Сказали Спасибо 2,674 раз(а) в 1,978 сообщении(ях)
Yuri222 на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от stalkernet Посмотреть сообщение
надо еще и с CD приводов пощупать
Там в 99% стоят обычные коллекторные движки с напряжением питания 3-6 вольт в основном. Очень слабенькие, коллекторные щетки - тонкие волосинки. Ими - только лысый диск раскручивать, без крыльчатки.
Пару раз видел внутри бесколлекторный двух (или трех) фазник, тоже слабенький.
Yuri222 вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Wiznet W7100. Общие вопросы R_N Микроконтроллеры, АЦП, память и т.д 7 06.06.2012 00:33
PCAD - вопросы и ответы avr123-nm-ru Proteus, KiCAD и другие ECAD 7 27.01.2011 21:15
Система измерения температуры (на AD8495), вопросы по схеме и реализации spartakchamp Измерительное оборудование 2 15.11.2010 22:04


Часовой пояс GMT +4, время: 00:50.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot