فئات: دوائر متحكم
مرات المشاهدة: 6809
تعليقات على المقال: 0

ميكروكنترولر للبرمجة في جافا سكريبت: أي واحد للاختيار ، والميزات والقدرات

 

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

متحكم للبرمجة في جافا سكريبت

النطاق أو مثل هذه ميكروكنترولر اللازمة

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

ما هي ميكروكنترولر لجافا سكريبت وغيرها من اللغات غير التقليدية ل؟ هناك مناقشات بين الهواة والمهنيين في مجال تطوير الإلكترونيات في المنتديات المتخصصة ، حيث يشيد البعض بمشاريع مثل "Arduino" ، في حين أن الآخرين يهينونهم ويسخرونهم بكل طريقة ممكنة من أجل بساطة وتجريد المطور من معظم القضايا المتعلقة بالحديد.

هام: في هذا الجزء من المقالة نقول: "Arduino" ، لأنه أصبح نقطة الانطلاق لمعظم المعجبين لتصميم الأجهزة الإلكترونية.

يمكن برمجة Arduins في C. ولكن هل هذا ضروري؟ دعونا ننظر في السبب في معظم الحالات ليست هناك حاجة لسرعة رد الفعل من ميكروكنترولر. غالباً ما يحب عمال Arduino تجميع وحدات التحكم من أجل الري التلقائي وإدراج الإضاءة من أجل "إضاءة" النباتات. سيكون مثل هذا الجهاز المدمج مساعدة ممتازة لأولئك الذين يحبون زراعة شيء ما في الشقق أو البيوت الزجاجية.

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

نظام الري التلقائي

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

في أمثلة الإدارة RGB LED قطاع تحتوي LEDs العادية أو الذكية مع تحكم "بكسل لكل بكسل" (مثال لشريط SMART وعلامة التمييز التي تراها في الشكل أدناه) على موارد كافية أيضًا.

الشريط الذكي

ولكن أين تحتاج إلى السرعة وليست مناسبة لاستخدام لغات البرمجة المبسطة مثل Scratch أو javascript؟ كل شيء بسيط جدا:

  • في الدوائر الدقيقة ؛

  • في أجهزة الإنذار والأمن.

  • في أدوات القياس عالية الدقة مع الحاجة إلى أخذ البيانات بسرعة من ADC ، بما في ذلك الذبذبات العادية ؛

  • في الأجهزة التي تتطلب عملًا مستقلًا طويل الأجل في وضع السكون ؛

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

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


الاستنتاج؟

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



Espruino - متحكم قوي ولغة جافا سكريبت بسيطة

منصة Espruino عبارة عن مجموعة من البرامج والأجهزة لبرمجة ميكروكنترولر بلغة جافا سكريبت ، وتتضمن ثلاثة عناصر:

1. البرامج الثابتة ل متحكم مع مترجم لغة JS.

2. بيئة التطوير لـ Espruino Web IDE.

3. لوحة مع متحكم مع البرامج الثابتة نفسها للعمل مباشرة مع Espruino.

Espruino

تم تطوير الفكرة وتنفيذها بواسطة Gordon Williams في عام 2013 ، وقام بجمع الأموال لها باستخدام منصة التمويل الجماعي (Kickstarter). في الواقع ، كان جوهر التطوير هو تطوير البرامج الثابتة (محرك) Espruino لتحميله إلى ميكروكنترولر. يستخدم بشكل رئيسي في ميكروكنترولر من عائلة STM32 ، مع بنية ARM- القشرة. أجهزة أكثر ملاءمة للتشغيل ، وسوف ننظر أدناه.

متحكم إسبرينو

لكتابة برامج للتحكم الدقيق في javascript ، تحتاج إلى تثبيت Espruino Web IDE. هذا هو برنامج أو ملحق لمتصفح Google Chrome الشهير الذي يتم تثبيته بنقرة واحدة فقط.

بعد النقر فوق الزر "تثبيت" في قائمة "الخدمات" ، سيظهر تطبيق ما ، ويمكنك الدخول إلى هذه القائمة عن طريق الكتابة في شريط العناوين: chrome: // apps /

عندما تنقر على الأيقونة مع فنجان قهوة ، تفتح بيئة التطوير ، وهي ليست ملحوظة في المتصفح ، ولكن في نافذة منفصلة.

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

Espruino Web IDE

بعد ذلك ، فإن الجانب الأيمن من الشاشة ، والذي مع الكود ، سوف يتغير إلى تمثيله الآخر:

محرر الرسوم البيانية

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


استنتاج

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

هذا النهج يعطي الأداء في العديد من المهام ، مثل اردوينو.


مراجعة خط Espruino الرسمي

اسبرينو الأصلي

مواصفات هذا الجهاز:

  • 54 × 41 مم (نصف بطاقة ائتمان) ؛

  • STM32F103RCT6 وحدة المعالجة المركزية 32-ميجا هرتز ARM Cortex M3 سعة 32 بت

  • 256 كيلو بايت فلاش ، 48 كيلو بايت من ذاكرة الوصول العشوائي ؛

  • منفذ USB الصغير

  • مجموعة الجهد الإدخال من 3.6 إلى 15 فولت ؛

  • موصل البطارية (JST PHR-2 دبوس) ؛

  • المدمج في فتحة بطاقة SD.

  • ثلاثة المصابيح (الأحمر والأخضر والأزرق) ؛

  • منصات لتثبيت وحدة HC-05 Bluetooth ؛

  • المسافة بين المناجم - 0.1 "(2.54 مم) ؛

  • 44 دبابيس GPIO ، منها 26 PWM (PWM) و 16 ADC (ADC) و 3 USARTs و 2 SPI و 2 I2C و 2 DACs ؛

  • يمكن استخدام المساحة الموجودة على اللوحة لتوصيل عدد من الأجهزة ، مثل وحدات Wi-Fi ، والأجهزة ، قابلة للتوسيع إلى 14 مخرجات بتيار يصل إلى 500 مللي أمبير.

مجلس متحكم اسبرينو

ظهور اللوحة وتقسيم العقد المشروط إلى مناطق

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

Puck.JS

وفقًا للمعلومات الواردة من الموقع الرسمي ، فإن مواصفاته وميزاته التقنية هي كما يلي:

  • بلوتوث منخفضة الطاقة.

  • قبل تثبيت مترجم جافا سكريبت Espruino.

  • قلب اللوحة هو nRF52832 SoC - 64MHz ARM Cortex M4 ، ذاكرة وصول عشوائي 64 كيلو بايت ، 512 كيلو بايت فلاش ؛

  • 8 × 0.1 "منافذ GPIO (بما في ذلك PWM (PWM) ، SPI ، I2C ، UART ، مدخلات تناظرية) ؛

  • 9 منافذ SMD GPIO (بما في ذلك PWM و SPI و I2C و UART) ؛

  • غسالة الإسكان مصنوعة من البلاستيك ABS.

  • غطاء سيليكون مع مفتاح ؛

  • MAG3110 المغنطيسية - ثلاثة محاور المجال المغناطيسي متر.

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

  • ترمومتر ، مستشعر الضوء ومستوى البطارية ؛

  • ثلاثة المصابيح (الأحمر والأخضر والأزرق) ؛

  • برمجة عبر علامة JS NFC.

  • يمكن أن تدرك الدبابيس اللمس بالقدرة (مبدأ تشغيل الشاشات التي تعمل باللمس للهواتف الذكية) ؛

  • الوزن 14 غرام ؛

  • مقاسات العلبة البلاستيكية: القطر 36 مم ، السماكة - 12.5 ملم ؛

  • أبعاد اللوحة: القطر 29 مم ، سمك 9 مم.

مظاهرة العمل:

اللوحة التالية هي Espruino Wi-Fi ، كما يوحي الاسم ، ميزتها هي وحدة لاسلكية مدمجة للواي فاي.

Espruino واي فاي

خصائصه التقنية:

  • أبعاد اللوحة: 30 × 23 مم ؛

  • تحتوي اللوحة على موصل Micro USB ؛

  • 21 GPIO: 8 مدخلات تناظرية ، 20 PWM ، منفذ تسلسلي واحد ، 3 SPI ، 3 I2C ؛

  • تحتوي اللوحة على 3 مصابيح LED ، اثنتان منها قابلة للبرمجة بواسطة المستخدم ، وشاشة واحدة تعرض نشاط Wi-Fi ؛

  • المنافذ متوافقة مع اردوينو من حيث الجهد ودعم إشارة 5 فولت ؛

  • زر واحد

  • بنيت على متحكم STM32F411CEU6 32 بت 100MHz ARM Cortex M4 وحدة المعالجة المركزية.

  • الذاكرة: 512 كيلو بايت فلاش ، 128 كيلو بايت ذاكرة الوصول العشوائي ؛

  • اتصال Wi-Fi مع ESP8266 (802.11 b / g / n) ؛

  • RTC (الساعة في الوقت الحقيقي مع مولد خارجي).

  • مثبت على لوحة 3.3V مع تيار يصل إلى 250 مللي أمبير على اللوحة ، ويدعم الجهد العرض من 3.5 إلى 5 V.

  • يصل الاستهلاك الحالي في وضع السكون إلى 0.05 مللي أمبير ، مما يتيح لك العمل لمدة 2.5 سنة على بطارية 2500 مللي أمبير في الساعة (على الرغم من أن هذا يعد أكثر من مجرد تسويق ، ولكن من المرجح أن تفريغ البطارية نفسها بشكل أسرع).

Espruino واي فاي

مظاهرة المجلس:


Espruino Pico - متحكم لجافا سكريبت في شكل عصا USB

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

اسبرينو بيكو

المواصفات:

  • الأبعاد: 33 × 15 - مع الأخذ في الاعتبار قابس USB ؛

  • 22 منفذ GPIO ، بما في ذلك: 9 مدخلات تناظرية ، 21 PWM ، 2 مسلسل (المنافذ التسلسلية) ، 3 SPI ، 3 I2C ؛

  • دبابيس GPIO تدعم مستويات إشارة 5 فولت ، والتي تتيح لك الجمع بين لوحة مع الدروع والأجهزة لاردوينو.

  • قابس USB من النوع A جزء من اللوحة.

  • اثنين من المصابيح وزر واحد للبرمجة

  • بنيت على متحكم STM32F401CDU6 32 بت 84 ميجا هرتز ARM Cortex M4 وحدة المعالجة المركزية

  • الذاكرة: 384 كيلو بايت فلاش ، ذاكرة الوصول العشوائي 96 كيلو بايت

  • منظم جهد 3.3 فولت 250 مللي أمبير ملحوم على اللوحة ويسمح بتشغيله من 3.5 إلى 16 فولت.

  • في وضع السكون ، يستهلك التيار حتى 0.05 مللي أمبير ، ويدعي الصانع هنا 2.5 سنة من التشغيل من بطارية واحدة في 2500mAh ؛

  • المدمج في الترانزستور تأثير الحقل للسيطرة على الدوائر الحالية عالية.

هذا هو أصغر مجلس في الخط. على طول حوافها هي منافذ الإدخال / الإخراج. في هذه الحالة ، توجد طبقة المعدنة على الثقوب نفسها وعلى طول نهاية لوحة الدوائر المطبوعة.

اسبرينو بيكو

درجة التلامس قياسية ، وهذا يسمح لك بلحام خطوط PLS القياسية به (هذا هو الاسم الذي تحمله).

خط الثابتة والمتنقلة

مراجعة مفصلة لهذا المنتدى:


متجر Amperka على الإنترنت وخطوطه مع Javascript

سواء أعجبك ذلك أم لا ، لكن أكبر موقع للبرامج غير التقليدية للميكروكونترولر ، خاصة في javascript هو موقع Amperka. لديهم قناة على YouTube حيث يعلمون كيفية استخدام منتجاتهم وبرمجتها ، كما يعرضون تنفيذ المشاريع باستخدام مجموعة لوحاتهم الخاصة من ميكروكنترولر.

الخط ذو العلامة التجارية للشركة المصنعة المحلية هو ISKRA JS ، الذي يقرأ اسمه باللغة التي تجري مناقشتها. خصائصه التقنية:

  • متحكم: STM32F405RG (32 بت ARM Cortex M4);

  • تردد الساعة: 168 ميغاهيرتز;

  • ذاكرة فلاش: 1024 كيلو بايت;

  • SRAM: 192 كيلو بايت;

  • تقدير الجهد التشغيلي: 3.3V;

  • جهد الدخل الموصى به: 7-15 فولت أو 3.6-12 فولت;

  • الحد الأقصى الحالي من الحافلة 5V: 1000 مللي أمبير;

  • الحد الأقصى الحالي من الحافلة 3.3V: 300 مللي أمبير (بما في ذلك التيار الكهربائي متحكم);

  • الحد الأقصى الحالي من دبوس أو دبوس: 25 مللي أمبير;

  • الحد الأقصى الكلي الحالي من دبابيس أو دبابيس: 240 مللي أمبير;

  • منافذ الإدخال / الإخراج للأغراض العامة: 26;

  • المنافذ بدعم PWM: 22;

  • منافذ ADC: 12 (12 بت);

  • منافذ مع DAC: 2 (12 بت);

  • واجهات الأجهزة المتوفرة: 4 × UART / Serial ، 3 × I²C / TWI ، 2 × SPI;

  • الأبعاد: 69 × 53 ملم.

ISKRA JS

من الناحية الهيكلية ، تكون اللوحة قريبة جدًا من Arduino Uno R3 - وهذا يعني أنه يمكنك استخدام بطاقات التوسيع الخاصة بها.ما الأشياء المثيرة للاهتمام التي نراها في المواصفات الفنية؟ دعنا نقارنهم بكل اردوينو المفضل لديك.

مقارنة بين Iskra JS واردوينو UNO R3

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

Amperka تبيع أيضا ميكروكنترولر و الحواسيب الصغيرة مثل Raspberry Pi، وكذلك مجموعات التدريب للعمل معهم. هناك أيضًا مجموعة من بطاقات التوسع لأجهزة ميكروكنترولر ، وهي ما يسمى بوحدات Troyka. إنها مصنوعة بنفس اللون الأبيض مثل باقي منتجات هذه الشركة.

مثل أي دروع أخرى ، تحتوي منتجات Amperka على لوحات دوائر مطبوعة باعتبارها الوحدة الوظيفية الرئيسية - جهاز استشعار ، جهاز تبديل ، جهاز رئيسي أو مشغل والملحقات اللازمة له. لقد قمنا بالفعل بمراجعة تقريبية للوحدات النمطية لأردوينو - الدروع الأكثر شعبية لاردوينو، هنا كل شيء عن طريق القياس. على موقع الويب أو في مجتمع Amperka ، يمكنك العثور على مكتبات للاستخدام مع الوحدات النمطية مع Iskra JS أو Arduino.

من بين الوحدات الثلاثة هناك:

  • عصا التحكم.

  • التشفير.

  • وحدة مع التتابع.

  • بطاقات توسيع الميناء (Troyka-shield) ؛

  • التسارع ، وأجهزة استشعار الموقف الأخرى ؛

  • مجسات الضوء ، القرب ، التيار ، درجة الحرارة ، القاعة ، الضوضاء ، الغاز ، الكحول وغيرها ؛

  • استقبال لقراءة علامات NFC.

  • معدات لإدارة المحرك (جسور H ، برامج التشغيل) والمزيد.

للبيع هناك مجموعة مثيرة للاهتمام للمبتدئين "IODO".

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

Struktor

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


استنتاج

لبرمجة ميكروكنترولر في جافا سكريبت ، تحتاج فقط إلى تثبيت shell المناسب على عينتك. ومع ذلك ، ليس كل نسخة لديها برنامج ثابت مماثل ، ومع ذلك ، يمكن العثور على الأجهزة الشائعة في المنتديات المواضيعية. على سبيل المثال ، على BBC Micro: bit microcomputer ، يتم توضيح عملية العمل مع البيئة في الفيديو التالي ، ويتم إجراء التثبيت في بضع خطوات فقط.

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

انظر أيضا في electro-ar.tomathouse.com:

  • ميكروكنترولر الموافقة المسبقة عن علم للمبتدئين
  • أنواع وترتيب ميكروكنترولر AVR
  • التي اردوينو مجلس لاختيار
  • ما هي عروض Nextion وكيفية العمل معها؟
  • ربط وبرمجة اردوينو للمبتدئين

  •