2009-12-18 7 views
8

एक प्रोग्रामिंग समय पहले, मैं क्रिसमस के लिए एक लेगो Mindstorms NXT सेट मिल गया, और अब मैं सी में यह कार्यक्रम ++ चाहते हैं के लिए सी ++ OOP लाइब्रेरी।लेगो NXT

मैंने यहां और अन्य स्थानों को देखा है, और क्रॉस-प्लेटफ़ॉर्म, ओपन सोर्स, ओओपी सी ++ लाइब्रेरी नहीं मिल सका, जिसे "सही महसूस हुआ", जिसमें नटैट और एनएक्सओएसईके शामिल हैं।

तो, मैं फैसला किया है कि जब तक मैं एक मैं कैसा लगा पा सकते हैं, तो यह एक महान अधिगम अनुभव हो मुझे मेरे हाल पुस्तकालय लिखने के लिए होगा।

मैं एक छोटे से शोध किया है, और फैसला किया कि यह बल्कि NXT मशीन कोड के लिए अपने कार्यक्रमों के संकलन से, ब्लूटूथ पर के साथ संवाद करने के लिए सबसे आसान होगा है।

मैं भी इस तरह OOP शैली में किया जाना होता है, जिसका अर्थ है NXT ईंट, मोटर्स, सेंसर, आदि वस्तुओं के रूप में मौजूद होगा।

तो, मेरे सवाल है: मैं इस पर आरंभ करने से पहले पता है कि क्या ज़रूरत है? मुझे अच्छे संदर्भ कहां मिल सकते हैं (यहां के अलावा, और एनएफटी के लिए विशिष्ट)? ब्लूटूथ संचार जैसी चीजों के लिए अन्य सभ्य "मूल" पुस्तकालय * क्या हैं?

* मैं, को बढ़ावा देने और एसटीएल का उपयोग कर यदि आवश्यक हो तो, वैसे के लिए सभी हूँ।

वैकल्पिक रूप से, मुझे लगता है कि अगर मुझे ऐसा करने की ज़रूरत नहीं है, तो मुझे पहिया को फिर से शुरू करने में विश्वास नहीं है, इसलिए अगर वहां एक सभ्य सी ++ ओओपी ब्लूटूथ-संचार एनएफटी लाइब्रेरी है, तो मुझे बताएं!

उत्तर

3

मैंने पहले ऐसा करने पर एक नज़र डाली है।

प्रारंभ यहाँ देख: http://bricxcc.sourceforge.net/

इस पृष्ठ पर आप इसके लिए स्रोत डाउनलोड कर सकते हैं। मैं जो कर रहा हूं वह मेरे सी स्रोत कोड को बाइट कोड पर संकलित कर रहा है जो एनएफटी ईंट समझ सकता है।

यह हालांकि मैं आपको एक उपयोग करना चाहते हैं समय बाइट कोड में एक कॉम्पैक्ट पर्याप्त रूप से नीचे सी संकलन की बहुत कि NXT की स्मृति :)

में फिट खर्च किया था मुझे सेल्सियस के लिए कुछ कस्टम एक्सटेंशन जोड़ने की अनुमति दी मौजूदा सी कार्यान्वयन के बाद इस चार्ट को देखें: http://www.teamhassenplug.org/NXT/NXTSoftware.html

एनबीसी (अगला बाइट कोड) की एक सूची के लिए इस पृष्ठ से शुरू करें। मैंने इसे बेहद सहायक पाया।

http://bricxcc.sourceforge.net/nbc/

1

मैं इस एक का उपयोग किया, मैं नहीं पता है कि क्या आप इसे बाहर की जाँच कर ली है या नहीं:

http://www.norgesgade14.dk/bluetoothlibrary.php

यह पुस्तकालय एक ब्लूटूथ कनेक्शन पर विभिन्न सेंसर डाटा पढ़ने के लिए सहायता प्रदान करता है साथ ही मोटर्स को नियंत्रित करने के लिए समर्थन भी।

इसके अलावा लाइब्रेरी को आसानी से संशोधित किया जा सकता है, और मुझे इसे पुन: कॉन्फ़िगर करना बेहद आसान लगता है।

1

मैं रोबोट बांह को नियंत्रित करने के लिए सी ++ का उपयोग कर एक परियोजना पर काम करते हुए पिछले साल इस धागे में आया था। मैंने 2 एनएफटी ईंटों और 5 मोटर्स का इस्तेमाल किया।

आप मूल NXT ++ 0 पा सकते हैं।6 यहाँ पुस्तकालय:
http://nxtpp.clustur.com
https://sourceforge.net/projects/nxtpp/forums/
दुर्भाग्य से इस साइट को अद्यतन नहीं किया जा रहा है।

मैं एक नया संस्करण NXT ++ और कुछ सुधारों के साथ 0.7, और कई ईंटों के लिए समर्थन काँटेदार, USB या ब्लूटूथ के माध्यम से: https://github.com/dbworth/nxt-plus-plus
जानकारी के लिए रीडमी फ़ाइल देखें।

अन्य उपयोगकर्ता, पायोत्र, HiTechnic सेंसर बहुसंकेतक और लेगो रंग सेंसर के लिए NXT ++ 0.6-2 को समर्थन जोड़ा गया है:
http://wmii.uwm.edu.pl/~artem/downloads.html

सादर,
डेविड।

संबंधित मुद्दे