Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
diplom kz Микроконтроллер құрылғыларының.docx
Скачиваний:
57
Добавлен:
17.02.2016
Размер:
5.05 Mб
Скачать

2.3 Программа түзеуші кешен арқылы микроконтроллер құрылғыларын программалау

Программалық құралдар және әзірлеу жүйелері

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

Жоғарыда айтылған сөз аспапты құралдарды әзірлеуге де тиісті. Бірақ кейбір әзірлеу жүйелері бізге бұрыннан таныс персональді компьютерлерде және жұмыс станцияларында жұмыс істемейді. Алайда қазіргі кезде көптеген жүйелердің эмуляторлары бар, олар басқа операциондық жүйелерде және бөгде платформаларда жазылған программаларды іске қосуға мүмкіндік береді.

Егер дербес компьютерді эмуляциялайтын жүйе қолданылса, онда қолдануға жопарланатын программатор мен эмулятор қосымшамен жұмыс жасайтындығына көз жеткізу крек. Егер бәрі жақсы жұмыс істеп тұрса да, windows 3.11, 95 немесе NT де жұмыс істей алатын арзан дербес компьютерді сатып алған дұрыс, және одан программатор/эмуляторды іске қосуға болады. Көптеген әзірлеу құралдары «wmtel» платформасына арналып жасалған, ол аспапты бірге жұмыс жасайтын құралдарды таңдауды оңайлатады.

Құралдар және оның қол жетімділігі

Мүмкін бұл екеуі қосымшаға арналған микроконтроллерді таңдау кезінде ескеру керек ең маңызды аспект болып табылады. Егер біреу «кіршіксіз» микроконтроллерді тауып бірақ жабдықтаушыны немесе бұл құрылғыны қалай программалау керек екенін көрсететін адамды таппаса, ол жөнінде мазасызданудың қажеті жоқ, себебі ондай жиі болып тұрады.

Көптеген өндірушілер спецификалық қосымшалар үшін микроконтроллердің аз санын шығарады. Мұндай құрылғылар каталогта көрсетіледі, бірақ олар дистрибьютерларда ешқашан болмайды. Көптеген дистрибьютерлердің интернетте өздерінің Web-парақшалары бар, әркім оған кіріп белгілі бір микроконтроллердің бар болуын оңай және тез біле алады. Осылайша қол жеткізуге мүмкін болмайтын микроконтроллерді жобада қолданудан құтылуға болады.

«Құралдар» деген сөздің астарында тағы кітаптар, Web-сайттар, оқк курстары, семинарлар, программа мысалдары және тағы да басқалары түсіндіріледі. Жақында жасалған жетістік Интернет-анықтаағыш сервер. Бұл хатты тарату программасы, ол белгілі бір тақырыптарға арналған, мысалы микроконтроллерлерге. Осындай серверлердің арқасында кең аудиторияға сұрақтарға жауап қайтару және тез арада ақпаратты тарату мүмкіндігі бар. Осындай құралдарды қолдану қосымшаларды әзірлеу кезінде көмек көрсетеді (әсіресе, егер бір нәрсе қолдан келмей, көптеген уақыт бойы монитордың экранына қарап не болғанын түсінбеген кезде).

Өзін-өзі тексеру

Коммерциялық өнімді немесе уақытқа критикалық қосымшаны әзірлеу кезінде программаға негізгі компонтенттердің және микроконтроллер интерфейстерін тестілеу кодын енгізген пайдалы болады. Ол қосымша пайда болған қате туралы қолданушыға хабар беруге мүмкіндік береді, және дұрыс емес құрылғыда программаның орындалуын алдын алуға болады.

Микроконтроллер мен оған қосылған сыртқы құрылғының арасындағы интерфейсті тестілеу өте оңай. Мұндай тесттер әдетте сыртқы құрылғының жіберулерінің тестілік символдарында(әдетте ол 0х55 және 0хАА) және оның қайта оқылуында шоғырланады. Оны істеуге рұқсат беретін көп жағдайда шинаға қосылған құрылғыларда арнайы тәртібі мен регистрлері бар. Мұндай тест көбінесе «қатысу тесті» деп аталады, себебі шина мен интерфейстерді тестілеумен қатар сыртқы құрылғының бар немесе жоқтығы тексеріледі.

Паралельді шинаның тексеруі кезінде (оның ішінде микропроцессор да бар) тест жүргізілетін адрес бойынша оның тестілік мәнін жазу керек болуы мүмкін, одан кейін тестілік мәннің оқылуын жүргізуінің алдында басқа адрес бойынша дұрыс емес мәнді жазу керек. Себебі, кейбір жүйелерде мәліметтер шинасында сигналдың «жүзетін» мәні орнатылады, ол тасымалданудан кейін біраз уақыт өткен соң болады. Ол жазылу режимінен оқылу режиміне өткенде сыйымдылықтардың әсерінің шақырылуымен болып отыр. Басқа адреске дұрыс емес мәнді аралық енгізу арқылы келесі тестілік шаманың оқылуын дұрыс орындауға мүмкіндік береді. Мұндай мәселелер тестілеу кезінде кейде пайда болады – мысалы, қатысу тесті кері оқылғанда дұрыс мән береді, бірақ сыртқы құрылғы шинаға қосылмаған жағдайда ғана. Тестілік шаманың мәні келесідей таңдалуы керек, шинаға қосылған құрылғылардың ешқайсысы оларды команда ретінде елемеу керек, тек символ ретінде оны жазу одан кейін қайта оқу қажет.

Осындай тест микроконтроллермен өзінің ішкі құрылғыларын тексеру үшін қолданылуы мүмкін. Ерекше қызығушылық танытатын ROM және RAM ішкі жадыны тексеру. RAM жадысы микроконтроллердің ішіндегі және сыртындағы аппаратты құралдарды инициялизацияп бастаудың алдында тестіленуі мүмкін. Программа жадысы ретінде пайдаланылатын ROM жадысын бақылау сомасын тексеру арқылы тексеруге болады, егер бұл жады оқылуға қол жетімді болса.

Мәліметтер жадысының оқылуы классикалық Гарвард сәулетінде мүмкін емес. Ондай мүмкіндік бар болған жағдайда да, ол команда разрядтылығы әдетте мәліметтер разрядтылығынан көбірек, және тестілеу нәтижелерін тексергенде мәселелер тууы мүмкін.

Интерфейстер мен жадыны тексергеннен кейін әртүрлі құрылғылардың жұмысының дұрыстығын тексеру керек. Ол үшін жүйенің барлық құрылғыларында «кері байланыс» режимінде жұмыс жасау мүмкіндігі болуы крек. Мысалы, егер аналогты шығу бар болса, онда ол аналогты кірумен қосылуы мүмкін, ол шығыс кернеудің алынған мәнінің дұрыстығын тексеру үшін керек(2.1 сурет).

2.1-сурет. Өзін өзі тестілеу үшін аналогты кері байланыс.

Микропроцессорды тестілеу кезінде қолданбалы программаны орындаудың алдында әр команданы тексеруді өткізуге болады. Мысалы, IBM-PC ескі жетекшілігінде «POST» («power-on self-test») программасын табуға болады, ол әртүрлі адрестеу әдістерімен әр команданың орындалуын жүзеге асырады, ол алғашқы тесттердің бірі. Қазіргі кезде мұндай тексеру міндетті емес болып табылады, себебі микроэлектронды өнімнің саплылығының өсуі процессорлардың істен шығуы сирек кездесетініне алып келді. Заманауй көпфункционалды микросхемалар үшін бұл тесттің іс жүзінде ешқандай маңызы жоқ.

Программаторлар

Қосымшаны әзірлеу кезінде программаларды сақтау үшін E(E)PROM жадысы қолданылады. Бұл жағдайда микроконтроллердегі ағымдағы программалық кодты жаңартуға мүмкіндігі бар, ол қосымшаны түзеу және тестілеуді орындау үшін керек. Мұндай мүмкіндікті іске асыру үшін сәйкес келетін программаторды және программаны ұстау керек ( егер жұйеде программалау қолданылса). Пайдаланушы білуге тиісті программалау жайында белгілі бір мағлұмат бар. Ол әр түрлі программаторлар жайлы, олар микроконтроллерді программалап қана қоймай тағы да бірқатар қосымша функцияларды орындайды.

Микроконтроллердің көптеген өндірушілері оған керекті программаторларды да сатады, оларда орнатылған эмуляторлар болуы мүмкін, ол қолданушыларды өздерінің өнімін қолдануға тарту үшін жасалады. Мұндай құралдар «орындаушының аспапты жиыны» деп аталады (developer's kits). Әдетте мұндай жиын программатор/эмулятор мен қатар өзіне компоненттердің үлгісін, ассемблер/симулятор/IDE, қолдану бойынша нұсқаулықты және Adobe «PDF» форматындағы CD-ROM-дағы ақпаратты қосады. Мұндай жиындар қосымшаны әзірлеп бастау үшін барлық керек жарақты өзіне қосады. Олардың орташа бағасы – 100 доллардың айналасында, айта кету керек оларды бөлек бөліктермен сатып алса оның бағасы әлдеқайда жоғары болады. Егер құрастырылып жатқан құрылғыға сондай жиын бар болса, онда оны жұмыс істету орынды болады. E(E)PROM программаторларының өндірушілері сонымен қоса құрылғыларды прогаммалау үшін адаптерлерді және сериялық өндірудің (өнеркәсіптік программаторлар) процесі үшін программалық қамтамасыз етуді ұсынады. Құрылғыны әзірлеу кезінде орындаушының аспапты жиынынан программаторды қолдану, ал олардың сериялық өндірісінде – өнеркәсіптік программаторларды қолдану ұсынылады. Жоғарыда айта кеткендей, көптеген микроконтроллерлер жүйенің құрамында прграммалауға (lSP-микроконтроллерлері) рұқсат беретіндей нұсқасында шығарылады. Ондай микроконтроллерлер құрылғының сұлбасынан алынбай жатып программалануы мүмкін. Ол SMT-корпусты микроконтроллерді қолданғанда маңызды болып келеді, себебі оларды сұлбадан алып тастап қайта паять ету қиындық туғызады. ISP-микроконтроллерлерін программалау паралельді протоколды қолдану арқылы программаланатын микроконтроллерге қарағанда көп уақытты талап етеді. Программалау уақыты шамамен ондаған секундтар немесе минуттардан тұрады, ал бір адреске жазба жүргізу 10 нан 250 мс алады. Бұл жағадайды өндірістік процессті жобалағанда ескеру керек. Көптеген ISP-микроконтроллерлерді ІСТ-тестер арқылы программалауға болады(жүйе құрамындағы тестілеу құрылғысы), бірақ тестілік құрылғының бағасы жоғары болып келеді, сондықтан программалауды басқа құрылғылармен жүргізген абзал. Ең жақсы шешім болып арнайы программаторды жасау болып табылады, ол жүйеге қосылып микроконтроллерді программалайды және оларды басқа құрылғылардан өшіреді.

Әдетте ISP-микроконтроллерлері программатормен байланыс жасау үшін бірнеше арнайы шығарулары бар. Егер микроконтроллер жүйеде программаланса, онда жүйе программалау процесі кезінде сұлбаның басқа компоненттеріне әсер етпейтіндей құрастырылуы керек, ал олар өз басына программалау процесіне кедергі келтірмеуі керек. Мысалы программатордың басына арнайы драйвер орнатуға болады, ол программалау кезінде микроконтроллерге қосылған барлық құрылғыларды өшіріп қояды.

Қосымшаларды түзету

Қолданбалы программаларды түзетудегі жақсы нәтиже беретін бір стратегиясы ол оның алдында түзетілген енгізу/шығару процедураларын қолдану болып табылады. 8-разрядты орнатылған микроконтроллерлерге арналған қосымшаларда енгізу/шығару процедуралары программалық қамтамасыздандырудың 80%-ынан артығын алады. Жасалып жатқан программалық қамтамасыздандырудың елеулі бөлігін енгізу/шығару процедуралары алып тұрса, онда процедураларды алдын ала бөлек жасап, тестілеп және түзету керек, ал одан кейін құралып жатқан қолданбалы программаға қосуға болады. Ондай әдіс «шығып келе жатқан» программалау («төменнен-жоғары») деп аталады.

Дербес компьютерлерге арналған құрылғыларда берілген әдіс көп жағдайда қолданылмайды, себебі енгізу/шығару процедураларын операциондық жүйе немесе программалау ортасы орындайды. Бірақ микроконтроллер үшін енгізу/шығаруды жүзеге асыру қолданбалы программаның негізгі бөлігі болып табылады. Жалы енгізу/шығару процедураларының жоғарғы деңгңйлі тілдің программалау құралдарымен жеткізіліп беруін, әдетте, оларды микроконтроллердің көптеген қосымшаларында қолдану үшін үлкен көлемді және өте спецификалық болып келеді. Ол дегеніміз, проуедура мәліметін іске асыру үшін стандартты программаларды өз бетінше жасаған абзал, ол қолданылып жатқан программалау әдісіне сәйкес болу керек.

Қолданбалы программалық қамтамасыздандыруды әзірлеу әдетте келесі реттілік бойынша орындалады:

  1. Қолданушының шығару процедуралары

  2. Қолданушының енгізу процедуралары

  3. Жалпы шина арқылы енгізу/шығару процедуралары

  4. Әр түрлі қосымша енгізу/шығару процедуралары

Әзірлеудің осындай реттілігі қажет программалық қамтамасыздандыруды және аппатартты интерфейсті алуға, және енгізу/шығару процедураларын тестілеу программалары мен қарапайым түзету процедураларын іске асыруға мүмкіндік береді. Солайша, егер қрастырылып жатқан жобаның құрамына пернетақта 4х4, ЖК-индикатор, 12С шинасында ЕЕРROM жадысына тізбектелген интерфейс және аналогты енгізу кірсе, ЕЕРROM жадысына жазылуға тиісті ақпарат, онда алдымен ЖКИ- дің жұмысы үшін және пернетақтадан оқу үшін программаларды құрастыру қажет. 12C шинасы және аналогты шығыстарға қолданушының енгізу/шығару подпрограммалары қызмет көрсете алады. Егер жасалып жатқан қосымша мен қолданушы арасында интерфейсі болмаса, онда енгізу/шығарудың тізбектелген интерфейсін іске асыру керек, ол түзеткіш консольге қол жеткізуге мүмкіндік береді.

Егер эмулятор бар болса, онда жоғарыда айтылған программалық қамтамасыздандыру әзірлеу әдісінің қажеті жоқ сияқты көрінеді. Бірақ бұл жағдайда түзету процесіндегі тестіленетін айнымалылар саны минималды болады.

Ертерек айтылған ұсыныстарға қайта оралып, ондағы түзету процедурасының орындалуын қарастырайық. Сонымен бірге қосымшаның соңғы нұсқаны алғанша түзетілуін толық жүргізу керек. Ол өте маңызды, себебі енгізу/шығару функциясын қолдану арқылы қосымшаның барлық бөліктері дұрыс жұмыс істеп тұрғанына көз жеткізуге болады. Бұл жағдайда программаның соңғы нұсқасын түзете отырып үлкен қиындықтардан құтылуға болады, ал басқа жағдайда оны микроконтроллерге жүктеген кезде ол берілген функцияның орындалуын қамтамасыз етпейдігіне көз жеткізуге болады.

Енгізу/шығару процедураларын жасағаннан кейін оларды симуляторда тестілеу керек, ол оның орындалуының дұрыстығын тексеу үшін керек. Енгізу/шығару процедураларын симуляторда түзеуді арнайы файлды жасау арқылы жеңілдетуге болады, онда кіру тестілеу сигналдарының бейнеленген. UMPS IDE программасы енгізу/шығарудың «виртуалды» құрылғысын қолдануға мүмкіндік береді, ол арнайы файлды жасаудан босатады.

Егер тестілеуден кейін функция симулторда іске қосылмаса, онда оның себебі программалық қамтамасыздандыру емес, оның себебі «сыртқы» мәселе, мысалы контактілері жаман. Ондай мәселелерді вольтметр, логикалық сынама немесе осцилограф арқылы табу оңай.

  1. ПРОГРАММАЛАНАТЫН ЛОГИКАЛЫҚ КОНТРОЛЛЕРДІ ПРОГРАММАЛАУ

3.1 ПЛК арқылы басқарудың артықшылықтары

1960- жылдардың соңында General Motors америкалық авокөлік шығарушы компаниясы, өзінің заводтарында жинауды басқаратын релелік программаның ауысыру үшін компьютерді қолдануға қызығушылық танытты. 1969 жылы ол өнеркәсiптiк компьютерге келесіде келтірілгендей талаптарды қойды.

Өндірітік объектіні басқаратын компьютерге қойылатын талаптар өте қатал болып келеді және ол клесіге алып келеді:

  1. Ол температуралық құламалар, кірдің бар болуы және сапасыз электрқоректкндіру желісімен сиптталатын өндірістік жағдайларда жұмыс істеу қабілеттілігін жоғалтпау керек.

  2. Ол өнеркәсіпке тән (24 В тұрақты токтан 240 В айнымалы токка дейін), кернеу түріндегі дикретті кіру/шығу сигналдарымен жәге аналогты кіру/шығу сигналдарымен жұмыс істей білуі қажет.

  3. Программалау тілі арнайы дайындығы жоқ қызмет көрсететін қызметкерлер құрамына (мысалы электриктерге) түсінікті болуы керек.

  4. Ол объектінің жұмысын үздіксіз бақылап отыру мүмкіндігіне ие болу крек, ақаулықтарды табу мақсатында. Есере кету қажет, көптеген ақаулар сыртқы құрылғыларда пайда болады, мысалы шеткі ажыратқыштар, датчиктер және атқарушы тетіктер, және басқарушы компьютер олардың жұмысының артынан бақылап отыру қажет.

  5. Нақты уақытта басқару үшін жүйе жеткілікті жылдамдыққа ие болуға тиісті. Іс жүзінде «жеткілікті жылдамдықағы» реакция уақыты шамамен 0.1 с, бірақ ол нақты бір тапсырма мен қолданылып жатқан басқарушы құрылғыға байланысты өзгеруі мүмкін.

  6. Қолданушы компьютерлік жаргон сөздерді қолданудын құтылуы керек.

  7. Негізгі ілтипат қауіпсіздікке бөлінуі тиіс.

Орталық процессор

Мәліметтерді сақтауға арналған касетті магнитафон

Программалауға арналған терминал

Процессорды бағанмен байланыстырушы кабель

Бағанға арналған қоректендіру қоры

Қоректендіру кабелі

Интерфейс платасы

Енгізу/шығару платасы

8 енгізу/шығарру платасына арналған баған

1 платаға 16 сигнал

объект және оперратормен байланыс

3.1-сурет. ПЛК-ның құрама бөліктері:

(а) алғашқы ПЛК-лардың бірі; (б) платалары бар типті баған

Екі компания, Bedford Associates (кейінірек Modicon деп аталды) және Allen Bradley, бір-бірінен тәуелсіз General Motors-тың талаптарына жауап қайтарды. Әр копания 3.1-суреттегідей компьютерлік жүйені әзірледі, оның, қазіргі кездегі өндірістік мини-компьютерлермен кейбір ұқсастықтары болды. Компьютер деп аталатын орталық процессор өндірістік ортада жұмыс жасай алатындай жобаланды, және ол сыртқы дүниемен баған арқылы байланысады, оған кіру немесе шығу платаларын орнатуға болатын еді. Бұл бірінші машиналарда негізінде төрт түрлі платалар болатын:

  1. Тұрақты токтың дискретті кіру платасы (DC).

  2. Тұрақты токтың дискретті шығу платасы (DC).

  3. Айнымалы токтың дискретті кіру платасы (АС).

  4. Айнымалы токтың дискретті шығу платасы (АС).

Әр плата 16 кіру сигналдарын қабылдау немесе 16 шығу синалдарын қалыптастыру керек болатын. Солайша, сегіз платасы бар баған 128 құрылғымен байланыса алатын. Айтй кету керек, платаларды орналастыру қолданушының өзімен анықталды, ол үлкен икемділікке қол жеткізуге мүмкіндік берді. 3.1(б)-суретінде қолданушы бір DC кіру платасын, бір DC шығу платасын, үш АС кіру платасын және екі АС шығу платасын орнатты, ал біреуін резервті позиция ретінде юолашақта қолдану үшін қалдырды. Нәтжесінде бұл баған

  • Тұрақты токтың 16 кіру сигналдарымен;

  • Тұрақты токтың 16 шығу сигналдарымен;

  • Айнымалы токтың 48 кіру сигналдарымен;

  • Айнымалы токтың 16 шығу сигналдарымен ;

жұмыс істей алады. Әлбетте, бұл сигналдардың барлығы қолдануға тиісті емес.

Бірақ негізгі идея ол релелік принципиалды сұлбаға негізделген

программалау тілін қолдану, онда кіру сигналдары (шеткi ажыратқыштардан, батырмалардан және т.б) реле контактілері түрінде көрсетілді, ал шығыс сигналдары (соленоидтарға, қозғалтқыштарды іске қосу құрылғылары – реле орамдары түрінде болды. 3.2 суретте қарапайым гидроцилиндр бейнеленген, және оның алдыға немесе артқа қозғалуын іске қосу батырмасы (Кн.) арқылы қоюға болады. Қозғалыстың бағытталуы шеткi ажыратқыштармен (КВ) анықталады, олар орын ауыстырудың соңғы нүктесінде ажыратылады, ал соленоид гидравликалық насос қосылған жағдайда ғана жұмыс жасайды. Гидроцилиндрді басқару компьютерлік программа арқылы іске асыруға болатын еді, ол 3.2(б)-суретте белгіленген релелік сұлбаға ұқсас және ол тура сондай мақсатқа қолданылады. Мұндай программалар сатының баспалдақтары сияқты көрінеді, осыдан «көпсатылы сұлба» атауы пайда болды.

б

3.2-сурет. ПЛК-ны қолдану мысалы. (а) ПЛК арқылы басқарылатын гидроцилиндр. (б) гидроцилиндрді басқару үшін көпбуынды сұлба түріндегі программа.

Сұлбада АҚШ-та бекітілген белгілеулер қолданылған:-][- бұл сигналдың бар екенін көрсетеді, -]/[- сигналдың жоқ екенін көрсетеді.

Программа программалау терминалын қолдану көмегімен енгізілді, оның пернетақтасында релелі сұлбаның символдары бейнеленген (қалыпты ажыратылған/ қалыпты қосылған контактілер, орамдар, таймерлер, счетчиктер, паралельді бұтақтар және т.б.), және жүйеге қызмет көрсететін электрик олармен таныс болуы керек. 3.3-суретте алғашқы ПЛК-ларда қолданылған программист пернетақтасы бейнеленген. Көптеген пернелердің тағайындалуы анық болуы тиісті. Сұлба түрінде экранда пайда болатын программа, 3.2(б)-суреттегідей, активтендірілген контактілер мен орамдарды ерекшелеу керек, ол пайда болатын ақаулықтарды жедел түрде табу үшін терминалды қолдануға мүмкіндік береді.

Пернелер:

  1. сандық

  2. релелік

  3. таймер/счетчик

  4. мәліметтерді өңдеу

  5. арифметикалық операциялар

  6. редакциялау

  7. басқару

3.3-сурет. алғашқы Allen Bradley ПЛК-ларда қолданылған терминалдағы программист пернетақтасы.

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

Бұл машиналар «программаланатын контроллерлер» немесе ПК атауына ие болды. Және «прогаммаланатын логикалық контроллер» (ПЛК) атауы да қолданылды, бірақ шынында бұл Allen Bradley компаниясының тіркелген сауда белгісі болды. Өкінішке орай, кейінірек ПК аббревиатурасын персоналді компьютерді атау үшін қлданылды, және бұл жағдай программаланатын контроллер және персоналді компьютер әлеміне шатасулар әкелді, сонымен қатар қазәргә кезде портативті және персональді компьютерлер программалауға арналған терминалдар ретінде пайдаланыла бастады. Шатасуларды тудырмас үшін, бұл дипломдық жұмыста ПЛК аббривиатурасы программаланатын контроллерге, ал ПК – персоналді компьютерге қолданылады.

ПЛК арқылы басқарудың артықшылықтары

Кез келген басқарушы жүйе, тұжырымдамаланған күйден жұмыс істейтін кешенге дейін ол төрт этаптан өтеді. Әр этапта ПЛК нақты артықшылықтарды қамтамасыз етеді.

Бірінші этап жобалау болып табылады; бұл жерде басқарылатын объект және оны басқару стратегиясы анықталады. Қарапайым жүйелерде жобалану, құрастыру этапы басталғанша орындалып бітуі тиіс. ПЛК-сы бар жүйелерде бұл этаптағы керек заттың барлығы ол- шамамен жорамалданатын машинаның өлшемдері және енгізу/шығару платаларына (қанша кірулер және қанша шығулар ПЛК-да болуы керек) қойылатын талаптарды білу. Бұл этапта кіру және шығу платалары арзан, сондықтан да оларды артығырақ алып қалу мүмкіндігін жібермеу керек, себебі болашақта олар білместіктің зардабынан қорғап қалады және мүмкін болатын жүйенің кеңейуінің алдын алады.

Келесі этап құрастыру болып табылады. Әдеттегі жүйелерде әр жұмыс және осы әдіске тән кідірістер мен оған кететін шығын мен бірге «бір рет» қана орындалады. ПЛК–сы бар жүйе стандартты блоктардың бірігуі арқылы оңай жасалады. Бұл этапта ПЛК үшін программаның жазылуы басталады (немесе, кем дегенде, программалық спецификация талқыланады).

Келесі этап – орнату. Бұл шаршататын және қымбат тұратын іс, себебі датчиктердің, қолданушы құрылғылардың, шеткі ажыратқыштар мен оператордың басқару құралдарының коммутациясы іске асады. ПЛК-ның таралған жүйелерінде мәліметтерді берудің тізбектелген каналдардың қолданылуы және алдын ала құрастырылған және түзетілген стендтердің орнатылуын оңайлатып оның бағасынан үлкен ұтыс алып келе алады. ПЛК-ға арналған көптеген программалар дәл осы этапта жазылады.

Келесі этаптың уақыты пайдалануға енгізу, осы жерде де ПЛК қамтамасыз ететін артықшылықтар өте елеулі. Ешқандай жүйе бірден жұмыс істеп кетпейді. Адамның табиғаты сондай, әйтеуір бір нәрсе көзден таса болады. Қарапайым жүйелердегі қателіктерді түзету уақыт пен қаражатты кетірумен байланысты. Егер ПЛК-сы бар жүйелердің құрастырушысы жадының резервті көлемін, резервті кіру/шығу платаларын және көп тінді кабелдің бірнеше резервті тінін алдын ала ескерсе, онда көптеген өзгерістер тез әрі қаражатты аз кетірумен істеледі. Қосымша артықшылық ол, барлық өзгерістер ПЛК программасында жазылатындығы, және оны қолданысқа шығарғанда ол ескерусіз қалмайды, ондай қарапайм жүйелерде болады.

Тағы да бір этап бар, ол бесінші этап – қызмет көрсету, ол басқару объектісі өз функцияларын орындай бастағанда іске қосылады. Барлық объектілерге ақаулар тән, және олардың көбісі әр түрлі компоненттердің істен шығу кезінде де біраз уақыт бойы жұмыс істеп тұруы әбден мүмкін. ПЛК-сы бар жүйелерде істен-шығу жаңдайларын диагностикадан өткізетін өте мықты құралдары бар.

Басқару объектісі өзінің қолданылу барысында көптеген өзгерістерден өтеді. Ол өнімділіктің артуынан, тозудан, сынудан немесе техникалық талаптардың өзгеруінен болады. ПЛК-сы бар жүйені оңай басқа күйге келтіруге болады, себебі барлық өзгертулер жеңіл енгізіледі, ал ПЛК программасы автоматты түрде барлық өзгерулерді бекітіп отырады.

Программаны жұмыс істету

ПЛК программасының жұмысын үздіксіз орындалатын цикл ретінде қарастыруға болады, ол 3.4(а)-суретте көрсетілген. Пайдаланушының нұсқаулары бірінен кейін бірі орындалады, және соңғысы орындалып біткен соң, жұмыс қайтадан біріншісінен басталады. Сол арқылы, ПЛК-ның сыртқы ортамен тұрақты байланысы жоқ, ол сақина «тәрізді лентасы бар кинопроектор» сияқты жұмыс жасайды.

3.4(а)-суретінде келтірілген ПЛК жұмысы, программаны жұмыс істету деп аталады, ал циклдың периоды – жұмыс істетудің уақыты деп аталады, ол программаның көлемі мен процессордың жылдамдығына байланысты. Орташа есеппен жұмыс істету уақыты шамамен 10-50 мс алады, ол 2-5 мс программаның килобайтына сәйкес келеді.

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

Программаны жұмыс істету кезінде шығатын мәліметтер де сол сияқты өзгермейді. ПЛК ең алдымен осы мәліметтер үшін белгілі бір жадының бөлігін алып қалады да, программаны жұмыс істеуінің соңына таман барлық шығушы мәліметтер бір уақытта жаңартылады. Демек, тактілердің жұмыс істеу жиілігі: кіретін мәліметтің оқылуы, программаның жұмыс істетілуі, шығушы мәліметтердің жаңартылуы.

ПЛК жадысын төрт бөліктен тұрады деп есептеуге болады, ол 3.4(б)-суретінде көрсетілген.

а

в

б

3.4-сурет. ПЛК программасын жұмыс істету және жадының ұйымдастырылуы: (а) ПЛК әрекеті; (б) прогамманың орындалу реттілігі; (в) ПЛК жадысының ұйымдастырылуы

Кіру мәліметтері программаның жұмыс істетуінің алдында лайықты виртуалдыт облысқа оқылады, ал шығу мәліметтерінің жаңаруы соған ұқсас виртуалды облыстан жұмыс істетудің соңына таман орындалады. Сонымен қатар ішкі сигналдарға орны сақталған жады облысы бар, ол программаның қолданылуына арналған, бірақ ол сыртқы ортамен байланыспаған (таймерлердің, счетчиктердің сигналдары, жадының биттері, мысалы, ақау сигналдарына арналған және т.б.). Осы үш облыс мәліметтер кестесі (Allen Bradley ПЛК-ларында) немесе мәліметтер қоры (ASEA/ABB ПЛК-ларында) ретінде жиі айтылады.

Бұл жады облысы ойлағаннан кішірек. Орташа көлемді ПЛК-ларда шамамен 1000 кірулер мен шығулары бар. Бұл сигналдарды бөлек биттермен 16-биттік сөзі бар ПЛК жадсында сақтағанда оның көлемі 60 ұяшықтардан көбірек ұяшықтарға сәйкес келеді. Объектіге келіп түсетін немесе объектіден жіберілетін аналогты сигнал жадыда бір сөздің орнын алады. Таймерлер және счетчиктер екі сөзді қолданылатын болады (біреуі мән үшін жіне біреуі алдын ала орнатуы үшін), ал 16 бит ішкі жады – бір ғана сөз. Жадының үлкен бөлігі төртінші облысқа арналып бөлінеді, ол жадыда программаның өзі сақталады.

Жұмыс істету уақыты ПЛК-мен қабылданатын сигалдың өзгеру жылдамдығын шектейді. 3.5-(а) суретінде ПЛК импульстердің тізбектелуін санау үшін қолданылады, сонымен қатар импульстердің тізбектелу жиілігі жұмыс істету жиілігінен азырақ. 3.5(б)-суретінде импульстердің тізбектелу жиілігі жұмыс істету жиілігінен көбірек, және ПЛК бөлек импулстерді жібере бастайды. 3.5(в)-суретінде келірілген жағдайда, толық группалардың импульстері еленбейді.