ESP32 বনাম Arduino
ESP32 হল একটি কম খরচের মাইক্রোকন্ট্রোলার বোর্ড যাতে একটি 32-বিট মাইক্রোকন্ট্রোলার চিপ থাকে যা কম শক্তিতে চলতে পারে। ESP32 ইন্টিগ্রেটেড ওয়াই-ফাই এবং ডুয়াল ব্লুটুথ উপলব্ধ। এটি Espressif সিস্টেম দ্বারা তৈরি করা হয়। ESP32 হল একই নির্মাতার দ্বারা তৈরি ESP8266 বোর্ডের উত্তরসূরী। ESP32 খরচ, আকার এবং শক্তি খরচের উপর ভিত্তি করে এটি একটি IoT ভিত্তিক DIY প্রকল্পের জন্য সবচেয়ে উপযুক্ত। ESP32 চিপ রয়েছে টেনসিলিকা এক্সটেনসা LX6 মাইক্রোপ্রসেসরের ডুয়াল কোর এবং 240MHz এর বেশি ফ্রিকোয়েন্সির ঘড়ির হার।
অন্যদিকে যখন আমরা মাইক্রোকন্ট্রোলার শব্দটি শুনি তখন আমাদের মাথায় প্রথম নামটি আসে আরডুইনো , যেহেতু আরডুইনো এতদিন ধরে মাইক্রোকন্ট্রোলার বোর্ডগুলির নেতৃত্ব দিচ্ছে কারণ 8-বিট ইউনো থেকে শুরু করে 32-বিট শূন্য পর্যন্ত বিভিন্ন বোর্ডের একটি সিরিজ সহ এর ব্যাপক সমর্থন উপলব্ধ। Arduino বোর্ড উপর ভিত্তি করে করা হয় ATmega AVR মাইক্রোকন্ট্রোলার . আরডুইনো বোর্ডগুলি ন্যানো থেকে শুরু করে যা ছোট আকারের প্রকল্পগুলির জন্য উপযুক্ত আরডুইনো মেগা পর্যন্ত যা একাধিক ডিভাইস পরিচালনা করতে পারে এর 54টি ডিজিটাল ইনপুট/আউটপুট পিনের জন্য ধন্যবাদ৷
আরডুইনো থেকে ESP32 ভালো
হ্যাঁ , ESP32 হল আরডুইনোর চেয়ে ভালো এবং শক্তিশালী মাইক্রোকন্ট্রোলার বোর্ড। ESP32-এ রয়েছে অন্তর্নির্মিত ডুয়াল ওয়াই-ফাই এবং ব্লুটুথ সমর্থন। এটিতে সম্পূর্ণ স্ট্যাক ইন্টারনেট সংযোগের জন্য সম্পূর্ণ TCP/IP সমর্থন রয়েছে। এর Wi-Fi মডিউলের জন্য ধন্যবাদ এটি একটি অ্যাক্সেস পয়েন্টের পাশাপাশি একটি Wi-Fi স্টেশন হিসাবে কাজ করতে পারে। এর 32-বিট মাইক্রোকন্ট্রোলার এবং 240MHz পর্যন্ত ঘড়ির ফ্রিকোয়েন্সির কারণে এটি Arduino থেকে অনেক এগিয়ে।
নিম্নলিখিত হাইলাইটগুলি কেন ESP32 Arduino থেকে ভাল তার একটি ভাল দৃষ্টিকোণ দেয়:
- ESP32 এর 32-বিট মাইক্রোকন্ট্রোলার রয়েছে
- ডুয়াল ওয়াই-ফাই এবং ব্লুটুথ সমর্থন
- কম ভোল্টেজ লেভেলে কাজ করে (3.3V)
- ESP32 এর 18টি ADC চ্যানেল রয়েছে যেখানে Arduino Uno এর মাত্র ছয়টি চ্যানেল রয়েছে
- ESP32 48 GPIO পিনের সাথে আসে যখন Uno তে শুধুমাত্র 14 ডিজিটাল ইনপুট/আউটপুট পিন এবং 6 এনালগ পিন রয়েছে
- ESP32 বোর্ড Arduino Uno এর চেয়ে সস্তা
Arduino এবং ESP32 এর মধ্যে তুলনা পড়তে ক্লিক করুন এখানে .
ESP32, Arduino Uno এবং Arduino Mega এর গতির তুলনা
মাইক্রোকন্ট্রোলার বোর্ড ESP32, Arduino Uno এবং Mega-এর ক্লক ফ্রিকোয়েন্সি নিচে দেওয়া হল।
আরডুইনো ওয়ান: 16MHz অভ্যন্তরীণ ঘড়ি
আরডুইনো মেগা: 16MHz অভ্যন্তরীণ ঘড়ি
ইএসপি রুম 32: 80MHz থেকে 240MHz এর মধ্যে সামঞ্জস্যযোগ্য।
আমরা সবাই জানি মাইক্রোকন্ট্রোলাররা তাদের ঘড়ির উৎসের উপর নির্ভর করে। আরও শক্তিশালী ঘড়ি মানে নির্দেশনা কার্যকর করার জন্য কম সময়। আসুন উপরের তিনটি মাইক্রোকন্ট্রোলার বোর্ডের গতির মধ্যে পার্থক্য দেখি।
স্বাক্ষরবিহীন দীর্ঘ স্টার্ট_টাইম, টাইম_টেকন ;#পিন সংজ্ঞায়িত করুন 5 /*পিন 5 এর অবস্থা পরিবর্তন করতে সংজ্ঞায়িত করা হয়েছে*/
অকার্যকর সেটআপ ( ) {
সিরিয়াল। শুরু ( 9600 ) ; /*ক্রমিক যোগাযোগের জন্য বড রেট সংজ্ঞায়িত*/
পিনমোড ( পিন, আউটপুট ) ; /*পিন 5 আউটপুট হিসাবে সংজ্ঞায়িত*/
}
অকার্যকর লুপ ( ) {
সময় শুরু = মিলি ( ) ; /*শুরু সময় মিলিস কাউন্টারের সমান*/
জন্য ( int i = 0 ; i < 20000 ; i ++ ) { /*ফর লুপ 20000 সময়ের জন্য চলে*/
ডিজিটাল লিখুন ( পিন, উচ্চ ) ; /*পিন অবস্থা উচ্চ *তে পরিবর্তন করে
ডিজিটাল লিখুন ( পিন, কম ) ; /*পিন অবস্থা পরিবর্তন করে নিম্নে*/
}
সময় নিয়েছে = মিলি ( ) - সময় শুরু ; /*সময়ের পার্থক্য গণনা করা হয়েছে ফেরত নেওয়া সময়*/
সিরিয়াল। ছাপা ( 'পিন 5 এ অবস্থা পরিবর্তন করতে সময় লেগেছে:' ) ;
সিরিয়াল। ছাপা ( সময় নিয়েছে ) ; /*মোট সময় প্রিন্ট করা হয়েছে*/
সিরিয়াল। println ( 'মাইক্রোসফট' ) ;
}
প্রথমত, আমরা দুটি ভেরিয়েবল শুরু করেছি সময় শুরু এবং সময় নিয়েছে. একটি মিলিসে শুরুর সময় সংরক্ষণ করবে যখন দ্বিতীয়টি উচ্চ এবং নিম্ন দুটি অবস্থার মধ্যে পরিবর্তন করতে মাইক্রোকন্ট্রোলারের নেওয়া মোট সময় সংরক্ষণ করবে।
কোডের লুপ অংশে পরবর্তীতে a for loop ব্যবহার করা হয়েছে যা 20,000 বার ঘোরবে এবং পিন 5 কে বিকল্পভাবে HIGH এবং LOW করে। এরপরে, আমরা বর্তমান মিলিসের সাথে শুরুর সময়ের পার্থক্যটি গ্রহণ করি একবার যখন অবস্থা উচ্চ থেকে নিম্নে পরিবর্তিত হয়। এখানে বর্তমান Millis এবং পূর্ববর্তী Millis মধ্যে সময়ের পার্থক্য রাজ্য পরিবর্তন করতে বোর্ডের সময় নির্ধারণ করবে।
ESP32 আউটপুট
যেহেতু ESP32 এর Uno এবং Mega এর চেয়ে বেশি ঘড়ির ফ্রিকোয়েন্সি রয়েছে তাই এটি রাজ্যগুলির মধ্যে খুব দ্রুত স্যুইচ করবে। এখানে আউটপুট প্রতিনিধিত্ব করে HIGH থেকে নিম্ন অবস্থায় যেতে 5ms লাগে।
আরডুইনো ইউনো আউটপুট
Arduino Uno বোর্ডে 16MHz এর একটি বাহ্যিক ঘড়ি রয়েছে তাই এটি একটি পিন অবস্থা পরিবর্তন করতে 172ms সময় নেবে।
আরডুইনো মেগা আউটপুট
আরডুইনো মেগা বোর্ড রাজ্যগুলির মধ্যে স্যুইচ করতে 227ms সময় নেবে৷
উপরের ফলাফল থেকে আমরা উপসংহারে পৌঁছেছি যে ESP32 Arduino Uno এবং Mega থেকে দ্রুততর।
ESP32 বনাম Arduino Uno বনাম Arduino Mega এর সংক্ষিপ্ত তুলনা
এখানে Arduino প্রতিযোগী Uno এবং Mega-এর সাথে ESP32 বোর্ডগুলির একটি সংক্ষিপ্ত তুলনা।
বৈশিষ্ট্য | ESP32 | arduino এক | আরডুইনো মেগা |
---|---|---|---|
ডিজিটাল I/O পিন | 36 | 14 | 54 |
প্রতি I/O পিনে DC কারেন্ট | 40mA | 20mA | 20mA |
এনালগ পিন | 18 পর্যন্ত | 6, 10-বিট এডিসি | 6, 10-বিট এডিসি |
প্রসেসর | Xtensa ডুয়াল কোর 32-বিট LX6 মাইক্রোপ্রসেসর | ATmega328P | ATmega2560 |
ফ্ল্যাশ মেমরি | 4 এমবি | 32 KB | 256 কেবি |
এসআরএএম | 520 kB | 2 KB | 8 KB |
EEPROM | কোনোটিই নয় | 1 KB | 4 KB |
ঘরির গতি | 80MHz থেকে 240Mhz | 16 মেগাহার্টজ | 16 মেগাহার্টজ |
ভোল্টেজ লেভেল | 3.3V | 5V | 5V |
ওয়াইফাই | 802.11 b/g/n | কোনোটিই নয় | কোনোটিই নয় |
ব্লুটুথ | v4.2 BR/EDR এবং BLE | কোনোটিই নয় | কোনোটিই নয় |
I2C সমর্থন | হ্যাঁ (2x) | হ্যাঁ | হ্যাঁ |
SPI সমর্থন | হ্যাঁ (4x) | হ্যাঁ | হ্যাঁ |
হার্ডওয়্যার সিরিয়াল পোর্ট | 3 | 1 | 1 |
ইউএসবি সংযোগ | মাইক্রো USB | ইউএসবি-বি | ইউএসবি-বি |
উপসংহার
প্রথম মাইক্রোকন্ট্রোলার বোর্ড কেনার সময় বা একাধিক বোর্ডে কাজ করার সময় প্রত্যেকের মনে একটি প্রশ্ন আসে যে মাইক্রোকন্ট্রোলার বোর্ডগুলির মধ্যে কোনটি সেরা। সুতরাং, আমরা উপসংহারে পৌঁছেছি যে ESP32 আরডুইনো বোর্ডের চেয়ে ভাল কারণ এর সাশ্রয়ী মূল্য, কম বিদ্যুত খরচ এবং ওয়াইফাই এবং ব্লুটুথ সমর্থন সহ অতি দ্রুত বাহ্যিক ঘড়ি। ESP32 Arduino বোর্ডের তুলনায় আরো কার্যকারিতা প্রদান করে।