Πίνακας περιεχομένων:

Συνδεδεμένη κούπα: 5 βήματα (με εικόνες)
Συνδεδεμένη κούπα: 5 βήματα (με εικόνες)

Βίντεο: Συνδεδεμένη κούπα: 5 βήματα (με εικόνες)

Βίντεο: Συνδεδεμένη κούπα: 5 βήματα (με εικόνες)
Βίντεο: 7 ΤΡΟΦΕΣ Που Δεν Πρέπει Να Τρώτε Και Μπορούν Να Σκοτώσουν! 2024, Ιούλιος
Anonim
Συνδεδεμένη κούπα
Συνδεδεμένη κούπα

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

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

Η ανάλυση συναισθημάτων των μη αναγνωσμένων μηνυμάτων ηλεκτρονικού ταχυδρομείου πραγματοποιείται από τις υπηρεσίες IBM Watson IoT. Ένας πίνακας Arduino MKR1000 χρησιμοποιείται για τον έλεγχο της λωρίδας LED και τη σύνδεση με υπηρεσίες IBM Watson IoT μέσω WiFi χρησιμοποιώντας πρωτόκολλο MQTT.

Βήμα 1: Στοιχεία υλικού

Συστατικά υλικού
Συστατικά υλικού
Συστατικά υλικού
Συστατικά υλικού

Πίνακας ανάπτυξης υλικού:

Arduino MKR1000

Hardware BOM

  • Αντιστάσεις 3x 100ohm
  • 3x Τρανζίστορ TIP122 NPN
  • 1x βύσμα τροφοδοσίας
  • 1x RGB LED Light Strip (AglaiaLT-S2)
  • Ανταλλακτικά καλώδια

Η καλωδίωση για τον έλεγχο της λωρίδας LED με το Arduino MKR1000 βασίζεται σε αυτό το σεμινάριο:

Βήμα 2: Δημιουργήστε έναν λογαριασμό στο IBM Watson IoT και καταχωρήστε τη συσκευή σας

Για να δημιουργήσετε μια εφαρμογή cloud που θα μπορεί να πραγματοποιεί ανάλυση συναισθημάτων μη αναγνωσμένων μηνυμάτων ηλεκτρονικού ταχυδρομείου με το IBM Watson IoT, είναι απαραίτητο πρώτα να υπογράψετε έναν δωρεάν δοκιμαστικό λογαριασμό (https://www.ibm.com/internet-of-things/trial/). Το δεύτερο βήμα είναι να δημιουργήσετε μια εφαρμογή για την πλατφόρμα Watson IoT και να καταχωρίσετε τον πίνακα Arduino MKR1000. αυτή είναι τώρα μια τυπική διαδικασία για τη σύνδεση πλατφορμών υλικού με IBM Watson IoT και τεκμηριώνεται καλά στους οδηγούς γρήγορης εκκίνησης της IBM:

console.ng.bluemix.net/docs/services/IoT/i…

Η IBM παρέχει επίσης πρότυπα boilerplate για IoT τα οποία επιταχύνουν αυτά τα βήματα περιορίζοντας τις υπηρεσίες και τους χρόνους εκτέλεσης που απαιτούνται για την εκκίνηση της εφαρμογής σας IoT. Το IoT for Electronics Starter Boilerplate ήταν αυτό που χρησιμοποιήθηκε για αυτό το έργο.

Οδηγός εγγραφής συσκευής βήμα προς βήμα παρέχεται εδώ:

console.ng.bluemix.net/docs/services/IoT/i…

Σημειώστε το org-id, το διαπιστευτήριο, το αναγνωριστικό συσκευής και τον τύπο συσκευής, μόλις ολοκληρώσετε τη διαδικασία εγγραφής της συσκευής, καθώς αυτά θα χρειαστούν για τη διαμόρφωση του σκίτσου Arduino και της εφαρμογής NodeRED.

Βήμα 3: Αναπτύξτε την εφαρμογή Node-RED για ανάλυση συναισθημάτων

Αναπτύξτε την εφαρμογή Node-RED για ανάλυση συναισθημάτων
Αναπτύξτε την εφαρμογή Node-RED για ανάλυση συναισθημάτων

Το NodeRED είναι ένα οπτικό εργαλείο που μπορεί να χρησιμοποιηθεί στην πλατφόρμα IBM Watson IoT για τη δημιουργία συσκευών καλωδίωσης εφαρμογών και υπηρεσιών Cloud (nodered.org).

Η εφαρμογή NodeRED που αναπτύχθηκε είναι πολύ απλή και αποτελείται από δύο ροές, μία για ανάλυση συναισθημάτων ηλεκτρονικού ταχυδρομείου και μία άλλη για καταγραφή της κατάστασης του Arduino MKR1000 (βαθμολογία συναισθημάτων που λαμβάνεται από τη συσκευή και τον συνδυασμό RGB για το LED που εμφανίζεται).

Η πρώτη ροή συνδέεται περιοδικά με έναν λογαριασμό ηλεκτρονικού ταχυδρομείου και λαμβάνει τα τελευταία μη αναγνωσμένα μηνύματα ηλεκτρονικού ταχυδρομείου. η διαμόρφωση εξαρτάται από τον λογαριασμό email σας. Κάθε μήνυμα ηλεκτρονικού ταχυδρομείου που λαμβάνεται αποστέλλεται στο πλαίσιο ανάλυσης συναισθημάτων, το οποίο επιστρέφει μια βαθμολογία (μικρότερη ή πάνω από 0) με βάση το αρνητικό/θετικό περιεχόμενο του αναλυμένου κειμένου (δείτε πληροφορίες https://github.com/thisandagain/sentiment/blob/mas… για περισσότερες λεπτομέρειες). Η βαθμολογία συναισθήματος αποστέλλεται σε ένα απλό πλαίσιο συνάρτησης που υπολογίζει τον μέσο όρο των τελευταίων δεδομένων που έλαβε και ωθεί το αποτέλεσμα στον επόμενο κόμβο. Τέλος, το τελευταίο μπλοκ στέλνει ένα μήνυμα που περιέχει την τιμή της βαθμολογίας συναισθήματος στη συνδεδεμένη συσκευή χρησιμοποιώντας πρωτόκολλο MQTT. αυτό το μπλοκ πρέπει να διαμορφωθεί με τα διαπιστευτήρια που δημιουργούνται κατά τη διαδικασία εγγραφής συσκευής.

Η δεύτερη ροή χρησιμοποιείται για σκοπούς δοκιμής για να απεικονίσει την κατάσταση του πίνακα Arduino. συνδέει έναν κόμβο IoT εισόδου για τον πίνακα Arduino στην ιστοσελίδα γρήγορης εκκίνησης της IBM για οπτικοποίηση δεδομένων (https://quickstart.internetofthings.ibmcloud.com/). Ο κόμβος IoT εισόδου έχει διαμορφωθεί όπως παραπάνω για να λαμβάνει μηνύματα κατάστασης από τον πίνακα Arduino χρησιμοποιώντας τα πρωτόκολλα MQTT. Τα μηνύματα κατάστασης περιέχουν τη βαθμολογία συναισθημάτων και τον συνδυασμό RGB για LED που χρησιμοποιείται επί του παρόντος στο Arduino.

Η εφαρμογή Node-RED εξήχθη στο clipbord και προσαρτήθηκε εδώ ως αρχείο.txt.

Βήμα 4: Σκίτσο Arduino

Το σκίτσο του Arduino βασίζεται στη βιβλιοθήκη πελατών MQTT του Gilberto Conti (https://github.com/256dpi/arduino-mqtt) η οποία τροποποιήθηκε για σύνδεση με IoM Watson IoT. Ο κώδικας αποτελείται από τρία μέρη:

  • setup (): σύνδεση με WiFi AP και IBM MQTT broker. καταχωρίστε μια επανάκληση για μηνύματα που λαμβάνονται από το IBM Watson IoT
  • βρόχος (): ρυθμίστε τον πείρο RGB για τον έλεγχο των φώτων LED. αποστολή στο IBM Watson IoT της κατάστασης της συσκευής (RGB και βαθμολογία συναισθημάτων)
  • messageReceived (…): επανάκληση που καλείται κατά τη λήψη μηνυμάτων με βαθμολογία συναισθημάτων από την εφαρμογή Watson IoT. Η βαθμολογία αντιστοιχεί στην τιμή RGB (αρνητική: κόκκινη, θετική: πράσινη).

Διαμορφώστε τον κώδικα ως εξής, με βάση τα διαπιστευτήρια που δημιουργήθηκαν κατά τη διαδικασία εγγραφής της συσκευής (org-id, τύπος συσκευής, αναγνωριστικό συσκευής):

  • MQTT_MODE = IBM_API_KEY
  • char *client_id = "d: your-org-id: your-device-type: your-device-id";
  • char *user_id = "use-token-auth";
  • char *pwd = "your-pwd";
  • char *ibm_hostname = "your-org-id.messaging.internetofthings.ibmcloud.com";

Η εφαρμογή εγγράφεται στο θέμα iot-2/cmd/+/fmt/string και messageReceptived callback αναλύει τα μηνύματα για το συναίσθημα τύπου εντολών.

Τα μηνύματα κατάστασης δημοσιεύονται στο θέμα: iot-2/evt/status/fmt/json

Σημείωση: θυμηθείτε να ενημερώσετε το πιστοποιητικό SSL για MKR1000. ακολουθήστε τις οδηγίες εδώ: https://github.com/arduino-libraries/WiFi101-Firm… και εισαγάγετε το ibm_hostname σας για λήψη και εγκατάσταση στο MKR1000 των πιστοποιητικών ρίζας.

Επισυνάπτεται το σκίτσο του Arduino.

Βήμα 5: Συνδέστε την κούπα σας

Συνδέστε την κούπα σας
Συνδέστε την κούπα σας
Συνδέστε την κούπα σας
Συνδέστε την κούπα σας

Θα ήταν ωραίο να κάνουμε περισσότερη ενσωμάτωση ηλεκτρονικών και LED στην κούπα, αλλά για αυτό το έργο απλώς στερέωσα την κολλητική λωρίδα LED γύρω από την κούπα όπως φαίνεται στην εικόνα.

Στη συνέχεια, συνδέω τη λωρίδα LED στο κύκλωμα του breadboard, τροφοδοτώ το LED και το Arduino MKR1000 και περιμένω να λάβω μηνύματα με βαθμολογία συναισθημάτων από την εφαρμογή NodeRED. Στην εικόνα, για παράδειγμα, δοκίμασα στέλνοντας στον λογαριασμό μου μηνύματα ηλεκτρονικού ταχυδρομείου που περιέχουν κείμενο όπως "Εξαιρετική δουλειά !, Το έργο σας είναι υπέροχο!" και τα λοιπά.

Είναι επίσης δυνατό να ελέγξετε στη δημόσια ιστοσελίδα της IBM Quickstart (https://quickstart.internetofthings.ibmcloud.com) την κατάσταση σε πραγματικό χρόνο της εφαρμογής Arduino (εμφανίζεται ο κωδικός RGB και λαμβάνεται η βαθμολογία συναισθήματος). Απλώς εισαγάγετε το αναγνωριστικό συσκευής. Το

Τώρα μπορώ επιτέλους να απολαύσω τον καφέ μου σε μια συνδεδεμένη κούπα.

Συνιστάται: