bon, je viens de voir que 2 topics se superposent. comme tout le monde l aura remarque, je parlais de faire des courbes d asserv, et non de tracer les fonctions ;)
a++ tof tof a écrit : > alors, pour les details : > > ce que j appelle un cycle est un cycle d asservissement. > > exemple, j ai une routine d asserv de prio haute a 10ms de recurrence. > une autre de prio basse a 100ms. > > > un exemple simple : > dans la routine 10ms, je mets un printf du genre : printf("v%ip%i\n" , > vitesse, position) > dans la routine 100ms, je mets un printf du genre : printf("a%dx%iy%i" , > angle_robot, x_robot, y_robot) > > > on recupere sur l uart un truc du genre : > v5p10\n > v5p15\n > a-270.05x300y-50v5p20\n > > mon protocole est donc tres simple, et base sur de l ascii. une lettre > en tant que label, et un nombre (entier ou pas, negatif, peu importe, > tout est ok). > un \n cloture chaque 10 ms, pour donner une synchronisation, et une info > de temps. > des valeurss peuvent etre absentes, dans mon exemple, les valeurs a,x et > y sont presentes qu une fois sur 10. > > > cote PC : > > plusieurs fonctions matlab. (il me semble que j avais terste avec > octave, mais je ne me souviens plus si ca marche) > > http://cvsweb.droids-corp.org/cgi-bin/viewcvs.cgi/aversive_projects/tof2007/telemetrie_matlab/ > > telemetry.m : script de lancement, qui acquiert, puis affiche les donnees > telemetry_input.m : fonction d acquisition, qui prend les donnees sur le > port serie, ou dan un fichier de log, et les lit, et convertit en un tableau > telemetrey_show.m : plotte le tout > > a remarquer qu on peut definir des labels plus explicites : > > {*'C Goal pos (consign)'*, *'p actual position'*, *'P Pivot position'*},{*'V > Speed consign'*, *'v actual speed'*} > > la 1ere lettre est celle du label de la trame. comme fait ici, on > definit un graphe pour les vitesses, et un pour les positions > > > > finalement, le resultat : > > http://wiki.droids-corp.org/mediawiki/index.php/Aversive/Modules/Control_system/Filters/Quadramp_derivate > > pas mal, non ? > > > > tof > > > > > Olivier MATZ a écrit : > >> lu, >> >> > pour le moment je fais ca en envoynt des donnees par printf a >> > chaque cycle. >> > pas tres propre, mais bon. >> >> ah, quoi comme données ? et qu'est ce que tu appelles un cycle ? >> >> Là dans mon cas, le but est de choper et d'afficher la valeur du PC a >> intervale régulier... en fait, pas tout à fait régulier, il y a une part >> d'aléatoire pour éviter que la période soit multiple d'une periode d'un >> autre évenement, par exemple une fonction appelée par le scheduler. >> >> Le gros avantage est que c'est suffisamment lent pour ne pas influer sur >> le fonctionnement du prog, ce qui permet de vraiment profiler ton appli. >> Par contre, ça ne te dis pas par quel chemin tu t'es retrouvé dans telle >> fonction... et je pense que cette info est relativement difficile à >> rétrouver, car il n'y a pas de frame pointer. >> >> Oliv >> >> >> _______________________________________________ >> Avr-list mailing list >> Avr-list@droids-corp.org >> CVSWEB : http://cvsweb.droids-corp.org/cgi-bin/viewcvs.cgi/aversive >> WIKI : http://wiki.droids-corp.org/index.php/Aversive >> DOXYGEN : http://zer0.droids-corp.org/doxygen_aversive/html/ >> BUGZILLA : http://bugzilla.droids-corp.org >> COMMIT LOGS : http://zer0.droids-corp.org/aversive_commitlog >> >> >> > > > _______________________________________________ > Avr-list mailing list > Avr-list@droids-corp.org > CVSWEB : http://cvsweb.droids-corp.org/cgi-bin/viewcvs.cgi/aversive > WIKI : http://wiki.droids-corp.org/index.php/Aversive > DOXYGEN : http://zer0.droids-corp.org/doxygen_aversive/html/ > BUGZILLA : http://bugzilla.droids-corp.org > COMMIT LOGS : http://zer0.droids-corp.org/aversive_commitlog > > _______________________________________________ Avr-list mailing list Avr-list@droids-corp.org CVSWEB : http://cvsweb.droids-corp.org/cgi-bin/viewcvs.cgi/aversive WIKI : http://wiki.droids-corp.org/index.php/Aversive DOXYGEN : http://zer0.droids-corp.org/doxygen_aversive/html/ BUGZILLA : http://bugzilla.droids-corp.org COMMIT LOGS : http://zer0.droids-corp.org/aversive_commitlog