সুচিপত্র:

ব্রাউজার রাস্পবেরি পাই মডেল 3 A+: 6 ধাপ (ছবি সহ) দিয়ে রোম্বা রোবট নিয়ন্ত্রিত
ব্রাউজার রাস্পবেরি পাই মডেল 3 A+: 6 ধাপ (ছবি সহ) দিয়ে রোম্বা রোবট নিয়ন্ত্রিত

ভিডিও: ব্রাউজার রাস্পবেরি পাই মডেল 3 A+: 6 ধাপ (ছবি সহ) দিয়ে রোম্বা রোবট নিয়ন্ত্রিত

ভিডিও: ব্রাউজার রাস্পবেরি পাই মডেল 3 A+: 6 ধাপ (ছবি সহ) দিয়ে রোম্বা রোবট নিয়ন্ত্রিত
ভিডিও: How To Update Windows 10 Latest Version Without Losing Data In Bangla 2024, জুলাই
Anonim
ব্রাউজার রাস্পবেরি পাই মডেল 3 এ+ দিয়ে রোম্বা রোবট নিয়ন্ত্রিত করে
ব্রাউজার রাস্পবেরি পাই মডেল 3 এ+ দিয়ে রোম্বা রোবট নিয়ন্ত্রিত করে
ব্রাউজার রাস্পবেরি পাই মডেল 3 এ+ দিয়ে রোম্বা রোবট নিয়ন্ত্রিত
ব্রাউজার রাস্পবেরি পাই মডেল 3 এ+ দিয়ে রোম্বা রোবট নিয়ন্ত্রিত

ওভারভিউ

এই নির্দেশযোগ্য কিভাবে একটি মৃত রুম্বাকে একটি নতুন মস্তিষ্ক (রাস্পবেরি পাই), চোখ (ওয়েবক্যাম) এবং একটি ওয়েব ব্রাউজার থেকে সবকিছু নিয়ন্ত্রণ করার একটি উপায় প্রদান করবে।

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

এই বিল্ডের জন্য আমি রাস্পবেরি পাই মডেল 3 এ+ এবং একটি রিওর্যান্ড মোটর নিয়ামক ব্যবহার করেছি। আমি ডেক্সটার ইন্ডাস্ট্রিজ ব্রাউজার নিয়ন্ত্রিত রোবট থেকে কোড ব্যবহার করছি যা আমি পরিবর্তন করেছি। ডেক্সটার ইন্ডাস্ট্রিজ সংস্করণটি Pi কে একটি ওয়েবসকেট সার্ভার হিসাবে সেট করে যা আপনাকে অন্য কম্পিউটার চালানো ক্লায়েন্ট HTML ফাইল থেকে তাদের রোবট (ইট পাই প্ল্যাটফর্ম) নিয়ন্ত্রণ করতে দেয়।

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

কিভাবে একটি সহজ, সস্তা বেস রোবট তৈরি করা যায় তা দেখানোর আশায় আমি প্রক্রিয়াটি এখানে নথিভুক্ত করছি।

ব্যবহৃত অংশ

রাস্পবেরি পাই 3 এ+ (অ্যাডাফ্রুট লিংক) $ 30

রিওর্যান্ড ডুয়াল মোটর ড্রাইভার কন্ট্রোলার এইচ-ব্রিজ (অ্যামাজন লিংক) $ 22

মোটরগুলির জন্য 12V ব্যাটারি (অ্যামাজন লিংক) $ 19

রাস্পবেরি পাই (অ্যামাজন লিঙ্ক) এর জন্য 5V ব্যাটারি $ 10

8GB মাইক্রো এসডি কার্ড (অ্যামাজন লিংক) $ 5

জাম্পার ওয়্যারস (অ্যামাজন লিংক) $ 7

Roomba 500 সিরিজ

সব একসাথে $ 100 এর নিচে।

ধাপ 1: রাস্পবিয়ান ইনস্টল করুন এবং একটি স্ট্যাটিক আইপি ঠিকানা সেটআপ করুন

রাস্পবিয়ান ইনস্টল করুন এবং একটি স্ট্যাটিক আইপি ঠিকানা সেটআপ করুন
রাস্পবিয়ান ইনস্টল করুন এবং একটি স্ট্যাটিক আইপি ঠিকানা সেটআপ করুন

আমি রাস্পবিয়ান স্ট্রেচ লাইট ব্যবহার করেছি। আমি ডেস্কটপের প্রয়োজন দেখিনি, তবে আপনি চাইলে ডেস্কটপ সংস্করণটি ইনস্টল করতে পারেন।

আমি অনুমান করতে যাচ্ছি যে আপনি ইতিমধ্যে রাস্পবিয়ান ইনস্টল করতে জানেন। আপনার যদি সাহায্যের প্রয়োজন হয়, আপনি রাস্পবেরি পাই ফাউন্ডেশনের গাইড খুঁজে পেতে পারেন এখানে।

একবার আপনি রাস্পবিয়ান চালু এবং চালানোর পরে, লগইন করুন এবং রাস্পি-কনফিগার প্রোগ্রামটি চালান।

pi@raspberrypi: ~ $ sudo raspi-config

রাস্পি-কনফিগারে আপনার ওয়াইফাই সংযোগ সেটআপ করুন

নির্বাচন করুন

2 নেটওয়ার্ক বিকল্প

নির্বাচন করুন

N2 ওয়াই-ফাই

একটি দেশ নির্বাচন করুন, আপনার SSID লিখুন এবং আপনার পাসফ্রেজ লিখুন

রাস্পি-কনফিগারে এসএসএইচ সেটআপ করুন

একবার আমি প্রাথমিক কনফিগারেশন করেছিলাম, আমি শিরোনামহীন সবকিছু সেট করতে SSH ব্যবহার করেছি। (যদি আপনি একটি মনিটর ব্যবহার করেন তবে আপনি এটি এড়িয়ে যেতে পারেন। রোবট বন্ধ না করে এবং মনিটরে প্লাগ না করে কোডে পরিবর্তন করা আমার পক্ষে সহজ ছিল।)

রাস্পি-কনফিগ প্রধান মেনুতে ফিরে আসুন

নির্বাচন করুন

5 ইন্টারফেসিং বিকল্প

নির্বাচন করুন

P2 SSH

নির্বাচন করুন

হ্যাঁ

রাস্পি-কনফিগের প্রধান মেনুতে ফিরে যান

আপনি আপনার নেটওয়ার্কের সাথে সংযুক্ত কিনা তা যাচাই করুন

pi@raspberrypi: ~ $ ifconfig

আপনি এই অনুরূপ একটি আউটপুট গ্রহণ করা উচিত। (আইপি ঠিকানা নোট করুন; আপনার পরে এটির প্রয়োজন হতে পারে। যেমন ।192.168.1.18)

wlan0: পতাকা = 4163 mtu 1500

inet 192.168.1.18 নেটমাস্ক 255.255.255.0 সম্প্রচার 192.168.1.255 inet6 fe80:: c74f: 42ec: 8cd3: 2fda prefixlen 64 scanidid 0x20 ether b8: 27: eb: 6a: a4: 95 txqueuelen 1000 (ইথারনেট) RX প্যাকেট 444766 5.5 এমআইবি) আরএক্স ত্রুটি 0 ড্রপ 0 ওভাররন 0 ফ্রেম 0 টিএক্স প্যাকেট 30530 বাইট 39740576 (37.8 এমআইবি) টিএক্স ত্রুটি 0 ড্রপ 0 ওভাররন 0 ক্যারিয়ার 0 সংঘর্ষ 0

যাচাই করুন আপনি ইন্টারনেটে পৌঁছাতে পারেন।

pi@raspberrypi: ~ $ ping google.com

আপনি এই অনুরূপ একটি আউটপুট গ্রহণ করা উচিত।

PING google.com (216.58.194.110) 56 (84) বাইট ডেটা।

Dfw06s48-in-f14.1e100.net (216.58.194.110) থেকে 64 বাইট: icmp_seq = 1 ttl = 54 সময় = 18.2 ms 64 বাইট dfw06s48-in-f14.1e100.net (216.58.194.110) থেকে: icmp_seq = 2 ttl = 54 সময় = 19.4 ms 64 বাইট dfw06s48-in-f14.1e100.net (216.58.194.110) থেকে: icmp_seq = 3 ttl = 54 সময় = 23.6 ms 64 বাইট dfw06s48-in-f14.1e100.net (216.58.194.110) থেকে): icmp_seq = 4 ttl = 54 সময় = 30.2 ms ^C --- google.com পিং পরিসংখ্যান --- 4 প্যাকেট প্রেরণ, 4 প্রাপ্ত, 0% প্যাকেট ক্ষতি, সময় 3004ms rtt মিনিট/গড়/সর্বোচ্চ/mdev = 18.209/ 22.901/30.267/4.715 এমএস

একটি স্ট্যাটিক আইপি সেটআপ করুন

আপনার নেটওয়ার্কে একই ঠিকানা ব্যবহার করে আপনার রোবটের সাথে ধারাবাহিকভাবে সংযোগ করতে সক্ষম হওয়ার জন্য, আপনি একটি স্ট্যাটিক আইপি সেট আপ করতে চাইবেন।

আপনার বর্তমান নেটওয়ার্ক ঠিকানা পান যেমন উদ.192.168.1.18

আমি PH আমার নেটওয়ার্কের সাথে সংযুক্ত হওয়ার সময় স্বয়ংক্রিয়ভাবে DHCP দ্বারা নির্ধারিত ঠিকানা ব্যবহার করছি। আপনি এটিকে আপনার পছন্দ মত পরিবর্তন করতে পারেন যতক্ষণ এটি আপনার নেটওয়ার্কের সাথে মিলে যায় এবং অন্য কোন নির্ধারিত ঠিকানার সাথে বিরোধ না করে।

একটি টেক্সট এডিটরে dhcp.conf খুলুন। (আমি ন্যানো ব্যবহার করি)

pi@raspberrypi: ~ $ sudo nano /etc/dhcpcd.conf

#উদাহরণ স্ট্যাটিক আইপি কনফিগারেশনে স্ক্রোল করুন এবং নিম্নলিখিত লাইনগুলি পরিবর্তন করুন।

#ইন্টারফেস eth0

#স্ট্যাটিক ip_address = 192.168.11.13 #স্ট্যাটিক রাউটার = 192.168.11.1 #স্ট্যাটিক ডোমেন_নাম_ সার্ভার = 192.168.11.1 8.8.8.8

আপনার নেটওয়ার্কের সাথে মেলে পরিবর্তন করুন এবং প্রতিটি লাইনের শুরুতে # সরান।

উদাহরণ:

ইন্টারফেস wlan0

স্ট্যাটিক ip_address = 192.168.1.18 স্ট্যাটিক রাউটার = 192.168.1.1 স্ট্যাটিক domain_name_servers = 192.168.1.1 8.8.8.8

সংরক্ষণ এবং ত্যাগ.

রিবুট করুন এবং SSH এর মাধ্যমে Pi এর সাথে সংযোগ করুন

pi@raspberrypi: ~ $ sudo রিবুট

SSH ব্যবহার করে অন্য কম্পিউটার থেকে সংযোগ করুন। উইন্ডোজ ব্যবহারকারীরা পুটি বা উইন্ডোজ সাবসিস্টেম লিনাক্স (উইন্ডোজ ১০) ব্যবহার করতে পারেন।

ian@কম্পিউটার: ~ $ ssh [email protected]

আপনার পাসওয়ার্ড লিখুন (ডিফল্ট হল রাস্পবেরি)।

[email protected] এর পাসওয়ার্ড:

আপনার এখন আপনার পিআই কমান্ড প্রম্পটে থাকা উচিত।

পাই@রাস্পবেরিপি: ~ $

ধাপ 2: মোশন ইনস্টল এবং কনফিগার করুন

মোশন ইনস্টল এবং কনফিগার করুন
মোশন ইনস্টল এবং কনফিগার করুন

মোশন একটি প্রোগ্রাম যা অনেক নিরাপত্তা ক্যামেরা / ওয়েবক্যাম প্রকল্পে ব্যবহৃত হয়। মোশনের অনেক বৈশিষ্ট্য রয়েছে। যাইহোক, আমরা ওয়েবক্যাম থেকে পোর্ট 8081 এ ভিডিও স্ট্রিম করার জন্য এটি সেট আপ করছি।

আপনার ওয়েবক্যাম পরীক্ষা করুন

আপনার ওয়েবক্যাম প্লাগ করুন এবং সংযুক্ত ইউএসবি ডিভাইসের তালিকা (সংযোগের পরে আপনাকে পুনরায় বুট করতে হতে পারে)।

pi@raspberrypi: ~ $ lsusb

আপনি এই অনুরূপ একটি আউটপুট পেতে হবে। Logitech C210 নোট করুন।

বাস 001 ডিভাইস 002: ID 046d: 0819 Logitech, Inc. ওয়েবক্যাম C210

বাস 001 ডিভাইস 001: আইডি 1d6b: 0002 লিনাক্স ফাউন্ডেশন 2.0 রুট হাব

যদি আপনার ক্যামেরা না দেখায়, তাহলে এটি সামঞ্জস্যপূর্ণ নাও হতে পারে অথবা আপনাকে অতিরিক্ত ড্রাইভার ইনস্টল করতে হতে পারে।

মোশন ইনস্টল করুন

প্যাকেজ আপডেট করুন।

pi@raspberrypi: ~ $ sudo apt-get update

মোশন ইনস্টল করুন।

pi@raspberrypi: ~ $ sudo apt -install install -y

মোশন ইনস্টল হয়ে গেলে কনফিগ ফাইলটি সম্পাদনা করুন।

pi@রাস্পবেরি: ~ $ sudo ন্যানো /etc/motion/motion.conf

নিচের লাইনগুলিকে নীচে মেলে পরিবর্তন করুন।

ডেমন চালু

প্রস্থ 640 উচ্চতা 480 ফ্রেমরেট 100 আউটপুট_চিত্র বন্ধ ffmpeg_output_movies বন্ধ text_right stream_port 8081 stream_quality 100 stream_localhost off webcontrol_localhost বন্ধ

বুটে মোশন ডেমন শুরু করুন

/Etc/default/motion ফাইলটি খুলুন।

pi@raspberrypi: ~ $ sudo nano/etc/default/motion

পরিবর্তন

start_motion_daemon = হ্যাঁ

ফাইল এবং সংরক্ষণ করে প্রস্থান করুন

রিবুট করুন

pi@raspberrypi: ~ $ sudo রিবুট

পাই পুনরায় বুট করার পরে ব্রাউজারটি খুলুন এবং যাচাই করুন যে আপনার 8081 পোর্টে ব্রাউজারে ভিডিও স্ট্রিমিং আছে

উদাহরণ:

192.168.1.18:8081

মোশন ডেমন সমস্যা সমাধান

আমি মোশন ডেমনকে বুটে শুরু করার সময় সমস্যাগুলির মধ্যে দৌড়ে গিয়েছিলাম যখন আমি Motion.conf ফাইলে বিভিন্ন বিকল্প চেষ্টা করেছিলাম।

আপনি যদি রাস্পিয়ান স্ট্রেচে মোশন ডেমন এর আগে মোশন শুরু করেন, তাহলে আপনি সম্ভবত বুট এ শুরু করার পরে সমস্যাগুলির মধ্যে পড়বেন। এটি করার জন্য ডেমন কনফিগার না করে "সুডো মোশন" চালানো প্রথমে ব্যবহারকারীকে লেখার অনুমতি না দিয়ে ডিরেক্টরি/var/log/motion তৈরি করে।

ধাপ 3: অ্যাপাচি এবং সেটআপ ওয়েব কন্ট্রোল পেজ ইনস্টল করুন

Apache এবং Setup Web Control Page ইনস্টল করুন
Apache এবং Setup Web Control Page ইনস্টল করুন

অ্যাপাচি হলো রোবটের নিয়ন্ত্রণ ওয়েব পেজের ওয়েব সার্ভার। আমরা ডিফল্ট Apache index.html ফাইলটি github থেকে ডাউনলোড করা ফাইল দিয়ে প্রতিস্থাপন করতে যাচ্ছি। আপনি মোশন ভিডিও স্ট্রিম প্রদর্শনের জন্য কোডের কয়েকটি লাইন পরিবর্তন করবেন এবং রোবটকে নিয়ন্ত্রণ করার জন্য কোথায় কমান্ড পাঠাবেন তা নির্ধারণ করবেন।

Apache এবং Git ইনস্টল করুন

pi@raspberrypi: ~ $ sudo apt -get apache2 git -y ইনস্টল করুন

অ্যাপাচি এবং গিট ইনস্টল হয়ে গেলে ফাইলগুলি ডাউনলোড করুন।

pi@raspberrypi: ~ $ git clone

রুমবারোবট ডিরেক্টরি খুলুন।

pi@raspberrypi: ~ $ cd roombarobot

/Var/www/html ফোল্ডারে index.html ফাইলটি/home/pi/roombarobot এ index.html ফাইলের সাথে প্রতিস্থাপন করুন

pi@raspberrypi: ~/roombarobot $ sudo cp index.html/var/www/html

Index.html ফাইল এডিট করুন

একটি টেক্সট এডিটর দিয়ে index.html ফাইলটি খুলুন।

pi@raspberrypi: ~/roombarobot $ sudo nano /var/www/html/index.html

এই দুটি লাইন সনাক্ত করুন

var host = "ws: // YOURIPADDRESS: 9093/ws";

ধাপ 1 এ আপনার স্থির আইপি ঠিকানায় "YOURIPADDRESS" পরিবর্তন করুন এবং ফাইলটি সংরক্ষণ করুন।

উদাহরণ:

var হোস্ট = "ws: //192.168.1.18: 9093/ws";

অন্য কম্পিউটারে, একটি ব্রাউজার খুলুন এবং আপনার Pi এর IP ঠিকানা লিখুন। আপনার বাম দিকে একটি বাক্স, আপনার ওয়েবক্যাম থেকে ভিডিও স্ট্রিমিং এবং ডানদিকে ওয়েব নিয়ন্ত্রণ বোতাম সহ নিয়ন্ত্রণ ওয়েব পৃষ্ঠাটি দেখা উচিত।

ধাপ 4: কোড সেটআপ করুন এবং পরীক্ষা করুন

কোড সেটআপ করুন এবং পরীক্ষা করুন
কোড সেটআপ করুন এবং পরীক্ষা করুন

এই কোডটি পাইথনে লেখা এবং টর্নেডো লাইব্রেরির প্রয়োজন। কোড 9093 পোর্টে ওয়েবসকেটগুলির মাধ্যমে নিয়ন্ত্রণ ওয়েব পৃষ্ঠা থেকে কমান্ড শোনার জন্য একটি সার্ভার সেট আপ করার জন্য লাইব্রেরি ব্যবহার করে।

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

পিপ ইনস্টল করুন

pi@raspberrypi: ~ $ sudo apt-get python-pip ইনস্টল করুন

টর্নেডো লাইব্রেরি ইনস্টল করুন

pi@raspberrypi: ~ $ sudo pip install tornado

Roombabot প্রোগ্রাম শুরু করুন এবং সংযোগ পরীক্ষা করুন

Roombabot.py প্রোগ্রাম শুরু করুন

pi@raspberrypi: ~ $ sudo python /home/pi/roombarobot/roombabot.py

একবার চলার পরে, আপনার টার্মিনালে "প্রস্তুত" দেখতে হবে। একটি ব্রাউজারে কন্ট্রোল ওয়েব পেজ খুলুন এবং কানেক্ট ক্লিক করুন। তারপরে পৃষ্ঠার যে কোনও দিকনির্দেশক বোতামে ক্লিক করুন। আপনি আপনার কীবোর্ডে তীরচিহ্নগুলিও ব্যবহার করতে পারেন।

আপনি এই অনুরূপ টার্মিনালে একটি আউটপুট দেখতে হবে।

প্রস্তুত

সংযোগ খোলা … সংযোগ খোলা … প্রাপ্ত: u 8 চলমান ফরওয়ার্ড সংযোগ খোলা … প্রাপ্ত: l 6 বাঁ দিকে বাঁকানো সংযোগ খোলা … প্রাপ্ত: d 2 চলমান বিপরীত সংযোগ খোলা … প্রাপ্ত: r 4 ডান দিকে ঘুরছে

প্রোগ্রাম বন্ধ করতে ctrl+c চাপুন।

একবার আপনি পাই বন্ধ পাওয়ার পরীক্ষা শেষ হয়ে গেলে।

pi@raspberrypi: ~ $ sudo poweroff

বাগ

আমি নিয়ন্ত্রণ ওয়েব পৃষ্ঠায় শাটডাউন বোতামে একটি সমস্যা লক্ষ্য করেছি। কখনও কখনও শাটডাউন বোতামটি ক্লিক বা ট্যাপ করলে কিছুই করে না। আমি এর কারণ কী তা বুঝতে পারিনি, তবে একটি সমাধান আছে। আপনি যদি রোবটটি বন্ধ করতে চান এবং শাটডাউন বোতামটি কাজ না করে, পৃষ্ঠাটি পুনরায় লোড করুন, সংযোগ বোতামে ক্লিক করুন / আলতো চাপুন এবং তারপরে শাটডাউন বোতামে ক্লিক করুন / আলতো চাপুন। এটি বন্ধ করা উচিত।

ধাপ 5: সমাবেশ

সমাবেশ
সমাবেশ
সমাবেশ
সমাবেশ
সমাবেশ
সমাবেশ
সমাবেশ
সমাবেশ

যেমনটি আগে উল্লেখ করা হয়েছে, এই প্রকল্পের জন্য আপনাকে রুমবা ব্যবহার করতে হবে না। দুটি মোটর, দুটি চাকা এবং একটি ফ্রেম সহ যেকোনো কিছু কাজ করবে। আমি রুম্বাকে আলাদা করে নিয়েছি এবং চাকা মডিউল এবং ব্যাটারি ছাড়া সবকিছু সরিয়ে ফেলেছি।

চাকা মডিউল

Roomba এর চাকা এবং মোটর একটি অপসারণযোগ্য মডিউল একসঙ্গে রাখা হয়। প্রতিটি মডিউলে মোটর, গিয়ারবক্স, চাকা, সাসপেনশন স্প্রিং এবং ইন্টারফেস বোর্ড ধারণকারী একটি নীল বাইরের আবাসন রয়েছে।

ইন্টারফেস বোর্ড

প্রতিটি ইন্টারফেস বোর্ডে ছয়টি তার রয়েছে। দুটি তারের (লাল [+], কালো [-]) আছে যা মোটরকে ঘোরায়, হল ইফেক্ট সেন্সরের জন্য একটি ডেটা তার, হুইল ড্রপ সুইচের জন্য একটি তার, একটি 5V তারের এবং একটি GND তারকে সেন্সরকে শক্তি দেয়। ইন্টারফেস বোর্ড অ্যাক্সেস করার জন্য আপনাকে মডিউল আলাদা করতে হবে। আমি মোটর থেকে সবকিছু সরিয়ে দিলাম এবং মোটরটিতে নতুন [+] এবং [-] তারগুলি বিক্রি করলাম (ছবি দেখুন)। আপনি সেন্সর সংরক্ষণ করতে চান কিনা তা আপনার উপর নির্ভর করে।

সাসপেনশন স্প্রিংস

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

মোটর কন্ট্রোলারের কাছে মোটরগুলি সংযুক্ত করা

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

মোটর এবং ব্যাটারিকে মোটর কন্ট্রোলারের কাছে সংযুক্ত করা

শক্তি - - - - - - - - - - - - - - - 12V [+] - - - - - - - - - - - - রুম্বা ব্যাটারি [+]

মোটর 2- - - - - - - - - - - - - - কালো - - - - - - - - - - - বাম মোটর [-] মোটর 2- - - - - - - - - - - - - - - লাল - - - - - - - - - - - - - - বাম মোটর [+] মোটর 1- - - - - - - - - - - - - - কালো - - - - - - - - - - - - - রাইট মোটর [-] মোটর ১- GND- - - - - - - - - - - - - - - - 12V [-] - - - - - - - - - - - - রুমবা ব্যাটারি [-]

রাস্পবেরি পাইতে মোটর কন্ট্রোলারকে সংযুক্ত করা

মোটর কন্ট্রোলার পিনের তারের রঙ (ছবি দেখুন) রাস্পবেরি পাই পিন

GND- - - - - - - - - - - - - - - - কালো - - - - - - - - - - - - GND PWM 2- - - - - - - - - - - - - - - নীল - - - - - - - - - - - - জিপিও 18 ডিআইআর 2- - - -জিপিও 23 PWM 1- - - - - - - - - - - - - - - - - হলুদ - - - - - - - - - - - - জিপিও 24 ডিআইআর 1- - - - - - - - কমলা - - - - - - - - - - - - জিপিও 25 5 ভি - - - - - - - - - - - - - - - - লাল - - - - - - - 5V

ইলেকট্রনিক্স মাউন্ট করা

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

ব্যাটারি

আমি রাস্পবেরি পাই এবং মোটর কন্ট্রোলারের জন্য আলাদা ব্যাটারি ব্যবহার করেছি। Pi এর ব্যাটারি হল একটি 5V ব্যাটারি প্যাক যা সেলফোনগুলিকে শক্তিশালী করতে ব্যবহৃত হয়। মোটর কন্ট্রোলারের জন্য আমি আসল রুম্বা ব্যাটারি ব্যবহার করেছি যা তার সাথে এসেছে। ব্যাটারি টার্মিনালগুলিকে লেবেল করা হয় না, তাই মোটর কন্ট্রোলারের সাথে তারের সংযোগ করার আগে ভোল্টমিটার দিয়ে ভোল্টেজ পরীক্ষা করা ভাল। রুম্বা ব্যাটারিতে তারগুলি সংযুক্ত করার জন্য, আমি চারটি নিওডিয়ামিয়াম চুম্বক ব্যবহার করেছি (ছবি দেখুন)। আমি তারে দুটি চুম্বক বিক্রি করেছি এবং বাকি দুটি আমি ব্যাটারি টার্মিনালে আটকেছি। সোল্ডারিং চুম্বককে ডিমেগনেটাইজ করে। যাইহোক, বাইরের আবরণ এখনও টার্মিনালে চুম্বকের সাথে সংযুক্ত হতে পারে এবং বিদ্যুৎ পরিচালনা করতে পারে। এটি ব্যাটারিকে সংযোগ এবং সংযোগ বিচ্ছিন্ন করে কেকের একটি টুকরো করে তোলে।

পরীক্ষামূলক

একবার আপনার সবকিছু একসাথে হয়ে গেলে, যাচাই করুন যে আপনার সবকিছু সঠিকভাবে তারযুক্ত হয়েছে, আপনার রোবটটিকে কিছুতে আপ করুন (যাতে এটি রোল না হয়) এবং এটি চালু করুন।

লগইন করুন এবং roombabot.py প্রোগ্রাম শুরু করুন

pi@raspberrypi: ~ $ sudo python /home/pi/roombarobot/roombabot.py

ওয়েব নিয়ন্ত্রণ পৃষ্ঠায় যান এবং এটি পরীক্ষা করুন। যদি সবকিছু সঠিকভাবে তারযুক্ত হয়, বোতামগুলি ক্লিক করা / তীরচিহ্নগুলি চাপলে চাকাগুলি একই দিকে ঘুরতে হবে (সংযোগ ক্লিক করতে ভুলবেন না)।

ধাপ 6: বুট / সমাপ্তিতে পাইথন কোড শুরু করা

বুথ / সমাপ্তিতে পাইথন কোড শুরু করা
বুথ / সমাপ্তিতে পাইথন কোড শুরু করা
বুথ / সমাপ্তিতে পাইথন কোড শুরু করা
বুথ / সমাপ্তিতে পাইথন কোড শুরু করা

শেষ জিনিসটি আমাদের করতে হবে রাস্পবিয়ানকে বুথে পাইথন প্রোগ্রাম শুরু করতে বলুন। এটি করার জন্য আমরা স্ক্রিপ্ট তৈরি করতে যাচ্ছি এবং ক্রোনট্যাব ব্যবহার করে রিবুট করার সময় এটি চালানোর সময়সূচী।

স্ক্রিপ্ট তৈরি করুন

Pi ইউজার ডিরেক্টরিতে startrobot.sh নামে একটি নতুন স্ক্রিপ্ট ফাইল তৈরি করুন

pi@raspberrypi: ~ $ sudo nano startrobot.sh

নিচের লাইনগুলো ফাইলে অনুলিপি করুন

#!/বিন/শ

#startrobot.sh cd /cd /home /pi /roombarobot sudo python roombabot.py cd /

ফাইল এবং সংরক্ষণ করে প্রস্থান করুন

Startrobot.sh ফাইলটি এক্সিকিউটেবল করুন

pi@raspberrypi: ~ $ sudo chmod 755 startrobot.sh

এটি পরীক্ষা করে দেখুন (ctrl + c চাপুন বন্ধ করতে)

pi@raspberrypi: ~ $ sh startrobot.sh

Crontab ফাইলটি সম্পাদনা করুন

pi@raspberrypi: ~ $ sudo crontab -e

নীচের লাইনটি ফাইলটির নীচে যুক্ত করুন

# m h dom mon dow কমান্ড

b reboot sh /home/pi/startrobot.sh

সংরক্ষণ এবং ত্যাগ

Pi পুনরায় বুট করা বা পাওয়ার সাইকেল চালানোর সময় roombabot.py প্রোগ্রামটি এখন শুরু করা উচিত।

শেষ করছি

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

প্রস্তাবিত: