FireAI: Αυτοματοποιημένο σύστημα εντοπισμού και ειδοποίησης για δασικές πυρκαγιές
Ομάδα: S.P.A.C.E.
Περιγραφή: Με machine learning εκπαιδεύσαμε ένα Raspberry Pi να διαχωρίζει φωτογραφίες που παίρνονται σε πραγματικό χρόνο από ένα παρατηρητήριο και να αναγνωρίζει καπνό ή φωτιά. Σε περίπτωση που αναγνωριστεί καπνός ή φωτιά, το Raspberry Pi στέλνει μήνυμα κινδύνου μέσω ενός Feather M0 LoRa από το παρατηρητήριο, στο αντίστοιχο Feather M0 LoRa στο σταθμό Βάσης που συλλέγει τις πληροφορίες. Η επικοινωνία των Feather είναι ασύρματη μέσω FM. Το παρατηρητήριο λειτουργεί ως αυτοματοποιημένο κέντρο ειδοποίησης. Ο δεύτερος μικρο-επεξεργαστής Feather, ανάβει στο κέντρο ειδοποίησης ένα από τρία χρωματιστά leds ανάλογα με την πληροφορία που έλαβε: Ασφαλές, Καπνός, Φωτιά. Επίσης το Adafruit Feather M0 LoRa μετράει τη θερμοκρασία την ατμοσφαιρική πίεση και την υγρασία με κατάλληλους αισθητήρες καθιστώντας το ένα μικρό μετεωρολογικό σταθμό.
Εκπαιδευτικοί στόχοι:
- Εξοικείωση με το Machine Learning
- Προγραμματισμός Arduino/Raspberry Pi
- Συνδεσμολογία αισθητήρων και επεξεργαστών
- 3D σχεδίαση
- Ευαισθητοποίηση σε περιβαλλοντικά θέματα
- Ανάπτυξη ομαδικότητας
- Ανάπτυξη κριτικής σκέψης για επίτευξη στόχων
Το βίντεο του project.
Υλικά.
- Ένα Raspberry Pi 4 Model B Kit (8GB)
- Δύο Adafruit Feather M0 LoRa
- Ένας επιταχυντής Coral TPU.
- Ένα BME280
- Δύο breadboards
- Ένα buzzer
- Τρία led, κίτρινο, πράσινο, κόκκινο.
Διαδικασία.
(Για περισσότερες λεπτομέρειες δείτε στο https://github.com/Zanneio/-SPACE )
- Συνδέουμε το Coral με το Raspberry Pi, αφού πρώτα το εγκαταστήσουμε.
- Οργανώνουμε τις φωτογραφίες σε κατηγορίες στο directory Data του Raspberry Pi.
- Δημιουργούμε το directory models που περιέχει το pre-trained μοντέλο εκπαίδευσης.
- Με το script train.py εκπαιδεύουμε το μοντέλο μας.
- Συνδέουμε το Raspberry Pi με το ένα Adafruit Feather M0 LoRa (δασικός σταθμός παρατήρησης).Συνδέουμε το Adafruit Feather M0 LoRa (δασικός σταθμός παρατήρησης) με breadboard το οποίο περιέχει το BME280 που είναι αισθητήρας Θερμοκρασίας, Ατμοσφαιρικής Πίεσης και Υγρασίας.
- Συνδέουμε το άλλο Adafruit Feather M0 LoRa (κέντρο ελέγχου πυροσβεστικής), το οποίο μπορεί να βρίσκεται ακόμα και σε απόσταση 1 km, με breadboard το οποίο έχει 3 χρωματιστά leds και ένα buzzer.
- Φορτώνουμε το πρωτότυπο πρόγραμμα forestobs_v3.ino στο Feather του δασικού σταθμού και το πρωτότυπο πρόγραμμα base_v3.ino στο Feather του κέντρου ελέγχου της πυροσβεστικής.
- Αφού εκπαιδεύσουμε το πρόγραμμά μας με το script classify_raspberry_feather.py να αναγνωρίζει φωτογραφίες και να τις κατατάσσει σε μία από τις τρεις κατηγορίες, του δίνουμε μια καινούργια φωτογραφία:
-Αν δείχνει ένα ασφαλές τοπίο (χωρίς καπνό και φωτιά), το Raspberry Pi επικοινωνεί με το Feather και του δίνει τον κωδικό “safe”. Παράλληλα, το Feather διαβάζει τις μετεωρολογικές πληροφορίες και φτιάχνει ένα data package το οποίο στέλνει ασύρματα στο απομακρυσμένο Feather του κέντρου της Πυροσβεστικής. Εκεί ανάβει ένα πράσινο led και ακούγεται χαμηλός ήχος που σημαίνει ότι όλα είναι καλά.
-Αν δείχνει καπνό, το Raspberry Pi επικοινωνεί με το Feather και του δίνει τον κωδικό “warning”. Παράλληλα, το Feather διαβάζει τις μετεωρολογικές πληροφορίες και φτιάχνει ένα data package το οποίο στέλνει ασύρματα στο απομακρυσμένο Feather του κέντρου της Πυροσβεστικής. Εκεί ανάβει ένα κίτρινο led και ακούγεται μέτριος ήχος που σημαίνει ότι υπάρχει κίνδυνος.
-Αν δείχνει φωτιά, το Raspberry Pi επικοινωνεί με το Feather και του δίνει τον κωδικό “sos”. Παράλληλα, το Feather διαβάζει τις μετεωρολογικές πληροφορίες και φτιάχνει ένα data package το οποίο στέλνει ασύρματα στο απομακρυσμένο Feather του κέντρου της Πυροσβεστικής. Εκεί ανάβει ένα κόκκινο led και ακούγεται οξύς ήχος που σημαίνει φωτιά.
Σημαντικά επιτεύγματα – Προστιθέμενη αξία.
- Εξοικειωθήκαμε με το Machine Learning το οποίο και αξιοποιήσαμε επιτυχώς στην υλοποίηση ενός αυτοματοποιημένου συστήματος προειδοποίησης για δασικές πυρκαγιές. Η χρήση ανοικτού κώδικα μας έδωσε τη δυνατότητα να επέμβουμε στον κώδικα και να τον τροποποιήσουμε κατάλληλα ώστε να επιτύχουμε τους στόχους του project μας και πιο συγκεκριμένα την επικοινωνία του Raspberry Pi με το Feather M0 LoRa.
- Υλοποιήσαμε ασύρματες επικοινωνίες μέσω FM -χαμηλού κόστους και πολύ αξιόπιστες- με τη βοήθεια του Adafruit Feather M0 LoRa. Παρά το μικρό μέγεθος και τη χαμηλή τιμή, δοκιμάσαμε το σύστημα με απλή καλωδιοκεραία 17 cm και είχαμε τέλεια εκπομπή και λήψη σε απόσταση 1 km. Αναμένουμε ότι με μια κεραία Yagi η εμβέλεια θα είναι ακόμα μεγαλύτερη.
- Καταφέραμε για πρώτη φορά σε δικό μας project, να επικοινωνήσουν ένα Raspberry Pi με ένα Feather μέσω των I/O θυρών τους. Μέχρι τώρα δεν τα είχαμε συνδυάσει σε κανένα από τα προηγούμενα project μας. Έτσι είχαμε ταυτόχρονα όλα τα οφέλη από ένα python-esque και από ένα Arduino-esque σύστημα.
Μπορείτε να δείτε τη σελίδα μας στο GitHub εδώ:
https://github.com/Zanneio/-SPACE