Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MatLAB.docx
Скачиваний:
58
Добавлен:
01.05.2015
Размер:
334.38 Кб
Скачать

5.2.10 User-Defined Functions (Пайдаланушымен анықталған функциялар) блогы

а) Fсn блогы – универсалды «есептеу» блогы.

Блоктың параметрі ретінде аргументі кірістегі сигнал мәні болатын кез-келген есептелетін өрнекті енгізуге болады.  Өрнектің аргументі тіке көрсетілу керек, кірудегі сигнал үшін и символы қолданылады. Егер де кірудегі сигнал вектор болса, оның элементтері и(1), и(2) ... деп белгіленеді. Мысалы, кірудегі сигналдың екі элементін қосу өрнек келесідей жазылады: и(1)+и(2).

Ескерту - Есептелінетін өрнектің мәні скаляр болуы керек. Бұл шектеуден құтылу үшін MATLAB Fen блогын қолдану қажет;

б) MATLAB Fen блогы кірістегі сигналға М-файл ретінде дайындалған кез-келген өңдеу бағдарламаны қолдануға мүмкіндік береді. Ол бағдарлама MATLAB пакетінің библиотекасының функциясы немесе S-үлгіні өңдеушімен жасалған бағдарлама болуы мүмкін.

Бірінші жағыдайда MATLAB Fen блогын қолдану Fen блогын қолданғандай. Есептелінетін өрнек MATLAB function терезесіне енгізіледі. Егер де өрнекте тек қана библиотека функциясы қолданылса, оның аргументін көрсетпеуге де болады. Мысалы кірудегі шаманың түбір астындағы мәнін есептеу үшін тек қана sqrt функцияның атын енгізуге болады.

MATLAB Fen функцияның екінші, маңызды, ерекшелігі – оның екінші Outputwidth (Шығу сигналдың ені) деген параметрі бар. Басқа сөзбен айтқанда блок шығысында скаляр емес векторда болуы мүмкін. Ол вектордың элементтер саны Output width параметрінің мәніне тең.

 

5.2.11 Additional Extras (Библиотеканың қосымша блоктары)

Алдынғы бөліктерде қарастырылған блоктар Simulink пакетінің негізгі блоктары, библиотека терезесі ашылғанда, курсор осы жолда тұрады. Additional Extras қосымшада алты бөлігі бар:

а) Additional Sinks (Sinks бөлігіне қосымша) - қосымша графикалық «қарайтын» терезелерден тұрады; олардығң төртеуі сигналдардың спектрлік талдауының визуализациясын қамтамасыздандырады, тағы екеуі – сигналдардың корреляциялық сипаттамаларын көрсетеді, бұл блоктарды пайдалану үшін пакет конфигурациясына сигналдарды өңдеу инструменталдық құрылғыларын  (Signal Processing Toolbox) қосу қажет;

б) Additional Linear (Linear бөлігіне қосымша)  библиотеканың бұл бөлігіндегі блоктар автоматты басқару сызықты жүйелерінің сипаттамаларын есептеуге негізделген;

в) Transformations (Түрлендірулер) – сандық шамаларға әртүрлі түрлендіруді қолдануға мүмкіндік береді:  

координаталарды – төртбұрышты жүйеден полярлық немесе сфералық координаттар жүйесіне;

температурыны – Фаренгейт шкаласынан Цельсий шкаласына және  керісінше;

бұрыштарды – градус бірлігінен радианға және кері қарай;

г) Flip Flop (Триггерлер) – триггердердің негізгі типтерін (D-триггер, 5-R- тpиггep, J-K-триггер) үлгілеуге мүмкіндік береді;

д) Linearization (Сызықтандыру)  бөліктегі блок кіру сигналының уақыт бойынша туындысын есептеуге мүмкіндік береді.  

 

5.3 Блок-диаграммаларды құрудың мысалдары

 

5.3.1 Мысалы. Үш кірісі бар және шығуындағы сигнал кіруіндегі сигналдардың көбімен бірдей болатын қиыстырылған сандық құрылғыны И-НЕ элементтерінде синтездеу қажет болсын. Құрылғының сөзбен айтылған жұмыс тәртібін келесі ақиқат кестесімен көрсетуге болады (1 кесте).

Үлгінің сұлбасын осы кесте бойынша құрастырайық (5.1 – суреті):

-                    үлгі  терезесінде кірістегі үш сигнал үшін үш Constant блогын орнатыңыз;

- берілген ақиқат кесте бойынша кірудегі сигналды түрлендіруді

 

 

1 кесте

Жиынтық номері

         X3

X2

X1

y

1

2

3

4

5

6

7

8

0

0

0

0

1

1

1

1

0

0

1

1

0

0

1

1

0

1

0

1

0

1

0

1

0

0

0

1

0

1

1

1

 

Combinatorial Logic блогы қаматамасыз етеді. Бұл блоктың кірісіне тек қана жалғыз сигнал берілуі мүмкін, сондықтан барлық кірістерді біріктіру үшін Mux блогын қолданамыз. Combinatorial Logic блогының жалғыз Truth table (Ақиқат кесте) параметрі бар, бұл параметр құрылғының мүмкін болатын шығу мәндерінің тізімін көрсетеді (параметрді қалпына келтіру 5.2 - суретте көрсетілген).

 5.1 - сурет. Ақиқат кесте негізінде жасалған сандық құрылғының үлгісі

 

 

5.2    – сурет. Combinatorial Logic блокты қалпына келтіру

Кестені құрастырғанда келесі екі негізгі ережені сақтау қажет:  

a)                      кесте жатық жолдарының саны 2n-ге тең болуы керек, п –кірудегі сигналдың элементтерінің саны (өлшемі);  

б) кестенің кірістері берілген деп есептелінеді.

Тудырылған шығудағы сигналды Display блогына шығарыңыз.

        Енді үлгінің жұмысын имитациялаңыз. Х1, Х2, Х3 константаларға ақиқат кесте бойынша әртүрлі мәндерді беріп, үлгіні жұмысқа қосамыз. Ол үшін Simulation менюден Start бұйрығын таңдаңыз немесе инструменттер панелінде Start Simulatin батырмасын басыңыз. Үлгі жұмысының нәтижесі яғни сандық құрылғының шығуында туатын сигнал «дисплейде» көрсетіледі. Үлгі дұрыс құрылған болса, кірудегі сигналдың бірдей мәндер жиынтығы үшін «дисплейдегі» мән кестедегі мәнмен бірдей болуы керек. Кері жағдайда Combinatorial Logic параметрлері дұрыс орнатылмаған болуы мүмкін.

Қиыстырылған сандық құрылғыны жасағанда әдетте аппараттық шығындарды минималдау қажет болады. Есептің шартын құрылғыны И-НЕ элементтерін қолданып синтездеу, орындау үшін  үлгілеуге логика алгебрасынан белгілі жетілдірген нормалы формаларды, мысалы,  жетілдірген нормалы дизъюнктивті форманы қолданамыз. Жетілдірген дизъюнктивті нормалы формада ақиқат кестені келесі  формуламен жазуға болады

                                                (1)

         Логика алгебрасынан белгілі түрлендірулерін қолданып келесіні аламыз

     

Ал, минималдау ережелері бойынша келесі шығады:

                                                            (2)

         Осы (1) және (2) формулалар негізінде үлгіні жасау үшін логикалық операциялар (Logical Operator) блоктары қолданылады (5.3, 5.4  - суреттері).

                 

  

5.3 – сурет. Жетілдірген дизъюнктивті нормалы формуласы негізінде құрастырылған сандық құрылғының үлгісі

            

5.4 – сурет. И-НЕ элементтерін қолданып құрастырылған сандық құрылғының үлгісі

Құрастырған үлгілердің жұмысын әртүрлі кірудегі сигналдар үшін тексереміз. Егер де шығудағы сигналдар кестедегі мәндермен бірдей болмаса (бірдей кірудегі сигналдар жиынтықтары үшін), онда сұлбаның қатесі бар, яғни оны жөндеу керек.

5.3.2 Мысалы. MatLab жүйесінің құрамындағы SimuLink пакетінде асинхронды вентильды каскад (АВК) сұлбасындағы асинхронды двигательді зерттеуге болады. ЭиАПУ кафедрасында АВК-ың құрамдық және электрлік имитациялық үлгілері өңделген[1]. Осы үлгілерде тәжірибелер сериясын орындап объект сипаттамаларын (басқару кернеуінің шамасының және жүктеменің өтпелі процестерге әсерін, тұрақталған параметрлердің берілген шамалармен сәйкестігін, т.б.) алуға болады. 5.5 - суретте АВК-ың құрамдық сұлбасының имитациялық үлгісі келтерілген. Сұлба тізбектеліп қосылған түйіндерден тұрады, түйіндерге беріліс функциялар енгізілген.

5.3.3 Мысалы. Сұйықтығы бар бакты қарастырайық. Бұл объектінің тәуелсіз Gin (t)  кірудегі сұйықтық ағыны және тәуелді Gout (t)  шығу ағыны бар. Шығу ағынының шамасы бактің төгу үшін арналған тесіктің f қимасымен бактегі сұйықтықтың H деңгейінен тәуелді. Бактагы сұйықтық мөлшері M = FHρ, мұнда F – бак табанының ауданы, ρ – сұйықтық тығыздылығы. Біздер бактегі деңгейдің уақыт бойынша өзгеруін зерттегіміз келеді. Әуелі осы процесс үшін математикалық үлгісін құрастырайық.

Зат мөлшерін сақтау заңын қолданып келесі дифференциалдық теңдеуді жазамыз

Сонымен бірге, қозғалыс мөлшерін сақтау заңын бейнелейтін гидродинамикадан белгілі өрнекті аламыз:

        

 

 

 

 

 

 

 

 

 

 

 

 


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Соңғы теңдеуді алдындағы теңдеуге қойып, түрлендіріп, келесі деңгейдің өзгеруін сипаттайтын дифференциалды теңдеуге келеміз

 

Енді айтылған Н шаманың өзгеруінің динамикасын осы теңдеу бойынша зерттеу үшін үлгінің блок-диаграммасын құрастырайық. Блок-диаграмма 5.6 суретте келтірілген.  Диаграмманы қарапайымдылау үшін кірудегі ағын тұрақты деп алынған және үлгі коэффициенттері алдын-ала есептелген. Әрине, басқа жолмен де барлық айнымалыларды есептеу блоктардың әр түрлісін қолданып үлгіні жасауға болар еді. Блок-диаграмманы құрғанда әуелі дифференциалдық теңдеудің оң жағындағы өрнекке сұлба жасалады, бұл арада есептеулер өткізу үшін Simulink-тің Fcn блоктары қолданылған, содан кейін алынған шама интегратор кірісіне беріледі. Интегратор шығуындағы шама қайтадан үлгі кірісіне беріледі (бұл шарт дифференциалдық теңдеулерді есептеу әдістерімен байланысты). Интегратордың параметрлерін қалпына келтіретін терезеде Initial condition source (Бастапқы шарттың көзі) жолында external (сыртқы) дегенді таңдасақ, интегратордың кірісінде тағы бір кіру порты пайда болады, оған бастапқы мәннің көзін (мысалы, константаны) қосуға болады. Біздің диаграммада бұл параметр үшін internal(ішкі) деген таңдалынған, сондықтан қосымша порт жоқ. Scope блогы (аты Н деп белгіленген) деңгейдің өзгеруін қарап отыруға мүмкіндік береді.

5.6 – сурет. Бак деңгейнің өзгеру процесінің блок-диаграммасы

 

Жасалынған үлгінің шығудағы айнымалысының (деңгейдің) динамикасын 5.7 - суретте көруге болады.

5.3.4 мысалы. Ішкі жүйелер Subsystem блогын қолдануды келесі мысалда қарастырайық. Котлоагрегат топкасындағы (жинақталған параметрлері бар объект) динамикалық процестердің үлгісі қарапайым дифференциалдық теңдеулер жүйесімен бейнеленеді[2]. Осы жүйенің шешімі газдар мен ластану қабаттарының температураларының уақыт бойынша өзгеру заңын береді, олар отын жағу процесін реттеуге қолданылады.

5.7 – сурет. Шығудағы айнымалының динамикасы

 

Есепті келесі түрде қарастырайық: отын шығындарының, ауа температурасының, ластану массаларының әр түрлі мәндері үшін газдар және ластану қабаттарының температураларының өзгеруін тауып, осы өзгерулердің жылытылатын беттердің температурасына әсерін анықтау қажет болсын.  Әдетте осы шамалардың қосымша отын берілгенде немесе ауа температурасы номиналды мәндерден ауытып кеткенде өзгеруін табу қажет болады. Сондықтан жағу камераның сызықтандырылған математикалық үлгісін қарастыруға болады

Мұнда

∆t – газдар температурасы,

 ∆t1 – ластану қабаттарының температурасы,

∆Bp – ауа шығыны,

∆tB – ауа температурасы,

τ - уақыт,

(a1-a6)  – үлгінің есептелген коэффициентері.

Үлгінің құрамдық схемасы 5.8 - суретте келтірілген.

Диаграмманы ыңғайландыру мақсатымен жүйенің әр теңдеуінің оң жақтағы өрнектерін есептеу блоктарын ішкі жүйе ретінде құрастырамыз(Subsystem блогы). Integrator блоктары интегралдауды өткізеді, бұл блоктың кірісіне Constant блок арқылы бастапқы мән беріледі. Subsystemблоктарында үлгінің коэффициенттерін және газ бен шлактардың ағынды температураларын есептеуге Fcn блоктары қолданылады. Сырттағы мәліметтерді Subsystem блогына беру үшін In блоктарын, ал блоктан мәліметтерді сыртқа беру үшін Out блоктарын қолданамыз. Scope блоктары зерттеушіге қажетті жүйенің сипаттамаларын бақылауға мүмкіндек береді.

 

5.8 – сурет. Subsystem блоктарын пайдалану

 

 

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]