Center of Gravity Calculation in 3D Space
11 views (last 30 days)
Show older comments
Hi
I have a force-torque sensor on a robot arm and would like to automatically evaluate the force and CoG of the attached tool. I thought about measuring force and torque under different orientation and averaging the results. What I have so far:
function [ fg, cog ] = ldd( f, m )
%LoadDataDetection
%Calculating gravity force and center of gravity of attached tool based on
%FT-Sensor data.
transpose(f);
transpose(m);
r = transpose([sym('x') sym('y') sym('z')]);
eqn = m == cross(f,r);
fg = sqrt(f(1)^2 + f(2)^2 + f(3)^2);
cog = solve(eqn);
end
f and m represents the measured force and torque of the sensor, cog should be a 3x1 vector with the cog values (x,y,z).
The problem is, under some configurations, I do get equations 0==0 (mass in XY plane for example) and therefore, the solve does not work. Additionally, as I use sensor measurements, I do not get an exact solution and would have to integrate some residuum term that has to be minimized.
Any idea how to approach this problem? I am very new to matlab but I guess this should be some very simple problem. =)
1 Comment
Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!