Специальные цены   новые товары
+ Ответить в теме
Страница 103 из 165 ПерваяПервая ... 93 101 102 103 104 105 113 ... ПоследняяПоследняя
Показано с 4,081 по 4,120 из 6569

Создание собственной системы стабилизации

Тема раздела Квадрокоптеры. Общие вопросы в категории Квадрокоптеры и мультироторы; Сообщение от Sir Alex а зачем присваивать в начале 0xFF? там вообщет можно все что угодно... главное 1-й байт говорит ...

  1. #4081

    Регистрация
    07.04.2012
    Адрес
    Брянск
    Возраст
    29
    Сообщений
    1,675
    Записей в дневнике
    6
    Цитата Сообщение от Sir Alex Посмотреть сообщение
    а зачем присваивать в начале 0xFF?
    там вообщет можно все что угодно... главное 1-й байт говорит что будем читать далее и с инкрементом адреса, а что в следующих посылаеш - не учитывается

    Цитата Сообщение от SergDoc Посмотреть сообщение
    правильная переменная?
    этот драйвер из апноута Атмел

  2.  
  3. #4082

    Регистрация
    01.11.2010
    Адрес
    Belarus Slonim
    Возраст
    36
    Сообщений
    4,462
    Записей в дневнике
    8
    Цитата Сообщение от Sir Alex Посмотреть сообщение
    SPI_MasterTransceiveByte(&spiMasterE, 0xFF);
    в SPI чтобы что-то прочитать, надо туда заслать чё-нить...

    Цитата Сообщение от mataor Посмотреть сообщение
    этот драйвер из апноута Атмел
    не я конечно в программировании не силён, но не останется ли переменная только в этой процедуре? т.е. доступ другим к ней будет?

  4. #4083

    Регистрация
    17.06.2011
    Адрес
    Минск
    Возраст
    39
    Сообщений
    1,941
    Цитата Сообщение от SergDoc Посмотреть сообщение
    не я конечно в программировании не силён, но не останется ли переменная только в этой процедуре? т.е. доступ другим к ней будет?
    Останется, но перед выходом из процедуры, она присваивается резалту
    return(result)

  5. #4084
    Забанен
    Регистрация
    30.11.2011
    Адрес
    Киев
    Возраст
    36
    Сообщений
    373
    Поделитесь обработчиком под STM32 (аппаратным желательно) кодирования/декодирования сигнала ppmsum, а также обработчик приема обычных данных с приемника.

  6.  
  7. #4085

    Регистрация
    01.11.2010
    Адрес
    Belarus Slonim
    Возраст
    36
    Сообщений
    4,462
    Записей в дневнике
    8
    тут и входы и выходы...

  8. #4086

    Регистрация
    01.11.2010
    Адрес
    Belarus Slonim
    Возраст
    36
    Сообщений
    4,462
    Записей в дневнике
    8
    Sir Alex и tusik, к вам будет просьба. Как только платы приедут - по возможности побыстрее сделать кино полёта...
    Я пока не смогу этого сделать в полном объёме в моей плате проблемный баро и gps у меня глючит - блин сапожник без сапог
    В платах залита староватая версия 3.1... посмотрю точнее скажу - но я на ней летал (т.е. проверенная)
    Конфигурация X моторы (нумерация) как в APM !
    Для запуска Арду обязательна SD-карточка... у меня прекрасно живёт 2-х гиговая noname
    Первый запуск - просто включить с карточкой
    Далее на карточке создастся директория APM (там логи будут хранится)
    Для запуска моторов в эту директорию надо положить пустой файл
    AUXPWM.en регистр букв обязателен.
    Вход радио пока работает один PPM, подписан 4-й
    Последний раз редактировалось SergDoc; 15.02.2014 в 13:59.

  9. #4087

    Регистрация
    17.06.2011
    Адрес
    Минск
    Возраст
    39
    Сообщений
    1,941
    Цитата Сообщение от SergDoc Посмотреть сообщение
    Я пока не смогу этого сделать в полном объёме в моей плате проблемный баро и gps у меня глючит - блин сапожник без сапог
    Я ж тебе написал, пришли мне без баро, я выковыряю из своих запасов контроллеров.

  10.  
  11. #4088

    Регистрация
    01.11.2010
    Адрес
    Belarus Slonim
    Возраст
    36
    Сообщений
    4,462
    Записей в дневнике
    8
    Не, это не красиво будет - я купил новый себе, приедет переставлю....

    теперь аксель калибруется с кнопки в планнере в терминал лезть ненадо, на старой плате калибровался только через терминал... на новых на всех просто с кнопки калибруется
    да ещё я не пробовал через терминал виртуальную еепром стирать...
    если надо стереть в консоли NuttX
    вынимаем SD (если с пищалкой запустить будет пиликать SOS)
    подключаем к 1 усарту через ftdi (или через что есть) любой терминалкой (патти, геркулес...)
    скорость 57600
    набираем
    mtd start
    mtd erase
    reboot
    вставляем SD запускаемся калибруемся...
    Последний раз редактировалось SergDoc; 15.02.2014 в 14:16.

  12. #4089

    Регистрация
    26.11.2012
    Адрес
    Tambov
    Возраст
    46
    Сообщений
    777
    Цитата Сообщение от SergDoc Посмотреть сообщение
    на новых на всех просто с кнопки калибруется
    Я так понимаю(?), - выровнял на земле аппарат по строительному уровню - и нажал кнопку ?

  13. #4090

    Регистрация
    01.11.2010
    Адрес
    Belarus Slonim
    Возраст
    36
    Сообщений
    4,462
    Записей в дневнике
    8
    неа калибровать все оси! ну это по инструкции арду всё...
    калибровать можно просто плату без коптера...
    подлетнуть если тянет куда - посадить сделать арм - но подержать стик подольше секунд 10, подлетнуть пока аппарат не перестанет куда-либо вести, сел, дизарм, save trim - щёлкнуть переключатель (7 канал радио)...

    Паршифки заливаются планнером так что осторожно родная от PX4 зальётся, но работать не будет и перепрошить будет с планнера невозможно! в таком случае: в папке планнера есть PX4uploader - запустить выбрать паршивку и тыкать ресет пока лодырь (он жывой остаётся) не определится...
    Последний раз редактировалось SergDoc; 15.02.2014 в 14:31.

  14. #4091

    Регистрация
    07.04.2012
    Адрес
    Брянск
    Возраст
    29
    Сообщений
    1,675
    Записей в дневнике
    6
    размещу тут видео:


    как отмакетировать небольшой BGA чип

  15. #4092

    Регистрация
    24.01.2010
    Адрес
    Москва
    Возраст
    29
    Сообщений
    3,547
    Записей в дневнике
    33
    Мисье знает толк в извращениях)))))))

  16. #4093

    Регистрация
    01.11.2010
    Адрес
    Belarus Slonim
    Возраст
    36
    Сообщений
    4,462
    Записей в дневнике
    8
    Цитата Сообщение от mataor Посмотреть сообщение
    как отмакетировать небольшой BGA чип
    не уж увольте, с проводками возитьсяс... лучша я быстренько лут накидаю
    прикол приколом, а мне с али вчера баро отправили и трек уже дали
    фух платки загружены в коробочку завтра с утра поедуть, моя лежит на окне gps-ом следит за спутниками - дождь 7 спутников hdop 2.4 ещё ни разу на плохую жисть не пожаловалось, может у меня в старой плате был косяк?

  17. #4094

    Регистрация
    26.11.2012
    Адрес
    Tambov
    Возраст
    46
    Сообщений
    777
    Цитата Сообщение от rual Посмотреть сообщение
    как вычислить баровысоту без матфункции pow
    Александр, подскажите,- ваш MS5611 давление показывает согласно даташиту (диапазон 1000 - 120000 милибар) ??
    У меня чушь какая-то лезет в расчете... отрицательные значения показывает.., код пробовал и "чужой" и сам ковырял..
    по идее 1 атм.=~1 бар, значит показания переменной давления должны быть ~ 100000, а у меня 32000 (на порядок меньше), правда (?) высоту после расчета показывает вроде нормально, но есть большие сомнения...

  18. #4095

    Регистрация
    01.11.2010
    Адрес
    Belarus Slonim
    Возраст
    36
    Сообщений
    4,462
    Записей в дневнике
    8
    Цитата Сообщение от oleg70 Посмотреть сообщение
    отрицательные значения показывает.., код пробовал и "чужой" и сам ковырял..
    сразу в лоб - контакты луженые были как купили? - если да - в мусор
    Спустя несколько часов GPS сошео с ума - начал терять позицию

  19. #4096

    Регистрация
    19.04.2010
    Адрес
    Ханты
    Возраст
    40
    Сообщений
    1,472
    Цитата Сообщение от oleg70 Посмотреть сообщение
    У меня чушь какая-то лезет в расчете... отрицательные значения показывает..,
    Олег, проверьте правильность сборки 24 битного слова, получаемого от барика.

  20. #4097

    Регистрация
    01.11.2010
    Адрес
    Belarus Slonim
    Возраст
    36
    Сообщений
    4,462
    Записей в дневнике
    8
    Кстати мне тут посоветовали убрать цыклы считывания датчиков - заменить на тупое считывание каждого регистра - флеши займёт больше (ну тупо для мпу - 14 строчек ) но должно дать производительность - не надо время на запуск и проверку цыкла делать - флеши пока хватает - как?

  21. #4098

    Регистрация
    26.11.2012
    Адрес
    Tambov
    Возраст
    46
    Сообщений
    777
    Цитата Сообщение от rual Посмотреть сообщение
    проверьте правильность сборки 24 битного слова
    Проблему кажется локализовал, но ничего не понял ... Дело в самом выводе в терминал компа..
    Ситуация такая (CooCox): (для проверки сделал следующий код)
    int32_t data;
    data=45653;
    if(data<0)
    {out_usart2(0x2D);
    data=abs(data);
    }
    Так вот компиллер считает что 45653 - "меньше нуля" (????), потом ессно делает abs() и далее из "data" получается -19883 (??)
    Причем все нормально до 32768, а далее уже ненормально.... Мне всегда казалось что int32_t (stdint.h) хватает чтоб 45653 было положительным....

  22. #4099

    Регистрация
    01.11.2010
    Адрес
    Belarus Slonim
    Возраст
    36
    Сообщений
    4,462
    Записей в дневнике
    8
    Что Александр и писал, неправильное представление 24-х битного слова, если лезет минус - это переполнение...

  23. #4100

    Регистрация
    26.11.2012
    Адрес
    Tambov
    Возраст
    46
    Сообщений
    777
    Цитата Сообщение от SergDoc Посмотреть сообщение
    неправильное представление 24-х битного слова
    Тут попахивает моим полным непониманием типов переменных (тяжелое наследие AVr) , бывает видимо и так - написал почти весь код (и причем "рабочий") и нифига не правильно...

  24. #4101

    Регистрация
    17.06.2011
    Адрес
    Минск
    Возраст
    39
    Сообщений
    1,941
    Цитата Сообщение от oleg70 Посмотреть сообщение
    Причем все нормально до 32768, а далее уже ненормально.... Мне всегда казалось что int32_t (stdint.h) хватает чтоб 45653 было положительным....
    У вас константа int16_t, что бы она стала int32_t надо дописать в конце букву 'L'
    int32_t data;
    data=45653L;

  25. #4102

    Регистрация
    26.11.2012
    Адрес
    Tambov
    Возраст
    46
    Сообщений
    777
    Цитата Сообщение от Sir Alex Посмотреть сообщение
    в конце букву 'L'
    Проверил, - то же самое...... И так: (int32_t)45653 - тоже.....

  26. #4103

    Регистрация
    01.11.2010
    Адрес
    Belarus Slonim
    Возраст
    36
    Сообщений
    4,462
    Записей в дневнике
    8
    Олег вот драйвер отталкивайтесь от него... он рабочий...

    Цитата Сообщение от oleg70 Посмотреть сообщение
    И так: (int32_t)45653 - тоже.....
    но если переменная 16- битная вылезла с переполнением, естествено минус, то при приведении её в32-битную всё равно останется минус, т.е. первая единица переместится в старший разряд - я так понимаю оно ж всё в дополнительном коде...
    Последний раз редактировалось SergDoc; 16.02.2014 в 22:57.

  27. #4104

    Регистрация
    26.11.2012
    Адрес
    Tambov
    Возраст
    46
    Сообщений
    777
    Цитата Сообщение от SergDoc Посмотреть сообщение
    ... он рабочий...
    Это все я уже смотрел, делал один в один с поправкой на SPI, но дело не в "общем" непонимании математики этого баро, а в том что результат расчета при неправильном указании типов - неправильный (хотя работает и так ), это уже чисто программерские заморочки,
    может кто проведет "ликбез"........

  28. #4105

    Регистрация
    01.11.2010
    Адрес
    Belarus Slonim
    Возраст
    36
    Сообщений
    4,462
    Записей в дневнике
    8
    не ну вот 16-битная переменная 45653 в дотолнительном коде(как проц считает) это -19883 и если после этого вы приведёте её к int_32 она всё равно останется -19883, тут изначально надо искоренить 16-ти битное представление?
    тут можно покопаться - по SPI...
    как вариант брать беззнаковое значение?

  29. #4106

    Регистрация
    26.11.2012
    Адрес
    Tambov
    Возраст
    46
    Сообщений
    777
    Цитата Сообщение от SergDoc Посмотреть сообщение
    16-битная переменная 45653
    Ситуация: int32_t переменная равная 45653(чисто для примера) считается положительной до 32768 и далее отрицательной, хотя по идее, диапазон "знаковой 32-х битной переменной" от -65535 до 65536 (?),....
    Если здесь не разобраться то, потом коптер улетит на луну...

  30. #4107

    Регистрация
    01.11.2010
    Адрес
    Belarus Slonim
    Возраст
    36
    Сообщений
    4,462
    Записей в дневнике
    8
    32768 это -1 в шеснадцатибитном представлении - где-то кроется переполнение при чём 16 -ти битной переменной... у вас где-то неправильное приведение переменных!!!

  31. #4108
    Забанен
    Регистрация
    30.11.2011
    Адрес
    Киев
    Возраст
    36
    Сообщений
    373
    Цитата Сообщение от SergDoc Посмотреть сообщение
    32768 это -1 в шеснадцатибитном представлении
    -1 это 65535 или я чего то не знаю?

  32. #4109

    Регистрация
    26.11.2012
    Адрес
    Tambov
    Возраст
    46
    Сообщений
    777
    Цитата Сообщение от SergDoc Посмотреть сообщение
    у вас где-то неправильное приведение переменных
    int32_t data;
    data=45653;
    if(data<0)..... ГДЕ ?

  33. #4110

    Регистрация
    01.11.2010
    Адрес
    Belarus Slonim
    Возраст
    36
    Сообщений
    4,462
    Записей в дневнике
    8
    16 бит 10000000000000000 - в дополнительном коде - старший бит это знак числа, дабы перевести в основной надо добавить в младший бит единицу и естественно поставить знак - получаем -1... если в старшем бите 0 то единицу добавлять ненадо... говорю же где-то кроется 16 битная переменная с переполнением...

  34. #4111

    Регистрация
    26.11.2012
    Адрес
    Tambov
    Возраст
    46
    Сообщений
    777
    Задам вопрос по другому,: "какого типа должна быть объявлена переменная, чтоб ей можно было присвоить значение 45635 и компилятор это значение не принимал за отрицательное" ..
    (а сейчас у меня условие <0 выполняется....(?))

  35. #4112

    Регистрация
    01.11.2010
    Адрес
    Belarus Slonim
    Возраст
    36
    Сообщений
    4,462
    Записей в дневнике
    8
    Цитата Сообщение от oleg70 Посмотреть сообщение
    Задам вопрос по другому
    Олег пацаны тут умные - не то что я: кодятник в студию - разберуться
    ну задайте ему uint...

  36. #4113

    Регистрация
    26.11.2012
    Адрес
    Tambov
    Возраст
    46
    Сообщений
    777
    Цитата Сообщение от SergDoc Посмотреть сообщение
    пацаны тут умные
    Надеюсь, что ткнут меня носом в мою безграмотность... (если б не MS5611, с его "миллионными" значениями в расчетах, я б может и не знал,- что ничего не понимаю.....)

  37. #4114

    Регистрация
    17.06.2011
    Адрес
    Минск
    Возраст
    39
    Сообщений
    1,941
    Цитата Сообщение от oleg70 Посмотреть сообщение
    Проверил, - то же самое...... И так: (int32_t)45653 - тоже.....
    Перекомпили еще раз, должно было помочь, по всем описаниям, проблема именно в том, что константа по умолчанию идет как int, т.е. от -32768 до +32768.

  38. #4115

    Регистрация
    07.04.2012
    Адрес
    Брянск
    Возраст
    29
    Сообщений
    1,675
    Записей в дневнике
    6
    хмм... а зачем вообще применять знаковые переменные? кто нам мешает использовать unsigned???

  39. #4116

    Регистрация
    01.11.2010
    Адрес
    Belarus Slonim
    Возраст
    36
    Сообщений
    4,462
    Записей в дневнике
    8
    Не, ну а что за текст? Я без претензий ибо для меня языки программирования - это птичий язык, чесное слово, я могу понять где какие переменные, где какие алгоритмы - но общей картины я не могу представить - хоть убей, а по каким-то урывкам темболее

    Цитата Сообщение от Sir Alex Посмотреть сообщение
    Перекомпили еще раз
    я чего-то не вижу?
    кстати есть неразрешенный вопрос, вроде как можно родное ПО PX4 компилить и отлаживать в эклипсе?

  40. #4117

    Регистрация
    19.04.2010
    Адрес
    Ханты
    Возраст
    40
    Сообщений
    1,472
    Цитата Сообщение от oleg70 Посмотреть сообщение
    Ситуация такая (CooCox): (для проверки сделал следующий код)
    int32_t data;
    data=45653;
    if(data<0)
    {out_usart2(0x2D);
    data=abs(data);
    }
    Так вот компиллер считает что 45653 - "меньше нуля" (????), потом ессно делает abs() и далее из "data" получается -19883 (??)
    Причем все нормально до 32768, а далее уже ненормально.... Мне всегда казалось что int32_t (stdint.h) хватает чтоб 45653 было положительным....
    Минуса быть не должно! Функция abs() (типовая) работает ТОЛЬКО С ПЛАВУЧКОЙ (float, double), вероятно срабатывает каконидь сурогатный подкокосовый макросс
    #define ABS(X) ((X<0)?-X:X)
    , а в нём может быть преобразование типа.

    Цитата Сообщение от SergDoc Посмотреть сообщение
    кстати есть неразрешенный вопрос, вроде как можно родное ПО PX4 компилить и отлаживать в эклипсе?
    Компилить - смысла нет, отлаживать - надеюсь не придётся.

  41. #4118

    Регистрация
    10.12.2013
    Адрес
    Люберцы
    Возраст
    33
    Сообщений
    168
    Цитата Сообщение от oleg70 Посмотреть сообщение
    int32_t data;
    data=45653;
    if(data<0)..... ГДЕ ?
    Олег, покажите как у вас определены int32_t и другие типы переменных?

  42. #4119

    Регистрация
    26.11.2012
    Адрес
    Tambov
    Возраст
    46
    Сообщений
    777
    Цитата Сообщение от djdron Посмотреть сообщение
    как у вас определены int32_t и другие типы переменных
    Если б я знал.... . Полез сейчас в "дебри", рою в сети, оказалось все не так просто.....

  43. #4120

    Регистрация
    17.06.2011
    Адрес
    Минск
    Возраст
    39
    Сообщений
    1,941
    Цитата Сообщение от oleg70 Посмотреть сообщение
    Если б я знал.... . Полез сейчас в "дебри", рою в сети, оказалось все не так просто.....
    Как вариант, посмотреть ассемблерный код этого куска.

+ Ответить в теме

Похожие темы

  1. Система стабилизации гиро+акселерометр
    от Фантомас в разделе Полеты по камере, телеметрия
    Ответов: 32
    Последнее сообщение: 25.01.2011, 14:47
  2. Продам Продам Клона Trex 450SEV2 + Аппаратура + Запчасти+ система стабилизации RTF
    от omegapraim в разделе Барахолка. Вертолеты
    Ответов: 1
    Последнее сообщение: 12.01.2011, 18:16
  3. Продам Трёхосевую систему стабилизации Turnigy V-Bar 600
    от avi@tor в разделе Барахолка. Аппаратура
    Ответов: 1
    Последнее сообщение: 08.11.2010, 13:02
  4. Продам Gaui система стабилизации GU365, дёшево.
    от avi@tor в разделе Барахолка. Вертолеты
    Ответов: 3
    Последнее сообщение: 03.08.2010, 11:13
  5. Системы стабилизации
    от max815 в разделе Фото и видеосъемка, системы стабилизации
    Ответов: 16
    Последнее сообщение: 11.03.2010, 03:14

Метки этой темы

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения