Index · Правила · Поиск· Группы · Регистрация · Личные сообщения· Вход

Список разделов Компьютерный раздел
 
 
 

Раздел: Компьютерный раздел Программирование приложений на android 

Создана: 31 Октября 2011 Пон 13:25:33.
Раздел: "Компьютерный раздел"
Сообщений в теме: 223, просмотров: 35174

На страницу: Назад  1, 2, 3 ... 11,
, 13, 14, 15  Вперёд
  1. 31 Октября 2011 Пон 13:25:33
    Набираю желающих в кружок
  2. andrew340


    Частый гость


    Более 10 лет на форумеМуж.
    27 Ноября 2012 Втр 12:11:18
    извините что не в тему, но не нашел то чего надо.
    достался мне samsung с android 2.1, теперь вот пытаюсь разобраться и вас прошу подсказать. на сколько мне известно это последняя официальная прошивка под samsung i5700? но есть более новые, так вот вопрос какая из них устойчивая и без косяков? и кто её может поставить потому что самому времени нет разбираться.
    И еще вопрос: Все приложения устанавливаются только в память телефона, и она быстро забивается и не дает больше устанавливать. как то это можно изменить? чтоб устанавливалось на карту памяти. но при этом работало все.
  3. 30 Ноября 2012 Птн 10:29:33
    С прошивками не сталкивался. У меня android сам говорит что доступна к установке следующая версия OC и спрашивает разрешения на установку.
  4. 30 Ноября 2012 Птн 10:29:50
    Еще одна идея относительно того как обеспечить условия для правильной работы команды AT*PCMD - использовать для задания идентификатора команды AT*CONFIG команду AT*CONFIG_IDS

    Summary : Identifiers for the next AT*CONFIG command
    Corresponding API function : ardrone_at_set_toy_configuration
    Syntax : AT*CONFIG_IDS=%d,%s,%s,%s<CR>
    Argument 1 : the sequence number
    Argument 2 : Current session id
    Argument 3 : Current user id
    Argument 4 : Current application id
    Description :
    While in multiconfiguration, you must send this command before every AT*CONFIG. The config will only be applied if the ids must match the current ids on the AR.Drone.
    ARDroneTool does this automatically.
  5. 04 Декабря 2012 Втр 10:41:15
    Обсуждение алгоритмов drone

    Вернемся к алгоритмам которые помогают drone летать.

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

    С барометром тоже понятно, чем выше аппарат тем меньше давление. Есть наверное формула для расчета высоты от давления атмосферного.

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

    3. Камеры видео. Их две. Фронтальная и вертикальная. Вертикальная камера измеряет скорость движения drone. Алгоритм по моему такой. Анализируется изображение, на нем выделяются точки неподвижные. Точка это типа яркое пятно с четкими границами с малым угловым размером. Вместе с расстоянием до Земли изменение положения точки на снимке дает скорость движения.
  6. 04 Декабря 2012 Втр 11:29:28
    Конфигурирование (настройка) drone

    1. У drone компьютер с linux на борту. Для хранения настроек используется файл config.ini в папке data



    Код:
    # cat config.ini

    [general]
    num_version_config = 1
    num_version_mb = 33
    num_version_soft = 2.2.9
    drone_serial = PS721000AE2F046163
    soft_build_date = 2012-09-14 17:42
    motor1_soft = 1.43
    motor1_hard = 6.0
    motor1_supplier = 1.1
    motor2_soft = 1.43
    motor2_hard = 6.0
    motor2_supplier = 1.1
    motor3_soft = 1.43
    motor3_hard = 6.0
    motor3_supplier = 1.1
    motor4_soft = 1.43
    motor4_hard = 6.0
    motor4_supplier = 1.1
    ardrone_name = My ARDrone
    flying_time = 59342
    navdata_demo = TRUE
    com_watchdog = 2
    video_enable = TRUE
    vision_enable = TRUE
    vbat_min = 9000

    [control]
    accs_offset = { -3.9752036e+03 4.0814775e+03 4.2152520e+03 }
    accs_gains = { 1.9780525e+00 5.4767070e-04 -3.0504869e-02 -5.7449499e-03 -1.9599000e+00 -2.9091097e-02 -4.8198797e-02 -8.0456100e-03 -1.9978486e+00 }
    gyros_offset = { 3.1888750e+01 -6.2437501e+00 -6.2125001e+00 }
    gyros_gains = { 1.0669013e-03 -1.0693741e-03 -1.0746175e-03 }
    gyros110_offset = { 1.6625000e+03 1.6625000e+03 }
    gyros110_gains = { 1.5271631e-03 -1.5271631e-03 }
    magneto_offset = { 1.8604543e+02 -1.1058002e+02 -7.9044165e+02 }
    magneto_radius = 1.8013339e+02
    gyro_offset_thr_x = 4.0000000e+00
    gyro_offset_thr_y = 4.0000000e+00
    gyro_offset_thr_z = 5.0000000e-01
    pwm_ref_gyros = 500
    osctun_value = 63
    osctun_test = TRUE
    altitude_max = 2000
    altitude_min = 50
    outdoor = FALSE
    flight_without_shell = FALSE
    autonomous_flight = FALSE
    control_level = 0
    euler_angle_max = 5.0000001e-02
    control_iphone_tilt = 3.4906584e-01
    control_vz_max = 6.0000000e+02
    control_yaw = 2.0000000e+00
    manual_trim = FALSE
    indoor_euler_angle_max = 5.0000001e-02
    indoor_control_vz_max = 6.0000000e+02
    indoor_control_yaw = 2.0000000e+00
    outdoor_euler_angle_max = 3.4906584e-01
    outdoor_control_vz_max = 1.0000000e+03
    outdoor_control_yaw = 3.4906585e+00
    travelling_mode = 0,10,1500,0,1000

    [network]
    ssid_single_player = ardrone2_046163
    ssid_multi_player = ardrone2_046163
    wifi_mode = 0
    owner_mac = 00:00:00:00:00:00

    [pic]
    ultrasound_freq = 8
    ultrasound_watchdog = 3
    pic_version = 184877090

    [video]
    camif_fps = 30
    camif_buffers = 2
    num_trackers = 12
    video_on_usb = FALSE
    video_file_index = 2
    codec_fps = 30

    [leds]

    [detect]
    enemy_colors = 2
    enemy_without_shell = 0
    groundstripe_colors = 16
    detect_type = 3
    detections_select_h = 0
    detections_select_v_hsync = 0
    detections_select_v = 0

    [syslog]
    output = 7
    max_size = 102400
    nb_files = 5

    [custom]
    application_desc = Default application configuration
    profile_desc = Default profile configuration
    session_desc = Default session configuration

    [userbox]

    [gps]
    latitude = 5.0000000000000000e+02
    longitude = 5.0000000000000000e+02
    altitude = 0.0000000000000000e+00


    Это config.ini моего drone.

    Структура в общем понятна. Раздел, ключ, значение. Можно таким образом сформулировать синтаксис для таких команд. Допустим я хочу задать значение для минимальной высоты полета - altitude_min

    Ищем этот ключ в файле, определяем раздел в котором он находится и создаем инструкцию

    AT*CONFIG= seq,"control:altitude_min","500"

    Высота задается в миллиметрах, то есть минимальная высота полета 50 см
  7. 08 Декабря 2012 Суб 17:23:06
    Разобрался как можно понизить прошивку drone с помощью программы DroneControl HD 2.1

    1. Устанавливаем соединение с internet
    2. Входим в программу
    3. Выбираем Tools Firmware
    4. Выбираем Firmwate Manager
    5. Выбираем Downloader
    6. Затем выбираем нужную прошивку для AR.Drone 2

    Затем подключаемся к сети AR.Drone и устанавливаем нужную прошивку
  8. 09 Декабря 2012 Вск 21:11:34
    Вопросы от Arman

    Вот я установил eclipse дальше что надо делать? чтобы программировать дрона?

    Ответ

    Для создания консольного приложения:

    File -> New -> Java Project

    Появляется диалог. Пишем имя проекта , например, arman

    Создается папка arman, в ней есть пустая папка src, в ней хранятся тексты программ

    Выбираем ее мышкой и вызываем контекстное меню, правой кнопкой мыши, в меню выбираем New-> Class, вводим имя класса и так далее.

    Если нет опыта программирования в java, спрашивайте
  9. 10 Декабря 2012 Пон 0:28:29
    О механизме стабилизации drone.

    про снег:
    -свежий снег - это проблема
    дрон не стабилизируется по горизонтали
    кстати солнышко - не мешает а помогает)
    также помогают любые контрастные детали на снегу, напр трава, даже следы)

    [внешняя ссылка]
  10. 11 Декабря 2012 Втр 21:19:34
    Диалоги с Arman

    ----------------
    Ага. Папка arman уже есть как я понял. В ней папка src и ссылка на библиотечный файл - JRE System Library. В этой библиотеке находятся описания базовых классов Java.

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

    Чтобы создать шаблон для создаваемого класса.

    1. Выбираем мышью папку src и щелкаем правой кнопкой мыши. Появляется контекстное меню
    2. В контекстном меню выбираем команду New -> Class
    3. В диалоге определяем имя класса и ставим галочку напротив опции public static void main
    4. Нажимаем Ok. Создается файл в папке src с заданным именем.
    5. Открываем его и в методе main пишем программу на языке Java
  11. 13 Декабря 2012 Чтв 9:19:53
    Уроки по Java

    [внешняя ссылка]
  12. 28 Декабря 2012 Птн 19:17:14
    Когда мне надоедает разбираться с проблемами в программировании drone я читаю тему про multiwii

    [внешняя ссылка]

    Вот это настоящая мутота и сильно вдохновляюсь
  13. 30 Декабря 2012 Вск 22:37:45
    Сброс к заводским настройкам

    [внешняя ссылка]

    SSID вертолета (точки доступа) меняется

    Теперь понял, что происходит в результате нажатия на кнопку RESET расположенную под аккумулятором вертолета.

    Просто удаляется файл config.ini в папке /data
  14. 07 Января 2013 Пон 9:58:24
    Проблема управляемости drone

    Направление вертолет берет у датчиков - гироскопа, магнитометра и акселерометра

    Нуль у датчиков плывет в определенных пределах, то есть если вчера это был нуль, то сегодня это может быть плюс/минус 10 градусов. Кроме того что нуль плывет этот нуль еще и смещен относительно настоящего нуля
  15. 15 Января 2013 Втр 13:52:28
    Пусть нам надо передать видео по сети (с вертолета на ipad). Чтобы видео не "тормозило" надо "сжать" его

    Пусть надо передать квадрат пикселов 2*2. Каждый пиксел имеет три цветовые координаты R,G,B. Информацию необходимую для передачи цвета 4 пикселов можно представить в виде трех массивов

    R1, R2, R3, R4

    G1...G4

    B1...B4

    Пусть каждое значение имеет размер один байт, т.е.для передачи информации о цвете пикселов нужно 12 байтов

    Более экономно передавать цветовую информацию с помощью цветового пространства YCrCb

    Структура дискретизации описывается соотношением x:a:b

    где x - частота дискретизации яркостного канала, a - число выборок каналов Cr, Cb в вертикальном направлении в первой строке, b - то же самое во второй строке

    Если используется схема 4:2:0 , то для кодирования пикселов нужно 6 байт

    Экономия в 2 раза
  16. 15 Января 2013 Втр 22:34:51
    С помощью цветового пространства можно уменьшить количество байтов необходимых для кодирования цвета пиксела.

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

    Например

    WWWWWWWWWWWWBWWWWWWWWWWWWBBBWWWWW
    WWWWWWWWWWWWWWWWWWWBWWWWWWWWWWWWWW

    Если мы применим простое кодирование длин серий к этой строке, то получим следующее:

    12W1B12W3B24W1B14W

    [внешняя ссылка]

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

    [внешняя ссылка]

    [внешняя ссылка]

    В результате получаем матрицу коэффициентов в которой после квантования нули скапливаются в правом нижнем углу



    Теперь надо найти способ записи элементов матрицы в строку. Для этого используется Zigzag-упорядочение.







    Довольно существенное сокращение длины блока
На страницу: Назад  1, 2, 3 ... 11,
, 13, 14, 15  Вперёд