منصة Arduino هي واحدة من أفضل الأنظمة الآلية لبناء أنظمة آلية مختلفة. علاوة على ذلك ، تستخدم العديد من الجامعات والكليات Arduino لتعريف الطلاب بمجال الروبوتات. في الواقع ، تعتبر Arduino منصة خفيفة الوزن للغاية ، ولكنها في نفس الوقت منصة قوية لبناء العديد من الروبوتات والأنظمة الذكية. وبالطبع ، لكي يستغرق الأمر وقتًا أقل ، يتم بيع أجهزة الاستشعار الجاهزة. يوجد عدد كبير منها في المتاجر ، لذلك من الصعب جدًا الخلط في اختيار المتجر المناسب. في هذه المقالة سوف نلقي نظرة على بعض مستشعرات Arduino الرئيسية وكيف تعمل.
من أين تشتري
الحقيقة هي أن أجهزة الاستشعار في متاجرنا تكلف الكثير من المال. وإذا كنت ستبدأ في استكشاف منصة Arduino ، فأنت بحاجة فقط إلى معرفة مكان شرائها بسعر منخفض. الجواب بسيط - المتاجر الصينية. يمكن ان تكونAliexpress ، Joom ، Pandao وغيرها. تشتري جميع المتاجر تقريبًا أجهزة الاستشعار هناك وتبيعها بهامش كبير يصل إلى 300٪. بالطبع ، سيتعين عليك الانتظار لبعض الوقت ، ولا يمكنك التأكد من جودة البضائع ، ولكن دفع ثلاثة أضعاف نفس المستشعر لا يستحق ذلك أيضًا. مثال: يحتوي Aliexpress على مجموعة من 36 مستشعرًا تكلف 800 روبل. تباع المجموعة نفسها في متجر روسي مقابل 3.5 ألف روبل. لذا فالأمر متروك لك
محرك سيرفو
محرك سيرفو يستخدم في تصميم الروبوتات والأنظمة الذكية المختلفة. بمساعدة المؤازرة ، يمكنك فتح الأبواب ومعرفة درجة الدوران وغير ذلك الكثير. ولكن في الغالب يتم استخدامه في إنشاء الروبوتات. الحد الأقصى لزاوية دوران المؤازرة: 180 درجة. لكن في بعض الأحيان في المساحات المفتوحة لـ Aliexpress ، يمكنك أيضًا رؤية خيارات بزاوية دوران 360 درجة. هذا عنصر أساسي إلى حد ما ، فكل الدروس تقريبًا على Arduino مع المستشعرات تبدأ به. المؤازرة سهلة التوصيل ، رمز التحكم بسيط للغاية.
لتوصيل المؤازرة ، يتم استخدام ثلاثة أسلاك فقط: الأرض ، والطاقة ، والمنطق. يتم توصيل سلك الإشارة (عادةً ما يكون أصفر أو بني) بأي دبوس ممكّن لـ PWM (تعديل واسع النبضة) على Arduino.
مثال على الرمز:
تتضمن // تتضمن المكتبة للعمل مع Servo servo1 ؛ // أعلن عن متغير مؤازر من النوع "servo1" void setup () // setup setup {servo1.attach (11) ؛ //ربط المؤازرة بالإخراج التناظري 11} حلقة فارغة () // حلقة الإجراء {servo1.write (0) ؛ // ضبط زاوية الدوران على 0 تأخير (2000) ؛ // wait 2 seconds servo1.write (90) ؛ // ضبط زاوية الدوران على 90 تأخير (2000) ؛ // wait 2 seconds servo1.write (180) ؛ // ضبط زاوية الدوران على 180 تأخير (2000) ؛ // انتظر ثانيتين}
أولاً ، نضيف المكتبة الموجودة بالفعل في Arduino إلى الكود ، ثم نشير إلى الدبوس الذي تتصل به المؤازرة. كما ترى ، فإن العمل باستخدام المؤازرة أمر بسيط للغاية ، والتحكم هو مجرد مشغل واحد.
السعر على Aliexpress: 80-100 روبل.
DHT-11
يستخدم DHT-11 لقياس درجة الحرارة والرطوبة. يعتبر مستشعر درجة الحرارة هذا الخاص بـ Arduino هو الأكثر شيوعًا بسبب سعره وميزاته. يقيس درجة الحرارة في نطاق من 0 إلى 50 درجة ، والرطوبة من 20 إلى 80٪. يوجد أيضًا إصدار آخر من هذا المستشعر ، DHT-22 ، معروض للبيع ، وله نطاق قياس أكبر ، ولكنه أيضًا يكلف عدة مرات أكثر. بالنسبة للمشاريع البسيطة ، لا ينصح باستخدامه ، لذلك يفضل الجميع DHT-11 ، الذي يقوم بعمل ممتاز في القياس. يمكن توفير الطاقة من 3.3 إلى 5 فولت. بشكل عام ، يحتوي المستشعر نفسه على 4 دبابيس توصيل ، ولكن هناك وحدات DHT-11 معروضة للبيع ، وهو أكثر ملاءمة للعمل معها ، نظرًا لأن الاتصال من خلال 3 دبابيس ولا تحتاج إلى المعاناة من المقاومات.
اتصال. يتم توصيل مستشعر درجة الحرارة هذا بـ Arduino باستخدام ثلاثة جهات اتصال: الأرض والطاقة والمنطق.
مثال على الرمز:
تشمل"DHT.h" define DHTPIN 2 // نفس رقم التعريف الشخصي المذكور أعلاه DHT dht (DHTPIN ، DHT11) ؛ إعداد باطل () {Serial.begin (9600) ؛ dht.begin () ، } void loop () {delay (2000)؛ // تعويم تأخير ثانيتين h=dht.readHumidity () ؛ // قياس نسبة الرطوبة t=dht.readTemperature () ؛ // قياس درجة الحرارة إذا (isnan (h) || isnan (t)) {// Check. إذا فشلت القراءة ، تتم طباعة "فشل القراءة" ويتم إنهاء البرنامج Serial.println ("فشل القراءة") ؛ إرجاع؛ } Serial.print ("Moisture:")؛ طباعة المسلسل (ح) ؛ Serial.print ("٪ / t") ؛ Serial.print ("درجة الحرارة:") ؛ طباعة المسلسل (ر) ؛ Serial.println (" C") ؛ // عرض المؤشرات على الشاشة}
في البداية ، كما هو الحال عند العمل مع أجهزة ، المكتبة متصلة. بالمناسبة عن المكتبة. في البداية ، ليس في حزمة Arduino ، يجب تنزيل هذه المكتبة. توجد عدة إصدارات من هذه المكتبة ، في مثالنا ، يتم استخدام أكثرها معيارًا. كن حذرًا عند التنزيل ، لأن بناء الجملة قد يكون مختلفًا ولن تعمل الشفرة. علاوة على ذلك ، تتم كتابته أيضًا إلى جهة الاتصال التي يتصل بها المستشعر وإصداره (DHT11 أو DHT22). كما هو الحال مع المؤازرة ، فإن العمل مع هذا المستشعر لـ Arduino سهل للغاية ، باستخدام عدد قليل من المشغلين. بالمناسبة ، غالبًا ما تعمل المؤازرة و dht11 معًا ، على سبيل المثال ، عند إنشاء نوافذ تلقائية تفتح إذا كانت الغرفة أو الدفيئة شديدة الحرارة.
السعر على Aliexpress: 80-100 روبل.
مستشعر رطوبة التربة
يتم استخدام هذا المستشعر عندماتصميم الري الآلي. باستخدامه ، يمكنك قياس رطوبة التربة ، ثم معالجة هذه البيانات ، وإذا لزم الأمر ، سقي النبات. هناك العديد من المتغيرات لهذا المستشعر الخاص بـ Arduino معروضة للبيع ، لكن طراز FC-28 شائع. إنه خيار مناسب للميزانية ، لذلك يحبه الجميع ويستخدمه في مشاريعهم. يحتوي المستشعر على مجسين يقومان بتوصيل الكهرباء عبر الأرض. في التربة الجافة ، تكون المقاومة أكبر ، وتكون أقل في التربة الرطبة. في الأساس ، يتم استخدام هذا المستشعر فقط في المشاريع الصغيرة ، ويرجع ذلك إلى حقيقة أن المجسات مصنوعة من مادة رديئة ، وعاجلاً أم آجلاً ، أثناء العمل النشط ، تتآكل ، وبعد ذلك يتوقف المستشعر عن العمل. يمكن زيادة عمر المستشعر عن طريق تنشيطه فقط عند أخذ البيانات من الأرض ، على سبيل المثال ، مرة كل 6 ساعات. حتى أن بعض الحرفيين يغيرون المجسات إلى مجسات أفضل ، يصنعونها بأنفسهم ، أو حتى يقومون بتجميع مستشعر رطوبة لاردوينو من نقطة الصفر.
توصيل مستشعر رطوبة التربة بسيط للغاية. عادة ما يأتي مع مقياس جهد ومقارن للتحكم في حساسية المستشعر. في المجموع ، لديها ثلاث جهات اتصال: المنطق والقوة والأرض. يمكن توصيله بكل من جهات الاتصال الرقمية والتناظرية. بالمناسبة ، من الأنسب العمل في الوضع التناظري
مثال على الرمز:
int sensor_pin=A0 ؛ int output_value ؛ إعداد باطل () {Serial.begin (9600) ؛ Serial.println ("قراءة البيانات من جهاز الاستشعار") ؛ تأخير (2000) ؛ } حلقة فارغة () {output_value=analogRead (sensor_pin) ؛output_value=map (output_value، 550، 0، 0، 100) ؛ Serial.print ("الرطوبة:") ؛ Serial.print (output_value) ؛ Serial.println ("٪") ؛ تأخير (1000) ؛ }
بادئ ذي بدء ، نحدد جهات الاتصال التي يتصل بها المستشعر بـ Arduino. ثم نقرأ البيانات منه ونعرضها. كما هو الحال مع المستشعرات الأخرى ، يسهل التعامل مع FC-28. وكل ذلك بفضل المكتبات الجاهزة وأجهزة الاستشعار.
السعر على Aliexpress: 30-50 روبل.
مستشعر PIR
يتم استخدام مستشعر الحركة هذا في Arduino في بناء أنظمة الأمان المختلفة. يكتشف العناصر المتحركة من 0 إلى 7 أمتار. لن نأخذ في الاعتبار مبدأ التشغيل ، فلننتقل إلى توصيل هذا المستشعر بـ Arduino.
إذا حكمنا من خلال المراجعات ، فهو متصل أيضًا باستخدام ثلاث جهات اتصال: المنطق والقوة والأرض. يعمل من خلال مخرجات رقمية.
مثال على الرمز:
حدد PIN_PIR 2تعريف PIN_LED 13 إعداد باطل () {Serial.begin (9600) ؛ pinMode (PIN_PIR ، INPUT) ؛ pinMode (PIN_LED ، الإخراج) ؛ } حلقة فارغة () {int pirVal=digitalRead (PIN_PIR) ؛ Serial.println (digitalRead (PIN_PIR)) ؛ // إذا تم اكتشاف الحركة إذا (pirVal) {digitalWrite (PIN_LED ، HIGH) ؛ Serial.println ("تم اكتشاف الحركة") ؛ تأخير (2000) ؛ } else {//Serial.print("No motion ") ؛ الكتابة الرقمية (PIN_LED ، منخفضة) ؛ }}
نحدد جهات الاتصال التي يتصل بها المستشعر ، وبعد ذلك نتحقق من الحركة. العمل به مريح وسهل للغاية ، لكن هناك حالات من الإيجابيات الكاذبة.
سعر لAliexpress: 30-50 روبل.
رسم الاستنتاجات
أعلاه ، تم النظر في المستشعرات الرئيسية لـ Arduino ، والتي تعد أول من درسها هواة الراديو المبتدئين. كما ترى ، فهي غير مكلفة للغاية ، وتتصل بسهولة ، وتستغرق قراءة البيانات سطرين فقط. بالإضافة إلى ذلك ، لا يزال هناك عدد كبير من أجهزة الاستشعار الأخرى ، حتى بالنسبة لقياس النبض! من الأكثر ربحية شرائها على Aliexpress في مجموعات ، لذا فهي أرخص. من السهل إنشاء ، الشيء الرئيسي هو تذكر القواعد الأساسية الثلاثة للروبوتات!