I'm using the Asctec Pelican and I have to command directly the motor rotational velocities.
For this purpose I need to know the conversion factor from Asctec rpms to real ones (I know Asctec rpms have a range 0-200).
Since in the sdk.h file from asctec-sdk3.0-archive.zip (http://wiki.asctec.de/display/AR/SDK+Downloads) there are two comments (reported below) related to this concept and they explain two different ways of conversion, I just want to know which one is correct.
* Quadcopter (AscTec Hummingbird, AscTec Pelican)
* measurement equals a real rpm of motor_rpm*64
* Quadcopter (AscTec Hummingbird, AscTec Pelican -> both Hacker motors)
* motor commands equal a real commanded rpm of (25+(motor*175)/200)*43
* please note that all fractions are removed during every calculation steps
* e.g. motor = 100; means a turning speed of (25+ (100*175/200))*43=4816 rpm
* Max. turning speed 8600 rpm
Actually, both are correct.
#1 is used for measurements and
#2 is used for commands
The commands have an offset in their formular to make better use of the variable range 0-200. In the lower RPM ranges the system won't take off anyway.
Nevertheless, the measurements go over the full range of motor RPMs.
I am trying to experimentally identify the relation between the commanded motor speeds and the real thrust produced by the motors....For this reason I am using the motor speeds provided in the LL_1khz_attitude_data struct. Ideally these should match the real rpm, but there is not any speed sensor under the motor shaft. So, I guess that these are obtained by mapping the commanded PWM and the expected rpm. Could anyone confirm whether this is true or not ?