الهاتف الذكي يقود سيارة لعبة.

على مدى العقد الماضي ، كان لدى العديد منهم هاتفًا ذكيًا أو اثنين مستلقين في وضع الخمول ، وكذلك هواتفهم. قررت استخدام هاتف ذكي للتحكم في شيء ما ، على سبيل المثال ، سيارة.
في البداية ، اخترت سيارة لعبة من Lego. يمكن أن تتحرك إلى الأمام وإلى الخلف ، وتدير اليسار واليمين ولها جهاز تحكم عن بعد مع الأشعة تحت الحمراء. كسائق لمحركات الآلة يستخدم رقاقة LB1836 ، التي لديها أربعة مدخلات معلومات. In1 ، In2 - التحكم في محرك التشغيل ، In3 ، In4 - التحكم في عجلة القيادة ، وفقًا للمخطط 0 أو 0 أو 1 ، 1 - الحالة المعطلة. 0 ، 1 أو 1 ، 0 - دوران المحرك في اتجاه واحد أو آخر.

المنطق 0 و 1 عند المدخلات يشكل مستقبل الأشعة تحت الحمراء للعبة عند استقبال إشارات من جهاز التحكم عن بعد.

قررت استخدام شاشة هاتف ذكي لنقل الإشارات من هاتف ذكي إلى آلة كاتبة ، نظرًا لأن قنوات الإرسال الأخرى معقدة تقنيًا ومكلفة في التنفيذ. قررت توصيل جهازي بمدخلات شريحة LB1836 ، والتي ستتلقى إشارات من الهاتف الذكي.

مخطط إرسال الإشارات على النحو التالي. يقوم البرنامج في الهاتف الذكي بإنشاء نقاط ضوئية لمدة معينة على الشاشة ، ويقوم الجهاز بتسجيلها وإنشاء منطقي 0 و 1 من نفس المدة عند مدخلات LB1836 دون أي معالجة منطقية ، مما يبسط إلى حد كبير تصميم الجهاز. أي ، لقد استبدلت جهاز استقبال الأشعة تحت الحمراء بجهازي.

يتكون جهاز استقبال الإشارات الضوئية من 4 خلايا. كل خلية عبارة عن ترانزستور ضوئي L-3DP3C KGB متصل بمكبر للصوت على ترانزستور npn KT315. يتم أخذ الطاقة من آلة خاضعة للرقابة. يتم توصيل الإخراج ، كما قلت ، بالإدخال المقابل لسائق المحرك. يمكن تشغيل المحركات منخفضة الطاقة مباشرة من المخرج ، ولكنها ستدور في اتجاه واحد فقط. ولكن سيكون هناك أربعة منهم!



حول اختيار عناصر الجهاز يمكنني أن أقول ما يلي. أخذت الترانزستورات التي مررت بها منذ العصور القديمة. اشترت الترانزستورات الضوئية تلك الموجودة في المتجر. لذلك ، إذا كنت ترغب في تكرار المخطط ، فلا تضيع الوقت في البحث ، فاستخدم العناصر المتاحة لك. بالمناسبة ، جمعت في البداية مكبر الصوت على شريحة LM 324N مع أربعة مكبرات صوت تشغيلية. تعمل أيضًا بشكل جيد ، ولكن يبدو لي أن أبعادها كبيرة جدًا.
تم تجميع الجهاز على ورق مقوى باستخدام شرائح من رقائق النحاس وعناصر مصمم Lego.



يتم وضع الترانزستورات الضوئية أسفل الآبار الخفيفة بقطر 5 مم وعمق 9 مم لاستبعاد الإضاءة الجانبية. يتم إدخال الأفلام الممعدنة المدلفنة في أنبوب في الآبار الخفيفة ، مما يزيد بشكل كبير من حساسية الترانزستورات الضوئية ، بسبب زيادة تدفق الضوء.



هذه سيارة.



لتطوير البرنامج ، أخذت تطبيق BASIC! من سوق Googl Play. يسمح لك هذا التطبيق بكتابة برامج للأندرويد ، وإنشاء ملفات apk والعمل مع جميع أجهزة الاستشعار وأجهزة الهاتف الذكي.

قائمة البرنامج

DO LET s$=" :      " TTS.INIT TTS.SPEAK s$ TTS.STOP STT.LISTEN "" STT.RESULTS theList LIST.SIZE theList, theSize LET kom$="" FOR k = 1 TO theSize LIST.GET theList, k, theText$ IF (theText$="") THEN kom$="" IF (theText$="") THEN kom$="" IF (theText$="") THEN kom$="" IF (theText$="") THEN kom$="" IF (theText$="") THEN kom$="" NEXT k PRINT kom$ GR.OPEN 255, 0, 0, 0 GR.BRIGHTNESS 0.7 GR.ORIENTATION 1 GR.SCREEN w, h a = 255 r = 255 g = 255 b = 255 fill = 1 GR.COLOR a,r,g,b,fill LET wc=0.95*h LET hc=w LET m=36 GR.CLS GR.CIRCLE n5, hc/m*9.5,wc,w/15.6 GR.CIRCLE n4, hc/m*13.5,wc,w/15.6 GR.CIRCLE n3, hc/m*18,wc,w/15.6 GR.CIRCLE n2, hc/m*22.5,wc,w/15.6 GR.CIRCLE n1, hc/m*26.5,wc,w/15.6 FOR i=1 TO 5 GR.HIDE i NEXT i IF (kom$="") THEN GR.SHOW 2 PAUSE 300 GR.HIDE 2 ENDIF IF (kom$="") THEN GR.SHOW 1 PAUSE 300 GR.HIDE 1 ENDIF IF (kom$="") THEN GR.SHOW 2 GR.SHOW 4 PAUSE 300 GR.HIDE 2 GR.HIDE 4 ENDIF IF (kom$="") THEN GR.SHOW 2 GR.SHOW 5 PAUSE 300 GR.HIDE 2 GR.HIDE 5 ENDIF IF (kom$="") THEN GOTO qq GR.BRIGHTNESS 0.1 GR.CLOSE UNTIL 0 ! ONERROR: qq: LET s$="  " TTS.INIT TTS.SPEAK s$ TTS.STOP GR.BRIGHTNESS 0.1 GR.CLOSE END 

يستخدم البرنامج التحكم الصوتي باعتباره الأنسب في حالتي. يحول كائن TTS النص إلى كلام. كائن STT يحول الكلام إلى نص. عند العمل مع STT ، يجب تشغيل Wi Fi ، لأنه يتم إرسال المسار الصوتي المسجل إلى خادم على الإنترنت ، حيث تأتي نتيجة التعرف ، وهذه بعض الكلمات أو العبارات. يتحقق البرنامج من وجود الأمر في القائمة ، ويعرض الأمر على الشاشة وينفذه. إذا لم يتم التعرف على النص ، يعرض البرنامج رسالة حوله. كل هذا يتكرر في دورة لا نهاية لها. يتم إنهاء البرنامج بواسطة الأمر "إيقاف" أو بالضغط على مفتاح العودة. يتم أخذ الأبعاد الهندسية بالنسبة لأتمتة الربط على شاشات مختلفة بأحجام ودقة مختلفة ، والتي لا تعمل دائمًا. الدوائر التي يتم رسمها على الشاشة هي كائنات ويتم ترقيمها تلقائيًا عند إنشائها.

يعني الأمر GR.SHOW 2 إظهار الدائرة التي تم إنشاؤها ثانيًا. رقمه موجود في n4. يمكنك كتابة GR.SHOW n4. في السطر IF (theText $ = "forward") THEN kom $ = "forward" ستلاحظ اختلافًا في قيم القيمة في أمر التعيين - "forward" و "forward". والحقيقة هي أن STT بعناد يعيد "للأمام" ، على الرغم من وجود حالات "للأمام" ، فإن البرنامج لا يتعرف على الأمر. كان من الممكن التخلص من ذلك ، لكنني لم أعقّد البرنامج ، ولكن ببساطة قمت بتصحيح الإملاء عند عرضه على الشاشة. لا تزال هناك حالات فشل عند التعرف على الأمر "الأيسر". ومع ذلك ، ربما هذه هي ميزات النطق.

لسوء الحظ ، لا يمكنني إدراج مقطع يوضح تشغيل البرنامج هنا.
الق نظرة هنا .

Source: https://habr.com/ru/post/ar424945/


All Articles