реклама на сайте
подробности

 
 
7 страниц V  « < 3 4 5 6 7 >  
Reply to this topicStart new topic
> Автоматическое регулирование
Thistle
сообщение Jan 10 2007, 23:04
Сообщение #61


Частый гость
**

Группа: Участник
Сообщений: 99
Регистрация: 29-11-05
Пользователь №: 11 563



вот тоько в этом случае нужна мат.модель объекта, а с этим как правило туго ...
Go to the top of the page
 
+Quote Post
UMP
сообщение Jan 11 2007, 20:10
Сообщение #62


Частый гость
**

Группа: Свой
Сообщений: 78
Регистрация: 27-07-06
Пользователь №: 19 147



Несколько отвлекаю от темы, но, тем не менее советую посетить сайт http:/www.model.exponenta.ru
там находятся современные интерактивные учебные материалы по ТАУ на русском языке, там же можно получить VisSim, и обширный методический материал по применению этой программы в задачах анализа и синтеза САУ.
Go to the top of the page
 
+Quote Post
SergeyX
сообщение Jan 30 2007, 11:47
Сообщение #63


Участник
*

Группа: Свой
Сообщений: 72
Регистрация: 18-10-05
Из: Minsk
Пользователь №: 9 774



рекомендую взглянуть на методики настройки пид-регуляторов здесь - http://members.vicard.net/sensor/main1_10.htm


--------------------
"Never to be in love with your ideas"...
Go to the top of the page
 
+Quote Post
Waso
сообщение Sep 23 2007, 08:40
Сообщение #64


Местный
***

Группа: Свой
Сообщений: 268
Регистрация: 4-11-05
Пользователь №: 10 470



А если время квантования меняется? Мне нужно стабилизировать скорость вращения двигателя. Эту скорость я измеряю по времени между двумя импульсами, которые выдает датчик вращения по одному на каждый оборот. Этот импульс вызывает прерывание в котором по формулам ПИД расчитываются новые параметры ШИМа, управляющего двигателем. Впринципе работает нормально, но при резкой смене скорости возникает либо выброс (wind-up) либо установление идет слижком медленно - в зависимости от величины постоянной интегрирования. Вот я и думаю сделать ее зависимой от времени квантования, но не знаю какую формулу применить. Не подскажите?
Go to the top of the page
 
+Quote Post
Oldring
сообщение Sep 23 2007, 08:55
Сообщение #65


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(Waso @ Sep 23 2007, 12:40) *
А если время квантования меняется? Мне нужно стабилизировать скорость вращения двигателя. Эту скорость я измеряю по времени между двумя импульсами, которые выдает датчик вращения по одному на каждый оборот. Этот импульс вызывает прерывание в котором по формулам ПИД расчитываются новые параметры ШИМа, управляющего двигателем. Впринципе работает нормально, но при резкой смене скорости возникает либо выброс (wind-up) либо установление идет слижком медленно - в зависимости от величины постоянной интегрирования. Вот я и думаю сделать ее зависимой от времени квантования, но не знаю какую формулу применить. Не подскажите?


Это не есть очень тривиально. Так как время кванта меняется - стандартные формулы ПИД регулятора для такого случая очевидно неприменимы. Как минимум, нужно учитывать изменение шага интегрирования/дифференцирования, чтобы динамика системы оставалась близкой к требуемой. Кроме того, при малых скоростях вращения данная схема обратной связи (один импульс на оборот) становится неприменимой - нужно изменять структуру контура управления. Попробуйте промоделировать в симулинке с учетом близкой к реальности модели динамики и требуемых диапазонов регулирования.


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
Waso
сообщение Sep 24 2007, 02:44
Сообщение #66


Местный
***

Группа: Свой
Сообщений: 268
Регистрация: 4-11-05
Пользователь №: 10 470



Цитата(Oldring @ Sep 23 2007, 15:55) *
Кроме того, при малых скоростях вращения данная схема обратной связи (один импульс на оборот) становится неприменимой - нужно изменять структуру контура управления. Попробуйте промоделировать в симулинке с учетом близкой к реальности модели динамики и требуемых диапазонов регулирования.

Есть ли смысл моделировать (искать и изучать программу) если у меня под рукой есть готовый макет (АРМ-овский Ев-борд и этот самый моторчик) ? Вообще у моторчика есть датчик выдающий 24 импульса за оборот, но по какимто причинам эти импульсы внутри одного оборота располагаются неравномерно. Да и при максимальной частоте вращения (4000) мне на 24 импульса скорости АРМа не хватит уже наверное (AT91SAM7X256). sad.gif
Go to the top of the page
 
+Quote Post
Oldring
сообщение Sep 24 2007, 08:17
Сообщение #67


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(Waso @ Sep 24 2007, 06:44) *
Есть ли смысл моделировать (искать и изучать программу) если у меня под рукой есть готовый макет (АРМ-овский Ев-борд и этот самый моторчик) ? Вообще у моторчика есть датчик выдающий 24 импульса за оборот, но по какимто причинам эти импульсы внутри одного оборота располагаются неравномерно. Да и при максимальной частоте вращения (4000) мне на 24 импульса скорости АРМа не хватит уже наверное (AT91SAM7X256). sad.gif


IMHO программу под названием Matlab в любом случае полезно найти и изучить. Упоминавшийся мною Simulink - это ее огромный компонент для моделирования динамических систем.

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

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


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
Guest_TSerg_*
сообщение Sep 24 2007, 10:41
Сообщение #68





Guests






Цитата(Waso @ Sep 24 2007, 06:44) *
Есть ли смысл моделировать (искать и изучать программу) если у меня под рукой есть готовый макет (АРМ-овский Ев-борд и этот самый моторчик) ? Вообще у моторчика есть датчик выдающий 24 импульса за оборот, но по какимто причинам эти импульсы внутри одного оборота располагаются неравномерно. Да и при максимальной частоте вращения (4000) мне на 24 импульса скорости АРМа не хватит уже наверное (AT91SAM7X256). sad.gif


Моделировать имеет смысл всегда, впрочем также как и знать теориюsmile.gif
Уже упоминавшийся VisSim, бесплатный в студенческой версии, отличный инструмент для моделирования динамических систем, как аналоговых, так и дискретно-цифровых.
Go to the top of the page
 
+Quote Post
Deka
сообщение Sep 25 2007, 06:35
Сообщение #69


Местный
***

Группа: Свой
Сообщений: 248
Регистрация: 18-07-06
Из: Сочи
Пользователь №: 18 890



А сейчас, господа, сюрприз! И состоит он в том, что поток регулируемый шаровым краном нелинейный! Другими словами при работе крана седельного типа пропускаемый им поток прямо пропорционален степени его открытия. С шаровым краном такого не происходит. Специально для устранения этого недостатка шаровых кранов фирма Белимо изготавливает шаровые краны со специальными вставками, которые приводят характеристику шаровых кранов к седельным. Так что если в регуляторе будет применён обычный шаровый кран, то придётся учитывать и его нелинейность.
Ну и ссылка по теме для всех интересующихся... http://belimo.ru/clap1.shtml

Сообщение отредактировал Deka - Sep 25 2007, 06:38
Go to the top of the page
 
+Quote Post
Guest_TSerg_*
сообщение Sep 27 2007, 12:10
Сообщение #70





Guests






Цитата(Deka @ Sep 25 2007, 10:35) *
А сейчас, господа, сюрприз! И состоит он в том, что поток регулируемый шаровым краном нелинейный!
<skip>


Не поверишь, но проектировщики это знают.
Если они проектировщики, а не детский садsmile.gif
Go to the top of the page
 
+Quote Post
qwqw
сообщение Apr 6 2010, 13:53
Сообщение #71


Частый гость
**

Группа: Свой
Сообщений: 192
Регистрация: 23-11-05
Из: г. Москва
Пользователь №: 11 307



Я пока далек от темы регулирования, знакомлюсь с основными понятиями и методами.
Нужна подсказка по каким ключевым словам искать нужный мне раздел в теории.
Задача такая:
С камеры в ПК приходит видео. По каждому кадру считается среднее арифметическое значене яркости.
В качестве регулировок есть 3 параметра: время экспозиции, внешняя диафрагма и аналоговое усиление(после ПЗС).
Все регулировки имеют цифроаое управление и доступны из ПК. Задача по возможности удерживать значение средней яркости в окрестности значения выбранного в программе при разных условиях освещенности сцены.
Короче интересуют разделы посвещенные системам с несколькими регулировками и одним объектом регулирования.
Go to the top of the page
 
+Quote Post
Roger
сообщение Sep 26 2010, 19:53
Сообщение #72


Участник
*

Группа: Участник
Сообщений: 69
Регистрация: 27-06-06
Пользователь №: 18 383



Уважаемые специалисты, помогите пожалуйста начинающему освоить автоматическое регулирование.
Вопрос заключается в следующем:
Нужно подерживать постоянно температуру(заданную) тена(Делаю регулирование температуры ламинатора, для ЛУТа)
Почитав теорию.
Написал для себя класс.
Код
#include "pid.h"

Pid::Pid(void)
    {
        this->iState=0;
        this->dState=0;
        this->iGain=0;
        this->pGain=0;
        this->dGain=0;
    }

Pid::Pid(float& iGain,unsigned short& pGain,unsigned short& dGain)
    {
        this->iGain=iGain;
        this->pGain=pGain;
        this->dGain=dGain;
    }

Pid::~Pid(void)
    {
        
    }
    
float Pid::UpdatePID(unsigned short& error, unsigned short& position)
    {
    
    unsigned short     pTerm;
    unsigned short    dTerm;
    float    iTerm;
    pTerm=this->pGain*error;    //Вычисление пропорциональной состовляющей
    this->iState+=error;    //Вычисление интегральной состовляющей с учетом приделов
    
    if(this->iState > this->iMax)
    {
        this->iState=this->iMax;
    }
    else if(this->iState < this->iMin)
    {
        this->iState=this->iMin;
    }

    iTerm=this->iGain*this->iState;    //Расчет интегральной состовляющей
    dTerm=this->dGain*(position - this->dState);//расчет. диф. состовляющей
    this->dState=position;
    return (pTerm+iTerm+dTerm);
    }


Код
#ifndef PID_DEF_H
#define PID_DEF_H

#include "stdafx.h"
#include <float.h>
class Pid
{
  private:
    unsigned short     dState;        //Последняя входная позиция
    unsigned short    iState;        //Сосотояние интегратора
    unsigned short     iMax,iMin;    //Max & Min состояние интегратора
    
    float        iGain;        //интегральная компонента
    unsigned short    pGain;        //пропорциональная компонента
    unsigned short    dGain;        //производная компонента
  
  public:
    Pid(void);
    Pid(float& iGain,unsigned short& pGain,unsigned short& dGain);
    ~Pid(void);
    float UpdatePID(unsigned short& error, unsigned short& position);
};

#endif //PID_DEF_H



Вопрос в следующем вот посчитали с помощью метода UpdatePID новое значение... Вот только что менять в ШИМе частоту или скважность....
И какую выбирать частоту ШИМ?
Стабилизация нужна +-2градуса.

Да и по ПИД вопросу, как правильно выбрать max & min состояние интегратора....
Да и как понял из теории для термостабилизации достаточно будет ПД алгоритма, т.е. можно избавиться от интегральной компоненты, т.е. от работы с float.
Go to the top of the page
 
+Quote Post
DW0
сообщение Sep 28 2010, 20:37
Сообщение #73


Участник
*

Группа: Свой
Сообщений: 73
Регистрация: 9-08-10
Из: Украина
Пользователь №: 58 828



без интегральной составляющей не обойтись, т.к. она убирает статическую неравномерность регулирования. и закон нужен ПИ. ШИМ должен менять и скважность и частоту. таким образом вы увеличите динамический диапазон регулирования. необходимо определить минимальную длину импульса и от нее отталкиваться.
ПД закон имеет неравномерность регулирования, другими словами Вы получаете устойчивый процесс, но задание отличается от регулируемого параметра
Go to the top of the page
 
+Quote Post
Oldring
сообщение Sep 29 2010, 09:38
Сообщение #74


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(Roger @ Sep 26 2010, 23:53) *
Код
    ~Pid(void);


Не понимаю. Зачем этому классу деструктор?


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
Berny
сообщение Apr 12 2011, 13:02
Сообщение #75





Группа: Новичок
Сообщений: 6
Регистрация: 24-11-10
Пользователь №: 61 136



хм, а зачем на клапан вообще двигатель, например занимался по работе электромагнитами, узнал кучу нового, например что в клапанах они очень часто используются, просто советую в интернете посмотреть информацию по клапанам и системам регулировки.
по регулеровке температуры вопрос, чем регулируется температура(просто отключение подогрева, и/или система вентиляции), ну и выходная характеристика термодатчика? просто на контроллерах часто програмировал термоконтроль для уличных устройств(-40 +50), хотя там больше подогрев играл роль(эл. компоненты не все держали отрицательную температуру), нежели охлаждение.
Go to the top of the page
 
+Quote Post

7 страниц V  « < 3 4 5 6 7 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 20:04
Рейтинг@Mail.ru


Страница сгенерированна за 0.01514 секунд с 7
ELECTRONIX ©2004-2016