Dual VESC for rotary speaker?

Support for creating custom user applications on the VESC.
Posts: 1
Joined: 09 Jan 2017, 12:18

Dual VESC for rotary speaker?

Postby rutgerv » 09 Jan 2017, 12:29

Hi guys,

I'm new to BLDCs but have skills in artificial intelligence, programming, microcontrollers and electronics. I'm building myself a rotating speaker (Leslie) and plan to use two BLDCs to control rotation of an upper and lower rotor. They require little torque, but quite a fine speed-control. The speaker contains two rotors (lower and upper) that typically run between 40 to 400 RPM and the ramp-up and ramp-down curve at which they change speed is quite important to the sound. That's why I decided to try the VESC for controlling the motors. I'm hoping to approximate the preferred speed ramp-up and down curve by using hall-sensor feedback and a learning algorithm that drives the VESC for each rotor. I'm also interested in VESC as it seems to be a relatively low-noise (acoustical) controller, compared to those with much harder pulse-type waveforms to drive the motors. As you can imagine you don't want to have the speaker sound be contaminated by a whirring motor.

The reason I registered to this forum is because I have one specific question while I'm preparing to use VESC for this application. Would it be possible to run the control code and hardware for 2 motors from a single STM32 instead of 2? From what I read on the website, there's plenty of CPU power left. How about I/O pins? I had a look at the pin-out in the schematics, and it looks pretty-much fully used. Perhaps by removing some of the interfaces (I saw some control-pins on the power_con that I probably don't need)? Or by adding a MUX (would that still work with the refresh rate that's need for good control)?

I hope someone can elaborate on what's possible. Otherwise, I'll just play it safe and use two independent VESCs.



ps. I will make the project open-source when it's finished (and if it's succesful).

Posts: 525
Joined: 25 Mar 2016, 12:29
Location: Delft, Netherlands.

Re: Dual VESC for rotary speaker?

Postby rew » 10 Jan 2017, 08:42

There are several hints that this is possible:
"ODRIVE" is a project that drives two motors from one STM32.
The STM FOC demonstration projects/software supports two motors on one STM32.

However, the cost of the CPU is only about 10% of the whole VESC. So an extra processor is not that expensive. The VESC software is not geared towards running two motors at once. So you'd be in for a hefty rewrite of the source code....

Get it to work with a single VESC per motor first, optimize later.

Return to “Custom Applications”

Who is online

Users browsing this forum: Bing [Bot] and 1 guest