Hi,
ja, die Division ist der störende Faktor! Aber bei meiner Lösung benötige ich nur eine Division, die als Integer nur um die 300 Takte braucht. Das ist zwar immer noch relativ lange, aber der Rest besteht dann ausschließlich aus Tabelle lesen und ein paar Additionen / Subtraktionen. Der Nachteil beim Cordic ist eben, dass er bei einer Tiefe von z.b. 10 schon 96 Shifts benötigt, dadurch wirds dann doch wieder relativ langsam!
Man muss eben einen Kompromiss zwischen Geschwindigkeit und Genauigkeit und Platzverbrauch eingehen, immer abgestimmt auf den Verwendungszweck. Mein ACC ist ein MPU6000, der 16Bit Auflösung hat. Das gute daran ist eben, wenn der Wert von X/Y z.b. zwischen 4 & 10 liegt, kann man diese kleine Strecke linearisieren, genauso wie die anderen Strecken, z.b. zwischen 10 & 20, 20 & 50, 50 & 100 , usw..... Du verstehst?
Gruß
Chris
Lesezeichen