... or as others have said to me: "Moose you are ruined for designing consumer products!"

bigmoose wrote:
... or as others have said to me: "Moose you are ruined for designing consumer products!"

casainho wrote:Could you please explain your BEMF circuit, logic behind it? How do you use the output of this circuit in the firmware?

Arlo1 wrote:Hey Walls. With my controller project I did it all in the open. I didn't licence it as an open source don't know much about that. I will be working on the code more this winter.
I made mine modular so we can make any power level with it we want. I like things in the open. I just want to get my off the ground to encourage more people to build them and to try to help prices come down. I love what I have learnt and cant wait to learn more.
On the other hand lebowski is right he has a skill and put a lot of time into his code so that is worth money to him. I would like to see lebowski sell chips and full controllers to maybe help with his financial need when his job ends in a few months. So I in no way want to hurt his sales if anything I will try to make a few items to help sell kits for him!
SO when I get back to the code this fall I will work on it open source and hopefully get peoples help. If not no biggie But I see a steep learning curve ahead and will likely take 5 years? to get the features lebowski has and will not likely be the same I will write code for different options on my way. As for why I will do this open source? Because I don't know enough to sell my code. IN 5 years maybe but by then I will maybe write code for something else to make money. At the end of the day I just want to go fast!


walls99 wrote:I started to play with BLDC motors back in 2007, my first controller used sine wave open loop control. So it took me about 5 years, working maybe few hundred hours per year, to get where I'm today! ...

walls99 wrote:casainho wrote:Could you please explain your BEMF circuit, logic behind it? How do you use the output of this circuit in the firmware?
The BEMF circuit is a standard voltage divider + low pass filter + virtual neutral comparator for Zero Crossing detection feeding the Input Capture module of the PIC. There is a lot of literature available about the Zero Crossing principles. I suggest you read this 2000+ post thread DIY BLDC controller.
The low pass filter is designed to limit the phase lag to below 30º for the maximum RPM, so it can be compensated for by adjusting the phase advance in software. I also make use of the PIC digital noise filters to reduce the interference from the PWM signal.
See attached, the BEMF filter LTspice:


S.B.D wrote:Do you sample the comparator outputs when PWM is low? What digital filtering are you implementing?
I read a Microchip app note about majority voting algorithm and FIR filtering...what do you use?
LOAD_IC org 0x1000

casainho wrote:Walls, could you please share with us some pictures from the simulation?? Maybe some pictures can help us learn how it works... like I am curious to see the result signal after the filter and input to microcontroller.
Thank you.



bearing wrote:Nice!
I'm happy someone made use of that spice model. I see you have made some enhancements too.



walls99 wrote:Todo:
- Test on my Goped...



dnmun wrote:i would request you change the title to "open source BLDC motor controller" so it will come up more rapidly on google search since it is the more commonly used term.

casainho wrote:Will you design a PCB for this controller? I would use if it could control my 24V 250W electric bicycle. I could buy the components, assembly and test my board.
Why don't you put the firmware and schematic/board sources on Github (as other Open Source projects)??









walls99 wrote:I'm happy to share the design with other who want to use it as a starting point but I wouldn't recommend a straight copy of it.




walls99 wrote:I have corrected a few bugs and enhanced some on the synchronization loops to be more stable, please find the updated source code below:
Change log:Fixed throttle range in non car mode, 1.1ms = 0 and 1.9ms = 100%, new sync algo in ZC locked state,
Made brake mode optional, new sync algo for RC locked state, new filter for RC input.

bearing wrote:Is this the latest version of the projekt?
I would like to play with this, and then maybe make a board which can drive a 80100 on 80V.

walls99 wrote:bearing wrote:Is this the latest version of the projekt?
I would like to play with this, and then maybe make a board which can drive a 80100 on 80V.
No, it's quite out of date. I'm planning on releasing new soft but I haven't had the time to finalize everything I wanted. They are many upgrade to handle "high power": Torque control, automatic advance timing, sensorless startup, temperature control, regenerative braking...
I've sent you a PM to discuss alpha release, if you're interested?

Users browsing this forum: No registered users and 6 guests