ESP8266 eLUA (NodeMCU) बनाम माइक्रोप्थन


14

मैं ESP8266 पर eLUA (NodeMCU) और MicroPython की एक निष्पक्ष, अप-टू-डेट तुलना के लिए खोज कर रहा हूं।

मैं केवल एक या दूसरे उपयोगकर्ताओं की बहुत ही सतही रिपोर्ट / ब्लॉग पा सकता हूँ। - जिनमें से सभी में पूरी तरह से तकनीकी विवरण का अभाव है।

निकटतम चीज़ जो मुझे मिल सकती है, वह संभवत: माइक्रोएथॉन प्रोजेक्ट द्वारा तुलनात्मक रूप से पुरानी और कठिन है

मुझे स्पष्ट सवालों में दिलचस्पी होगी:

  • फ्लैश उपयोग
  • बूटअप के बाद VM का RAM उपयोग
  • सामान्य उपयोग में रैम का उपयोग
  • निष्पादन मॉडल (यानी ESP8266 "कार्य" मैप कैसे किए जाते हैं?)
  • निष्पादन प्रदर्शन
  • विस्तार में आसानी (यानी मॉड्यूल जोड़)
  • कुछ और जो प्रासंगिक हो सकता है

दस्तावेज़ीकरण का अध्ययन करने से मुझे लगता है कि निम्नलिखित को समझा गया है:

  • NodeMCU में काफी बारीक-बारीक बिल्ड विकल्प हैं जो केवल आवश्यक मॉड्यूल के निर्माण की अनुमति देता है। यह छोटे फ्लैश आकारों के साथ काम करने की अनुमति देता है। Micropython 512 केबी के लिए पूर्ण निचली सीमा लगती है जिस स्थिति में उपयोगकर्ता परिभाषित कोड के लिए कोई स्थान नहीं रहता है। यह निश्चित नहीं है कि यह NodeMCU से कैसे तुलना करता है।
  • MicroPython में एक अंतर्निहित WebREPL है जो डिफ़ॉल्ट रूप से स्वतः कॉन्फ़िगर किया गया है। NodeMCU में बिल्ट-इन समान नहीं है।
  • NodeMCU वर्तमान में एक बड़े समुदाय से लाभान्वित होता प्रतीत होता है, संभवतः इसकी वजह से यह अधिक समय तक रहा है।
  • MicroPython प्रलेखन परी अनौपचारिक है, पूरी तरह से कमी जब यह सी कोड का विस्तार करने की बात आती है। NodeMCU प्रलेखन उत्कृष्ट प्रतीत होता है।

क्या आप वास्तव में अपनी आवश्यकताओं को बता सकते हैं और अच्छा है:>) कृपया? राम आकार, सरणी आकार, फ्लोटिंग या पूर्णांक, रैम दक्षता, सीपीयू की गति, प्रतिक्रिया समय, आदि
टोनी स्टीवर्ट Sunnyskyguy EE75

जवाबों:


17

यहाँ एक लुआ बनाम पायथन शूटआउट के मुकाबले थोड़ा अलग दृष्टिकोण है:

सबसे लोकप्रिय ESP8266 में से छह "रनटाइम":

  1. एटी कमांड सेट। लोकप्रिय जब 8266 को एक और एमसीयू के साथ जोड़ा जाता है। सीरियल पोर्ट के माध्यम से संचार करता है। ~ 128 k की 128k रैम उपलब्ध है।
  2. MicroPython। उपयोगकर्ता के अनुकूल GUI के साथ एक MicroPython स्क्रिप्ट दुभाषिया जो सीरियल पोर्ट या वाईफ़ाई / आईपी के माध्यम से पहुँचा जा सकता है। ~ 128 k RAM की 30k उपलब्ध है।
  3. लुआ / NodeMCU। उपयोगकर्ता के अनुकूल जीयूआई के साथ एक LUA स्क्रिप्ट दुभाषिया जिसे सीरियल पोर्ट के माध्यम से एक्सेस किया जा सकता है। ~ 40k की 128k रैम उपलब्ध है।
  4. जावास्क्रिप्ट / Espruino। उपयोगकर्ता के अनुकूल जीयूआई के साथ एक जावास्क्रिप्ट दुभाषिया जो सीरियल पोर्ट या वाईफाई / आईपी के माध्यम से acess हो सकता है। ~ 128 k RAM उपलब्ध की 20k।
  5. सी / आईडीई-12E। ESP8266 मानक Arduino IDE का उपयोग करते हुए चमकती टूल और C लाइब्रेरी / उपकरण ~ 128 k की 128k रैम उपलब्ध है।
  6. सी / ESP8266_SDK। सी पुस्तकालयों / उपकरण निर्माता से। उदाहरण के अनुप्रयोगों का एक संग्रह भी। ~ 512k फ्लैश। 128k RAM का Guesstimate 80k उपलब्ध है।

प्रमुख अंतर्दृष्टि यह है कि कोड का थोक आम है। 1-5 में सभी प्राथमिक पुस्तकालय 6. से उत्पन्न होते हैं। एटी / पायथन / एलयूए / जावास्क्रिप्ट / सी की एक पतली परत के नीचे प्राथमिक कोड व्यावहारिक रूप से समान है। इसका मतलब है कि प्रदर्शन (रैम, फ्लैश, निष्पादन) भी समान है।

चूंकि आप गति और रैम के बारे में चिंतित हैं (फ्लैश आमतौर पर ठीक है) विकल्प # 5 के बारे में कैसे? Arduino उदाहरणों के एक बड़े संग्रह के साथ एक प्रयोग करने योग्य आईडीई है। आप अपना पहला कोड एक घंटे से भी कम समय में चला सकते हैं और संभवत: स्क्रिप्टिंग इंजनों में से किसी से भी बेहतर प्रदर्शन करेंगे।

महत्वपूर्ण मेमोरी उपयोग अंतर के अभाव में मैं पुस्तकालयों की अधिक संख्या और IRC वेबचैट के साथ एक सक्रिय ऑनलाइन समुदाय के कारण MicroPython को चुनूंगा सी मॉड्यूल जोड़ने के लिए प्रलेखन में सुधार हुआ है।

विकल्प # 6 आपको अनुकूलन की उच्चतम क्षमता प्रदान करता है लेकिन उच्च जटिलता और स्टेटर लर्निंग कर्व पर।

अंत में एक अच्छा ESP8266 नियम-ऑफ-थंब: प्रत्येक टीसीपी / आईपी कनेक्शन मेमोरी की ~ 3k तक खपत कर सकता है। हमेशा 5 से कम एक साथ कनेक्शन की उम्मीद करें !

TL; DR: ESP8266 अनुप्रयोगों में उनके अधिकांश कोड समान हैं और समान प्रदर्शन करते हैं। इसलिए आप जो स्क्रिप्ट इंजन पसंद करते हैं उसे चुनें या C / IDE-12E तक बढ़ाएँ। 5 से अधिक एक साथ आईपी कनेक्शन की उम्मीद न करें।


प्रासंगिक: इवान ग्रोखतकोव और ईएसपी 8266 समुदाय ने ईएसपी 8266 को अरुडिनो आईडीई से प्रोग्राम किए जाने के तरीके को चित्रित किया है: makezine.com/2015/04/03/…
neonzeon

बस इतना कहने के लिए धन्यवाद कहना चाहता था। मैं वास्तव में इस जानकारी के लिए खोज कर रहा था और आपने मुझे समय का एक समूह बचा लिया, साथ ही कुछ दृष्टिकोण जोड़े जो जानने के लिए अच्छे हैं ..
स्कॉट प्रिव
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.