मैं एक लकड़ी का शतरंज बोर्ड बनाना चाहता हूं जिसे आप नियमित टुकड़ों के साथ खेल सकते हैं (अर्थात, संशोधित टुकड़े जो आरएफआईडी कोड, मैग्नेट, ... का उपयोग नहीं करते हैं), लेकिन यह एक सॉफ्टवेयर से जुड़ा है जो मेरी चालों पर ध्यान देता है और जैसा काम करता है दूसरा खिलाड़ी।
मैं इस बारे में सोच रहा हूं कि बोर्ड पर टुकड़ों का पता कैसे लगाया जाए, और मैंने यह निर्णय लिया है कि मुझे यह पहचानने की आवश्यकता नहीं है कि कौन सा टुकड़ा कहां है: सॉफ्टवेयर के भीतर "सत्य" है, इसलिए यदि मैं ए से बी तक एक टुकड़ा ले जाता हूं , सॉफ्टवेयर यह पता लगाने में सक्षम है कि कौन सा टुकड़ा स्थानांतरित किया गया था।
इसलिए, मुझे शतरंज बोर्ड के प्रत्येक क्षेत्र में दो छेद ड्रिल करने का विचार था, एक केंद्र में, और एक ऊपरी दाहिने हिस्से में:
- केंद्र में एक चमक सेंसर के लिए इस्तेमाल किया जाएगा ताकि यह पता लगाया जा सके कि एक टुकड़ा मैदान पर खड़ा है या नहीं।
- कोने में एक का उपयोग एक एलईडी के लिए किया जाएगा जो यह दिखाने के लिए कि उपयोगकर्ता को कंप्यूटर के लिए किस टुकड़े को स्थानांतरित करना है, ताकि वास्तविक दुनिया की स्थिति सॉफ्टवेयर स्थिति से फिर से मेल खाए।
मैं सॉफ्टवेयर चलाने के लिए हार्डवेयर फाउंडेशन के रूप में एक रास्पबेरी पाई का उपयोग करना चाहता हूं, जिसे Node.js (लेकिन यह इस प्रश्न के लिए महत्वपूर्ण नहीं होना चाहिए) में लिखा जाएगा।
तो, जो मैं 64 ब्राइट सेंसर के साथ समाप्त करता हूं, और 64 एल ई डी, जिसे मुझे व्यक्तिगत रूप से संबोधित करने की आवश्यकता है। दूसरे शब्दों में: मुझे 64 आउटपुट चाहिए, और 64 इनपुट। और निश्चित रूप से यह एक ऐसी चीज है जिसे रास्पबेरी पाई बॉक्स से बाहर नहीं संभालती है - और मुझे लगता है कि 128 आई / ओ पोर्ट की तुलना में बेहतर तरीका होना चाहिए।
चूंकि मुझे लगता है कि बोर्ड की स्थिति का पता लगाना अधिक महत्वपूर्ण कार्य है, इसलिए मैंने वेब को खोजना शुरू कर दिया कि 8x8 मैट्रिक्स के स्विच को कैसे हैंडल किया जाए। मुझे एक माइक्रो नियंत्रक का उपयोग करने का सुझाव मिला जो बोर्ड के स्तंभों को क्रमिक रूप से स्कैन करता है, और प्रत्येक कॉलम में पता चलता है कि एक पंक्ति (= एक फ़ील्ड) का उपयोग किया जाता है या नहीं।
यह 8 आउटपुट और 8 इनपुट (बोर्ड के राज्य को पढ़ने में सक्षम होने) के लिए जटिलता को कम करेगा।
इस पर, मेरे कुछ सवाल हैं:
- क्या मेरे विचार सही हैं, यानी यह सही दृष्टिकोण है, या क्या कोई बेहतर विकल्प है जिसे मुझे देखना चाहिए?
- जैसा कि मुझे माइक्रो कंट्रोलर के साथ कोई अनुभव नहीं है, मुझे क्या देखने की जरूरत है? क्या मुझे सिर्फ 16 पिन के साथ एक माइक्रो कंट्रोलर की आवश्यकता है, जो कि उस भाषा में प्रोग्राम करने योग्य है जिसे मैं लिखने में सक्षम हूं, या ...?
- क्या किसी ने इस तरह के बोर्ड का निर्माण किया है और इस प्रक्रिया के माध्यम से चलने वाले ट्यूटोरियल की कुछ सलाह या जानकारी है?