Können ist die eine Seite, Laufzeit die andere... möchte gerne wissen, ob man mit der Programmiersprache für den Arduino auch rechnen kann; wie z.b. quadrieren, Wurzel ziehen, sin, cos? ..
Algebraische Funktionen (z.B. Wurzel) und besondes transzendente Funktionen (Beispiel trigonometrische und Arcusfunktionen) sind sehr rechenzeitintensiv. Ich hatte mich (zusammen mit einem Kollegen) mal bei der Arcusberechnung auf Mikrocontrollern mit diesem Gebiet auseinandergesetzt und einige Beispiele durchgerechnet. Dabei fanden wir, dass Näherungsfunktionen - !!KEINE Tabellen!! - bis zu fünfzig Prozent der Zeit einsparen können - und einiges an Länge des zugehörigen Maschinencodes. Beispiel siehe hier (klick).
Fazit: Wenns zeitlich keinerlei Rolle spielt (das gilt m.E. keinesfalls bei Roboterarmen - wo noch dazu meherere Gelenke mit entsprechend aufwendigen Rechnungen behandelt werden müssen) dann macht das alles kein Problem. Andernfalls KÖNNTEN vorberechnete Tabellen eine Behelfslösung sein. In prähistorischen Zeiten der Mikrorechner (z.B. Z80 mit 2 .. 4 MHz) hatte ich diese Rechnungen in einen Rechenknecht (sprich externer Arithmetikprozessor) ausgelagert, aber das ist eine ganz andere Baustelle.
Lesezeichen