Телефон: 8-800-350-22-65
WhatsApp: 8-800-350-22-65
Telegram: sibac
Прием заявок круглосуточно
График работы офиса: с 9.00 до 18.00 Нск (5.00 - 14.00 Мск)

Статья опубликована в рамках: C Международной научно-практической конференции «Научное сообщество студентов XXI столетия. ТЕХНИЧЕСКИЕ НАУКИ» (Россия, г. Новосибирск, 08 апреля 2021 г.)

Наука: Технические науки

Секция: Технологии

Скачать книгу(-и): Сборник статей конференции

Библиографическое описание:
Сокол Д.А. РАЗРАБОТКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ДЛЯ АВТОМАТИЗИРОВАННОЙ СИСТЕМЫ УПРАВЛЕНИЯ ЭЛЕКТРООБОРУДОВАНИЕМ // Научное сообщество студентов XXI столетия. ТЕХНИЧЕСКИЕ НАУКИ: сб. ст. по мат. C междунар. студ. науч.-практ. конф. № 4(99). URL: https://sibac.info/archive/technic/4(99).pdf (дата обращения: 28.03.2024)
Проголосовать за статью
Конференция завершена
Эта статья набрала 0 голосов
Дипломы участников
У данной статьи нет
дипломов

РАЗРАБОТКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ДЛЯ АВТОМАТИЗИРОВАННОЙ СИСТЕМЫ УПРАВЛЕНИЯ ЭЛЕКТРООБОРУДОВАНИЕМ

Сокол Дмитрий Ананольевич

магистрант, кафедра общей физики, Гродненский Государственный Университет имени Янки Купалы,

Беларусь, г. Гродно

Кропочева Людмила Владимировна

научный руководитель,

канд. физ.-мат. наук, доц., кафедра электротехники и электроники, Гродненский Государственный Университет имени Янки Купалы,

Беларусь, г. Гродно

Язык программирования устройств Ардуино основан на C/C++. Он прост в освоении, и на данный момент Arduino — это, пожалуй, самый удобный способ программирования устройств на микроконтроллерах [1]. Компилятор Arduino IDE значительно упрощает написание программ для этой платформы и создание устройств на Ардуино становится намного доступней людям, не имеющих больших познаний в языке C/C++. Язык можно разделить на четыре раздела: операторы, данные, функции и библиотеки.

Микроконтроллер ATmega328 поставляется с записанным загрузчиком, облегчающим запись новых программ без использования внешних программаторов. Связь осуществляется оригинальным протоколом STK500.

Имеется возможность не использовать загрузчик и запрограммировать микроконтроллер через выводы ICSP (внутрисхемное программирование) [2].

Технология программирования контроллера Arduino

Программирование ведется целиком через собственную программную оболочку (IDE), бесплатно доступную на сайте Arduino [3]. В этой оболочке имеется текстовый редактор, менеджер проектов, препроцессор, компилятор и инструменты для загрузки программы в микроконтроллер. Оболочка написана на Java на основе проекта Processing, работает под Windows, Mac OS X и Linux.

Язык программирования Arduino является стандартным C++ (используется компилятор AVR-GCC) с некоторыми особенностями, облегчающими написание программы: Программы, написанные программистом Arduino, называются наброски и сохраняются в файлах с расширением ino. Эти файлы перед компиляцией обрабатываются препроцессором Ардуино.

Также существует возможность создавать и подключать к проекту стандартные файлы C++.

  • Обязательную в C++ функцию main() препроцессор Arduino создает сам, вставляя туда необходимые «черновые» действия.
  • Программист должен написать две обязательные для Arduino функции setup() и loop(). Первая вызывается однократно при старте, вторая выполняется в бесконечном цикле.
  • В тексте своей программы (скетча) программист не обязан вставлять заголовочные файлы используемых стандартных библиотек. Эти заголовочные файлы добавит препроцессор Arduino в соответствии с конфигурацией проекта. Однако пользовательские библиотеки нужно указывать.
  • Менеджер проекта Arduino IDE имеет нестандартный механизм добавления библиотек. Библиотеки в виде исходных текстов на стандартном C++ добавляются в специальную папку в рабочем каталоге IDE. При этом название библиотеки добавляется в список библиотек в меню IDE. Программист отмечает нужные библиотеки и они вносятся в список компиляции.
  • Arduino IDE не предлагает никаких настроек компилятора и минимизирует другие настройки.

Простейшая Arduino-программа состоит из двух функций:

setup(): функция вызывается однократно при старте микроконтроллера.

loop(): функция вызывается после setup () в бесконечном цикле все время работы микроконтроллера.

Обе функции требуются для работы программы.

Перед функцией setup - в самом начале программы, обычно, идёт, объявление всех переменных. setup - это первая функция, выполняемая программой, и выполняемая только один раз, поэтому она используется для установки режима работы портов (pinMode()) или инициализации последовательного соединения. Функция setup() вызывается один раз, когда программа стартует. Она должна быть включена в программу, даже если в ней нет никакого содержания.

После вызова функции setup() – управление переходит к функции loop(), которая содержит код, который выполняется постоянно — читаются входы, переключаются выходы и т.д. Эта функция — ядро всех программ Arduino и выполняет основную работу.

Закачка программы в микроконтроллер Arduino происходит через предварительно запрограммированный специальный загрузчик (все микроконтроллеры от Ардуино продаются с этим загрузчиком). Загрузчик создан на основе Atmel AVR Application Note AN109. Загрузчик может работать через интерфейсы RS-232, USB или Ethernet в зависимости от состава периферии конкретной процессорной платы. В некоторых вариантах, таких как Arduino Mini или неофициальной Boarduino, для программирования требуется отдельный переходник.

Пользователь может самостоятельно запрограммировать загрузчик в чистый микроконтроллер. Для этого в IDE интегрирована поддержка программатора на основе проекта AVRDude. Поддерживается несколько типов популярных дешёвых программаторов.

Установка библиотек

Библиотека - это набор функций, предназначенных для того, чтобы максимально упростить работу с различными датчиками, ЖК-экранами, модулями и пр. Например, встроенная библиотека LiquidCrystal позволяет легко взаимодействовать с символьными LCD-экранами. Существуют сотни дополнительных библиотек, которые можно скачать в Интернете.

Чаще всего библиотеки выкладываются в виде ZIP-архива или просто папки. Название этой папки является названием библиотеки. Внутри папки будет файл с расширением .cpp, файл с расширением .h, а также текстовый файл keywords.txt, папка с примерами examples и другие файлы, требуемые библиотекой.

 

Рисунок 1. Окно программы при установке библиотеки

 

После скачивания библиотеки в виде zip-архива его не нужно распаковывать. Для установки запакованной библиотеки служит меню Скетч → Подключить библиотеку → Добавить .ZIP библиотеку (рисунок 1).

После этого нужно указать путь к zip-файлу библиотеки. Этот zip-файл будет распакован и помещен в папку libraries в директорию со скетчами Arduino.

Нужно отметить, что после установки библиотека становится доступной через меню Скетч → Подключить библиотеку, но для того, чтобы стали доступны файлы примеров этой библиотеки, используя меню Файл → Примеры, необходимо перезапустить Arduino IDE (рисунок 2).

 

Рисунок 2. Окно приложения с готовыми примерами программ

 

Список литературы:

  1. Информационные технологии. [Электронный ресурс]. – Режим доступа: http://kunegin.narod.ru/index.html
  2. Техническая спецификация ATMEL. [Электронный ресурс]. – Режим доступа: http://www.atmel.com/images/Atmel-8271-8-bit-AVR-Microcontroller-ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet_Complete.pdf
  3. Техническая спецификация DS18B20. [Электронный ресурс]. – Режим доступа: https://datasheets.maximintegrated.com/en/ds/DS18B20.pdf
Проголосовать за статью
Конференция завершена
Эта статья набрала 0 голосов
Дипломы участников
У данной статьи нет
дипломов

Оставить комментарий

Форма обратной связи о взаимодействии с сайтом
CAPTCHA
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.