SimuCUBE Open Source Firmware Development Update Thread

I think what was meant was on-the-fly by the Game itselfā€¦ or changes cannot be made by the gameā€¦ The Auto Save changes are still working so if you have the tool open and make a change it will work.

Hi Brion,
No, that 2nd calc should not be done.

I=V/R -> if you use Vrms (48Vdc/1.4142) and assume a 95% efficiency for the Mosfet stage, it will give the 32.2Vrms.

Thus, Irms =Vrms/Line_resistance -> that is what Mika has used. (Max_Torque_output=torque_constant x Irms.

I have already made these tables in the Bruteforce3 thread some time agoā€¦the excel oneā€¦

Cheers,
Beano

The only problem is that to accurately get the torque based on the IONI Amperage we have to come back down from the Maximum possible based on voltage otherwise the 100% torque limit will be off which is what is occurring such as with the Large Mige by the first calculation would have a MAX Torque of 46.25Nm (this would take an MMC value of 41.4A POS) which would be correct IF there were no limits such as the Physical limit of the Servo at 30Nm OR the IONIā€™s Maximum possible Amperage at 25A POS

So the 46.25Nm Voltage Based Nm @ 41.4A MMC is not possible due to the IONI limit of 25A MMC so it would not make for an accurate 100% point calculation.

So we have to figure out where that limit is in order to somewhat accurately calculate what the 100% Nm actually is and that is what the second calculation would do IF the Servo is not Voltage Limitedā€¦

Without this calculation back down to where the limits are we are just at a Theoretical Maximum and not the Actual maximum.

On servos that exceed their Maximum torque via voltage then we kind of have to use the second calculation instead to find out the limit of what the IONI can drive via Amperageā€¦ so both calculations have to be done depending on whether the servo is Voltage or Amperage limited on the systemā€¦

Turns out it is a little more complex to make this calculation than even I thought as calculating in the Voltage Limited Servos is where the hard part is, otherwise we could just use the (MMC/1.4142)*Torque Constant and be done with it.

You cannot do both calculations. You are missing whatā€™s happening in the formulas. Itā€™s already converting VDC or A/POS to RMS values. You do it only once.

If you know the stator winding resistance, the voltage and you have the torque constant, thatā€™s all you need to get an accurate theoretical calculation.

For the rest, Mika might need to do a look-up table where the servo stuff is entered, such as the table I made earlier, to determine the ā€˜typeā€™ of servo. The small Mige is one of the few that will be able to reach max torque at 48VDC input anyway.

I would use such a method where you have a drop-down where you select the servo and it gives the torque based on max parameters for servo and IONI. For new servos, we could populate the table values manuallyā€¦

I understand what youā€™re trying to achieve, but there are better ways to do it imho. You need to be able to enter the servo constraints somewhere, and work within the IONI POS I envelopeā€¦

OK I think you are missing what I am saying it wouldnā€™t be using both on top of each other it would be using only one to set the max:

It would need to use the first to find out if the servo would be limited by the voltage or not

Then if it is NOT limited by the voltage the other calculation would have to be used instead.

Now in order to make the slider work right with MMC for Voltage Limited Servos we might have to do a calculation from the Max voltage torque BACK to MMC by using ā€” (Voltage Nm Limit / Torque Constant) * 1.4142ā€¦ This would give a servo such as the Kollmorgen 53G that calculates @ the Voltage Limit of 20.52Nm a MMC Setting of 12.14A POS which should deliver 20.52Nm based on using the (MMC/1.4142)*Torque Constant onlyā€¦

This would then allow the 100% Nm Estimated Torque Calculation to be two based on the MMC Set. Which is where the issue is because the number there has to be RELATIVE to the % on the scale to be useful at all otherwise it is just a number that really means nothing.

Basically we would need the following information to do a calculation this way on ANY servo, Torque Constant and Peak Torque output. then we can basically calculate every servo relative that 100% sliderā€¦

Granted this is somewhat dependent on a Voltage Limited Servo actually being able to generate its calculated amperage maximumā€¦ and that it would stay consistent up to that Amperageā€¦ from what I understand anything above the usable amperage will just not be used (which again is where the issue is in relativity to the strength slider as in the case above where the 53G will only effectively use 12.14A then if you have the IONI set for 25 the 100% point would be at 25A MMC but if you scale down to 50% or 12.5A the indicated Max torque would lower to 10.25Nm However it would still be able to deliver 12.5A which would run the 53G still at its full 20.5Nm so the actual indicated slider value would be WAY off.

I completely understand that BOTH calculations cannot be used at the same time but the resulting number HAS to be converted over to be relative the MMC Amperage regardless of the servo being used to be effectively correct and usable for any tuning purposes. So depending upon the servo the MMC has to be altered to the Max possible amperage it can use (voltage limited) OR the IONI limited MMC to torque calculation has to be used to get a correct 100% estimated torque outputā€¦

So by the numbers a

Large Mige would be rated at 27.93Nm at 100% on the Slider w/25A MMC (MMC Limited)
Small Mige would be rated at 20.01Nm at 100% on the Slider w/12.85A MMC (MMC Limited)
53G would be rated at 20.5Nm at 100% on the Slider w/12.14A MMC (Voltage Limited)
54G would be rated at 24.4Nm at 100% on the Slider w/11.98A MMC (Voltage Limited)
53K would be rated at 21.92 Nm at 100% on the Slider w/25A MMC (MMC Limited)
54K would be rated at 26.52 Nm at 100% on the Slider w/25A MMC (MMC Limited)
Lenze CS12H15L would be rated at 24.75 Nm at 100% on the Slider w/25A MMC (MMC Limited)

I donā€™t have the numbers off hand for the 52G but it is also Voltage Limited

EDIT ------------------------------------------

This is the calculation I am currently using in Excel to work out the correct values:

IF - (32.2 / winding_resistance) * torque_constant < peak_servo_torque
THEN - ((32.2 / winding_resistance) * torque_constant) / torque_constant ) * 1.4142
ELSE - (peak_servo_torque*1.4142) / torque_constant)

This calculation used one or the other formula based on the V/Res calculation to find the correct MMC value for the Voltage limited and the MAX MMC for the Non Voltage Limited.

There would then have to be one more calculation if the MMC determined by the above is over the 25A limit of the IONI and that would be (this would probably never occur with voltage limited servos):

(25*1.4142) / torque_constant

This all together will all give a correct MMC value which will set the 100% slider with the correct MAX Nm for the servo based on ONLY having the Line-Line Resistance and the Peak Servo Torqueā€¦

Just takes a small bit of Logic processing.

Then from there of course anyone can set the MMC for their servo lower as they wish and get a correct calculation of Estimated Nm based on all the limits.

If only Brion could present that in c++ :grinning:

In another news,

I set up a poll. See: SimuCUBE firmware 0.7 vs. 0.8

Hi Friends is possible to get all drc profil from Granity (small mige 10000ppr 720v power suply) I woudlike to check another one in my osw with 0.8.1firmware. Now I have orginal profil from Tomo Meglick .Can someone share here ? Best Regards Grzegorz

You shouldnā€™t need a drc file if you upgrade a working system.

Aaa so thats mean after update to 0.8 all granity setting We have the same ?

If I will send here mine drc profil Can You check Mika is ok or I shuld change something there possible to do it ? You are the guy who know everytching about osw hehe

yes granity drive settings remain, only game specific filter profiles are gone after the update.

anyway, you will find some drc files here http://members.iracing.com/jforum/posts/list/3573261.page

choose right combination for your motor, powersupply and encoder!

thank you McErono for answer :slight_smile:

I have SimuCube small mige 720psu and 10000ppr endcoder so this is profil for Me like on the picture I marked ?

Yes, but do not upload any new profile into your IONI if you already know it works.

Also, these are motor configuration files, not profiles.

Ok Mika so if I woudlike to check 12.86A (full power) seting so how to to do it easiet way ? Now I have 8A If i have good memory.

This talk of these formulas just seems far more complicated than it needs to be. IMO, you just missed dividing by sqrt(2).

Small Mige Tq: 12.86A/sqrt(2) * 2.2 = 20Nm

That will work for any motor whoā€™s Tq constant is known.

1 Like

John: The square root of 2 is 1.4142. And all your calc will do is something that we know already. Give a theoretical torque number that may or may not represent the max torque of the specific servo available when driven by 48VDC. It all depends on the winding resistance of the stator.

Edit: Apologies for the verbose answer.

Cheers.
Beano

Iā€™m well aware of that. :slight_smile: Iā€™m EE

From the existing calculation in the config tool, it appears that itā€™s missing.

Seeing your edit: I do understand that, but at the same time, i question its relevance. All a user needs to see is an ā€˜assumedā€™ or ā€˜approximateā€™ torque value. At least this is IMO. Being overly complex with look up tables and formulae is an effort in doing something just to prove you can. Thereā€™s a diminishing return in the time spent trying to get it as accurate (and correct) as youā€™d like, while just using Irms/sqrt2 * Ktq gets the job done well enough, no?

Valid point you make, I also think this is going totally overboard with something not needed at all. I always set the wheel by feel, as opposed to look at the raw numbers, or sometimes fractions. I would rather see the effort wasted here goes towards resolving a few important USB Comms issues, for example.

But yeah, if you want to show real torque numbers, you have to consider the impact of the winding resistance. My servo for example can do ~30NM at 100VDC, but only ~22NM at 48VDC. Thus the voltage is to low to drive the max current through the stator coilsā€¦this is the same case for most servos, and many people donā€™t know of this, thus they might think theyā€™re running 30NM as an example, but only actually have 20NM. (But then again, you know this, just verbose mode for those who donā€™t.)

Whilst it can be done with IF/THEN/ELSE statements as Brion is doing in excel, it is not so clean and lookup tables might be easier. But yes, like you, I think it is not needed at all, other then for those that are interested in seeing the numbers for one reason or another. No benefit pertaining to ffb behaviour/feel at allā€¦imho.

If there are benefits, Iā€™m not aware as Iā€™m out of the loop on these discussions.

Catch ya later!

1 Like