Перейти к основному содержимому

Операционные системы

Операционная система связывает программы, файлы, устройства и робота

Коротко

Операционная система - это программная среда, которая помогает запускать программы, работать с файлами, устройствами, сетью и памятью. В робототехнике ОС часто нужна компьютеру, одноплатной плате или рабочему ноутбуку разработчика.

Зачем это нужно

Когда ученик загружает программу в микроконтроллер, операционная система может быть почти незаметна. Код записали, нажали кнопку загрузки, плата начала выполнять цикл. Но как только появляется компьютер, камера, файлы, сеть, терминал, симулятор или интерфейс оператора, операционная система становится важной частью проекта.

На ноутбуке ОС запускает среду разработки. На Raspberry Pi или другом одноплатном компьютере ОС может запускать программу робота, работать с камерой, сохранять логи, подключаться к сети и управлять несколькими процессами. В промышленности ОС или встроенная программная платформа может быть частью контроллера, панели оператора или компьютера управления.

Главная идея

Операционная система находится между программами и оборудованием.

программы -> операционная система -> устройства и ресурсы компьютера

Операционная система как слой между приложениями и оборудованием

Программа не всегда обращается к камере, файлу или сети напрямую. Часто она просит ОС: открыть файл, запустить процесс, отправить данные по сети, прочитать устройство, выделить память. ОС управляет ресурсами и помогает нескольким программам работать рядом.

Что такое ресурс

Ресурс - это то, чем пользуются программы: процессорное время, память, файл, устройство, сетевое соединение или порт.

Что делает операционная система

ОС выполняет много задач, но для робототехники полезно запомнить несколько.

Задача ОСПример в робототехнике
Запуск программстарт программы управления роботом
Работа с файламисохранение логов и настроек
Управление устройствамикамера, USB, сеть, накопитель
Работа с сетьюподключение к роботу по Wi-Fi или Ethernet
Управление процессамиодновременно работает камера, управление и интерфейс
Права доступане каждая программа может менять системные файлы
ДрайверыОС понимает, как работать с конкретным устройством

ОС не делает робота умным сама по себе. Она дает среду, где программы могут запускаться и общаться с оборудованием.

Windows, Linux и встроенные системы

В робототехнике можно встретить разные операционные системы.

ОС или тип системыГде встречаетсяЧем полезна
Windowsноутбук разработчика, учебный компьютерудобные IDE, драйверы, работа с файлами
Linuxсервер, робот, Raspberry Pi, инженерный компьютертерминал, сеть, пакеты, гибкость
Raspberry Pi OSодноплатный компьютер Raspberry Piготовая среда для обучения и проектов
Встроенная системаконтроллер, панель, промышленное устройствоработает внутри конкретного оборудования
Система реального временизадачи с жесткими временными ограничениямипредсказуемое выполнение

Для первого знакомства достаточно понять: ОС нужна там, где устройство работает как компьютер. Микроконтроллер может выполнять программу без большой ОС, а компьютер обычно запускает программы внутри операционной системы.

Чем ОС отличается от программы на микроконтроллере

На микроконтроллере часто работает одна основная программа. Она сама повторяет цикл: читает датчик, проверяет условие, управляет выходом.

На компьютере обычно есть ОС, а внутри нее запускаются разные программы. Например, одновременно могут работать:

  • программа управления роботом;
  • процесс чтения камеры;
  • сетевой сервис;
  • терминал разработчика;
  • запись логов в файл;
  • графический интерфейс.

Это удобно, но добавляет сложность. Нужно понимать, где лежат файлы, какие программы запущены, какие права нужны, какой порт занят и почему устройство не определяется.

Драйверы и устройства

Драйвер - это программная часть, которая помогает ОС работать с устройством. Например, камера, USB-адаптер, моторный контроллер или сетевой модуль могут требовать драйвера или специальной библиотеки.

Если устройство не работает, причина может быть не в программе робота. ОС может не видеть порт, драйвер может быть не установлен, у пользователя может не быть прав доступа, кабель может быть плохим, а устройство может быть занято другой программой.

Что такое порт

Порт - точка подключения или программный канал связи. В робототехнике часто говорят о USB-порте, последовательном порте или сетевом порте.

Пример: программа робота на одноплатном компьютере

Запуск программы робота на компьютере с операционной системой

Представим робота с одноплатным компьютером. К нему подключены камера, сеть и микроконтроллер моторов.

Работа может идти так:

  1. ОС запускается на одноплатном компьютере.
  2. Программа робота стартует как обычный процесс.
  3. Программа получает изображение с камеры через драйвер и библиотеку.
  4. Она сохраняет логи в файл.
  5. Через сеть разработчик смотрит состояние робота.
  6. Команды движения отправляются микроконтроллеру.

В такой системе ОС не заменяет алгоритм, но дает инфраструктуру: файлы, сеть, устройства и запуск программ.

Что запомнить про операционные системы

ИдеяКак понимать
ОС запускает программыбез нее компьютер не дает удобной среды работы
ОС управляет ресурсамипамять, файлы, устройства, сеть, процессы
Микроконтроллер может работать без большой ОСон выполняет свою программу напрямую
Компьютер обычно работает через ОСэто дает файлы, драйверы, интерфейсы и сеть
Драйверы связывают ОС с устройствамикамера или порт могут не работать без нужной поддержки
В робототехнике часто соединяют уровниОС на компьютере и микроконтроллер для управления железом

Практика

Задание 1

Определите, где нужна операционная система.

СитуацияНужна ОС?Почему
Arduino читает кнопку и включает светодиод
Ноутбук запускает среду разработки
Raspberry Pi сохраняет фото с камеры
Робот отправляет логи по сети

Задание 2

Представьте робота с камерой и микроконтроллером моторов. Разделите задачи:

ЗадачаОС/компьютер или микроконтроллер?
читать камеру
сохранять файл
управлять драйвером моторов
читать датчик линии

Задание 3

Программа не видит подключенную плату. Запишите пять возможных причин: кабель, порт, драйвер, права доступа, другая программа или другое.

Проверьте себя

  • Что делает операционная система?
  • Почему компьютеру обычно нужна ОС?
  • Почему микроконтроллер может работать без большой ОС?
  • Что такое драйвер?
  • Зачем роботу могут понадобиться файлы и сеть?
  • Почему ошибка подключения устройства не всегда означает ошибку в программе робота?
Ориентиры для самопроверки

Сначала ответьте без подсказки. Ответ можно считать полным, если вы:

  • формулируете основную мысль своими словами;
  • называете важные условия, ограничения или меры безопасности;
  • для схемы, кода или расчёта показываете ход решения и ожидаемый результат.

Если один из пунктов объяснить не получается, найдите соответствующую главу статьи, перечитайте её и повторите ответ.

Словарь статьи

  • Операционная система - программная среда, которая управляет ресурсами компьютера и запускает программы.
  • Процесс - запущенная программа.
  • Драйвер - программный компонент для работы ОС с устройством.
  • Файл - данные, сохраненные на носителе.
  • Сеть - способ обмена данными между устройствами.
  • Порт - точка подключения или канал связи.
  • Права доступа - правила, определяющие, что пользователь или программа может делать.
  • Система реального времени - система, где важна предсказуемость времени реакции.

Связанные темы

Источники