جميع أجهزة استشعار ev3 لها الاسم الصحيح. توصيل طوبتين أو أكثر من EV3

تقليديا، تم بناء الروبوتات على منصة ليغو مايندستورمز EV3تمت برمجتها باستخدام البيئة الرسومية LabVIEW. في هذه الحالة، يتم تشغيل البرامج على وحدة التحكم EV3 ويعمل الروبوت بشكل مستقل. سأتحدث هنا عن طريقة بديلة للتحكم في الروبوت - باستخدام منصة .NET التي تعمل على جهاز الكمبيوتر.

ولكن قبل أن ندخل في البرمجة، دعونا نلقي نظرة على بعض الحالات التي قد يكون فيها ذلك مفيدًا:

  • يتطلب التحكم عن بعد في الروبوت من جهاز كمبيوتر محمول (على سبيل المثال، عن طريق الضغط على الأزرار)
  • يلزم جمع البيانات من وحدة التحكم EV3 ومعالجتها على نظام خارجي (على سبيل المثال، أنظمة إنترنت الأشياء)
  • أي مواقف أخرى عندما تريد كتابة خوارزمية تحكم في .NET وتشغيلها من جهاز كمبيوتر متصل بوحدة التحكم EV3

واجهة برمجة تطبيقات LEGO MINDSTORMS EV3 لـ .NET

يتم التحكم في وحدة التحكم EV3 من نظام خارجي عن طريق إرسال الأوامر إلى المنفذ التسلسلي. تم توضيح تنسيق الأمر نفسه في مجموعة أدوات تطوير الاتصالات.

لكن تنفيذ هذا البروتوكول يدويًا أمر ممل. لذلك، يمكنك استخدام غلاف .NET الجاهز، الذي كتبه براين بيك بعناية. الكود المصدري لهذه المكتبة مستضاف على Github، ويمكن العثور على الحزمة الجاهزة للاستخدام على Nuget.

التوصيل بوحدة تحكم EV3

يتم استخدام فئة Brick للتواصل مع وحدة التحكم EV3. عند إنشاء هذا الكائن، تحتاج إلى تمرير تطبيق واجهة ICommunication إلى المُنشئ - وهو كائن يصف كيفية الاتصال بوحدة التحكم EV3. تتوفر تطبيقات UsbCommunication وBluetoothCommunication وNetworkCommunication (اتصال WiFi).

طريقة الاتصال الأكثر شيوعًا هي عبر البلوتوث. دعونا نلقي نظرة فاحصة على طريقة الاتصال هذه.

قبل أن نتمكن من الاتصال بوحدة التحكم برمجيًا عبر البلوتوث، يجب أن تكون وحدة التحكم متصلة بالكمبيوتر باستخدام إعدادات نظام التشغيل.

بعد توصيل وحدة التحكم، انتقل إلى إعدادات Bluetooth وحدد علامة التبويب منافذ COM. نجد وحدة التحكم لدينا، ونحن بحاجة منفتحميناء. سوف نقوم بتحديده عند إنشاء كائن BluetoothCommunication.

سيبدو رمز الاتصال بوحدة التحكم كما يلي:

اتصال المهام العامة غير المتزامنة (ICommunication communication) ( var communication = new BluetoothCommunication("COM9"); var brick = _brick = new Brick(communication); انتظار _brick.ConnectAsync(); )

اختياريًا، يمكنك تحديد مهلة الاتصال بوحدة التحكم:

في انتظار _brick.ConnectAsync(TimeSpan.FromSeconds(5));

يتم الاتصال بالوحدة عبر USB أو WiFi بنفس الطريقة، باستثناء استخدام كائنات UsbCommunication وNetworkCommunication.

تتم جميع الإجراءات الإضافية التي يتم تنفيذها على وحدة التحكم من خلال كائن Brick.

دعونا ندور المحركات

لتنفيذ الأوامر على وحدة التحكم EV3، نصل إلى خاصية DirectCommand الخاصة بكائن Brick. أولا، دعونا نحاول تشغيل المحركات.

لنفترض أن المحرك الخاص بنا متصل بالمنفذ A لوحدة التحكم، فإن تشغيل هذا المحرك بقدرة 50% سيبدو كما يلي:

في انتظار _brick.DirectCommand.TurnMotorAtPowerAsync(OutputPort.A, 50);

هناك طرق أخرى للتحكم في المحرك. على سبيل المثال، يمكنك تدوير محرك إلى زاوية محددة باستخدام طريقتي StepMotorAtPowerAsync() وStepMotorAtSpeedAsync(). هناك عدة طرق متاحة، وهي عبارة عن اختلافات في أوضاع تشغيل المحركات - حسب الوقت والسرعة والطاقة وما إلى ذلك.

يتم تنفيذ التوقف القسري باستخدام طريقة StopMotorAsync ():

في انتظار _brick.DirectCommand.StopMotorAsync(OutputPort.A, true);

تشير المعلمة الثانية إلى استخدام الفرامل. إذا قمت بضبطه على خطأ، فسوف يتوقف المحرك.

قراءة القيم من أجهزة الاستشعار

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

يمكن الوصول إلى منافذ قراءة القيم من خلال خاصية المنافذ الخاصة بكائن Brick. المنافذ عبارة عن مجموعة من المنافذ المتوفرة على وحدة التحكم. لذلك، للعمل مع منفذ معين، تحتاج إلى تحديده. InputPort.One... InputPort.Four هي منافذ الاستشعار، وInputPort.A... InputPort.D هي أجهزة تشفير المحرك.

var port1 = _brick.Ports;

يمكن أن تعمل المستشعرات في EV3 في أوضاع مختلفة. على سبيل المثال، يمكن استخدام مستشعر الألوان EV3 لقياس الضوء المحيط، أو قياس الضوء المنعكس، أو اكتشاف اللون. لذلك، من أجل "إخبار" المستشعر بالطريقة التي نريد استخدامها بالضبط، نحتاج إلى ضبط وضعه:

Brick.Ports.SetMode(ColorMode.Reflective);

الآن بعد أن تم توصيل المستشعر وضبط وضع التشغيل الخاص به، يمكنك قراءة البيانات منه. يمكنك الحصول على البيانات "الخامة" والقيمة المعالجة وقيمة النسبة المئوية.

Float si = _brick.Ports.SIValue; int Raw = _brick.Ports.RawValue; بايت بالمائة = _brick.Ports.PercentValue؛

تقوم الخاصية SIValue بإرجاع البيانات التي تمت معالجتها. كل هذا يتوقف على المستشعر المستخدم وفي أي وضع. على سبيل المثال، عند قياس الضوء المنعكس سنحصل على قيم من 0 إلى 100 حسب شدة الضوء المنعكس (أسود/أبيض).

تقوم الخاصية RawValue بإرجاع القيمة الأولية التي تم الحصول عليها من ADC. في بعض الأحيان يكون استخدامه أكثر ملاءمة للمعالجة والاستخدام اللاحقين. بالمناسبة، في بيئة تطوير EV3، من الممكن أيضًا الحصول على قيم "أولية" - ولهذا تحتاج إلى استخدام الكتلة من اللوحة الزرقاء.

إذا كان المستشعر الذي تستخدمه يتوقع تلقي القيم بالنسب المئوية، فيمكنك أيضًا استخدام خاصية PercentValue.

تنفيذ الأوامر على دفعات

لنفترض أن لدينا عربة روبوت ذات عجلتين ونريد نشرها في مكانها. وفي هذه الحالة، يجب أن تدور العجلتان في الاتجاه المعاكس. إذا استخدمنا DirectCommand وأرسلنا أمرين بالتتابع إلى وحدة التحكم، فقد يمر بعض الوقت بين تنفيذهما:

في انتظار _brick.DirectCommand.TurnMotorAtPowerAsync(OutputPort.A, 50); انتظر _brick.DirectCommand.TurnMotorAtPowerAsync(OutputPort.B, -50);

في هذا المثال نرسل أمر لتدوير المحرك A بسرعة 50، بعد إرسال هذا الأمر بنجاح نكرر نفس الأمر مع المحرك المتصل بالمنفذ B. المشكلة هي أن إرسال الأوامر لا يحدث بشكل فوري، لذلك المحركات قد يبدأ في الدوران في أوقات مختلفة - أثناء إرسال الأمر للمنفذ B، المحرك A بالفعلسيبدأ الغزل.

إذا كان من المهم بالنسبة لنا أن نجعل المحركات تدور في نفس الوقت، فيمكننا إرسال الأوامر إلى وحدة التحكم في "حزمة". في هذه الحالة، يجب عليك استخدام الخاصية BatchCommand بدلاً من DirectCommand:

Brick.BatchCommand.TurnMotorAtPower(OutputPort.A, 50); _brick.BatchCommand.TurnMotorAtPower(OutputPort.B, -50); انتظر _brick.BatchCommand.SendCommandAsync();

الآن يتم إعداد أمرين في وقت واحد، وبعد ذلك يتم إرسالهما إلى وحدة التحكم في حزمة واحدة. ستبدأ وحدة التحكم، بعد تلقي هذه الأوامر، في تدوير المحركات في وقت واحد.

ماذا يمكنك أن تفعل أيضا

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

  • CleanUIAsync() وDrawTextAsync() وDrawLineAsync() وما إلى ذلك - معالجة الشاشة المدمجة لوحدة التحكم EV3
  • PlayToneAsync() وPlaySoundAsync() - استخدم مكبر الصوت المدمج لتشغيل الأصوات
  • WriteFileAsync() وCopyFileAsync() وDeleteFileAsync() (من SystemCommand) - العمل مع الملفات

خاتمة

إن استخدام .NET للتحكم في روبوتات Mindstorms EV3 يوضح جيدًا كيف يمكن للتقنيات من "عوالم مختلفة" أن تعمل معًا. نتيجة للبحث في واجهة برمجة تطبيقات EV3 لـ .NET، تم إنشاء تطبيق صغير يسمح لك بالتحكم في روبوت EV3 من جهاز كمبيوتر. لسوء الحظ، توجد تطبيقات مماثلة لـ NXT، لكن EV3 تجاوزتها. وفي الوقت نفسه، فهي مفيدة في مسابقات الروبوتات التي يتم التحكم فيها، مثل كرة القدم الروبوتية.

يمكن تحميل التطبيق وتثبيته من هذا الرابط:

إذا كنت، مثلنا، تفتقر إلى إمكانات أجهزة استشعار EV3 القياسية، أو أن 4 منافذ لأجهزة الاستشعار في الروبوتات الخاصة بك ليست كافية، أو كنت ترغب في توصيل بعض الأجهزة الطرفية الغريبة بالروبوت الخاص بك - فهذه المقالة مخصصة لك. صدقوني، جهاز استشعار محلي الصنع لـ EV3 أسهل مما يبدو. يعد "مقبض الصوت" من الراديو القديم أو اثنين من المسامير الملتصقة بالأرض في إناء للزهور كمستشعر لرطوبة التربة مثاليًا للتجربة.

من المثير للدهشة أن كل منفذ مستشعر EV3 يخفي عددًا من البروتوكولات المختلفة، وذلك بشكل أساسي للتوافق مع NXT وأجهزة استشعار الطرف الثالث. دعونا نلقي نظرة على كيفية عمل كابل EV3


إنه أمر غريب، لكن السلك الأحمر مؤرض (GND)، والسلك الأخضر هو زائد مصدر الطاقة 4.3 فولت. السلك الأزرق هو SDA لحافلة I2C وTX لبروتوكول UART. بالإضافة إلى ذلك، فإن السلك الأزرق هو مدخل المحول التناظري إلى الرقمي لـ EV3. السلك الأصفر هو SCL لناقل I2C وRX لبروتوكول UART. السلك الأبيض هو مدخل المحول التناظري إلى الرقمي لأجهزة استشعار NXT. أسود - مدخل رقمي لأجهزة الاستشعار المتوافقة مع NXT - فهو يكرر GND. ليس سهلا، أليس كذلك؟ دعنا نذهب بالترتيب.

المدخلات التناظرية EV3

يحتوي كل منفذ مستشعر على قناة تحويل تناظرية إلى رقمية. يتم استخدامه لأجهزة الاستشعار مثل مستشعر اللمس (زر)، ومستشعر الضوء NXT ومستشعر الألوان في الضوء المنعكس ووضع الإضاءة المحيطة، ومستشعر الصوت NXT ومقياس الحرارة NXT.

تخبر المقاومة البالغة 910 أوم، المتصلة وفقًا للرسم التخطيطي، وحدة التحكم بأنه يجب تحويل هذا المنفذ إلى وضع الإدخال التناظري. في هذا الوضع، يمكنك توصيل أي مستشعر تناظري بـ EV3، على سبيل المثال من Arduino. يمكن أن يصل معدل التبادل مع هذا المستشعر إلى عدة آلاف من صناديق الاقتراع في الثانية، وهذا هو أسرع نوع من أجهزة الاستشعار.

مستشعر الضوء

ميزان الحرارة

مستشعر رطوبة التربة

يمكنك أيضًا توصيل: ميكروفون، وزر، وجهاز تحديد المدى بالأشعة تحت الحمراء والعديد من أجهزة الاستشعار الشائعة الأخرى. إذا لم تكن طاقة 4.3 فولت كافية للمستشعر، فيمكنك تشغيله بجهد 5 فولت من منفذ USB الموجود على جانب وحدة التحكم EV3.

يعد "مقبض الصوت" المذكور أعلاه (المعروف أيضًا باسم المقاوم المتغير أو مقياس الجهد) مثالًا ممتازًا للمستشعر التناظري - ويمكن توصيله على النحو التالي:

لقراءة القيم من هذا المستشعر في بيئة برمجة LEGO القياسية، يجب عليك استخدام كتلة RAW الزرقاء

بروتوكول I2C

هذا بروتوكول رقمي، على سبيل المثال، يعمل عليه مستشعر الموجات فوق الصوتية NXT والعديد من مستشعرات Hitechnic، مثل IR Seeker أو Color Sensor V2. بالنسبة للأنظمة الأساسية الأخرى، على سبيل المثال، Arduino، هناك الكثير من أجهزة استشعار i2c، يمكنك أيضًا توصيلها. المخطط هو كما يلي:

توصي مجموعة LEGO Group بمقاومة 82 أوم، لكن مصادر مختلفة تشير إلى 43 أوم أو أقل. في الواقع، حاولنا التخلي عن هذه المقاومات تمامًا وكل شيء يسير على ما يرام، على الأقل “على الطاولة”. في الروبوت الحقيقي الذي يعمل في ظروف أنواع مختلفة من التداخل، يجب أن تظل خطوط SCL وSDA متصلة بمصدر الطاقة من خلال المقاومة، كما هو موضح في الرسم البياني أعلاه. سرعة تشغيل i2c في EV3 منخفضة جدًا، حوالي 10000 كيلوبت في الثانية، وهذا هو السبب في أن مستشعر Hitechnic Color Sensor V2 المفضل لدى الجميع بطيء جدًا :)

لسوء الحظ، بالنسبة لـ EV3-G القياسي من LEGO لا يوجد كتلة كاملة للاتصال ثنائي الاتجاه مع مستشعر i2c، ولكن باستخدام بيئات برمجة الطرف الثالث مثل RobotC أو LeJOS أو EV3 Basic، يمكنك التفاعل مع أي مستشعرات i2c تقريبًا .

تفتح قدرة EV3 على العمل باستخدام بروتوكول i2c إمكانية مثيرة للاهتمام لتوصيل أجهزة استشعار متعددة بمنفذ واحد. يتيح لك بروتوكول I2C توصيل ما يصل إلى 127 جهازًا تابعًا بحافلة واحدة. هل يمكنك أن تتخيل؟ 127 مستشعرًا لكل منفذ EV3 :) علاوة على ذلك، غالبًا ما يتم دمج مجموعة من مستشعرات i2c في جهاز واحد، على سبيل المثال في الصورة أدناه يوجد مستشعر 10 في 1 (يحتوي على بوصلة وجيروسكوب ومقياس تسارع ومقياس ضغط جوي وما إلى ذلك)

UART

تعمل جميع المستشعرات القياسية غير EV3 تقريبًا، باستثناء Touch Sensor، باستخدام بروتوكول UART ولهذا السبب فهي غير متوافقة مع وحدة التحكم NXT، والتي، على الرغم من أنها تحتوي على نفس الموصلات، إلا أنها لا تحتوي على UART مطبق على مستشعرها الموانئ. ألق نظرة على الرسم البياني، فهو أبسط قليلاً مما كان عليه في الحالات السابقة:

تقوم مستشعرات UART تلقائيًا بمطابقة سرعة عملها مع EV3. يتم الاتصال في البداية بسرعة 2400 كيلوبت/ثانية، ثم يتفقون على أوضاع التشغيل وأسعار الصرف، ثم ينتقلون إلى سرعة متزايدة. أسعار الصرف النموذجية لأجهزة الاستشعار المختلفة هي 38400 و115200 كيلوبت/ثانية.
نفذت LEGO بروتوكولًا معقدًا إلى حد ما في مستشعرات UART الخاصة بها، لذلك لا توجد مستشعرات تابعة لجهات خارجية لم تكن مخصصة في الأصل لهذه المنصة، ولكنها متوافقة معها. ومع ذلك، فإن هذا البروتوكول مناسب جدًا للاتصال "محلية الصنع"
أجهزة الاستشعار على أساس ميكروكنترولر.
توجد مكتبة رائعة لـ Arduino تسمى EV3UARTEmulation، كتبها مطور LeJOS الشهير Lawrie Griffiths، والتي تسمح لهذه اللوحة بالتظاهر بأنها مستشعر متوافق مع UART-LEGO. تحتوي مدونته الإخبارية LeJOS على الكثير من الأمثلة على توصيل أجهزة استشعار الغاز ومستشعر IMU والبوصلة الرقمية باستخدام هذه المكتبة.

يوجد أدناه في الفيديو مثال على استخدام جهاز استشعار محلي الصنع. ليس لدينا ما يكفي من أجهزة استشعار المسافة الأصلية من LEGO، لذلك نستخدم جهازًا محلي الصنع على الروبوت:


تتمثل مهمة الروبوت في البدء من الخلية الخضراء، وإيجاد طريقة للخروج من المتاهة (الخلية الحمراء) والعودة إلى نقطة البداية بأقصر طريق، دون الدخول في طريق مسدود.

حدد وضع الشاشة

طريقة الاختيار
حظر حقل النص
المدخلات
زر المعاينة

حدد نوع النص أو الرسومات التي تريد رؤيتها باستخدام محدد الوضع. بعد تحديد الوضع، يمكنك تحديد قيم الإدخال. ستختلف المدخلات المتاحة حسب الوضع. يتم وصف الأوضاع والمدخلات أدناه.

يمكنك النقر فوق الزر Preview (معاينة) لمعاينة ما سيعرضه قالب العرض على شاشة EV3. يمكنك ترك العرض مفتوحًا أثناء تحديد قيم الإدخال للكتلة.

إحداثيات الشاشة

تستخدم العديد من أوضاع كتلة الشاشة إحداثيات X وY لتحديد موقع العنصر. تحدد الإحداثيات موضع وحدات البكسل على شاشة وحدة البناء EV3. الموضع (0، 0) موجود في الزاوية اليسرى العليا من الشاشة كما هو موضح في الصورة أدناه.

أبعاد الشاشة: عرض 178 بكسل وارتفاع 128 بكسل. يتراوح نطاق قيم إحداثيات X من 0 على الشاشة على اليسار إلى 177 على اليمين. يتراوح نطاق قيم الإحداثيات Y من 0 في الأعلى إلى 127 في الأسفل.

النصائح والحيل

يمكنك استخدام زر المعاينة الموجود في الزاوية العلوية اليسرى من قالب الشاشة لمساعدتك في العثور على إحداثيات الشاشة الصحيحة.

النص - بكسل

النص - يتيح لك وضع البكسل عرض النص في أي مكان على شاشة وحدة البناء EV3.

إعادة تعيين النافذة

يقوم وضع إعادة ضبط النافذة بإرجاع شاشة وحدة البناء EV3 إلى شاشة المعلومات القياسية التي تظهر أثناء تشغيل البرنامج. تعرض هذه الشاشة اسم البرنامج ومعلومات الملاحظات الأخرى. عند تشغيل برنامج على وحدة البناء EV3، تظهر هذه الشاشة قبل تشغيل قالب الشاشة الأول للبرنامج.

ضمان رؤية العناصر المعروضة

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

إذا كنت تريد أن تظل الشاشة مرئية بعد انتهاء البرنامج، فيجب عليك إضافة كتلة إلى نهاية البرنامج لمنع انتهاء البرنامج فورًا، كما هو موضح في الأمثلة التالية.

عرض عناصر متعددة

إذا كنت تريد عرض عناصر نصية أو رسومية متعددة على الشاشة في نفس الوقت، فمن المهم عدم مسح شاشة وحدة البناء EV3 بين العناصر. يحتوي كل وضع في كتلة الشاشة على إدخال Clear Screen. إذا كان خيار مسح الشاشة صحيحًا، فسيتم مسح الشاشة بأكملها قبل عرض العنصر. وهذا يعني أنه لعرض عناصر متعددة، يجب عليك ضبط Clear Screen على False لكل كتلة شاشة باستثناء الكتلة الأولى.

عرض الأرقام

لعرض قيمة رقمية في برنامجك، قم بتوصيل ناقل البيانات بإدخال النص الخاص بكتلة عرض النص. سيتم تحويل ناقل البيانات الرقمي تلقائيًا إلى نص باستخدام تحويل نوع ناقل البيانات (انظر القسم

وصف العرض التقديمي من خلال الشرائح الفردية:

1 شريحة

وصف الشريحة:

2 شريحة

وصف الشريحة:

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

3 شريحة

وصف الشريحة:

الواجهة: تحتوي قائمة EV3 على قائمة تتكون من 4 أجزاء: البرامج الحديثة، التنقل في الملفات، تطبيقات وحدة البناء، إعدادات وحدة البناء

4 شريحة

وصف الشريحة:

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

5 شريحة

وصف الشريحة:

مدير الملفات يمكنك الوصول إلى جميع الملفات المخزنة في ذاكرة الكمبيوتر الصغير، وكذلك على بطاقة الذاكرة وإدارتها. من هذه النافذة، يمكنك الوصول إلى جميع الملفات الموجودة في وحدة البناء EV3 وإدارتها، بما في ذلك الملفات المخزنة على بطاقة SD. يتم تنظيم الملفات في مجلدات المشروع، والتي، بالإضافة إلى ملفات البرنامج الفعلية، تحتوي أيضًا على الأصوات والصور المستخدمة في كل مشروع. يمكن نقل الملفات أو حذفها باستخدام متصفح الملفات. يتم تخزين البرامج التي تم إنشاؤها باستخدام بيئة برمجة الوحدة النمطية وتطبيقات تسجيل بيانات الوحدة بشكل منفصل في المجلدين BrkProg_SAVE وBrkDL_SAVE.

6 شريحة

وصف الشريحة:

تحتوي تطبيقات EV3 Control Box على 4 تطبيقات مثبتة مسبقًا: أ. عرض المنفذ. ب. التحكم في المحركات. ب. التحكم بالأشعة تحت الحمراء. د. بيئة برمجة الوحدة النمطية.

7 شريحة

وصف الشريحة:

A. Port View في النافذة الأولى لتطبيق Port View، يمكنك معرفة المنافذ التي تحتوي على أجهزة استشعار أو محركات متصلة بها بسرعة. استخدم أزرار التحكم في وحدة البناء EV3 للانتقال إلى أحد المنافذ المشغولة وسترى القراءات الحالية من المستشعر أو المحرك. قم بتثبيت العديد من أجهزة الاستشعار والمحركات وتجربة إعدادات مختلفة. لعرض أو تغيير الإعدادات الحالية للمحركات وأجهزة الاستشعار المثبتة، اضغط على الزر الأوسط. للعودة إلى نافذة التطبيق الرئيسية للوحدة، انقر فوق الزر "رجوع".

8 شريحة

وصف الشريحة:

ب. التحكم في المحرك التحكم في الحركة الأمامية أو العكسية لأي محرك متصل بأحد منافذ الإخراج الأربعة. هناك وضعان مختلفان. في أحد الأوضاع، ستتمكن من التحكم في المحركات المتصلة بالمنفذ A (باستخدام الزرين العلوي والسفلي) وبالمنفذ D (باستخدام الزرين الأيسر والأيمن). في الوضع الآخر، يمكنك التحكم في المحركات المتصلة بالمنفذ B (باستخدام الزرين العلوي والسفلي) والمنفذ C (باستخدام الزرين الأيسر والأيمن). يتم التبديل بين هذين الوضعين باستخدام الزر المركزي. للعودة إلى نافذة التطبيق الرئيسية للوحدة، انقر فوق الزر "رجوع".

الشريحة 9

وصف الشريحة:

التحكم بالأشعة تحت الحمراء يمكنك التحكم في الحركة الأمامية أو العكسية لأي محرك متصل بأحد منافذ الإخراج الأربعة باستخدام إشارة الأشعة تحت الحمراء عن بعد كجهاز تحكم عن بعد ومستشعر الأشعة تحت الحمراء كجهاز استقبال (يجب توصيل مستشعر الأشعة تحت الحمراء بالمنفذ 4 في وحدة البناء EV3) . هناك وضعان مختلفان. في أحد الأوضاع، ستستخدم القناتين 1 و2 على منارة الأشعة تحت الحمراء البعيدة. في القناة 1، ستتمكن من التحكم في المحركات المتصلة بالمنفذ B (باستخدام الزرين 1 و2 على منارة الأشعة تحت الحمراء البعيدة) والمنفذ C (باستخدام الزرين 3 و4 على منارة الأشعة تحت الحمراء البعيدة). ستتمكن في القناة 2 من التحكم في المحركات المتصلة بالمنفذ A (باستخدام الزرين 1 و2) وبالمنفذ D (باستخدام الزرين 3 و4). وفي وضع آخر، يمكنك التحكم في المحركات بنفس الطريقة، باستخدام القناتين 3 و4 على منارة الأشعة تحت الحمراء البعيدة بدلاً من ذلك. يتم التبديل بين هذين الوضعين باستخدام الزر المركزي. للعودة إلى نافذة التطبيق الرئيسية للوحدة، انقر فوق الزر "رجوع".

10 شريحة

وصف الشريحة:

بيئة برمجة وحدة البناء تأتي وحدة البناء EV3 متضمنة برنامجًا مثبتًا عليها. يشبه التطبيق البرنامج المثبت على جهاز الكمبيوتر الخاص بك. تحتوي هذه التعليمات على المعلومات الأساسية التي تحتاجها للبدء.

11 شريحة

وصف الشريحة:

إعدادات وحدة البناء EV3 تتيح لك هذه النافذة عرض وضبط الإعدادات العامة المتنوعة في وحدة البناء EV3.

12 شريحة

وصف الشريحة:

ضبط مستوى الصوت يمكنك زيادة مستوى الصوت أو خفضه في علامة التبويب "الإعدادات" في EV3.

الشريحة 13

اتصال USB

يمكن لـ LEGO Mindstorms EV3 الاتصال بجهاز كمبيوتر أو جهاز EV3 آخر عبر اتصال USB. تعد سرعة الاتصال واستقراره في هذه الحالة أفضل من أي طريقة أخرى، بما في ذلك تقنية Bluetooth.

يحتوي LEGO Mindstorms EV3 على منفذي USB.

الاتصال بين LEGO EV3 وكتل LEGO EV3 الأخرى في وضع السلسلة التعاقبية.

يتم استخدام وضع السلسلة التعاقبية لتوصيل كتلتين أو أكثر من كتل LEGO EV3.

هذا الوضع:

  • مصممة لتوصيل أكثر من LEGO Mindstorms EV3؛
  • يعمل على توصيل المزيد من أجهزة الاستشعار والمحركات والأجهزة الأخرى؛
  • يسمح بالاتصال بين عدة LEGO Mindstorms EV3 (حتى 4)، مما يمنحنا ما يصل إلى 16 منفذًا خارجيًا ونفس عدد المنافذ الداخلية؛
  • يجعل من الممكن التحكم في السلسلة بأكملها من LEGO Mindstorms EV3 الرئيسية؛
  • لا يمكن أن يعمل عندما تكون شبكة Wi-Fi أو Bluetooth نشطة.

لتمكين وضع اتصال السلسلة التعاقبية، انتقل إلى نافذة إعدادات المشروع وحدد المربع.

عند تحديد هذا الوضع، يمكننا تحديد كتلة EV3 لأي محرك والتي سيتم استخدامها وأجهزة الاستشعار اللازمة.

يوضح الجدول خيارات استخدام كتل EV3:

فعل

محرك متوسط

محرك كبير

توجيه

إدارة مستقلة

الجيروسكوب

الأشعة تحت الحمراء

بالموجات فوق الصوتية

دوران المحرك

درجات الحرارة

الطاقة متر

صوت

الاتصال عبر البلوتوث

تتيح تقنية Bluetooth لـ LEGO Mindstorms EV3 الاتصال بجهاز كمبيوتر وأجهزة LEGO Mindstorms EV3 الأخرى والهواتف الذكية وأجهزة Bluetooth الأخرى. نطاق الاتصال عبر البلوتوث يصل إلى 25 مترًا.

يمكنك توصيل ما يصل إلى 7 كتل بجهاز LEGO Mindstorms EV3 واحد. تسمح لك وحدة البناء الرئيسية EV3 بإرسال واستقبال الرسائل إلى كل تابع لـ EV3. يمكن لعبيد EV3 فقط إرسال الرسائل إلى وحدة البناء الرئيسية EV3، وليس لبعضهم البعض.

تسلسل اتصال EV3 عبر البلوتوث

لتوصيل مجموعتين أو أكثر من كتل EV3 ببعضها البعض عبر البلوتوث، يتعين عليك تنفيذ الخطوات التالية:

1. افتح علامة تبويب إعدادات.

2. اختر بلوتوثواضغط على الزر الأوسط.

3. نضع خانة الاختيار الرؤيةبلوتوث.

4. تأكد من أن علامة البلوتوث ("<") виден на верхней левой стороне.

5. قم بتنفيذ الإجراء المذكور أعلاه مع العدد المطلوب من وحدات الطوب EV3.

6. انتقل إلى علامة التبويب الاتصال:

7. اضغط على زر البحث:

8. حدد EV3 الذي تريد الاتصال به (أو الذي تريد الاتصال به) واضغط على الزر الأوسط.

9. نقوم بتوصيل الكتلتين الأولى والثانية بمفتاح الوصول.

إذا قمت بكل شيء بشكل صحيح، فستظهر الأيقونة " في الزاوية اليسرى العليا<>"، قم بتوصيل كتل EV3 الأخرى بنفس الطريقة إذا كان هناك أكثر من اثنين منها.

إذا قمت بإيقاف تشغيل LEGO EV3، فسيتم فقدان الاتصال وستحتاج إلى تكرار جميع الخطوات.

هام: يجب أن يكون لكل كتلة برنامجها الخاص المكتوب.

برنامج المثال:

الكتلة الأولى: عند الضغط على مستشعر اللمس، تقوم كتلة EV3 الأولى بإرسال النص إلى الكتلة الثانية مع تأخير قدره 3 ثوانٍ (الكتلة الرئيسية).

برنامج مثال للكتلة 2:

تنتظر الكتلة الثانية استلام النص من الكتلة الأولى، وبمجرد استلامها، ستعرض كلمة (في مثالنا، كلمة "Hello") لمدة 10 ثوانٍ (الكتلة التابعة).

الاتصال عبر شبكة Wi-Fi

يمكن الاتصال على نطاق أطول من خلال توصيل Wi-Fi Dongle بمنفذ USB الموجود على EV3.

لاستخدام Wi-Fi، تحتاج إلى تثبيت وحدة نمطية خاصة على كتلة EV3 باستخدام موصل USB (محول Wi-Fi (محول Netgear N150 اللاسلكي (WNA1100)، أو يمكنك توصيل Wi-Fi Dongle.