Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
mouvement.h
00001 /** 00002 * mouvement.h 00003 * 00004 * Created on: Mar 02, 2015 00005 * Author: salco 00006 */ 00007 00008 /* 00009 * Theraphosa Salconi 00010 * 00011 * Jambes[coxa/fermur/tibia/tars]+numeroMoteur: 00012 * 00013 * Arr-D: [0,1,2,3] 00014 * Arr-G: [16,17,18,19] 00015 * Arr-Mil-D: [4,5,6,7] 00016 * Arr-Mil-G: [20,21,22,23] 00017 * Avv-Mil-D: [8,9,10,11] 00018 * Avv-Mil-G: [24,25,26,27] 00019 * Avv-D: [12,13,14,15] 00020 * Avv-G: [28,29,30,31] 00021 * 00022 */ 00023 #ifndef MOUVEMENT_H_ 00024 #define MOUVEMENT_H_ 00025 00026 00027 #define DEBUG_MOUVEMENT 0/*1*/ 00028 #define DEBUG_EXEC 0/*1*/ 00029 #define DEBUG_SENDSEQ 0/*1*/ 00030 #define DEBUG 00031 00032 #include "mbed.h" 00033 //#include <string> 00034 #include "debug.h" 00035 //#include <stdio.h> 00036 #include "Patte.h" 00037 #include "homemadeSequence.h" 00038 00039 00040 class Faculter_motrice 00041 { 00042 Serial* m_com; 00043 homemadeSequence* m_seq; 00044 Timer delaisNextSeq; 00045 00046 Patte *m_arr_D; 00047 char m_SequenceID_arr_D; 00048 Patte *m_arr_mil_D; 00049 char m_SequenceID_arr_mil_D; 00050 Patte *m_arr_G; 00051 char m_SequenceID_arr_G; 00052 Patte *m_arr_mil_G; 00053 char m_SequenceID_arr_mil_G; 00054 Patte *m_avv_D; 00055 char m_SequenceID_avv_D; 00056 Patte *m_avv_mil_D; 00057 char m_SequenceID_avv_mil_D; 00058 Patte *m_avv_G; 00059 char m_SequenceID_avv_G; 00060 Patte *m_avv_mil_G; 00061 char m_SequenceID_avv_mil_G; 00062 00063 // Flag // 00064 bool m_ForceStop; // use when you want pause the motion 00065 bool m_CriticalStop; // use to turn off all legs 00066 bool m_SeqChange; 00067 00068 // // 00069 // char m_SequenceChosen; 00070 // A enlever au plus vite car sa prend beaucoup d'espace // 00071 00072 void sendSequence(void); 00073 public: 00074 #ifdef DEBUG 00075 00076 #endif 00077 char get_idSeq(void){return m_seq->get_Sequence();} 00078 char get_idFrame(void){return m_seq->get_frame();} 00079 void set_idSeq(char value){m_seq->set_frameID(value);} 00080 00081 00082 Faculter_motrice(Serial* com); 00083 virtual ~Faculter_motrice(); 00084 00085 bool isSeqComplet(void){return m_ForceStop;} 00086 void exec(void); 00087 void stop(void) { 00088 m_ForceStop= true; 00089 } 00090 void resume(void) { 00091 m_ForceStop=false; 00092 m_CriticalStop=false; 00093 delaisNextSeq.start(); 00094 } 00095 void crit_stop(void); 00096 00097 void moveLeft (void) { 00098 m_ForceStop=false; 00099 m_seq->set_Sequence(9); 00100 delaisNextSeq.start(); 00101 } 00102 void moveRight(void){ 00103 m_ForceStop=false; 00104 m_seq->set_Sequence(10); 00105 delaisNextSeq.start(); 00106 } 00107 void moveUp (void){ 00108 m_ForceStop=false; 00109 m_seq->set_Sequence(2); 00110 delaisNextSeq.start(); 00111 } 00112 void moveDown (void){ 00113 m_ForceStop=false; 00114 m_seq->set_Sequence(3); 00115 delaisNextSeq.start(); 00116 } 00117 void moveFront(void){ 00118 m_ForceStop=false; 00119 m_seq->set_Sequence(6); 00120 delaisNextSeq.start(); 00121 } 00122 void moveBack (void){ 00123 m_ForceStop=false; 00124 m_seq->set_Sequence(7); 00125 delaisNextSeq.start(); 00126 } 00127 void turnLeft (void){ 00128 m_ForceStop=false; 00129 m_seq->set_Sequence(4); 00130 delaisNextSeq.start(); 00131 } 00132 void trunRight(void){ 00133 m_ForceStop=false; 00134 m_seq->set_Sequence(5); 00135 delaisNextSeq.start(); 00136 } 00137 void calibre (){ 00138 m_ForceStop=false; 00139 m_seq->set_Sequence(11); 00140 delaisNextSeq.start(); 00141 } 00142 void repositioner(char idLeg){ 00143 m_ForceStop=false; 00144 m_seq->set_leg(idLeg); 00145 m_seq->set_Sequence(8); 00146 delaisNextSeq.start(); 00147 } 00148 00149 00150 00151 }; 00152 extern Faculter_motrice *ptrFaculterMotrice; 00153 #endif /* MOUVEMENT_H_ */
Generated on Tue Jul 12 2022 19:04:22 by
1.7.2