সুচিপত্র:
- সরবরাহ
- ধাপ 1: এটি কিভাবে কাজ করে …
- ধাপ 2: কোড আপলোড করা হচ্ছে
- ধাপ 3: লাইব্রেরি প্রয়োজন:
- ধাপ 4: সংযোগ
- ধাপ 5: এটা সব একসাথে চড়
- ধাপ 6: আরও উন্নতি:
ভিডিও: একটি রোবট যা বলে যে কোন ইলেকট্রনিক্স বিক্রেতা আপনাকে প্রতারণা করছে কি না: 6 টি ধাপ
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 07:57
গত বছর, আমি এবং আমার বাবা একটি নতুন খোলা রোবোটিক্স/ইলেকট্রনিক্স দোকানে গিয়েছিলাম যেখানে আমরা বাস করি তার খুব কাছাকাছি। যখন আমি সেখানে প্রবেশ করলাম, এটি ইলেকট্রনিক্স, সেরোভ, সেন্সর, রাস্পবেরি পিস এবং আরডুইনোসে পূর্ণ ছিল। পরের দিন, আমরা একই দোকানে গিয়েছিলাম এবং প্রায় 150 মার্কিন ডলার মূল্যের অনেক সিনিয়র এবং 3 টি আরডুইনো কিনেছিলাম। যত তাড়াতাড়ি আমি বাড়িতে গিয়েছিলাম, আরডুইনো মেগা ছাড়া অন্য কোন পণ্য কাজ করেনি। আমরা প্রায় 130 মার্কিন ডলারের জন্য প্রতারিত হয়েছিলাম যা অনেক।
সুতরাং, আমি একটি রোবট তৈরির সিদ্ধান্ত নিয়েছি যা প্রায় 12 টি সেন্সর এবং 2 টি মোটর পরীক্ষা করতে পারে (এখনও সার্ভোতে কাজ করছে) এবং পণ্যটি ত্রুটিযুক্ত কিনা তা নির্ধারণ করতে পারে।
এর মধ্যে সরাসরি প্রবেশ করা যাক!
সরবরাহ
1. আরডুইনো ইউএনও
2.4 TFT টাচস্ক্রিন ডিসপ্লে
3. জাম্পার তারের দম্পতি
4. সেন্সর এবং মোটর যাতে আপনি তাদের পরীক্ষা করতে পারেন (এখানে আমি ব্যবহার করেছি - মোশন সেন্সর, এমকিউ 6 গ্যাস সেন্সর, সাউন্ড সেন্সর, পোটেন্টিওমিটার এবং ওয়াটার লেভেল সেন্সর)
ধাপ 1: এটি কিভাবে কাজ করে …
আমি একটি TFT ডিসপ্লে সহ UI তৈরি এবং ইন্টারেক্টিভ করার জন্য একটি Arduino প্রোগ্রাম করেছি। আমরা জানি, TFT ডিসপ্লেতে শুধুমাত্র একটি ফ্রি পিন অর্থাৎ A5 পিন রয়েছে। (যদি আপনি ইউএনও ব্যবহার করেন)। সুতরাং যে কোনও সেন্সর যা ডেটা পড়তে এনালগ পিন ব্যবহার করে এই সেটআপের সাথে সামঞ্জস্যপূর্ণ …
UI তে, আপনি ডেস্কটপের পটভূমির রঙ পরিবর্তন করতে পারেন এবং আপনি সেন্সর পরীক্ষা করার জন্য আমার দ্বারা Arduino এর জন্য তৈরি করা অ্যাপটি খুলতে পারেন।
অ্যাপটি খোলার সময়, আপনি 2 টি বিকল্প দেখতে পাবেন, ইনপুট এবং আউটপুট। সুতরাং যদি আপনি ইনপুট ক্লিক করেন, এটি 4 টি সেন্সর দেখায় (এটি 12 এর সাথে সামঞ্জস্যপূর্ণ, কিন্তু আমি এখনও এটি প্রোগ্রাম করতে পারছি না কারণ আমার কাছে পরীক্ষা আসছে…। সময় নেই: (যে কেউ কোড সম্পাদনা করতে স্বাধীন …)
এবং এটিও পরীক্ষা করতে পারে যে আপনার সার্ভো মোটরটি স্লটে সংযোগ করে কিনা।
একবার দেখুন:
ধাপ 2: কোড আপলোড করা হচ্ছে
কোডটি একটি line০০ লাইনের প্রোগ্রাম যা আমি প্রায় ৫০ ঘন্টার মধ্যে সাবধানে কোড করেছি। এটিতে কয়েকটি বাগ আছে তাই plz এটি সংশোধন করুন এবং এটি আমার মেইলে ([email protected]) পাঠান।
কোডটি আপলোড করুন এবং TFT ieldালটিকে Arduino এর সাথে সংযুক্ত করুন। আমি আপনাকে UI এর সাথে খেলার পরামর্শ দিচ্ছি যাতে আপনি এটিকে আরও ভালভাবে পেতে পারেন।
কোড:
#অন্তর্ভুক্ত
#অন্তর্ভুক্ত #অন্তর্ভুক্ত #অন্তর্ভুক্ত #অন্তর্ভুক্ত LCD_CS A3 #সংজ্ঞায়িত LCD_CD A2 #সংজ্ঞায়িত LCD_WR A1 #সংজ্ঞায়িত LCD_RD A0 #সংজ্ঞায়িত LCD_RESET A4 #নির্ধারিত কালো 0x0000 #নির্ধারিত BLUE 0x001F #Dex0NEFE0NEFE0NEFE0NEFE0NEFE0NEFE0NEFENEFENEFE0NEFE0 #FEFINE #FEFINE #FEFINE #FEFIN #FEFINE #ডিফাইন ম্যাগেন্টা 0xF81F #ডিফাইন ইয়েলো 0xFFE0 #ডাইফাইন হোয়াইট 0xFFFF #ডিফাইন লাইটগ্রেয় 0xC618 #ডিফাইন পার্পল 0x780F #ডিফাইন ওলাইভ 0x7BE0 #ডিফাইন সিডাইন #ডিফাইন এক্সফাইন #ডিফাইন এক্সফাইন #এফাইন 6 160 #TS_MAXX 160 নির্ধারণ করুন #TS_MAXY 970 টাচস্ক্রিন ts = টাচস্ক্রিন (XP, YP, XM, YM, 300); Adafruit_TFTLCD tft (LCD_CS, LCD_CD, LCD_WR, LCD_RD, LCD_RESET); #ডিফাইন বক্সাইজ 40 চর অবস্থা = 6; int touch = 0; int রঙ = কালো; int redir = 0; int ota; অকার্যকর সেটআপ () {Serial.begin (9600); tft.reset (); tft.setFont (& FreeMonoBoldOblique12pt7b); tft.begin (0x9325); tft.set রোটেশন (45); tft.setTextSize (0.5); tft.fillScreen (সাদা); tft.setCursor (60, 160); tft.setTextColor (কালো); tft.print ("লগ ইন করতে সোয়াইপ করুন"); } void loop () {float sensorVoltage; ভাসমান সেন্সর মান; TSPoint p = ts.getPoint (); পিনমোড (এক্সএম, আউটপুট); পিনমোড (ওয়াইপি, আউটপুট); যদি (pz> MINPRESSURE && pz 240 && px 130 && py 240 && px 20 && py 240 && px 20 && py 160 && px 12 && py 240 && px 20 && py 240 && px 20 && py 40 && px 15 && py 150 && px 40 && py 150 && px 80 && py 150 && px 120 && py 150 && px 170 && py 90 && px 40 && py 90 && px 80 && py 90 && px 120 && py 150 && px 170 && py 150 && px 170 && py 150 && px 170 && py 150 && px 170 && py 150 && px 170 && py 100 && px 20 && py 200 && px 100 && py 100 && px 20 && py 100 && px 20 && py 100 && px 20 && py <100) {touch = 26; }} if (touch == 1 && state == 6) {tft.setRotation (0); tft.fillScreen (রঙ); শব্দ = 0; tft.fillRect (200, 180, 80, 140, সাদা); tft.drawRect (201, 181, 81, 141, কালো); tft.fillRect (80, 30, 100, 100, CYAN); tft.drawRect (81, 31, 101, 101, কালো); tft.fillRect (10, 30, 50, 100, NAVY); tft.drawRect (11, 31, 51, 101, কালো); tft.fillRect (10, 180, 30, 120, PURPLE); tft.drawRect (11, 181, 31, 121, কালো); tft.fillRect (45, 180, 30, 120, নীল); tft.drawRect (46, 181, 31, 121, কালো); tft.fillRect (80, 180, 30, 120, CYAN); tft.drawRect (81, 181, 31, 121, কালো); tft.fillRect (115, 180, 30, 120, GREEN); tft.drawRect (116, 181, 31, 121, কালো); tft.fillRect (150, 180, 30, 120, YELLOW); tft.drawRect (151, 181, 31, 121, কালো); tft.fill ত্রিভুজ (210, 30, 210, 50, 220, 40, সাদা); tft.fillRect (200, 35, 12, 12, সাদা); tft.draw ত্রিভুজ (210, 30, 210, 50, 220, 40, কালো); tft.drawRect (200, 35, 12, 12, কালো); tft.drawCircle (210, 40, 14, সাদা); //tft.fillTriange (a1, b1, a2, b2, c1, c2, RED); tft.set রোটেশন (45); tft.setCursor (200, 20); tft.print ("সেটিংস"); tft.fillRoundRect (45, 75, 75, 75, 4, সাদা); tft.drawRoundRect (45, 75, 75, 75, 4, কালো); tft.fillRect (75, 75, 15, 30, কালো); tft.fillRect (75, 120, 15, 30, কালো); tft.fillRect (90, 105, 30, 15, কালো); tft.fillRect (45, 105, 30, 15, কালো); রাষ্ট্র = 7; স্পর্শ = 0; ota = 0; } যদি (স্পর্শ == 2) {tft.fillScreen (WHITE); tft.setRotation (0); tft.fill ত্রিভুজ (210, 30, 210, 50, 220, 40, সাদা); tft.fillRect (200, 35, 12, 12, সাদা); tft.draw ত্রিভুজ (210, 30, 210, 50, 220, 40, কালো); tft.drawRect (200, 35, 12, 12, কালো); tft.drawCircle (210, 40, 14, কালো); tft.set রোটেশন (45); tft.fill ত্রিভুজ (270, 40, 270, 20, 260, 30, কালো); tft.drawLine (300, 30, 270, 30, কালো); tft.setCursor (20, 200); tft.print ("ব্যক্তিগতকরণ"); tft.setCursor (20, 170); tft.print ("লগ আউট"); tft.setCursor (20, 140); tft.print ("পেরিফেরালস"); tft.setCursor (20, 110); tft.print ("সম্পর্কে"); স্পর্শ = 1; রাষ্ট্র = 2; } যদি (স্পর্শ == 10 && অবস্থা == 2) {tft.fillScreen (WHITE); tft.setCursor (10, 160); tft.setTextColor (কালো); tft.print ("তৈরি এবং উন্নত"); tft.setCursor (100, 190); tft.print ("দ্বারা:"); tft.setCursor (60, 220); tft.print ("A teen from India"); tft.setRotation (0); tft.fill ত্রিভুজ (210, 30, 210, 50, 220, 40, সাদা); tft.fillRect (200, 35, 12, 12, সাদা); tft.draw ত্রিভুজ (210, 30, 210, 50, 220, 40, কালো); tft.drawRect (200, 35, 12, 12, কালো); tft.drawCircle (210, 40, 14, কালো); tft.set রোটেশন (45); tft.fill ত্রিভুজ (270, 40, 270, 20, 260, 30, কালো); tft.drawLine (300, 30, 270, 30, কালো); রাষ্ট্র = 6; } if (touch == 11 && state == 2) {tft.fillScreen (WHITE); tft.setCursor (60, 40); tft.print ("একটি বাছুন"); tft.setCursor (40, 60); tft.print ("ব্যাকগ্রাউন্ড কালার"); tft.fillRect (60, 180, 45, 45, RED); tft.fillRect (120, 180, 45, 45, YELLOW); tft.fillRect (180, 180, 45, 45, নীল); tft.fillRect (240, 180, 45, 45, GREEN); tft.fillRect (60, 130, 45, 45, MAGENTA); tft.fillRect (120, 130, 45, 45, NAVY); tft.fillRect (180, 130, 45, 45, LIGHTGREY); tft.fillRect (240, 130, 45, 45, CYAN); tft.fillRect (60, 80, 45, 45, সাদা); tft.drawRect (60, 80, 45, 45, কালো); tft.fillRect (120, 80, 45, 45, কালো); tft.fillRect (180, 80, 45, 45, OLIVE); tft.fillRect (240, 80, 45, 45, বেগুনি); tft.setRotation (0); tft.fill ত্রিভুজ (210, 30, 210, 50, 220, 40, সাদা); tft.fillRect (200, 35, 12, 12, সাদা); tft.draw ত্রিভুজ (210, 30, 210, 50, 220, 40, কালো); tft.drawRect (200, 35, 12, 12, কালো); tft.drawCircle (210, 40, 14, কালো); tft.set রোটেশন (45); tft.fill ত্রিভুজ (270, 40, 270, 20, 260, 30, কালো); tft.drawLine (300, 30, 270, 30, কালো); রাষ্ট্র = 6; যদি (redir == 1) {color = WHITE; } যদি (redir == 2) {color = BLACK; } যদি (redir == 3) {color = OLIVE; } যদি (redir == 4) {color = PURPLE; } যদি (redir == 5) {color = MAGENTA; } যদি (redir == 6) {color = NAVY; } যদি (redir == 7) {color = LIGHTGREY; } যদি (redir == 8) {color = CYAN; } যদি (redir == 9) {color = RED; } যদি (redir == 10) {color = YELLOW; } যদি (redir == 11) {color = BLUE; } যদি (redir == 12) {color = GREEN; }} যদি (স্পর্শ == 26) {ota = 1; tft.fillScreen (সাদা); tft.setRotation (0); tft.fill ত্রিভুজ (210, 30, 210, 50, 220, 40, সাদা); tft.fillRect (200, 35, 12, 12, সাদা); tft.draw ত্রিভুজ (210, 30, 210, 50, 220, 40, কালো); tft.drawRect (200, 35, 12, 12, কালো); tft.drawCircle (210, 40, 14, কালো); tft.set রোটেশন (45); tft.fill ত্রিভুজ (270, 40, 270, 20, 260, 30, কালো); tft.drawLine (300, 30, 270, 30, কালো); tft.setRotation (1); tft.setCursor (30, 80); tft.print ("ইনপুট"); tft.setCursor (30, 150); tft.print ("আউটপুট"); tft.drawRect (25, 130, 90, 30, কালো); tft.drawRect (25, 60, 90, 30, কালো); যদি (p.x> 190 && p.x 30 && p.y <90) {tft.setCursor (150, 220); tft.print ("পানির স্তর"); tft.setCursor (150, 170); tft.print ("গ্যাস স্তর"); tft.setCursor (150, 120); tft.print ("দূরত্ব"); tft.setCursor (150, 70); tft.print ("সাউন্ড"); স্পর্শ = 1; রাষ্ট্র = 2; }}} while (sound == 1) {tft.fillScreen (WHITE); sensorValue = analogRead (A5); সেন্সর ভোল্টেজ = সেন্সর ভ্যালু; tft.setCursor (60, 160); tft.print (sensorVoltage); Serial.println ("সাউন্ড লেভেল ="); Serial.println (sensorVoltage); বিলম্ব (1000); যদি (শব্দ == 0) {বিরতি; }}}}
ধাপ 3: লাইব্রেরি প্রয়োজন:
- Adafruit_GFX.h
- Adafruit_TFTLCD.h
- TouchScreen.h
একই জন্য Github লিঙ্ক:
github.com/adafruit/Adafruit-GFX- লাইব্রেরি
github.com/adafruit/TFTLCD- লাইব্রেরি
github.com/adafruit/Adafruit_TouchScreen
ধাপ 4: সংযোগ
আপনি 6 জাম্পার তারের প্রয়োজন 3 জন পুরুষ এবং 3 জন মহিলা। এগুলি সরাসরি Arduino বোর্ডে বিক্রি করুন:
ধাপ 5: এটা সব একসাথে চড়
আরডুইনোতে তারগুলি টানুন (চিত্রটি দেখুন), প্রয়োজন হলে কিছু আঠালো বন্দুক ব্যবহার করুন …
তারপর TFT ieldাল সংযুক্ত করুন তারপর আপনার সেন্সর পরীক্ষা করুন।
সমস্ত পথ নিচে স্ক্রল করার জন্য আপনাকে ধন্যবাদ। যদি আপনি অনুভব করেন যে এই প্রকল্পটি অনন্য এবং সহায়ক ছিল তবে আমার জন্য ভোট দিতে ভুলবেন না
খুশি করা এবং ইলেকট্রনিক্স স্ক্যামারদের থেকে সাবধান?
ধাপ 6: আরও উন্নতি:
- আরো সেন্সর সামঞ্জস্য
- Servo মোটর কোড শেষ করতে হয়েছিল
- আরেকটি অ্যাপ যা ব্লুটুথ মডিউল দিয়ে ইন্টারফেস করতে পারে যাতে আমরা এটি দিয়ে একটি ব্লুটুথ চালিত রোবট নিয়ন্ত্রণ করতে পারি।
- বাগ সংশোধন করা হয়েছে
প্রস্তাবিত:
একটি সহজ ইনফিনিটি মিরর কিউব তৈরি করুন কোন 3D মুদ্রণ এবং কোন প্রোগ্রামিং না: 15 টি ধাপ (ছবি সহ)
একটি সহজ ইনফিনিটি মিরর কিউব তৈরি করুন NO 3D প্রিন্টিং এবং NO প্রোগ্রামিং: প্রত্যেকেই একটি ভাল ইনফিনিটি কিউব পছন্দ করে, কিন্তু তাদের দেখে মনে হয় যে এগুলি তৈরি করা কঠিন হবে। এই নির্দেশাবলীর জন্য আমার লক্ষ্য হল কিভাবে ধাপে ধাপে একটি তৈরি করতে হয় তা দেখানো। শুধু তাই নয়, আমি আপনাকে যে নির্দেশনা দিচ্ছি তার সাহায্যে আপনি একটি করতে পারবেন
রোবট যা আপনাকে একটি চাকরি দেয়: 6 টি ধাপ
রোবট যা আপনাকে চাকরি দেয়: আপনি কি সাম্প্রতিক স্নাতক? আপনি কি একজন শিক্ষার্থী গ্রীষ্মের দিকের তাড়াহুড়ো খুঁজছেন? তুমি কি জানো না, শুধু একটা চাকরি চাই? আচ্ছা আর দেখো না, এই রোবটটি তোমাকে একটা পেতে সাহায্য করে
24 - একটি টিকিং বোমা যা আপনাকে আপনার ফোন নামিয়ে দিতে বলে: 5 টি ধাপ
24 - একটি টিকিং বোমা যা আপনাকে আপনার ফোন নামিয়ে দিতে বলে: 24 (পূর্বে কী নামে পরিচিত) একটি টাইমার যা ব্যবহারকারীদের ফোনে সময় নষ্ট করার পরিবর্তে ফোনটি রেখে অন্য কাজে মনোনিবেশ করতে উৎসাহিত করে। এটি একটি বোমা মত ডিজাইন করা হয়েছে যাতে এর পরিবর্তনের কারণে আচরণ পরিবর্তনের একটি ভাল ফলাফল প্রদান করা যায়
রহস্যময় ক্রিস্টাল বল (এটি আক্ষরিকভাবে আপনাকে আপনার ভাগ্য বলে!): 3 টি ধাপ (ছবি সহ)
মিস্টিক ক্রিস্টাল বল (এটি আক্ষরিক অর্থেই আপনাকে আপনার ভাগ্য বলে!): একটি ভাগ্য বলার স্ফটিক বল তৈরি করতে শিখুন যা স্পর্শ করলে আপনার ভবিষ্যৎ প্রকাশ করে! প্রকল্পটি তিনটি মৌলিক অংশ নিয়ে গঠিত এবং প্রায় চার ঘন্টার মধ্যে তৈরি করা যাবে। উপকরণ: ১। ক্যাপাসিটিভ টাচ সেন্সর: 1 - Arduino Uno মাইক্রোকন্ট্রোলার 1
শূন্য খরচ ল্যাপটপ কুলার / স্ট্যান্ড (কোন আঠা, কোন ড্রিলিং, কোন বাদাম এবং বোল্ট, কোন স্ক্রু): 3 ধাপ
জিরো কস্ট ল্যাপটপ কুলার / স্ট্যান্ড (কোন আঠা, কোন ড্রিলিং, কোন বাদাম এবং বোল্ট, কোন স্ক্রু নেই): আপডেট: দয়া করে দয়া করে ভোট আমার জন্য প্রবেশ করুন www.instructables.com/id/Zero-Cost-Aluminium-Furnace-No-Propane-No-Glue-/ অথবা আমার সেরা বন্ধুদের জন্য মেইব ভোট