Harakiri

Материал из Multicopter Wiki
Перейти к: навигация, поиск

Harakiri - один из вариантов ПО для полётных контроллеров типа Naze32 и Flip32.

По состоянию на август 2015 только Harakiri может в случае FailSafe включать GPS-режимы «Возврат домой» и «Автопосадка».

Для этого у коптера должна быть следующая конфигурация:

  • Flip32 версия с баро и магнетометром (который в общем-то и не нужен, т.к. перерезается SDA встроенного компаса на плате и подключается внешний).
  • GPS-модуль UBlox neo-6m на скорости 57600 бод
  • MinimOSD от KV_Team (с аналоговыми входами)
  • Сонар HC-SR04
  • Приемник с PWM и конвертор PWM в CPPM (ArduPPM на базе Arduino 328pm Mini)
  • Датчик тока ACS712
  • Остальное оборудование (моторы, регуляторы, BEC, FPV) - см. в статье про FPV-миникоптеры.

Порядок действий:

  1. Поставить виртуалку Keil (evaluation, но после ряда действий ограничения на размер кода будут обойдены) + GCC. Инструкция baseflight_howto_0r2.pdf в архивах в теме.
  2. Прошивку взять из GIT TestCode3

Сонар [править]

  • Сонар подключается к входам RC7 и RC8.
  • Сонар отключается при наклоне больше определенного угла (18°)
  • Если не откалиброван акселерометр, то угол наклона не будет определен, и сонар попросту не будет работать. Это важно знать во время отладки и настройки коптера.
  • Если сонар через некоторое время отваливается, то можно попробовать увеличить константу таймаута коннекта в drv_sonar.c, например, на 350000:
if ((curT - calltime) > 300000) disable = true; // Data stalled for ca. 300ms, disconnect error.

OSD [править]

Один из вариантов OSD, совместимых с Harakiri - MW OSD. Проверенная версия - scarab-osd-1.4.2.10.

Важно: в файле MW_OSD.ino вместо USE_BOXNAMES надо писать BOXNAMES, чтобы вся информация корректно передавалась.

Если программа настройки MW OSD не запускается (из-за разногласий с Oracle Java), или запускается с большой задержкой (долго опрашивает порты в Serial.list(), в связи с реализаций Bluetooth портов под Windows при вызове функции драйвера GetName опрашивается много портов), то можно передать нужный порт из командной строки, поменять MW_OSD_GUI.java, сделать батники для ее компиляции в обход Processing, и запуска, заодно примирив её с Oracle Java. Батники кладуться в .\scarab-osd-1.4.2.10\MW_OSD_GUI\application.windows32\

Сборка (build.MW_OSD_GUI.bat):

set javahome=C:\Program Files (x86)\Java\jdk1.7.0_45\bin\

set p=.\;lib\controlP5.jar;lib\core.jar;lib\gluegen-rt.jar;lib\gluegen-rt-natives-windows-i586.jar;lib\jogl-all.jar;lib\jogl-all-natives-windows-i586.jar;lib\MW_OSD_GUI.jar;lib\RXTXcomm.jar;lib\serial.jar;lib
"%javahome%\javac.exe" -classpath %p% -verbose source\*.java

if exist lib\MW_OSD_GUI1.jar del lib\MW_OSD_GUI1.jar
"%javahome%\jar.exe" -cvfm lib\MW_OSD_GUI1.jar META-INF\MANIFEST.MF -C source/ source/*.class source/*$*$*.class 
del source\*.class

Запуск (OSD_GUI.bat):

set p=lib\controlP5.jar;lib\core.jar;lib\gluegen-rt.jar;lib\gluegen-rt-natives-windows-i586.jar;lib\jogl-all.jar;lib\jogl-all-natives-windows-i586.jar;lib\MW_OSD_GUI1.jar;lib\RXTXcomm.jar;lib\serial.jar;lib

set path=C:\Arduino.1.5.6.2\java\bin;%path%
java -Djava.library.path=lib -cp %p% MW_OSD_GUI %*

Запуск редактора font'ов (CharEdit.bat):

C:\Arduino.1.5.6.2\java\bin\java.exe -verbose -jar data\MAX7456Charwizard.jar

Пример настроек Harakiri [править]

(mag_dec - для Москвы)

feature PPM
feature VBAT
feature GPS
feature SONAR

set minthrottle=1150
set mag_dec=105
set gps_baudrate = 57600
set gps_type = 1
set snr_type = 1
set snr_min = 20
set snr_dbg = 1
Личные инструменты
Пространства имён
Варианты
Действия
Навигация
Инструменты
Группа ВКонтакте