> For the complete documentation index, see [llms.txt](https://voltbro.gitbook.io/new_bazovyi-kurs-po-ros/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://voltbro.gitbook.io/new_bazovyi-kurs-po-ros/lesson1/setup-pc.md).

# Настройка ПК

Как было сказано ранее **ROS** - это МЕТА-операционная система, а значит для ее работы требуется основная операционная система поверх которой будет развернута ROS.

Есть несколько вариантов установки ROS.

Есть ROS под Windows, есть под Debian, ArcLinux и даже MacOS. Но самым распространенным вариантом является установка его под Linux. Для начало необходимо установить Linux (дистрибутив Ubuntu). Чтобы загрузить дистрибутив Ubuntu перейдите по ссылке: [https://ubuntu.com/#download](https://releases.ubuntu.com/focal/)&#x20;

Выберите ***64-bit  PC (AMD64) desktop image*** и начнётся загрузка.

{% embed url="<https://youtu.be/qmNkVpabwDI>" %}
Установка Linux Ubuntu в VirtualBox
{% endembed %}

## Установка Linux Ubuntu

Перед тем как мы перейдем непосредственно к установке, необходимо выбрать [версию дистрибутива Ubuntu](https://releases.ubuntu.com/), которую необходимо установить. Она связана с версией ROS, которая будет использоваться. Мы будем использовать **ROS Noetic**, и он устанавливается под версию [Ubuntu 20.04 Focal Fossa](https://releases.ubuntu.com/focal/). Кстати, первые буквы в имени дистрибутива ROS и Ubuntu соответствуют порядковому номеру стабильной версии, такой же принцип наименования используется и в версиях Android.

Мы будем устанавливать Linux в виртуальную машину под Windows. Однако установка на чистый компьютер или как вторую операционную систему по сути не отличается от установки в виртуальную машину.

### Установка виртуальной машины

Давайте сначала установим виртуальную машину. Для этого перейдем по ссылке: <https://www.virtualbox.org/wiki/Downloads>

Выберем ***Windows Hosts*** и скачаем установочный файл.

![](/files/G3Q2MtFKC6t9BvtSBQN8)

После окончания загрузки файла запустим установщик VirtualBox.

### Конфигурирование виртуальной машины

Для того, чтобы добавить новую виртуальную машины нажмём ***Создать**:*

![](/files/OLCEpPiO32ciQ4ZiKcFf)

Далее, введём имя ВМ (если мы введем имя "ubuntu" то ВМ автоматически определит, что мы хотим установит Linux Ubuntu):

![](/files/Wk8pZ8jjbokNKc9crdco)

Размер памяти виртуальной машины выбираем в зависимости от имеющегося у вас объема оперативной памяти. Желательно не менее 2-х гигабайт.

Выберем тип виртуального жёсткого диска **VDI.** Размер виртуального жесткого диска рекомендуется устанавливать не менее 20 гигабайт. Желательно - 50-60 гигабайт для комфортной работы.&#x20;

После создания ВМ перейдем к её настройке. Для этого на вкладке созданной ВМ нажмём ***Настроить***:

![](/files/mGuXOxjrv3rJ7p3gCzy6)

Во вкладке ***Система -> Процессор*** выберем количество ядер ЦП. Это индивидуальный параметр и зависит от конфигурации вашего компьютера.&#x20;

Во вкладке ***Сеть -> Адаптер 1*** установим галочку ***"Включить сетевой адаптер"*** и тип подключения ***NAT***.

Во вкладке ***Сеть -> Адаптер 2*** установим галочку ***"Включить сетевой адаптер"*** и тип подключения ***Сетевой мост.*** В качестве имени выберем активный сетевой интерфейс. Если компьютер подключен к сети по Wi-Fi - это будет Wi-Fi адаптер, если по сетевому кабелю - какой-то ethernet-адаптер

Мы настроили нашу виртуальную машину и всё готово к установке Ubuntu.

### Установка Ubuntu в ВМ

Файл образа Ubuntu нужно указать для установки в оптический привод нашей виртуальной машины. Для этого в разделе ***"Носители"*** кликнем по ***\[Оптический привод] Пусто*** и выберем наш образ.

![](/files/UxqpuvBq5jm0UYXWDmIz)

Запускаем установку.

\
Сначала нам предлагается выбрать язык. Рекомендуется выбрать английский - по умолчанию. Это связано с тем, что основной язык общения комьюнити Linux - английский. И когда вы получите какую-нибудь ошибку при установке ROS или пакета под ROS, или, например, при создании вашей программы, вы сможете просто скопировать эту ошибку в Google, чтобы найти ответ.

![](/files/as4lb4Xerees8JlOtXRW)

Далее выберем тип установки:

* Normal installation - установка различных утилит, игры и медиаплееров
* Minimal installation - установка минимально необходимого софта

![](/files/Sz2y6yRbXV9Haryx6ueL)

Также в ходе установки введем имя пользователя и пароль:

![](/files/GDvl1Kdfm1yybJ7LcI1N)

После окончания установки, Ubuntu попросит перезагрузить ВМ. После перезагрузки операционная система загрузится в нормальном режиме:

![](/files/tnQK5hQu2veJ7zgKyqdO)

Установка ОС Ubuntu прошла успешно.

### Установка дополнения гостевой ОС

После запуска необходимо слегка донастроить Ubuntu, чтобы она корректно работала в виртуальной машине. Для этого установим дополнения гостевой ОС. Выберем вкладку "Устройства" -> Подключить образ...

![](/files/GOjDVkSqV90VYicLNlKL)

Далее нажмём "Run" и установка запустится автоматически.

После завершения установки перезагрузим ВМ. После установки дополнения Гостевой ОС вам будут доступны следующие функции:

* **Интеграция указателей мыши**
* **Общие папки**
* **Улучшенная поддержка видео**
* **Режим интеграции экрана**
* **Общие каналы связи хоста/гостя**
* **Общий буфер обмена и т.д.**

### Установка дополнительного ПО

Ну и вишенкой на торте будет установка некоторых полезных программ и утилит, которые мы будем использовать в дальнейшем при изучении ROS.

#### Редактор кода Visual Studio Code <a href="#install-vscode" id="install-vscode"></a>

Мы рекомендуем для работы с кодом установить редактор кода **Visual Studio Code**. Для **Ubuntu** это можно сделать через стандартную программу Ubuntu Software, набрав в поиске `Code Studio` и выбрав соответствующую программу:

![Install Visual Studio Code](https://files.gitbook.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LQhu652yC0EsOGaAHA-%2Fuploads%2FvXhOmXRkHdVnVAWjLitu%2Fvs-code.png?alt=media\&token=60325bbe-f071-4e75-b33b-54ebde54d938)

Или можно воспользоваться [инструкцией с официального сайта Visual Studio Code](https://code.visualstudio.com/docs/setup/linux), открыть терминал и ввести следующую последовательность команд:

```
sudo apt-get install wget gpg
# после этой команды необходимо ввести пароль от Ubuntu

wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
sudo install -o root -g root -m 644 packages.microsoft.gpg /etc/apt/trusted.gpg.d/
sudo sh -c 'echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/trusted.gpg.d/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" > /etc/apt/sources.list.d/vscode.list'
rm -f packages.microsoft.gpg

sudo apt install apt-transport-https
sudo apt update
sudo apt install code
```

#### Пакет net-tools

**net-tools** — комплект консольных утилит, включающих классические инструменты управления сетевой подсистемой в **GNU Linux** операционных системах. Для установки этого пакета введем в терминале следующую команду:

```
sudo apt install net-tools
```

#### Среда Arduino IDE

Одной из самых удобных сред программирования для Arduino считается Arduino IDE. Установить в **Ubuntu** Arduino IDE можно через стандартную программу Ubuntu Software, набрав в поиске `Arduino IDE` и выбрав соответствующую программу:

![](/files/IvfhniGGfYVn76c4akeu)

Или можно воспользоваться [инструкцией с официального сайта](https://docs.arduino.cc/software/ide-v1/tutorials/Linux#run-the-install-script).

{% hint style="info" %}
После установки Arduino IDE обязательно в терминале выполните следующую команду:

`sudo usermod -a -G dialout $USER`
{% endhint %}
