Commit 16ccbfc68d67e41b4b6a1cdc27f282afb7136d0b

Authored by rcavalie
1 parent 9a50b3df

modification des trames

emetteur/emetteur.cpp
... ... @@ -30,7 +30,7 @@ PFE 2018 */
30 30 #define LORA_CRC_ENABLED true
31 31 #define RX_TIMEOUT_VALUE 3500 // in ms
32 32 #define BUFFER_SIZE 32 // Define the payload size here
33   -#define TRAME_SIZE 13
  33 +#define TRAME_SIZE 18
34 34 ////////////////////////////////////////////////////////////////////////////////
35 35  
36 36 ////////////////////////////////////////////////////////////////////////////////
... ... @@ -52,6 +52,7 @@ uint16_t BufferSize = BUFFER_SIZE;
52 52 uint8_t Buffer[BUFFER_SIZE];
53 53 int16_t RssiValue = 0.0;
54 54 int8_t SnrValue = 0.0;
  55 +int8_t cpt_trame = 0;
55 56 uint8_t testMsg[TRAME_SIZE];
56 57 ////////////////////////////////////////////////////////////////////////////////
57 58  
... ... @@ -137,22 +138,42 @@ void TrameCreation()
137 138 uint8_t dizaines_c = RandAscii(dizaines_i);
138 139 uint8_t unites_c = RandAscii(unites_i);
139 140  
  141 + cpt_trame = cpt_trame + 1;
  142 +
  143 + //Reset du compteur tous les 100
  144 + if(cpt_trame == 101)
  145 + {
  146 + cpt_trame = 0;
  147 + }
  148 +
  149 + debug("compteur de trame = %d", cpt_trame);
  150 +
  151 + //Conversion
  152 + uint8_t centaine_cpt = RandAscii(cpt_trame/100);
  153 + uint8_t dizaines_cpt = RandAscii(cpt_trame/10)%10;
  154 + uint8_t unites_cpt = RandAscii(cpt_trame%10);
  155 +
140 156 //Converti en ASCII
141   - testMsg[0] = 0x46; //emetteur F
142   - testMsg[1] = 0x33; //emetteur 3
143   - testMsg[2] = 0x30; //emetteur 0
144   - testMsg[3] = 0x33; //emetteur 3
145   - testMsg[4] = 0x52; //emetteur R
146   - testMsg[5] = 0x45; //emetteur E
  157 + testMsg[0] = 0x7C; //emetteur |
  158 + testMsg[1] = 0x46; //emetteur F
  159 + testMsg[2] = 0x33; //emetteur 3
  160 + testMsg[3] = 0x30; //emetteur 0
  161 + testMsg[4] = 0x33; //emetteur 3
  162 + testMsg[5] = 0x52; //emetteur R
  163 + testMsg[6] = 0x45; //emetteur E
147 164 //
148   - testMsg[6] = 0x46; //recepteur F
149   - testMsg[7] = 0x30; //recepteur 0
150   - testMsg[8] = 0x39; //recepteur 9
151   - testMsg[9] = 0x31; //recepteur 1
152   - testMsg[10] = 0x43; //recepteur C
  165 + testMsg[7] = 0x46; //recepteur F
  166 + testMsg[8] = 0x30; //recepteur 0
  167 + testMsg[9] = 0x39; //recepteur 9
  168 + testMsg[10] = 0x31; //recepteur 1
  169 + testMsg[11] = 0x43; //recepteur C
153 170 //
154   - testMsg[11] = dizaines_c; //temperature 2 dizaines
155   - testMsg[12] = unites_c; //temperature 0 unités
  171 + testMsg[12] = dizaines_c; //temperature 2 dizaines
  172 + testMsg[13] = unites_c; //temperature 0 unités
  173 + testMsg[14] = 0x7C; //emetteur |
  174 + testMsg[15] = centaine_cpt; //compteur de trames
  175 + testMsg[16] = dizaines_cpt; //compteur de trames
  176 + testMsg[17] = unites_cpt; //compteur de trames
156 177 }
157 178 ////////////////////////////////////////////////////////////////////////////////
158 179  
... ... @@ -213,9 +234,9 @@ int main( void )
213 234 debug("Trame : %s\r\n",(char*)Buffer);
214 235 Radio.Send(Buffer, BufferSize);
215 236 debug("Message envoye \r\n");
216   - //Attaque de ping
217   - wait_ms(50);
218 237 //Trafic normal
  238 + wait_ms(5000);
  239 + //Attaque de ping
219 240 //wait(1000);
220 241 }
221 242 }
... ...
python/main_simple.py
... ... @@ -18,7 +18,7 @@ from keras.models import model_from_json
18 18 ###############################################################################
19 19  
20 20 ###############################################################################
21   -#VARIABLES GLOBALES
  21 +#VARIABLES GLOBALES INITIALISATION
22 22 ###############################################################################
23 23 ping_mesured=0;
24 24 rssi_mesured=0;
... ... @@ -118,22 +118,24 @@ def Recorder():
118 118 puissance_read = (x[1]-48)*10 + x[2]-48;
119 119  
120 120 #SET INPUTS PREDICTION
121   - data_to_pred = np.array((ping_mesured, puissance_read),dtype = np.int64);
122   - data_to_pred = data_to_pred.reshape((1,2));
  121 + #data_to_pred = np.array((ping_mesured, puissance_read),dtype = np.int64);
  122 + #data_to_pred = data_to_pred.reshape((1,2));
  123 +
123 124 #PREDICTION TEMPS REEL
124   - pred = Predictions(data_to_pred);
  125 + #pred = Predictions(data_to_pred);
  126 +
125 127 #AFFICHAGE
126 128 print("\n###############################\n");
127 129 print("TRAME : "+ "".join(map(chr, trame_read))+"\n");
128 130 print("TEMPERATURE : "+str(temp_read)+" °C\n");
129 131 print("PUISSANCE : "+str(puissance_read)+" dBm\n");
130 132 print("PING : "+str(ping_mesured)+" ms\n");
131   - #pred = 1;
132   - if(pred==0):
133   - print("TRAFIC : ATTAQUE\n");
134   - elif(pred==1):
135   - print("TRAFIC : RAS\n");
136   - print("###############################\n");
  133 + #np.round(pred,0);
  134 + #if(pred==0):
  135 + # print("TRAFIC : ATTAQUE\n");
  136 + #elif(pred==1):
  137 + # print("TRAFIC : RAS\n");
  138 + print("###############################\n");
137 139 ###############################################################################
138 140  
139 141 ###############################################################################
... ...
recepteur/recepteur.cpp
... ... @@ -32,7 +32,7 @@ PFE 2018 */
32 32 #define LORA_CRC_ENABLED true
33 33 #define RX_TIMEOUT_VALUE 0 // in ms
34 34 #define BUFFER_SIZE 32 // Define the payload size here
35   -#define TRAME_SIZE 13
  35 +#define TRAME_SIZE 18
36 36 ////////////////////////////////////////////////////////////////////////////////
37 37  
38 38 ////////////////////////////////////////////////////////////////////////////////
... ... @@ -55,7 +55,7 @@ uint16_t BufferSize = BUFFER_SIZE;
55 55 uint8_t Buffer[BUFFER_SIZE];
56 56 int16_t RssiValue = 0.0;
57 57 int8_t SnrValue = 0.0;
58   -uint8_t receptMsg[13];
  58 +uint8_t receptMsg[TRAME_SIZE];
59 59 ////////////////////////////////////////////////////////////////////////////////
60 60  
61 61 ////////////////////////////////////////////////////////////////////////////////
... ... @@ -106,21 +106,27 @@ void TrameComp()
106 106 [...] : Température communiquée ici 20 pour l'exemple
107 107 */
108 108 //Converti en ASCII
109   - receptMsg[0] = 0x46; //emetteur F
110   - receptMsg[1] = 0x33; //emetteur 3
111   - receptMsg[2] = 0x30; //emetteur 0
112   - receptMsg[3] = 0x33; //emetteur 3
113   - receptMsg[4] = 0x52; //emetteur R
114   - receptMsg[5] = 0x45; //emetteur E
  109 + receptMsg[0] = 0x7C; //emetteur |
  110 + receptMsg[1] = 0x46; //emetteur F
  111 + receptMsg[2] = 0x33; //emetteur 3
  112 + receptMsg[3] = 0x30; //emetteur 0
  113 + receptMsg[4] = 0x33; //emetteur 3
  114 + receptMsg[5] = 0x52; //emetteur R
  115 + receptMsg[6] = 0x45; //emetteur E
115 116 //
116   - receptMsg[6] = 0x46; //recepteur F
117   - receptMsg[7] = 0x30; //recepteur 0
118   - receptMsg[8] = 0x39; //recepteur 9
119   - receptMsg[9] = 0x31; //recepteur 1
120   - receptMsg[10] = 0x43; //recepteur C
  117 + receptMsg[7] = 0x46; //recepteur F
  118 + receptMsg[8] = 0x30; //recepteur 0
  119 + receptMsg[9] = 0x39; //recepteur 9
  120 + receptMsg[10] = 0x31; //recepteur 1
  121 + receptMsg[11] = 0x43; //recepteur C
121 122 //
122   - receptMsg[11] = 0x32; //temperature non vérifiee
123   - receptMsg[12] = 0x31; //temperature non verifiee
  123 + receptMsg[12] = 0x32; //temperature non vérifiee
  124 + receptMsg[13] = 0x31; //temperature non verifiee
  125 + receptMsg[14] = 0x7C; //emetteur |
  126 + //
  127 + receptMsg[15] = 0x30; //cpt non vérifé
  128 + receptMsg[16] = 0x30; //cpt non vérifié
  129 + receptMsg[17] = 0x30; //cpt non vérifé
124 130 }
125 131 ////////////////////////////////////////////////////////////////////////////////
126 132  
... ... @@ -174,18 +180,17 @@ int main( void )
174 180 Radio.Rx(RX_TIMEOUT_VALUE); //Reception mode en continu car TIME_OUT_VALUE = 0
175 181 if( BufferSize > 0 )
176 182 {
177   - if(strncmp((const char*)Buffer, (const char*)receptMsg, TRAME_SIZE-2 ) == 0) //-2 pour ne vérifier que l'entete
  183 + if(strncmp((const char*)Buffer, (const char*)receptMsg, TRAME_SIZE-6) == 0) //-2 pour ne vérifier que l'entete
178 184 {
179 185 //Buffer de données
180 186 debug("%s\n",(char*)Buffer);
181 187 //Puissance de reception du signal
182 188 debug("%d\n",RssiValue);
183   - //il faut enregistrer la trame
184 189 //PROGRAMME PYTHON recorder.py POUR ENREGISTRER LES DONNEES sortant du port série
185 190 //il faut vider le buffer
186 191 memset (Buffer, NULL, BUFFER_SIZE);
187 192 }
188   - wait_ms(300);
  193 + wait_ms(1000);
189 194 }
190 195 }
191 196 }
... ...