সুচিপত্র:

এনএইচএল বেডসাইড হকি লাইট এবং এলসিডি: 4 টি ধাপ (ছবি সহ)
এনএইচএল বেডসাইড হকি লাইট এবং এলসিডি: 4 টি ধাপ (ছবি সহ)

ভিডিও: এনএইচএল বেডসাইড হকি লাইট এবং এলসিডি: 4 টি ধাপ (ছবি সহ)

ভিডিও: এনএইচএল বেডসাইড হকি লাইট এবং এলসিডি: 4 টি ধাপ (ছবি সহ)
ভিডিও: NHL 2020 Playoff Pump Up - "Can't Hold Us" 2024, নভেম্বর
Anonim
Image
Image
এনএইচএল বেডসাইড হকি লাইট এবং এলসিডি
এনএইচএল বেডসাইড হকি লাইট এবং এলসিডি

ভূমিকা

"এনএইচএল লাইট" হকি অনুরাগীদের জন্য যারা তাদের দলকে অনুসরণ করতে চায়, কিন্তু প্রতিটি খেলা দেখতে পারে না। এটির সেরা বৈশিষ্ট্য হল এটি একটি হকি হর্ন (আপনার দলের জন্য কাস্টম), এবং হালকা দিয়ে একটি গোল স্কোর অনুকরণ করে।

হকি হর্ন এবং লাইট ছাড়াও, "এনএইচএল লাইট" এর একটি ডিসপ্লে রয়েছে যা বর্তমান, বা সাম্প্রতিকতম গেমের স্কোর, খেলার সময় বা পরবর্তী খেলার সময় এবং বর্তমান তারিখ এবং সময় প্রদান করে।

"এনএইচএল লাইট" অংশগুলির একটি সাধারণ তালিকায় চলে, যা ইলেকট্রনিক্স একত্রিত করা সহজ, এবং কোড যা অবাধে পাওয়া যায়।

বৈশিষ্ট্য

  1. আপনার দল এবং ওয়াইফাই নির্বাচনের জন্য ওয়েবপেজ ভিত্তিক কনফিগারেশন
  2. যখন আপনার দল স্কোর করে তখন হালকা এবং হর্ন বাজায় (এমনকি আপনি যখন দলে থাকেন)
  3. খেলা শুরুর ঘোষণা করার জন্য শব্দ বাজায়
  4. খেলার সমাপ্তি ঘোষণা করার জন্য একটি শব্দ বাজায়
  5. কোন খেলা চলমান থাকলে পরবর্তী গেমের সময় এবং তারিখ প্রদান করে।
  6. খেলা চলমান থাকলে বর্তমান খেলার সময় এবং সময়কাল প্রদর্শন করে।
  7. বর্তমান তারিখ এবং সময় প্রদর্শন করে।

ধাপ 1: ধাপ 1: আপনার অংশগুলি একত্রিত করুন

ধাপ 1: আপনার অংশগুলি একত্রিত করুন
ধাপ 1: আপনার অংশগুলি একত্রিত করুন

এখানে একটি অংশ তালিকা।

  1. রাস্পবেরি পাই ডাব্লু*

    1. আমাজন
    2. আমি মাইক্রোসেন্টার থেকে খনি পেতে পছন্দ করি, কিন্তু অন্যান্য স্থানে কম দামে অনলাইনে পাওয়া যাবে।
    3. $10
  2. এসডি কার্ড (4 জিবি সর্বনিম্ন)*
  3. স্পিকার - আমাজন - ~ $ 2 *
  4. amp - PAM8403* - আমাজন - ~ $ 1 প্রতিটি
  5. হালকা - আমাজন - ~ $ 5
  6. কেস - $ 1*

    1. মাইকেলের
    2. আমি মাইকেলের নৈপুণ্য দোকান থেকে ছোট কাঠের কারুকাজের কেস সুপারিশ করি, কিন্তু আপনার কাছে চলে যাবে!
  7. I2C 2004 LCD - $ 3-7

    1. আমাজন
    2. কোডটি 3 ধরণের LCD- কে সমর্থন করে, কিন্তু I2C 2004 হল আমি সেরা মান এবং আকার হিসাবে স্থির করেছি। (SSD1306 এছাড়াও সম্ভব)
  8. 2 ট্রানজিস্টর - 2N2222A- আমাজন
  9. বিবিধ তার / ঝাল 12V
  10. বিদ্যুৎ সরবরাহ - অ্যামাজন
  11. 12V -> 5V বক কনভার্টার - আমাজন

*এই অংশটি নির্বাচনের ক্ষেত্রে নমনীয়তা রয়েছে।

দ্রষ্টব্য: আপনি এই প্রকল্পের বেশিরভাগটি কেবল আপনার রাস্পবেরি পাই দিয়ে শুরু করতে পারেন, যখন আপনি অন্যান্য আইটেমগুলি শিপ করার জন্য অপেক্ষা করেন।

ধাপ 2: ধাপ 2: তারের এবং ইলেকট্রনিক্স

ধাপ 2: তারের এবং ইলেকট্রনিক্স
ধাপ 2: তারের এবং ইলেকট্রনিক্স
ধাপ 2: তারের এবং ইলেকট্রনিক্স
ধাপ 2: তারের এবং ইলেকট্রনিক্স
  1. আলো একত্রিত করুন

    1. আলোর জন্য তারের আলো 12 + চালানো হয়।
    2. ট্রানজিস্টরের একটির মাধ্যমে আলো থেকে নেতিবাচক চালান।
    3. ট্রানজিস্টরের এমমেটার মাটিতে চলে যায়।
    4. ট্রানজিস্টরের সংগ্রাহক রাস্পবেরি পাইতে যান।
  2. সমবেত শব্দ

    1. পিআই থেকে এম্পে ডান বা বাম শব্দ চালান
    2. Amp এ +5V চালান
    3. ২ য় ট্রানজিস্টারে এম্প গ্রাউন্ড চালান।
    4. দ্বিতীয় ট্রানজিসিটরের এমমেটারটি মাটিতে চালান
    5. রাস্পবেরি পাইতে ট্রানজিস্টরের সংগ্রাহক চালান
  3. পিআইয়ের কাছে ওয়্যারিং একত্রিত করুন
  4. এটি PI এর জন্য পিনআউট নির্দেশাবলী (এর মধ্যে কিছু JSON এর মাধ্যমে কনফিগারযোগ্য)

    1. এলসিডি

      1. 3 - এসডিএ
      2. 5 - এসসিএল
      3. 5 - ভিসিসি (+5)
    2. AMP 8 (GPIO 14)
    3. লাইট 10 (GPIO15)
    4. সাউন্ড ডান - জিপিআইও 18

ধাপ 3: ধাপ 3: অপারেটিং সিস্টেম সফটওয়্যার সেটআপ

  1. রাস্পবেরি পাই ডব্লিউ প্রস্তুত করুন

    1. রাসবেরি পাই অবশ্যই রাস্পবিয়ান (বা অন্যান্য ডেবিয়ান) এর একটি সাম্প্রতিক সংস্করণ চালাচ্ছে।
    2. এই নির্দেশাবলী অনুসরণ করার জন্য প্রস্তাবিত:
    3. Wifi wpa_supplicant ফাইলটি অন্তর্ভুক্ত করতে ভুলবেন না।
    4. Ssh অ্যাক্সেসের অনুমতি দিতে sdcard- এ ssh ফাইল রাখুন।
  2. তৃতীয় পক্ষের সফটওয়্যার প্রস্তুত করুন:

    1. আমি সমস্ত প্রয়োজনীয় তৃতীয় পক্ষের সরঞ্জামগুলি টানতে এই প্রক্রিয়াটি স্বয়ংক্রিয় করেছি, কিন্তু এইগুলি ম্যানুয়ালি চালানোর জন্য নির্দ্বিধায়, এবং কোন পদক্ষেপ ব্যর্থ না হওয়ার জন্য পর্যালোচনা করুন।
    2. নিম্নলিখিত স্ক্রিপ্টটি ডাউনলোড করুন এবং চালান:

অপারেটিং সিস্টেম স্থাপনের জন্য ইনস্টলেশন স্ক্রিপ্ট কি করে তার একটি ভাঙ্গন এখানে। ম্যানুয়ালি এই লাইনগুলি চালানো ভাল, যাতে আপনি ত্রুটিগুলি দেখতে পারেন।

স্ক্রিপ্ট হেডার:

#!/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-essential 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

নেটওয়ার্কিং সেটআপ। এখানে লক্ষ্যটির একটি অংশ ছিল একটি অ্যাক্সেস পয়েন্টের মাধ্যমে সিস্টেমকে কনফিগার করার অনুমতি দেওয়া, আপনার নিজের ওয়াইফাইয়ের সাথে সংযোগ স্থাপন করা, কিন্তু এটি এখনও পুরোপুরি পরীক্ষা করা হয়নি। বর্তমানে ওয়াইফাই স্থাপনের জন্য wpa_supplicant পদ্ধতি ব্যবহার করার সুপারিশ করা হয়েছে।

#networking setupecho nhllight>/etc/hostname #TODO:/etc/hosts ঠিক করুন

নোড এবং নোড লাইব্রেরি আপডেট করুন

#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: নোড বাইনারি জন্য sym লিঙ্ক তৈরি করবেন? apt -get remove -y --purge npm node nodejs

#নোড সেটআপ

#আপডেট নোড

#nhl ডিরেক্টরি এক্সপোর্ট NODE_PATH =/usr/local/lib/node_modules এ নোড নির্ভরতা ইনস্টল করুন

#হ্যাক - টুডো - বিশ্বব্যাপী যে খোঁড়া ইনস্টল করবে না ঠিক করুন

cd/opt/nhl npm install lame # lame, is lame, will not install বিশ্বব্যাপী cp -R/opt/nhl/node_modules/lame $ NODE_PATH npm install speaker #wont install cp -R/opt/nhl/node_modules/speaker $ NODE_PATH npm install i2c-bus #wont install বিশ্বব্যাপী cp -R/opt/nhl/node_modules/i2c-bus $ NODE_PATH npm install oled-i2c-bus #wont install বিশ্বব্যাপী cp -R/opt/nhl/node_modules/oled-i2c-bus $ NODE_PATH npm install lcd #wont install বিশ্বব্যাপী cp -R/opt/nhl/node_modules/lcd $ NODE_PATH npm install lcdi2c #wont install বিশ্বব্যাপী cp -R/opt/nhl/node_modules/lcdi2c $ NODE_PATH

npm বিশ্বব্যাপী oled-font-5x7 ইনস্টল করবে না

cp -R/opt/nhl/node_modules/oled-font-5x7 $ NODE_PATH

এনপিএম ইনস্টল অনঅফ #বিশ্বব্যাপী ইনস্টল করবে না

cp -R/opt/nhl/node_modules/onoff $ NODE_PATH

#npm install pm2 #বিশ্বব্যাপী ইনস্টল করা হবে না

#cp -R/opt/nhl/node_modules/pm2 $ NODE_PATH #npm install express #wont install বিশ্বব্যাপী #cp -R/opt/nhl/node_modules/express $ NODE_PATH

# যেকোনো বৈশ্বিক মডিউল

npm এক্সপ্রেস বডি -পার্সার child_process pm2 -g ইনস্টল করুন

সর্বশেষ কোড টানুন:

#pull git codecd/opt/nhl #JSON এক সময় সৃষ্টি 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… #এনএইচএল কার্ল -এসএল -এর জন্য অন্য সবকিছু ইনস্টল করতে স্বয়ংক্রিয় স্ক্রিপ্ট কল করুন https://raw.githubusercontent.com/wga22/nodejs /মা… | সুডো -ই বাশ -

শিং ডাউনলোড করুন!

#pull hornscd/opt/nhl/horns curl -sL https://raw.githubusercontent.com/wga22/nodejs/ma… | সুডো -ই বাশ -

রাস্পবেরি পাই কনফিগ ফাইলগুলি আপডেট করুন - - আপনার সিস্টেমের জন্য পরিবর্তনের প্রয়োজন হতে পারে

#কনফিগ ফাইল আপডেট#শব্দ যোগ করুন 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। txt

#TODO: এটা কি প্রয়োজন? Cp /etc /modules /etc/modules.bak printf '\ ni2c-dev / ni2c-bcm2708 / n' >> /etc /modules

amixer cset numid = 1

#টুডো: ভলিউম সেট করুন, 60%?

অটোমেশন স্বয়ংক্রিয় করুন, যেমন বুটআপ এবং কোড আপডেট:

# আপডেট rc.local# দ্রষ্টব্য: ফাইলটি সরানো হচ্ছে, কারণ স্ট্যান্ডার্ডের মধ্যে শেষ লাইনে একটি "প্রস্থান" রয়েছে, তাই কেবল mv /etc/rc.local /etc/rc.local.bak টাচ /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 প্রস্থান 0' >> /etc/rc.local

# টুডো: সাপ্তাহিক সফটওয়্যার আপডেটগুলি নিয়মিত করার জন্য কিছু যোগ করতে হবে# হয়তো এই ফাইলটি সরাসরি 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

# নোড_পথ সহ পরিবেশ পরিবর্তনশীল আপডেট করুন

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: টেস্ট সেটআপ 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 save pm2 startup exit 0

ধাপ 4: ধাপ 4: JSON কনফিগারেশন আপডেট করুন

আপনার পছন্দের দলের জন্য আপনার JSON কনফিগারেশন ফাইল সেটআপ করুন, এই ফাইলটি /opt /nhl GO CAPITALS এ অবস্থিত! JSON ফাইল কনফিগার করুন

সফ্টওয়্যারটি একটি JSON ফাইল ব্যবহার করে যে হার্ডওয়্যার এবং টিম আপনি অনুসরণ করছেন তা কনফিগার করতে। টিমটি ওয়েব সার্ভারের মাধ্যমে সেট করা যেতে পারে যা চলমান থাকবে, কিন্তু হার্ডওয়্যার সেটআপ ম্যানুয়ালি সেট করা প্রয়োজন:

এখানে প্রতিটি সম্ভাব্য মূল্যের ব্যাখ্যা দেওয়া হল:

  • myteam: এই টিমের letter টি অক্ষর কোড যা আপনি অনুসরণ করতে চান
  • ডিবাগ: সম্ভাব্য মান হল 1 (সত্য) বা 0 (মিথ্যা), এবং কতটা লগিং লেখা হবে তা নিয়ন্ত্রণ করবে।
  • আউটপুট: এই পদ্ধতিটি দ্বারা স্কোর/বিবরণ দেখানো হয়। সম্ভাব্য মান হল:

    • lcd: এটি 2004 lcd
    • কনসোল: এটি শুধুমাত্র টার্মিনালে লিখবে (কমান্ড লাইন চালানোর জন্য)
    • oled: SSD6404 ওলেড ডিসপ্লের জন্য সমর্থন
  • আলো: দুই ধরনের আলো সমর্থিত

    • অ্যালার্ম: এটি একটি ট্রানজিস্টর চালু/বন্ধ করার জন্য একটি একক GPIO চালাবে
    • মাল্টি-লিড: একটি মাল্টি কালার, বা একাধিক এলইডি সমর্থন করে
    • কোনটি: কোন আলো সংযুক্ত নয়
  • amp: এটি GPIO যা amp এর জন্য ট্রানজিস্টর চালায়

প্রস্তাবিত: