On Thu, 11 Jul 2013, propcoder wrote:

> Date: Thu, 11 Jul 2013 07:06:15 +0300
> From: propcoder <marius.alks...@gmail.com>
> Reply-To: "Enhanced Machine Controller (EMC)"
>     <emc-users@lists.sourceforge.net>
> To: emc-users@lists.sourceforge.net
> Subject: Re: [Emc-users] Custom firmware for MESA and BLDC motors
> 
> I am not sure I understand this correctly, but maybe this is possible:
>
> substract_encoder_offset --> mod_encoder_count --> take_only_needed_MSB
> --> customized_table_lookup with custom pre-calculated encoder offsets
> for 120 and 240 degrees  --> scale_multiply_sines --> 3_PWMGENS
>
> I mean use pre-calculated sine table for particular encoder scale,
> possibly shorter by 2, 4, 8, etc. times of encoder counts (rougher)
> which would be smooth enough.

This is probably possible (have the driver fill the sine table with encoder 
counts or some fraction) but in any case after you have 2 to 6 sets of these 
per motor systems its a lot of FPGA real estate. Which is why at the required 
update rates (lets say 20 KHz minimum) its going to be less hardware to use a 
soft processor in the FPGA so the multipliers and lookup table and 0,120,140 
offsets and mod operations are all done with shared hardware (a processor can 
be looked at as really just a fancy hardware muliplexing device)

>
> If made open-source, maybe these firmware files could be compiled by the
> users theirself..
>
> New ideas:
> Idea #1:
> use rough sine table in FPGA for fast speed and software for slow speed.
> Or just give software a possibility to send it's own values, but if it
> doesn't do that - use hardware's on transition to new table value.
>
> Idea #2 (at least):
> make phase commutation in HW. I mean when sine crosses zero (on hall
> signal slope), just commutate different phases and leave values the same.
>
>
> On 2013.07.10 16:56, Peter C. Wallace wrote:
>> Even if just commuation is done in a FPGA its probably a win do use a soft
>> processor since you need to do mod_encoder_count --> scale multiply -->
>> table_lookup with 0,120,240 deg offsets --> scale multiply sines --> 
>> 3_PWMGENS
>> for each channel...
>
>
>
> ------------------------------------------------------------------------------
> See everything from the browser to the database with AppDynamics
> Get end-to-end visibility with application monitoring from AppDynamics
> Isolate bottlenecks and diagnose root cause in seconds.
> Start your free trial of AppDynamics Pro today!
> http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
> _______________________________________________
> Emc-users mailing list
> Emc-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-users
>

Peter Wallace
Mesa Electronics

(\__/)
(='.'=) This is Bunny. Copy and paste bunny into your
(")_(") signature to help him gain world domination.


------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to