AutoQuad ver 5.6

3689414527?profile=original


The distributors finally got in some of the new ST Micro STM32F2 series uControllers and I grabbed a few.  I was able to "shoehorn" one into a ver5 board as the pinout is close to compatible with the performance STM32F1 series.  Spent a few days rewriting the device drivers and am very impressed with this controller's performance.

I was able to bump up the sample rate to around 276.8KHz for all 12 sensors for a total of ~3.32 million samples per second.  Despite this more than doubling of work load, I ended up with around 70% idle time, up from 60% of the STM32F1.  Keep in mind that at a 120MHz clock rate, this 70% free cycles represents more than twice as much free number crunching capability than the STM32F1 at 60% idle.  I also found that the DMA to be much better with full FIFO available on each DMA channel and an easier to use triple ADC.

The result is a much cleaner interpretation of the sensor data which translates to a smoother and more stable platform.

Take a look at this short demo of the STM32F215 in a hex frame:

 

E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones

Comments

  • Bill,
    Got an e-mail from ARM, asking me to check the following sites for manufacturers of the cortex R7
    http://www.keil.com/dd/
    http://www.arm.com/community/partners/search.php
    It does see, to be hard to locate a vendor, but the lists are quite big and i haven't given up hope.
    List of Chips Supported by Keil
    Complete list of ARM, XC16x/C16x/ST10, 251, and 8051 chips supported by software development tools from Keil.
  • Patrick: Love to, but we are many orders of magnitude away from the onboard processing power needed to implement my algorithms in real time. That's the whole point of future research: to come up with better, faster ways to solve these problems.
  • Bill,

    I was just looking up the cortex R7 on this link

    http://www.arm.com/products/processors/cortex-r/cortex-r7.php

    Texas instruments seems to sell the R4

    http://www.ti.com/ww/en/embedded/arm/index.html?DCMP=TIHomeTracking...

    I can't seem to find any info on purchasing it on ARM's website, so i sent them a mail...

    If you use analog sensors, aren't you just shifting the latency problem from an internal ADC to an external ADC?

    I am also curious as to how you do the temperature compensation for scale factor and bias. I assume you do a polynomial fit, but where do you get the polynomial coefficients? I looked in the datasheets, but it doesn't seem to be readily available.

     

    The possibility of having a daughter board is nice, because one could potentially move "higher level" functions like tracking, communicating over a 3G network.. etc onto the daughter board

  • Srinath: Do you know of anyone producing silicon with an R7 core?  For the short term, AQv6 will have daughter board connectors which will allow the attachment of a SoM (system on module.)  The first one supported will be the Gumstix Overo which runs a Cortex A8 at 720Mhz and 500MB RAM with a vector floating point unit and integrated DSP.

     

    I much prefer using analog sensors which I can sample at high rates and low latency.

  • Hi Bill

    I am curious as to why you chose the Cortex M3 processor, why not the R7, it seems to have more punch and shouldn't represent a bottleneck if you want to do some vision based guidance.

    Also any reason, why you are going with invensense analog gyros and accelerometers and not digital ones from analog devices?

  • Patrick: The more capacitance that you have on a board, the lower the overall power supply noise will be.  Actually I am now using 47uf caps after a 5 to 40 ohm resistor depending on power requirements.  A low pass filter to reduce noise, ripple and transients.  It's almost like a little battery dedicated to the LDO.
  • Patrick: have a look at the build_notes.txt file, http://code.google.com/p/autoquad/source/browse/trunk/hardware/aqv5...
  • Wim: Turnigy hardware, modified firmware

     

    Patrick: I'll detail the V6 change in a new post once they are finalized

  • Bill, were you using turnigy plush ESC for that hexa?
  • srinath: I try to avoid Matlab as it is slow.  All of my testing and filter code is done in straight C using libraries that I have developed over time.  If find that for maximum performance, a UKF needs to be properly tuned which can sometimes be difficult.  PM me for more info.

     

    Ludovico: Flight tests are conducted at a top secret testing facility somewhere in the eastern US :)  Actually it is an ideal place as it is slightly GPS deprived due to surrounding mountains and the wind is generally unpredictable - keeps you on your toes.

This reply was deleted.