Не забудьте, как соединены рельсы в беспаечной макетной плате. Если на вашей макетке красная и синяя линии вдоль длинных рельс прерываются в середине, значит проводник внутри макетки тоже прерывается!
Катод («минус») светодиода — короткая ножка, именно её нужно соединять с землёй (GND)
Не пренебрегайте резистором, иначе светодиод выйдет из строя
Выбрать резистор нужного номинала можно с помощью таблицы маркировки или с помощью мультиметра в режиме измерения сопротивления
Плата Arduino имеет три пина GND, используйте любой из них
void setup(){// настраиваем пин №13 в режим выхода,// т.е. в режим источника напряжения
pinMode(13, OUTPUT);}void loop(){// подаём на пин 13 «высокий сигнал» (англ. «high»), т.е.// выдаём 5 вольт. Через светодиод побежит ток.// Это заставит его светиться
digitalWrite(13, HIGH);// задерживаем (англ. «delay») микроконтроллер в этом// состоянии на 100 миллисекунд
delay(100);// подаём на пин 13 «низкий сигнал» (англ. «low»), т.е.// выдаём 0 вольт или, точнее, приравниваем пин 13 к земле.// В результате светодиод погаснет
digitalWrite(13, LOW);// замираем в этом состоянии на 900 миллисекунд
delay(900);// после «размораживания» loop сразу же начнёт исполняться// вновь, и со стороны это будет выглядеть так, будто// светодиод мигает раз в 100 мс + 900 мс = 1000 мс = 1 сек}
Пояснения к коду
Процедура setup выполняется один раз при запуске микроконтроллера. Обычно она используется для конфигурации портов микроконтроллера и других настроек
После выполнения setup запускается процедура loop, которая выполняется в бесконечном цикле. Именно этим мы пользуемся в данном примере, чтобы маячок мигал постоянно
Процедуры setup и loop должны присутствовать в любой программе (скетче), даже если вам не нужно ничего выполнять в них — пусть они будут пустые, просто не пишите ничего между фигурными скобками. Например:
void setup(){}
Запомните, что каждой открывающей фигурной скобке { всегда соответствует закрывающая }. Они обозначают границы некого логически завершенного фрагмента кода. Следите за вложенностью фигурных скобок. Для этого удобно после каждой открывающей скобки увеличивать отступ на каждой новой строке на один символ табуляции (клавиша Tab)
Обращайте внимание на ; в концах строк. Не стирайте их там, где они есть, и не добавляйте лишних. Вскоре вы будете понимать, где они нужны, а где нет.
Функция digitalWrite(pin, value) не возвращает никакого значения и принимает два параметра:
pin — номер цифрового порта, на который мы отправляем сигнал
value — значение, которое мы отправляем на порт. Для цифровых портов значением может быть HIGH (высокое, единица) или LOW (низкое, ноль)
Если в качестве второго параметра вы передадите функции digitalWrite значение, отличное от HIGH, LOW, 1 или 0, компилятор может не выдать ошибку, но считать, что передано HIGH. Будьте внимательны
Обратите внимание, что использованные нами константы: INPUT, OUTPUT, LOW, HIGH, пишутся заглавными буквами, иначе компилятор их не распознает и выдаст ошибку. Когда ключевое слово распознано, оно подсвечивается синим цветом в Arduino IDE
Вопросы для проверки себя
Что будет, если подключить к земле анод светодиода вместо катода?
Что будет, если подключить светодиод с резистором большого номинала (например, 10 кОм)?
Что будет, если подключить светодиод без резистора?
Зачем нужна встроенная функция pinMode? Какие параметры она принимает?
Зачем нужна встроенная функция digitalWrite? Какие параметры она принимает?
С помощью какой встроенной функции можно заставить микроконтроллер ничего не делать?
В каких единицах задается длительность паузы для этой функции?
Задания для самостоятельного решения
Сделайте так, чтобы маячок светился полсекунды, а пауза между вспышками была равна одной секунде
Измените код примера так, чтобы маячок включался на три секунды после запуска устройства, а затем мигал в стандартном режиме
Промышленные роботы являются основой современного автоматизированного производства. Они представляют собой программируемые механические устройства, способные выполнять сложные производственные операции с высокой точностью, скоростью и грузоподъемностью, заменяя или помогая людям в монотонных, опасных или требующих особой точности задачах-
2-9. Понимание их классификации, назначения и особенностей применения необходимо для формирования целостного представления о современной промышленности и перспективах ее развития.
1. Понятие и определение промышленного робота
Согласно международному стандарту ISO и классификации Международной федерации робототехники (IFR), промышленный робот — это "автоматически управляемый, перепрограммируемый, многоцелевой манипулятор, программируемый по трем или более осям". Он может быть как стационарным, так и иметь возможность передвижения для использования в приложениях промышленной автоматизации -1.
В российском ГОСТ 25686-85 дается следующее определение: промышленный робот (ПР) — автоматическая машина, стационарная или передвижная, состоящая из исполнительного устройства в виде манипулятора, имеющего несколько степеней подвижности, и перепрограммируемого устройства программного управления для выполнения в производственном процессе двигательных и управляющих функций -7.
Ключевые признаки промышленного робота:
Манипулятор — устройство для захвата и перемещения объектов
Многоцелевое назначение — возможность адаптации к различным задачам путем смены концевых эффекторов (инструментов)
Автоматическое управление — работа по программе, а не вручную
Наличие трех и более программируемых осей — способность достигать любой точки в трехмерном пространстве
Перепрограммируемость — возможность изменения движений и функций без изменения механической системы -1
Промышленные роботы отличаются от станков с ЧПУ тем, что они намеренно неспецифичны и предназначены для широкого и постоянно меняющегося спектра задач -1.
2. Классификация промышленных роботов
Промышленные роботы классифицируются по множеству признаков, что позволяет выбрать оптимальное решение для конкретных производственных задач.
2.1. По кинематической схеме (форме рабочего пространства)
Шестиосевые шарнирные роботы являются наиболее популярными благодаря своей универсальности — их конструкция, состоящая из нескольких суставов, позволяет совершать сложные движения по разнообразным траекториям -5.
Литье, штамповка, перемещение кузовов автомобилей -5-9
Крупнейший в мире промышленный робот — FANUC M-2000iA может поднимать грузы массой до 1,7 тонн, что эквивалентно весу небольшого автомобиля -9.
2.3. По характеру выполняемых операций
Технологические (производственные) — выполняют основные операции технологического процесса: гибка, сварка, сборка, окраска -7
Вспомогательные (подъемно-транспортные) — обслуживают основное технологическое оборудование: установка и снятие заготовок, транспортно-складские операции -7
Универсальные — выполняют различные операции и могут работать совместно с разными видами оборудования -7
2.4. По степени специализации
Специальные — выполняют определенную технологическую операцию или обслуживают конкретную модель оборудования -7
Специализированные (целевые) — выполняют операции одного вида (только сварка, только сборка) -7
Многоцелевые (универсальные) — выполняют различные основные и вспомогательные операции -7
2.5. По методу управления
Программные роботы — работают по жесткой программе без учета внешних условий
Адаптивные роботы — оснащены датчиками и способны подстраиваться под изменения среды
Интеллектуальные роботы — используют элементы искусственного интеллекта для принятия решений -5
Точность промышленных роботов варьируется от ±0,02 мм (роботы для микроэлектроники) до более 0,5 мм (роботы для грубых операций). Роботы для производства полупроводников (ASML) имеют погрешность менее 1 нанометра -9.
2.8. Коллаборативные роботы (коботы)
Особая категория промышленных роботов, спроектированных для безопасной работы совместно с человеком без защитных ограждений. Они оснащены датчиками силы, ограничителями скорости и системой обнаружения столкновений -2-5-10. Коботы технически схожи с традиционными роботами-манипуляторами, но их главное отличие — наличие датчиков, контролирующих действия находящихся рядом людей -5.
3. Назначение и области применения
Промышленные роботы применяются в различных отраслях для автоматизации производственных процессов.
3.1. Основные операции, выполняемые промышленными роботами
Снижение эксплуатационных расходов в долгосрочной перспективе
5. Современные тенденции развития промышленной робототехники
5.1. Интеллектуализация
Современные промышленные роботы интегрируют все больше сенсоров (зрение, сила, осязание), применяют алгоритмы машинного обучения и приобретают способность к автономному принятию решений -4.
5.2. Коллаборация
Распространение коботов, способных безопасно работать вместе с людьми без ограждений, что особенно важно для малых и средних предприятий с гибким производством -4-8.
Благодаря технологическому прогрессу и эффекту масштаба, стоимость промышленных роботов за последние 20 лет снизилась более чем на 50%, делая их доступными для среднего бизнеса -9.
5.5. Интеграция с цифровыми технологиями
Создание "цифровых двойников" производственных линий, использование облачных вычислений, промышленного интернета вещей (IIoT) и систем искусственного интеллекта для оптимизации работы -4-8.
6. Российский рынок промышленной робототехники
Рынок промышленной робототехники в России развивается ускоренными темпами — рост составляет около 40% в год. К 2030 году уровень плотности роботизации в рамках целей национальных проектов должен достигнуть 145 единиц на 10 000 сотрудников -5.
Крупнейшие проекты реализуются на предприятиях:
АвтоВАЗ — внедрение роботов для сварки кузовов
КАМАЗ — роботизированная вклейка стекол
Северсталь — инвестиции 500 млн рублей в роботизацию (2025 год), включая системы плазменной резки, сварки и контроля качества -5
Вывод: Промышленные роботы представляют собой сложные автоматизированные системы, классифицируемые по множеству признаков: кинематической схеме, грузоподъемности, назначению, степени специализации, методу управления и другим параметрам. Их основное назначение — повышение эффективности, точности и безопасности производства путем автоматизации как основных технологических, так и вспомогательных операций. Наиболее широко промышленные роботы применяются в автомобилестроении, электронной промышленности, металлообработке, пищевой промышленности и логистике. Современные тенденции — интеллектуализация, коллаборация, модульность и снижение стоимости — делают роботизацию доступной не только для крупных, но и для средних предприятий, что способствует росту производительности и конкурентоспособности промышленности в целом.
Параграф: Практическая работа «Использование операторов ввода-вывода в визуальной среде программирования»
Освоение принципов взаимодействия человека с компьютером является фундаментальным этапом в изучении программирования и робототехники. Операторы ввода и вывода обеспечивают этот диалог, позволяя программе получать данные от пользователя и отображать результаты своей работы. Визуальные среды программирования делают этот процесс особенно наглядным и доступным для начинающих.
1. Цель и задачи практической работы
Цель работы: научиться создавать программы с использованием операторов ввода и вывода в интегрированной среде программирования роботов -1.
Задачи:
Познакомиться с понятиями «оператор», «оператор ввода», «оператор вывода» -1;
Изучить интерфейс визуальной среды программирования;
Научиться строить цепочки команд с использованием операторов ввода-вывода -1;
Освоить процесс загрузки программы на микроконтроллер;
Научиться искать и исправлять ошибки в программе -1.
2. Теоретические основы
В любой системе программирования, включая визуальные среды, взаимодействие с пользователем строится на трёх базовых элементах: ввод данных, их обработка и вывод результатов.
2.1. Операторы ввода
Операторы ввода предназначены для получения данных от пользователя или от подключённых датчиков. В контексте робототехники это могут быть:
значения, вводимые с клавиатуры компьютера;
сигналы от датчиков (расстояния, освещённости, касания);
команды с пульта дистанционного управления.
Визуальные среды программирования предлагают специальные блоки для организации ввода. Например, для получения данных от пользователя можно использовать текстовое поле, а связь этого элемента с логикой программы осуществляется через визуальный интерфейс с помощью операций перетаскивания или графического редактора событий -2.
2.2. Операторы вывода
Операторы вывода отвечают за передачу информации от программы пользователю или к исполнительным устройствам. Это могут быть:
вывод текста или чисел на экран монитора;
включение/выключение светодиодов;
подача звукового сигнала;
отправка команд моторам.
Для вывода информации в визуальных средах используются такие элементы, как текстовая область, ярлык, графические индикаторы -2.
2.3. Структура программы в визуальной среде
Несмотря на внешние различия, программы в визуальных средах имеют типовую структуру, включающую три основных раздела -8:
Раздел
Назначение
Пример (Arduino)
Объявление переменных
Определение используемых объектов и их свойств
int redLED = 10;
Настройка (setup)
Однократное выполнение начальных установок
pinMode(redLED, OUTPUT);
Основной цикл (loop)
Многократное выполнение рабочих операций
digitalWrite(redLED, HIGH);
3. Оборудование и материалы
Для выполнения практической работы потребуется -1:
Аппаратное обеспечение:
компьютер с установленной визуальной средой программирования;
Arduino-плата (или аналогичный микроконтроллер);
две красные светодиодные лампочки;
резисторы для ограничения тока через светодиоды;
соединительные провода.
Программное обеспечение:
визуальная среда для программирования роботов (например, среда разработки для Arduino с использованием языка C++).
4. Задание и порядок выполнения
Задание: Напишите программу для моделирования работы железнодорожного семафора, в котором попеременно мигают две красные лампочки. Лампочки подключены к портам 10 и 11 -1.
4.1. Технологическая карта выполнения
№
Последовательность технологических операций
Материалы, инструменты
1
Написать команду, по которой первая красная лампочка подключится к порту 10
компьютер, визуальная среда для программирования роботов -1
2
Написать команду, по которой вторая красная лампочка подключится к порту 11
компьютер, визуальная среда для программирования роботов
3
Написать команду, по которой будет установлен порт 10 на вывод
компьютер, визуальная среда для программирования роботов
4
Написать команду, по которой будет установлен порт 11 на вывод
компьютер, визуальная среда для программирования роботов
5
Написать команду, по которой включится первая красная лампочка
компьютер, визуальная среда для программирования роботов
6
Написать команду, по которой выключится вторая красная лампочка
компьютер, визуальная среда для программирования роботов
7
Написать команду, по которой всё останется без изменений 1 секунду
компьютер, визуальная среда для программирования роботов
8
Написать команду, по которой выключится первая красная лампочка
компьютер, визуальная среда для программирования роботов
9
Написать команду, по которой включится вторая красная лампочка
компьютер, визуальная среда для программирования роботов
10
Написать команду, по которой всё останется без изменений 1 секунду
компьютер, визуальная среда для программирования роботов -1
4.2. Пример выполнения программы
Ниже представлен образец программы на языке Arduino (C++), моделирующей работу железнодорожного семафора с мигающими красными лампочками, подключёнными к портам 10 и 11 -1.
cpp
int redLED1 =10;// Первая красная лампочка подключена к порту 10int redLED2 =11;// Вторая красная лампочка подключена к порту 11voidsetup(){pinMode(redLED1, OUTPUT);// Установка порта 10 на выводpinMode(redLED2, OUTPUT);// Установка порта 11 на вывод}voidloop(){digitalWrite(redLED1, HIGH);// Включаем первую красную лампочкуdigitalWrite(redLED2, LOW);// Выключаем вторую красную лампочкуdelay(1000);// Ждём 1 секундуdigitalWrite(redLED1, LOW);// Выключаем первую красную лампочкуdigitalWrite(redLED2, HIGH);// Включаем вторую красную лампочкуdelay(1000);// Ждём ещё 1 секунду}
Пояснения к программе:
int redLED1 = 10; — оператор, связывающий имя redLED1 с портом 10;
pinMode(redLED1, OUTPUT); — оператор настройки порта на вывод (output);
Программа запускается и решает поставленную задачу: 5 баллов. За каждую синтаксическую ошибку в программе: –0,5 балла. Команды расположены в неправильной последовательности, нарушена логика: –0,5 балла. Программа не решает поставленной задачи: 0 баллов.
6. Выводы по результатам практической работы
Пример вывода: С помощью оператора вывода даётся команда включения (светить) лампочки, с помощью оператора вывода даётся команда выключения (гаснет) лампочки. Так можно сделать, например, семафор, светофор, фары -1.
В более общем смысле:
Операторы ввода позволяют программе получать данные от пользователя или от внешних устройств (датчиков);
Операторы вывода обеспечивают передачу результатов работы программы к исполнительным устройствам (светодиодам, моторам, дисплеям);
Визуальные среды программирования делают процесс создания программ интуитивно понятным, поскольку не требуют глубокого знания синтаксиса языка -2;
Связь элементов интерфейса с логикой программы осуществляется через визуальные операции, такие как перетаскивание или графический редактор событий -2.
Вывод: Выполнение данной практической работы позволяет освоить базовые принципы организации ввода-вывода в программах для микроконтроллеров, что является необходимым фундаментом для дальнейшего изучения робототехники и создания более сложных автоматизированных систем.