Обсуждение и перепрошивка регуляторов (ESC) прошивками SimonK/BLHeli

cylllka
skylight83:
  1. Если до перепрошивки, коптер висел на середине газа, то сейчас висит где-то на 75% газа! Считаю это недостатком.

А что за плата управления коптером?
У меня как висел на 40% до перешивки, так и висит после

romushock
Dimm168pin:

попробовать дать питание на регуль от акка и попробовать еще раз

Да я так и делал… Не знаю, почему, но даваемых 5в с программера не хватает, сосёт их плата, что ли… Программирую с прицепленным акком олвэйз…

skylight83
cylllka:

А что за плата управления коптером?

КоптерКонтрол

skylight83
Dimm168pin:

щас добавили калибровку, я считаю это неудобством для коптеров если честно, кароче она есть, алгоритм как обычно.

Да, действительно, колибровка есть, вчера откалибровал. Теперь все моторы заводятся одновременно 😃

Wishnu


Победил-таки связку 18а рцтаймеры +4s аккум + моторы mt3506 + кастомная прошивка+ наза контроллер 😉
Simonk’овсие прошивки к сожалению пока запустить не удалось, зато удалось мультивийную. Сборка последняя из папки Trunk.

По сравнению с 12а авиониксами гейны удалось поднять не так уж сильно - на гексе со 180 до ~250, но как-то при этом коптерок побалтывает. Думаю из-за того, что запускал его в комнате - он создает очень сильный ветер и сам же об него спотыкается, попозже выйду на улицу проверю как там будет.

.include "common.inc"

#define Typ "Plush 30"

;*********************
; PORT B definitions *
;*********************
;#define                7
;#define                6
#define  DbgLED         5;    ;o (sck stk200 interface)
;#define                4        (miso stk200 interface)
;#define                3        (mosi stk200 interface)
#define AnFET           2     ;o
#define BnFET           1     ;o
#define CnFET           0     ;o

#define INIT_PB         0
#define DIR_PB          (1<<AnFET)+(1<<BnFET)+(1<<CnFET)+(1<<DbgLED)
#define BRAKE_PB        (1<<AnFET)+(1<<BnFET)+(1<<CnFET)

#define DbgLEDOn        sbi     PORTB, DbgLED
#define DbgLEDOff       cbi     PORTB, DbgLED

;*********************
; PORT C definitions *
;*********************
#define INIT_PC         0
#define DIR_PC          0
#define BRAKE_PC        0

;*********************
; PORT D definitions *
;*********************
;#define                7     ;i <plus> comparator input (AIN0)
#define c_comp          6     ;i common comparator input (AIN0)
#define ApFET           5     ;o
#define BpFET           4     ;o
#define CpFET           3     ;o
#define rcp_in          2     ;i r/c pulse input

#define INIT_PD         0
#define DIR_PD          (1<<ApFET)+(1<<BpFET)+(1<<CpFET)
#define BRAKE_PD        0

;*********************
; ADC definitions    *
;*********************
#define mux_a           5     ; ADC5 phase input
#define mux_b           4     ; ADC4 phase input
;#define                3     ; ADC3
;#define                2     ; ADC2
#define temp_adc        1     ; ADC1 temperature control input
#define accu_adc        0     ; ADC0 voltage control input

;*********************
; FET Control        *
;*********************
#define ApFET_on        sbi     PORTD, ApFET
#define ApFET_off       cbi     PORTD, ApFET
#define AnFET_on        sbi     PORTB, AnFET
#define AnFET_off       cbi     PORTB, AnFET

#define BpFET_on        sbi     PORTD, BpFET
#define BpFET_off       cbi     PORTD, BpFET
#define BnFET_on        sbi     PORTB, BnFET
#define BnFET_off       cbi     PORTB, BnFET

#define CpFET_on        sbi     PORTD, CpFET
#define CpFET_off       cbi     PORTD, CpFET
#define CnFET_on        sbi     PORTB, CnFET
#define CnFET_off       cbi     PORTB, CnFET

;*************************
; Comparator definitions *
;*************************
.macro AcInit
.endmacro

.macro AcPhaseA
  ACChannel mux_a
  ACMultiplexed
.endmacro


.macro AcPhaseB
  ACChannel mux_b
  ACMultiplexed
.endmacro


.macro AcPhaseC
  ACNormal
.endmacro

;*************************
; Parameters             *
;*************************
#undef     MOT_BRAKE
#undef     READ_CALIBRATION
#define    OVERCLOCK
#define    F_CPU               16000000          ; 16Mhz internal RC oscilator (overclocked)

;*************************
; Power settings         *
;*************************
#define    PCT_PWR_MIN         6                 ; Min power 3%

;*************************
; Power curve            *
;*************************
PWR_CURVE_POINT(01, 3500, 25)
PWR_CURVE_POINT(02, 7000, 50)

;*************************
; Startup settings       *
;*************************
#define    RPM_STEP_INITIAL    170	; 155
#define    RPM_STEP_MAX        220	; 200
#define    PCT_PWR_STARTUP     18
#define    PCT_PWR_MAX_STARTUP 20
#define    RPM_START_MIN_RPM   4200
#define    ENOUGH_GOODIES      20

;*************************
; Run settings           *
;*************************
#define    RPM_RUN_MIN_RPM     3200
#define _include_ppm_inc_

#define    POWER_RANGE   200
#define    MIN_RC_PULS   950	;950

; falling->rising intervals
#define    MAX_INT_FR    25000
#define    MIN_INT_FR    100

; rising->falling intervals
#define    MAX_INT_RF    2200
#define    MIN_INT_RF    800

.macro EvaluatePWC
                sbrs    flags1, RC_PULS_UPDATED
                ret
                movw    temp1:temp2, new_rcpuls_l:new_rcpuls_h
                cbr     flags1, (1<<RC_PULS_UPDATED) ; rc impuls value is read out
                subi    temp1, low  (MIN_RC_PULS*CLK_SCALE)
                sbci    temp2, high (MIN_RC_PULS*CLK_SCALE)
                brcc    eval_rc_p00
                clr     temp1
                clr     temp2
eval_rc_p00:    lsr     temp2
                ror     temp1
                lsr     temp2
                ror     temp1
.if CLK_SCALE==2
                lsr     temp2   ; actual 0->400
                ror     temp1
.endif
                cpi     temp1, POWER_RANGE - 1
                brcs    eval_rc_p10
                ldi     temp1, POWER_RANGE - 1
eval_rc_p10:
                mov     ZH, temp1
                ret

.endmacro

Если кому нужно - могу выложить готовый хекс, на ваш страх и риск естепственна 😃

Dreddix

Всем привет! Нужен совет.
Реги рстаймер 10А, моторы эти- www.hobbyking.com/hobbyking/…/uh_viewItem.asp?idPr… , пропы 9Х4.5 рстаймер (обрезанные 10Х4.5, отбалансированные).
Прошил 1 из регов кастом прошивкой при помощи этой проги- www.rcgroups.com/forums/showthread.php?t=1577773 . Прошивка tgy.hex. Сразу все шить не стал, решил проверить 1 рег. Газ регулируется ок, но на 70-80% газа срыв синхры (или хз что ещё), мотор останавливается, убрав газ в “0” пикает о готовности, заводится снова и снова срыв на 70-80%. На заводской выходил на 100% без проблем. Шил т.к. 1 раз в полете встал 1 из моторов и в планету- думал прошив смогу победить этот странный глюк и вот на тебе- гарантированный срыв на 70%. Дальнейшие шаги? Заводскую вернуть(где взять её)? Другую прошивку (какую)? Что может вызывать срыв (проп 9Х4,5 перебор?- на хк в обзорах двигатели хорошо справляются с таким пропом и не выходят за 7А потребления)?

cylllka

Этим моторчикам 9х4,5 дюже много, ставь 7"-8"

Wishnu
Dreddix:

мотор останавливается, убрав газ в “0” пикает о готовности, заводится снова и снова срыв на 70-80%.

Если мотор полностью останавливается - это срабатывает ресет. Старую прошивку вы уже никак не вернете. Можете попробовать мультивийную прошивку - она более гибка в плане настроек code.google.com/p/wii-esc/

Dreddix

Да, останавливается полностью, точнее я так и так газ в “0” сразу, не рискну держать на газу рег который встал. Обрезал пропы до 8" тоже самое. может чуть чуть выше газ стал до отсечки. Без пропа выходит на 100% без проблемм. Притормаживая пальцем- срыв 80%. На заводской на 100% выходили с пропами 9Х4,5 без проблемм.

Wishnu:

Можете попробовать мультивийную прошивку - она более гибка в плане настроек code.google.com/p/wii-esc/

Спасибо! Но я там не увидел прошивку для чайников… Там вроде как надо самому что-то собирать. Я в этом как корова на льду- лучше не соваться. Готовых я там что-то не заметил?

Wishnu

Готовых сборок там по-моему и нету, какой у вас полетный контроллер?

Dreddix

Сечас кук. Пожже, возможно, будет ФФ, но не скоро, минимум месаца через 2

Wishnu

Могу скинуть свою сборку под 18ые рцтаймеры - они идентичны вашим. Но гарантий, что все заработает корректно не даю))

Dreddix

У меня нет выбора… Один рег так и так труп. Скиньте, буду благодарен. Опишите чуть чуть что за настройки- тайминг, отсечка, калибровка газа. И что за фьюзы ставить, шить думаю не через аврдюда, через что-то с графическим интерфейсом. Или фьюзы не надо трогать раз сейчас работает?

через это шить буду- eXtreme Burner - AVR

github.com/sim-/tgy/downloads
Сегодня добавили новую прошивку без регулировки газа. В tgy.txt файле что-то написано про фьюзы, но для меня не понятно что это значит, хоть я и понимаю слова. Может кто пояснить?

Dreddix

пысы2- прошился новой прошивкой. Регулировка газа осталась. но теперь он пищит совсем иначе, о готовности сообщяет 3мя пиками. В ресет регуль уходит так и так. Такое чувство что мотор выходит на макс обороты и дальше не может, а регуль говорит ему давай ещё и возникает конфликт- следствие регуль уходит в защиту и тормозит, именно тормозит, движок. Как-то так. Если бы можно было ограничить кол-во газа, думаю это моглобы решить мою проблему. Может в пульте МАКС убрать нафиг…

Пысы3. Убрал ендпойнт верхнего предела газа до 35%, теперь двиг выходит на высокие обороты и срыва нет. Но это явно не то решение что нужно.

Wishnu

Вот ссылочка на прошивку вийную dl.dropbox.com/u/…/plush30a_16mhz_все регули.hex
фьюзы при прошивке трогать не нужно
калибровки газа в этой прошивке нету, как и любых других настроек (все настраивается во время сборки)

Dreddix

щас попробую…

пысы. Я не могу скачать сам файл. Открывается страничка где в пустом поле код длинной в километр О_о. Меню “сохранить как” и тд нет. только “открыть в другом окне”, “в другой вкладке” и “скопировать ссылку”.

О вроде скопировал, но файл странный какой-то
Экстрим бурнер принял файл, будем попробовать…

Результат- НОЛЬ. Регуль пищит пи-пии-пииип и всё, никакой реакции на стик газа. Вообще никакой. Не подошла…

Про новую прошивку.
решил все зашить реги, пофиг что глюк. Второй рег после прошивки, тест- 80% срыв чёто-там и мотор больше не запускается, а только издает звук сирены 😃 прикольно

Dreddix

Прошил все. Наверное зря. Теперь квадр даже не летит, верх газа я ограничил, но КУК выводит во время маневров обороты выше моего ограничения и, конечно, происходит срыв. Теперь квадрик летает только меееееееедленно блинчиком или сразу срыв. Нужны новые реги видимо 😦

Wishnu

Щас я соберу мультивийную прошу с другими параметрами, она не реагировала на газ т.к. там низкое минимальное значение rc_pulse стоит для назы (иначе не заводятся регули).
Вот 3 прошивки на тесты:
dl.dropbox.com/u/…/plush30a_16mhz_1000.hex
dl.dropbox.com/u/…/plush30a_16mhz_1050.hex
dl.dropbox.com/u/…/plush30a_16mhz_1100.hex

циферки 1000-1050-1100 это как раз те самые значения

жмете на ссылку - там сохранить ссылку как, формат обычный - hex

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

Dreddix

У мотора 16 полюсов, это имеет значение для сборки прошивки? На ориг прошивке тайминг был “высокий”
Начну с первой, жаль паяльник уже остыл 😃
Спасибо!

пысы. Ещё подсказка. Подключённый к куку, мотор глохнет даже намного раньше 80% если потрясти раму в руке резко туда-сюда. Может не хватает сглаживающего фильтра? В кастомных его вроде нет.

Wishnu

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

Dreddix

Завелся на 1050 с триммером газа в самом низу.
1100 завелся с триммером газа 25%. Срыв на 90% газа. Если вернуть триммер назад на середину, думаю будет как раз 80%. Сразу после срыва мелодия готовности.

ПыСы что-то мне не нравиться слово 16MHZ в прошивках. может это кикайское что-то тупо не может эту скорость держать?

без пропа двигатель набирает обороты до 80% и после 80% скорость не меняется. это говорит что-то?