Bonjour à tous.
Tout d'abord, excusez mon français, je ne suis pas français, je suis un étudiant Erasmus un peut perdu avec mon projet.
Je mets en œuvre un code complexe MATLAB pour travailler dans C. Le code MATLAB est la suivante, il ya trois fonctions:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 function teta = getTeta(P,phi,tetaviejo) landa=0.98; Kn=P*phi*inv(landa+phi'*P*phi); teta=tetaviejo+Kn*(y'-phi'*tetaviejo); return
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 function K = getK(teta) Q=eye(11); R=10^3; An=[-teta(1:9,:)',teta(11:12,:)';eye(6),zeros(6,5);zeros(1,11);zeros(1,9),1,0]; Bn=[teta(10,:)';zeros(6,1);1;0]; [K]=dlqr(An,Bn,Q,R); return
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 function Pnuevo = getP(Pviejo,phi) landa=0.98; Kn=Pviejo*phi*inv(landa+phi'*Pviejo*phi); Pnuevo=(Pviejo-Kn*phi'*P)/landa; return
Pour créer des bibliothèques et de travailler en C, j'ai fait le code suivant:
Tout cela m'a conduit, pour chaque fonction, les fichiers suivants:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 >> mcc -B cpplib:getK getK.m >> mcc -B cpplib:getP getP.m >> mcc -B cpplib:getTeta getTeta.m
Maintenant, mes questions:
- Lequel de ces fichiers que je dois inclure dans mon programme en C?
- Comment puis-je appeler mes fonctions de C? Quels sont les paramètres que je dois donner et comment?
-L'ordinateur sur lequel je vais mettre en œuvre le programme est différent. Dois-je faire quelque chose de spécial lorsque vous passez le programme?
Merci beaucoup à l'avance, et encore pardonnez mon français.
Partager