loading

درس التحكم بالاردوينو عن طريق شبكة الجوال

المقدمة:

يتيح لك هذا الدرس استخدام شبكة الجوال للتحكم بضوء الليد بالمنزل عن طريق ارسال رسالة نصية وايضا استخدام الاردوينو للاتصال الاتوماتيكي من المنزل لجوالك عند استشعار اي حركة في الغرفة لسماع نوع الاصوات في غرفتك واتخاذ الاجراء الازم

Introduction:

This lesson will allow you to use SMS to control an LED along with using Arduino to make automatic calls to your phone in case it sensed movements in your room. You will be able to listen to the voices there and act upon emergency.

Step 1: Required Parts

القطع المطلوبة:

· اردوينو

· سلك ارتباط الاردوينو بالكمبيوتر

· قطعة شبكة الجوال

· شريحة جوال

· حساس حركة

· ٢ من الالوان المختلفة من أضواء الليد

· مقاومة بقيمة 220 Ω ٢ من

· اسلاك

· لوح كهربائي للتجارب

· 12VDC محول كهربائي

· مايكروفون

· سماعات خارجية ( كإضافة وليست مطلوبة

Parts:

· Arduino Uno R3

· Type A to B USB

· SainSmart GSM SIM300 Module

· Sim Card

· Motion Sensor

· 2 different Color LED

· 2x 220 Ohm Resistor

· Jumper wires

· Breadboard

· 12VDC adaptor

· Microphone

· Speakers (Optional)

Step 2: Connections

توصيل القطع:

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

Connections:

Follow the attached picture connections carefully. Please verify your connections with the table below.

توصيل قطعة شبكة الجوال

Connections between Arduino and GSM Module:

GSM === Arduino

TX === PIN 3

RX === PIN 2

GND === GND

توصيل حساس الحركة:

Connections between Arduino and Motion Sensor:

Motion Sensor === Arduino

VCC === 5 V

Data === PIN 7

GND === GND

توصيل الاردوينو لضوء الليد

منفذ رقم تسعة و عشرة في الاردوينو => الطرف الاول من المقاومة

الطرف الثاني من المقاومة => الطرف الموجب في الليد : هو الطرف الاطول في القطعة

الطرف السالب في الليد => منفذ الارض في الاردوينو

Connections between Arduino and LED

Pin 9/10 in Arduino => one side of the Resistor

Other side of the Resistor => Positive Side of LED (long leg)

Negative side of LED => GND in Arduino

Step 3: GSM Configuration

بعض الترتيبات على قطعة شبكة الجوال:

· الرجاء التأكد من اماكن قطعة التوصيل ووضعها كما موضح بالصورة

o هذا المكان يمكن القطعة من معرفة هل التعامل مع الكمبيوتر او متحكم دقيق

· تأكد من توصيل سماعات ومايكرفون للجهاز كما بالصورة

· تأكد من وضع شريحة جوال تعمل و يفضل بدون رقم سري

· تأكد من توصيل المحول الكهربائي

GSM Configuration:

· Please make sure the jumpers are correctly placed as attached picture

o This will allow the chip to know if it is dealing with a micro controller or PC

· Connect speakers and microphone as in picture

· Place a valid SIM card preferably no pin code.

· Connect Power adapter to GSM

Step 4: Programming

رفع البرنامج إلى الاردوينو:

فقط حمل البرنامج المرفق او انسخ الكود الى برنامج الاردوينو

الرجاء التأكد من بعض المعطيات في الكود قبل تشغيله:

· NUM_MSGS_DELETE تأكد من هذا الرقم اذا كانت الشريحة غير مخصصه للمشروع

· CPIN[] ادخل رقم الشريحة السري ان وجد في

· AT() اذا وجد رقم سري تاكد من تفعيل الكود في دالة

· CALL_NUM رقم الاتصال عند حدوث حركة

توجد هناك دالة مضافة للكود لتوفر لك خاصية ارسال الاردوينو للرسائل النصية

1. لأستخدامها يجب عليك ملئ هذه الحقول في الكود:

o SEND_MSG_NUM ادخل رقم مستقبل الرسالة

o SEND_MSG_TXT محتوى الرسالة النصية

2. وايضا تغير امر الاتصال الى امر ارسال رسالة في الدالة الرئيسية

o send_call() ----to----> send_txt()

أضف مكتبة جديدة للأردوينو:

حمل المكتبة المرفقة واستخرجها من الضغط الى

C:\Users\user\Documents\Arduino\libraries

هذه المكتبة عبارة عن مكتبة السوفتوير سيرال الاساسية ولكن اضفت مساحة اضافية في الحاوية الداخلية من 64 بايت الى 100 لأستقبال الرسائل كاملة

Uploading program to Arduino:

Just download the program or copy the code into an Arduino sketch

Please go over this code check list prior to executing the code:

· NUM_MSGS_DELETE (check it’s value if the SIM is not dedicated for the project)

· CPIN[] (insert SIM PIN Code, if required )

· if PIN is required, uncomment the code in AT()

· CALL_NUM (Emergency Call Number For Motion)

There is an additional function (send_txt()) in the code for Sending SMS instead of calling you.

1. For it to work you must fill :

o SEND_MSG_NUM (Insert phone number to receive SMS MSG)

o SEND_MSG_TXT (Insert SMS text)

2. And replace send_call() with send_txt() in main loop

ADDED LIBRARY:

Download adjusted Software Serial library and place it in:

C:\Users\user\Documents\Arduino\libraries

Only internal buffer increased to 100 instead of 64 nothing more.

Step 5: Explaining the Code

شرح البرنامج:

يوجد شرح بسيط بداخل الكود عن ما يفعله كل سطر في الكود المرفق بالعربية والانجليزية

ارجوا قراءة جميع التعليقات لفهم عمل المشروع

Explaining the code:

Almost every line inside the code has comments along with it

Please try reading all comments attached to understand the code.


أوامر الاي تي:

اوامر الاي تي هي تعليمات تتيح للمستخدم التحكم بالمودم. والاي تي هي اختصار من كلمة انجليزية تعني الانتباه او انتبه .

عند ارسال امر في بدايته

"AT" or "at"

ينتبه المودم للأجابة على الامر في الحال.

لمعرفة المزيد من الاوامر وكيفية عملهم، مرفق ملف به الاوامر التي يمكنك استخدامها.

AT Commands:

“AT commands are instructions used to control a modem. AT is the abbreviation of ATtention. Every command line starts with "AT" or "at". That's why modem commands are called AT commands. Note that the starting "AT" is the prefix that informs the modem about the start of a command line.” From CodeProject.com

To know and understand each command, you can download attached PDF file.

Step 6: Controlling the Project

التحكم بالمشروع:

1. عند الحركة المستمره امام مستشعر الحركة سيتم الاتصال بهاتفك الجوال

2. عند الاجابة على الجوال ستتمكن من سماع ما يدور من حركة في المكان

a. في هذه الاثناء، بإمكانك الحكم على الاصوات بالخطورة او عدمها

3. يمكنك ارسال رسالة جوال للشريحة المتواجدة مع الاردوينو تحتوي على كلمة

a. ON لتشغيل الليد

b. OFF لإغلاق الليد

Controlling the project:

1. When a continuous movement is detected by the motion sensor, you will receive a call

2. When answering your phone, you will be able to listen to the surroundings of the device.

a. This will allow you to take necessary action

3. You can also send a Text to the Arduino with:

a. ON – To turn the LED ON

b. OFF – To turn the LED OFF

Step 7: Future Projects Using This Lesson

مشاريع مستقبلية باستخدام هذه التقنية:

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

· عن طريق اضافة قطعة الاشعة تحت الحمراء بإمكانك التحكم بالمكيفات و اجهزة التلفاز بشبكة الجوال

· وايضا الكثير من المشاريع المميزة

Future projects using this lesson:

· By adding a Relay, you can control any AC device like your room lights, Alarm Sound, or any 110 V or 220V Household equipment

· By adding IR transmitter, you can control your TV and A/C using your phone World Wide.

· And many more…

<p>أحسنت بارك الله فيك. أتمنى لك المزيد من التقدم والتوفيق</p>
<p>GSM/GPRS SIM 800Lهل اتبع نفس الكود والمكتبة للشريحة </p>
<p>الله يجزيك الخير انشاء الله إلى الامام</p>
<p>شكرا اخى الله يبارك فيك </p>
plz send ieee paper for this project to my mail id:dennyjohn01@gmail.com
<p>Can u plz help me out.....</p><p>When i send &quot; ON &quot; from my phone the pir led on's and calls my phone and after some time it on's the txt led......it is the same in the case i send &quot; OFF &quot; also......</p><p>PLZZ HELP..</p>
<p>are you using my code attached ?</p><p>if so, make sure you don't move in front of the sensor or around it while sending your txt. try to get away and txt again.it should work.</p><p>if not using my code, then show me your code.</p><p>let me know how it goes</p>
sir...I'm using the same code posted in your page...
<p>Okay from what i understood from you, you got Calling and Texting working. however, you have problem with the PIR LED turning ON while texting. so here are key points to debug your problem without altering the code:</p><p>1. the interference of the GSM Antenna might effect the PIR sensor. please try to point the GSM antenna away from the PIR.</p><p>2. PIR sensitivity is very High, sometimes even just you typing will trigger it. So, cover the PIR with a cloth and check if it's you triggering it or the code.</p><p>3. if all the above fails then change one line in the code that might help which is the digitalWrite(pirled,HIGH) to inside the lockLow if statement like this</p><p> if (digitalRead(pirPin) == HIGH) {</p><p> if (lockLow) {</p><p>//makes sure we wait for a transition to LOW before any further output is made:</p><p><strong>digitalWrite(pirled, HIGH); //motion detected, turn on LED </strong></p><p> lockLow = false;</p><p>.....the rest of the code</p><p>please try all and let me know if it works with you</p>
My problem is not only the Pir led turning on.....but it also calls me.....
<p>That Great Man, Its really Great, i wish the best to you, </p>
<p>thank you sir. wish you the best as well</p>
مجهود ممتاز
<p>يعطيك العافيه</p>
فكره حلوه وشرح احلى.<br>اتمنى لك التوفيق.
<p>يعطيك العافية ويا رب احد يستفيد منه</p><p>مشكور على التعليق</p>
<p>Nicely done!</p><p>Thank you for sharing in English as well as Arabic. That's a very thoughtful gesture, and appreciated by many! :)</p>
<p>I just find such a joy in giving back to my community and the world. that's the least i can do; to share in two languages. </p><p>Thank you for the support</p>

About This Instructable

3,863views

23favorites

License:

More by motheeb:Arduino with GSM and PIR Sensor (English/Arabic) Control Arduino Using Bluetooth (Bilingual Lesson)(Arabic/English) 
Add instructable to: