MultiWii / NAZE / SP Racing F3 Multiwii Setup Help

Truckzilla

New Member
Hi all,
I was looking for some quick guidance for setting up a multiwii board, not in the conventional way.
I was looking to use the acceleration G sensor to limit output to a ESC on a RC car.
I wish to use it for traction/acceleration (& possibly breaking) control on a high speed RC I have been mucking around with.

I figured if the acceleration G rate is lower than the throttle position the Multiwii should be able to pick up on this and determine it as wheel spin and lower the throttle until the two are even. If this makes sense.

Not sure if this has been tried before. I have little grasp of Arduino coding using the Ardruino program for windows, but only modifying and playing with pre-made sketches.

Any help would be much appreciated, Even if it only helps me take a step in the right direction.

Cheers in advanced Simon.
[h=3][/h]
 

soler

Member
As a concept this will probably work on the initial acceleration but as the car increases in speed the cancer alteration will reduce so you would need to check this against some acceptation curve. If I were to do this I would do this with a gps and acceleration sensor. GPS for calculating speed and the accelerometer for the force, have an esc input and out put.

Alternatively you could use a magnet and read sensor on the wheels to determine loss of traction and implement a more true traction control

Either way you are going to have to write your own code as the multiwii code will not support this.
 

Truckzilla

New Member
Thanks, This application is purely for a high speed straight line pass, So it would be throttle nailed from start. Which should make any mapping/Logarithms for Acceleration G's to ESC output as simple as possible.
You are right I will need a speed input, which I had overlooked as this is currently only one of those brain fart ideas that linger. As the vehicle speed goes up the Gs will naturally reduce as the acceleration rate will be reduced, I could get around this by only mapping up to say 90% throttle input and making anything above a unmodified output or possibly use a separate channel to turn the acceleration control on/off. The other option would be to only allow the controller to operate for a set number of cycles or seconds after a set minimum increase of throttle input, say 5% or so. This way it would be active for any input that will be large enough to have quantifiable variations in velocity that should increase Gs under normal circumstances.

This last way seems a good way, As I am thinking as I am typing,

instead of mapping a set "throttle input/Gs = throttle output" code, the idea I had originally toyed with. I could use an increase of throttle (input) by % over a measured time to determine what the G measurement should be and adjust the throttle accordingly. The less the variation or longer the time of the increase in throttle input could reduce the % difference of the control over the throttle output, also as the length of time grows from the variation of throttle input the % of control over the output could be reduced, sort of like a fade out, if you will.

I have a spare Nanowii atmega32u4 which I can try anything out on. My main problem is I am unsure how to make an output respond to the input of the accelerometer, which is inbuilt in the board.
 

soler

Member
You need to look for only one vector in the Accelerometer, others will be from turning and bumps, I would fist start be logging G and esc input to find the curve you get and the lag between the values.
 

Top