সুচিপত্র:
- সরবরাহ
- ধাপ 1: এটি কীভাবে কাজ করে তা নির্ধারণ করুন: পথচারীদের ট্রাফিক লাইট
- ধাপ 2: সার্কিট তৈরি করুন
- ধাপ 3: স্টেট মেশিন তৈরি করা
- ধাপ 4: উদাহরণ চালানো
- ধাপ 5: জেনারেট করা C ++ কোড
- ধাপ 6: উদাহরণ পান
ভিডিও: আরডুইনোতে স্টেট মেশিন - একজন পথচারী ট্রাফিক লাইট: 6 টি ধাপ (ছবি সহ)
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 08:00
ইয়াকিন্দু স্টেটচার্ট টুলস ব্যবহার করে একটি সসীম স্টেট মেশিন দিয়ে C ++ এ Arduino এর জন্য পথচারী ট্রাফিক লাইট কিভাবে প্রোগ্রাম করবেন তা আমি আপনাকে দেখাতে যাচ্ছি। এটি রাষ্ট্রীয় মেশিনের শক্তি প্রদর্শন করবে এবং পরবর্তী প্রকল্পের জন্য একটি ব্লুপ্রিন্ট হিসাবে ব্যবহার করা যাবে।
সরবরাহ
আপনি শুধুমাত্র একটি Arduino, কিছু pushbuttons, LEDs, জাম্পার এবং প্রতিরোধক প্রয়োজন।
হার্ডওয়্যার
- 2x পুশবাটন
- 2x ট্রাফিক লাইট বা আপনি 220 ওহম প্রতিরোধক সহ LEDs ব্যবহার করতে পারেন
- 2x 10k ওহম প্রতিরোধক
- ব্রেডবোর্ড
- জাম্পার
- Arduino Uno/Mega (বা অন্য যে কোন, অন্তত 8 টি GPIO পেয়েছে)
সফটওয়্যার
- YAKINDU স্টেটচার্ট টুলস
- Arduino এর জন্য Eclipse C ++ IDE
ধাপ 1: এটি কীভাবে কাজ করে তা নির্ধারণ করুন: পথচারীদের ট্রাফিক লাইট
প্রথমে, আমাদের নির্দিষ্ট করতে হবে কিভাবে পথচারীদের ট্রাফিক লাইট কাজ করবে। আমি বুলেট পয়েন্ট সংক্ষিপ্ত করার চেষ্টা করেছি:
- দুটি ট্রাফিক লাইট ব্যবহার করা হয় - একটি গাড়ির জন্য, অন্যটি পথচারীদের জন্য
- একটি বোতাম ব্যবহার করে ট্রাফিক লাইট চালু করা যায়
- পথচারী একটি বোতাম টিপে রাস্তা পার হওয়ার অনুরোধ করতে পারেন
- ট্রাফিক লাইট বন্ধ করে দেওয়া হল হলুদ এলইডি উভয়কে জ্বলজ্বল করে
- চালু করার পর, ট্রাফিক লাইট 10 সেকেন্ড নিরাপদ মোডে অপেক্ষা করে
- নিরাপদ মোডের পরে, পথচারীরা অনুরোধ শুরু না করা পর্যন্ত গাড়ির সর্বদা সবুজ পর্যায় থাকে
- ক্রস করার জন্য পথচারীদের অনুরোধ হলুদ এলইডি টগল করে নির্দেশিত হয়
উপরন্তু, ট্রাফিক লাইট কীভাবে কাজ করে তার উপর নির্ভর করে কিছু সময়ের ঘটনা রয়েছে।
ধাপ 2: সার্কিট তৈরি করুন
আসুন সার্কিট স্থাপন শুরু করি। আমার উদাহরণে, যেমন আপনি প্রিভিউ ইমেজ দেখতে পাচ্ছেন, আমি একটি Arduino Mega 2560 ব্যবহার করেছি, কিন্তু কমপক্ষে আটটি GPIO সহ অন্য Arduino জরিমানা হওয়া উচিত। উপরন্তু, আমি অ্যামাজনে কিছু 5V ট্রাফিক লাইট কিনেছি। শুধু ট্রাফিক লাইট Arduino অনুসন্ধান করুন। অন্যথায়, আপনি কেবল ছয়টি ভিন্ন LED ব্যবহার করতে পারেন। উপরন্তু, আপনি দুটি পুশ বোতাম এবং দুটি 10k ওহম প্রতিরোধক প্রয়োজন।
তিনটি বাম এলইডি গাড়ি চলাচলের জন্য এবং তিনটি ডান এলইডি পথচারীদের জন্য ব্যবহার করা হয়, যেখানে হলুদ একটি অনুরোধ নির্দেশ করতে পারে।
ধাপ 3: স্টেট মেশিন তৈরি করা
সুতরাং, আপনি দেখতে পাচ্ছেন যে যৌথ সদস্যদের সাথে দুটি প্রধান রাজ্য রয়েছে - স্টেট অন এবং স্টেট অফ। আপনি অনঅফ ইভেন্টটি ব্যবহার করে উভয় রাজ্যের মধ্যে স্যুইচ করতে পারেন, যা চালু/বন্ধ বোতামে তারযুক্ত। প্রাথমিক অবস্থায়, অফ স্টেটে, উভয় হলুদ LEDs প্রতি সেকেন্ডে ঝলকানি শুরু করে। একবার ট্রাফিক লাইট চালু হয়ে গেলে, এটি সেফস্টেটে শুরু হয়। 10 সেকেন্ড পরে ট্র্যাফিক লাইটের সাধারণ আচরণ পরিচালনা করা হবে। StreetPrepare অবস্থায় লাল এবং হলুদ LED চালু করা হবে এবং আরও 2 সেকেন্ড পরে ট্রাফিক লাইট সবুজ হয়ে যাবে। এখন থেকে, রাষ্ট্রীয় মেশিনটি পথচারী অনুরোধ ইভেন্টের জন্য অপেক্ষা করছে, যা দ্বিতীয় বোতামে তারযুক্ত। ইভেন্টটি পাঠানোর পরে পেডওয়াটিং অবস্থায় প্রতি সেকেন্ডে হলুদ এলইডি টগল করে অনুরোধটি নির্দেশ করা হবে। 7 সেকেন্ড পরে ট্র্যাফিক লাইট প্রথমে হলুদ এবং তারপর লাল হয়ে যাবে যতক্ষণ না পথচারীরা পেডেস্ট্রিয়ান গ্রিন অবস্থায় যাওয়ার সিগন্যাল পায়। এর পরে, পথচারী রেড সক্রিয় হয় এবং চক্রটি পুনরাবৃত্তি হয়। এটি আবার ট্রাফিক লাইট বন্ধ করে বাধাগ্রস্ত হতে পারে।
ধাপ 4: উদাহরণ চালানো
ধাপ 5: জেনারেট করা C ++ কোড
উৎপন্ন C ++ কোড হল রাষ্ট্রীয় মেশিনের যুক্তি সামলানোর জন্য একটি ক্লাসিক সুইচ-কেস। এটি কেমন দেখায় তার একটি কোড স্নিপেট:
অকার্যকর TrafficLightCtrl:: runCycle () {clearOutEvents (); জন্য বিরতি; } case main_region_on_r1_PedWaiting_r1_waitOn: {main_region_on_r1_PedWaiting_r1_waitOn_react (true); বিরতি; } ডিফল্ট: বিরতি; } clearInEvents (); }
ধাপ 6: উদাহরণ পান
সম্পূর্ণ উদাহরণ কম্পাইল এবং চালানোর জন্য প্রস্তুত। এটি YAKINDU স্টেটচার্ট সরঞ্জামগুলির সাথে আসে, যা অ-বাণিজ্যিক ব্যবহারের জন্য বিনামূল্যে। ডাউনলোড করার পরে, আপনি টুলে সরাসরি উদাহরণটি আমদানি করতে পারেন:
ফাইল -> নতুন -> উদাহরণ -> YAKINDU স্টেটচার্ট উদাহরণ -> পরবর্তী -> Arduino এর জন্য ট্রাফিক লাইট (C ++)
> এখানে আপনি YAKINDU স্টেটচার্ট টুলস ডাউনলোড করতে পারেন <<
আপনি 30 দিনের ট্রায়াল দিয়ে শুরু করতে পারেন। পরে, আপনাকে অবশ্যই একটি লাইসেন্স পেতে হবে, যা অ-বাণিজ্যিক ব্যবহারের জন্য বিনামূল্যে!
প্রস্তাবিত:
স্টেট মেশিন সহ আরডুইনো অটো রোবট: 4 টি ধাপ
রাজ্য মেশিনের সাথে Arduino Otto রোবট: প্রকল্পের সংক্ষিপ্ত বিবরণ এই প্রকল্পে, আমি আপনাকে Otto রোবট প্রোগ্রামিং এর একটি উপায় দেখাতে চাই, যা একটি Arduino ভিত্তিক DIY রোবট। YAKINDU স্টেটচার্ট টুলস ব্যবহার করে (অ-বাণিজ্যিকের জন্য বিনামূল্যে) আমরা সহজেই গ্রাফিক্যালি আচরণের মডেল করার জন্য রাষ্ট্রীয় মেশিন ব্যবহার করতে পারি
একটি সসীম রাজ্য মেশিন ব্যবহার করে আরডুইনোতে ডিজিটাল ওয়াচ: 6 টি ধাপ
একটি সসীম রাজ্য মেশিন ব্যবহার করে আরডুইনোতে ডিজিটাল ওয়াচ: আরে, আমি আপনাকে দেখাতে যাচ্ছি কিভাবে YAKINDU স্টেটচার্ট সরঞ্জাম দিয়ে একটি ডিজিটাল ঘড়ি তৈরি করা যায় এবং একটি Arduino তে চালানো যায়, যা একটি LCD কীপ্যাড শিল্ড ব্যবহার করে। ডিজিটালের আসল মডেল ঘড়িটি ডেভিড হারেল থেকে নেওয়া হয়েছিল তিনি আবু একটি কাগজ প্রকাশ করেছেন
আরডুইনো এইচএমআই স্টেট মেশিন ব্যবহার করে: 9 টি ধাপ
আরডুইনো এইচএমআই স্টেট মেশিন ব্যবহার করে: এই নির্দেশনায়, আমি আপনাকে দেখাবো কিভাবে ইয়াকিন্ডু স্টেটচার্ট টুল ব্যবহার করে একটি সহজ এবং সম্প্রসারণযোগ্য এইচএমআই অনুধাবন করে 16x2 LCD কীপ্যাড শিল্ড ব্যবহার করে Arduino.Finite State Machines (FSM) একটি শক্তিশালী ডিজাইন প্যাটার্ন জটিল মানব যন্ত্র
আরডুইনো ট্রাফিক লাইট প্রজেক্ট [পথচারী ক্রসিং সহ]: 3 টি ধাপ
আরডুইনো ট্রাফিক লাইট প্রজেক্ট [পথচারী ক্রসিং সহ]: আপনি যদি সহজ, সহজ কিছু খুঁজছেন এবং একই সাথে আপনি আপনার আরডুইনো দিয়ে সবাইকে প্রভাবিত করতে চান তাহলে ট্রাফিক লাইট প্রকল্প সম্ভবত সেরা পছন্দ বিশেষত যখন আপনি বিশ্বের একজন শিক্ষানবিশ। Arduino এর। আমরা প্রথমে হো দেখব
এসপিআই এক্সপেন্ডার সহ আরডুইনোতে স্টেট মেশিন এবং মাল্টিটাস্কিং: 3 টি ধাপ
এসপিআই সম্প্রসারণকারীদের সাথে আরডুইনোতে স্টেট মেশিন এবং মাল্টিটাস্কিং: গত সপ্তাহে, আমি একটি আরডুইনো দিয়ে পাইলট আতশবাজির জন্য একটি সিস্টেম তৈরি করতে বলছিলাম। আগুন নিয়ন্ত্রণের জন্য এটির প্রায় 64 টি আউটপুট দরকার ছিল। এটি করার একটি উপায় হল আইসি সম্প্রসারণকারী ব্যবহার করা। সুতরাং 2 টি সমাধান পাওয়া যায়:- একটি I2C সম্প্রসারণকারী কিন্তু এটির জন্য বৈদ্যুতিন সংকেতের মেরু বদল করা প্রয়োজন