Solar car races

Post and discuss your VESC projects here.
lizardmech
Posts: 171
Joined: 19 Jan 2016, 10:54
Location: Australia

Re: Solar car races

Postby lizardmech » 22 May 2017, 16:05

Was the motor custom made or bought?

Thor
Posts: 20
Joined: 22 Jan 2017, 11:32

Re: Solar car races

Postby Thor » 22 May 2017, 16:12

The motor in the video is our second generation radialflux motor. It is custom designed and build by our team. Interessted in one? :mrgreen:

lizardmech
Posts: 171
Joined: 19 Jan 2016, 10:54
Location: Australia

Re: Solar car races

Postby lizardmech » 23 May 2017, 04:00

Are you planning to sell them?

ragonamuffin
Posts: 37
Joined: 04 Apr 2017, 02:08
Location: CT, USA

Re: Solar car races

Postby ragonamuffin » 28 Jul 2017, 17:09

Awesome projects guys!

I am making a high voltage controller too, will be releasing it shortly, next few days.
Are all components Q-100?

Thor
Posts: 20
Joined: 22 Jan 2017, 11:32

Re: Solar car races

Postby Thor » 28 Jul 2017, 17:18

I am making a high voltage controller too, will be releasing it shortly, next few days.

Uh! I am exited!

Are all components Q-100?

Most of them are and the rest should be available Q-100 rated.

ragonamuffin
Posts: 37
Joined: 04 Apr 2017, 02:08
Location: CT, USA

Re: Solar car races

Postby ragonamuffin » 29 Jul 2017, 14:56

Good stuff! I really don't know what I am doing, as this is the most advanced project I have ever done by far. I really appreciate you posting your schematics, it really helps me understand the high voltage stuff a bit better. I just need to finish the power supply and I believe I will be done!!! Well, on to debugging anyways haha.

Thor
Posts: 20
Joined: 22 Jan 2017, 11:32

Re: Solar car races

Postby Thor » 19 Aug 2017, 12:56

Hey, me again!

I have a mysterious issue with the observer algorithm. I ignorred it for now because I found a crude workaround which I now want to fix for good. The problem occurs as soon as I change the division factor of the voltage dividers for the phase voltage measurment. As long as the Motor is actively driven the position sensing works fine but as soon as the observer switches to voltage sensing mode it losses track.

I think the problem is siuated in the estimation of m_motor_state.v_alpha and m_motor_state.v_beta. These are calculated as follows in non driven mode:

Code: Select all

      float Va = ADC_VOLTS(ADC_IND_SENS1) * ((VIN_R1 + VIN_R2) / VIN_R2);
      float Vb = ADC_VOLTS(ADC_IND_SENS3) * ((VIN_R1 + VIN_R2) / VIN_R2);
      float Vc = ADC_VOLTS(ADC_IND_SENS2) * ((VIN_R1 + VIN_R2) / VIN_R2);

      // Clarke transform
      m_motor_state.v_alpha = (2.0 / 3.0) * Va - (1.0 / 3.0) * Vb - (1.0 / 3.0) * Vc;
      m_motor_state.v_beta = ONE_BY_SQRT3 * Vb - ONE_BY_SQRT3 * Vc;


And then used.

Code: Select all

      observer_update(m_motor_state.v_alpha, m_motor_state.v_beta,
            m_motor_state.i_alpha, m_motor_state.i_beta, dt, &m_observer_x1,
            &m_observer_x2, &m_phase_now_observer);


Curiously the call when the motor is driven looks the very same but the v_alpha and v_beta variables are never updated again. I would have expected to see the v_xxx variables to be set from the dutycycle and state of the SVM. Maybe it works because the estimation is a derivative term and constant inputs do not have a great impact. Otherwise I am pretty sure this is a bug.

Am I missing something?

marcos
Posts: 21
Joined: 19 Feb 2016, 17:12

Re: Solar car races

Postby marcos » 11 Sep 2017, 04:14

Are you using the latest firmware? Benjamin released his vesc 6 code on github.

The new forum is also online
http://vesc-project.com/node/144

pf26
Posts: 309
Joined: 28 Mar 2016, 14:37
Location: FR Valence

Re: Solar car races

Postby pf26 » 11 Sep 2017, 16:29

Thor wrote: the call when the motor is driven looks the very same but the v_alpha and v_beta variables are never updated again.

In the function control_current(), *state_m points to the variable m_motor_state and will change m_motor_state.v_alpha and v_beta:

Code: Select all

   
   state_m->v_alpha = (mod_alpha - mod_alpha_comp) * (2.0 / 3.0) * state_m->v_bus;
   state_m->v_beta = (mod_beta - mod_beta_comp) * (2.0 / 3.0) * state_m->v_bus;

So I think the v_alpha and v_beta variables are updated there when the motor is driven. Same in VESC6.
Most likely your bemf voltage measurements are swapped or not accurate enough ?

BTW, thks for your high power VESC schematics and pcb on github.

pf26
Posts: 309
Joined: 28 Mar 2016, 14:37
Location: FR Valence

Re: Solar car races

Postby pf26 » 12 Sep 2017, 07:12

Maybe you could also have a look at your voltage samples right after releasing the motor in bldc mode, using BEMF plot in BLDCtools. You have to start the motor, then click "now" in the plot tab, and press ESC right after to release the motor. Below you can see how the voltage phase stays after releasing the motor and this allows to keep tracking the rotor position.
Image
I noticed that in FOC mode, the voltages are not made symetric as they are in bldc mode.
Also in BLDC mode, I saw this piece of code :

Code: Select all

      // Compensation for supply voltage variations
      const float voltage_scale = 20.0 / input_voltage;

Not sure how well it works at higher voltages than usual.


Return to “VESC Projects”

Who is online

Users browsing this forum: No registered users and 1 guest