All streams
Search
Write a publication
Pull to refresh
3
0
Send message
Это не совсем верно и зависит от того, что мы понимаем под словом «код». Если интерфейсную или бизнес-логику — да, это верно. Но если нам нужно что-то вычислительное, коммуникационное, то что можно отсадить в отдельный тред и т.д. — можно написать нативное расширение. Это возможно и для Cordova/PhoneGap, и для Rhodes, думаю и для каких-то иных фреймворков тоже.

Но в целом, да — для тяжёлых приложений с богатым интерфейсом чувствуется нагруженность вебвьюхи.
Rho/Tau уже давно позволяет писать всё на javascript
Уважаемые, если ставите минус, потрудитесь хотя бы аргумент высказать.
А почему Rhodes Framework (сейчас это Tau) даже не рассматривается? http://tau-technologies.com/
Представил себе что будет со сливом, в который будет сливаться вода с таким абразивом. Где-то будут скапливаться залежи абразива. Скорее всего к этой штуке понадобится ещё иметь право на слив таких вод.
Они всё сделали правильно. Они упростили всё для тех, кто хочет просто взять, прошить и взлететь. Всё что требуется от человека — ВНИМАТЕЛЬНО читать ВСЕ инструкции и документацию на английском. А там, среди прочего, сказано что нужно брать последнюю версию MP.

А для пользователей вроде вас и меня, в MP сделана возможность загрузить в контроллер ЛЮБУЮ кастомную прошивку из файловой системы. Нам же собрать её несложно… А если хотим иметь пачку именно официальных — идём ручками по URL, которые я показал выше, и скачиваем всё, что нужно.

Не грешите зря на MP, он всё это позволяет. Просто нужно правильно его использовать.
Простейший вариант — была залита на одно кол-во моторов (например, неправильное), после этого было выбрана правильная конфигурация. Он и предложил другую прошивку той же версии. Там при компиляции выбирается количество мотор для рамы. 3.2.1 для гексы и 3.2.1 для квадрика — не один и тот же бинарник. Неправильный зальётся нормально, но работать нормально не будет.

Более сложный вариант — был нарушен загрузчик в какой-то момент, или прошит не тот. И контроллер определился как APM1. Но тут постараться нужно было.

К чему весь это разговор… Когда есть что-то непонятное — нельзя брать и утверждать, что кто-то что-то правит и приходится быть испытателем чужих экспериментов. Это хлёстко звучит, но легко опровергается. Любой инженер должен всегда понимать что он берёт, откуда и что он использует в каждый конкретный момент.
Сомнения в чём конкретно? Если у вас что-то не получится опять в силу невнимательности — виновато сообщество и мистические обновления 3.2.1?

Вы же взрослый человек… Ай-яй-яй, как нехорошо :)

Не знаю что вы видели, но пока никаких объективных следов этого чуда не наблюдается. А дефицит опыта — да. Но это нормально. Ненормально — домысливать столь смело чьи-то злые намерения ))
виноват… вечер, глюки, усталость… не через три года, через год
3.2.1 и не должен армиться с руки — ему покой полный нужен для этого, это защита ваших рук. Режим запуска с рук сделали намного позже.

Так мы перестаём винить сообщество в постоянном выходе глюкавых прошивок и их автоматической заливке официальным MP?
Кстати — ваш MP 1.3.0 (выпущеный 21.04.2014) прекрасно предлагает ArduCopter 3.2.1 — последнюю официальную версию для APM2, которая была выпущена официально 12.02.2015, через три с небольшим года после MP.

Так что и предположение о старых версиях в силу старого MP отпадает.
Ну ок… То есть мы приходим к выводу, что дело было в старых версиях MP, настройке компаса и тд. Так?

И получается что утверждения:
«снаряд для испытаний новых прошивок от сообщества ArduCopter. Выступать подопытным пилотом»,
«кто-то постоянно правит прошивку ArduCopter и что-то там периодически не работает. То автовозврат не работает, то не работает режим «AltHold».»
«Прошивки на APM неофициально на офф. сайте постоянно кем то «допиливаются» и выкладываются новые ревизии (за четыре последних месяца точно было две ревизии)»
… все они не соответствуют действительности в вашем случае. Как бы домысел и фантазия — так?

И речь идёт исключительно о вашей собственной невнимательности. Согласны?
Не понял… А как этот репозиторий связан с какими-то обновлениями 3.2.1? Там какая-то ветка для этого? Какая именно? Могу ошибаться, ничего такого там не вижу. Это какой-то клон оригинального репозитория, в котором Randy делает что-то своё.
Ok, спасибо. Давайте попробуем дальше распутать…

1) Допустим, что 07 июня могла быть установлена старая версия MP. Предположим, каким-то загадочным образом он мог поставить старую прошивку, хоть это и маловероятно — версии прошивок он в себе не содержит и берёт из сети… Но ок, допустим он был очень старым.

2) Что значит «снова приходятся заливать новую версию ArduCopter»? Как это выглядело, почему пришлось? Ок, с причиной сбоя RTL разобрались — это был компас.

3) А не опишете по шагам — как вы собирали старые версии MP? Это очень интересно, потому что как уже сказал — насколько я вижу в самом MP версий прошивок нет. Всё из сети…

Но ок, скажите пожалуйста, например, версию MP для прошивки 2.8 — посмотрю его по сорцам.

Появился автовозврат? Так мы же выяснили, что RTL не было из за настройки компаса. Причём тут прошивка? Зависание над точкой возврата и время зависания — может определяться прошивкой и новыми параметрами, да.

И про «немецкий форум», так и не понял — что оттуда бралось, прошивалось или запускалось?
Правка. Текст «базовый URL прошивки для контроллера» читаем как «Базовый URL файла-дескриптора со списком URL конкретных прошивок для разных контроллеров и конфигураций»
Увы, его сопротивление будет зависеть от температуры. А для измерений это неприемлемо.
1) Что за бред — причём здесь Колыма, «опровергнуть» и «извиняться»?! Вы утверждаете, что находили альтернативную ветку прошивки «на немецком форуме». Германия — это не Колыма. Там запросто можно в суд попасть за нарушение лицензии GPL. Поэтому меня очень удивил факт скрытности сорцов с новыми изменениями. А уж чтобы MP грузил что-то левое — это ближе к сказкам Андерсена :) Поэтому и попросил показать — где такое произрастает. Мне вообще немного странно, что вы востпринимаете мои вопросы, как личную нападку и спор. Хотя я хочу лишь знать то, что мне может быть ещё неизвестно. Чем опровергнуть? Ну, ок… Попробуем :)

Вот идентификатор APM2 в коде MP, который определяет тип подключенного контроллера:
https://github.com/ArduPilot/MissionPlanner/blob/master/Utilities/BoardDetect.cs#L22

Вот код, которые задаёт базовый URL прошивки для контроллера, который был определён:
https://github.com/ArduPilot/MissionPlanner/blob/master/Utilities/Firmware.cs#L515
https://github.com/ArduPilot/MissionPlanner/blob/master/Utilities/Firmware.cs#L284

URL, в свою очередь, читается из элемента «url2560-2»:
https://github.com/ArduPilot/MissionPlanner/blob/master/Utilities/Firmware.cs#L229

В файле «https://raw.github.com/diydrones/binary/master/Firmware/firmware2.xml»:
https://github.com/ArduPilot/MissionPlanner/blob/master/Utilities/Firmware.cs#L216
https://github.com/ArduPilot/MissionPlanner/blob/master/Utilities/Firmware.cs#L27

Открываем этот файл в броузере и находим из множества элементов «url2560-2», тот,
значение URL которого соответствует типу аппарата «квадрокоптер» — вот результат:

http://firmware.ardupilot.org/Copter/stable/apm2-quad/ArduCopter.hex

Открываем в броузере каталог с этим файлом по URL:
http://firmware.ardupilot.org/Copter/stable/apm2-quad/

И видим там два файла с датами последних изменений:
ArduCopter.hex 2015-02-12 03:53 671K
git-version.txt 2015-02-12 03:53 192

Очевидно, что оба файла не имели никаких изменений с февраля 2015-го и судя по
содержимому git-version.txt прошивка была залита лидером проекта Randy Mackay:

commit 36b405fb0b2b3ef77952e8c9f170dbcf1976cb30
Author: Randy Mackay <rmackay9@yahoo.com>
Date: Wed Feb 11 12:11:01 2015 +0900

Copter: version to AC3.2.1

APMVERSION: ArduCopter V3.2.1


И судя по хэш-коду коммита — полностью соответствует официальному релизу 3.2.1:
https://github.com/ArduPilot/ardupilot/commit/36b405fb0b2b3ef77952e8c9f170dbcf1976cb30

Итого — делаем вывод, что адекватная официальная версия MP (всё проверил назад вплоть до версии 1.3.5) должна выдавать официальную прошивку 3.2.1 для конроллера APM2.
Что у вас там прошивалось и как — судить не могу. Но знаю, что если выбрать не тот тип аппарата (например гексу, вместо квадрика), то прошьётся всё отлично, но работать нормально не будет.

Поэтому прежде чем грешить на MP и таинственные изменения старой официальной прошивки — стоило бы всё проверить у себя ещё раз. Например — оригинальность MP.

2) Ничего удивительного. Могу ошибаться, но если мне не изменяет память — там другой загрузчик. Но если очень хочется программатором, то вот тут описано как это делать с помощью avrdude: http://firmware.ardupilot.org/
1) Что-то какая-то фантастика, чтобы официальный MP подхватывал какие-то левые прошивки… Для него было _официально_ заявлено, что он для устаревшего железа всегда будет предлагать последнюю официальную поддерживаемую на этом железе версию. То есть 3.2.1. Либо у вас левый MP, либо это сказки. С чего вы взяли, что он загружает что-то непонятное и постоянно меняющееся?! Кроме «не летает» — какие ещё признаки?.. Может это всё же 3.2.1? Какая-то очень странная секретность вокруг сорцов с лицензией GPL. Трудно представить, чтобы кто-то где-то на каких-то форумах обновлял 3.2.1 и не выкладывал в паблик — так можно и на суд налететь.

2) Не через MavLink, он не имеет отношения к загрузке прошивки, это работа bootloader-а и соотв клиента в MP. Так что программатор, по сути, ненужен. И собирать свой MP для этого точно ненужно.
1) Так а ссылку можно на эти версии?
2) MP для сборка прошивки APM?! Это как и зачем?!!! Прошивка прекрасно собирается без MP и прошивается его любой версией. Они вообще друг с другом достаточно слабо связаны.
3) Угольный SMD резюк на на 0.5 миллиома?! Это шутка? :))) В меру моего понимания, они в таких номиналах и размерах только металлоксидные бывают, никаких угольных :) Другое дело — качество самого резюка. И даже если он держит всего 40A, то бутер из четырёх штук — уже 160A.

И ещё — при КЗ пусть лучше горит шунт (коротко, ярко и локально), чем взрывается батарея и горит вместе с рамой.
1) a) Потому что его сопротивление нормировано b) сопротивление проявляется на ограниченном отрезке с) провод на котором что-то падает на величину пригодную для измерения — нафиг он такой сдался
2) Потому что существуют моторы с низким KV, которые как раз и рассчитаны на высокое напряжение, но все начинают с наиболее доступных 11.4V (3S) конфигураций и дешёвых моторов под них… Почему? a) бросовая цена (проще в производстве) b) есть на каждом углу

Information

Rating
Does not participate
Registered
Activity