Mục lục:
- Bước 1: Bước 1: Lắp ráp các bộ phận của bạn
- Bước 2: Bước 2: Hệ thống dây điện và thiết bị điện tử
- Bước 3: Bước 3: Thiết lập phần mềm hệ điều hành
- Bước 4: Bước 4: Cập nhật cấu hình JSON
Video: NHL Đèn khúc côn cầu bên giường và màn hình LCD: 4 bước (có hình ảnh)
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:35
Giới thiệu
"NHL Light" dành cho những người hâm mộ khúc côn cầu muốn theo dõi đội của họ, nhưng không thể theo dõi mọi trận đấu. Tính năng tốt nhất của nó là nó mô phỏng tỷ số bàn thắng bằng còi khúc côn cầu (tùy chỉnh cho đội của bạn) và ánh sáng.
Ngoài còi và đèn khúc côn cầu, "NHL Light" còn có màn hình cung cấp điểm số của trận đấu hiện tại hoặc gần đây nhất, thời gian của trận đấu hoặc thời gian của trận đấu tiếp theo và ngày giờ hiện tại.
"NHL Light" chạy trên một danh sách các bộ phận đơn giản, dễ lắp ráp thiết bị điện tử và mã có sẵn miễn phí.
Đặc trưng
- Cấu hình dựa trên trang web để chọn nhóm và wifi của bạn
- Phát ánh sáng và còi khi đội của bạn ghi bàn (ngay cả khi bạn là đội khách)
- Phát âm thanh để thông báo bắt đầu trò chơi
- Phát âm thanh để thông báo kết thúc trò chơi
- Cung cấp thời gian và ngày của trò chơi tiếp theo, nếu không có trò chơi nào đang diễn ra.
- Hiển thị thời gian và khoảng thời gian trò chơi hiện tại, nếu trò chơi đang diễn ra.
- Hiển thị ngày và giờ hiện tại.
Bước 1: Bước 1: Lắp ráp các bộ phận của bạn
Đây là danh sách các bộ phận.
-
Raspberry Pi W *
- Amazon
- Tôi thích lấy của tôi từ Microcenter hơn, nhưng có thể tìm thấy trực tuyến với giá rẻ hơn ở những nơi khác.
- $10
- Thẻ SD (tối thiểu 4gb) *
- loa - Amazon - ~ $ 2 *
- amp - PAM8403 * - Amazon - ~ $ 1 mỗi cái
- ánh sáng - Amazon - ~ $ 5
-
Trường hợp - $ 1 *
- Của Michael
- Tôi giới thiệu hộp thủ công bằng gỗ nhỏ từ cửa hàng thủ công của Michael, nhưng sẽ để lại cho bạn!
-
I2C 2004 LCD - $ 3-7
- Amazon
- Mã này hỗ trợ 3 loại màn hình LCD, nhưng I2C 2004 là loại mà tôi đánh giá là có giá trị và kích thước tốt nhất. (SSD1306 cũng có thể)
- 2 bóng bán dẫn - 2N2222A- Amazon
- Dây Misc / hàn 12V
- cung cấp điện - Amazon
- Bộ chuyển đổi Buck 12V -> 5V - Amazon
* Có sự linh hoạt khi chọn phần này.
LƯU Ý: Bạn có thể bắt đầu hầu hết dự án này chỉ với raspberry Pi của mình, trong khi chờ các mặt hàng khác được giao.
Bước 2: Bước 2: Hệ thống dây điện và thiết bị điện tử
-
Lắp ráp ánh sáng
- Hệ thống dây cho đèn là chạy 12+ đến đèn.
- Chạy âm từ ánh sáng qua một trong các bóng bán dẫn.
- Emmetter của bóng bán dẫn tiếp đất.
- Bộ thu của bóng bán dẫn đi đến Raspberry Pi.
-
Lắp ráp âm thanh
- Chạy âm thanh sang phải hoặc trái từ PI đến amp
- Chạy + 5V đến amp
- Chạy amp tiếp đất đến bóng bán dẫn thứ 2.
- Chạy emmetter của transisitor thứ 2 xuống đất
- Chạy bộ thu của bóng bán dẫn đến Raspberry Pi
- Lắp ráp hệ thống dây với PI
-
Đây là hướng dẫn sơ đồ chân cho PI (một số trong số này có thể định cấu hình thông qua JSON)
-
LCD
- 3 - SDA
- 5 - SCL
- 5 - VCC (+5)
- AMP 8 (GPIO 14)
- Ánh sáng 10 (GPIO15)
- Âm thanh phải - GPIO 18
-
Bước 3: Bước 3: Thiết lập phần mềm hệ điều hành
-
Chuẩn bị Raspberry Pi W
- Rasberry pi phải đang chạy phiên bản Raspbian gần đây (hoặc Debian khác).
- Khuyến nghị làm theo các hướng dẫn sau:
- Đảm bảo bao gồm tệp wpa_supplicant wifi.
- Đặt tệp ssh trên sdcard để cho phép truy cập ssh.
-
Chuẩn bị phần mềm của bên thứ 3:
- Tôi đã tự động hóa quy trình này để kéo tất cả các công cụ cần thiết của bên thứ ba, nhưng hãy chạy các công cụ này theo cách thủ công và xem lại để đảm bảo không có bước nào bị lỗi.
- Tải xuống và chạy tập lệnh sau:
Dưới đây là phân tích về những gì tập lệnh cài đặt để thiết lập hệ điều hành. Tốt nhất là chạy các dòng này theo cách thủ công, vì vậy bạn có thể xem các lỗi.
Tiêu đề tập lệnh:
#! / bin / sh -e # có thể được gọi thông qua #curl -sL https://raw.githubusercontent.com/wga22/nodejs/ma… | sudo -E bash - # TODO: tự động hóa tập lệnh này với một cái gì đó như: curl -sL https://raw.githubusercontent.com/wga22/nodejs/ma… | sudo -E bash - # TODO: thiết lập wifi # TODO: thiết lập mật khẩu và khóa ủy quyền # ghi chú:
Cập nhật phần mềm ở cấp hệ điều hành:
# apt-get things (apt-get update && apt-get -y upgrade)> / dev / null apt-get dist-upgrade -y #General Dev apt-get install -y git build-essential python-dev python-pip python-smbus libasound2-dev nodejs # GPIO apt-get install -y raspi-gpio python-images python-smbus libasound2-dev #networking apt-get install -y bridge-utils hostapd dnsmasq apt-get clean -y
Thiết lập mạng. Một phần của mục tiêu ở đây là cho phép hệ thống được định cấu hình thông qua một điểm truy cập, kết nối với wifi của riêng bạn, nhưng điều này vẫn chưa được kiểm tra đầy đủ. Hiện tại, bạn nên sử dụng phương thức wpa_supplicant để thiết lập Wi-Fi.
#networking setupecho nhllight> / etc / hostname #TODO: sửa lỗi / etc / hosts #TODO: setup br0 mkdir / etc / hostapd / # lưu ý: quá trình thiết lập khác được thực hiện thông qua tệp cấu hình và trình bao được kéo xuống dưới dạng một phần của bản cập nhật
Cập nhật các thư viện nút và nút
#update nodecd / tmp export 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: tạo liên kết sym cho nút nhị phân? apt-get remove -y --purge npm node nodejs
#Node setupmkdir / opt / nhl mkdir / opt / nhl / logs mkdir / opt / nhl / horn mkdir / opt / nhl / node_modules /
#update Node
#install các phụ thuộc nút vào thư mục nhl xuất NODE_PATH = / usr / local / lib / node_modules
#HACK - TODO - sửa lỗi không cài đặt được trên toàn cầu
cd / opt / nhl npm install lame # lame, is lame, wont install global cp -R / opt / nhl / node_modules / lame $ NODE_PATH npm install loa #wont install global cp -R / opt / nhl / node_modules / loa $ NODE_PATH npm install i2c-bus #wont install global cp -R / opt / nhl / node_modules / i2c-bus $ NODE_PATH npm install oled-i2c-bus #wont install global cp -R / opt / nhl / node_modules / oled-i2c-bus $ NODE_PATH npm install lcd # không cài đặt toàn cục cp -R / opt / nhl / node_modules / lcd $ NODE_PATH npm install lcdi2c #wont install global 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 cài đặt pm2 # không cài đặt trên toàn cầu
#cp -R / opt / nhl / node_modules / pm2 $ NODE_PATH #npm install express #wont install global #cp -R / opt / nhl / node_modules / express $ NODE_PATH
# bất kỳ mô-đun chung nào
npm cài đặt express body-parser child_process pm2 -g
Kéo mã mới nhất:
#pull git codecd / opt / nhl #JSON là tiện ích tạo một lần --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… #call script tự động để cài đặt mọi thứ khác cho NHL curl -sL https://raw.githubusercontent.com/wga22/nodejs / ma… | sudo -E bash -
Tải về sừng!
#pull horncd / opt / nhl / horn curl -sL https://raw.githubusercontent.com/wga22/nodejs/ma… | sudo -E bash -
cập nhật các tệp cấu hình Raspberry pi - - có thể cần thay đổi cho hệ thống của bạn
Cập nhật tệp #config # thêm âm thanh cp /boot/config.txt /boot/config.txt.bak printf '\ ndtoverlay = pwm-2chan, pin = 18, func = 2, pin2 = 13, func2 = 4' >> / boot / config.txt #turn trên i2c printf '\ n / ndtparam = i2c1 = on / n' >> /boot/config.txt printf '\ n / ndtparam = i2c_arm = on / n' >> / boot / config. txt
#TODO: cái này có cần thiết không? Cp / etc / modules /etc/modules.bak printf '\ ni2c-dev / ni2c-bcm2708 / n' >> / etc / modules
amixer cset numid = 1
#TODO: đặt âm lượng, 60%?
Tự động hóa việc tự động hóa, chẳng hạn như khởi động và cập nhật mã:
# update rc.local # LƯU Ý: di chuyển tệp, vì tệp tiêu chuẩn bao gồm "lối ra" ở dòng cuối cùng, vì vậy không thể chỉ cần thêm 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.local printf '\ n thoát 0' >> /etc/rc.local
#TODO: cần thêm thứ gì đó để thực hiện cập nhật phần mềm thường xuyên hàng tuần như thế này # Có thể chỉ cần sao chép trực tiếp tệp này xuống thư mục 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
Những thứ khác, như đặt múi giờ:
ln -sf / usr / share / zoneinfo / America / New_York / etc / localtime
# cập nhật biến môi trường với node_path
cp / etc / environment /etc/enosystem.bak printf '\ nexport NODE_PATH = / usr / local / lib / node_modules / n' >> / etc / environment #TODO: xác định điều này cho node self.ipaddress = process.env. NODEJS_IP; #TODO: self.port = process.env. NODEJS_PORT || 80;
Sử dụng PM2 để thiết lập máy chủ nút:
#TODO: thiết lập thử nghiệm PM2cd / tmp / npm install -g pm2 pm2 khởi động cd / opt / nhl pm2 start NHL_work.js --node-args = "- max_old_space_size = 100 exposure-gc" pm2 start webserver.js --node -args = "- max_old_space_size 100M" pm2 lưu pm2 khởi động thoát 0
Bước 4: Bước 4: Cập nhật cấu hình JSON
Thiết lập tệp cấu hình JSON của bạn cho nhóm bạn thích, v.v. Tệp này nằm trong / opt / nhl GO CAPITALS! cấu hình tệp JSON
Phần mềm sử dụng tệp JSON để định cấu hình phần cứng và nhóm mà bạn đang theo dõi. Nhóm có thể được thiết lập thông qua máy chủ web sẽ chạy, nhưng thiết lập phần cứng cần được đặt theo cách thủ công:
Dưới đây là giải thích về từng giá trị có thể có:
- myteam: đây là mã 3 chữ cái của đội bạn muốn theo dõi
- gỡ lỗi: Các giá trị có thể là 1 (đúng) hoặc 0 (sai) và sẽ kiểm soát mức độ ghi nhật ký được ghi ra.
-
đầu ra: đây là phương pháp hiển thị điểm số / chi tiết. Giá trị có thể là:
- lcd: đây là LCD 2004
- giao diện điều khiển: điều này sẽ chỉ ghi vào thiết bị đầu cuối (để chạy dòng lệnh)
- oled: hỗ trợ cho màn hình oled SSD6404
-
ánh sáng: có hai loại đèn được hỗ trợ
- cảnh báo: điều này sẽ thúc đẩy một GPIO duy nhất để bật / tắt bóng bán dẫn
- multi-led: hỗ trợ nhiều màu hoặc nhiều led
- không: không gắn đèn
- amp: đây là GPIO điều khiển bóng bán dẫn cho amp
Đề xuất:
Còi ghi bàn khúc côn cầu: 5 bước
Còi mục tiêu khúc côn cầu: Con trai tôi và tôi chơi khúc côn cầu trong nhà của chúng tôi, còn được gọi là khúc côn cầu đầu gối, và một ngày nọ, nó hỏi về chiếc còi ở sân NHL khi chúng ghi bàn. Anh ấy muốn biết liệu chúng tôi có thể mua được một chiếc không. Thay vì mua một chiếc còi ghi bàn to một cách kỳ lạ (sẽ không bao giờ xảy ra), tôi
Xây dựng một đường đua khúc côn cầu quy mô theo quy định trong SketchUp: 14 bước
Xây dựng Đường đua Khúc côn cầu Kích thước Quy định trong SketchUp: Tôi đã sử dụng phiên bản SketchUp dựa trên web, miễn phí để hoàn thành việc này. Cố gắng làm quen với các thuật ngữ như " đường đỏ " hoặc " nửa bức tường " bởi vì tôi sẽ sử dụng chúng mà không giải thích ý nghĩa của chúng. Tất cả các phép đo đều được lấy từ NHL chính thức
Bàn chơi khúc côn cầu trên không chi phí thấp tự làm: 27 bước (có hình ảnh)
Bàn chơi khúc côn cầu trên không với chi phí thấp tự làm: Một thiết lập khúc côn cầu trên không chuyên nghiệp thường chỉ có ở các sân chơi vòng cung do cần có các hệ thống phức tạp để vận hành nó. Mục tiêu của chúng tôi là xây dựng một bàn chơi khúc côn cầu trên không tự làm, mang lại trải nghiệm chơi trò chơi này ngay tại nhà. Bằng cách sử dụng thông thường có sẵn
Điều khiển đầu giường MQTT không dây trên giường: 5 bước (có hình ảnh)
Điều khiển đầu giường MQTT không dây trên giường: Một vài năm trước, chúng tôi đã mua một chiếc giường xốp hoạt tính mới và, như trường hợp của hầu hết các giường, bạn cũng phải mua một trong những " đế được chấp thuận " để duy trì một bảo hành. Vì vậy, chúng tôi đã chọn cơ sở ít tốn kém nhất cũng bao gồm t
Tự làm khúc côn cầu trên bàn từ tính với bìa cứng, đèn RGB và cảm biến: 11 bước (có hình ảnh)
Tự làm Khúc côn cầu trên bàn từ tính bằng bìa cứng, đèn RGB và cảm biến: Bạn hẳn đã chơi Khúc côn cầu trên không! Trả vài $$ đô la $$ cho khu trò chơi và chỉ cần bắt đầu ghi bàn để đánh bại bạn bè của bạn. Nó không phải là rất nghiện? Chắc hẳn bạn đã nghĩ đến việc giữ một chiếc bàn ở nhà, nhưng này! đã bao giờ nghĩ đến việc tự làm nó chưa? Chúng tôi sẽ