Merge branch 'before-merge'
# Conflicts: # builder/assets/clever.service # builder/assets/hardware_setup.sh # builder/assets/kinetic-ros-clever.rosinstall # builder/assets/roscore.env # builder/assets/roscore.service
@@ -1,4 +1,6 @@
|
||||
Использование внешнего 3G-модема
|
||||
===
|
||||
|
||||
Использование внешнего 3G-модема на Raspberry возможно с помощью пакета `sakis3g`.
|
||||
|
||||
TODO
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
«Клевер» — это учебный конструктор программируемого квадрокоптера, состоящего из популярных открытых компонентов, а также набор необходимой документации и библиотек для работы с ним.
|
||||
|
||||
Набор включает в себя полетный контроллер PixHawk/PixRacer с полетным стеком PX4, Raspberry Pi 3 в качестве управлящего бортового компьютера, модуль камеры для реализации полетов с использованием компьютерного зрения, а также набор различных датчиков и другой периферии.
|
||||
Набор включает в себя полетный контроллер Pixhawk/Pixracer с полетным стеком PX4, Raspberry Pi 3 в качестве управлящего бортового компьютера, модуль камеры для реализации полетов с использованием компьютерного зрения, а также набор различных датчиков и другой периферии.
|
||||
|
||||
На базе точно такой же платформы были созданы многие «большие» проекты компании Copter Express, например, дроны для [пиар-акций по автономной доставке пиццы](https://www.youtube.com/watch?v=hmkAoZOtF58) (Самара, Казань); дрон-доставщик кофе в Сколково, мониторинговый дрон с зарядной станцией, дроны-победители на полевых испытаниях «[Робокросс-2016](https://www.youtube.com/watch?v=dGbDaz_VmYU)», «[Робокросс-2017](https://youtu.be/AQnd2CRczbQ)» и многие другие.
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
|
||||
* Raspbian Stretch
|
||||
* ROS Kinetic
|
||||
* Настроенную работу с сетью
|
||||
* Настроенную [работу с сетью](network.md)
|
||||
* OpenCV
|
||||
* mavros
|
||||
* Набор ПО для работы с Клевером
|
||||
|
||||
@@ -2,17 +2,19 @@
|
||||
|
||||
* [Введение](README.md)
|
||||
* [Глоссарий](glossary.md)
|
||||
* [Сборка](assemble.md)
|
||||
* [Сборка Клевер 2](assemble.md)
|
||||
* [Сборка Клевер 3](assemble_clever3_4in1.md)
|
||||
* [Первоначальная настройка](setup.md)
|
||||
* [Полетные режимы](modes.md)
|
||||
* [Raspberry Pi](raspberry.md)
|
||||
* [Образ операционной системы на RPi](microsd_images.md)
|
||||
* [Подключение Raspberry Pi к PixHawk](connection.md)
|
||||
* [Подключение Raspberry Pi к Pixhawk](connection.md)
|
||||
* [Подключение по Wi-Fi](wifi.md)
|
||||
* [Работа с QGroundControl через Wi-Fi](gcs_bridge.md)
|
||||
* [Прошивка PixHawk/PixRacer](firmware.md)
|
||||
* [Прошивка Pixhawk/Pixracer](firmware.md)
|
||||
* [Пилотирование со смартфона](rc.md)
|
||||
* [SSH-доступ](ssh.md)
|
||||
* [Устройство UART](uart.md)
|
||||
* [Неисправности радиоаппаратуры](radioerrors.md)
|
||||
* [Безопасность](safety.md)
|
||||
* [Техника безопасности по пайке](tb.md)
|
||||
@@ -46,4 +48,6 @@
|
||||
* [Прошивка ESC контроллеров с помощью Arduino](esc_firmware.md)
|
||||
* [Работа со светодиодной лентой](leds.md)
|
||||
* [Проекты на базе коптера "Клевер"](projects.md)
|
||||
* [Тестовое описание Клевера по шаблону robots.ros.org/gapter/](testovoe-opisanie-klevera-po-shablonu-robotsrosorggapter.md)
|
||||
* [Полезные ссылки](links.md)
|
||||
|
||||
|
||||
@@ -110,7 +110,7 @@ _Примечание_: указанное выше определение пр
|
||||
|
||||
Для правильной работы Vision Position Estimation необходимо \(через [QGroundControl](gcs_bridge.md)\) убедиться, что:
|
||||
|
||||
* Для PixHawk: Установлена прошивка с LPE \(local position estimator\). Для PixHawk необходимо [скачать прошивку `px4fmu-v2_lpe.px4`](https://github.com/PX4/Firmware/releases). Для PixRacer параметр `SYS_MC_EST_GROUP` должен быть установлен в `local_position_estimator, attitude_estimator_q`.
|
||||
* Для Pixhawk: Установлена прошивка с LPE \(local position estimator\). Для Pixhawk необходимо [скачать прошивку `px4fmu-v2_lpe.px4`](https://github.com/PX4/Firmware/releases). Для Pixracer параметр `SYS_MC_EST_GROUP` должен быть установлен в `local_position_estimator, attitude_estimator_q`.
|
||||
* В параметре `LPE_FUSION` включены **только** флажки `vision position`, `vision yaw`, `land detector`. Итоговое значение _28_.
|
||||
* Выключен компас: `ATT_W_MAG` = 0
|
||||
* Вес угла по рысканью по зрению: `ATT_W_EXT_HDG` = 0.5
|
||||
|
||||
196
docs/assemble.md
@@ -1,10 +1,8 @@
|
||||
Инструкция по сборке конструктора Клевер 2
|
||||
==========================================
|
||||
# Инструкция по сборке конструктора Клевер 2
|
||||
|
||||

|
||||
|
||||
Состав конструктора
|
||||
-------------------
|
||||
## Состав конструктора
|
||||
|
||||

|
||||
|
||||
@@ -27,7 +25,7 @@
|
||||
* Зарядное устройство EFEST Luc V4 Li-lon x1.
|
||||
* Защитный бокс регуляторов x4.
|
||||
* Крепление под ножки x8.
|
||||
* Полетный контроллер PIXHAWK x1.
|
||||
* Полетный контроллер PixHawk x1.
|
||||
* Радиоприемник FlySky i6 x1.
|
||||
* Радиопульт FlySky i6 x1.
|
||||
* Зарядное устройство EFEST LUC V4 x1.
|
||||
@@ -37,7 +35,8 @@
|
||||
* Батарейка АА х4
|
||||
* Джампер, Bind-разъем
|
||||
|
||||
#### Крепежные элементы
|
||||
### Крепежные элементы
|
||||
|
||||
* Пластиковые стойки 6 мм x28.
|
||||
* Пластиковые стойки 30 мм x32.
|
||||
* Винты М3x8 x48.
|
||||
@@ -54,10 +53,8 @@
|
||||
* Ножницы канцелярские х1
|
||||
* Ремешок для батареи 250 мм х1
|
||||
|
||||
## Функционал радиопульта Flysky i6
|
||||
|
||||
|
||||
Функционал радиопульта Flysky i6
|
||||
---------------------------
|
||||
1. Переключатель A (SwA).
|
||||
2. Переключатель B (SwB).
|
||||
3. Переключатель С (SwC).
|
||||
@@ -78,10 +75,9 @@
|
||||
|
||||

|
||||
|
||||
## Дополнительное оборудование
|
||||
|
||||
Дополнительное оборудование
|
||||
---------------------------
|
||||
#### Данное оборудование не входит в состав конструктора Клевер 2, но оно необходимо для реализации сборочного процесса
|
||||
### Данное оборудование не входит в состав конструктора Клевер 2, но оно необходимо для реализации сборочного процесса
|
||||
|
||||
1. Паяльник
|
||||
2. Канифоль/ Флюс (нейтральный)
|
||||
@@ -94,11 +90,9 @@
|
||||
|
||||

|
||||
|
||||
|
||||
[Техника безопасности при пайке](tb.md)
|
||||
|
||||
Порядок сборки
|
||||
--------------
|
||||
## Порядок сборки
|
||||
|
||||
### Установка моторов
|
||||
|
||||
@@ -107,11 +101,13 @@
|
||||

|
||||
|
||||
Зачистить
|
||||
|
||||
* снять 2мм термоизоляции с конца провода не повредив медные жилы.
|
||||
|
||||
Скрутить провода.
|
||||
|
||||
Залудить
|
||||
|
||||
* Нанести флюс на оголенную часть провода.
|
||||
* Покрыть припоем, используя пинцет.
|
||||
|
||||
@@ -128,17 +124,19 @@
|
||||
|
||||

|
||||
|
||||
### Залудить три контактные площадки регулятора
|
||||
|
||||
#### Залудить три контактные площадки регулятора
|
||||
* Нанести флюс
|
||||
* Нанести припой
|
||||
|
||||
Чтобы припой аккуратно заполнил всю площадку, необходимо прогреть площадку регулятора. Для этого нужно удерживать жало паяльника на контактной плащадке в течение 2 сек (или больше, если потребуется)
|
||||
|
||||

|
||||
|
||||
* Повторить данную операцию для оставшихся трех регуляторов
|
||||
|
||||
#### Припаять провода моторов к регуляторам
|
||||
### Припаять провода моторов к регуляторам
|
||||
|
||||
Припаять ранее приготовленные провода моторов к контактным площадкам регуляторов.
|
||||
|
||||

|
||||
@@ -146,6 +144,7 @@
|
||||
* Повторить данную операцию для оставшихся трех регуляторов
|
||||
|
||||
### Монтаж разъемов питания
|
||||
|
||||
[Статья про силовые и управляющие цепи](powerConnection.md)
|
||||
|
||||
#### Подготовка проводов для силовых разъемов XT60
|
||||
@@ -169,10 +168,7 @@
|
||||
4. Припаять красный провод к “+” контакту разъема .
|
||||
5. Нарезать термоусадку ф5 (2 отрезка по 10 мм).
|
||||
6. Надеть термоусадку ф5 на провода так, чтобы она закрывала контактные площадки проводов с XT60 .
|
||||
7. Усадить термоусадку феном.
|
||||
|
||||

|
||||
|
||||
7. Усадить термоусадку феном. 
|
||||
8. Повторить процедуру для разъема XT60 socket.
|
||||
|
||||
#### Подготовка разъема питания управляющей цепи 5В
|
||||
@@ -193,15 +189,18 @@
|
||||

|
||||
|
||||
Прозвонить следующие цепи на НЕЗАМКНУТОСТЬ (отсутствие звукового сигнала мультиметра):
|
||||
|
||||
* “BAT+” и “BAT-”
|
||||
* “12V” и “GND”
|
||||
* “5V” и “GND”
|
||||
|
||||
Прозвонить следующие цепи на ЗАМКНУТОСТЬ (появление звукового сигнала мультиметра):
|
||||
|
||||
* “BAT-” c каждым контактом, обозначенным “-” и “GND”
|
||||
* “BAT+”, с каждым контактом, обозначенным “+”
|
||||
|
||||
#### Залудить контактные площадки платы питания
|
||||
|
||||
1. [Залудить*](zap.md) контактные площадки платы питания.
|
||||
2. С помощью мультиметра проверить отсутствие контактного замыкания на плате (прозвонить)
|
||||
|
||||
@@ -210,15 +209,18 @@
|
||||
Чтобы припой аккуратно заполнил всю площадку, необходимо её прогреть. Для этого нужно удерживать жало паяльника на контактной плащадке в течение 2 сек (или больше, если потребуется)
|
||||
|
||||
#### Пайка силового разъема питания XT60
|
||||
|
||||
Припаять разъем для АКБ, соблюдая полярность на контактных площадках.
|
||||
|
||||

|
||||
|
||||
ВАЖНО о полярности
|
||||
|
||||
* красный провод - это “+”
|
||||
* черный провод - это “-”
|
||||
|
||||
#### Пайка разъема питания управляющей цепи 5В
|
||||
|
||||
Припаять разъем 5В, соблюдая полярность на контактных площадках.
|
||||
(на изображении: красный провод - это питание “+”)
|
||||
|
||||
@@ -227,6 +229,7 @@
|
||||
### Монтаж отсека АКБ
|
||||
|
||||
#### Подготовка перемычек (3 шт.)
|
||||
|
||||

|
||||
|
||||
* Отрезать силовой провод длиной 2 см.
|
||||
@@ -237,60 +240,49 @@
|
||||
* Прозвонить мультиметром. В случае необходимости зачистить наждачной бумагой.
|
||||
|
||||
#### Подготовка отсека АКБ
|
||||
|
||||

|
||||
|
||||
* Приклеить наклейки с разметкой внутрь отсека АКБ, в соответствии с полярностью.
|
||||
* Приклеить ленту из скотча на дно отсека.
|
||||
|
||||
|
||||
### Монтаж платы распределения питания
|
||||
|
||||
* Установить плату питания на раму винтами М3х8 и пластиковыми гайками.
|
||||

|
||||
|
||||
* ВАЖНО
|
||||
Стрелочка на плате направлена в сторону носового выреза
|
||||
* Установить плату питания на раму винтами М3х8 и пластиковыми гайками. 
|
||||
> **ВАЖНО** Стрелочка на плате направлена в сторону носового выреза
|
||||

|
||||
|
||||
|
||||
#### Монтаж элементов
|
||||
|
||||
1. Установить гайки в пластиковые держатели
|
||||

|
||||
|
||||
1. Установить гайки в пластиковые держатели. 
|
||||
2. Установить лучи на раму винтами М3х16
|
||||
*Лучи устанавливаются поверх рамы
|
||||
*Пластиковые держатели устанавливаются снизу рамы
|
||||

|
||||
|
||||
3. Расположение моторов
|
||||
Проверить расположение моторов (моторы с черной гайкой в левом верхнем углу и в правом нижнем).
|
||||

|
||||
|
||||
4. Продеть силовые провода регуляторов в отверстия.
|
||||

|
||||
|
||||
* Лучи устанавливаются поверх рамы
|
||||
* Пластиковые держатели устанавливаются снизу рамы. 
|
||||
3. Расположение моторов. Проверить расположение моторов (моторы с черной гайкой в левом верхнем углу и в правом нижнем). 
|
||||
4. Продеть силовые провода регуляторов в отверстия. 
|
||||
|
||||
#### Пайка силовой цепи платы питания
|
||||
|
||||
Припаять силовые провода регуляторов к плате питания, соблюдая полярность.
|
||||
|
||||

|
||||
|
||||
ВАЖНО о полярности
|
||||
*красный провод - это “+”
|
||||
*черный провод - это “-”
|
||||
|
||||
* красный провод - это “+”
|
||||
* черный провод - это “-”
|
||||
|
||||
### Сопряжение приемника и пульта
|
||||
1. Подключить радиоприемник к разъему 5В. В любой разъем, GND внизу. На схеме питание обозначено как 5V
|
||||

|
||||
3. Подключить АКБ.
|
||||
Светодиод на радиоприемнике должен мигать.
|
||||

|
||||
|
||||
1. Подключить радиоприемник к разъему 5В. В любой разъем, GND внизу. На схеме питание обозначено как 5V 
|
||||
2. Подключить АКБ. Светодиод на радиоприемнике должен мигать. ![Подключение АКБ]
|
||||
|
||||
#### БЕЗОПАСНОСТЬ при работе с АКБ
|
||||
|
||||

|
||||
|
||||
#### Включение радиопульта
|
||||
|
||||
1. Вставить джампер в B/VCC радиоприемника (замкнуть "землю" и "сигнал")
|
||||
2. На пульте зажать кнопку BIND KEY.
|
||||
3. Включить пульт (перещелкнуть POWER, BIND KEY не отпускаем).
|
||||
@@ -302,63 +294,42 @@
|
||||

|
||||
|
||||
[Мануал по неисправностям радиоаппаратуры](radioerrors1.md)
|
||||
|
||||
### Проверка направления вращения моторов
|
||||
|
||||
1. Наклеить наклейки на АКБ 18650.
|
||||
2. Установить 18650 в отсек АКБ, соблюдая полярность.
|
||||
|
||||

|
||||
|
||||
2. Установить 18650 в отсек АКБ, соблюдая полярность. 
|
||||
3. Проверить, что разъем питания 5В подключен к приемнику по схеме.
|
||||
4. Подключить регулятор мотора к 3 каналу приемника CH3 по схеме.
|
||||

|
||||
|
||||
4. Подключить регулятор мотора к 3 каналу приемника CH3 по схеме. 
|
||||
5. Подключить внешнее питание (АКБ).
|
||||
6. Включить пульт.
|
||||
7. Подать левым стиком газ (throttle) на 10%.
|
||||
8. Проверить направления вращения мотора по схеме.
|
||||

|
||||
|
||||
9. Если необходимо изменить направление вращения, то меняем любые два фазных провода мотора (нужно перепаять).
|
||||
|
||||

|
||||
|
||||
8. Проверить направления вращения мотора по схеме. 
|
||||
9. Если необходимо изменить направление вращения, то меняем любые два фазных провода мотора (нужно перепаять). 
|
||||
|
||||
### Монтаж радиоприемника
|
||||
|
||||
1. Установить пластиковые стойки 30 мм на раму винтами М3х8.
|
||||
2. Разъем питания 5В продеть в прорезь.
|
||||

|
||||
|
||||
3. Приемник прикрепить к нижней дополнительной раме, используя двухсторонний скотч и ориентируясь на гравировку. Антенны направлены вперед.
|
||||
|
||||

|
||||
|
||||
4. Установить 3х проводной шлейф в канал PPM / CH1.
|
||||

|
||||
|
||||
2. Разъем питания 5В продеть в прорезь. 
|
||||
3. Приемник прикрепить к нижней дополнительной раме, используя двухсторонний скотч и ориентируясь на гравировку. Антенны направлены вперед. 
|
||||
4. Установить 3х проводной шлейф в канал PPM / CH1. 
|
||||
5. Продеть в прорезь к разъему 5 В.
|
||||
6. Прикрутить нижнюю дополнительную раму к стойкам на центральной раме винтами М3х8.
|
||||

|
||||
|
||||
##### ВАЖНО
|
||||
Направление стрелок на плате питания и на дополнительной раме совпадают
|
||||
6. Прикрутить нижнюю дополнительную раму к стойкам на центральной раме винтами М3х8. 
|
||||
> **ВАЖНО** Направление стрелок на плате питания и на дополнительной раме совпадают
|
||||
|
||||
### Монтаж полетного контроллера
|
||||
|
||||
#### Переворачиваем сборку
|
||||
|
||||

|
||||
|
||||
#### Установка полетного контроллера Pixhawk
|
||||
1. Клеим 2х сторонний скотч по углам полетного контроллера
|
||||

|
||||
#### Установка полетного контроллера PixHawk
|
||||
|
||||
##### ВАЖНО
|
||||
При работе моторов возникают вибрации, отрицательно влияющие на показания датчиков полетного контроллера Pixhawk. Чтобы избежать этого эффекта, количество слоев двустороннего скотча
|
||||
1. Клеим 2х сторонний скотч по углам полетного контроллера. 
|
||||
> **ВАЖНО** При работе моторов возникают вибрации, отрицательно влияющие на показания датчиков полетного контроллера PixHawk. Чтобы избежать этого эффекта, количество слоев двустороннего скотча
|
||||
лучше увеличить до 4-5.
|
||||
|
||||
2. Установить полетный контроллер в центр рамы
|
||||
|
||||

|
||||
##### ВАЖНО
|
||||
Стрелки на раме и pixhawk должны быть сонаправлены
|
||||
2. Установить полетный контроллер в центр рамы. 
|
||||
> **ВАЖНО** Стрелки на раме и PixHawk должны быть сонаправлены
|
||||
|
||||
#### Подключение полетного контроллера по схеме
|
||||
|
||||
@@ -368,47 +339,31 @@
|
||||
|
||||

|
||||
|
||||
|
||||
### Сборка регуляторов
|
||||
1. Клеим 2х сторонний скотч на основание защитного бокса регуляторов
|
||||

|
||||
|
||||
2. Укладываем регуляторы в защитные боксы. Крепим полученную сборку к лучам рамы.
|
||||

|
||||
|
||||
1. Клеим 2х сторонний скотч на основание защитного бокса регуляторов. 
|
||||
2. Укладываем регуляторы в защитные боксы. Крепим полученную сборку к лучам рамы. 
|
||||
|
||||
### Установка защиты
|
||||
1. Закрепить нижнюю защиту винтами М3х16 на лучах рамы
|
||||

|
||||
|
||||
2. Закрепить ножки к пластиковым держателям винтами М3х16
|
||||

|
||||
|
||||
3. Закрепить стойки 30 мм в отверстия нижней защиты винтами М3х12
|
||||

|
||||
|
||||
4. Закрепить верхнюю защиту винтами М3х12
|
||||

|
||||
|
||||
1. Закрепить нижнюю защиту винтами М3х16 на лучах рамы. 
|
||||
2. Закрепить ножки к пластиковым держателям винтами М3х16. 
|
||||
3. Закрепить стойки 30 мм в отверстия нижней защиты винтами М3х12. 
|
||||
4. Закрепить верхнюю защиту винтами М3х12. 
|
||||
|
||||
### Монтаж отсека АКБ
|
||||
|
||||
Необходимые компоненты
|
||||
Необходимые компоненты:
|
||||
|
||||
* Винты М3х12 (4 шт)
|
||||
* Гайки М3 (4 шт)
|
||||
* Рама дополнительная (1 шт)
|
||||
* Батарейный отсек (1 шт)
|
||||
|
||||
1. Прикрепить батарейный отсек на верхнюю дополнительную раму винтами М3х12 и гайками.
|
||||

|
||||
|
||||
2. Прикрепить верхнюю дополнительную раму на стойки винтами М3х8.
|
||||
|
||||

|
||||
|
||||
1. Прикрепить батарейный отсек на верхнюю дополнительную раму винтами М3х12 и гайками. 
|
||||
2. Прикрепить верхнюю дополнительную раму на стойки винтами М3х8. 
|
||||
3. Установить АКБ в отсек.
|
||||
|
||||
|
||||
### Монтаж антенн
|
||||
|
||||
1. Крепим антенны на 2х сторонний скотч или изоленту, а усики продеваем в передние отверстия верхней дополнительной рамы.
|
||||
@@ -417,16 +372,11 @@
|
||||
|
||||
Коптер готов к настройке!
|
||||
|
||||
|
||||
## Безопасность при сборке и настройке
|
||||
|
||||
1. Снять пропеллеры.“Все наземные операции производить со снятыми пропеллерами. Устанавливать пропеллеры на моторы только перед полётом.”
|
||||
|
||||
2. Отключить аккумулятор. Держать питание выключенным.
|
||||
“Сборку, настройку и ремонт производить с отключенным питанием. Подключать питание только для тестирования электронных компонентов коптера. После тестирования перед другими работами питание сразу отключить.”
|
||||
|
||||
3. Позвать на помощь
|
||||
“Если при выполнении работ возникли какие-либо проблемы, необходимо обратиться к преподавателю или учителю, а не пытаться решить проблему самостоятельно.”
|
||||
2. Отключить аккумулятор. Держать питание выключенным. “Сборку, настройку и ремонт производить с отключенным питанием. Подключать питание только для тестирования электронных компонентов коптера. После тестирования перед другими работами питание сразу отключить.”
|
||||
3. Позвать на помощь. “Если при выполнении работ возникли какие-либо проблемы, необходимо обратиться к преподавателю или учителю, а не пытаться решить проблему самостоятельно.”
|
||||
|
||||

|
||||
|
||||
@@ -436,4 +386,4 @@
|
||||
2. При подключении (отключении) аккумуляторов держаться только за разъёмы, тянуть или дергать за провода запрещается.
|
||||
3. В случае обрыва разъемов, обнаружения нарушений целостности изоляции или корпуса аккумулятора, не трогая его, немедленно сообщить преподавателю.
|
||||
|
||||
## [ТЕХНИКА БЕЗОПАСНОСТИ ПРИ ПАЙКЕ И ЛЁТНОЙ ЭКСПЛУАТАЦИИ КОПТЕРОВ](safety.md)
|
||||
[ТЕХНИКА БЕЗОПАСНОСТИ ПРИ ПАЙКЕ И ЛЁТНОЙ ЭКСПЛУАТАЦИИ КОПТЕРОВ](safety.md)
|
||||
|
||||
154
docs/assemble_clever3_4in1.md
Normal file
@@ -0,0 +1,154 @@
|
||||
# Инструкция по сборке конструктора Клевер 3
|
||||
|
||||
В данной инструкции рассматривается сборка комплекта COEX Clever 3 с платой регуляторов 4в1
|
||||
|
||||

|
||||
|
||||
## Состав конструктора
|
||||
|
||||
TODO
|
||||
|
||||
## Дополнительное оборудование
|
||||
|
||||

|
||||
|
||||
## Условное обозначение
|
||||
|
||||

|
||||
|
||||
## Техника безопасности при пайке
|
||||
|
||||
Перед использованием паяльного оборудования обязательно ознакомьтесь с техникой безопасности
|
||||
[Техника безопасности при пайке](tb.md)
|
||||
|
||||
## Установка моторов
|
||||
|
||||
1. Распаковать моторы
|
||||
2. Закрепить мотор на луче шестигранными винтами М3х6 (самые короткие винты в комплекте с моторами). *Шестигранный ключ в комплекте.
|
||||
3. Вставить гайки М3 (4 шт) в пластиковый держатель.
|
||||
> Для удобства можно использовать длинный винт, либо плоскогубцы
|
||||
4. Закрепить луч, нижнюю защиту луча и держатель винтами М3х12, используя крестовую отвертку.
|
||||
5. Скрепить хомутом луч и нижнюю защиту луча.
|
||||
> Хвост от хомута (стяжки) отрезать ножницами 
|
||||
|
||||
## Монтаж каркасных элементов
|
||||
|
||||
1. Установить пластиковые гайки М3 (4 шт) для крепления PDB на раму винтами М3х8
|
||||
2. Установить стойки 6 мм (4 шт) для крепления Raspberry Pi на раму винтами М3х8
|
||||
3. Установить на раму собранную конструкцию, соблюдая схему, винтами М3х16
|
||||
4. Установить каркас для светодиодной ленты, используя прорези в держателях для ножек
|
||||
|
||||

|
||||
|
||||
## Монтаж преобразователя напряжения BEC (Припаять и проверить)
|
||||
|
||||
1. Распаковать плату питания и установить шлейф питания
|
||||
2. Включить мультиметр в режим измерения постоянного напряжения (диапазон 20В или 200В)
|
||||
3. Проверяем работоспособность платы питания, подключив АКБ
|
||||
* a. Выходное напряжение на разъеме XT30 должно равняться напряжению на АКБ (от 10В до 12.6В)
|
||||
* b. Выходное напряжение на шлейфе питания должно быть в пределах 4.9В до 5.3В
|
||||
> Измеряем между черным и красным проводами
|
||||
4. Распаковываем преобразователь напряжения и снимаем прозрачную изоляцию
|
||||
5. Припаиваем два дополнительных провода на BEC
|
||||
* a. Берем из набора 3 провода папа-мама (красный, черный и любого цвета)
|
||||
* b. Красный и черный [залуживаем](zap.md) с обеих сторон, используя пинцет. На синем проводе залуживаем со стороны коннектора ПАПА.
|
||||
Залудить - это:
|
||||
* Нанести флюс на оголенную часть провода.
|
||||
* Покрыть припоем.
|
||||
* c. Припаиваем красный и черный провода к BEC: ЧЕРНЫЙ -> OUT-, КРАСНЫЙ -> OUT+
|
||||
6. Проверяем работу BEC
|
||||
* a. Припаиваем BEC на плату питания. ЧЕРНЫЙ -> -, КРАСНЫЙ -> +
|
||||
* b. Подключаем АКБ и проверяем напряжение на припаянных проводах к BEC (из пункта 5) 5В - все правильно! больше 10В - отключите питание и переставьте желтую перемычку на другой пинцет, 0В - плохо спаяли
|
||||
* с. Если BEC выдает 5В, то изолируем паячное соединение черной термоусадкой.
|
||||
7. Монтаж светодиодной ленты. Припаять провода от BEC (из пункта 5) к светодиодной ленте
|
||||
* a. Удалить силиконовый слой на ленте (надрезать ножом и оторвать)
|
||||
* b. [Залудить](zap.md) контакты светодиодной ленты
|
||||
* c.
|
||||
* Красный -> +5V
|
||||
* Черный -> GND
|
||||
* Синий -> Din
|
||||
|
||||

|
||||
|
||||
## Монтаж платы регуляторов 4в1 и платы питания PDB
|
||||
|
||||
1. Установить плату регуляторов 4в1 как показано на картинке. Соединить фазные провода моторов с проводами регуляторов.
|
||||
2. Закрепить плату регуляторов стойками 6 мм (4 шт.). На стойки накрутить пластиковые гайки М3 (4 шт.).
|
||||
3. Установить плату распределения питания PDB как показано на картинке (разъем XT60 направлен к хвосту коптера).
|
||||
4. Соединить разъемы питания платы питания и платы регуляторов XT30.
|
||||
|
||||

|
||||
|
||||
## Сопряжение приемника и пульта
|
||||
|
||||
1. Подключаем провод 5В от BEC в разъем приемника. Устанавливаем BIND разъем в крайний правый порт B/VCC
|
||||
2. Подключаем АКБ. Индикатор на приемники должен быстро мигать (режим сброса).
|
||||
3. Зажимаем и удерживаем кнопку BIND на пульте и включаем пульт. На пульте отображается процесс сопряжения RXBinding.
|
||||
4. После установки сопряжения (появление доп строк на дисплее пульта), убираем BIND разъем из приемника. Отключаем АКБ.
|
||||
|
||||

|
||||
|
||||
> Если пульт не включается или заблокирован, то смотри здесь
|
||||
[Неисправности пульта](radioerrors1.md)
|
||||
|
||||
## Проверка направления вращения моторов
|
||||
|
||||
1. Включить пульт. Убедиться, что ppm в меню RX Setup отключен ([раздел "Нет связи с полетным контроллером"](radioerrors1.md) в пункте 3 выберите “RX setup” > “PPM OUTPUT” > “Off”. Сохраните изменения (удерживаем нажатой кнопку “CANCEL”)
|
||||
2. Подключите оранжевый провод S1 от платы регуляторов в CH3 на приемнике. Подключить внешнее питание.
|
||||
3. Подать левым стиком газ (throttle) на 10%.
|
||||
4. Проверить направления вращения мотора по схеме.Повторить для каждого мотора. Таким образом, будет понятно каким именно мотором мы управляем
|
||||
5. Если необходимо изменить направление вращения, то меняем любые два фазных провода мотора (нужно переподключить).
|
||||
|
||||

|
||||
|
||||
## Монтаж и подключение полетного контроллера PixRacer
|
||||
|
||||
1. Установить Полетный контроллер PixRacer на двухстороний скотч 3М (2-3 слоя). *также полетный контроллер можно извлечь из корпуса и жестко установить на стойки М3х6
|
||||
|
||||
2. Установить стойки 40 мм, используя винты М3х8. Подключить разъем POWER
|
||||
|
||||
3. Подключить регуляторы, как на картинке. Подробно [про подключение регуляторов 4в1](cl3_connectESC4in1.md)
|
||||
4. Подключить шлейф радиоприемника в разъем RCIN в PixRacer 
|
||||
|
||||
## Монтаж Raspberry Pi
|
||||
|
||||
1. Перевернуть коптер. Установить Raspberry на стойки, используя монтажные отверстия Raspberry. USB-разъемы направлены к хвостовой части коптера
|
||||
2. Установка шлейфа для камеры
|
||||
* a. поднять защелку
|
||||
* b. подключить шлейф
|
||||
* c. закрыть защелку
|
||||
3. Подключение питания Raspberry
|
||||
* 5В -> pin 04 (DC power 5v)
|
||||
* GND -> pin 06 (Ground)
|
||||
* Подключение светодиодной ленты pin 40 (GPIO21)
|
||||
4. Сборка маунта для камеры Raspberry Pi. Используйте винт М3х16 и гайку М3. 
|
||||
|
||||
## Монтаж Arduino и радиоприемника FlySky
|
||||
|
||||
1. Произведите монтаж пинов микроконтроллера Arduino Nano, используя пайку
|
||||
2. Установить миконтроллер в специальной маунт и прикрепите к нижней деке, используя винты М3х16 (4 шт.)
|
||||
3. Используя 2хсторонний скотч прикрепите приемник, как показано на рисунке
|
||||
4. Подключите шлейф радиоприемника от PixRacer как на рисунке:
|
||||
* белый -> PPM
|
||||
* красный -> 5V
|
||||
* черный -> GND
|
||||
* оранжевый, зеленый -> сейчас не используются. Устанавливаются в неиспользуемые пины радиоприемника. 
|
||||
|
||||
## Монтаж камеры Raspberry Pi
|
||||
|
||||
1. Установить маунт для камеры Raspberry Pi в сборе на нижнюю деку винтами М3х12 (2 шт.)
|
||||
2. Подключить шлейф к камере Raspberry Pi
|
||||
3. Установить камеру в маунт, закрепить саморезами М2
|
||||
4. Закрепить Raspberry стойками 30 мм (4 шт.). Установить нижнюю деку в сборе на стойки винтами М3х8 (4шт.).
|
||||
5. Установить ножки в маунты (4 шт.) .
|
||||
|
||||
## Монтаж остальных конструктивных элементов
|
||||
|
||||
1. Установка нижней защиты, используя винты М3х12 (8 шт.) и стойки 30 мм (8 шт.)
|
||||
2. Установка верхней защиты, используя винты М3х12 (8 шт.)
|
||||
3. Установка ремешка верхнюю деку для фиксации АКБ. Закрепить верхнюю деку винтами М3х8 (4 шт.). 
|
||||
|
||||
## Монтаж USB соединителей
|
||||
|
||||
1. Соедините PixRacer и Raspberry Pi, используя micro USB - USB кабель
|
||||
2. Соедините Arduino и Raspberry Pi, используя micro USB - USB кабель. 
|
||||
BIN
docs/assets/additonal_eqipment.jpg
Normal file
|
After Width: | Height: | Size: 106 KiB |
BIN
docs/assets/cl3_bindFlysky.JPG
Normal file
|
After Width: | Height: | Size: 185 KiB |
BIN
docs/assets/cl3_mountArduinoandFlysky.JPG
Normal file
|
After Width: | Height: | Size: 180 KiB |
BIN
docs/assets/cl3_mountBEC.JPG
Normal file
|
After Width: | Height: | Size: 267 KiB |
BIN
docs/assets/cl3_mountESC.JPG
Normal file
|
After Width: | Height: | Size: 181 KiB |
BIN
docs/assets/cl3_mountElements.JPG
Normal file
|
After Width: | Height: | Size: 147 KiB |
BIN
docs/assets/cl3_mountElements2.png
Normal file
|
After Width: | Height: | Size: 408 KiB |
BIN
docs/assets/cl3_mountOtherElements.JPG
Normal file
|
After Width: | Height: | Size: 205 KiB |
BIN
docs/assets/cl3_mountPDB1.png
Normal file
|
After Width: | Height: | Size: 94 KiB |
BIN
docs/assets/cl3_mountPixracer.JPG
Normal file
|
After Width: | Height: | Size: 338 KiB |
BIN
docs/assets/cl3_mountRaspberryPi.JPG
Normal file
|
After Width: | Height: | Size: 233 KiB |
BIN
docs/assets/cl3_mountRpiCamera.JPG
Normal file
|
After Width: | Height: | Size: 306 KiB |
BIN
docs/assets/cl3_mountUSBconnectors.JPG
Normal file
|
After Width: | Height: | Size: 195 KiB |
BIN
docs/assets/cl3_mountingMotors.png
Normal file
|
After Width: | Height: | Size: 317 KiB |
BIN
docs/assets/cl3_prepareMotors.JPG
Normal file
|
After Width: | Height: | Size: 120 KiB |
BIN
docs/assets/cl3_testMotorsFlysky.JPG
Normal file
|
After Width: | Height: | Size: 206 KiB |
BIN
docs/assets/clever3_main.jpg
Normal file
|
After Width: | Height: | Size: 425 KiB |
BIN
docs/assets/conditional_refer.jpg
Normal file
|
After Width: | Height: | Size: 135 KiB |
BIN
docs/assets/hciuart_error.jpg
Normal file
|
After Width: | Height: | Size: 80 KiB |
@@ -26,6 +26,6 @@
|
||||
|
||||
* ОС [Raspbian Jessie](https://www.raspberrypi.org/downloads/raspbian/)
|
||||
* Фреймворк [ROS](ros.md)
|
||||
* Пакет [MAVROS](mavros.md) для связи с PixHawk по [MAVLink](mavlink.md)
|
||||
* Пакет [MAVROS](mavros.md) для связи с Pixhawk по [MAVLink](mavlink.md)
|
||||
* Дополнительные пакеты ROS: web_video_server, usb_cam, rosbridge_suite и другие
|
||||
* Пакет программ clever_bundle
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
Подключение PixHawk/PixRacer к Raspberry Pi
|
||||
Подключение Pixhawk/Pixracer к Raspberry Pi
|
||||
===
|
||||
|
||||
Для программирования [автономных полетов](simple_offboard.md), [работы с PixHawk по Wi-Fi](gcs_bridge.md), использования [веб-пульта](web_rc.md) и других функций необходимо подсоединить Raspberry Pi к PixHawk.
|
||||
Для программирования [автономных полетов](simple_offboard.md), [работы с Pixhawk по Wi-Fi](gcs_bridge.md), использования [веб-пульта](web_rc.md) и других функций необходимо подсоединить Raspberry Pi к Pixhawk.
|
||||
|
||||
Убедиться в работоспособности подключения, выполнив на Raspberry Pi:
|
||||
|
||||
@@ -14,7 +14,7 @@ rostopic echo /mavros/state
|
||||
Подключение по USB
|
||||
---
|
||||
|
||||
Соедините PixHawk/PixRacer и Raspberry Pi micro-USB to USB кабелем.
|
||||
Соедините Pixhawk/Pixracer и Raspberry Pi micro-USB to USB кабелем.
|
||||
|
||||
Необходимо убедиться, что в launch-файле Клевера (`~/catkin_ws/src/clever/clever/launch/clever.launch`) тип подключения установлен на USB:
|
||||
|
||||
@@ -28,7 +28,7 @@ rostopic echo /mavros/state
|
||||
sudo systemctl restart clever
|
||||
```
|
||||
|
||||
> **Hint** Для корректной работы подключения Raspberry Pi и PixHawk по USB необходимо установить значение параметра `CBRK_USB_CHK` на 197848.
|
||||
> **Hint** Для корректной работы подключения Raspberry Pi и Pixhawk по USB необходимо установить значение параметра `CBRK_USB_CHK` на 197848.
|
||||
|
||||
Подключение по UART
|
||||
---
|
||||
@@ -47,7 +47,7 @@ TODO схема подключения
|
||||
sudo systemctl restart clever
|
||||
```
|
||||
|
||||
> **Hint** Для корректной работы подключения Raspberry Pi и PixHawk по UART необходимо установить значение параметра `SYS_COMPANION` на 921600.
|
||||
> **Hint** Для корректной работы подключения Raspberry Pi и Pixhawk по UART необходимо установить значение параметра `SYS_COMPANION` на 921600.
|
||||
|
||||
Подключение к SITL
|
||||
---
|
||||
|
||||
2
docs/drugoe.md
Normal file
@@ -0,0 +1,2 @@
|
||||
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
Прошивка PixHawk / PixRacer
|
||||
Прошивка Pixhawk / Pixracer
|
||||
===
|
||||
|
||||
PixHawk или PixRacer можно прошить, используя QGroundControl или утилиты командной строки.
|
||||
Pixhawk или Pixracer можно прошить, используя QGroundControl или утилиты командной строки.
|
||||
|
||||
Различные варианты сборок стабильных прошивок PX4 можно скачать в разделе [Releases на GitHub](https://github.com/PX4/Firmware/releases).
|
||||
|
||||
В названии файла прошивки кодируется информации о целевой плате и варианте сборки. Примеры:
|
||||
|
||||
* `px4fmu-v2_default.px4` — прошивка для PixHawk с EKF2.
|
||||
* `px4fmu-v2_lpe.px4` — прошивка для PixHawk с LPE.
|
||||
* `px4fmu-v4_default.px4` — прошивка для PixRacer с EKF2 и LPE (*Клевер 3*).
|
||||
* `px4fmu-v3_default.px4` — прошивка для более новых версий PixHawk (чип ревизии 3, см. илл. + Bootloader v5) с EKF2 и LPE.
|
||||
* `px4fmu-v2_default.px4` — прошивка для Pixhawk с EKF2.
|
||||
* `px4fmu-v2_lpe.px4` — прошивка для Pixhawk с LPE.
|
||||
* `px4fmu-v4_default.px4` — прошивка для Pixracer с EKF2 и LPE (*Клевер 3*).
|
||||
* `px4fmu-v3_default.px4` — прошивка для более новых версий Pixhawk (чип ревизии 3, см. илл. + Bootloader v5) с EKF2 и LPE.
|
||||
|
||||

|
||||
|
||||
@@ -19,9 +19,9 @@ PixHawk или PixRacer можно прошить, используя QGroundCon
|
||||
QGroundControl
|
||||
---
|
||||
|
||||
В QGroundControl откройте раздел Firmware. **После** этого подключите PixHawk / PixRacer по USB.
|
||||
В QGroundControl откройте раздел Firmware. **После** этого подключите Pixhawk / Pixracer по USB.
|
||||
|
||||
Выберите PX4 Flight Stack. Для скачивания и загрузки стандартной прошивки (вариант с EKF2 для PixHawk) выберите пункт меню "Standard Version", для загрузки собственного файла прошивки выберите пункт "Custom firmware file...", затем нажмите OK.
|
||||
Выберите PX4 Flight Stack. Для скачивания и загрузки стандартной прошивки (вариант с EKF2 для Pixhawk) выберите пункт меню "Standard Version", для загрузки собственного файла прошивки выберите пункт "Custom firmware file...", затем нажмите OK.
|
||||
|
||||
> **Warning** Не отключайте USB-кабель до окончания процесса прошивки.
|
||||
|
||||
@@ -46,7 +46,7 @@ make px4fmu-v4_default upload
|
||||
|
||||
Где `px4fmu-v4_default` – требуемый вариант прошивки.
|
||||
|
||||
Для загрузки прошивки `v3` в PixHawk может понадобиться команда `force_upload`:
|
||||
Для загрузки прошивки `v3` в Pixhawk может понадобиться команда `force_upload`:
|
||||
|
||||
```
|
||||
make px4fmu-v3_default force-upload
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
Мониторинг топиков в режиме реального времени
|
||||
---
|
||||
|
||||
Для более новых версий платы PixHawk (`px4fmu-v3`), а также для плат PixRacer, в прошивку включен модуль `topic_listener`, который позволяет просматривать значения топиков в режиме реального времени (в том числе в полете).
|
||||
Для более новых версий платы Pixhawk (`px4fmu-v3`), а также для плат Pixracer, в прошивку включен модуль `topic_listener`, который позволяет просматривать значения топиков в режиме реального времени (в том числе в полете).
|
||||
|
||||
Для ее использования нужно выбрать вкладку Mavlink Console в QGroundControl:
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
## Полетный контроллер / автопилот
|
||||
|
||||
**1\.** Специализированная плата, спроектированная для управления мультикоптером, самолетом или другим аппаратом. Примеры:
|
||||
PixHawk, Ardupilot, Naze32, CC3D.
|
||||
Pixhawk, Ardupilot, Naze32, CC3D.
|
||||
|
||||
**2\.** Программное обеспечение для платы управления мультикоптером. Примеры: PX4, APM, CleanFlight.
|
||||
|
||||
@@ -47,11 +47,11 @@ Armed – состояние коптера готовности к полету
|
||||
|
||||
## PX4
|
||||
|
||||
Популярный полетный контроллер с открытым исходным кодом, работащий на платах PixHawk, PixRacer и других. PX4 рекомендуется для использования на Клевере.
|
||||
Популярный полетный контроллер с открытым исходным кодом, работащий на платах Pixhawk, Pixracer и других. PX4 рекомендуется для использования на Клевере.
|
||||
|
||||
## APM / ArduPilot
|
||||
|
||||
Полетный контроллер с открытым исходным кодом, изначально созданный для платы Arduino. Впоследствии был портирован на PixHawk, PixRacer и другие платы.
|
||||
Полетный контроллер с открытым исходным кодом, изначально созданный для платы Arduino. Впоследствии был портирован на Pixhawk, Pixracer и другие платы.
|
||||
|
||||
## MAVLink
|
||||
|
||||
@@ -64,3 +64,7 @@ Armed – состояние коптера готовности к полету
|
||||
## MAVROS
|
||||
|
||||
Библиотека-связующее звено между аппаратом, работающем по протоколу MAVLink, и ROS.
|
||||
|
||||
## UART
|
||||
|
||||
Последовательный асинхронный интерфейс передачи данных, применяемый во многих устройствах. Например GPS антенны, Wi-Fi роутеры или Pixhawk.
|
||||
|
||||
@@ -49,3 +49,8 @@
|
||||
Часть 6
|
||||
|
||||
<iframe width="560" height="315" src="https://www.youtube.com/embed/v00oNVzwICg" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
|
||||
|
||||
Автономные полеты
|
||||
|
||||
<iframe width="560" height="315" src="https://www.youtube.com/embed/WvIlRG7ShWA" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
Основная документация: https://mavlink.io/en/.
|
||||
|
||||
MAVLink – это протокол для организации связи между автономными летательными и транспортными системами (дронами, самолетами, автомобилями). Проктол MAVLink лежит в основе взаимодействия между PixHawk и Raspberry Pi.
|
||||
MAVLink – это протокол для организации связи между автономными летательными и транспортными системами (дронами, самолетами, автомобилями). Проктол MAVLink лежит в основе взаимодействия между Pixhawk и Raspberry Pi.
|
||||
|
||||
В Клевер включено 2 обертки над этим протоколом: [MAVROS](mavros.md) и [simple_offboard](simple_offboard.md).
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# MAVROS
|
||||
|
||||
Основная статья: [http://wiki.ros.org/mavros](http://wiki.ros.org/mavros)
|
||||
Основная документация: [http://wiki.ros.org/mavros](http://wiki.ros.org/mavros)
|
||||
|
||||
MAVROS \(MAVLink + ROS\) — это пакет для ROS, предоставляющий возможность управлять беспилотниками по протоколу [MAVLink](mavlink.md). MAVROS поддерживает полетные стеки PX4 и APM. Связь организовывается по UART, USB, TCP или UDP.
|
||||
|
||||
@@ -8,6 +8,10 @@ MAVROS подписывается определенные ROS-топики в
|
||||
|
||||
Нода MAVROS автоматически запускается в launch-файле Клевера. Для [настройки типа подключения](connection.md) см. аргумент `fcu_conn`.
|
||||
|
||||
> **Hint** Упрощенное взаимодействие с коптером возможно с использованием пакета [`simple_offboard`](simple_offboard.md).
|
||||
|
||||
> **Note** В пакете `clever` некоторые плагины MAVROS отключены (в целях сохранения ресурсов). Подробнее см. параметр `plugin_blacklist` в файле `/home/pi/catkin_ws/src/clever/clever/launch/mavros.launch`.
|
||||
|
||||
## Основные сервисы
|
||||
|
||||
`/mavros/set_mode` — установить [полетный режим](modes.md) контроллера. Обычно устанавливается режим OFFBOARD \(для управления с Raspberry Pi\).
|
||||
@@ -18,7 +22,7 @@ MAVROS подписывается определенные ROS-топики в
|
||||
|
||||
`/mavros/state` — статус подключения к полетному контроллеру. Режим полетного контроллера.
|
||||
|
||||
`/mavros/local_position/pose` — локальная позиция коптера в системе координат ENU.
|
||||
`/mavros/local_position/pose` — локальная позиция коптера в системе координат ENU и его ориентация.
|
||||
|
||||
`/mavros/local_position/velocity` — текущая скорость в локальных координатах. Угловые скорости.
|
||||
|
||||
@@ -28,6 +32,8 @@ MAVROS подписывается определенные ROS-топики в
|
||||
|
||||
`/mavros/global_position/rel_alt` — относительная высота \(относительно высоты включения моторов\).
|
||||
|
||||
Просмотр сообщений, публикуемых в топики возможен с помощью утилиты `rostopic`, например `rostopic echo /mavros/state`. Подробнее см. [работа с ROS](ros.md).
|
||||
|
||||
## Основные топики для публикации
|
||||
|
||||
`/mavros/setpoint_position/local` — установить целевую позицию и рысканье \(yaw\) беспилотника \(в системе координат ENU\).
|
||||
@@ -45,5 +51,3 @@ MAVROS подписывается определенные ROS-топики в
|
||||
`/mavros/setpoint_raw/attitude` — отправка пакета [SET\_ATTITUDE\_TARGET](https://pixhawk.ethz.ch/mavlink/#SET_ATTITUDE_TARGET). Позвлояет установить целевую ориенатацию /угловые скорости и уровень газа. Выбор устанавливаемых величин осуществляется с помощью поля `type_mask`
|
||||
|
||||
`/mavros/setpoint_raw/global` — отправка пакета [SET\_POSITION\_TARGET\_GLOBAL\_INT](https://pixhawk.ethz.ch/mavlink/#SET_POSITION_TARGET_GLOBAL_INT). Позволяет установить целевую позицию в глобальных координатах \(ширина, долгота, высота\), а также скорости полета. **Не поддерживается в PX4** \([issue](https://github.com/PX4/Firmware/issues/7552)\).
|
||||
|
||||
[Упрощенное управление коптером с помощью Simple Offboard](simple_offboard.md).
|
||||
|
||||
@@ -50,7 +50,7 @@
|
||||
|
||||
**Подведение итогов**
|
||||
|
||||
Ниже предложен один из вариантов подведения итогов курса.
|
||||
Ниже предложен один из вариантов подведения итогов курса.
|
||||
|
||||
Финальное мероприятие включает 3 раздела:
|
||||
|
||||
@@ -155,7 +155,7 @@
|
||||
| 5 | Заключение | Подвести итоги занятия, спросить, есть ли у класса вопросы. Спросить, что из изученного на занятии было для них интереснее всего. Попросить учеников ответить на контрольные вопросы. Предложить ученикам по желанию провести в интернете дополнительное исследование на пройденную тему. Сообщить ученикам, какую тему они будут проходить на следующем занятии. |
|
||||
| 6 | Резервное время | Показать видео и рассказать классу интересные факты по пройденной теме, не вошедшие в программу. |
|
||||
|
||||
## Урок №6. Тема: «Бесколлекторные двигатели и регуляторы их хода»
|
||||
## Урок №6. Тема: «Бесколлекторные двигатели и регуляторы их хода»
|
||||
|
||||
**Цель урока:** закрепить теоретические знания о строении и работе бесколлекторных
|
||||
электродвигателей. Сформировать знания о работе и настройке регуляторов хода,
|
||||
@@ -381,7 +381,7 @@
|
||||
| 5 | Меняем SSID | Рассказать, что такое SSID. Научить изменять имя wi-fi сети. Объяснить что такое демоны и в какой момент они запускаются. Проработать с конфигурацией одного из них. |
|
||||
| 6 | Используем права суперпользователя | Рассказать о типах и правах пользователей системы. Показать примеры использования sudo. |
|
||||
| 7 | Подготовка коптера к автономным полетам | Проверить подключенное оборудование для автономных полетов. Убедиться в работоспособности подключения можно выполнив на Raspberry Pi: rostopic echo /mavros/state |
|
||||
| 8 | Использование QGroundControl через Wi-Fi | Настроить беспроводное соединение для работы с PixHawk в QGroundControl. Предложить учащимся установить новую прошивку, которая подходит для автономных полетов и откалибровать коптер при беспроводном подключении. |
|
||||
| 8 | Использование QGroundControl через Wi-Fi | Настроить беспроводное соединение для работы с Pixhawk в QGroundControl. Предложить учащимся установить новую прошивку, которая подходит для автономных полетов и откалибровать коптер при беспроводном подключении. |
|
||||
| 9 | Заключение | Подвести итоги занятия, спросить, есть ли у класса вопросы, их должно быть много, нужно заранее продумать ответы на них. Попросить учеников ответить на контрольные вопросы. Предложить ученикам по желанию провести в интернете дополнительное исследование на пройденную тему. Сообщить ученикам, какую тему они будут проходить на следующем занятии.|
|
||||
| 10 | | |
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ Wi-Fi адаптер на Raspberry Pi имеет два основных реж
|
||||
1. **Режим клиента** – RPi подключается к существующей Wi-Fi сети.
|
||||
2. **Режим точки доступа** – RPi создает Wi-Fi сеть, к которой вы можете подключиться.
|
||||
|
||||
При использовании [образа для RPi](microsd_images.md) по умолчанию Wi-Fi адаптер работает в режиме точки доступа.
|
||||
При использовании [образа для RPi](microsd_images.md) по умолчанию Wi-Fi адаптер работает в [режиме точки доступа](wifi.md).
|
||||
|
||||
## Инструкция для переключения адаптера в режим клиента
|
||||
|
||||
|
||||
@@ -19,4 +19,4 @@ Raspberry Pi означает «малиновый пирог». Этот сво
|
||||
* домашний медиа-сервер
|
||||
* «мозговой центр» для автоматизированных станков или роботов
|
||||
|
||||
Собственно, в последнем качестве мы и будем его использовать, благодаря возможности подключения его к автопилоту PixHawk.
|
||||
Собственно, в последнем качестве мы и будем его использовать, благодаря возможности подключения его к автопилоту Pixhawk.
|
||||
|
||||
@@ -16,6 +16,8 @@
|
||||
|
||||
> **Note** Мобильный пульт конфликтует с реальной аппаратурой радиоуправления. Во время использования мобильного пульта она должна быть выключена.
|
||||
|
||||
> **Warning** Открытое соединение QGroundControl или rviz пересылает большие объемы данных по Wi-Fi, что может негативно сказаться на отзывчивости мобильного пульта. Рекомендуется не использовать эти приложения одновременно с ним.
|
||||
|
||||
Установите [образ Clever на RPi](microsd_images.md). Для работы приложения параметры `rosbridge` и `rc` в launch-файле (`~/catkin_ws/src/clever/clever/launch/clever.launch`) должны быть включены:
|
||||
|
||||
```xml
|
||||
@@ -53,4 +55,4 @@ sudo systemctl restart clever
|
||||
|
||||
* Если интерфейс пульта отображает явно неправильное напряжение (напр. > 5 V), проверьте, что значение PX4-параметра `BAT_N_CELLS` соответствует реальному количество элементов батареи. Если отображаемое напряжение все равно неверно, откалибруйте батарею (TODO: ссылка).
|
||||
|
||||
* Если вместо режима PX4 отображается текст "DISCONNECTED FROM FCU", проверьте [подключение Raspberry Pi к PixHawk](connection.md).
|
||||
* Если вместо режима PX4 отображается текст "DISCONNECTED FROM FCU", проверьте [подключение Raspberry Pi к Pixhawk](connection.md).
|
||||
|
||||
@@ -30,3 +30,9 @@ export ROS_IP=192.168.11.1
|
||||
В качестве reference frame рекомендуется установить фрейм `local_origin`. Для визуализации коптера можно добавить визуализационные маркеры из топика `/vehicle_markers`. Можно просмотреть картинку с дополненной реальностью из топика основной камеры `/main_camera/image_raw`.
|
||||
|
||||
Axis или Grid настроенный на фрейм `aruco_map` будут визуализировать расположение [карты ArUco-меток](aruco.md).
|
||||
|
||||
Рекомендуется также установка набора дополнительных полезных плагинов [jsk_rviz_plugins](https://jsk-docs.readthedocs.io/en/latest/jsk_visualization/doc/jsk_rviz_plugins/index.html). Это набор позволяет визуализировать топики типа `TwistStamped` (скорость), `CameraInfo`, `PolygonArray` и многое другое. Для установки используйте команду:
|
||||
|
||||
```bash
|
||||
sudo apt-get install ros-kinetic-jsk-visualization
|
||||
```
|
||||
|
||||
@@ -282,4 +282,4 @@
|
||||
|
||||
Далее: [Настройка-полетного-контролера](aruco.md#Настройка-полетного-контролера)
|
||||
|
||||
Далее: [Подключение Raspberry Pi к PixHawk](connection.md).
|
||||
Далее: [Подключение Raspberry Pi к Pixhawk](connection.md).
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
Simple offboard
|
||||
===
|
||||
|
||||
> **Warning** Это описание API версии 0.5. См. [описание API предыдущих версий](https://github.com/CopterExpress/clever/blob/67051b21a05b12e2e9e519cb640565bccb80fbe3/docs/simple_offboard.md).
|
||||
|
||||
Модуль `simple_offboard` пакета `clever` предназначен для упрощенного программирования автономного дрона (режим `OFFBOARD`). Он позволяет устанавливать желаемые полетные задачи и автоматически трансформирует [систему координат](frames.md).
|
||||
Модуль `simple_offboard` пакета `clever` предназначен для упрощенного программирования автономного дрона ([режим](modes.md) `OFFBOARD`). Он позволяет устанавливать желаемые полетные задачи и автоматически трансформирует [систему координат](frames.md).
|
||||
|
||||
`simple_offboard` является высокоуровневым способом взаимодействия с полетным контроллером. Для более низкоуровневой работы см. [mavros](mavros.md).
|
||||
|
||||
@@ -162,7 +160,7 @@ navigate(x=3, y=2, z=2, speed=1, frame_id='aruco_map', update_frame=True)
|
||||
Вращение на месте со скоростью 0.5 рад/c (против часовой):
|
||||
|
||||
```python
|
||||
navigate(x=0, y=0, z=0, speed=1, yaw=float('nan'), yaw_rate=0.5, frame_id='fcu_horiz')
|
||||
navigate(x=0, y=0, z=0, yaw=float('nan'), yaw_rate=0.5, frame_id='fcu_horiz')
|
||||
```
|
||||
|
||||
Полет вперед 3 метра со скоростью 0.5 м/с, вращаясь по рысканью со скоростью 0.2 рад/с:
|
||||
|
||||
@@ -71,16 +71,29 @@ while True:
|
||||
rospy.sleep(0.2)
|
||||
```
|
||||
|
||||
--
|
||||
|
||||
Определение, перевернут ли коптер:
|
||||
|
||||
```python
|
||||
PI_2 = math.pi / 2
|
||||
telem = get_telemetry()
|
||||
|
||||
flipped = not -PI_2 <= telem.pitch <= PI_2 or not -PI_2 <= telem.roll <= PI_2
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
Рассчет общего угла коптера к горизонту:
|
||||
|
||||
TODO: fix
|
||||
|
||||
```python
|
||||
PI_2 = math.pi / 2
|
||||
telem = get_telemetry()
|
||||
|
||||
flipped = not -PI_2 <= telem.pitch <= PI_2 or not -PI_2 <= telem.roll <= PI_2
|
||||
angle_to_horizon = math.atan(math.hypot(math.tan(telem.pitch), math.tan(telem.roll)))
|
||||
if flipped:
|
||||
angle_to_horizon = math.pi - angle_to_horizon
|
||||
```
|
||||
|
||||
---
|
||||
@@ -107,6 +120,17 @@ while not rospy.is_shutdown():
|
||||
|
||||
---
|
||||
|
||||
Повторять действие с частотой 10 Гц:
|
||||
|
||||
```python
|
||||
r = rospy.Rate(10)
|
||||
while not rospy.is_shutdown():
|
||||
# Do anything
|
||||
r.sleep()
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
Пример подписки на топики из MAVROS:
|
||||
|
||||
|
||||
|
||||
@@ -13,4 +13,6 @@ ssh pi@192.168.11.1
|
||||
|
||||
Для доступа по SSH из Windows можно использовать [PuTTY](https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html).
|
||||
|
||||
Также можно получить доступ по SSH со смартфона с помощью приложения [Termius](https://www.termius.com).
|
||||
|
||||
Подробнее: https://www.raspberrypi.org/documentation/remote-access/ssh/README.md
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
https://robots.ros.org/gapter/
|
||||
|
||||
85
docs/uart.md
Normal file
@@ -0,0 +1,85 @@
|
||||
# Интерфейс UART
|
||||
|
||||
UART – последовательный асинхронный интерфейс для передачи данных, применяемый во многих устройствах. Например GPS-антенны, Wi-Fi роутеры или Pixhawk.
|
||||
|
||||
Интерфейс обычно содержит две линии: TX – линия для передачи данных, RX – линия для приёма данных. А также обычно использует 5-ти вольтовую логику.
|
||||
|
||||
Для соединения двух устройств необходимо линию TX первого устройства подать на RX второго. Аналогичную операцию нужно совершить с другой стороны, чтобы обеспечить двустороннюю передачу данных.
|
||||
|
||||
> Также необходимо синхронизировать уровни напряжений – соединить землю на двух устройствах.
|
||||
|
||||
Почитать больше про интерфейс и протокол можно в [этой статье](https://habr.com/post/109395/).
|
||||
|
||||
## Linux TTY
|
||||
|
||||
В Linux есть понятие Posix Terminal Interface (подробнее [здесь](https://ru.wikipedia.org/wiki/TTY-абстракция)). Это некоторая абстракция над последовательным или виртуальным интерфейсом, позволяющая работать с устройством нескольким агентам одновременно.
|
||||
|
||||
В качестве примера такой абстрации в Raspbian можно привести `/dev/tty1` – устройство вывода текста на экран подключенный по HDMI.
|
||||
|
||||
## UART на Raspberry Pi 3
|
||||
|
||||
В Raspberry Pi 3 есть два аппаратных UART интерфейса:
|
||||
|
||||
1. `Mini UART` (/dev/ttyAMA0) – для своей работы использует тактирование видеоядра RPi, в связи с чем ограничивает его частоту.
|
||||
2. `PL011` (/dev/ttyS0) – полноценный UART интерфейс выполненный на отдельном блоке кристалла микроконтроллера.
|
||||
|
||||
Подробнее про UART на Raspberry Pi в [официальной статье](https://www.raspberrypi.org/documentation/configuration/uart.md).
|
||||
|
||||
Данные интерфейсы с помощью вентелей микроконтроллера можно переключать между двуями физическими выходами:
|
||||
|
||||
1. разъём UART на GPIO;
|
||||
2. Bluetooth модуль RPi.
|
||||
|
||||
По умолчанию в Raspberry Pi 3 `PL011` подключен к Bluetooth модулю. А `Mini UART` отключен с помощью значения директивы `enable_uart`, по дефолту равной `0`.
|
||||
|
||||
> Надо понимать, что директива `enable_uart` меняет свое дефолтное значение исходя из того, какой UART подключен к Bluetooth модулю RPi с помощью директивы `dtoverlay=pi3-miniuart-bt`.
|
||||
|
||||
Для удобства работы с этими выходами в Raspbian существуют алиасы:
|
||||
|
||||
* `/dev/serial0` – всегда указывает на то TTY устройство, что подключено к GPIO портам.
|
||||
* `/dev/serial1` – всегда указывает на то TTY устройство, что подключено к Bluetooh модулю.
|
||||
|
||||
### Настройка UART на Raspberry Pi
|
||||
|
||||
Для настроек UART существуют директивы, которые находятся в `/boot/config.txt`.
|
||||
|
||||
Для включения UART интерфейса на GPIO:
|
||||
|
||||
```
|
||||
enable_uart=1
|
||||
```
|
||||
|
||||
Для отключения UART интерфейса от Bluetooth модуля:
|
||||
|
||||
```
|
||||
dtoverlay=pi3-disable-bt
|
||||
```
|
||||
|
||||
Для подключения `Mini UART` к Bluetooth модулю:
|
||||
|
||||
```
|
||||
dtoverlay=pi3-miniuart-bt
|
||||
```
|
||||
|
||||
В случае отключения Bluetooth модуля следует отключить `hciuart` сервис:
|
||||
|
||||
```bash
|
||||
sudo systemctl disable hciuart.service
|
||||
```
|
||||
|
||||
## Дефолтная настройка образа
|
||||
|
||||
На образе CLEVER мы изначально выключили `Mini UART` и Bluetooth модуль.
|
||||
|
||||
## Bugs
|
||||
|
||||
Если использовать подключение `Mini UART` к Bluetooth, `hciuart` падает с ошибкой:
|
||||
|
||||

|
||||
|
||||
В случае отключения Bluetooth
|
||||
|
||||
```
|
||||
/dev/serial0 -> ttyAMA0
|
||||
/dev/serial1 -> ttyS0
|
||||
```
|
||||