19
Құрылымның
блок-диаграммасында
мағлұматтар
ағымының
қайталанушы (циклдық) операцияларын атқару үшін операцияларды іске
асыруға және белгілі тәртіпте операцияларды атқаруға шарттар орнату
қажет. LabVIEW-нің бес құрылымы бар: шарт бойынша цикл (While),
итерациялардың бақыланған саны бар цикл (For), Нұсқа (Case) құрылымы,
Жалғасушылық (Sequence) құрылым, Оқиға (Event) құрылымы, сонымен
қатар формула түйіні (Formula Node).
While циклы немесе шарт бойынша цикл. Бұл цикл өзінің жұмысын
циклдан шығудағы логикалық шартты атқарудан соң жалғастырады.
Үлгі бойынша шарт терминалы келесі
түріне ие, ол циклдың
атқарылуының шығу шарты терминалына TRUE мәні келіп түскен кезде
тоқтатылатынын айтады. Мұндай жағдайда шығу шарты терминалы Stop If
True терминалы (Шындық жағдайында аялдау) деп аталатын болады.
Итерациялар есептеуішінің теминалы
атқарылған операциялар
санын көрсетеді. Осы терминалдың бастапқы мәні әрқашан нөлге тең.
Циклде шарты бойынша шығу шартын және шығу шарты
терминалындағы соған сәйкес келетін суретті
өзгерту мүмкіндігі бар.
Тінтуірдің оң жақ батырмасымен цикл шекарасы бойынша немесе шығу
шарты терминалы бойынша басып, контекст мәзірінен Continue If True
таңдау керек (Шындық жағдайында жалғастыру).
For циклы немесе итерациялардың бақыланған саны бойынша цикл.
Бұл цикл мағлұматтардың қайталанатын ағымдарымен бірнеше рет
операциялар өткізуге қызмет етеді.
For циклы Functions >> Structures палитрасында орналасқан.
Мағлұматтар ағымымен қайталанатын операциялардың жоғары мөлшері N
циклы итерациялары санының терминалға тағайындалған мәнімен
анықталады
.
Атқарылған
итерациялардың
саны
итерацияларды
есептеу
терминалында болады, олардың бастапқы мәні әрқашан нөлге тең.
Алдыңғы итерациялары мәндеріне қол жетімділікті ұйымдастыру.
Циклдармен жұмыс істеу барысында цикл итерацияларының алдыңғы
мәндеріне қол жетімділік қажеттілігі жиі туындайды. Мысалы, ВҚ
жағдайында графиктегі температураны өлшеу мен көрсету үшін,
температураның орта мәнін шығару үшін алдыңғы итерациялардан
алынған мәндерді пайдалану керек. Ол мағлұматтарға қол жеткізудің екі
әдісі бар: жылжымалы регистр (Shift Register) және кері байланыс түйіні
(Feedback Node).
Жылжымалы регистрлер. Циклдармен жұмыс істеу барысында
мәндерді циклдың ағымдық итерациясынан келесіге жіберу үшін
жылжымалы регистрлер пайдаланылады, олар бағдарламаландырудың
мәтіндік тілдеріндегі статикалық мағлұматтарға ұқсайды.
20
Жылжымалы регистр терминалдар жұбын
көрсетеді. Бұл
терминалдар цикл шекарасының бір біріне қарсы тік қатарларында
орналасқан. Оң жақ терминалда «жоғары» сызығы көрсетілген. Ағымдық
интерация аяқталғаннан соң сақталған мағлұматтар циклдың келесі
итерациясына жіберіледі.
Жылжымалы регистрді құру үшін тінтуірдің оң жақ пернесін цикл
шекарасы бойынша басып, мәзірден Add Shift Register таңдау керек
(Жылжымалы регистрді қосу).
Жылжымалы регистрді инициализациялау үшін циклдың сыртынан
оның сол жақ терминалына кез келген мәнді жіберу керек.
Егер жылжымалы регистрдің инициализациясын өткізбесе, онда ол
регистрге циклды атқару барысында жазылған немесе мағлұматтардың
осы түрі үшін үлгілі пайдаланылатын мәнді пайдаланатын болады.
LabVIEW циклы құрылымында бірнеше жылжымалы регистр құруға
болады. Бір циклда бірнеше операцияларды атқару барысында циклдың
түрлі операцияларын атқару нәтижесінде алынған мағлұматтарды сақтауға
арналған бірнеше терминалдары бар жылжымалы регистрді пайдаланған
жөн. 5.1 суретінде екі инициализацияланған жылжымалы регистрді
пайдалану үлгісі көрсетілген.
5.1 сурет - For циклында жылжымалы регистрлерді пайдалану
Кері байланыс түйіндері. Кері байланыс түйіндері
,
автоматты түрде For немесе While циклдарында осы функциялардың, ВҚ
еншілес бағдарламаларын енгізу жолын байланыстыру барысында пайда
болады. Жылжымалы регистрге ұқсас түрде кері байланыс түйіні ағымдық
итерация аяқталған кезде кез келген түрдегі мағлұматтарды сақтап, оларды
келесі итерацияға жібереді. Кері байланыс түйіндерін пайдалану
өткізгіштік мағлұматтар мен байланыстардың санын азайту мүмкіндігін
береді.
Кері байланыс түйінін For циклының немесе While циклының ішіне
орналастыру үшін «Кері байланыс түйіні» (Feedback Node) пәрменін
Құрылымдар (Structures) палитрасынан таңдау керек.
21
Егер кері байланыс түйінін циклдың шығу терминалына мағлұматтар
жіберетін мағлұматтардың өткізгіштеріне орналастырса, онда ол барлық
мәндерді циклдың шығу терминалына жіберетін болады.
Егер кері байланыс түйінін циклдың шығу терминалына мағлұматтар
жіберетін мағлұматтардың өткізгіштеріне орналастырса, онда ол барлық
мәндерді ВҚ мағлұматтар енгізу жолына немесе функцияларға жіберетін
болады.
Case таңдау құрылымы. Case таңдау құрылымы екі немесе одан
артық құрылымдалған блок-диаграммаға ие. Осы құрылымның кірмесіне
берілген мәндерге тәуелді түрде блок-диаграмма мағлұматтарының
біреуінің таңдауы жасалады. Case құрылымы өз құрамына енгізеді:
- «?» таңдау терминалы. Таңдау терминалына логикалық, тұтас
сандық немесе қатарлы мәнді жіберуге болады.
- блок-сызбалардың сөндіргіші (True \ False \ және т.б.) бір блок-
сызбадан басқасына өтуді іске асыруға арналған. Үлгі бойынша блок-
сызбалардың сөндіргіші екі терезеге ие - True және False. Таңдау блок-
сызбаларының саны қажет болған жағдайда көбейтіле алады.
True және False басқа, сөндіргіштің мәндері ретінде қатарлы мәндер
немесе толық сандар пайдаланыла алады могут.
Case құрылымын Select функциясының орнына пайдалану мысалы
ретінде АҚ өзгертілген Термометр блок-диаграммасы келтірілген. TRUE
логикалық нұсқасы Case құрылымының алдыңғы қатарында көрсетілген
(5.2, а сурет).
а)
б)