جستجو برای:
سبد خرید 0
  • خانه
  • فروشگاه
    • دوره های آموزشی
    • پروژه
    • بسته های آموزشی
      • رباتیک
      • آردوینو
  • هوافضا
    • آموزش هوافضا
      • فیلم های آموزش هوافضا
      • PDF های آموزش هوافضا
    • محصولات هوافضایی
    • نرم افزار های هوافضا
    • تازه های هوافضا
  • رباتیک
    • آموزش رباتیک
      • فیلم های آموزش رباتیک
        • PDF های آموزش رباتیک
    • دیتاشیت فارسی
    • نرم افزار های رباتیک
    • تازه های رباتیک
    • تاریخ مسابقات
  • پروژه
    • پروژه های رایگان
    • پروژه های آماده
    • پروژه های آردوینو
    • پروژه های رزبری پای
    • پروژه های بدون میکروکنترلر
    • پردازش تصویر
    • سفارش پروژه
  • دوره های آموزشی
    • کلاس های آموزشی
    • فیلم های آموزشی
    • جلسه های آموزشی
      • آموزش آردوینو
      • آموزش رسپبری پای
      • آموزش STM32
      • ربات پرنده
      • رباتیک مقدماتی
  • تماس با ما
  • درباره ما
  • مقالات
شروع ثبت نام دوره تابستانی آوات روبو
فرصت تکرار نشدنی ثبت نام در دوره های حضوری با 20% تخفیف!
ساعت
دقیقه
ثانیه
مشاهده دوره های آموزشی
رباتیک و هوافضا
ورود
با ایمیل با شماره موبایل
گذرواژه خود را فراموش کرده اید؟
عضویت
با ایمیل با شماره موبایل
  • 09152556924
  • sup@avatrobo.ir
رباتیک و هوافضا
  • خانه
  • فروشگاه
    • دوره های آموزشی
    • پروژه
    • بسته های آموزشی
      • رباتیک
      • آردوینو
  • هوافضا
    • آموزش هوافضا
      • فیلم های آموزش هوافضا
      • PDF های آموزش هوافضا
    • محصولات هوافضایی
    • نرم افزار های هوافضا
    • تازه های هوافضا
  • رباتیک
    • آموزش رباتیک
      • فیلم های آموزش رباتیک
        • PDF های آموزش رباتیک
    • دیتاشیت فارسی
    • نرم افزار های رباتیک
    • تازه های رباتیک
    • تاریخ مسابقات
  • پروژه
    • پروژه های رایگان
    • پروژه های آماده
    • پروژه های آردوینو
    • پروژه های رزبری پای
    • پروژه های بدون میکروکنترلر
    • پردازش تصویر
    • سفارش پروژه
  • دوره های آموزشی
    • کلاس های آموزشی
    • فیلم های آموزشی
    • جلسه های آموزشی
      • آموزش آردوینو
      • آموزش رسپبری پای
      • آموزش STM32
      • ربات پرنده
      • رباتیک مقدماتی
  • تماس با ما
  • درباره ما
  • مقالات
شروع کنید
آخرین اطلاعیه ها
لطفا برای نمایش اطلاعیه ها وارد شوید
0

وبلاگ

رباتیک و هوافضا > مقالات > پروژه > ردیاب خودرو با استفاده از آردوینو و GPS و GSM

ردیاب خودرو با استفاده از آردوینو و GPS و GSM

اسفند 6, 1396
ارسال شده توسط mjavad
پروژه، پروژه های آردوینو، پروژه های رایگان
ردیاب خورد رو با استفاده از آردوینو و GPS و GSM

به نام خدا

پروژه ی ردیاب خورد رو با استفاده از آردوینو و GPS و GSM

 

ردیاب خودرو

در این پروژه ما قصد داریم تا با استفاده از جی پی اس و جی اس ام وسیله ی نقلیه ای را ردیابی کنیم. از این سیستم نیز میتوان به عنوان سیستم هشدار تصادف ، ردیابی سرباز و بسیاری موارد دیگر استفاده کرد.

 

در این پروژه مختصات خودروی مورد نظر با طول عرض جغرافیایی (مختصات) بررسی می شود. مکان دقیق وسیله ی نقلیه ی مورد نظر به طور پیوسته توسط آردوینو گذارش می شود. این سیستم برای کاربرد های بیرونی و خارج از محیط بسته بسیار کار آمد است.

 قطعات مورد نیاز برای پروژه ی ردیاب خورد رو با استفاده از آردوینو و GPS و GSM:

آردوینو

ماژول جی اس ام (SIM900A)

ماژول جی پی اس (SKG13BL )

ال سی دی

منبع تغذیه

سیم برد بورد

پتانسیومتر 10 کیلو اهمی

ماژول جی پی اس و طرز کار آن:

از این ماژول برای پیدا کردن مختصات جغرافیایی زمین استفاده می شود. این ماژول مهم ترین قسمت سیستم ما می باشد که به طور پیوسته داده های زمان و مکان را از ماهواره می گیرد و آن را به آردوینو می دهد. آردوینو نیز این داده ها را با ماژول جی اس ام از طریق پیامک برای کاربر ارسال می کند.

 

ردیاب خودرو

ماژول جی پی اس داده ها را به فرمت NMEA ارسال می کند. در زیر یک تصویر از داده های خروجی ماژول را مشاهده می کنید. داده ای به فرمت NMEA دارای چندین جمله است که ما به دقیقا به یک قسمت از آن برای استخراج تاریخ و زمان نیاز داریم. این قسمت با $GPRMC شروع می شود که شامل مختصات ، زمان و دیگر اطلاعات ارزشمند است. این قسمت دارای 70 کاراکتر است.

ما برای استخراج داده های زمان و تاریخ می توانیم تعداد کاما ها را در رشته ی $GPGGA  بشماریم. عرض جغرافیایی پس دو کاما و طول جغرافیایی پس از 4 کاما قابل مشاهده است.  با کمک آردوینو و برنامه نویسی این رشته پیدا  و به صورت آرایه ذخیره می شود.

ردیاب خودرو

در زیر یک رشته ی $GPGGA با مخصات قابل مشاهده است:

$GPGGA,104534.000,7791.0381,N,06727.4434,E,1,08,0.9,510.4,M,43.9,M,,*47

$GPGGA,HHMMSS.SSS,latitude,N,longitude,E,FQ,NOS,HDP,altitude,M,height,M,,checksum data

Identifier

Description

$GPGGA

Global Positioning system fix data

HHMMSS.SSS

Time in hour minute seconds and milliseconds format.

Latitude

Latitude (Coordinate)

N

Direction N=North, S=South

Longitude

Longitude(Coordinate)

E

Direction E= East, W=West

FQ

Fix Quality Data

NOS

No. of Satellites being Used

HPD

Horizontal Dilution of Precision

Altitude

Altitude from sea level

M

Meter

Height

Height

Checksum

Checksum Data

شماتیک مدار:

همانطور که در شکل زیر می بینید اتصالات این پروژه ساده هستند. پین TX ماژول جی پی اس به طور مستقیم به پین 10 دیجیتال آردوینو متصل است. با استفاده از کتاب خانه ی Software Serial Library  ، ما توانایی ایجاد ارتباط سریال پین های 10 ، 11 ، Rx و Tx را ایجاد کردیم. همچنین تغذیه ی ماژول ها را به تغذیه ی 12 ولتی متصل کردیم.

 

ردیاب خودرو

با توجه به شکل پین های Rx  و Tx ماژول جی اس ام به طور مستیم به پین های 0 و 1 آردوینو متصل است. ال سی دی نیز مطابق شکل به آردوینو و ماژول ها متصل است و از یک پتانسیومتر برای تنظیم نور ال سی دی استفاده می شود. از ماژول جی اس ام برای ارسال داده های جی پی اس به فرد از طریق پیامک استفاده می شود.

 

 

ردیاب خودرو

 

 

 

 

 

دانلود کد پروژه ردیاب خودرو:

[maxbutton id=”188″ url=”http://avatrobo.ir/wp-content/uploads/2018/02/ردیاب-خودرو.txt” ]

#include<LiquidCrystal.h>
LiquidCrystal lcd(7, 6, 5, 4, 3, 2);
#include <SoftwareSerial.h>
SoftwareSerial gps(10,11); // RX, TX
//String str="";
char str[70];
String gpsString="";
char *test="$GPGGA";
String latitude="No Range      ";
String longitude="No Range     ";
int temp=0,i;
boolean gps_status=0;
void setup() 
{
  lcd.begin(16,2);
  Serial.begin(9600);
  gps.begin(9600);
  lcd.print("Vehicle Tracking");
  lcd.setCursor(0,1);
  lcd.print("    System      ");
  delay(2000);
  gsm_init();
  lcd.clear();
  Serial.println("AT+CNMI=2,2,0,0,0");
  lcd.print("GPS Initializing");
  lcd.setCursor(0,1);
  lcd.print("  No GPS Range  ");
  get_gps();
  delay(2000);
  lcd.clear();
  lcd.print("GPS Range Found");
  lcd.setCursor(0,1);
  lcd.print("GPS is Ready");
  delay(2000);
  lcd.clear();
  lcd.print("System Ready");
  temp=0;
}
void loop()
{
  serialEvent();
  if(temp)
  {
    get_gps();
    tracking();
  }
}
void serialEvent()
{
  while(Serial.available())
  {
    if(Serial.find("Track Vehicle"))
    {
      temp=1;
      break;
    }
    else
    temp=0;
  }
}
void gpsEvent()
{
  gpsString="";
  while(1)
  {
   while (gps.available()>0)            //checking serial data from GPS
   {
    char inChar = (char)gps.read();
     gpsString+= inChar;                    //store data from GPS into gpsString
     i++;
     if (i < 7)                      
     {
      if(gpsString[i-1] != test[i-1])         //checking for $GPGGA sentence
      {
        i=0;
        gpsString="";
      }
     }
    if(inChar=='\r')
    {
     if(i>65)
     {
       gps_status=1;
       break;
     }
     else
     {
       i=0;
     }
    }
  }
   if(gps_status)
    break;
  }
}
void gsm_init()
{
  lcd.clear();
  lcd.print("Finding Module..");
  boolean at_flag=1;
  while(at_flag)
  {
    Serial.println("AT");
    while(Serial.available()>0)
    {
      if(Serial.find("OK"))
      at_flag=0;
    }
    
    delay(1000);
  }
  lcd.clear();
  lcd.print("Module Connected..");
  delay(1000);
  lcd.clear();
  lcd.print("Disabling ECHO");
  boolean echo_flag=1;
  while(echo_flag)
  {
    Serial.println("ATE0");
    while(Serial.available()>0)
    {
      if(Serial.find("OK"))
      echo_flag=0;
    }
    delay(1000);
  }
  lcd.clear();
  lcd.print("Echo OFF");
  delay(1000);
  lcd.clear();
  lcd.print("Finding Network..");
  boolean net_flag=1;
  while(net_flag)
  {
    Serial.println("AT+CPIN?");
    while(Serial.available()>0)
    {
      if(Serial.find("+CPIN: READY"))
      net_flag=0;
    }
    delay(1000);
  }
  lcd.clear();
  lcd.print("Network Found..");
  delay(1000);
  lcd.clear();
}
void get_gps()
{
   gps_status=0;
   int x=0;
   while(gps_status==0)
   {
    gpsEvent();
    int str_lenth=i;
    latitude="";
    longitude="";
    int comma=0;
    while(x<str_lenth)
    {
      if(gpsString[x]==',')
      comma++;
      if(comma==2)        //extract latitude from string
      latitude+=gpsString[x+1];     
      else if(comma==4)        //extract longitude from string
      longitude+=gpsString[x+1];
      x++;
    }
    int l1=latitude.length();
    latitude[l1-1]=' ';
    l1=longitude.length();
    longitude[l1-1]=' ';
    lcd.clear();
    lcd.print("Lat:");
    lcd.print(latitude);
    lcd.setCursor(0,1);
    lcd.print("Long:");
    lcd.print(longitude);
    i=0;x=0;
    str_lenth=0;
    delay(2000);
   }
}
void init_sms()
{
  Serial.println("AT+CMGF=1");
  delay(400);
  Serial.println("AT+CMGS=\"+91**********\"");   // use your 10 digit cell no. here
  delay(400);
}
void send_data(String message)
{
  Serial.println(message);
  delay(200);
}
void send_sms()
{
  Serial.write(26);
}
void lcd_status()
{
  lcd.clear();
  lcd.print("Message Sent");
  delay(2000);
  lcd.clear();
  lcd.print("System Ready");
  return;
}
void tracking()
{
    init_sms();
    send_data("Vehicle Tracking Alert:");
    send_data("Your Vehicle Current Location is:");
    Serial.print("Latitude:");
    send_data(latitude);
    Serial.print("Longitude:");
    send_data(longitude);
    send_data("Please take some action soon..\nThankyou");
    send_sms();
    delay(2000);
    lcd_status();
}

 

برچسب ها: GPSGPS ModulegsmGSM Module SIM900ASIM900ASKG13BLآردوینو یونوپروژه آردوینوپروژه ارشدپروژه دانشجوییپروژه های آردوینوپروژه ی ردیاب خودرودانلود پروژهدانلود پروژه ردیاب خودرودانلود پروژه ی آردوینودانلود پروژه ی ارشددانلود پروژه ی رایگاندانلود پروژه ی رایگان آردوینودانلود پروژه ی رایگان دانشجوییدانلود پروژه ی رایگانردیاب خودرو با استفاده از آردوینو و GPS و GSMدانلود پروژه ی ردیاب خودرو با آردوینودانلود پروژه ی ردیاب خودرو با استفاده از آردوینو و GPS و GSMدانلود پروژه ی کامل آردوینودانلود پروژه ی کامل رایگان آردوینودانلود کد رایگاندانلود کد رایگان ردیاب خودروردیاب خودروردیاب خودرو با استفاده از آردوینو و GPS و GSMردیاب خوردوردیاب سربازسنسورکد آردوینوماژول gpsماژول جی اس امماژول جی پی اس
قبلی ساخت آمپرسنج با آردوینو
بعدی ساخت ربات دنبال کننده ی توپ با استفاده از رزبری پای

پست های مرتبط

اردیبهشت 9, 1398

برنامه نویسی به زبان پایتون برای رزبری پای

mjavad
ادامه مطلب

اسفند 5, 1397

تشخیص رنگ با استفاده از رزبری پای

mjavad
ادامه مطلب

بهمن 10, 1397

راه اندازی ال سی 2 در 16 با استفاده رزبری پای قسمت دوم

mjavad
ادامه مطلب

بهمن 10, 1397

راه اندازی ال سی 2 در 16 با استفاده رزبری پای قسمت اول

mjavad
ادامه مطلب

بهمن 2, 1397

ساخت اسپیدکنترلر موتور براشلس 3 ( با سنسور )

Author Avatar
Admin
ادامه مطلب

دیدگاهتان را بنویسید لغو پاسخ

دسته های محصولات
آخرین دیدگاه‌ها
  • Admin در پروژه ی ساخت یک ریموت کنترل 2.4 گیگا هرتز برای 10 کانال
  • Admin در درباره ما
  • Admin در پروژه ی ساخت یک ریموت کنترل 2.4 گیگا هرتز برای 10 کانال
  • Admin در رادیوکنترل 4 کاناله با قابلیت افزایش تا 10 کانال
  • امیر در رادیوکنترل 4 کاناله با قابلیت افزایش تا 10 کانال
ژوئن 2026
ش ی د س چ پ ج
 12345
6789101112
13141516171819
20212223242526
27282930  
« آوریل    
فهرست 1
  • عضویت
  • ویرایش حساب کاربری
  • ورود
  • خانه
فهرست 2
  • حمایت مالی
  • تبلیغات
  • فروشنده
  • داشبورد فروشندگان
  • سفارش پروژه
  • تماس با ما
  • درباره ما
فهرست 3
  • ویرایش حساب کاربری
  • فراموشی رمز عبور
  • ثبت نام
  • ویرایش حساب کاربری
محل کد نماد...
جستجو برای:
محصولات
  • دوره کوادکوپتر سرعتی FPV دوره آموزش ساخت کوادکوپتر مسابقاتی FPV
    نمره 4.00 از 5

    4,830,000 
  • دوره هواپیما مقدماتی تا پیشرفته دوره آموزش ساخت پهپاد بال ثابت ( هواپیما ) - مقدماتی تا پیشرفته
    10,480,000 
  • دوره کوادکوپتر مقدماتی دوره آموزش مقدماتی ساخت مولتی کوپتر (کوادکوپتر، هگزاکوپتر و ...)
    2,490,000 
  • دوره کوادکوپتر فیلم بردار دوره آموزش ساخت پهپاد فیلم بردار ( مولتی کوپتر )
    8,970,000 
  • دوره هواپیمای مدل موتور کشی دوره آموزش ساخت هواپیمای موتور کشی
    2,030,000 
نوشته‌های تازه
  • برنامه نویسی به زبان پایتون برای رزبری پای
  • تشخیص رنگ با استفاده از رزبری پای
  • راه اندازی ال سی 2 در 16 با استفاده رزبری پای قسمت دوم
  • راه اندازی ال سی 2 در 16 با استفاده رزبری پای قسمت اول
  • کنترل PID با آردوینو و دو موتور براشلس

درباره آوات روبو

 

آرمان آوات روبو نه تنها تغییر اکنون و تعریف آینده آموزش عملی و کاربردی در ایران، بلکه توسعه همین تغییر به کل دنیا است. نسخه بین المللی آوات روبو، هم اکنون در حال برنامه ریزی است و کارهای اولیه آن برای فعالیت در یوتیوب و یک سایت انگلیسی در حال انجام است.

دسترسی سریع

  • دوره های آموزشی
  • کیت
  • کلاس های حضوری
  • پروژه

کاوش

  • درباره ما
  • تماس با ما
  • مقالات

شبکه های اجتماعی

  • اینیستاگرام
  • یوتیوب
  • تلگرام

استفاده از مطالب سایت برای مقاصد غیر تجاری و با ذکر منبع بلامانع است. تمامی حقوق برای آوات روبو محفوظ است.