recorder.py
3.02 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
"""
Created on Thu Jan 11 15:22:56 2018
@author: Robin Cavalieri
IMA5SC - PFE 2018
P32 - Détection automatique de DoS sur réseau LoRa
"""
##############################################################################
#LIBRAIRIES UTILES
##############################################################################
import csv;
import serial;
##############################################################################
##############################################################################
#CONSTANTES
##############################################################################
POPULATION = 5000;
TRAME_SIZE = 13;
##############################################################################
##############################################################################
#FONCTIONS UTILES
##############################################################################
#Enregistre ou non la séquence reçue
def record_condition(sequence):
if (0x46 in sequence):
return True;
else:
return False;
##############################################################################
##############################################################################
#DEFINITION DE LA LECTURE DE PORT
##############################################################################
ser = serial.Serial(
#Pour Linux
#port='/dev/ttyACM0',
#Pour Windows
port='COM4',
#Vitesse de communication
baudrate = 9600,
#Parité
parity=serial.PARITY_NONE,
#Bit de stop
stopbits=serial.STOPBITS_ONE,
#Taille du message
bytesize=serial.EIGHTBITS,
#Out
timeout=1
)
counter=0;
##############################################################################
##############################################################################
#ENREGISTREMENT DES TRAMES
##############################################################################
#INITIALISATION
nb_individus = 1;
file_name = "C:/Users/Utilisateur/PFE/python/datasets/trame.csv";
fp = open(file_name, "w");
writer = csv.writer(fp);
#BOUCLE D'ENREGISTREMENT
while(nb_individus <= 50):
#Vérification du contenu
x=ser.readline();
print(x);
#Condition d'enregistrement
if(record_condition(x)==True):
writer.writerow(('1', x[0:TRAME_SIZE]));
nb_individus = nb_individus + 1;
#TRAITEMENT DES DONNEES : suppression des caractères inutiles
fp.write(open(file_name).read().replace('\n',''));
#FERMETURE DU FICHIER
fp.close();
##############################################################################
##############################################################################
#ENREGISTREMENT DES TEMPERATURES
##############################################################################
##############################################################################
#ENREGISTREMENT DES PING
##############################################################################
##############################################################################
#ENREGISTREMENT DE PUISSANCE DE SIGNAL
##############################################################################