From 9c1bccfa7251181942186d7de5c42dcac89a6865 Mon Sep 17 00:00:00 2001 From: Your Name Date: Thu, 8 Apr 2021 16:53:29 +0300 Subject: [PATCH] fix floader --- README.md | 156 ++++++++++++++++++ book/README.md | 155 ----------------- book/img.png => img.png | 0 ...ие-1.png => изображение-1.png | 0 ...е-10.png => изображение-10.png | 0 ...ие-2.png => изображение-2.png | 0 ...ие-3.png => изображение-3.png | 0 ...ие-4.png => изображение-4.png | 0 ...ие-5.png => изображение-5.png | 0 ...ие-6.png => изображение-6.png | 0 ...ие-7.png => изображение-7.png | 0 ...ие-8.png => изображение-8.png | 0 ...ие-9.png => изображение-9.png | 0 ...ение.png => изображение.png | 0 14 files changed, 156 insertions(+), 155 deletions(-) delete mode 100644 book/README.md rename book/img.png => img.png (100%) rename book/изображение-1.png => изображение-1.png (100%) rename book/изображение-10.png => изображение-10.png (100%) rename book/изображение-2.png => изображение-2.png (100%) rename book/изображение-3.png => изображение-3.png (100%) rename book/изображение-4.png => изображение-4.png (100%) rename book/изображение-5.png => изображение-5.png (100%) rename book/изображение-6.png => изображение-6.png (100%) rename book/изображение-7.png => изображение-7.png (100%) rename book/изображение-8.png => изображение-8.png (100%) rename book/изображение-9.png => изображение-9.png (100%) rename book/изображение.png => изображение.png (100%) diff --git a/README.md b/README.md index 27a664b..0fa9a4e 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,158 @@ # AlphaBot2 +# Изучаем робота AlphaBot2-Pi. + +инструкция по сборке тут (https://www.waveshare.com/w/upload/1/1a/Alphabot2-pi-assembly-diagram-en.pdf) +TODO: передрать часть с компонентами робота с офф сайта (https://www.waveshare.com/wiki/AlphaBot2-Pi) + +TODO: написать про ЗАРЯДКУ + +## Установка системы и минимальная настройка. + +В этом разделе мы рассмотрим процесс установки операционной системы на raspberry py и рассмотрим способы взаимодействия с ней в операционной системе linux и windows. Предполагается что изучающие это руководство владеют linux консолью, и язаком программирования пайтон. Для того чтобы запустить linux на raspberry необходимо выполнить следующие действия: + +1) Скачать отсюда (https://www.raspberrypi.org/software/operating-systems/#raspberry-pi-os-32-bit) образ ```Raspberry Pi OS```. Я рекомендую использовать ```Raspberry Pi OS with desktop and recommended software```, этот образ будет содержать большенство вещей необходимых нам в будующем. + +2) Распокавать архив, в Windows можно использовать программу Winrar. + +3) Записать образ на карту памяти, обратите внимание она должна быть больше чем 4Gb. Создатели малинки советуют использовать для этого Etcher (https://www.balena.io/etcher/). Скачиваем эту программу и устанавливаем себе на компьютер. Нас встретит провтой интерфейс где сначало нужно выбрать образ, потом выбрать карту память на которую мы хотим все записать, и после согласится на запись. Естественно все ваши данные будут удалены с данной карты. + +![img](изображение.png) + +Далее необходимо подождать пока не закончится загрузка на карту памяти. + +![изображение-1.png](img.png) + +После чего необходимо дождатся завершения проверки правильности записанных данных на флеш карту. + +![изображение-2.png](./изображение-2.png) + +4) Далее необходимо прописать некотрые настройки а именно настройки wifi. Это нужно для того чтобы мы могли подключится удаленно к пишке и управлять ей использую другой компьютер на не подключать монитор и клавиатуру с мышью непосредственно к пишке. Для этого необходимо добавить 2 файла в раздел boot который должен был появится у вас после записи образа системы на диск. + +![изображение-3.png](./изображение-3.png) + +Нужно добавить 2 файла: + +* ssh.txt - писать в него ничего не нужно, он необходим для того чтобы мы могли подключится к малинке используя сервис ssh (https://ru.wikipedia.org/wiki/SSH) +* wpa_supplicant.conf - тут необходимо приписать параметры вашей wifi сети в следующем формате: + +``` +ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev +update_config=1 + +network={ + ssid="НАЗВАНИЕ ТОЧКИ ДОСТУПА WiFi" + psk="ПАРОЛЬ WiFi" + key_mgmt=WPA-PSK +} +``` +При создании данного файла система спросит вас: + +![изображение-4.png](./изображение-4.png) + +Соглашайтесь, далее необхадимо будет выбрать в меню по правой кнопке мыши ```Открыть с помощью``` и там выбрать блокнот. После чего Добавить строки представленные выше заменив +названия точки доступа и пароль на свои, после чего сохранив. Содержимое этого файла будет автоматически перенесено в ```/etc/wpa_supplicant/wpa_supplicant.conf``` при старте системы. + +5) Запуск робота. Далее извлекаем карту памяти из компьютера, предварительно воспользовавшись функцией безопасного извлечения, после чего вставляем в расбери, установленную в роботе. Далее переводим ```PWR SWITCH``` находящийся снизу робота из состояния ```OFF``` в ```ON```, после чего ждем около 3х минут чтобы система успела сделать все настройки. Для того что-юы на этом этапе не возникло проблем убедитесь что аккумуляторы заряжены, это очень важно потомучто робот в неактивном состоянии когда находится на зарядке. + +6) Подключение к расбери. Для этого воспользуемся бесплатной версией прекрасной программы которая позволит нам совершить практически любое подключение - MobaXterm (https://mobaxterm.mobatek.net/) ее тоже необходимо скачать и установить. Для подключения к малине по ssh необходимо сделать следующее: + +Нажать на кнопку Session в левом верхнем углу программы. + +![изображение-5.png](./изображение-5.png) + +Далее в появившимся окне забать параметры в соответствии с скриншотом. + +![изображение-6.png](./изображение-6.png) + +Иными словами вы должны подклюсится к ssh к хосту с названием raspberrypi и именем пользователя pi. Через некотрое время вам предложат ввести пароль: + +![изображение-7.png](./изображение-7.png) + +Необходимо ввести ```raspberry```. После чего вы можете согранить данный пароль в системе, если вам будет так удобнее. После чего система предложет вам ввести команды на исполнение. + +![изображение-8.png](./изображение-8.png) + +Если это произошло значит все хорошо и все работает если нет, это свидетельствует о проблемах с сетью. Первое что можно сделать это подключится к роутеру (обычно он находится на адресе http://192.168.0.1/или http://192.168.1.1/) и посмотреть там в списках клиентов расбери. На моем роутере это выглядит так: + +![изображение-9.png](./изображение-9.png) + +Оттуда берем IP адрес и далее все как описанно в этом пункте, только вместо хоста с названием raspberrypi используем полученный IP. Если это тоже не работает остается только одно, отсоеденить распберри от робота подключить к монитору и с помощью клавиатуры и мыши через графический интерфейс поключит пишку к роутеру. + +## Настройка робота. + +Для работы с коботом необходимо выполнить ряд настроек. Для начала их нужно будет сделать в программе для конфигурирования малины ```raspi-config```, Для чего используем следующую команду: + +```bash +sudo raspi-config +``` + +После чего вы увидене следующее меню. + +![изображение-10.png](./изображение-10.png) + +Внешний вид программы изменился посравнению с прошлыми скриншотами потомучто я открепил окно из программы. Если вы хотите сделать также нажмите левой кнопкой мыши на вкладку с вашим терминалом и перетащите в свободную область рабочего стола. + +Навигация в данном режиме очень проста, стрелками вверх и вниз мы выбираем нужный пункт меню, enter позволяект пройти в подпункты данного пункта или выбрать конкретную растройку. Стрелки вправо и влево выбрать один из пунктов находящийся внизу. Ниже я перечислю какие настройки необходимо сделать: + +```bash +Interface Options -> Camera -> Yes -> Yes -> OK +Interface Options -> SPI -> Yes -> OK +Interface Options -> I2C -> Yes -> OK +Interface Options -> Serial Port -> No -> Yes -> OK +``` + +После завершения настройки необходимо выбрать finish и система предложет вам перезарузить расберри, на что соглашаемся. Подключится можно будет способом описанным выше, либо нажать кнопку R и MobaXterm автомотически постарается переподключится к роботу. + +После того как система загрузится необходимо установть пакеты необходимые для работы с перефирией робота, для этого сначала обнавляем систему, потом ставим все необходимое: + +```bash +sudo apt update && sudo apt dist-upgrade -y +sudo apt install ttf-wqy-zenhei python-pip python-smbus python-serial +sudo pip install RPi.GPIO spidev rpi_ws281x +``` + +Исполнение первой команды, может занять достаточно длительное время. + +## Упровление компонентами робота. + +Для упровления роботом я создал библиотеку bsp.py, для использования ее нужно будет бобавить в папку в вашим скриптом и импортнуть. Далее рассмотрим все сосовные части робота и то как ими можно управлять и какие данные с них можно получить. + +1) управление моторами. Управление моторами осуществляется с помощью 4х GPIO которые задают напрвление вращения 2х моторов и 2 PWM которые задают скорость вращения. + +![изображение-1.png](./изображение-1.png) + +В библиотеке bsp.py уже сделанна обвязка так что вам останется только аказать мотор, скорость и направление вращения для взаимодействия. + + + +```bash +``` +```bash +``` +```bash +``` +```bash +``` +```bash +``` +```bash +``` +```bash +``` +```bash +``` +```bash +``` +```bash +``` +```bash +``` +```bash +``` +```bash +``` + + + + diff --git a/book/README.md b/book/README.md deleted file mode 100644 index 4cd90ea..0000000 --- a/book/README.md +++ /dev/null @@ -1,155 +0,0 @@ -# Изучаем робота AlphaBot2-Pi. - -инструкция по сборке тут (https://www.waveshare.com/w/upload/1/1a/Alphabot2-pi-assembly-diagram-en.pdf) -TODO: передрать часть с компонентами робота с офф сайта (https://www.waveshare.com/wiki/AlphaBot2-Pi) - -TODO: написать про ЗАРЯДКУ - -## Установка системы и минимальная настройка. - -В этом разделе мы рассмотрим процесс установки операционной системы на raspberry py и рассмотрим способы взаимодействия с ней в операционной системе linux и windows. Предполагается что изучающие это руководство владеют linux консолью, и язаком программирования пайтон. Для того чтобы запустить linux на raspberry необходимо выполнить следующие действия: - -1) Скачать отсюда (https://www.raspberrypi.org/software/operating-systems/#raspberry-pi-os-32-bit) образ ```Raspberry Pi OS```. Я рекомендую использовать ```Raspberry Pi OS with desktop and recommended software```, этот образ будет содержать большенство вещей необходимых нам в будующем. - -2) Распокавать архив, в Windows можно использовать программу Winrar. - -3) Записать образ на карту памяти, обратите внимание она должна быть больше чем 4Gb. Создатели малинки советуют использовать для этого Etcher (https://www.balena.io/etcher/). Скачиваем эту программу и устанавливаем себе на компьютер. Нас встретит провтой интерфейс где сначало нужно выбрать образ, потом выбрать карту память на которую мы хотим все записать, и после согласится на запись. Естественно все ваши данные будут удалены с данной карты. - -![img](изображение.png) - -Далее необходимо подождать пока не закончится загрузка на карту памяти. - -![изображение-1.png](img.png) - -После чего необходимо дождатся завершения проверки правильности записанных данных на флеш карту. - -![изображение-2.png](./изображение-2.png) - -4) Далее необходимо прописать некотрые настройки а именно настройки wifi. Это нужно для того чтобы мы могли подключится удаленно к пишке и управлять ей использую другой компьютер на не подключать монитор и клавиатуру с мышью непосредственно к пишке. Для этого необходимо добавить 2 файла в раздел boot который должен был появится у вас после записи образа системы на диск. - -![изображение-3.png](./изображение-3.png) - -Нужно добавить 2 файла: - -* ssh.txt - писать в него ничего не нужно, он необходим для того чтобы мы могли подключится к малинке используя сервис ssh (https://ru.wikipedia.org/wiki/SSH) -* wpa_supplicant.conf - тут необходимо приписать параметры вашей wifi сети в следующем формате: - -``` -ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev -update_config=1 - -network={ - ssid="НАЗВАНИЕ ТОЧКИ ДОСТУПА WiFi" - psk="ПАРОЛЬ WiFi" - key_mgmt=WPA-PSK -} -``` -При создании данного файла система спросит вас: - -![изображение-4.png](./изображение-4.png) - -Соглашайтесь, далее необхадимо будет выбрать в меню по правой кнопке мыши ```Открыть с помощью``` и там выбрать блокнот. После чего Добавить строки представленные выше заменив -названия точки доступа и пароль на свои, после чего сохранив. Содержимое этого файла будет автоматически перенесено в ```/etc/wpa_supplicant/wpa_supplicant.conf``` при старте системы. - -5) Запуск робота. Далее извлекаем карту памяти из компьютера, предварительно воспользовавшись функцией безопасного извлечения, после чего вставляем в расбери, установленную в роботе. Далее переводим ```PWR SWITCH``` находящийся снизу робота из состояния ```OFF``` в ```ON```, после чего ждем около 3х минут чтобы система успела сделать все настройки. Для того что-юы на этом этапе не возникло проблем убедитесь что аккумуляторы заряжены, это очень важно потомучто робот в неактивном состоянии когда находится на зарядке. - -6) Подключение к расбери. Для этого воспользуемся бесплатной версией прекрасной программы которая позволит нам совершить практически любое подключение - MobaXterm (https://mobaxterm.mobatek.net/) ее тоже необходимо скачать и установить. Для подключения к малине по ssh необходимо сделать следующее: - -Нажать на кнопку Session в левом верхнем углу программы. - -![изображение-5.png](./изображение-5.png) - -Далее в появившимся окне забать параметры в соответствии с скриншотом. - -![изображение-6.png](./изображение-6.png) - -Иными словами вы должны подклюсится к ssh к хосту с названием raspberrypi и именем пользователя pi. Через некотрое время вам предложат ввести пароль: - -![изображение-7.png](./изображение-7.png) - -Необходимо ввести ```raspberry```. После чего вы можете согранить данный пароль в системе, если вам будет так удобнее. После чего система предложет вам ввести команды на исполнение. - -![изображение-8.png](./изображение-8.png) - -Если это произошло значит все хорошо и все работает если нет, это свидетельствует о проблемах с сетью. Первое что можно сделать это подключится к роутеру (обычно он находится на адресе http://192.168.0.1/или http://192.168.1.1/) и посмотреть там в списках клиентов расбери. На моем роутере это выглядит так: - -![изображение-9.png](./изображение-9.png) - -Оттуда берем IP адрес и далее все как описанно в этом пункте, только вместо хоста с названием raspberrypi используем полученный IP. Если это тоже не работает остается только одно, отсоеденить распберри от робота подключить к монитору и с помощью клавиатуры и мыши через графический интерфейс поключит пишку к роутеру. - -## Настройка робота. - -Для работы с коботом необходимо выполнить ряд настроек. Для начала их нужно будет сделать в программе для конфигурирования малины ```raspi-config```, Для чего используем следующую команду: - -```bash -sudo raspi-config -``` - -После чего вы увидене следующее меню. - -![изображение-10.png](./изображение-10.png) - -Внешний вид программы изменился посравнению с прошлыми скриншотами потомучто я открепил окно из программы. Если вы хотите сделать также нажмите левой кнопкой мыши на вкладку с вашим терминалом и перетащите в свободную область рабочего стола. - -Навигация в данном режиме очень проста, стрелками вверх и вниз мы выбираем нужный пункт меню, enter позволяект пройти в подпункты данного пункта или выбрать конкретную растройку. Стрелки вправо и влево выбрать один из пунктов находящийся внизу. Ниже я перечислю какие настройки необходимо сделать: - -```bash -Interface Options -> Camera -> Yes -> Yes -> OK -Interface Options -> SPI -> Yes -> OK -Interface Options -> I2C -> Yes -> OK -Interface Options -> Serial Port -> No -> Yes -> OK -``` - -После завершения настройки необходимо выбрать finish и система предложет вам перезарузить расберри, на что соглашаемся. Подключится можно будет способом описанным выше, либо нажать кнопку R и MobaXterm автомотически постарается переподключится к роботу. - -После того как система загрузится необходимо установть пакеты необходимые для работы с перефирией робота, для этого сначала обнавляем систему, потом ставим все необходимое: - -```bash -sudo apt update && sudo apt dist-upgrade -y -sudo apt install ttf-wqy-zenhei python-pip python-smbus python-serial -sudo pip install RPi.GPIO spidev rpi_ws281x -``` - -Исполнение первой команды, может занять достаточно длительное время. - -## Упровление компонентами робота. - -Для упровления роботом я создал библиотеку bsp.py, для использования ее нужно будет бобавить в папку в вашим скриптом и импортнуть. Далее рассмотрим все сосовные части робота и то как ими можно управлять и какие данные с них можно получить. - -1) управление моторами. Управление моторами осуществляется с помощью 4х GPIO которые задают напрвление вращения 2х моторов и 2 PWM которые задают скорость вращения. - -![изображение-1.png](./изображение-1.png) - -В библиотеке bsp.py уже сделанна обвязка так что вам останется только аказать мотор, скорость и направление вращения для взаимодействия. - - - -```bash -``` -```bash -``` -```bash -``` -```bash -``` -```bash -``` -```bash -``` -```bash -``` -```bash -``` -```bash -``` -```bash -``` -```bash -``` -```bash -``` -```bash -``` - - - diff --git a/book/img.png b/img.png similarity index 100% rename from book/img.png rename to img.png diff --git a/book/изображение-1.png b/изображение-1.png similarity index 100% rename from book/изображение-1.png rename to изображение-1.png diff --git a/book/изображение-10.png b/изображение-10.png similarity index 100% rename from book/изображение-10.png rename to изображение-10.png diff --git a/book/изображение-2.png b/изображение-2.png similarity index 100% rename from book/изображение-2.png rename to изображение-2.png diff --git a/book/изображение-3.png b/изображение-3.png similarity index 100% rename from book/изображение-3.png rename to изображение-3.png diff --git a/book/изображение-4.png b/изображение-4.png similarity index 100% rename from book/изображение-4.png rename to изображение-4.png diff --git a/book/изображение-5.png b/изображение-5.png similarity index 100% rename from book/изображение-5.png rename to изображение-5.png diff --git a/book/изображение-6.png b/изображение-6.png similarity index 100% rename from book/изображение-6.png rename to изображение-6.png diff --git a/book/изображение-7.png b/изображение-7.png similarity index 100% rename from book/изображение-7.png rename to изображение-7.png diff --git a/book/изображение-8.png b/изображение-8.png similarity index 100% rename from book/изображение-8.png rename to изображение-8.png diff --git a/book/изображение-9.png b/изображение-9.png similarity index 100% rename from book/изображение-9.png rename to изображение-9.png diff --git a/book/изображение.png b/изображение.png similarity index 100% rename from book/изображение.png rename to изображение.png