лего. Лекция lego mindstorms ev3 education робот техникасы. Лекция lego mindstorms ev3 education робот техникасы
![]()
|
Лекция 12. Arduino әзірлеу ортасы ![]() Arduino әзірлеу ортасы кірістірілген мәтін редакторынан, бағдарламалық кодтан, хабарламалар ауданынан, мәтінші шығару терезесінен (консольдер), құралдар тақтасының жиі қолданылатын командалар мен бірнеше мәзірден тұрады. Бағдарламаларды жүктеу және байланыс үшін әзірлеу ортасы Arduino аппаратты бөлігіне қосылады. Жүктеу Соңғы нұсқасын осы сілтеме бойынша табуға болады http://www.arduino.cc/en/Main/Software Пайдалы сілтемелер: Windows-та жұмысты бастау Ubuntu Linux-тағы Arduino IDE қондырғысы Arduino ортада жазылған бағдарлама, скетч деп аталады. Скетч кесу/қою, іздеу/ мәтінді ауыстыру құралдарына ие, мәтіндік редакторда жазылады. Сақтау және экспорт кезінде хабарламалар ауданында түсініктемелер пайда болуы мүмкін, сонымен қатар пайда болған қателіктер де көрінеді. Мәтінді шығару терезесі (консоль) қателіктер туралы толық есептен және басқа ақпараттан тұратын Arduino хабарламаларын көрсетеді. Саймандар тақтасының түймелері бағдарламаны тексеруге және жазуға, құруға, скетчті ашуға және сақтауға, тізбекті шиналар мониторингын ашуға мүмкіндік береді: ![]() Бағдарламалық кодтың қателерін тексеру, компиляция. ![]() Тізбекті шиналар мониторингын тоқтату (Serial monitor) немесе басқа түймелерді күңгірттеу. ![]() Жаңа скетчті құру. ![]() Қойын дәптерде барлық скетчтерге ену мәзірін ашу. Ағымдағы терезені басу арқылы ашылады. Ескертпе: Java да қателіктердің болуына байланысты осы мәзір айнала алмайды, осы тізімнен скетч ашу қажеттілігі туындаса, File | Sketchbook мәзірін орындаңыз. ![]() Скетчті сақтау. ![]() Бағдарламалық кодты құрастырады және Arduino құрылғысына жүктейді. Жүктеу сипаттамасы төменде берілген. ![]() Тізбекті шиналар мониторинг ашылулары (Serial монитор). Қосымша командалар бес мәзірге топтастырылған: File, Edit, Sketch, Tools, Help. Мәзірдің қол жетімділігі осы сәтте орындалып жатқан жұмыспен анықталады. Edit Copy for Discourse Айырбастау буферіне форумда орналастыруға келетін скетч кодын синтаксисті белгілей отыра көшіреді. Copy as HTML Скетч кодын айырбастау буферіне HTML коды сияқты, веб-парақшаларда орналастыру үшін көшіреді. Sketch Verify/Compile Скетчті қателіктерге тексеру. Import Library Скетч кодына #include нұсқауын кірістіре отыра, ағымдағы скетчке кітапхананы қосады. Толығырақ ақпарат кітапханалар сипаттамасында төменде (Libraries). Show Sketch Folder Жұмыс үстелінде құрамын скетч файлы бар буманы ашады. Add File... Файлды скетчке қосады (файл ағымдағы орнынан көшірілетін болады). Жаңа файл жаңа бетбелгіде жаңа скетчте пайда болады. Файл бетбелгі мәзірінің көмегімен скетчтан өшірілуі мүмкін. Tools Auto Format Осы опция кодты оңтайландырады, мысалы, ашылатын және жабылатын жақшаларды бір сызық бойына тігінен жинайды және олардың арасына бекітулер орнатады. Board Қолданатын платформаны таңдау. Платформалардың сипаттамасымен тізім төменде көрсетілген. Serial Port Мәзірдің құрамында компьютердегі реттік деректерді беру (шынайы және виртуалды) құрылғыларының тізімі бар. Тізім Tools мәзірін ашқан сайын автоматты түрде жаңартылатын болады. Burn Bootloader Осы мәзірдің тармақтары Arduino платформасында микроконтроллерге Жүктеушіні (Bootloader) жазып алуға мүмкіндік береді. Осы әрекеттер Arduino-мен жұмыс кезінде қажет болмайды, дегенмен жаңа ATmega (жүктемесіз) бар болса қажет болады. Жазуды бастамас бұрын мәзірден платформаны дұрыс таңдап алуға ұсыныс беріледі. AVR ISP қолдану кезінде бағдарламалаушыға Serial Port мәзірінен сәйкес портты таңдау қажет. Қойын дәптер (Sketchbook) Arduino ортасымен қойын дәптер қағидасы қолданылады: бағдарламаларды сақтауға стандартты орын (скетчтарды). Қойын дәптерден скетчтер File > Sketchbook мәзірі арқылы немесе басқару тақтасындағы Open түймесі арқылы ашылады. Arduino бағдарламасын алғаш ашқан кезде қойын дәптер үшін автоматты түрде директория ашылады. Қойын дәптердің орналасуы Preferences диалогтік терезесі арқылы өзгереді. Бетбелгілер, Файлдар және Компиляция Скетчтердің бірнеше файлдарымен жұмыс істеуге мүмкіндік береді (әр біреуі жеке затбелгіде ашылады). Кодтың файлдары Arduino стандартты болуы мүмкін (кеңеюсіз), С файлдарымен (кеңею *.с), С++ файлдарымен (*.срр) немесе бас файлдарымен (.h). Arduino-ға скетчті жүктеу Скетчті жүктемес бұрын мәзірде қажетті параметрлерді орнату қажет Tools > Board және Tools > Serial Port. Платформалар әрі қарай мәтін бойынша сипатталады. Mac ОЖ-де тізбекті порт dev/tty.usbserial-1B1 (USB тақтасы үшін) сияқты көрінуі мүмкін немесе Keyspan USB-to-Serial адаптері арқылы қосылған /dev/tty.USA19QW1b1P1.1 (тізбекті шиналар тақтасы үшін). Windows ОЖ порттар COM1 немесе COM2 сияқты белгіленуі мүмкін (тізбекті шиналар тақтасы үшін) немесе COM4, COM5, COM7 және жоғары (USB тақтасы үшін). USB портын анықтау USB Тізбекті шиналар өрісінде Windows құрылғылар Диспетчерінде өндіріледі. Linux ОЖ порты /dev/ttyUSB0, /dev/ttyUSB1 сияқты көрінуі мүмкін. Порт және платформаны таңдағаннан кейін басқару тақтасындағы жүктеу түймесін басу керек немесе мәзір File > Upload to I/O Board пунктын тадау қажет. Заманауи Arduino платформалары жүктеу алдында автоматты түрде қайта жүктеледі. Ескі платформаларды қайта жүктеу батырмасын басу қажет. Көптеген тақталарда үдеріс кезінде RX және TX жарық диодтары жыпылықтап тұрады. Arduino әзірлеу ортасы жүктеудің аяқталғаны туралы немесе қателер туралы хабарламаны шығарады. Скетчті жүктеу кезінде Arduino Жүктеуші (Bootloader) қолданылады, тақтадағы микроконтроллерге жүктелетін кішігірім бағдарлама. Ол қосымша аппаратты құралдарды қолданбай-ақ бағдарламалық кодты жүктеуге мүмкіндік береді. Жүктеуші (Bootloader) платформаны қайта жүктеу кезінде бірнеше секунд және микроконтроллерге кез келген скетчтердің жүктелуі кезінде белсенді. Жүктеуші (Bootloader) жұмысы жарық диодының 13 пин) жыпылықтауы кезінде анықталады (мысалы: тақтаның қайта жүктелу кезінде). Кітапханалар Кітапханалар скетчтерге қосымша қызметтерді қосады, мысалы апаратты бөлшекпен жұмыс немесе мәліметтерді өңдеу кезінде. Кітапханаларды қолдану үшін мына мәзірді таңдау керек Sketch > Import Library. #include бір немесе бірнеше директива кейінгі кітапханалар компиляциясымен және скетчпен бірге скетч кодының алдында орналастырылатын болды. Кітапханаларды жүктеу Arduino жадында қосымша орынды талап етеді. Қолданылмайтын кітапханаларды скетчтен #include директивасын алып тастап өшіруге болады. Arduino.cc-та кітапханалар тізімі бар. Кейбір кітапханалар Arduino әзірлеу ортасына қосылған. Басқалары кез келген ресурстардан жүктелуі мүмкін. Жүктелген кітапханаларды орнату үшін қойын дәптерде «libraries» директориясын құру қажет және кейін мұрағатты ашу керек. Мысалы, DateTimе кітапханасын орнату үшін оның файлдары /libraries/DateTime қойын дәптер бумасының бума астында орналасуы керек. Жеке кітапхананы жазу үшін осы нұсқаулықты қараңыз. Басқа әзірлеушілердің аппаратты құралдары Басқа өндірушілердің қолданылатын аппаратты құралдары қойын дәптер бумасының сәйкес бума астында орналастырылады. Орнатылатын платформалардың құрамына жеке сипаттамалар (платформа мәзірінде), тамырлы кітапханалар, жүктеуші (Bootloader) және бағдарламалаушы сипаттамасы енуі мүмкін. Орнату үшін ашылған бумада мұрағатты ашу талап етіледі. (Буманың атын «Arduino» деп қоюға тыйым салынады, себебі Arduino платформасының кірістірілген мәліметтері қайта жазылуы мүмкін.) Деректерді инсталяциялау үшін сәйкес директория өшіріледі. Басқа өндірушілердің аппаратты құралдарының сипаттамасы жинағын құру бойынша толығырақ ақпарат Google Code сайтының беттерінде бар. Тізбекті шиналар мониторингы (Serial монитор). Arduino платформасын жіберілетін деректерді көрсетеді (USB тақтасы немесе тізбекті шиналар тақтасы). Деректерді жіберу үшін мәтін енгізу және Send немесе Enter батырмасын басу қажет. Кейін шығатын тізімнен, скетчтағы Serial.begin мәніне сәйкес келетін, жіберілу жыламдығы таңдалады. Mac немесе Linux ОЖ-де Arduino платформасы тізбекті шиналар мониторингы қосылған кезде қайта қосылатын болады (скетч қайтадан басталады). Платформамен Processing, Flash, MaxMSP және т.б. бағдарламалар арқылы ақпараттарды алмасу мүмкіндігі бар (интерфейстер сипаттамасы бетінен толығырақ қараңыз). Баптау Кейбір баптаулар Preferences терезесінде өзгереді (Mac немесе File ОЖ-де Windows немесе Linux ОЖ-де Arduino мәзірі). Басқа баптаулар файлдан орналасқан, оның орналасқан жері Preferences терезесінде көсетілген. Платформалар Платформаны таңдау мыналарға әсер етеді: компиляция кезінде қолданылатын параметрлер (мысалы: ОП жылдамдығы және деректерді жіберу жылдамдығы),скетчтерді жүктеуге және жүктеуші (Bootloader) микроконтроллерге жазуын баптауға. Платформалардың кейбір сипаттамалары соңғы параметр бойынша ажыратылады (жүктеуші Bootloader), осылайша, сәйкес таңдаумен сәтті жүктеу кезінің өзінде жүктеуші (Bootloader) жазылуының алдында айырмашылығын тексеру қажеттілігі туындау мүмкін. Arduino Duemilanove немесе ATmega328-дан Nano Автоматты түрде қайта қосылу мүмкіндігі бар ATmega328 тактілік жиілігі 16 МГц. Arduino Pro немесе Pro Mini ATmega328 нұсқалары үшін 16 МГц (5 В) жиілігінде қолданылады. Arduino Diecimila, Duemilanove, немесе ATmega168-ден Nano Автоматты түрде қайта қосылу мүмкіндігі бар ATmega168 тактілік жиілігі 16 МГц. Компиляция және жүктеу Arduino NG немесе ATmega168 бар ескі нұсқаларға сәйкес келеді, бірақ Bootloader Жүктеуінде қысқа таймаут бар (қайта қосылу кезінде пин 13 жарық диоды бір рет жыпылықпайды). Arduino Pro және Pro Mini ATmega168 нұсқалары үшін 16 МГц (5 В) жиілігінде қолданылады. Arduino Mega Автоматты түрде қайта қосылу мүмкіндігі бар ATmega1280 тактілік жиілігі 16 МГц. Arduino Mini Arduino NG немесе ATmega168 бар ескі нұсқаларға сәйкес келеді (мысалы: автоматты түрде қайта қосылу мүмкіндігінсіз ATmega168 тактілік жиілігі 16 МГц). Arduino BT ATmega168 тактілік жиілігі 16 МГц. Bootloader жүктеу Bluetooth модулін жүктеу үшін кодтармен бірлесе жүреді. ATmega328-ден LilyPad Arduino Автоматты түрде қайта қосылу мүмкіндігі бар ATmega328 тактілік жиілігі 8 МГц (3.3 В). ATmega328 бар Arduino Pro немесе Pro Mini-мен (3.3 В, 8 МГц) сәйкес келеді. ATmega328-ден LilyPad Arduino ATmega168 тактілік жиілігі 8 МГц. Компиляция және жүктеу ATmega168 бар Arduino Pro немесе Pro Mini (8 МГц) сәйкес келеді. Жүктелген Bootloader-та ұзақ таймаут бар (қайта қосылу кезінде пин 13 жарық диоды үш рет жыпылықтайды), себебі, LilyPad түпнұсқаларында автоматты түрде қайта қосылу жоқ. Сонымен қатар сыртқы сағаттар да жоқ, сәйкесінше, Bootloader ішкі сағатты 8 МГц жүктеуді ATmega168-де кескіндейді. Соңғы LilyPad нұсқалар бар кезінде (6- байланыс бағдарламалық енгізуімен) Bootloader жүктелу алдында ATmega168-ден Arduino Pro немесе Pro Mini (8 MHz) таңдау қажет. ATmega328-ден Arduino Pro немесе Pro Mini-мен (3.3 В, 8 МГц). Автоматты түрде қайта қосылу мүмкіндігі бар ATmega328 тактілік жиілігі 8 МГц (3.3 В). ATmega328-ден LilyPad Arduino сәйкес келеді. ATmega168-ден Arduino Pro немесе Pro Mini-мен (3.3 В, 8 МГц). Автоматты түрде қайта қосылу мүмкіндігі бар ATmega168 тактілік жиілігі 8 МГц (3.3 В). ATmega168-ден бұрынғы нұсқалар немесе Arduino NG Автоматты түрде қайта қосылу мүмкіндігі жоқ ATmega168 тактілік жиілігі 16 МГц. Компиляция және жүктеу Arduino ATmega168-ден Diecimila немесе Duemilanove сәйкес келеді, бірақ Bootloader Жүктеуінде ұзақ таймаут бар (қайта қосылу кезінде пин 13 жарық диоды үш рет жыпылықпайды). ATmega8-ден бұрынғы нұсқалар немесе Arduino NG Автоматты түрде қайта қосылу мүмкіндігі жоқ ATmega8 тактілік жиілігі 16 МГц. Лекция 13. Arduino Uno негізгі элементтері. Бағдарлама коды.
Жалпы мәліметтер Arduino Uno контроллер ATmega328-де орнатылған (техникалық сипаттамасы, pdf). Платформаның 14 цифрлы кіру/шығуы бар (олардың 6 ЕИМ шығуы ретінде пайдаланылуы мүмкін), 6 ұқсас кіру, кварцтық генератор 16 МГц, USB жалғағыш, күштік жалғағыш, ICSP жалғағыш және қайт жүктеу нүктесі. Жұмыс істеу үшін платформаны USB жалғағышы арқылы компьютерге қосу не AC/DC адаптердің немесе батареяның көмегімен қуат беру керек. USB бойынша байланыс үшін FTDI USB микроконтролерді пайдаланылған барлық алдыңғы тақталарға қарағанда, жаңа Ардуино Uno ATmega8U2 (техникалық сипаттамасы, pdf) пайдаланады. "Uno" италия тілінен біреу болып аударылады және сонымен әзірлеушілер болашақ 1.0. Arduino-ға шығуды тұспалдайды. Жаңа тақта Ардунио тақтасы сызығының флагманына айналды. Алдыңғы нұсқалармен салыстыру үшін Arduino тақтасының толық тізіміне жүгіну керек. Сипаттамалар
Сұлба және бастапқы деректер EAGLE файлдары: arduino-duemilanove-reference-design.zip Принципті сызба: arduino-duemilanove-schematic.pdf Қуаттандыру Arduino Uno USB қосу немесе сыртқы қуаттау көзінен қуат ала алады. Қуат көзі автоматты түрде таңдалады. Сыртқы қуат (USB емес) AC/DC (қуаттау блогы) кернеудi түрлендiргiш немесе аккумулятор батареясы арқылы берілуі мүмкін. Кернеудi түрлендiргiш 2.1 мм жалғағыш арқылы орталық оң полюспен қосылады. Батареядан сымдар Gnd өткізгіштеріне және Vin қуат жалғағышына қосылады. Платформа 6 В-тан 20 В дейін сыртқы қуат кезінде жұмыс істей алады. Қуаттың 7 В төмен кернеу кезінде, 5V өткізгіш 5 В аз береді, бұл ретте платформа тұрақсыз жұмыс істейді. 12 В жоғары кернеуді пайдаланған кезде кернеуді реттегіш қызып кетуі және тақтаны зақымдауы мүмкін. Ұсынылатын диапазон 7 В-тан 12 В дейін. Қуат өткізгіштер: VIN. Кiру сыртқы көзден қуатты беру үшiн пайдаланылады (USB жалғағыштан 5 В немесе басқа реттелетiн қуат көзi болмағанда). Қуат кернеуiн беру осы өткізгіш арқылы жүргізіледі. |