Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Void ShowValue(void)

Друзья

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

XORWF

X0RLW


Побитное 'исключающее ИЛИ' константы и W


 


Синтаксис: Операнды: Операция: Измен, флаги: Код:

Описание:

Слов:

Циклов:

Пример:


[label] I0RLW

О < к < 255

(W).XOR. к -»(W)

 

    кккк кккк

Выполняется побитное 'исключающее ИЛИ' содержимого

регистра W и 8-разрядной константы 'к'. Результат

сохраняется в регистре W.

XORLW 0x35

До выполнения команды

W = 0xAF После выполнения команды

W = 0x1A


 


Синтаксис: Операнды:

Операция: Измен, флаги: Код:

Описание:

Слов:

Циклов:

Пример:


Побитное 'исключающее ИЛИ' W и f

f,d

[label] XORWF О < f <127

de [0,1]

(W).XOR. (f) -»(dest)

Z

 

    dfff ffff

Выполняется побитное 'исключающее ИЛИ' содержимого

регистров W и 'f. Если d=0, результат сохраняется в

регистре W. Если d=1, результат сохраняется в регистре

•Г.

XORWF REG.1

До выполнения команды

REG = OxAF

W = 0хВ5 После выполнения команды

REG = 0x1 А

W = 0хВ5

Следует, однако, отметить, что на практике использовать полученный энергетический критерий (3.2) не представляется возможным. Это связано с тем, что энергия является функцией одновременно нескольких параметров. Поэтому в практических расчетах используют критерии, оперирующие не с полной энергией, а с зависящими от нее величинами, выявляемыми из практических соображений.

 

3.2 Практические критерии статической устойчивости электрической системы

 

Практическими критериями статической устойчивости пользуются при так называемой позиционной идеализации электрической системы. При этом допускается, что все параметры режима и самой системы зависят только от ее данного положения (позиции ротора генератора), т.е. пренебрегается различным влиянием на эти параметры переходных процессов.

 

3.2.1 Прямой практический критерий статической устойчивости электрической системы

 

Рассмотрим простейшую электрическую систему (рис.2.1). Предполагаем, что в этой системе параметром П, от которого зависит изменение режима и по которому должна проверяться устойчивость, будет угол . От общего энергетического критерия можно получить критерий, оперирующий с активной мощность, которая зависит от угла .

или .

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

. (3.3)

Критерию (3.3) можно дать простую физическую трактовку. В устойчивых режимах при случайном малом отклонении угла на величину (возмущение режима) появляются отличия электромеханического (тормозящего) момента от механического (вращающего) и отклонившийся на в любом направлении ротор возвращается в исходное (устойчивое) состояние.

Докажем это с помощью угловой характеристики мощности (рис.3.1). Установившийся режим возможен либо в точке 1, либо в точке 2, в которых мощности генератора P и турбины Р Т уравновешивают друг друга.

Рассмотрив режим работы в точке 1. Если допустить, что угол получает положитель-ное приращение , то мощность генератора, следуя синусоидальной зависимости также изменится (увеличится) на некоторую величину . Причем, как выте-кает из рис.3.1, положительному при-ращению угла соответ-ствует положительное приращение мощности. Мощность турбины не завис от угла и поэтому остается постоянной. Утверждение, что мощность зависит только от угла в данный момент времени и не зависит от того как этот угол был достигнут, и означает допущение позиционности системы. В результате изменения мощности генератора баланс моментов нарушается и на валу машины возникает избыточный момент тормозящего характера, поскольку тормозящий момент генератора преобладает над вращающим моментом турбины. Под влиянием тормозящего момента вращения ротора генератора начинает замедляться, что обуславливает уменьшение угла . В результате этого уменьшения угла вновь восстанавливается исходный режим работы в точке 1. К такому же выводу можно прийти, если проанализировать отрицательное приращение угла для точки 1. Следовательно, режим работы в точке 1 должен быть признанный как устойчивый.

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

. Переходя к пределу, имеем прямой практический критерий СУ ЭС:

.(3.4)

Полученный критерий подтверждает, ранее полученный (3.3).

Полученный критерий используется для определения предела передаваемой мощности. Граничный режим наступает при условии . Из этого условия определяется значение угла, при котором наступает экстремальное значение функции, а затем и само максимальное (предельное) значение передаваемой мощности.

 

3.2.2 Косвенные (вторичные) критерии статической устойчивости

 

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

Рассматривая вместо полной энергии в (3.2) реактивную мощность Q, а определяющий ее параметр U, получим следующий косвенный практический критерий статической устойчивости электрической системы, представленной на рис.3.2.

или . (3.5)

 

Особенностью рассматриваемой системы является наличие общей точки для всех генерирующих и нагрузочных ветвей. Поясним записанный критерий с помощью характеристик , представленных на рис.3.3. На этом рисунке изображены характеристики генерирующих источников, нагрузок. Графически определив избыточную реактивную мощность и продифференцировав ее, получим всю область значений напряжений при которых система будет работать статически устойчиво. Это область напряжений больших критического (), при которых выполняется условие (3.5).

При полученных характеристиках установившийся режим возможен в точке 1 при напряжении U1 или точке 2 при U2. Применения критерия (3.5) позволяет утверждать, что устойчивым режим может быть только в точке 2. Докажем это с точки на основе энергетической трактовки. Если при работе системы в точке 2 уменьшить напряжение на величину (например путем подключения к нагрузке индуктивной проводимости), то баланс реактивных мощностей нарушается. При этом генерируемая мощность оказывается больше, чем нагрузка, которая при этом напряжении необходима нагрузке, т.е. в системе возникает избыток реактивной мощности. Следовательно напряжение в узле должно увеличиться и вернуться к исходному значению U1. При увеличении напряжения в системе возникнет нехватка реактивной мощности, что приведет к снижению напряжения в узле вновь до значения U1. Следовательно, режим работы в точке 2 действительно статически устойчивый.

Если же исходный режим существовал в точке 1, то увеличение напряжения на величину вызывает возникновение избытка реактивной мощности, вследствие чего напряжение в узле будет увеличиваться. Таким образом, режим в этой точке неустойчивый и следовательно в качестве вторичного критерия статической устойчивости может быть использовано условие (3.5).

Рассмотрим теперь практическое применение этого критерия. Косвенный критерий (3.5) применяется для определения критического напряжения в узле . Для создания режима при напряжении U 3, которое меньше, чем U 2, но больше , необходимо выработать меньше реактивной мощности, чем в точке 2 (рис.3.6). Это обеспечивается снижением тока возбуждения на генератора, а следовательно и их ЭДС. Снижению ЭДС генераторов соответствует смещение характеристики генерируемой реактивной мощности параллельно самой себе. Таким образом, перемещая характеристику генерируемой мощности до отыскания точки касания с характеристикой нагрузки, и определяют значение критического напряжения.

Рассмотрим теперь систему, приведенную на рис.3.7.

Будем рассматривать случай, когда нагрузка представлена своими статическими характеристиками. Предположим, что изменение режима вызывается изменением ЭДС генератора или напряжения на шинах нагрузки при неизменной активной мощности.

 
 

Найдем производную . Воспользуемся для этого выражением угловой характеристики, например, нерегулируемого неявнополюсного генератора. Тогда получим:

. (3.6)

При . Видно, что при . Запишем выражение для реактивной мощности:

 

. (3.7)

 

Если , то и . Тогда

 

. (3.8)

Поскольку при , то

 

. (3.9)

Напряжение на шинах нагрузки можно выразить через ЭДС системы:

 

. (3.10)

Продифференцировав (3.10) по E, получим

. (3.11)

С учетом (3.9) получим условие критического режима , и следовательно . Отсюда следует критерий статической устойчивости:

. (3.12)

 

Одно из основных преимуществ ООП — инкапсуляция данных в классе.

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

В C++ можно обойти правила инкапсуляции с помощью друзей.

хотя при этом вы рискуете благополучием вашей программы. Объявление друзей класса подобно вручению приятелю дубликатов ключей от вашей квартиры, И если вы удалились на уик­энд, не удивляйтесь, когда, вернувшись, вы увидите, что ваш знакомый прикор­нул на диване, а холодильник основательно выпотрошен.

Классы в C++ позволяют объявлять два вида друзей.

Один класс как единое целое может быть другом другого класса, или же другом может объявляться только одна функция.

Если друзья имеют брата-близнёца в C++, так это оператор goto. Подобно goto, друзья позволяют вам пренебречь правилами, призванными помочь вам написать надежный код. Не подумайте, что следующий раздел поощряет использование друзей.

Асы в программировании на C++ пользуются друзьями только в случае крайней необходимости.

Дружественные классы

В классе можно объявить другой класс дружественным. Один класс (в котором объявляется друг) дает другому классу (другу) возможность доступа ко всем закрытым и защищенным членам первого класса.

Открытые члены всегда доступны,

т.о., не надо объявлять один класс другом другого, чтобы дать ему доступ к открытым членам последнего.

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

 

Пример: объявили следующий класс:

class AClass { private:

double value;

// Закрытый член класса

public:

AClass() { value = 3.14159; }

};

в классе не предусмотрены средства

просмотра значения value объекта

класса. Закрытый член находится

в полной безопасности

Класс AClass содержит один закрытый член value типа double. Конструктор класса присваивает этому чле­ну значение 3.14159. За исключением этого действия, в классе не предусмотрены даже средства просмотра значения value объекта класса. Закрытый член находится в полной безопасности, как медвежонок под защи­той мамаши-медведицы.

Далее, предположим, что объявили еще один класс, содержащий членом объект класса AClass:

class BClass { private:

AClass anObject;

// член объекта класса AClass

// закрыт в классе BClass

public:

{ cout << anObject.value; }//???

// объявление не скомпилируется, //т.к. член value закрыт в классе //AClass и только функции-члены //AClass имеют к нему доступ.

 

Член anObject типа AClass закрыт в классе BClass. Функция-член ShowValueO пытается отобразить value из anObject. Однако объявление не скомпилируется, поскольку член value закрыт в классе AClass и только функции-члены AClass имеют к нему доступ.

Замена в классе AClass спецификатора доступа private на protected для члена value не решает проблему. Защищенный член доступен в классе, в котором он объявлен, и в любых производных из него классах. Не­смотря на то что класс BClass обладает объектом типа AClass, два этих класса не связаны между собой отно­шением родства, и члены BClass не имеют доступа к закрытым и защищенным членам AClass.

Можно сделать член value

открытым в классе AClass, но это сделает value доступным и во всех операторах.

Лучшее решение — сделать класс BClass другом класса AClass. Объекты BClass будут иметь доступ к value и всем другим закрытым и защищенным членам, а операторы вне двух классов будут лишены возможно­сти доступа к запрещенным частям класса.

Для этого следует указать ключевое слово friend внутри класса, к которому необходимо получить доступ в другом классе.

В данном примере класс BClass получит доступ к за­крытому члену value внутри AClass. Таким образом, для того, чтобы класс BClass получил доступ к этим за­крытым данным в классе AClass, следует первый класс объявить дружественным второму.

Пример: новое объявле­ние класса AClass:

class AClass {

friend class BClass;

//класс BClass – друг класса AClass

private:

double value;

//доступен членам классов AClass и BClass

public:

AClass() { value = 3.14159;}

};

Единственное отличие от предыдущего объявления — строка friend class BClass, дающая указание компи­лятору предоставить классу BClass доступ к защищенным и закрытым членам класса AClass. Другие операто­ры в других классах и в основной программе, как и раньше, не имеют доступа к объявленным закрытыми и защищенными членам класса AClass.

Только BClass может частным образом проникнуть в закрытую "комнату" AClass.

Можно объявить любое число классов друзьями. Единственное ограничение — ключевое слово friend д.б. внутри объявления класса.

 

Полезно запомнить еще некоторые факты.

• В классе д.б. перечислены все его друзья.

• Класс, в котором содержатся закрытые и защищенные данные и в котором другой класс объявлен другом, дает этому другу специальный доступ к обычно скрытым членам объявленного класса. Класс никогда не может объявить сам себя другом другого класса.

• Дружественный класс может объявляться до или после класса, которому он друг. Порядок объявлений не играет роли, однако обычно дружественные классы объявляются последними, чтобы встраиваемые функции класса могли обращаться к закрытым или защищенным частям другого класса.

• Производные от дружественных классы не наследуют специального доступа к первоначально закрытым и защищенным членам исходного класса. Только специально заданные классы-друзья имеют на это разрешение.

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

 

Взаимно дружественные классы

Два класса могут объявить себя друзьями, предоставив одному классу доступ к закрытым и защищенным членам другого класса. Это также устранит барьеры, препятствующие доступу к скрытым членам класса.

Часто возникающая необходимость объявления одних классов друзьями других свидетельствует о пло­хо продуманной иерархии классов. Лучше, чтобы как можно больше классов были друг другу "чужаками".

Чтобы два класса стали взаимно

дружественными, в каждом из классов следует указать другой дружест­венным, что предоставит доступ каждому из них к закрытым и защищенным членам другого класса. Пример: Чтобы AClass и BClass стали взаимно дружественными, их следует объявить таким образом:

// предварительное неполное

//объявление класса

class BClass;

class AClass {

friend class BClass;

};

class BClass {

friend class AClass;

};

Все функции-члены в каждом из классов теперь имеют доступ к закрытым и защищенным членам объекта другого класса.

Если в первом классе имеется ссылка по имени на второй класс, например в параметре функ­ции-члена, то может понадобиться предварительное неполное объявление класса, как это сделано в данном случае для BClass. Это позволит в AClass объявлять данные-члены и параметры функций-членов типа BClass несмотря на то, что полное объявление BClass следует позже.

 

<== предыдущая лекция | следующая лекция ==>
Поменять местами полубайты в регистре f | 
Поделиться с друзьями:


Дата добавления: 2014-01-11; Просмотров: 379; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.