সুচিপত্র:

স্মার্ট ওয়াল ক্যালেন্ডার: 5 টি ধাপ
স্মার্ট ওয়াল ক্যালেন্ডার: 5 টি ধাপ

ভিডিও: স্মার্ট ওয়াল ক্যালেন্ডার: 5 টি ধাপ

ভিডিও: স্মার্ট ওয়াল ক্যালেন্ডার: 5 টি ধাপ
ভিডিও: 4 ক্যামেরা / 3 ক্যামেরা কিভাবে চালাবেন? | How to use all camera in phone bangla | Imrul Hasan Khan 2024, নভেম্বর
Anonim
স্মার্ট ওয়াল ক্যালেন্ডার
স্মার্ট ওয়াল ক্যালেন্ডার

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

এই টিউটোরিয়ালে আমি আপনাকে দেখাবো, কিভাবে স্মার্ট ওয়াল ক্যালেন্ডার তৈরি করতে হয়, বেশ কয়েকটি গুগল অ্যাকাউন্ট থেকে ইভেন্ট প্রদর্শন করে। এটি সময়, তারিখ, আবহাওয়া, তাপমাত্রা এবং কিছু অতিরিক্ত তথ্য প্রদর্শন করবে। এটি একটি রাস্পবেরি পাই কম্পিউটার দ্বারা চালিত হবে যার সাথে একটি প্যাসিভ ইনফ্রারেড সেন্সর (পিআইআর) মোশন সেন্সর সংযুক্ত থাকবে, যাতে ডিসপ্লে চালু হয়, যখন রুমে মোশন ধরা পড়ে, কিন্তু কয়েক মিনিটের নিষ্ক্রিয়তার পরে বন্ধ হয়ে যায়। এই টিউটোরিয়ালটি ইন্টারনেটে পাওয়া অন্যান্য বেশ কয়েকটি টিউটোরিয়ালের উপর ভিত্তি করে এবং আমি আরও ভাল বোঝার জন্য তাদের লিঙ্কগুলি দেব। কিছু প্রাথমিক প্রোগ্রামিং জ্ঞান প্রয়োজন (HTML, Python,…)।

ধাপ 1: হার্ডওয়্যার

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

- একটি রাস্পবেরি পাই কিট। প্রাথমিকভাবে আমি অন্য কিছু প্রকল্প থেকে আমার পুরানো মডেল 2 ব্যবহার করেছি। এটি কাজ করেছে, কিন্তু ওয়েব পেজ এডিটিং এবং রিলোডিংয়ে আমার অনেক সময় লেগেছে, তাই আমি অবশেষে মডেল 3 এ বদল করলাম, যা আরও সাবলীলভাবে কাজ করে https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313 এবং _nkw = রাস্পবেরি+পাই+কিট এবং _স্যাক্যাট = 0

- এলসিডি স্ক্রিন আমি আমার পুরাতন ল্যাপটপ থেকে স্ক্রিন ব্যবহার করেছি, তাই এর জন্য শুধুমাত্র LVDS ড্রাইভার বোর্ড কিনতে হবে এবং পাওয়ার সাপ্লাই https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=hdmi+ ড্রাইভার+LVDS+বোর্ড এবং _sacat = 0

-ইলেকট্রনিক্সের জন্য প্লাস্টিকের স্টোরেজ বক্স

- প্যাসিভ ইনফ্রারেড মোশন সেন্সর

- AM2302 তাপমাত্রা/আর্দ্রতা সেন্সর

- LCD ফ্রেমের জন্য কালো প্লাস্টিকের স্লাইড-অন বাইন্ডার

- বিভিন্ন তার (HDMI, ডিসি পাওয়ারের জন্য 5.5 মিমি, সোল্ডারলেস ব্রেডবোর্ড জাম্পার কেবল, …)

ধাপ 2: এলসিডি ডিসপ্লে তৈরি করা

এলসিডি ডিসপ্লে তৈরি করা হচ্ছে
এলসিডি ডিসপ্লে তৈরি করা হচ্ছে
এলসিডি ডিসপ্লে তৈরি করা হচ্ছে
এলসিডি ডিসপ্লে তৈরি করা হচ্ছে
এলসিডি ডিসপ্লে তৈরি করা হচ্ছে
এলসিডি ডিসপ্লে তৈরি করা হচ্ছে

আমি আমার পুরানো অপ্রচলিত ল্যাপটপ থেকে LCD স্ক্রিন ব্যবহার করেছি। এটি কীভাবে করা যায় সে সম্পর্কে বিভিন্ন টিউটোরিয়াল রয়েছে, আমি এটি অনুসরণ করেছি:

www.instructables.com/id/How-to-reuse-the-old-LCD-Screen-of-your-broken-Lap/

আমি আমার পুরানো ল্যাপটপের কভার ভেঙে ফেললাম, এলসিডি ডিসপ্লে বের করলাম এবং তারপর সঠিক LVDS ড্রাইভার বোর্ডের আদেশ দিলাম। আমি বিক্রেতাকে প্রোডাক্ট কোড প্রদান করেছি, যা LCD এর পিছনে পাওয়া যেতে পারে, আমার ক্ষেত্রে এটি LP171WE3 (TL) (A2) - শেষ ছবিতে নীচে ডান লেবেল দেখুন, এবং তারপর তিনি আমাকে উপযুক্ত LVDS পাঠিয়েছেন। অনুগ্রহ করে মনে রাখবেন, ডিসপ্লের জন্য আপনার বিদ্যুৎ সরবরাহেরও প্রয়োজন হবে, তাই বিক্রেতাকেও এটি পাঠাতে বলুন। ড্রাইভার বোর্ডকে সুন্দরভাবে ফিট করার জন্য এবং LCD এর পিছনের পাশে সংযুক্ত করার জন্য আমি একটি সুন্দর 14.5 × 7.5 × 2cm প্লাস্টিকের বাক্স কিনেছি।

এখন এলসিডি ডিসপ্লেতে ধাতব ফ্রেম রয়েছে, যা দেখতে খুব সুন্দর নয়। প্রাথমিকভাবে আমি এটিকে কালো রঙে স্প্রে করেছি, কিন্তু পেইন্টটি ছিঁড়ে ফেলতে শুরু করেছে। তাই আমি চারটি কালো প্লাস্টিকের স্লাইড-অন বাইন্ডার নিয়েছি, যা সাধারণত কাগজের বাঁধাইয়ের চাদরগুলির জন্য ব্যবহৃত হয়, সে অনুযায়ী সেগুলি ছাঁটাই করে এবং ফ্রেমটি আবৃত করার জন্য সংযুক্ত করে। এটি ভাল লাগছিল, তাই আমি আমার পুরানো রাস্পবেরি পাই এবং ভয়েলার সাথে এইচডিএমআই -এ প্লাগ করা সমস্ত তারগুলি সংযুক্ত করেছি - এটি কাজ করেছে! ডিসপ্লেতে একটি ছবি দেখাচ্ছিল, তাই আমি পরবর্তী ধাপে যাওয়ার জন্য প্রস্তুত ছিলাম - ডিসপ্লেতে কোন তথ্য দেখাতে হবে এবং কিভাবে দেখাতে হবে।

ধাপ 3: সফ্টওয়্যার সেট আপ

যখন আমি কিছু সূত্রের জন্য ইন্টারনেটে খুঁজছিলাম, কিভাবে ক্যালেন্ডার তৈরি করা যায়, আমি এই পৃষ্ঠা https://dakboard.com/site দ্বারা অনুপ্রাণিত হয়েছি। তারা সমাপ্ত পণ্য (ডিসপ্লে, কম্পিউটার এবং ওয়ার্কিং সফটওয়্যার) প্রদান করে, কিন্তু তাদের DIY সমাধানের জন্য একটি চমৎকার টিউটোরিয়াল রয়েছে (https://blog.dakboard.com/diy-wall-display/)। আমি আপনাকে এই টিউটোরিয়ালটি অনুসরণ করার পরামর্শ দিচ্ছি, কমপক্ষে প্রথম অংশের জন্য রাস্পবেরিতে সিস্টেম প্রস্তুত এবং সেট আপ করার নির্দেশাবলী সহ, যাতে ব্রাউজারটি বুট করার সময় পছন্দসই ওয়েব পৃষ্ঠাটি স্বয়ংক্রিয়ভাবে লোড করে।

এটি সুন্দরভাবে কাজ করেছে, তবে আমি কিছু সমাধান খুঁজছিলাম, যা আমার ইচ্ছা অনুযায়ী আরও কাস্টমাইজ করা যেতে পারে। আমি আমার নিজস্ব ওয়েব সার্ভার সেট আপ করার এবং একটি ওয়েব পেজ তৈরি করার সিদ্ধান্ত নিয়েছি, যা ক্যালেন্ডারের পাশাপাশি অতিরিক্ত তথ্য দেখাবে। আমি Wordpress.org বেছে নিয়েছি, যেহেতু এটি ভালভাবে নথিভুক্ত এবং আপনাকে সাহায্য করার জন্য ভাল সমর্থন এবং বৃহৎ সম্প্রদায় রয়েছে। রাস্পবেরি পাইতে কীভাবে ওয়ার্ডপ্রেস ইনস্টল করবেন তার টিউটোরিয়াল এখানে দেওয়া হল: https://projects.raspberrypi.org/en/projects/lamp-web-server-with-wordpress। ওয়ার্ডপ্রেস ইনস্টল করার সাথে সাথে, আমার হোমপেজ ডিজাইন করার সময় এসেছে। আপনি অনেক প্রদত্ত থিমগুলির মধ্যে একটি ব্যবহার করতে পারেন, অথবা শুরু থেকে নকশা করতে পারেন যাই হোক, এর জন্য কিছু HTML প্রোগ্রামিং জ্ঞান প্রয়োজন।

আমি আমার পেজ ডিজাইন করেছি, যাতে বাম দিকে ক্যালেন্ডার দেখানো হয় (https://sl.wordpress.org/plugins/google-calendar-events/), ডানদিকে সময় এবং তারিখ দেখানো হয় (https://www.timeanddate.com/clocks/free.html এবং https://www.arclab.com/en/kb/htmlcss/display-date-time-javascript-php-ssi.html)। আবহাওয়ার পূর্বাভাস এই পৃষ্ঠা থেকে (https://www.1a-vreme.si/vremensko-okno/), যা স্লোভেনীয় শহরগুলির জন্য পূর্বাভাস উইজেট প্রদান করে, কিন্তু আমার মনে হয় অন্যান্য দেশের উইজেট ইন্টারনেটেও পাওয়া যাবে। AM2302 সেন্সর ব্যবহার করে তাপমাত্রা সংগ্রহ করা হয় নীচে একটি সাধারণ দৈনিক কাউন্টডাউন টাইমার রয়েছে, যা কোন ইভেন্টের জন্য কত দিন বাকি আছে তা প্রদর্শন করে (আমার বাচ্চাদের জানার জন্য আকর্ষণীয়, কতদিন তাদের কোন কিছুর জন্য অপেক্ষা করতে হবে)। উপরের ডান প্রান্তে রয়েছে মেটা স্লাইডার প্লাগইন (https://wordpress.org/plugins/ml-slider/), যা এলোমেলোভাবে আমার পরিবারের নির্বাচিত ছবিতে স্লাইড করে। উপরন্তু আমি সুন্দর ব্যাকগ্রাউন্ডের জন্য কিছু এলোমেলো ছবি দেখানোর জন্য ব্যাকগ্রাউন্ড স্লাইডার প্লাগইন (https://sl.wordpress.org/plugins/background-slider-master/) ব্যবহার করেছি।

আগেই উল্লেখ করা হয়েছে, AM2302 সেন্সর ব্যবহার করে ঘরের তাপমাত্রা সংগ্রহ করা হয়। কিভাবে তাপমাত্রা পাওয়া যায় তার অনেক টিউটোরিয়াল আছে, আমি এটি অনুসরণ করেছি: https://www.modmypi.com/blog/am2302-temphumidity-sensor। পরে আমি এই সেন্সরটিকে অন্য রাস্পবেরি পাইতে সরিয়ে দিয়েছি যার উপর হোম অ্যাসিস্ট্যান্ট চলছে, কারণ এর ডিএইচটি সেন্সর কম্পোনেন্ট (https://www.home-assistant.io/components/sensor.dht/) ব্যবহার করে মানগুলি পড়া এবং প্রকাশ করা সহজ। । হোম অ্যাসিস্ট্যান্ট বিভিন্ন আবহাওয়া উপাদান ব্যবহার করে বাইরের তাপমাত্রা সংগ্রহ করতে পারে, আমি YR.no কম্পোনেন্ট ব্যবহার করেছি (https://www.home-assistant.io/compferences/sensor.yr/)। এর সাথে, আমি এই উপাদানগুলি থেকে অভ্যন্তরীণ/বাইরের তাপমাত্রা সংগ্রহ করার জন্য একটি অটোমেশন স্ক্রিপ্ট লিখেছিলাম এবং সেগুলি একটি টেক্সট ফাইলে লিখেছিলাম, যা আমার দেয়াল ক্যালেন্ডারে প্রদর্শিত হয়। হোম সহকারী সম্পর্কে আরও তথ্যের জন্য, হোমপেজ দেখুন (https://www.home-assistant.io/)।

ধাপ 4: ptionচ্ছিক - প্রদর্শন বন্ধ করা

এখন আমাদের ক্যালেন্ডার সেট আপ এবং চলমান আছে, ঠিক যেভাবে আমরা এটি পছন্দ করি। কিন্তু আমরা চাই না যে ডিসপ্লে ২ 24/7 চালু হোক। আমরা কেবল এটি চালু করতে চাই, যখন কেউ বাড়িতে থাকে। এছাড়াও আমরা চাই না যে এটি মাঝরাতে চালু হোক, যখন আমরা টয়লেটে যাই, এটি খুব উজ্জ্বল! সুতরাং আমরা লক্ষ্য করার জন্য একটি ইনফ্রারেড সেন্সর সংযুক্ত করব, যখন কেউ এর সামনে দাঁড়িয়ে থাকে এবং কিছু সময় সীমা যুক্ত করে, যখন এটি চালু করা উচিত।

দয়া করে মনে রাখবেন যে আমার প্রোগ্রামিং দক্ষতা বরং সীমিত, তাই নিম্নলিখিতগুলি অনুকূল হতে পারে না, যেহেতু আমি এটি বিভিন্ন অনলাইন ফোরাম এবং টিউটোরিয়াল থেকে বেছে নিয়েছি, কিন্তু মূলত এটি কাজ করে। তবুও, কোন সুপারিশ এখনও স্বাগত জানাই। প্রথমে আমরা মনিটর ম্যানুয়ালি চালু/বন্ধ করার জন্য পরীক্ষা দিয়ে শুরু করব। তার জন্য, আমরা দুটি ফাইল তৈরি করব (উদাহরণস্বরূপ Monitor_on.sh এবং Monitor_off.sh) এবং তাতে কিছু কোড লিখব। এটি করার সবচেয়ে সহজ উপায় হল SSH ব্যবহার করে আপনার রাস্পবেরিতে লগ ইন করুন এবং টাইপ করুন

sudo ন্যানো Monitor_on.sh

এবং নিচের কোডটি টাইপ করুন

tvservice -পছন্দসই;

startx/usr/bin/graphical_launcher `fgconsole`

সংরক্ষণ এবং প্রস্থান করার জন্য CTRL+X টিপুন, তারপর দ্বিতীয় ফাইল তৈরি করুন

sudo ন্যানো Monitor_off.sh

এবং নিচের কোডটি টাইপ করুন

tvservice --off;

আবার, সংরক্ষণ এবং প্রস্থান করার জন্য CTRL+X টিপুন। এই নতুন তৈরি ফাইলগুলি এক্সিকিউটেবল করুন:

sudo chmod +x Monitor_on.sh

sudo chmod +x Monitor_off.sh

এখন এই কমান্ডগুলি কাজ করছে কিনা তা চেষ্টা করার জন্য, টাইপ করুন

sudo./monitor_off.sh

sudo./monitor_on.sh

মনিটর এখন সেই অনুযায়ী বন্ধ এবং চালু করা উচিত। আমি লক্ষ্য করেছি যে রাস্পবেরি পাই 2 তে মনিটর চালু হতে প্রায় 10 সেকেন্ড সময় লেগেছে। রাস্পবেরি পাই 3 তে এটি 1-2 সেকেন্ড সময় নেয়। পরবর্তী আমরা একটি ইনফ্রারেড সেন্সর সংযুক্ত করব, যা এই স্ক্রিপ্টগুলিকে ট্রিগার করবে। আবার, রাস্পবেরি পাই এবং পিআইআর সেট আপ করার জন্য অনেক টিউটোরিয়াল আছে, আমি এটি অনুসরণ করেছি: https://www.instructables.com/id/PIR-Sensor-Interfacing-With-Raspberry-Pi/। মূলত, ন্যানো এডিটর ব্যবহার করে একটি ফাইল তৈরি করুন (উদাহরণস্বরূপ motion_sensor.py) এবং এতে উপযুক্ত পাইথন কোড টাইপ করুন। নীচে আমার ফাইলের উদাহরণ:

RPi. GPIO আমদানি GPIO হিসাবে time.time () SHUTOFF_DELAY = 180 # সেকেন্ড যদিও সত্য: i = GPIO.input (17) যদি i == 0: # যখন মোশন সেন্সর থেকে আউটপুট কম হয়, তাহলে মনিটর চালু করুন অফ না থাকলে ও সময় এবং সময় ()> (last_motion_time + SHUTOFF_DELAY): "কোন অনুপ্রবেশকারী নেই" মুদ্রণ করুন, iturned_off = Truetime.sleep (1) subprocess.call (['/home/pi/Monitor_off.sh'], shell = True) elif i == 1: #যখন মোশন সেন্সর থেকে আউটপুট উচ্চ, মনিটর চালু করুন অনপ্রিন্ট "অনুপ্রবেশকারী সনাক্ত", itime.sleep (1) last_motion_time = time.time () sys.stdout.flush () যদি turn_off এবং dt.datetime.now ()। hour> 5 এবং dt.datetime। ঘন্টা ()

মনে রাখবেন যে "GPIO.setup (17, GPIO. IN)" ইঙ্গিত করে যে PIR থেকে আউটপুট পিন রাস্পবেরি পাইতে 17 পিনের সাথে সংযুক্ত। কোন পিনটি নির্ভর করে আপনি GPIO.setmode (GPIO. BOARD) বা GPIO.setmode (GPIO. BCM) নির্ধারণ করেন কিনা তা নির্ভর করে। পার্থক্য এখানে ব্যাখ্যা করা হয়েছে: https://raspberrypi.stackexchange.com/questions/12966/what-is-the-difference-between-board-and-bcm-for-gpio-pin-numbering। GPIO. BOARD এর সামনে আমার # আছে, তাই এটি উপেক্ষা করা হয়েছে এবং GPIO. BCM ব্যবহার করা হয়েছে।

লাইন লক্ষ্য করুন

SHUTOFF_DELAY = 180 #সেকেন্ড

এখানে বলা হয়েছে, শেষ গতি শনাক্ত হওয়ার পর থেকে মনিটরটি কতক্ষণ চালু থাকে, এটি বন্ধ করার আগে। এটি দরকারী কারণ আমি চাই না যে মনিটরটি চলতে চলতে অবিরত বন্ধ/চালু থাকুক, তবে এটি বন্ধ হওয়ার আগে কিছু সময়ের জন্য এটি চালু রাখতে চাই। আমি 180 সেকেন্ডের ব্যবধান বেছে নিয়েছি, যাতে শেষ গতি ধরা পড়ার প্রায় 3 মিনিট পর মনিটর বন্ধ হয়ে যায়।

অবশেষে, এই লাইন

যদি turn_off এবং dt.datetime.now ()। hour> 6 এবং dt.datetime.now ()। hour <23:

বলে যে মনিটর শুধুমাত্র 6:00 থেকে 23:00 এর মধ্যে চালু হয়, তাই এটি রাতের সময় আমাকে বিরক্ত করে না। রেখাগুলি

মুদ্রণ "কোন অনুপ্রবেশকারী", i

এবং

মুদ্রণ "অনুপ্রবেশকারী সনাক্ত", i

শুধুমাত্র স্ক্রিপ্ট পরীক্ষার জন্য, আপনি সেগুলি পরে মুছে ফেলতে পারেন, যখন আপনার এটি কাজ করবে। এখন স্ক্রিপ্টটি পরীক্ষা করুন:

sudo পাইথন motion_sensor.py

আপনি সেন্সরের উপরে waveেউ দিলে "অনুপ্রবেশকারী সনাক্ত" বার্তাগুলি দেখতে হবে, অন্যথায় এটি "অনুপ্রবেশকারী নয়" হবে। যখন এই স্ক্রিপ্টটি পরীক্ষা করা হয় এবং কাজ করা হয়, এটি বুট থেকে শুরু করার জন্য সেট করুন:

sudo nano।/.config/lxsession/LXDE-pi/autostart

এবং নিম্নলিখিত লাইন যোগ করুন

udসুডো/ইউএসআর/বিন/পাইথন/হোম/পিআই/মোশন_সেন্সর.পি

অবশ্যই আপনার তৈরি করা পাইথন স্ক্রিপ্টের সঠিক ফাইলের নাম উল্লেখ করতে হবে।

ধাপ 5: ক্যালেন্ডার টাঙান

সমস্ত সেট আপের সাথে, দেয়ালে ক্যালেন্ডার টাঙানোর সময় এসেছে!

প্রাথমিকভাবে আমি ভাবছিলাম এলসিডি ডিসপ্লের পিছনে রাস্পবেরি পাই লুকানোর, যাতে কেবল একটি কেবল (ডিসি পাওয়ার) প্রয়োজন হয়। কিন্তু যেহেতু রাস্পবেরি 5V এবং LCD ডিসপ্লে 12V তে চলে, তাই আমার অতিরিক্ত ট্রান্সফরমার লাগবে। এছাড়াও, রাস্পবেরি কেসটি বেশ মোটা, যার অর্থ হল LCD প্রাচীর থেকে প্রায় 3 সেন্টিমিটার দূরে থাকবে। তাই আমি এটি পরিত্যাগ করেছি এবং শুধুমাত্র LCD এর পিছনে LCD ইলেকট্রনিক্স রেখেছি, যাতে এটি এখন প্রাচীর থেকে 1 সেন্টিমিটারেরও কম দূরে থাকে। আমি ডিসি পাওয়ার সাপ্লাইয়ের জন্য দুটি 5 মিটার লম্বা তার, একটি HDMI এবং একটি 5, 5mm অর্জন করেছি। দুটি তারই সাদা, দেয়ালের মতো, যার অর্থ তারা খুব বেশি দাঁড়ায় না। আমি দেয়ালে এলসিডি লাগিয়েছি এবং রাস্পবেরি বিপরীত দেয়ালে রেফ্রিজারেটরের উপরে রেখেছি, তাই এটি মূলত লুকানো, তবুও সহজেই অ্যাক্সেসযোগ্য।

প্রস্তাবিত: