New entries

Немного математики по AC-коллекторникам

github.com/speedcontrols/ac_sc_grinder

В папку с документацией добавились аналитические формулы и модели для scilab. К понедельнику дочистим код и можно будет переходить к автокалибровке. Обратите внимание, подобной инфы в понятном виде в интернетах нет. Люди лепят алгоритмы “по наитию” и с “магическими коэффициентами”, а такое прокатывает только до первой производной. Хотелось бы внести окончательную ясность по данному вопросу. И для себя лично, и чтобы следующие падаваны не собирали слухи из мутных источников, а юзали готовую и годную математику. С гарантированным результатом. В серьезном подходе ведь главное - не просто код слепить, а гарантии, что он будет работать должным образом.

Надо отметить, что сложности в основном характерны для моторов с подмагничиванием, где обмотки соединены последовательно. Если брать моторы постоянного тока и бесколлекторники, то там все намного проще.

Второй важный момент - мы предполагаем, что на подобных “мелких” моторах статор не входит в насыщение (для мощных коллекторников переменного тока все ровно наоборот, но там уже есть датчики оборотов и подобные регуляторы и не актуальны).

Регуль, прогресс...

Прогресс пока в основном на макетке, но хорош. Комрад переписал формулу вычисления скорости, заменив стрёмную свертку на более полноценное выражение с производной. Сообщил, что теперь обороты держатся намного стабильнее во всем диапазоне (для одних и тех же коэффициентов ПИД-а). Был скользкий момент с насыщением магнитного потока (если поток не линейный, то формулы просто так не сократить), но, хвала всем богам, его либо нет, либо им можно пренебречь без последствий.

То есть теперь, чтобы определить скорость, достаточно двух соседних отсчетов (два - чтобы производную тока определить). Единственный нюанс - во время включения симистора производная слишком большая, и стоит игнорировать данные. Теперь осталось внимательно перепроверить на реальном моторе, вписываемся ли в нужную точность, и будем “отливать в граните”. Проверять надо на минимальной скорости, 3000rpm (~10% от макимума):

  • Сколько нужно выпилить отсчетов в начале (примерный критерий - пока производная тока не станет <= 0).
  • Сколько нужно выпилить отсчетов в конце (чтобы не делить на слишком маленький ток, который может вызвать погрешность).

Если после выпиливания головы и хвоста останется хотя бы пара рабочих отсчетов - значит все зашибись. Думаю, все будет пучком, т.к. макетка пашет.

RSSI по iBus для приемников FlySky X6B и IA6B/C

Патченная прошивка с инжекцией RSSI в iBus на канале 14 © by Cleric-K
Инструкция по прошивке приемников FlySky (с) by povlhp

Часть 5 - Изготовление лопасти.

Итак.Пришло время к изготовлению лопасти.Первым делом нужно сделать ядро.Ядро изготавливается из бальзы.Я беру бальзу плотностью 0,96 гр/cм^3,это самый оптимальный вариант.

Как изготовить ядро лопасти? В 21 веке это очень просто если есть фрезерный станок с ЧПУ!Если станка нет ,обратитесь ко мне,в личные сообщения ,по телефону, или по почте, я расскажу как сделать лопасть без матриц и фрезерного станка,но это гораздо сложнее, и дольше)

Итак приступим.

Для изготовления ядра нужна естественно 3 D модель лопасти.Я рассказывал об этом в прошлой части.После того как 3 D модель готова,нужно правильно расположить систему координат ,я взял за точку,середину комля. После этого пишется G код для обработки верхней поверхности лопасти.ОЧЕНЬ ВАЖНО!!! сделать припуск по толщине 0,15 мм,это требуется для того что бы обеспечить нужное давление в матрице,что бы ткань лучше приклеилась.

После этого делаем заготовки бальзы 290Х51Х11 мм.

Фрезеровка верхней поверхности лопасти делается на плоском вакуумном столе.После этого фрезеруем нижнюю поверхность лопасти,уже на вакуумном столе которой представляет собой, матрицу верхней поверхности лопасти,только с отверстиями.

MOD FlySky FS-i6 переходим на литий

Всем привет.
Упарили меня аккумуляторы ZNTER 1.5V как-то не надолго их хватает, а покупать какие-то другие аккумуляторы жаба душит.
К тому же завалялись у меня литиевые аккумуляторы 14500, но проблема в том как из 3.6-4.2V получить 6V.
Залез на али, поискал, нашёл кучу разных преобразователей, но цена не порадовала, да и ждать маленькую платку 1-3 месяца не вариант, а если ещё и потеряется… порылся в своих закромах и нашёл платки mobile booster с входом от 2.8V до 4.2V и на выходе 5.1V, но нам то нужно 6V, полез искать даташит, нашёл на одном форуме инфу.

Немного про обработку дюралей и иже с ним.

Немного о налипании люмишек на фрезу.
Бытует мнение, что Д16Т не липнет, а Д16 и АМГ липнет. И часто люди ищут именно “Т”.
Треба чуть пояснить.

Дюралюмины что Д16, что Д16Т одинаково хорошо липнут на фрезу, т.к. и теплопроводность и теплоёмкость у них незначительно отличаются.
Д16Т даёт более чистую поверхность, т.к. имеет более стабильную мелкозернистую структуру, нежели Д16.
Для большей детализации, выжимки:
metallicheckiy-portal.ru/marki_metallov/alu/D16

Жесткость сплава и его теплопроводность, кореллируют.
Как следствие, более жёсткие сплавы проще обрабатывать в отсутствие сож, достаточно своевременно эвакуировать стружку, например обдувом, одновременно охлаждая при этом и деталь и фрезу.
Чем более мелкозернистая структура у сплава, тем чище рез. Деталь лучше шлифуется и полируется.

"Клавиатура" для регулятора бормашинки

Ну что ж, регулятор с новой платой и прошивкой ожил, но надо уточнять математику. Если выставить ПИД на большой скорости, то там стоит как влитой, но на малых не хватает (просадка, потом восстановление за 2 сек). Если выставлять ПИД на малой скорости - то на малой держит железно, а на большой уже начинает дергаться.

Я не хочу пока фантазировать о причинах такого поведения, т.к. придерживаюсь простого принципа - если есть явно кривой код, то надо его сначала выпрямить, а потом разбираться с остальным. Потому что когда кривых мест несколько, то они накладываются, и разбираться в причинах - не рациональная трата времени. А исправлять еще есть что:

  • Грубовато сократили формулу вычисления скорости.
  • Есть накладки с точностью на математике с фиксированной точкой, и погрешность не поддается нормальной оценке.
  • Остались “магические константы” (зависят от параметров двигателя).
Исправления в регуляторе

easyeda.com/speed/AC-speed-control-for-grinder

В прошлый раз писал, что в регуляторе концы с концами слегка не сошлись. Бывает. Для тех кто не занимается профессиональным проектированием приводов, ниже подробности. Возможно кому-то они будут полезны.

АЦП

Не учел импеданс цепочки, через которую меряется входная синусоида. В итоге измерялку слегка перекосило. Выпилил резистор между делителем и входом АЦП, не нужен он. Заодно, на всякий случай, поставил защитную сборку из диодов шодки. В основном от отрицательного напряжения, чтобы не юзать внутренние защитные диоды микросхемы (меньше шансов, что отрицательной напругой перекосит мультиплексор АЦП). Не уверен, что в такой защите есть смысл, но сборка копеечная, места почти не занимает.

Если делаете высокоомные делители и АЦП работает на максимальной частоте - загляните в datasheet, чтобы избежать сюрпризов. АЦП в микроконтроллерах очень хорошие, но все-таки не “идеальные шарообразные” с бесконечным импедансом.

Triac

Часть 4 - Лопасти и матрицы .

В классе F1B самой важной деталью является винт.К этому нужно подойти максимально ответственно.Если речь идёт о лопастях , которые применяются с ДВС или электромоторами,то рассчитать такие лопасти не составляет большого труда,по сравнению с лопастями на резиномоторный самолёт.Сложности заключаются в том ,что в каждый момент времени вращения винта,сила тяги уменьшается,поэтому лопасти нужно сделать эффективными.

Создание лопасти начинается с расчётов.С этим могут помочь книги,или профессоры институтов 😒 Профессоров я не нашёл,поэтому воспользовался книгами.

По итогу была выбрана вот такая геометрия лопасти,стандартная у спортсменов-резинщиков.

Новости отладки регулятора скорости

Жизнь не перестает удивлять. Помимо всяких рабочих моментов в регуляторе вылезли вещи которые сложновато вообразить:

  • Симистор иногда сам открывается на весь полупериод. Хотя он понтовый 3Q snubberless (bta16-cwrg).
  • Прерывания ADC (после каждой выборки из 4 каналов), несмотря на передачу данных через DMA, съедают подозрительно много ресурсов. На остальное уже не хватает.

Это немного неожиданно, но не фатально. Будем лечить.

  • К симистору временно привернули снаббер (и он сразу заработал как надо). Дальше будем заменять управляющую опторазвязку MOC3023 на MOC3052. Натыкался в интернетах на такой странный рецепт.
  • Логику выборки из АЦП переделаем. Будем выгребать по DMA в цикле сразу 16х4 отсчетов, с прерыванием на середине и конце. А вместо таймера - поллинг внутри main (кривовато конечно, но в данных обстоятельствах приемлимо).

Победа всё ближе 😃

Видео ролики

Регуль для бор-машинки: о фильтрации сигналов и т.п.

github.com/speedcontrols/ac_sc_grinder (точную ссылку на файл и строчки не даю, т.к. по окончании отладки будем чистить историю).

Практика показала, что сигнал на выходе АЦП имеет свойство прыгать, и поэтому есть смысл чистить резкие скачки. Делается это обычно медианным фильтром. К сожалению, мне не удалось найти готовых быстрых библиотек с учетом особенностей эмбедов, поэтому желающим советую смотреть тут (вариант от Ekstrom). Мне не очень понравилось, что над быстрой имплементацией надо “думать”, чтобы понять как она работает. Поэтому решил пойти другим путем - разобраться с truncated mean (или как его там). Кто забыл школьные лабораторки по физике, напомню:

  • Считаем дисперсию измерений (среднеквадратичное отклонение от среднего арифметического).
  • Отбрасываем все, что вылезло за пределы допустимого и усредняем еще раз.
Калибровально-шлифовальный станок из ленточной шлифмашины ЛШМ 76/900 для модельной мастерской

Сваял приспособу для шлифовки/калибровки реек.

Реставрация Fw-190A-3 85in от Top Flite. Часть2.

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

Полезное по iNAV

Cообщение #7478520

DiscoMan:
ipz:

Подскажите какой параметр в пидах навигации нужно скорректировать если при висении в посхолде происходит покачивание по Roll ?
При отключении удержания позиции болтанка прекращается.

POSR D великоват, по всей видимости. Но тут надо смотреть, какие значения в остальных пидах. Я сейчас пришел к тому, что у меня хорошо работают даже на больших аппаратах такие пиды:

POS P = 15
POS I = 100
POSR P = 25

Продолжение квеста с регулем бормашинки и PlatformIO

Переписали математику в регуле на фиксированную точку. В принципе неплохо вышло. “Сложных” делений осталось 3 штуки на итерацию. Это когда F16 (sign + 15 bits + 16 bits) делим на F16. Если надо делить на целое число - это обычное целочисленное деление. Умножение F16 на F16 и так быстрое. При условии, что процессор поддерживает аппаратное умножение и деление, операции с фиксированной точкой сводятся к ним довольно эффективно. Кому интересно - смотрите исходники github.com/PetteriAimonen/libfixmath. Еще надо было считать арккосинус, чтобы “линейно” откусывать “напряжение” от синусоиды, это просто забил в таблицу, сразу с нужным смещением и масштабом.

Проца на глаз жрется около 25-40%. Это при частоте квантования 40 килогерц. Есть подозрение, что частоты хряпнули с изрядным запасом, но кроить пока не хочется. Если будет настроение - попробую привернуть еще медианные фильтры к АЦП. Была еще мысль запустить всё это на совсем дохлом кристалле типа stm32f030c6t6 (он аж на пол бакса дешевле, гы), но видимо не судьба. Там нема аппаратного деления, а ковыряться с оптимизациями некогда - другие проекты ждут. Кому охота поупарываться из спортивного интереса - исходники открыты.

Вентспилс маленький Уютный и коровы там везде....

Вентспилс маленький Уютный и коровы там везде…
Нету в Мире больше счастья чем летать там на метле!!!

На этой дюне у порта
Летать, опасная игра…
Там я нервишки щекотал
И жизнерадостно метал!!!

UVC Receiver + Смартфон на процессоре MTK

Всем привет!
Приобрёл себе передатчик TS5823 и приёмники RC832 и UVC приёмник Android/Windows для FPV и начал разбираться.

Тюнинг подвеса Walkera G-3D под камеру SJ 4000

Тюнинг подвеса Walkera G 3D под SJ 4000 Короткое видео.

Non extra racing formula, but max speed & long time racing :-)

Самодельный инвертор для ноута 150w

Сделал мини-инвертор для поля для ноута и прочих мелких штук. Работает от 12v (3s).
Добавил вольтметр входного и LiPo Alarm.
На базе: banggood.com/DC-12V-To-AC-220V-150W-18A-Inverter-S…
Фотки: …google.com/…/AF1QipNTwkjugO-7UbQ6N9wfWuWCU1sFFiZA…

Обрастаем жирком! (Опытом)

Долго ничего не писал, на форуме не появлялся. За прошлый год, столько в жизни событий произошло, в большинстве неприятных.
Но ничего, прорвёмся!
В прошлом лётном сезоне, разбил свой СУ-35. Мой косяк - самоуверенность и малый налёт! 😦

Зато этим летом, значительный скачок в уровне!😉

Отпуск в Мотыгино с тремя дронами ;)

Смотался в недельный отпуск в посёлок Мотыгино, что на Ангаре в Красноярском крае. Брал с собой все три своих дрона - малыша Bebop2 (на аве), прошлогоднюю гексу и проект этого года - складной долголёт; все три пригодились, и все - по-разному. 😉 Поездку описал в своём ЖЖ; так что тут - только про дроны.

Ныряем глубже в С на эмбедах. Общие впечатления.

github.com/speedcontrols/ac_sc_grinder

Закончили первый проход структурирования прошивки для регуля бормашинки. Всплыли новые подробности. Если писать на плавучке, то производительности не хватает. Ну не то чтобы кто-то надеялся, но при грамотном подходе с низкоуровневых оптимизаций никто не начинает. IMHO в долгосрочной перспективе гораздо важнее сначала сделать правильную архитектуру. В принципе можно было бы плюнуть, и поставить более дорогой stm32, но захотелось вспомнить детство и разобраться (с фиксированной точкой и т.п.).

Я как-то рассчитывал, что с PlatformIO быстро подключу нужные библиотеки и все будет хорошо. Ага, щаз…

  • Библиотеки с фиксированной точкой имеют левые привязки к фреймворкам, и просто не собираются.
  • В библиотеках эмуляции EEPROM куча левых define-ов, которые не переопределить.

Короче, возвращаемся к стандартному сишному аду, когда в проект копируются внешние исходники и что-то в них правится. Чуда не случилось.

Между полётами ..

Среда на календаре. Народ как с ума посходил.
Пока на работу дошелестел, извёлся. Шашки-пешки доминошки на трассе.
К полудню всё что запланировал сотворил, и … а не съездить ли на болта-озёра?