DSP & Subcontrol Cartesian 2 Polar, and subcontrol 3D distance SDK3 modules.
Reference: polar-cartesian-coordinates
– RH-Cart2Polar has a selection pin to choose between 180/-180 and 0/360 degrees.
– Converted from SDK2, RH-3Ddistance was RH-2D_3D_distance
( removed choice option, use Cart2Polar for X + Y ).
– Both subcontrol modules combined into one SEM to save memory usage (ran into problems with the DSP versions so they are not combined for now).
Update:
– 12-7-2015: Subcontrol bug choice not saved fixed.
– 15-5-2015: Added sleepmode in the DSP versions, forgot about that.
– 13-5-2015: Polar2Cartesian DSP (32/64 bits) version released. It has a mode pin to select between: “Normal, Approx (fastsin/cos) and Update ( update state using the Bool Update pin, uses math.h sin/cos )”. Note: I’ve used the fastonebigheader.h for the fastsin/cos functions. CPU usage(i5)(32bit): normal = 1.5%, Approx = 0,4% and Update = 0,15%.
– 6-5-2015: Cartesian2Polar DSP (32/64bits) version released. It has a mode pin which lets you choose between : “Normal, Approximation (of atan2) or Update ( update state using the Bool Update pin, uses math.h atan2 as with normal mode )”. If your application doesn’t require constant computing, use the update mode with update pin.
CPU usage(i5)(32bit): normal = 1.6%, Approx = 0,5% and Update = 0,13%.
– 4-5-2015: Cartesian2polar subcontrol modules are now bidirectional, you can enter distance and angle values to get X,Y coordinates.