Πίνακας περιεχομένων:
- Βήμα 1: Βήμα 1: Συγκεντρώστε τα ανταλλακτικά σας
- Βήμα 2: Βήμα 2: Καλωδίωση και Ηλεκτρονικά
- Βήμα 3: Βήμα 3: Εγκατάσταση λογισμικού λειτουργικού συστήματος
- Βήμα 4: Βήμα 4: Ενημερώστε τη διαμόρφωση JSON
Βίντεο: NHL Φωτιστικό χόκεϊ δίπλα στο κρεβάτι και LCD: 4 βήματα (με εικόνες)
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:37
Εισαγωγή
Το "NHL Light" είναι για τους λάτρεις του χόκεϊ που θέλουν να ακολουθήσουν την ομάδα τους, αλλά δεν μπορούν να παρακολουθήσουν κάθε παιχνίδι. Το καλύτερο χαρακτηριστικό είναι ότι προσομοιώνει ένα σκορ γκολ με κέρατο χόκεϊ (προσαρμοσμένο στην ομάδα σας) και ελαφρύ.
Εκτός από το κέρατο και το φως του χόκεϊ, το "NHL Light", διαθέτει μια οθόνη που παρέχει την τρέχουσα ή την πιο πρόσφατη βαθμολογία του παιχνιδιού, την ώρα ή την ώρα του επόμενου παιχνιδιού και την τρέχουσα ημερομηνία και ώρα.
Το "NHL Light" λειτουργεί σε μια απλή λίστα εξαρτημάτων, που είναι εύκολο να συναρμολογηθούν ηλεκτρονικά και κωδικός που διατίθεται ελεύθερα.
Χαρακτηριστικά
- Διαμόρφωση βάσει ιστοσελίδας για την επιλογή της ομάδας και του wifi σας
- Παίζει χαλαρά όταν η ομάδα σας σκοράρει (ακόμα και όταν είστε εκτός ομάδας)
- Παίζει ήχο για να ανακοινώσει την έναρξη του παιχνιδιού
- Παίζει έναν ήχο για να ανακοινώσει το τέλος του παιχνιδιού
- Παρέχει την ώρα και την ημερομηνία του επόμενου παιχνιδιού, εάν δεν υπάρχει παιχνίδι σε εξέλιξη.
- Εμφανίζει την τρέχουσα ώρα και περίοδο παιχνιδιού, εάν το παιχνίδι βρίσκεται σε εξέλιξη.
- Εμφανίζει την τρέχουσα ημερομηνία και ώρα.
Βήμα 1: Βήμα 1: Συγκεντρώστε τα ανταλλακτικά σας
Εδώ είναι μια λίστα ανταλλακτικών.
-
Raspberry Pi W*
- Αμαζόνα
- Προτιμώ να παίρνω το δικό μου από το Microcenter, αλλά μπορεί να βρεθεί στο διαδίκτυο για λιγότερα σε άλλα μέρη.
- $10
- Κάρτα SD (ελάχιστο 4gb)*
- ηχείο - Amazon - ~ 2 $ *
- amp - PAM8403* - Amazon - ~ 1 $ το καθένα
- φως - Amazon - ~ 5 $
-
Θήκη - $ 1*
- Του Μιχαήλ
- Σας προτείνω μια μικρή ξύλινη θήκη χειροτεχνίας από το κατάστημα χειροτεχνίας του Michael, αλλά θα σας αφήσει!
-
LCD I2C 2004 - 3-7 $
- Αμαζόνα
- Ο κωδικός υποστηρίζει 3 τύπους LCD, αλλά το I2C 2004 είναι αυτό που έχω καταλήξει ως καλύτερη τιμή και μέγεθος. (Ο SSD1306 είναι επίσης δυνατός)
- 2 τρανζίστορ - 2N2222A- Amazon
- Διάφορα καλώδια / συγκόλληση 12V
- τροφοδοτικό - Amazon
- Μετατροπέας 12V -> 5V buck - Amazon
*Υπάρχει ευελιξία όσον αφορά την επιλογή αυτού του τμήματος.
ΣΗΜΕΙΩΣΗ: Μπορείτε να ξεκινήσετε το μεγαλύτερο μέρος αυτού του έργου μόνο με το βατόμουρο Pi σας, ενώ περιμένετε να αποσταλούν άλλα αντικείμενα.
Βήμα 2: Βήμα 2: Καλωδίωση και Ηλεκτρονικά
-
Συγκεντρώστε το Φως
- Η καλωδίωση του φωτός είναι να τρέχει 12 + στο φως.
- Τρέξτε αρνητικά από το φως μέσω ενός από τα τρανζίστορ.
- Το διάμετρο του τρανζίστορ πέφτει στη γείωση.
- Ο συλλέκτης του τρανζίστορ πηγαίνει στο Raspberry Pi.
-
Συναρμολόγηση ήχου
- Εκτέλεση δεξιού ή αριστερού ήχου από το PI στον ενισχυτή
- Εκτελέστε +5V στον ενισχυτή
- Εκτελέστε γείωση ενισχυτή στο 2ο τρανζίστορ.
- Εκτελέστε το μπράτσο του 2ου πομποδέκτη στη γείωση
- Εκτελέστε συλλέκτη του τρανζίστορ στο Raspberry Pi
- Συναρμολογήστε την καλωδίωση στο PI
-
Αυτές είναι οι οδηγίες pinout για το PI (ορισμένες από αυτές διαμορφώνονται μέσω του JSON)
-
οθόνη υγρού κρυστάλλου
- 3 - SDA
- 5 - SCL
- 5 - VCC (+5)
- AMP 8 (GPIO 14)
- Φως 10 (GPIO15)
- Sχος δεξιά - GPIO 18
-
Βήμα 3: Βήμα 3: Εγκατάσταση λογισμικού λειτουργικού συστήματος
-
Προετοιμάστε το Raspberry Pi W
- Το rasberry pi πρέπει να τρέχει μια πρόσφατη έκδοση του Raspbian (ή άλλου Debian).
- Συνιστάται να ακολουθείτε αυτές τις οδηγίες:
- Φροντίστε να συμπεριλάβετε wifi wpa_supplicant αρχείο.
- Τοποθετήστε το αρχείο ssh στην κάρτα sdcard για να επιτρέψετε την πρόσβαση ssh.
-
Προετοιμάστε το λογισμικό τρίτου μέρους:
- Έχω αυτοματοποιήσει αυτήν τη διαδικασία για να τραβήξω όλα τα απαραίτητα εργαλεία τρίτου μέρους, αλλά μη διστάσετε να τα εκτελέσετε με μη αυτόματο τρόπο και να ελέγξετε για να βεβαιωθείτε ότι κανένα βήμα δεν αποτυγχάνει.
- Κατεβάστε και εκτελέστε το ακόλουθο σενάριο:
Ακολουθεί μια ανάλυση του τι κάνει το σενάριο εγκατάστασης για τη ρύθμιση του λειτουργικού συστήματος. Είναι καλύτερο να εκτελέσετε αυτές τις γραμμές με μη αυτόματο τρόπο, ώστε να μπορείτε να προσέχετε για σφάλματα.
Κεφαλίδα σεναρίου:
#!/bin/sh -e #μπορεί να κληθεί μέσω #curl -sL https://raw.githubusercontent.com/wga22/nodejs/ma… | sudo -E bash - # TODO: αυτοματοποιήστε αυτό το σενάριο με κάτι σαν: curl -sL https://raw.githubusercontent.com/wga22/nodejs/ma… | sudo -E bash - # TODO: setup wifi # TODO: setup passwd και εξουσιοδοτημένα κλειδιά # σημειώσεις:
Ενημέρωση λογισμικού σε επίπεδο λειτουργικού συστήματος:
#apt-get stuff (apt-get update && apt-get -y upgrade)> /dev /null apt-get dist-upgrade -y #General Dev apt-get install -y git build-απαραίτητο python-dev python-pip python-smbus libasound2-dev nodejs # GPIO apt-get install -y raspi-gpio python-imaging python-smbus libasound2-dev #networking apt-get install -y bridge-utils hostapd dnsmasq apt-get clean -y
Ρύθμιση δικτύωσης. Μέρος του στόχου εδώ ήταν να επιτραπεί η διαμόρφωση του συστήματος μέσω ενός σημείου πρόσβασης, για σύνδεση με το δικό σας wifi, αλλά αυτό δεν έχει δοκιμαστεί πλήρως μέχρι στιγμής. Προς το παρόν συνιστάται η χρήση της μεθόδου wpa_supplicant για τη ρύθμιση του wifi.
#networking setupecho nhllight>/etc/hostname #TODO: διορθώστε το
Ενημέρωση βιβλιοθηκών κόμβων και κόμβων
#update nodecd/tmp εξαγωγή nodeversion = 8.9.0 #wget https://nodejs.org/dist/v7.4.0/node-v7.4.0-linux-… #wget https://nodejs.org/dist/v7. 4.0/node-v7.4.0-linux-… wget https://nodejs.org/dist/v7.4.0/node-v7.4.0-linux-… tar -xvf node-v $ {nodeversion} -linux-armv6l. tar.xz cd node-v $ {nodeversion} -linux-armv6l rm -f *.md rm -f LICENSE cp -R */usr/local/rm -R/tmp/node-v $ {nodeversion} -linux- armv6l rm /tmp/node-v${nodeversion}-linux-armv6l.tar.xz #TODO: δημιουργία συνδέσμου sym για δυαδικό κόμβο; apt -get remove -y --purge npm nodejs nodejs
#Κόμβος setupmkdir/opt/nhl mkdir/opt/nhl/logs mkdir/opt/nhl/horns mkdir/opt/nhl/node_modules/
#ενημερωμένος κόμβος
#εγκατάσταση εξαρτήσεων κόμβων στον κατάλογο nhl εξαγωγή NODE_PATH =/usr/local/lib/node_modules
#HACK - TODO - διορθώστε ότι το κουτσό δεν θα εγκατασταθεί παγκοσμίως
cd/opt/nhl npm install lame # lame, is lame, wont install globally cp -R/opt/nhl/node_modules/lame $ NODE_PATH npm install speaker #wont install globally cp -R/opt/nhl/node_modules/ηχείο $ NODE_PATH npm install i2c-bus #wont install globally cp -R/opt/nhl/node_modules/i2c-bus $ NODE_PATH npm install oled-i2c-bus #wont install globally cp -R/opt/nhl/node_modules/oled-i2c-bus $ NODE_PATH npm install lcd #wont install globally cp -R/opt/nhl/node_modules/lcd $ NODE_PATH npm install lcdi2c #wont install globally cp -R/opt/nhl/node_modules/lcdi2c $ NODE_PATH
npm install oled-font-5x7 #wont install global
cp -R/opt/nhl/node_modules/oled-font-5x7 $ NODE_PATH
npm install onoff #wont install global
cp -R/opt/nhl/node_modules/onoff $ NODE_PATH
#npm install pm2 #wont install global
#cp -R/opt/nhl/node_modules/pm2 $ NODE_PATH #npm install express #wont install global #wp -R/opt/nhl/node_modules/express $ NODE_PATH
# οποιαδήποτε καθολική ενότητα
npm εγκατάσταση express body -parser child_process pm2 -g
Τραβήξτε τον τελευταίο κωδικό:
#pull git codecd/opt/nhl #JSON is one time δημιουργία wget -no -cache -O /opt/nhl/nhl_config.json https://raw.githubusercontent.com/wga22/nodejs/ma… #wget -O /opt/nhl/NHL_work.js https://raw.githubusercontent.com/wga22/nodejs/ma… #καλέστε αυτοματοποιημένο σενάριο για να εγκαταστήσετε όλα τα υπόλοιπα για NHL curl -sL https://raw.githubusercontent.com/wga22/nodejs /ma… | sudo -E bash -
Κατεβάστε τα κέρατα!
#pull hornscd/opt/nhl/horns curl -sL https://raw.githubusercontent.com/wga22/nodejs/ma… | sudo -E bash -
ενημερώστε τα αρχεία διαμόρφωσης Raspberry pi - - ίσως χρειαστεί να αλλάξετε για το σύστημά σας
#config file updates#add sound cp /boot/config.txt /boot/config.txt.bak printf '\ ndtoverlay = pwm-2chan, pin = 18, func = 2, pin2 = 13, func2 = 4' >> / boot/config.txt #turn on i2c printf '\ n / ndtparam = i2c1 = on / n' >> /boot/config.txt printf '\ n / ndtparam = i2c_arm = on / n' >>/boot/config κείμενο
#TODO: χρειάζεται αυτό; cp /etc /modules /etc/modules.bak printf '\ ni2c-dev / ni2c-bcm2708 / n' >> /etc /modules
amixer cset numid = 1
#TODO: ρύθμιση έντασης, 60%;
Αυτοματοποιήστε την αυτοματοποίηση, όπως εκκίνηση και ενημερώσεις κώδικα:
# ενημέρωση rc.local# ΣΗΜΕΙΩΣΗ: μετακίνηση του αρχείου, επειδή το τυπικό περιλαμβάνει μια "έξοδο" στην τελευταία γραμμή, οπότε δεν μπορεί απλώς να προσαρτηθεί το mv /etc/rc.local /etc/rc.local.bak touch /etc/rc.local chmod u+x /etc/rc.local printf '#!/bin/sh'> /etc/rc.local printf '\ n /etc/bootup_nhl.sh> /tmp/rclocal.log' >>/etc/rc.τοπική εκτύπωση '\ n έξοδος 0' >> /etc/rc.local
#TODO: πρέπει να προσθέσετε κάτι για να κάνετε τις κανονικές ενημερώσεις λογισμικού εβδομαδιαίως όπως αυτή# justσως απλά να αντιγράψετε αυτό το αρχείο απευθείας στον φάκελο rc.weekly; rm /etc/cron.weekly/nhl_updater printf '#!/bin/sh / ncurl -sL https://raw.githubusercontent.com/wga22/nodejs/ma… | sudo -E bash -'> /etc/cron.weekly/nhl_updater chmod u+x /etc/cron.weekly/nhl_updater
Διάφορα πράγματα, όπως ρύθμιση ζώνης ώρας:
ln -sf/usr/share/zoneinfo/America/New_York/etc/localtime
# ενημέρωση μεταβλητής περιβάλλοντος με node_path
cp/etc/environment /etc/environment.bak printf '\ nexport NODE_PATH =/usr/local/lib/node_modules / n' >>/etc/environment #TODO: ορίστε αυτό για τον κόμβο self.ipaddress = process.env. NODEJS_IP ? #TODO: self.port = process.env. NODEJS_PORT || 80;
Χρησιμοποιήστε το PM2 για ρύθμιση διακομιστή κόμβου:
#TODO: test setup PM2cd /tmp /npm install -g pm2 pm2 startup cd /opt /nhl pm2 start NHL_work.js --node-args = "-max_old_space_size = 100 expose-gc" pm2 start webserver.js --node -args = "-max_old_space_size 100M" pm2 αποθήκευση pm2 έξοδο εκκίνησης 0
Βήμα 4: Βήμα 4: Ενημερώστε τη διαμόρφωση JSON
Ρυθμίστε το αρχείο διαμόρφωσης JSON για την ομάδα που προτιμάτε κλπ. Αυτό το αρχείο βρίσκεται στο /opt /nhl GO CAPITALS! διαμόρφωση αρχείου JSON
Το λογισμικό χρησιμοποιεί ένα αρχείο JSON για να διαμορφώσει το υλικό και την ομάδα που ακολουθείτε. Η ομάδα μπορεί να ρυθμιστεί μέσω του διακομιστή ιστού που θα εκτελείται, αλλά η ρύθμιση υλικού πρέπει να ρυθμιστεί με μη αυτόματο τρόπο:
Ακολουθεί μια εξήγηση για κάθε πιθανή τιμή:
- myteam: αυτός είναι ο κωδικός 3 γραμμάτων της ομάδας που θέλετε να ακολουθήσετε
- εντοπισμός σφαλμάτων: Οι πιθανές τιμές είναι 1 (αληθής) ή 0 (ψευδής) και θα ελέγχουν πόση εγγραφή καταγράφεται.
-
έξοδος: αυτή είναι η μέθοδος με την οποία εμφανίζονται οι βαθμολογίες/λεπτομέρειες. Οι πιθανές τιμές είναι:
- LCD: αυτή είναι η LCD LCD του 2004
- κονσόλα: θα γραφτεί μόνο στο τερματικό (για εκτέλεση της γραμμής εντολών)
- oled: υποστήριξη για λαδωμένη οθόνη SSD6404
-
φως: υποστηρίζονται δύο τύποι φώτων
- συναγερμός: αυτό θα οδηγήσει ένα GPIO για την ενεργοποίηση/απενεργοποίηση ενός τρανζίστορ
- multi-led: υποστηρίζει πολύχρωμα ή πολλαπλά led
- κανένα: δεν έχει προσαρτηθεί φως
- ενισχυτής: αυτό είναι το GPIO που οδηγεί το τρανζίστορ για τον ενισχυτή
Συνιστάται:
Δημιουργία ενός παγοδρομίου χόκεϊ σε μέγεθος κανονισμού στο SketchUp: 14 βήματα
Δημιουργία ενός παγοδρομίου χόκεϊ σε μέγεθος κανονισμού στο SketchUp: Χρησιμοποίησα την δωρεάν, διαδικτυακή έκδοση του SketchUp για να το ολοκληρώσω. Προσπαθήστε να εξοικειωθείτε με όρους όπως " κόκκινη γραμμή " ή " μισός τοίχος " γιατί θα τα χρησιμοποιήσω χωρίς να εξηγήσω τι σημαίνουν Όλες οι μετρήσεις λαμβάνονται από το επίσημο NHL
Δώστε στο κρεβάτι σας Underglow!: 7 βήματα (με εικόνες)
Δώστε το κρεβάτι σας κάτω από το φως!: Σε αυτό το Instructable, θα σας εξηγήσω πώς να κάνετε το κρεβάτι σας να φαίνεται υπέροχο με LED RGB. Αυτά που πήρα είναι τηλεχειριζόμενα, έχουν διαφορετικές επιλογές όπως ξεθώριασμα ή αναβοσβήνει και είναι πολύ φθηνά. Πρόσφατα έγινε μια πώληση στο bangg
DIY μαγνητικό επιτραπέζιο χόκεϊ με χαρτόνι, φώτα RGB και αισθητήρες: 11 βήματα (με εικόνες)
Μαγνητικό επιτραπέζιο χόκεϊ DIY με χαρτόνι, φώτα RGB και αισθητήρες: Πρέπει να έχετε παίξει Air Hockey! Πληρώστε μερικά $ $ $ $ $ στη ζώνη τυχερών παιχνιδιών και μόλις ξεκινήσετε να σκοράρετε για να κερδίσετε τους φίλους σας. Δεν είναι πολύ εθιστικό; Πρέπει να σκεφτήκατε να κρατήσετε ένα τραπέζι στο σπίτι, αλλά γεια! σκεφτήκατε ποτέ να το φτιάξετε μόνοι σας; Θέλουμε
ΦΩΤΙΣΤΙΚΟ ΦΩΤΙΣΤΙΚΟ ΦΩΤΟΓΡΑΦΙΟ ΚΑΤΑΣΚΕΥΑΣΜΕΝΟΥ ΑΓΩΝΑ: 8 Βήματα
ΦΩΤΙΣΤΙΚΟ LED ΦΩΤΟΓΡΑΦΙΚΟ ΚΑΤΑΣΚΕΥΑΣΜΕΝΟ ΑΠΟ ΤΟΝ ΑΓΩΝΑ: ΜΑΘΕΤΕ ΠΩΣ ΝΑ ΚΑΤΑΣΚΕΥΑΣΤΕ ΛΙΓΟΤΕΡΟ ΑΠΟ 5 ΛΕΠΤΑ ΛΑΜΠΑ LED ΦΩΤΙΣΜΟΥ ΧΡΗΣΙΜΟΠΟΙΩΝΤΑΣ ΜΑΤΣΙΤΣΑ
Mini LED Νυχτερινό Φωτιστικό / Φωτιστικό: 5 Βήματα
Mini LED Νυχτερινό Φωτιστικό / Φωτιστικό: Πρώτα θα ήθελα να πω ότι αυτό ήταν εμπνευσμένο από τη μίνι λυχνία LED LED της Sunbanks. Αντί να χρησιμοποιήσω ένα μπιρό για να κρατήσω το led μακριά από το γραφείο, χρησιμοποίησα κάποια σαφή perspex για να προβάλλω το φως από τη βάση. Αυτό το μικρό έργο είναι ένα πρωτότυπο