Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МУ Прог ЦТ лаб_каз_2012_последн вариант.doc
Скачиваний:
18
Добавлен:
01.05.2015
Размер:
4.19 Mб
Скачать

5.3 Жұмыс тақырыбы бойынша қысқаша теориялық ақпарат

Өндірісте газ технологиялық қондырғыға қысыммен беріледі. Қысым құбырда өзгереді, бірақ газдың шығынын қажетті мәнде тұрақты ұстап тұру керек. Газ қысымы P, жабыннан кейін датчик көмегімен өлшенеді, ал мәліметтер микробақылауышқа беріледі. Газ шығыны (көлемі) V=KSQRT(P) формуласымен анықталады. Мұнда K газ қасиеттеріне байланысты коэффициент. Қысым төмендегенде Vраб газ шығынын ұстап тұру үшін құбырдағы жабынды МЭО орындаушы механизм көмегімен кішкене ашу керек («Bolshe» бағыты). МЭО-ға импульс беру 1-2 секунд алады.Қысым үлкейгенде жабын жабылады («Menshe» бағыты), сонымен газ беруді азайтады. Бұл әрекеттер МЭО-ға әртүрлі полярлы импульстарды беру арқылы орындалады. Бір уақыттан кейін қысым қайта өлшенеді де газ беруді түзету қайта орындалады, осылай газдың қажетті бір мәнін ұстап тұру іске асырылады.

Есептеулерді қарапайым қылу үшін квадрат түбірдің бүтін мәндерімен шектелейік, мұнда өзінің шын мәнінен үлкен болуы мүмкін. Түбірастын есептеу үшін N бүтін санының квадратын қатар көмегімен алу алгоритмін қолданайық:

N2=1+3+5+7+9…Қосылғыштар саны N санына тең;

N=5 үшін алатынымыз52=1+3+5+7+9=25.

Егер қысым Р=30 болса,онда біз қосынды жинақтаймыз,қосылғыштардың қосындысы 30-дан асқанға дейін қосамыз. Яғни түбірдің бүтін мәнін 6 деп аламыз. K=4 дейік, онда газ шығыны V=6×4=24. Егер Q=20 шығыны қажет болса, онда жабынды «Menshe» бағытында жабу керек. Егер Q=28 шығыны қажет болса, онда жабынды «Bolshe» бағытында ашу керек [1, 2, 3, 4].

5.4 Бақылау сұрақтары

  1. Ішкі программаны шақыру. Негізгі программаға ол нені береді?

  2. Ішкі программа қайда, қалай жазылады?

  3. Ішкі программаны шақырғанда және одан қайтқан кездегі команадалар санағышының жұмысы?

  4. Бүтін сандарды квадратқа шығару алгоритмі.

  5. Түбірдің жуық және бүтін мәні қалай есептеледі?

  6. МЭО қызметі. Ол қалай жұмыс істейді?

  7. Қай кезде Z немесеСбірге тең?

  8. Қай кезде Z, Сбірдей бірге тең?

  9. Сандарды салыстыру қалай орындалады?

  10. «В» және«М» латын әріптерінің кодтары қалай қолданылады?

6 Зертханалық жұмыс. Клавиатураны программалау

Жұмыс мақсаты: мәліметтерді клавиатура арқылы енгізу программасын құру.

6.1 Зертханалық жұмыс тапсырмасы және берілгендер

Жобалауға тапсырма. №3 зертханалық жұмыста жасалған бояу камерасын автоматтандыру программасында әрбір детальды бояуды «Пуск»батырмасымен жіберу және «Стоп»батырмасымен тоқтату (ол әрекеттерді камера жанындағы батырма немесе оператор пультынан орындауға болады).

Клавиатура контакттарының «дребезгі» Timerішкі программасын кішкене уақытқа қосу арқылы жойылады.Бұл программада Stop кнопкасыTimer ішкі программасында орналасқан.

Л6 программасы №3 зертханалық жұмыс негізінде жазылады. Ол программаға қосылған командалар курсивпен келтірілген.

Л6 программасының фрагменті.

; PORTD кіріс/шығысқа орнату нұсқаулары

CLRF TRISC

MOVLW b'00001111' ; PORTD жұмысын.

MOVWF TRISD ; 0-3 биттерін кіріске, 4-7 шығысқа реттейміз.

BCF STATUS, 5

CLRF PORTC

; Программаның жұмысшы бөлігі

MOVLW B'11110000' ; клавиатураның К4-К7 аяқшаларына қорек

MOVWF PORTD ;кернеуін береміз.

MOVLW B'10000000'

MOVWF PORTC ;қорек кернеу бар екенін сигнализациямен көрсетеміз. Sled_det

BTFSS PORTD, 2 ; Pusk1(2)кнопкасы басылғанын тексереміз

GOTO Sled_det ;егер кнопка әлі де басылмаса тексеруді қайталаймыз.

BSF PORTC, 0 ; егер басылса S1 дыбыстық сигнализацияны қосамыз.

MOVLW d'40' ; S1 сигнализацияның жұмыс істеу уақытын береміз.

CALL Timer

MOVLW B'10001110'

MOVWF PORTC ; D1 және D2 қозғалтқышын, L1сигнализацияны қосамыз.

MOVLW d'60' ; D1 жұмыс істеу уақытын береміз.

CALL Timer

BCF PORTC, 2 ; D1 өшіреміз, D2, L1 және L2 жұмыс істей береді.

MOVLW d'20' ; L1 және вентилятордың жұмыс істеу уақытын береміз.

CALL Timer

MOVLW B'10000000'

MOVWF PORTC ; D2 вентилятор және L1 сигнализацияны өшіреміз.

MOVLW d’20’ ; детальды ауыстыруға кететін уақытты береміз.

CALL Timer

GOTO Sled_det ; қондырғыны қайта қосу үшін Sled_det белгісіне көшу.

GOTO $ ; ішкі программа мен негігі программаны бөлу.

Timer ; ішкі программада Stop кнопкасы бар ішкі цикл ғана көрсетілген.

M_in ; ішкі санағыштың белгісі.

BTFSC PORTD, 1; Stop1 және Stop2 кнопкасы басылғанын тексереміз.

GOTO Stop ; басылса, онда камераны тоқтату нұсқауына өту.

DECF Sch_in, F ; Sch_in санағыш мәнін 1-ге кемітеміз.

BTFSS STATUS, Z; егер Sch_in=0 болса (Z=1), GOTO-ды аттап кетеміз.

GOTO M_in ; Z=0 кезінде орындалады.

. . . .

RETURN

Stop CLRF PORTC ; бояу камерасының жұмысын тоқтату.

GOTO Sled_det ; немесе GOTO $ қою қажет

END