Ветроэнергетика и альтернативная энергетика.  

Вернуться   Ветроэнергетика и альтернативная энергетика. > Технический раздел > Электроника
Статьи Справка Сообщество Календарь Сообщения за день Поиск

Электроника схемы, устройства, справочники и т.п.

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 16.11.2012, 11:36   #151
BenGunn
VIP
 
Регистрация: 16.05.2012
Адрес: Пермь
Сообщений: 641
Вес репутации: 12
BenGunn на пути к лучшему
По умолчанию

Несколько вопросов к Александру.
1) Правильно я понимаю, что ветряк надо рассчитывать так, что при скважности 1, он должен быть перегруженным?
2) Почему вы решили ориентироваться на обороты ветряка, а не на мощность на нагрузке?
BenGunn вне форума   Ответить с цитированием
Старый 16.11.2012, 21:30   #152
Александр
Администратор
 
Аватар для Александр
 
Регистрация: 25.02.2010
Адрес: Латвия, Сигулда
Сообщений: 820
Вес репутации: 10
Александр на пути к лучшему
По умолчанию

BenGunn, по первому вопросу - совершенно необязательно. Скважность 1 означает, что контроллер пропускает только половину возможного. Нам не нужно о скважности думать, контроллер сам должен решать, какую установить в данный момент времени. Она будет зависеть от подключенной нагрузки.
По второму вопросу.
Мощность в нагрузке - суть производная от оборотов винта. Можно делать и так и эдак. Оба пути приведут к одинаковому результату. Хотя вернее было бы сказать, что я ориентируюсь не столько на обороты винта (они выводятся на дисплей только для меня, контроллер о них даже не знает), как таковые, сколько на изменение их. На знак ускорения, так сказать. Имеется три состояния - "минус", "нуль", "плюс". По каждому из них принимается соответствующее решение. Просто мне так было удобнее делать.
Александр вне форума   Ответить с цитированием
Старый 16.11.2012, 22:12   #153
BenGunn
VIP
 
Регистрация: 16.05.2012
Адрес: Пермь
Сообщений: 641
Вес репутации: 12
BenGunn на пути к лучшему
По умолчанию

Цитата:
Сообщение от Александр Посмотреть сообщение
BenGunn, по первому вопросу - совершенно необязательно. Скважность 1 означает, что контроллер пропускает только половину возможного.
Хм, я почему-то думал, что при скважности 1 контроллер пропускает всю мощность, а половину при скважности 2. У нас же скважность – это отношение периода импульса ко времени импульса или нет?

Цитата:
Сообщение от Александр Посмотреть сообщение
Нам не нужно о скважности думать, контроллер сам должен решать, какую установить в данный момент времени. Она будет зависеть от подключенной нагрузки.
Я работу контроллера себе представляю так, что увеличивая скважность, мы уменьшаем нагрузку на винт. Тогда при скважности 1 винт должен быть перегружен, иначе контроллер может выдавать полную мощность, но винт будет недогружен.

Цитата:
Сообщение от Александр Посмотреть сообщение
По второму вопросу.
Мощность в нагрузке - суть производная от оборотов винта. Можно делать и так и эдак. Оба пути приведут к одинаковому результату. Хотя вернее было бы сказать, что я ориентируюсь не столько на обороты винта (они выводятся на дисплей только для меня, контроллер о них даже не знает), как таковые, сколько на изменение их. На знак ускорения, так сказать. Имеется три состояния - "минус", "нуль", "плюс". По каждому из них принимается соответствующее решение. Просто мне так было удобнее делать.
Вот тут у меня и возник вопрос. Давайте посмотрим на график мощности (см. рисунок).
Пока мы находимся левее максимума, т.е. винт делает меньше чем 500 оборотов, то ваш принцип (увеличение оборотов означает увеличение мощности) работает. Но если мы оказались правея максимума, то все меняется и увеличение оборотов означает уже уменьшение мощность. Так как в конкретный момент мы не знаем, с какой стороны от максимума находимся, то изменение оборотов нам ни о чем не говорит. Может, я просто чего-то не понимаю?
Миниатюры
Нажмите на изображение для увеличения
Название: 2.jpg
Просмотров: 645
Размер:	133.5 Кб
ID:	8547  
BenGunn вне форума   Ответить с цитированием
Старый 17.11.2012, 00:02   #154
Александр
Администратор
 
Аватар для Александр
 
Регистрация: 25.02.2010
Адрес: Латвия, Сигулда
Сообщений: 820
Вес репутации: 10
Александр на пути к лучшему
По умолчанию

BenGunn, всё у вас верно. Это я думал об одном, а сказал другое...
Что касается самой нагрузки, то она, естественно, должна быть с учётом интересов винта.
По графику.
Конкретно в моём случае - винт не может оказаться на правой ветви. Даже если контроллер и нагрузку отключить совсем. Винту это абсолютно безразлично. Проверено многократно. (Всё-таки ВРШ...) Поэтому правая ветвь меня особо не заботит. В остальном же - если винт вдруг выйдет за вершинку, это будет сигнал для контроллера "увеличить нагрузку". И винт неизбежно вернётся на левую ветвь.
Шаг дискретизации ШИМ должен находиться в некотором соответствии с динамикой винта и это следует просто подобрать экспериментально. Меняя шаг дискретизации, на одной и той же программе получаются очень разные результаты. Понятно, что имея численные данные о динамике винта при разных ветровых режимах и разных нагрузках, можно было бы, в принципе, написать вполне рабочую программу. Но не факт, что она не потребует отладки в железе.
Есть у меня три статейки на тему MPPT, правда, на английском. В прикреплённом архиве все три.
Вложения
Тип файла: rar MPPT.rar (1.24 Мб, 440 просмотров)
Александр вне форума   Ответить с цитированием
Старый 17.11.2012, 00:05   #155
Александр
Администратор
 
Аватар для Александр
 
Регистрация: 25.02.2010
Адрес: Латвия, Сигулда
Сообщений: 820
Вес репутации: 10
Александр на пути к лучшему
По умолчанию

Да, кстати: на графике мы имеем только кривую винта. А реальный контроллер работает, имея на этом же графике две кривых - винта и нагрузки. Вот когда они обе там появятся, то неопределённость не будет так очевидна.
Александр вне форума   Ответить с цитированием
Старый 17.11.2012, 01:38   #156
BenGunn
VIP
 
Регистрация: 16.05.2012
Адрес: Пермь
Сообщений: 641
Вес репутации: 12
BenGunn на пути к лучшему
По умолчанию

Цитата:
Сообщение от Александр Посмотреть сообщение
Конкретно в моём случае - винт не может оказаться на правой ветви. Даже если контроллер и нагрузку отключить совсем. Винту это абсолютно безразлично. Проверено многократно. (Всё-таки ВРШ...)
ВРШ тут не причем, так как он начинает работать, только при определенных оборотах.

Цитата:
Сообщение от Александр Посмотреть сообщение
Да, кстати: на графике мы имеем только кривую винта. А реальный контроллер работает, имея на этом же графике две кривых - винта и нагрузки. Вот когда они обе там появятся, то неопределённость не будет так очевидна.
Вот как раз сейчас сделал такой график.
Вводим два допущения.
1) ВРШ у нас ещё не срабатывает.
2) К генератору подключена постоянная нагрузка, поэтому при неизменной скважности мощность генератора будет изменяться в зависимости от квадрата оборотов.

В начальный момент дует ветер со скоростью 5м/с и ШИМ имеет скважность 1.
Ветер изменился и стал дуть со скоростью 7м/с. Для простоты будем считать, что ветер изменился мгновенно. Мощность ветроколеса увеличилась (точка 2), а мощность генератора пока не изменилась. Теперь возможно несколько вариантов.
1) У нас нет контроллера. Мощность генератора возрастет по желтой линии. Мощности генератора и ветроколеса уравновешиваются в точке 6. Так как точка 6 явно не оптимальна, мы и пытаемся сделать контроллер.
2) Скважность меняется, но медленно. Поэтому мощности уравновешиваются в точке 3. Дольше по вашему алгоритму контроллер уменьшает нагрузку и винт начинает разгоняться. Контроллер реагирует на разгон винта и увеличивает нагрузку, винт замедляется. В итоге мы остаемся в районе точки 3.
3) Скважность изменяется с оптимальной скоростью. Мы попадаем в точку 4 и по аналогии и точкой 3 топчемся на одном месте.
4) Скважность меняется слишком быстро. Винт не успевает разогнаться и мы попадаем в точку 5. Мы опять топчемся на месте.
Когда скорость ветра упадет, картина будет аналогичной.

Пока писал, понял, что когда мы попадаем в некоторую точку, ваш алгоритм просто стабилизирует в ней ветряк, а максимум при этом не ищется.

Цитата:
Сообщение от Александр Посмотреть сообщение
Шаг дискретизации ШИМ должен находиться в некотором соответствии с динамикой винта и это следует просто подобрать экспериментально. Меняя шаг дискретизации, на одной и той же программе получаются очень разные результаты.
Это как раз подтверждение того, что я написал выше. Если мы не правильно настроили шаг дискретизации ШИМ, то мы получим или случай 1 или случай 4. Оптимальная дискретизация зависит от момента инерции винта или как вы пишите от динамики винта.

Для универсального алгоритма поиска точки максимума, надо вместо изменения оборотов ориентироваться на изменения мощности на нагрузке.
Давайте посмотрим, как это будет работать.
1) Скважность изменяется медленно и мы опять попали в точку 3. Контролер попробует ещё нагрузить ветряк, винт замедлится, но мощность при этом возрастет. Постепенно мы попадем в точку максимума 4.
2) Скважность изменяется с оптимальной скоростью, мы попали в точку 4. Контроллер пытается ещё нагрузить ветряк, винт тормозится и мощность падает. Контроллер реагирует на падание мощности и уменьшает нагрузку, мощность растет. В итоге мы топчемся около точки максимума.
3) Скважность изменяется слишком быстро, мы в точке 5. Контроллер нагружает ветряк, винт тормозиться, мощность падает. Контроллер уменьшает нагрузку, винт разгоняется, мощность растет. Контроллер продолжает уменьшать нагрузку, пока мы не попадем в точку 4.

В общем виде алгоритм выгладит так.
1) Контроллер изменяет скважность (увеличивает или уменьшает).
2) Если это приводит к увеличению мощности, то контроллер продолжает изменять скважность в том же направлении.
3) Если мощность падает, то контроллер меняет направление изменения скважности на противоположное.
При таком алгоритме дискретизация ШИМ уже не так важна, так как мы в любом случаи попадем в точку максимума. Единственная разница будет в том, что при правильной дискретизации точка максимума будет находиться быстрее и поэтому ветряк будет лучше реагировать на порывы ветра.
Миниатюры
Нажмите на изображение для увеличения
Название: 1.jpg
Просмотров: 633
Размер:	49.2 Кб
ID:	8551  
BenGunn вне форума   Ответить с цитированием
Старый 17.11.2012, 02:48   #157
Александр
Администратор
 
Аватар для Александр
 
Регистрация: 25.02.2010
Адрес: Латвия, Сигулда
Сообщений: 820
Вес репутации: 10
Александр на пути к лучшему
По умолчанию

Следует помнить, что максимальная мощность винта не совпадает с максимальными оборотами, а находится чуточку не доходя максимума. Далее. Измерение знака ускорения производится много десятков раз раз за один оборот винта. Соответственно и реакция по изменению нагрузки происходит с этой же скоростью. Винт сместился всего на несколько сантиметров по окружности, а его уже измерили и изменили нагрузку. Весь отрезок мощности от нуля до 2500 ватт разбит на 256 частей. Пока что я не видел того, что вы описывали. А вот соответствие расчётным параметрам наблюдается. Я не считаю свой алгоритм идеальным или самым правильным, но он реально работает в железе и даёт совершенно реальную энергию.
Что касается порывов - забудьте мечтать об их утилизации. Это не тот ветер, от которого можно что-то взять, кроме вибраций.
Александр вне форума   Ответить с цитированием
Старый 19.11.2012, 16:53   #158
BenGunn
VIP
 
Регистрация: 16.05.2012
Адрес: Пермь
Сообщений: 641
Вес репутации: 12
BenGunn на пути к лучшему
По умолчанию

Цитата:
Сообщение от Александр Посмотреть сообщение
Меняя шаг дискретизации, на одной и той же программе получаются очень разные результаты.
Александр, опишите, пожалуйста, как изменяются результаты, при изменении шага дискретизации.
BenGunn вне форума   Ответить с цитированием
Старый 19.11.2012, 19:37   #159
Александр
Администратор
 
Аватар для Александр
 
Регистрация: 25.02.2010
Адрес: Латвия, Сигулда
Сообщений: 820
Вес репутации: 10
Александр на пути к лучшему
По умолчанию

BenGunn, у меня получалось при слишком грубом шаге, что нагрузка успевала задавить винт и тот не мог выйти на расчётный режим. В результате винт был перегружен и мощность недобиралась. А при чрезмерно мелком шаге винт успевал разогнаться до скоростей выше расчётных, поскольку нагрузка отставала. Но если ветер оставался некоторое время стабильным, то контроллер мог подстроиться. Однако стабильность ветра вещь почти нереальная, особенно при малой высоте установки ветряка, поэтому, как правило, в этом случае также был ощутимый недобор по мощности. На быстро меняющемся ветре вообще очень сложно добиться полной утилизации энергии ветра, если вообще возможно.
Александр вне форума   Ответить с цитированием
Старый 19.11.2012, 20:29   #160
BenGunn
VIP
 
Регистрация: 16.05.2012
Адрес: Пермь
Сообщений: 641
Вес репутации: 12
BenGunn на пути к лучшему
По умолчанию

Цитата:
Сообщение от Александр Посмотреть сообщение
BenGunn, у меня получалось при слишком грубом шаге, что нагрузка успевала задавить винт и тот не мог выйти на расчётный режим. В результате винт был перегружен и мощность недобиралась. А при чрезмерно мелком шаге винт успевал разогнаться до скоростей выше расчётных, поскольку нагрузка отставала.
Это один в один случаи 4 и 2, которые я описал выше.

Цитата:
Сообщение от Александр Посмотреть сообщение
Но если ветер оставался некоторое время стабильным, то контроллер мог подстроиться.
Тут видимо я не до конца понял работу вашего контроллера, при попадании ветряка в точку равенства мощностей.

Цитата:
Сообщение от Александр Посмотреть сообщение
На быстро меняющемся ветре вообще очень сложно добиться полной утилизации энергии ветра, если вообще возможно.
Вот это как раз самая интересная задача. Я думаю для её решения надо
1) Делать винт максимально легким, для уменьшения его момента инерции.
2) Усложнять алгоритм поиск оптимальной точки. Или вводить элемент самообучения, который будет заключаться в автоматическом подборе оптимального шага дискретизации. Или делать алгоритм градиентного поиска оптимальной точки.

Александр, насколько сложные программы может выполнять микроконтроллер?
BenGunn вне форума   Ответить с цитированием
Ответ


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

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

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

Яндекс.Метрика Рейтинг@Mail.ru Индекс цитирования
Flag Counter

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


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