background image

Σχεδιασμός και κατασκευή ενός υβριδικού αμυντικού αυτοματοποιημένου ρομποτικού συστήματος 

 

 

 

129 

Κάθε φορά που γίνεται μια αναγνώριση, επιτυχημένη ή αποτυχημένη, το πρόγραμμα την 

καταγράφει σε ένα αρχείο με όνομα “logfile.txt”. Το αρχείο αυτό χρησιμοποιείται αφ’ ενός 

για ετεροχρονισμένο έλεγχο από το χρήστη σχετικά με το ποιος και  πότε εισήλθε στο χώρο 

φύλαξης και αφ’ ετέρου για τον απομακρυσμένο έλεγχο του χώρου μέσα από την ιστοσελίδα. 

Για  τον  ίδιο  λόγο,  όταν  γίνεται  ανίχνευση  ενός  προσώπου,  πριν  από  την  αναγνώριση, 

αποθηκεύεται  μια  φωτογραφία  σε  συγκεκριμένο  φάκελο  του  συστήματος.  Οι  φωτογραφίες 

αποθηκεύονται  με  όνομα  την  ημερομηνία  και  την  ώρα  λήψης  τους.  Επιπροσθέτως,  και 

ανεξάρτητα  από  τις  υπόλοιπες  διεργασίες  που  λαμβάνουν  χώρα,  γίνεται  λήψη  μιας 

φωτογραφίας  κάθε  ένα  δευτερόλεπτο,  η  οποία  χρησιμοποιείται  για  αναπαραγωγή  στην 

ιστοσελίδα. Ο τρόπος αυτός επιλέχθηκε καθώς η απευθείας μετάδοση ήταν αρκετά αργή και 

το πρόγραμμα καθυστερούσε τις υπόλοιπες λειτουργίες του. 

Η  εφαρμογή  επίσης  έχει  τη  δυνατότητα  φωνητικής  ενημέρωσης  σε  περιπτώσεις  όπου 

εισέλθει κάποιος στο χώρο φύλαξης. Σε περιπτώσεις όπου η αναγνώριση είναι επιτυχημένη, 

ακούγεται  ένα  ηχητικό  μήνυμα  το  οποίο  καλωσορίζει  το  χρήστη  στο  χώρο.  Σε  αντίθετη 

περίπτωση  ακούγεται  ήχος ο οποίος  ενημερώνει τους  παρευρισκόμενους στο  χώρο ότι  έχει 

γίνει εσφαλμένη αναγνώριση. Για την παραγωγή των ηχητικών μηνυμάτων χρησιμοποιήθηκε 

η  βιβλιοθήκη  ήχου  Fmod  [23].  Η  χρήση  της  συγκεκριμένης  βιβλιοθήκης  ήχου  δεν  είναι 

τυχαία,  καθώς  μπορεί  να  χρησιμοποιηθεί  από  συστήματα  με  διαφορετικούς  επεξεργαστές, 

όπως arm.   

Όσον  αφορά  τα  τεχνικά  χαρακτηριστικά,  η  πλήρης  έκδοση  καλύπτει  την  χρήση 

οποιασδήποτε κάμερας συνδέσει ο χρήστης στον υπολογιστή του. Εκτός από την κάμερα, ο 

χρήστης μπορεί να επιλέξει χειροκίνητα τη θύρα στην οποία θα συνδεθεί το Arduino. Στόχος 

μου  κατά  την  παραγωγή  του  προγράμματος  ήταν  να  μπορεί  το  τελικό  πρόγραμμα  να 

ικανοποιεί  τις  απαιτήσεις  όλων  των  χρηστών  και  να  χαρακτηρίζεται  από  ευκολία, 

δυναμικότητα  και  επεκτασιμότητα.  Για  το  λόγο  αυτό,  όλες  οι  παραπάνω  παράμετροι 

εισάγονται ως παράμετροι κλήσης κατά την εκτέλεση του προγράμματος, κάτι το οποίο θα να 

λυθεί εκτενέστερα στο επόμενο κεφάλαιο.  

Για να γίνει πιο κατανοητός ο τρόπος με τον οποίο λειτουργούν και τα δύο προγράμματα, 

αρκεί κανείς να δει τα παρακάτω διαγράμματα ροής (Σχήμα 4, Σχήμα 5). Το πρώτο από τα 

διαγράμματα  αναπαριστά  τη  λειτουργία  της  πλήρους  έκδοσης  και  έπειτα  παρουσιάζεται  η 

λειτουργία της δεύτερης έκδοσης.