PINNED - Roboteq Controller - developing for powerchairs

Power wheelchair board for REAL info!

POWERCHAIR MENU! www.wheelchairdriver.com/powerchair-stuff.htm

Re: PINNED - Roboteq Controller - developing for powerchairs

Postby Vitolds » 10 Oct 2025, 21:52

Вилл, в который раз говорю ты ошибаешься.
Тиг это прекрасно, чисто, красиво, я свариваю только тигом.
Проблем у меня нет, проблемы у вас. Я буду писать на своем языке. Если хочешь разобраться начни с того что я написал выше. Прочитай что такое "костыль в программировании". Добавь ваше желание "тестировать сценарий целиком" и поймешь что это полный бред.
Как только прочитаешь что это, я смогу объяснить в чем проблема сценария.
Vitolds
 
Posts: 672
Joined: 26 Mar 2014, 22:12
Location: Moscow

Re: PINNED - Roboteq Controller - developing for powerchairs

Postby Burgerman » 10 Oct 2025, 23:04

English please.
User avatar
Burgerman
Site Admin
 
Posts: 71090
Joined: 27 May 2008, 21:24
Location: United Kingdom

Re: PINNED - Roboteq Controller - developing for powerchairs

Postby Vitolds » 10 Oct 2025, 23:07

С Уважением к участникам форума, но писать буду на своем языке. Вы так же можете пользоваться переводчиком, если вам это нужно.
Vitolds
 
Posts: 672
Joined: 26 Mar 2014, 22:12
Location: Moscow

Re: PINNED - Roboteq Controller - developing for powerchairs

Postby JMGarage » 11 Oct 2025, 06:49

Tuo ei ole kunnioitettavaa muita kohtaan.
And You think to get help this way?
JMGarage
 
Posts: 35
Joined: 11 Aug 2022, 05:30

Re: PINNED - Roboteq Controller - developing for powerchairs

Postby Vitolds » 24 Oct 2025, 13:11

JMGarage wrote:Tuo ei ole kunnioitettavaa muita kohtaan.
And You think to get help this way?

En usko niin, ja kunnioitan foorumin osallistujia.
Vitolds
 
Posts: 672
Joined: 26 Mar 2014, 22:12
Location: Moscow

Re: PINNED - Roboteq Controller - developing for powerchairs

Postby Vitolds » 24 Oct 2025, 13:53

Прошло еще две недели, как продвижение в тестах?
Печально.
Давайте я объясню что такое мотор компенсация.
MotorCompensation: это
Accel = Accel умноженное на какое то число
Decel = Decel умноженное на какое то число
вот тут
Code: Select all
CompMix: 
    M1Accel = M1Accel*CompBoost
    M2Accel = M2Accel*CompBoost
    M1Decel = M1Decel*CompBoost
    M2Decel = M2Decel*CompBoost

почему я говорю что MotorCompensation работает не правильно, а вот по этому
Code: Select all
IF (uncompensatedThrottle > 50 AND uncompensatedSteering < 50) THEN
    CompBoost = (AccelBoost*8)/10
  ELSE
    CompBoost = AccelBoost
  END IF

что такое uncompensatedThrottle и uncompensatedSteering это в блоке MotorCompensation:
Code: Select all
 
MotorCompensation:
  uncompensatedThrottle = Throttle
  uncompensatedSteering = Steering

подставьте любые значения Throttle Steering и посчитайте чему будет равен CompBoost. После этого поймете при каком положении джойстика у вас происходит MotorCompensation.
А самое веселое вы можете сделать вот так, добавить вот эту строчку в конце блока MixAccel:
Code: Select all
  PRINT ("  M1Decel " , M1Decel ,"  M1Accel   ", M1Accel,"   M2Decel " , M2Decel ,"  M2Accel   ", M2Accel, "\n")' add before RETURN 'End of "MixAccel
'RETURN 'End of "MixAccel:"

поднять кресло (чтоб колеса свободно вращались) и двигать джойстиком. Смотреть в программу Roboteq и наблюдать как ваши базовые параметры
Code: Select all
Accel = 10000
Decel = 12000

улетают в небеса. Но ваше кресло не нагружено, колеса вращаются в воздухе и еще MotorCompensation не работает только когда вы движетесь налево. Привет Ленни. Я сколько времени говорил что компенсация работает не правильно.

Эту строчку нужно исправить
Code: Select all
 IF (uncompensatedThrottle > 50 AND uncompensatedSteering < 50) THEN


на это
Code: Select all
IF abs(uncompensatedThrottle) > 50 AND abs(uncompensatedSteering) < 50 THEN


Хотя бы компенсация будет работать только тогда когда делается разворот, как и было задумано. Но это все равно проблему не решает и вот почему
раздел
Code: Select all
MixAccel:
  IF AccelBoost > 1 THEN
    GoSub TurnMix
    GoSub CompMix
  END IF

С начало делается TurnMix: там происходит умножение разгона и торможения
Code: Select all
M1Accel = M1Accel*AccelBoost
      M2Accel = M2Accel*AccelBoost
      M1Decel = M1Decel*AccelBoost
      M2Decel = M2Decel*AccelBoost

Потом делается CompMix где так же происходит умножение разгона и торможения НО только на уже увеличенное значение Accel и Decel от TurnMix
Code: Select all
M1Accel = M1Accel*CompBoost
    M2Accel = M2Accel*CompBoost
    M1Decel = M1Decel*CompBoost
    M2Decel = M2Decel*CompBoost

Сами в код посмотрите!
Если считаете что все не так, то эта строчка отрезвит вас
Code: Select all
  PRINT ("  M1Decel " , M1Decel ,"  M1Accel   ", M1Accel,"   M2Decel " , M2Decel ,"  M2Accel   ", M2Accel, "\n")' add before RETURN 'End of "MixAccel
'RETURN 'End of "MixAccel:"
Vitolds
 
Posts: 672
Joined: 26 Mar 2014, 22:12
Location: Moscow

Re: PINNED - Roboteq Controller - developing for powerchairs

Postby Vitolds » 24 Oct 2025, 14:11

Вот еще забыл
Вот тут исправьте
Code: Select all
TurnMix:
  DIM TurnCycles AS Integer
  DIM currentTurnRate AS Integer
  DIM currentSpeed AS Integer
  IF TurnChangeStart THEN
    currentTurnRate = (M1Power-M2Power)/2
    TurnCycles = TurnCycles + 1
    IF abs(Steering-currentTurnRate) > 5 'turn changing
'increase acceleration and deceleration by AccelBoost if turn changing
      M1Accel = M1Accel*AccelBoost
      M2Accel = M2Accel*AccelBoost
      M1Decel = M1Decel*AccelBoost
      M2Decel = M2Decel*AccelBoost
      currentSpeed = (M1Power+M2Power)/2
'Apply boosted Accel and Decel to Throttle axis less often than to Steering axis
      IF abs(Throttle-currentSpeed) > 5 'speed changing during changing turn
        IF (TurnCycles MOD (AccelBoost+1)) <> 0 THEN
          Throttle = currentSpeed
        END IF
      ELSE
       TurnCycles = 0
      END IF 'end of "speed changing during turn"
    ELSE
      IF abs(Steering-currentTurnRate)<=5 THEN
        TurnChangeStart = FALSE
      END IF
      TurnCycles = 0
    END IF 'end of "turn changing"
  END IF 'TurnChangeStart
RETURN 'END of TurnMix:


на это
Code: Select all
TurnMix:
  DIM TurnCycles AS Integer
  DIM currentTurnRate AS Integer
  DIM currentSpeed AS Integer
  IF TurnChangeStart THEN
    currentTurnRate = (M1Power-M2Power)/2
    TurnCycles = TurnCycles + 1
    IF abs(Steering-currentTurnRate) > 5 THEN 'turn changing
'increase acceleration and deceleration by AccelBoost if turn changing
      M1Accel = M1Accel*AccelBoost
      M2Accel = M2Accel*AccelBoost
      M1Decel = M1Decel*AccelBoost
      M2Decel = M2Decel*AccelBoost
      currentSpeed = (M1Power+M2Power)/2
'Apply boosted Accel and Decel to Throttle axis less often than to Steering axis
      IF abs(Throttle-currentSpeed) > 5 THEN 'speed changing during changing turn
        IF (TurnCycles MOD (AccelBoost+1)) <> 0 THEN
          Throttle = currentSpeed
        END IF
      ELSE
       TurnCycles = 0
      END IF 'end of "speed changing during turn"
    ELSE
      IF abs(Steering-currentTurnRate)<=5 THEN
        TurnChangeStart = FALSE
      END IF
      TurnCycles = 0
    END IF 'end of "turn changing"
  END IF 'TurnChangeStart
RETURN 'END of TurnMix:


THEN - не хватает в паре мест
Vitolds
 
Posts: 672
Joined: 26 Mar 2014, 22:12
Location: Moscow

Re: PINNED - Roboteq Controller - developing for powerchairs

Postby Vitolds » 24 Oct 2025, 14:16

JMGarage wrote:Tuo ei ole kunnioitettavaa muita kohtaan.
And You think to get help this way?

Kirjoitin, etten tarvitse apua, sinulla on ongelmia, ei minulla.
En ole varma oikeasta käännöksestä.
Vitolds
 
Posts: 672
Joined: 26 Mar 2014, 22:12
Location: Moscow

Re: PINNED - Roboteq Controller - developing for powerchairs

Postby Vitolds » 24 Oct 2025, 14:44

А это лично для Ленни.
Я показывал в видео где существует разница в показаний тока моторов при одинаковом motorcomand на моторы. Почему так происходит я не знаю. Может разница в моторах, может проблема в контроллере.
Но вот тут эту разницу ты увеличиваешь

Code: Select all
'Calculate mean back EMF as IR and motor compensation as percent (back EMF/BattVolts)
  M1Comp = (ILeft*(MotorResistance+CompTurnBoost*ExtraComp))/BattVolts
  M2Comp = (IRight*(MotorResistance+CompTurnBoost*ExtraComp))/BattVolts

'modify motor command values in accord with motor compensation
  M1 = M1 + M1Comp
  M2 = M2 + M2Comp

это твой код, так что я уверен тебе не надо показывать от куда эти строки.
Vitolds
 
Posts: 672
Joined: 26 Mar 2014, 22:12
Location: Moscow

Re: PINNED - Roboteq Controller - developing for powerchairs

Postby Burgerman » 24 Oct 2025, 16:42

English please we dont need to go looking for translations.
User avatar
Burgerman
Site Admin
 
Posts: 71090
Joined: 27 May 2008, 21:24
Location: United Kingdom

Re: PINNED - Roboteq Controller - developing for powerchairs

Postby Vitolds » 24 Oct 2025, 17:04

правая кнопка мыши - перевести на английский.
Не будет искажения моих слов.
С Уважением к участникам форума.
Vitolds
 
Posts: 672
Joined: 26 Mar 2014, 22:12
Location: Moscow

Re: PINNED - Roboteq Controller - developing for powerchairs

Postby Vitolds » 24 Oct 2025, 17:06

Vitolds wrote:А это лично для Ленни.
Я показывал в видео где существует разница в показаний тока моторов при одинаковом motorcomand на моторы. Почему так происходит я не знаю. Может разница в моторах, может проблема в контроллере.
Но вот тут эту разницу ты увеличиваешь

Code: Select all
'Calculate mean back EMF as IR and motor compensation as percent (back EMF/BattVolts)
  M1Comp = (ILeft*(MotorResistance+CompTurnBoost*ExtraComp))/BattVolts
  M2Comp = (IRight*(MotorResistance+CompTurnBoost*ExtraComp))/BattVolts

'modify motor command values in accord with motor compensation
  M1 = M1 + M1Comp
  M2 = M2 + M2Comp

это твой код, так что я уверен тебе не надо показывать от куда эти строки.

Я добавлю для Ленни.
Ты сам объяснишь участникам форума что они ни когда не смогут ехать прямо, или мне показать?
Vitolds
 
Posts: 672
Joined: 26 Mar 2014, 22:12
Location: Moscow

Re: PINNED - Roboteq Controller - developing for powerchairs

Postby Burgerman » 24 Oct 2025, 17:38

I ask twice.
OK. Your choice. Post in english as we know you can. Or Goodbye.
User avatar
Burgerman
Site Admin
 
Posts: 71090
Joined: 27 May 2008, 21:24
Location: United Kingdom

Re: PINNED - Roboteq Controller - developing for powerchairs

Postby Vitolds » 24 Oct 2025, 17:42

Не я это начал Джон.
Но ты можешь все это закончить.
Vitolds
 
Posts: 672
Joined: 26 Mar 2014, 22:12
Location: Moscow

Re: PINNED - Roboteq Controller - developing for powerchairs

Postby Burgerman » 24 Oct 2025, 17:44

OK then. Goodbye. Account still exists but deactivated for now...
User avatar
Burgerman
Site Admin
 
Posts: 71090
Joined: 27 May 2008, 21:24
Location: United Kingdom

Previous

Return to Everything Powerchair

Who is online

Users browsing this forum: Seafighter, shirley_hkg and 314 guests

 

  eXTReMe Tracker