Η ιστορία ενός Κορεάτη μαθητή που έλαβε βραβείο από το υπουργείο για ένα σύστημα παρακολούθησης ουρών

Όταν ήμουν στο γυμνάσιο (από τον Μάρτιο έως τον Δεκέμβριο του 2016), με ενόχλησε πολύ η κατάσταση που διαμορφώθηκε στην καφετέρια του σχολείου μας.

Πρόβλημα πρώτο: αναμονή στην ουρά για πολύ καιρό

Τι πρόβλημα παρατήρησα; Σαν αυτό:

Η ιστορία ενός Κορεάτη μαθητή που έλαβε βραβείο από το υπουργείο για ένα σύστημα παρακολούθησης ουρών

Πολλοί μαθητές συγκεντρώθηκαν στον χώρο διανομής και έπρεπε να μείνουν όρθιοι για πολλή ώρα (πέντε με δέκα λεπτά). Φυσικά, αυτό είναι ένα κοινό πρόβλημα και ένα δίκαιο πρόγραμμα εξυπηρέτησης: όσο αργότερα φτάσετε, τόσο αργότερα θα εξυπηρετηθείτε. Έτσι θα μπορούσατε να καταλάβετε γιατί πρέπει να περιμένετε.

Πρόβλημα δεύτερο: άνισες συνθήκες για όσους περιμένουν

Αλλά, φυσικά, δεν είναι μόνο αυτό· έπρεπε επίσης να παρατηρήσω ένα άλλο, πιο σοβαρό πρόβλημα. Τόσο σοβαρό που τελικά αποφάσισα να προσπαθήσω να βρω μια διέξοδο από την κατάσταση. Μαθητές Λυκείου (δηλαδή όλοι όσοι σπουδάζουν τουλάχιστον έναν βαθμό παραπάνω) και καθηγητές πήγαν στη διανομή χωρίς να περιμένουν στην ουρά. Ναι, ναι, και εσύ ως μαθητής δημοτικού δεν μπορούσες να τους πεις τίποτα. Το σχολείο μας είχε μια αρκετά αυστηρή πολιτική όσον αφορά τις σχέσεις μεταξύ των τάξεων.

Ως εκ τούτου, εγώ και οι φίλοι μου, ενώ ήμασταν αρχάριοι, ήρθαμε στην καφετέρια πρώτοι, ετοιμαζόμασταν να πάρουμε φαγητό - και μετά εμφανίστηκαν μαθητές γυμνασίου ή δάσκαλοι και απλώς μας έσπρωξαν στην άκρη (μερικοί, που ήταν πιο ευγενικοί, μας επέτρεψαν να παραμείνουμε η θέση μας στη σειρά). Έπρεπε να περιμένουμε επιπλέον δεκαπέντε με είκοσι λεπτά, αν και φτάσαμε νωρίτερα από όλους τους άλλους.

Περάσαμε ιδιαίτερα άσχημα το μεσημέρι. Κατά τη διάρκεια της ημέρας, στην καφετέρια έτρεχαν όλοι απολύτως (δάσκαλοι, μαθητές, προσωπικό), οπότε για εμάς, ως μαθητές δημοτικού, το μεσημεριανό γεύμα δεν ήταν ποτέ χαρά.

Κοινές λύσεις στο πρόβλημα

Αλλά επειδή οι νεοφερμένοι δεν είχαν άλλη επιλογή, καταλήξαμε σε δύο τρόπους για να μειώσουμε τον κίνδυνο να πεταχθούμε στο πίσω μέρος της γραμμής. Το πρώτο είναι να έρθετε στην τραπεζαρία πολύ νωρίς (δηλαδή κυριολεκτικά πριν καν αρχίσει να σερβίρεται το φαγητό). Το δεύτερο είναι να σκοτώσετε σκόπιμα χρόνο παίζοντας πινγκ-πονγκ ή μπάσκετ και να φτάσετε πολύ αργά (περίπου είκοσι λεπτά μετά την έναρξη του γεύματος).

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

Θα ήταν υπέροχο αν κάποιος μάντης προέβλεψε το μέλλον για εμάς και μας έλεγε πότε ακριβώς να πάμε στην τραπεζαρία, ώστε να μην χρειαστεί να περιμένουμε πολύ. Το πρόβλημα ήταν ότι κάθε μέρα όλα γίνονταν διαφορετικά. Δεν μπορούσαμε απλά να αναλύσουμε μοτίβα και να εντοπίσουμε το γλυκό σημείο. Είχαμε μόνο έναν τρόπο να μάθουμε πώς ήταν τα πράγματα στην τραπεζαρία - να φτάσουμε εκεί με τα πόδια και το μονοπάτι θα μπορούσε να είναι αρκετές εκατοντάδες μέτρα, ανάλογα με το πού βρισκόσαστε. Αν λοιπόν έρθεις, κοιτάξεις τη γραμμή, επιστρέψεις και συνεχίσεις με το ίδιο πνεύμα μέχρι να γίνει σύντομο, θα χάσεις πολύ χρόνο. Γενικά, η ζωή ήταν αηδιαστική για τη δημοτική τάξη και δεν μπορούσε να γίνει τίποτα γι' αυτό.

Eureka – η ιδέα της δημιουργίας ενός συστήματος παρακολούθησης καντίνας

Και ξαφνικά, ήδη από το επόμενο ακαδημαϊκό έτος (2017), είπα στον εαυτό μου: «Κι αν φτιάξουμε ένα σύστημα που θα δείχνει το μήκος της ουράς σε πραγματικό χρόνο (δηλαδή, θα ανιχνεύει μποτιλιάρισμα);» Αν είχα πετύχει, η εικόνα θα ήταν η εξής: μαθητές δημοτικού θα έριχναν απλώς μια ματιά στα τηλέφωνά τους για να λάβουν ενημερωμένα δεδομένα σχετικά με το τρέχον επίπεδο φόρτου εργασίας και θα έβγαζαν συμπεράσματα για το αν έχει νόημα να πάνε τώρα. .

Ουσιαστικά, αυτό το σχήμα εξομάλυνσε την ανισότητα μέσω της πρόσβασης στην πληροφόρηση. Με τη βοήθειά του, οι μαθητές του δημοτικού σχολείου μπορούσαν να επιλέξουν μόνοι τους τι ήταν καλύτερο για αυτούς - να πάνε και να σταθούν στην ουρά (αν δεν ήταν πολύ καιρό) ή να περάσουν χρόνο πιο χρήσιμα και αργότερα να επιλέξουν μια πιο κατάλληλη στιγμή. Με ενθουσίασε πολύ αυτή η σκέψη.

Σχεδιασμός Συστήματος Παρακολούθησης Καντίνας

Τον Σεπτέμβριο του 2017, έπρεπε να υποβάλω ένα έργο για ένα μάθημα αντικειμενοστρεφούς προγραμματισμού και υπέβαλα αυτό το σύστημα ως έργο μου.

Η ιστορία ενός Κορεάτη μαθητή που έλαβε βραβείο από το υπουργείο για ένα σύστημα παρακολούθησης ουρών

Αρχικό σχέδιο συστήματος (Σεπτέμβριος 2017)

Επιλογή εξοπλισμού (Οκτώβριος 2017)

Η ιστορία ενός Κορεάτη μαθητή που έλαβε βραβείο από το υπουργείο για ένα σύστημα παρακολούθησης ουρών

Ένας απλός διακόπτης αφής με αντίσταση έλξης. Σχεδιάστε με πέντε ασπίδες σε τρεις σειρές για να αναγνωρίσετε την ουρά κατά μήκος τριών γραμμών

Παρήγγειλα μόνο πενήντα διακόπτες μεμβράνης, μια μίνι πλακέτα Wemos D1 με βάση το ESP8266 και μερικούς δακτυλίους σφιγκτήρες στους οποίους σχεδίαζα να συνδέσω τα εμαγιέ καλώδια.

Πρωτότυπο και ανάπτυξη (Οκτώβριος 2017)

Ξεκίνησα με ένα breadboard - συναρμολόγησα ένα κύκλωμα σε αυτό και το δοκίμασα. Ήμουν περιορισμένος στον αριθμό των υλικών, οπότε περιορίστηκα σε ένα σύστημα με πέντε ποδαράκια.

Για το λογισμικό που έγραψα σε C++, έθεσα τους εξής στόχους:

  1. Εργαστείτε συνεχώς και στείλτε δεδομένα μόνο κατά τις περιόδους που σερβίρεται το φαγητό (πρωινό, μεσημεριανό, βραδινό, απογευματινό σνακ).
  2. Αναγνωρίστε την κατάσταση ουράς/κυκλοφορίας στην καφετέρια σε τέτοιες συχνότητες ώστε τα δεδομένα να μπορούν στη συνέχεια να χρησιμοποιηθούν σε μοντέλα μηχανικής εκμάθησης (ας πούμε, 10 Hz).
  3. Στείλτε δεδομένα στον διακομιστή με αποτελεσματικό τρόπο (το μέγεθος του πακέτου πρέπει να είναι μικρό) και σε μικρά διαστήματα.

Για να τα πετύχω χρειάστηκε να κάνω τα εξής:

  1. Χρησιμοποιήστε τη μονάδα RTC (Ρολόι πραγματικού χρόνου) για να παρακολουθείτε συνεχώς την ώρα και να προσδιορίζετε πότε σερβίρεται φαγητό στην καφετέρια.
  2. Χρησιμοποιήστε μια μέθοδο συμπίεσης δεδομένων για να καταγράψετε την κατάσταση ασπίδας σε έναν χαρακτήρα. Αντιμετωπίζοντας τα δεδομένα ως δυαδικό κώδικα πέντε bit, αντιστοίχισα τις διάφορες τιμές σε χαρακτήρες ASCII έτσι ώστε να αντιπροσωπεύουν τα στοιχεία δεδομένων.
  3. Χρησιμοποιήστε το ThingSpeak (ένα εργαλείο IoT για αναλυτικά στοιχεία και διαδικτυακά γραφήματα) στέλνοντας αιτήματα HTTP χρησιμοποιώντας τη μέθοδο POST.

Φυσικά, υπήρχαν κάποια σφάλματα. Για παράδειγμα, δεν ήξερα ότι ο τελεστής sizeof( ) επιστρέφει την τιμή 4 για ένα αντικείμενο char * και όχι το μήκος της συμβολοσειράς (επειδή δεν είναι πίνακας και, επομένως, ο μεταγλωττιστής δεν υπολογίζει το μήκος) και εξεπλάγην γιατί τα αιτήματά μου HTTP περιείχαν μόνο τέσσερις χαρακτήρες από όλες τις διευθύνσεις URL!

Επίσης, δεν συμπεριέλαβα παρενθέσεις στο βήμα #define, κάτι που οδήγησε σε απροσδόκητα αποτελέσματα. Λοιπόν ας πούμε:

#define _A    2 * 5 
int a = _A / 3;

Εδώ θα περίμενε κανείς ότι το Α θα ήταν ίσο με 3 (10 / 3 = 3), αλλά στην πραγματικότητα υπολογίστηκε διαφορετικά: 2 (2 * 5/ 3 = 2).

Τέλος, ένα άλλο αξιοσημείωτο σφάλμα με το οποίο αντιμετώπισα ήταν το Reset στο χρονόμετρο Watchdog. Αγωνίστηκα με αυτό το πρόβλημα για πολύ καιρό. Όπως αποδείχθηκε αργότερα, προσπαθούσα να αποκτήσω πρόσβαση στο μητρώο χαμηλού επιπέδου στο τσιπ ESP8266 με λάθος τρόπο (κατά λάθος εισήγαγα μια τιμή NULL για έναν δείκτη σε μια δομή).

Η ιστορία ενός Κορεάτη μαθητή που έλαβε βραβείο από το υπουργείο για ένα σύστημα παρακολούθησης ουρών

Μια ασπίδα ποδιών που σχεδίασα και κατασκεύασα. Την ώρα που τραβήχτηκε η φωτογραφία, είχε ήδη επιβιώσει πέντε εβδομάδες ποδοπατήματος

Υλικό (σανίδες ποδιών)

Για να διασφαλίσω ότι οι ασπίδες θα μπορούσαν να επιβιώσουν στις σκληρές συνθήκες της καντίνας, τους έθεσα τις ακόλουθες απαιτήσεις:

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

Για να ανταποκριθώ σε αυτές τις απαιτήσεις, στάθηκα σε ένα σχέδιο δύο στρωμάτων - ακρυλικό κομμένο με λέιζερ για τη βάση και το επάνω κάλυμμα και φελλό ως προστατευτικό στρώμα.

Έκανα τη διάταξη της ασπίδας στο AutoCAD. διαστάσεις – 400 επί 400 χιλιοστά.

Η ιστορία ενός Κορεάτη μαθητή που έλαβε βραβείο από το υπουργείο για ένα σύστημα παρακολούθησης ουρών

Αριστερά είναι το σχέδιο που βγήκε στην παραγωγή. Στα δεξιά υπάρχει μια επιλογή με σύνδεση τύπου Lego

Παρεμπιπτόντως, τελικά εγκατέλειψα το σχέδιο του δεξιού χεριού γιατί με ένα τέτοιο σύστημα στερέωσης αποδείχθηκε ότι θα έπρεπε να υπάρχουν 40 εκατοστά μεταξύ των ασπίδων, πράγμα που σημαίνει ότι δεν μπορούσα να καλύψω την απαιτούμενη απόσταση (πάνω από δέκα μέτρα).

Η ιστορία ενός Κορεάτη μαθητή που έλαβε βραβείο από το υπουργείο για ένα σύστημα παρακολούθησης ουρών

Η ιστορία ενός Κορεάτη μαθητή που έλαβε βραβείο από το υπουργείο για ένα σύστημα παρακολούθησης ουρών

Για να συνδέσω όλους τους διακόπτες χρησιμοποίησα καλώδια εμαγιέ - συνολικά πήραν περισσότερα από 70 μέτρα! Τοποθέτησα έναν διακόπτη μεμβράνης στο κέντρο κάθε ασπίδας. Δύο κλιπ προεξείχαν από τις πλαϊνές υποδοχές - αριστερά και δεξιά του διακόπτη.

Λοιπόν, για αδιαβροχοποίηση χρησιμοποίησα ηλεκτρική ταινία. Πολλή ηλεκτρική ταινία.

Και όλα λειτούργησαν!

Περίοδος από τις XNUMX Νοεμβρίου έως τις δωδέκατες Δεκεμβρίου

Η ιστορία ενός Κορεάτη μαθητή που έλαβε βραβείο από το υπουργείο για ένα σύστημα παρακολούθησης ουρών

Φωτογραφία του συστήματος - και οι πέντε ασπίδες είναι ορατές εδώ. Στα αριστερά είναι τα ηλεκτρονικά (D1-mini / Bluetooth / RTC)

Στις XNUMX Νοεμβρίου στις οκτώ το πρωί (ώρα πρωινού), το σύστημα άρχισε να συλλέγει τρέχοντα δεδομένα σχετικά με την κατάσταση στην τραπεζαρία. Δεν πίστευα στα μάτια μου. Μόλις πριν από δύο μήνες σκιαγραφούσα το γενικό σχέδιο, καθόμουν στο σπίτι με τις πιτζάμες μου, και εδώ είμαστε, όλο το σύστημα λειτουργεί χωρίς προβλήματα... ή όχι.

Σφάλματα λογισμικού κατά τη διάρκεια της δοκιμής

Φυσικά, υπήρχαν πολλά σφάλματα στο σύστημα. Εδώ είναι αυτά που θυμάμαι.

Το πρόγραμμα δεν έλεγξε για διαθέσιμα σημεία Wi-Fi κατά την προσπάθεια σύνδεσης του προγράμματος-πελάτη στο ThingSpeak API. Για να διορθώσω το σφάλμα, πρόσθεσα ένα επιπλέον βήμα για να ελέγξω τη διαθεσιμότητα Wi-Fi.

Στη λειτουργία εγκατάστασης, κάλεσα επανειλημμένα το "WiFi.begin" μέχρι να εμφανιστεί μια σύνδεση. Αργότερα ανακάλυψα ότι η σύνδεση δημιουργείται από το υλικολογισμικό ESP8266 και η λειτουργία έναρξης χρησιμοποιείται μόνο κατά τη ρύθμιση του Wi-Fi. Διόρθωσα την κατάσταση καλώντας τη λειτουργία μόνο μία φορά, κατά τη διάρκεια της εγκατάστασης.

Ανακάλυψα ότι η διεπαφή γραμμής εντολών που δημιούργησα (προοριζόταν για τη ρύθμιση της ώρας, την αλλαγή ρυθμίσεων δικτύου) δεν λειτουργεί σε κατάσταση ηρεμίας (δηλαδή εκτός του πρωινού, του μεσημεριανού γεύματος, του δείπνου και του απογευματινού τσαγιού). Είδα επίσης ότι όταν δεν υπάρχει καταγραφή, ο εσωτερικός βρόχος επιταχύνεται υπερβολικά και τα σειριακά δεδομένα διαβάζονται πολύ γρήγορα. Επομένως, έβαλα μια καθυστέρηση, ώστε το σύστημα να περιμένει να φτάσουν πρόσθετες εντολές όταν αναμένονται.

Ωδή στον φύλακα

Α, και κάτι ακόμα σχετικά με αυτό το πρόβλημα με το χρονόμετρο παρακολούθησης - το έλυσα ακριβώς στο στάδιο της δοκιμής σε συνθήκες "πεδίου". Χωρίς υπερβολή, αυτό ήταν το μόνο που σκεφτόμουν για τέσσερις ημέρες. Κάθε διάλειμμα (διάρκειας δέκα λεπτών) έτρεχα στην καφετέρια μόνο για να δοκιμάσω τη νέα έκδοση του κώδικα. Και όταν άνοιξε η διανομή, κάθισα στο πάτωμα για μια ώρα, προσπαθώντας να πιάσω το ζωύφιο. Δεν σκέφτηκα καν το φαγητό! Ευχαριστώ για όλα τα καλά πράγματα, ESP8266 Watchdog!

Πώς κατάλαβα το WDT

Η ιστορία ενός Κορεάτη μαθητή που έλαβε βραβείο από το υπουργείο για ένα σύστημα παρακολούθησης ουρών

Απόσπασμα κώδικα με το οποίο δυσκολευόμουν

Βρήκα ένα πρόγραμμα, ή μάλλον μια επέκταση για το Arduino, που αναλύει τη δομή δεδομένων του λογισμικού όταν συμβαίνει μια επαναφορά Wdt, έχοντας πρόσβαση στο αρχείο ELF του μεταγλωττισμένου κώδικα (συσχετίσεις μεταξύ συναρτήσεων και δεικτών). Όταν έγινε αυτό, αποδείχθηκε ότι το σφάλμα μπορεί να εξαλειφθεί ως εξής:

Η ιστορία ενός Κορεάτη μαθητή που έλαβε βραβείο από το υπουργείο για ένα σύστημα παρακολούθησης ουρών

Ανάθεμα! Λοιπόν, ποιος ήξερε ότι η διόρθωση σφαλμάτων σε ένα σύστημα σε πραγματικό χρόνο ήταν τόσο δύσκολη! Ωστόσο, αφαίρεσα το σφάλμα και αποδείχθηκε ότι ήταν ένα ηλίθιο σφάλμα. Λόγω της απειρίας μου, έγραψα έναν βρόχο while στον οποίο ο πίνακας ξεπέρασε τα όρια. Ουφ! (το index++ και το ++index είναι δύο μεγάλες διαφορές).

Η ιστορία ενός Κορεάτη μαθητή που έλαβε βραβείο από το υπουργείο για ένα σύστημα παρακολούθησης ουρών

Προβλήματα με το υλικό κατά τη διάρκεια της δοκιμής

Φυσικά, ο εξοπλισμός, δηλαδή οι ασπίδες ποδιών, απείχε πολύ από το ιδανικό. Όπως θα περίμενε κανείς, ένας από τους διακόπτες έχει κολλήσει.

Η ιστορία ενός Κορεάτη μαθητή που έλαβε βραβείο από το υπουργείο για ένα σύστημα παρακολούθησης ουρών

Στις XNUMX Νοεμβρίου, κατά τη διάρκεια του γεύματος, κόλλησε ο διακόπτης στον τρίτο πίνακα

Παραπάνω παρείχα ένα στιγμιότυπο οθόνης ενός διαδικτυακού γραφήματος από τον ιστότοπο του ThingSpeak. Όπως μπορείτε να δείτε, κάτι συνέβη γύρω στις 12:25 και μετά απέτυχε η ασπίδα νούμερο τρία. Ως αποτέλεσμα, το μήκος της ουράς προσδιορίστηκε σε 3 (η τιμή είναι 3 * 100), ακόμη και όταν στην πραγματικότητα δεν έφτασε στην τρίτη ασπίδα. Η λύση ήταν ότι πρόσθεσα περισσότερη επένδυση (ναι, κολλητική ταινία) για να δώσω στον διακόπτη περισσότερο χώρο.

Μερικές φορές το σύστημά μου ξεριζωνόταν κυριολεκτικά όταν το καλώδιο πιάστηκε στην πόρτα. Καρότσια και πακέτα μεταφέρονταν μέσω αυτής της πόρτας στην τραπεζαρία, έτσι ώστε να κουβαλάει το σύρμα μαζί της, κλείνοντάς το και τραβώντας το έξω από την πρίζα. Σε τέτοιες περιπτώσεις, παρατήρησα μια απροσδόκητη αστοχία στη ροή δεδομένων και μάντεψα ότι το σύστημα είχε αποσυνδεθεί από την πηγή ρεύματος.

Διάδοση πληροφοριών για το σύστημα σε όλο το σχολείο

Όπως ήδη αναφέρθηκε, χρησιμοποίησα το ThingSpeak API, το οποίο οπτικοποιεί δεδομένα στον ιστότοπο με τη μορφή γραφημάτων, κάτι που είναι πολύ βολικό. Σε γενικές γραμμές, βασικά μόλις δημοσίευσα έναν σύνδεσμο για το πρόγραμμά μου στην ομάδα του σχολείου στο Facebook (Έψαχνα αυτή τη δημοσίευση για μισή ώρα και δεν μπορούσα να τη βρω - πολύ περίεργο). Βρήκα όμως μια ανάρτηση στο My Band, μια σχολική κοινότητα, με ημερομηνία 2017 Νοεμβρίου XNUMX:

Η ιστορία ενός Κορεάτη μαθητή που έλαβε βραβείο από το υπουργείο για ένα σύστημα παρακολούθησης ουρών

Η ιστορία ενός Κορεάτη μαθητή που έλαβε βραβείο από το υπουργείο για ένα σύστημα παρακολούθησης ουρών

Η αντίδραση ήταν άγρια!

Δημοσίευσα αυτές τις αναρτήσεις για να προκαλέσω το ενδιαφέρον για το έργο μου. Ωστόσο, ακόμη και μόνο να τα κοιτάξετε είναι αρκετά διασκεδαστικό από μόνο του. Ας υποθέσουμε ότι μπορείτε να δείτε ξεκάθαρα εδώ ότι ο αριθμός των ατόμων αυξήθηκε απότομα στις 6:02 και ουσιαστικά έπεσε στο μηδέν κατά 6:10.

Η ιστορία ενός Κορεάτη μαθητή που έλαβε βραβείο από το υπουργείο για ένα σύστημα παρακολούθησης ουρών Η ιστορία ενός Κορεάτη μαθητή που έλαβε βραβείο από το υπουργείο για ένα σύστημα παρακολούθησης ουρών

Παραπάνω έχω επισυνάψει μερικά γραφήματα που σχετίζονται με το μεσημεριανό και το απογευματινό τσάι. Είναι ενδιαφέρον να σημειωθεί ότι η αιχμή του φόρτου εργασίας το μεσημέρι σχεδόν πάντα εμφανιζόταν στις 12:25 (η ουρά έφτασε στην πέμπτη ασπίδα). Και για ένα απογευματινό σνακ είναι γενικά ασυνήθιστο να έχει μεγάλο πλήθος κόσμου (η ουρά είναι το πολύ μία ταμπλό).

Ξέρεις τι είναι αστείο; Αυτό το σύστημα είναι ακόμα ζωντανό (https://thingspeak.com/channels/346781)! Έκανα σύνδεση στον λογαριασμό που χρησιμοποιούσα πριν και είδα αυτό:

Η ιστορία ενός Κορεάτη μαθητή που έλαβε βραβείο από το υπουργείο για ένα σύστημα παρακολούθησης ουρών

Στο παραπάνω γράφημα, είδα ότι την τρίτη Δεκεμβρίου η εισροή ανθρώπων ήταν σημαντικά μικρότερη. Και δεν είναι περίεργο - ήταν Κυριακή. Την ημέρα αυτή, σχεδόν όλοι πηγαίνουν κάπου, γιατί στις περισσότερες περιπτώσεις μόνο την Κυριακή μπορείτε να φύγετε από το σχολείο. Είναι σαφές ότι δεν θα δείτε ζωντανή ψυχή στην καφετέρια το Σαββατοκύριακο.

Πώς έλαβα το πρώτο βραβείο από το Υπουργείο Παιδείας της Κορέας για το έργο μου

Όπως μπορείτε να δείτε και μόνοι σας, δεν δούλεψα σε αυτό το έργο επειδή προσπαθούσα να κερδίσω κάποιου είδους βραβείο ή αναγνώριση. Ήθελα απλώς να χρησιμοποιήσω τις δεξιότητές μου για να λύσω ένα χρόνιο πρόβλημα που αντιμετώπιζα στο σχολείο.

Ωστόσο, η διατροφολόγος του σχολείου μας, η Miss O, με την οποία ήρθα πολύ κοντά ενώ σχεδίαζα και ανέπτυζα το έργο μου, μια μέρα με ρώτησε αν ήξερα για έναν διαγωνισμό για ιδέες για καφετέρια. Τότε σκέφτηκα ότι ήταν κάτι περίεργη ιδέα να συγκρίνω ιδέες για την τραπεζαρία. Διάβασα όμως το ενημερωτικό φυλλάδιο και έμαθα ότι το έργο πρέπει να υποβληθεί μέχρι τις 24 Νοεμβρίου! Λοιπόν λοιπόν. Γρήγορα οριστικοποίησα το concept, τα δεδομένα και τα γραφικά και έστειλα την αίτηση.

Αλλαγές στην αρχική ιδέα του διαγωνισμού

Παρεμπιπτόντως, το σύστημα που πρότεινα τελικά ήταν ελαφρώς διαφορετικό από αυτό που ήδη εφαρμόστηκε. Ουσιαστικά, προσάρμοσα την αρχική μου μέθοδο (μέτρηση μήκους ουράς σε πραγματικό χρόνο) για πολύ μεγαλύτερα κορεατικά σχολεία. Για σύγκριση: στο σχολείο μας υπάρχουν τριακόσιοι μαθητές, και σε κάποια άλλα τόσα άτομα σε μία μόνο τάξη! Έπρεπε να καταλάβω πώς να κλιμακώσω το σύστημα.

Ως εκ τούτου, πρότεινα μια ιδέα που βασιζόταν περισσότερο στον «χειροκίνητο» έλεγχο. Σήμερα, τα κορεατικά σχολεία έχουν ήδη εισαγάγει ένα πρόγραμμα γευμάτων για όλες τις τάξεις, το οποίο τηρείται αυστηρά, έτσι έφτιαξα ένα διαφορετικό πλαίσιο τύπου «σήμα-απόκρισης». Η ιδέα εδώ ήταν ότι όταν η ομάδα που επισκεπτόταν την καφετέρια μπροστά σας έφτασε σε ένα ορισμένο όριο στο μήκος της γραμμής (δηλαδή, η γραμμή έγινε σύντομη), θα σας έστελνε χειροκίνητα ένα σήμα χρησιμοποιώντας ένα κουμπί ή διακόπτη στον τοίχο. . Το σήμα θα μεταδοθεί στην οθόνη της τηλεόρασης ή μέσω λαμπτήρων LED.

Απλώς ήθελα πολύ να λύσω ένα πρόβλημα που προέκυψε σε όλα τα σχολεία της χώρας. Ενισχύθηκα ακόμη περισσότερο στην πρόθεσή μου όταν άκουσα μια ιστορία από τη Miss O - θα σας πω τώρα. Αποδεικνύεται ότι σε ορισμένα μεγάλα σχολεία η γραμμή εκτείνεται πέρα ​​από την καφετέρια, στο δρόμο για είκοσι έως τριάντα μέτρα, ακόμη και το χειμώνα, γιατί κανείς δεν μπορεί να οργανώσει σωστά τη διαδικασία. Και μερικές φορές συμβαίνει ότι για αρκετά λεπτά κανείς δεν εμφανίζεται καθόλου στην τραπεζαρία - και αυτό είναι επίσης κακό. Σε σχολεία με μεγάλο αριθμό μαθητών, το προσωπικό μετά βίας έχει χρόνο να εξυπηρετήσει τους πάντες, ακόμα κι αν δεν χαθεί ούτε ένα λεπτό από το χρόνο του γεύματος. Επομένως, όσοι φτάσουν τελευταίοι στη διανομή (συνήθως μαθητές δημοτικού) απλά δεν έχουν αρκετό χρόνο για φαγητό.

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

Μήνυμα ότι κέρδισα το πρώτο βραβείο!

Με λίγα λόγια, με κάλεσαν να έρθω και να παρουσιάσω το έργο μου σε κυβερνητικούς αξιωματούχους. Έβαλα λοιπόν όλα τα ταλέντα μου στο Power Point να δουλέψουν και ήρθα και παρουσίασα!

Η ιστορία ενός Κορεάτη μαθητή που έλαβε βραβείο από το υπουργείο για ένα σύστημα παρακολούθησης ουρών

Έναρξη της παρουσίασης (άκρα αριστερά - υπουργός)

Ήταν μια ενδιαφέρουσα εμπειρία - μόλις βρήκα κάτι για το πρόβλημα της καφετέριας και κατά κάποιο τρόπο κατέληξα μεταξύ των νικητών του διαγωνισμού. Ακόμα και όρθιος στη σκηνή, σκεφτόμουν: «Χμ, τι κάνω εδώ;» Αλλά γενικά, αυτό το έργο μου έφερε μεγάλο όφελος - έμαθα πολλά για την ανάπτυξη ενσωματωμένων συστημάτων και την υλοποίηση έργων στην πραγματική ζωή. Λοιπόν, πήρα ένα βραβείο, φυσικά.

Συμπέρασμα

Υπάρχει κάποια ειρωνεία εδώ: ανεξάρτητα από το πόσο συμμετείχα σε κάθε είδους διαγωνισμούς και εκθέσεις επιστήμης στις οποίες είχα εγγραφεί σκόπιμα, δεν προέκυψε τίποτα καλό. Και μετά με βρήκε η ευκαιρία και μου έδωσε καλά αποτελέσματα.

Αυτό με έκανε να σκεφτώ τους λόγους που με παρακινούν να αναλάβω έργα. Γιατί ξεκινώ τη δουλειά - για να «κερδίσω» ή για να λύσω ένα πραγματικό πρόβλημα στον κόσμο γύρω μου; Εάν το δεύτερο κίνητρο λειτουργεί στην περίπτωσή σας, σας ενθαρρύνω θερμά να μην εγκαταλείψετε το έργο. Με αυτήν την επιχειρηματική προσέγγιση, μπορείτε να συναντήσετε απροσδόκητες ευκαιρίες στην πορεία και δεν θα αισθανθείτε πίεση από την ανάγκη να κερδίσετε - το κύριο κίνητρό σας θα είναι το πάθος για την επιχείρησή σας.

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

Κάθε φορά που σκέφτομαι αυτή την εμπειρία, είμαι κάπως περήφανος για τον εαυτό μου. Δεν μπορώ να εξηγήσω γιατί, αλλά η διαδικασία υλοποίησης του έργου μου έφερε απλώς μεγάλη χαρά και το έπαθλο ήταν ένα επιπλέον μπόνους. Επιπλέον, χάρηκα που κατάφερα να λύσω για τους συμμαθητές μου ένα πρόβλημα που τους κατέστρεφε καθημερινά τη ζωή. Μια μέρα ένας από τους μαθητές ήρθε κοντά μου και μου είπε: «Το σύστημά σου είναι πολύ βολικό». Ήμουν στον έβδομο ουρανό!
Νομίζω ότι ακόμη και χωρίς βραβεία θα ένιωθα περήφανος για την εξέλιξή μου και μόνο για αυτό. Ίσως ήταν να βοηθήσω άλλους που μου έφερε τέτοια ικανοποίηση... γενικά, αγαπώ τα έργα.

Τι ήλπιζα να πετύχω με αυτό το άρθρο

Ελπίζω ότι διαβάζοντας αυτό το άρθρο μέχρι το τέλος, εμπνεύστηκατε να κάνετε κάτι που θα ωφελήσει την κοινότητά σας ή ακόμα και μόνο τον εαυτό σας. Σας ενθαρρύνω να χρησιμοποιήσετε τις δεξιότητές σας (ο προγραμματισμός είναι σίγουρα μία από αυτές, αλλά υπάρχουν και άλλες) για να αλλάξετε την πραγματικότητα γύρω σας προς το καλύτερο. Μπορώ να σας διαβεβαιώσω ότι η εμπειρία που θα αποκτήσετε στη διαδικασία δεν συγκρίνεται με τίποτα άλλο.

Μπορεί επίσης να ανοίξει μονοπάτια που δεν περιμένατε - αυτό συνέβη σε μένα. Σε παρακαλώ λοιπόν, κάνε αυτό που αγαπάς και άφησε το στίγμα σου στον κόσμο! Η ηχώ μιας μόνο φωνής μπορεί να ταρακουνήσει ολόκληρο τον κόσμο, γι' αυτό πιστέψτε στον εαυτό σας.

Ακολουθούν ορισμένοι σύνδεσμοι που σχετίζονται με το έργο:

Πηγή: www.habr.com

Προσθέστε ένα σχόλιο