সুচিপত্র:
- ধাপ 1: একই কোডে মাস্টার এবং স্লেভ উভয়ই
- ধাপ 2: ব্লুটুথ মডিউল টক মাধ্যমে সিরিয়াল পড়ুন এবং লিখুন
- ধাপ 3: রেস নিয়ন্ত্রণ
- ধাপ 4: কোড অব বাকি
- ধাপ 5: এরপর কি?
ভিডিও: Arduino Hot Wheels Speed Track Part #2 - Code: 5 Step
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 08:01
এই প্রকল্পের প্রথম অংশে আমরা 2 টি ব্রেডবোর্ডে প্রোটোটাইপের জন্য হার্ডওয়্যার তৈরি করেছি।
এবং এই অংশে আমরা কোডের উপর যাব, এটি কিভাবে কাজ করে এবং তারপর এটি পরীক্ষা করে দেখুন।
সম্পূর্ণ কোড পর্যালোচনা এবং কাজের কোডের প্রদর্শনের জন্য উপরের ভিডিওটি দেখতে ভুলবেন না।
ধাপ 1: একই কোডে মাস্টার এবং স্লেভ উভয়ই
কোডটি 2 অংশে, কিন্তু একই ফাইলের ভিতরে। কোন কোডটি কম্পাইল বা উপেক্ষা করা হবে তা নির্ধারণ করতে আমি #define এবং #ifdef ব্যবহার করি তাই আমি যে কোনো কোডকে আলাদা করতে পারি যা শুধুমাত্র মাস্টার ব্রেডবোর্ডের জন্য এবং কোড যা শুধু স্লেভ ব্রেডবোর্ডের জন্য।
মূলত, যদি ডিফাইন মাস্টার পাওয়া যায়, তাহলে মাস্টার কোড ব্লকের ভিতরে বসে থাকা যেকোনো কোড কম্পাইল করা হবে এবং সেই ব্লকের বাইরের যেকোনো কোড কম্পাইল করার সময় মুছে ফেলা হবে।
#ifdef মাস্টার
// মাস্টার নির্দিষ্ট কোড এখানে আছে
#অন্যথায়
#দাস নির্ধারণ করুন
// স্লেভ নির্দিষ্ট কোড এখানে আছে
#যদি শেষ
মাস্টার কম্পাইল করা হলে আমি #ডিভাইন স্লেভ করার জন্য একই কৌশল ব্যবহার করছি তাই আপনাকে কেবল মাস্টারকে সংজ্ঞায়িত করার বিষয়ে চিন্তা করতে হবে বা স্লেভকে সংজ্ঞায়িত করতে সক্ষম হবে না।
ধাপ 2: ব্লুটুথ মডিউল টক মাধ্যমে সিরিয়াল পড়ুন এবং লিখুন
এই প্রকল্পে শুধুমাত্র স্লেভ ব্রেডবোর্ড মাস্টার রুটিবোর্ডের সাথে কথা বলে। মাস্টার কখনই ফিরে কথা বলেন না, এটি কেবল শোনে এবং তারপরে আসা ডেটার উপর কাজ করে।
মডিউলগুলি Arduino কোডিং ইকোসিস্টেমের অন্তর্নির্মিত সিরিয়াল ক্লাস ব্যবহার করে কথা বলে এবং শোন।
ব্লুটুথ মডিউলগুলি 38400 বাউডে যোগাযোগ করে, তাই উভয় কোড পাথ তাদের সিরিয়াল যোগাযোগ ব্যবহার করে শুরু করে:
Serial.begin (38400);
এবং দাস ব্যবহার করে:
Serial.write (এখানে তথ্য);
মাস্টারের সাথে কথা বলতে, এবং মাস্টার ব্যবহার করে:
ডেটা = সিরিয়াল.রিড ();
সিরিয়াল স্ট্রিম শুনতে এবং এর বিষয়বস্তু পড়তে এবং এটি একটি ভেরিয়েবলের ভিতরে সংরক্ষণ করুন।
ধাপ 3: রেস নিয়ন্ত্রণ
স্লেভ মাস্টারকে বলে যদি এটি রেস বেশি বা রেডি মোডে থাকে তার মাইক্রো-কন্ট্রোলারের সাথে যুক্ত সবুজ বোতামের মাধ্যমে। রেডি মোডে, আইআর সেন্সরগুলি কিছু করে না এবং মাস্টার ডিসপ্লেতে 8 টি ড্যাশ দেখাবে যাতে এটি প্রস্তুত মোডে আছে তা নির্দেশ করে।
যখন স্লেভ মাস্টারকে বলে যে একটি দৌড় শুরু হতে চলেছে, তখন দাস আইআর সেন্সরগুলিকে তার পাশে (রেস ট্র্যাকের শুরু) পোল করতে শুরু করে যাতে গাড়িগুলি নীচে চলে যায়।
প্রতিটি গাড়ি প্রতিটি আইআর সেন্সরের নিচে দিয়ে যাওয়ার সময়, এটি মাস্টারকে একটি (গাড়ি 1) বা বি (গাড়ি 2) পাঠায়।
যখন মাস্টার একটি A বা B পায়, এটি সেই নির্দিষ্ট গাড়ির জন্য টাইমার সক্ষম করে এবং তারপর ফিনিস লাইনে সংশ্লিষ্ট আইআর সেন্সরের নীচে গাড়িটি যাওয়ার জন্য অপেক্ষা করে।
ডিসপ্লেটি প্রতি 50 মিটারে আপডেট করা হয় যাতে প্রতিটি গাড়ির বর্তমান সময় সেকেন্ডে 2 দশমিক স্থান সহ প্রদর্শিত হয়।
একবার উভয় গাড়ী ফিনিশিং লাইনে আঘাত করলে, মাস্টার সিদ্ধান্ত নেয় কোন গাড়িটি দ্রুততম ছিল এবং বিজয়ীকে নির্দেশ করার জন্য ডিসপ্লেতে সেই সময় ফ্ল্যাশ করে।
ধাপ 4: কোড অব বাকি
বাকি কোডটি কেবল ইউটিলিটি কোড যা 8 ডিজিটের ডিসপ্লেতে ডেটা প্রদর্শন নিয়ন্ত্রণ করে, বা বোতাম প্রেস লজিক ইত্যাদি নিয়ন্ত্রণ করে।
এই প্রকল্পের ভূমিকা অংশে ভিডিওর শেষে, আমি 2 টি ব্রেডবোর্ডে চলমান কোডের একটি উদাহরণ দেখাই, তাই নিশ্চিত করুন যে আপনি এটি পরীক্ষা করে দেখুন!
আপনি আমার গিথুব রেপো থেকে এই প্রকল্পের কোডটি ধরতে পারেন।
ধাপ 5: এরপর কি?
আপাতত এইটুকুই… 3 য় অংশে আমরা উপাদানগুলোকে রুটিবোর্ড থেকে সরিয়ে আরও স্থায়ী কিছুর দিকে তাকাবো … সাথে থাকুন!
আমি আশা করি আপনি এই প্রকল্পটি উপভোগ করছেন!
আমাকে ফল কর:
www.youtube.com/c/uneectedmaker
twitter.com/uneectedmaker
www.facebook.com/uneectedmaker
www.instagram.com/uneectedmaker
www.tindie.com/stores/seonr/
প্রস্তাবিত:
Arduino Part 2- তে খুব কম পাওয়ার BLE - তাপমাত্রা/আর্দ্রতা মনিটর - Rev 3: 7 ধাপ
আরডুইনো পার্ট 2 -তে খুব কম পাওয়ার BLE - তাপমাত্রা/আর্দ্রতা মনিটর - রেভ 3: আপডেট: 23 শে নভেম্বর 2020 - 15 জানুয়ারী 2019 থেকে 2 x AAA ব্যাটারির প্রথম প্রতিস্থাপন অর্থাৎ 2xAAA ক্ষার জন্য 22 মাস আপডেট: 7 এপ্রিল 2019 - Rev 3 এর lp_BLE_TempHumidity, তারিখ/সময় প্লট যোগ করে, pfodApp V3.0.362+ব্যবহার করে, এবং অটো থ্রোটলিং হ
Arduino-tomation Part 5: LE TUNNEL DE CHAUFFE: 4 ধাপ
Arduino-tomation Part 5: LE TUNNEL DE CHAUFFE: দুই মাস আগে আমি যে জায়গায় কাজ করি তার ওয়ারহাউসে সংরক্ষিত একটি ছোট ভুলে যাওয়া সিস্টেমকে পুনরায় তৈরি করার সিদ্ধান্ত নিয়েছি। এই সিস্টেমটি গরম এবং গরম করার জন্য তৈরি করা হয়েছিল পরিবাহক বেল্ট প্রতিরোধ করুন তাই আমি কিছু তৈরি করেছি
Arduino-tomation Part 4: TRI DE BRIQUE: 5 ধাপ
Arduino-tomation Part 4: TRI DE BRIQUE: এই Instructables- এ আমি আপনাকে একটি Atmega1284p দিয়ে তৈরি Arduino ক্লোন বোর্ড দ্বারা retrofited এবং নিয়ন্ত্রিত অন্য একটি মেশিনের কথা বলব। এই বোর্ড একটি ইথারনেট shাল সমর্থন করতে পারে এবং একটি SCADA (AdvancedHMI, Unigo) বা একটি শিল্প দ্বারা তত্ত্বাবধান করা যেতে পারে
Arduino LTC6804 BMS - Part 2: ব্যালেন্স বোর্ড: 5 টি ধাপ
Arduino LTC6804 BMS - পার্ট 2: ব্যালেন্স বোর্ড: পার্ট 1 এখানে একটি ব্যাটারি ম্যানেজমেন্ট সিস্টেম (BMS) সেল ভোল্টেজ, ব্যাটারি কারেন্ট, সেল তাপমাত্রা ইত্যাদি সহ গুরুত্বপূর্ণ ব্যাটারি প্যাক পরামিতিগুলি বোঝার কার্যকারিতা অন্তর্ভুক্ত করে। নির্ধারিত পরিসীমা, প্যাক ডিস্কো হতে পারে
Arduino-tomation Part 3: 5 ধাপ
Arduino-tomation Part 3: আধুনিক পদ্ধতিতে ট্রান্সফর্ম করার আরেকটি মেশিন। কিসের জন্য? অটোমেশন পদ্ধতি সম্পর্কে জানতে