Skip to content

Commit

Permalink
originale
Browse files Browse the repository at this point in the history
  • Loading branch information
Alessandro-Barbieri committed Apr 14, 2018
1 parent 18e4603 commit 580953e
Show file tree
Hide file tree
Showing 185 changed files with 31,965 additions and 0 deletions.
Binary file added Doriot_04.pdf
Binary file not shown.
Binary file added HorseVaulting.pdf
Binary file not shown.
28 changes: 28 additions & 0 deletions INSTALL_matlab.TXT
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
--------------------------------------------------------------------
version 2.2a October 2009 tested with matlab matlab 7.6.0.324 R2008a
--------------------------------------------------------------------

To install SPACELIB follows the instruction contained in the manual section 2.1

As an alternative unzip the files in a directory of your choice, for instance

c:\users\spacelib_m

and you can add the following two lines to file startup.m contained in the matlab directory:

addpath c:\users\spacelib_m
spacelib

the string 'c:\users\spacelib_m' should be replaced with the pathname of the directory where you install spacelib in your computer.

see information in README.TXT


--------------------------------------------------------------------
alternative installation procedure

1) Copy all the files in a directory of your choice
2) Run matlab, and from the main menu choose "File>Set Path..."
3) Select the directory in which SpaceLib is installed and press "add with subfolders"
4) Press "save"
5) press "Close"
123 changes: 123 additions & 0 deletions README_matlab.TXT
Original file line number Diff line number Diff line change
@@ -0,0 +1,123 @@
--------------------------------------------------------------------
version 2.2a October 2009 tested with matlab matlab 7.6.0.324 R2008a
--------------------------------------------------------------------
Information on the last patches at the end of this file
--------------------------------------------------------------------
What is SPACELIB(c)?
SPACELIB is a software library useful
for the realization of programs for the kinematic and dynamic
analysis of systems of rigid bodies.
This library is currently used in ROBOTICS and BIOMECHANICS.
It has been developed at the Mechanical Engineering Department
of the University of Brescia.

Two versions of the library are currently available
(see http://bsing.ing.unibs/~glegnani for code, description and user's manual):

* c language (numerical computetion)
* matlab (numerical computation)
* MAPLEV (symbolic manipulation)

The library is offered with:

* full source code
* a full reference manual
* commented application examples
* papers describing the mathematic theory which
is at the base of spacelib

The functions contained in the library are devoted to:

* basis operations on matrices
sum, product, (pseudo)inversion, ...
* basic operation on points, lines and planes
line between two points
plane defined by three points
intersection / projection of point, lines on planes
...
* basic operation on vectors
module, dot product, cross product, ...
* tranformation matrices (rototranslations)
* velocity and acceleration matrices
* Cardan/Euler angles
tranformation of angles to/from rotation matrices
derivative of angles to/from angular velocity and acceleration
* linear systems

The library is intended as an aid in writing programs for the
analysis of systems of rigid bodies following a particular
methodology based on 4*4 matrices. This approach can be
considered a powerful generalization of the Transformation
Matrix Approach proposed by Denavit and Hartenberg.
Shortly: the position and the orientation of each body is
represented by 4*4 transformation matrices.
Two others matrices called W and H are utilized for the velocity
and the acceleration (linear and angular).
Additional matrices are used for the momentum, forces, torques,
inertia.

The main feature of this methodology is that it allows the
development of the analysis of systems of rigid bodies in a
systematic way simplifying the symbolic manipulation of equations
as well as the realization of efficient numerical programs.

--------------------------------------------------------------------
patch NOVEMBER 2001

the function mod() has been renamed modulus() to avoid conflict with the
function mod() contained in the new MATLAB versions
--------------------------------------------------------------------
patch FEBRUARY 2003

Some bugs fixed.

And also improved compatibility with release 12.
Some functions worked well with previous versions but failed with version 12 (e.g. functions dist() and mod() had to be renamed to avoid conflics, some vector converted to row to column, logical operator precedence checked, etc...)

Some minor bugs have been also corrected.
--------------------------------------------------------------------
patch OCTOBER 2003

Some bugs fixed.
Improved documentation
--------------------------------------------------------------------
patch JANUARY 2004

Manual improved and supplied in PDF format.

Some bugs fixed.
Functions normal, normal_g and psedot added.
Functions solve renamed to ovid conflicts with Matlab version 12.

--------------------------------------------------------------------
patch november 2005

manual restyled and extended
minor bugs fixed
few new funtions added (dhtomstd, psedot, crosstom, translat, translat2, translat24)

--------------------------------------------------------------------
patch October 2009

minor bugs fixed
eliminated problems with lower/upper case mismatching
simplified installation
--------------------------------------------------------------------

The library is free avalailable for non-profit activities including
scientific and educational purposes.
See also the "disclaimer warranties" statment in the manual.

For commercial activities please contact:
Giovanni Legnani
Universita di Brescia
Dip. Ing. Meccanica
Via Branze 38
25123 Brescia, Italy.

phone +39/030 3715425
fax +39/030 3702448

e-mail: giovanni.legnani @ ing.unibs.it
www: http://bsing.ing.unibs/~glegnani
www: http://spacelib.ing.unibs.it
139 changes: 139 additions & 0 deletions SPACELIB.asv
Original file line number Diff line number Diff line change
@@ -0,0 +1,139 @@

%___________________________________________________________________________
%
% HEADER FILE SPACELIB.M (November 2005)
%
% In this file are defined all the constants that are used by the
% SPACELIB functions. These constants are memorized in global variables.
%
% HEADER FILE USAGE:
%
% 1) If this M-file is invoked by the matlab command window or by the
% matlabrc.m file, all the global variables are automatically loaded
% in memory (see user's manual).
%
% Typing the istruction "who global", MATLAB displays the list of the global
% variables loaded in memory.
%
% 2) Every function that uses the global variables, must include the header
% file 'spheader' in the first line of the program (see chapter 2.1 of the
% user manual).
%
% 3) The directories containig SPACELIB are assigned to global variables
% and the default directory is set accordingly.
%
% WARNING 1: The global variables defined in this of the constants defined in
% the header file have special meaning for many SPACELIB functions.
% Their value MUST NOT changed at any time.
%
% WARNING 2: there is a line similar to this
%
% spc_lib_dir='c:\users\spacelib_m' % spacelib directory
%
% that MUST be updated to match your installation!!!
%________________________________________________________________________________


clc

%___________________________________________________________________________
%
% GLOBAL VARIABLES DECLARATION:
%___________________________________________________________________________

spheader % declare global variables

%___________________________________________________________________________
%
% GLOBAL VARIABLES INITIALIZATION:
%___________________________________________________________________________

X=1; Y=2; Z=3; U=4;

Xaxis = [1 0 0]';
Yaxis = [0 1 0]';
Zaxis = [0 0 1]';

Xaxis_n = [-1 0 0]';
Yaxis_n = [0 -1 0]';
Zaxis_n = [0 0 -1]';

ORIGIN=[0 0 0 1]';

Rev =0; Pri = 1;
Tor =0; For = 1;
SYMM_ =1; SKEW_ =-1;
Row =0; Col = 1;

OK=1; NOTOK=0;

PIG=pi;
PIG_2=pi/2;
PIG2=2*pi;

NULL3=zeros(3);
NULL4=zeros(4);
UNIT3=eye(3);
UNIT4=eye(4);

%___________________________________________________________________________
%
% GLOBAL DIRECTORIES DECLARATION:
%___________________________________________________________________________

% ***-----> the following line MUST be updated to match your installation!!!
%spc_lib_dir='C:\Users\Utente\Documents\Spacelib\SpaceLib_Matlab_v2.2' % spacelib directory
% *** the update of the string is no longer necessary in this new version
% (october 2009)


p = mfilename('fullpath'); % name of the m-file
[spc_lib_dir, name, ext, versn] = fileparts(p); %automatically update the string

spc_lib_dir_f=[spc_lib_dir,'\function'] % functions
spc_lib_dir_s=[spc_lib_dir,'\shortexa'] % short examples
spc_lib_dir_b=[spc_lib_dir,'\bigexa'] % big examples

tmp0=strfind(matlabpath,spc_lib_dir);
tmp1=strfind(matlabpath,spc_lib_dir_f);
tmp2=strfind(matlabpath,spc_lib_dir_s);
tmp3=strfind(matlabpath,spc_lib_dir_b);

if (isempty(tmp1) |...
isempty(tmp2) |...
isempty(tmp3))
matlabpath([matlabpath,';', spc_lib_dir,';', spc_lib_dir_f, ';',spc_lib_dir_s,';', spc_lib_dir_b]);
end

clear tmp1 tmp2 tmp3
%tmp= ['cd ',spc_lib_dir]; % patch November 2005
%eval(tmp);
%clear tmp;

%___________________________________________________________________________
%
% PRINT "HEADER":
%___________________________________________________________________________


fprintf('\n___________________________ SPACELIB ___________________________\n')
fprintf(' VERSION 2.2\n')
fprintf(' A software library for\n')
fprintf(' the kinematic and dynamic analysis\n')
fprintf(' of systems of rigid bodies.\n\n')
fprintf(' Includes general functions for vectors, matrices,\n')
fprintf(' kinematics, dynamics, Euler angles and linear systems\n\n')
fprintf(' (c) G.LEGNANI B.ZAPPA R.ADAMINI 1990 - 2005\n\n')
fprintf(' MATLAB� version with the cooperation of C.MOIOLA and D.MANARA\n')
fprintf(' University of Brescia - Mechanical Engineering Department\n')
fprintf(' Via Branze 38, 25123 BRESCIA, Italy\n')
fprintf(' e-mail: giovanni. legnani @ ing.unibs.it\n')
fprintf(' www:http://bsing.ing.unibs.it/~glegnani\n\n')
fprintf(' SPACELIB� loaded in workspace\n')
fprintf('\n');
fprintf(' bug fixed January 2004 and November 2005 (tested wih matlab 6.0.0.88 release 12)\n');
fprintf(' see readme.txt and user''s manual for release notes\n');
fprintf('___________________________________________________________________________\n')

cd
who global
Binary file added SpaceLib-BASES.PDF
Binary file not shown.
Binary file added SpaceLib-Bases-MATRIX-1.PDF
Binary file not shown.
Binary file added SpaceLib-Bases-MATRIX-2.PDF
Binary file not shown.
Binary file added SpaceLib_MatLab_manual.pdf
Binary file not shown.
6 changes: 6 additions & 0 deletions bigexa/ELBOW.DAT
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
1.5
0.8
0.8
0.2
0.0
0.2
Loading

0 comments on commit 580953e

Please sign in to comment.