భూమి చుట్టూ చాలా GPS ఉపగ్రహాలు ఉన్నాయి, వీటిని ఏ ప్రదేశం యొక్క ఖచ్చితమైన స్థానాన్ని అందించడానికి ఉపయోగిస్తారు. లొకేషన్ కోఆర్డినేట్లతో పాటు (అక్షాంశం మరియు రేఖాంశం), ఇది సమయం, తేదీ, ఎత్తు, దిశ ట్రాకింగ్ కోణం వంటి ఇతర డేటాను కూడా అందిస్తుంది. ఆర్డ్యునో ఉపయోగించి శాటిలైట్ నుండి ఈ జిపిఎస్ డేటాను చదవడం మేము ఇప్పటికే నేర్చుకున్నాము. కాబట్టి మేము GPS ఉపగ్రహం నుండి 'సమయం మరియు తేదీ' డేటాను ఉపయోగించి GPS గడియారాన్ని తయారు చేయబోతున్నాము. GPS నవీకరించబడిన గడియారం చాలా ఖచ్చితమైనది మరియు నిజ సమయ డేటాను మిల్లీసెకన్ల ఖచ్చితత్వంతో అందిస్తుంది.
భాగాలు:
- ఆర్డునో యునో
- GPS మాడ్యూల్
- 16x2 LCD
- వైర్లను కనెక్ట్ చేస్తోంది
- విద్యుత్ పంపిణి
పని వివరణ:
GPS మాడ్యూల్ డేటాను NMEA ఆకృతిలో పంపుతుంది, స్క్రీన్ షాట్ క్రింద GPS డేటా యొక్క అవుట్పుట్ చూడండి. NMEA ఫార్మాట్ అనేక వాక్యాలను కలిగి ఉంటుంది, దీనిలో తేదీ మరియు సమయాన్ని సేకరించేందుకు మనకు ఒక వాక్యం అవసరం. ఈ వాక్యం $ GPRMC నుండి మొదలవుతుంది మరియు అక్షాంశాలు, సమయం మరియు ఇతర ఉపయోగకరమైన సమాచారాన్ని కలిగి ఉంటుంది. ఈ $ GPRMC సిఫార్సు చేయబడిన కనీస నిర్దిష్ట GPS / రవాణా డేటాకు సూచించబడుతుంది మరియు ఈ స్ట్రింగ్ యొక్క పొడవు 70 అక్షరాలు. అక్షాంశం మరియు రేఖాంశ కోఆర్డినేట్లను కనుగొనడానికి మేము గతంలో వాహన ట్రాకింగ్ సిస్టమ్లో $ GPGGA స్ట్రింగ్ను సేకరించాము. GPS అవుట్పుట్ ఇక్కడ ఉంది:
మరియు $ GPRMC స్ట్రింగ్ ప్రధానంగా వేగం, సమయం, తేదీ మరియు స్థానం కలిగి ఉంటుంది
$ GPRMC, 123519.000, A, 7791.0381, N, 06727.4434, E, 022.4,084.4,230394,003.1, W * 6 A $ GPRMC, HHMMSS.SSS, A, అక్షాంశం, N, రేఖాంశం, E, వేగం, కోణం, తేదీ, MV, W, CMD
ఐడెంటిఫైయర్ |
వివరణ |
ఆర్ఎంసి |
సిఫార్సు చేయబడిన కనీస వాక్యం సి |
HHMMSS.SSS |
గంట నిమిషం సెకన్లు మరియు మిల్లీసెకన్ల ఆకృతిలో సమయం. |
జ |
స్థితి // A = క్రియాశీల మరియు V = శూన్యమైనది |
అక్షాంశం |
అక్షాంశం 49 డిగ్రీలు. 16.45 నిమి. ఉత్తరం |
ఎన్ |
దిశ N = ఉత్తరం, S = దక్షిణ |
రేఖాంశం |
రేఖాంశం (సమన్వయం) |
ఇ |
దిశ E = తూర్పు, W = పడమర |
వేగం |
నాట్లలో వేగం |
కోణం |
డిగ్రీలలో కోణం ట్రాకింగ్ |
తేదీ |
UTC లో DATE |
ఎం.వి. |
అయస్కాంత వైవిధ్యం |
డబ్ల్యూ |
వైవిధ్యం యొక్క దిశ E / W. |
CMD (* 6A) |
చెక్సమ్ డేటా |
స్ట్రింగ్లోని కామాలతో లెక్కించడం ద్వారా మేము సమయం మరియు తేదీని $ GPRMC స్ట్రింగ్ నుండి సేకరించవచ్చు. Arduino మరియు ప్రోగ్రామింగ్ సహాయంతో, మేము $ GPRMC స్ట్రింగ్ను కనుగొని దానిని శ్రేణిలో నిల్వ చేస్తాము, అప్పుడు ఒక కామా తర్వాత సమయం (24 గంటల ఫార్మాట్) కనుగొనవచ్చు మరియు తొమ్మిది కామాలతో తర్వాత తేదీని కనుగొనవచ్చు. సమయం మరియు తేదీ మరింత తీగలలో సేవ్ చేయబడతాయి.
ఒక GPS ఉపగ్రహం సమన్వయ యూనివర్సల్ టైమ్ (UTC) లో సమయం మరియు తేదీని అందిస్తుంది, కాబట్టి మేము దానిని తదనుగుణంగా మార్చాలి. భారతీయ సమయం ప్రకారం మార్చడానికి, యుటిసి సమయంలో 5:30 ని చేర్చుకున్నాము, ఎందుకంటే భారతీయ సమయం యుటిసి / జిఎంటి కంటే 5 మరియు అరగంట ముందు ఉంది.
సర్క్యూట్ రేఖాచిత్రం:
Arduino GPS గడియారం యొక్క సర్క్యూట్ కనెక్షన్లు సులభం. మొత్తం ప్రక్రియను నియంత్రించడానికి Arduino ఉపయోగించబడుతుంది, ఇది GPS మాడ్యూల్ ద్వారా ఉపగ్రహం నుండి GPS డేటాను అందుకుంటుంది, $ GPRMC స్ట్రింగ్ నుండి తేదీ మరియు సమయాన్ని సంగ్రహిస్తుంది మరియు దానిని LCD లో చూపిస్తుంది.
16x2 LCD యొక్క డేటా పిన్స్ D4, D5, D6, D7 పిన్ నెం. Arduino యొక్క 5, 4, 3, 2 మరియు LCD యొక్క కమాండ్ పిన్ RS మరియు EN వరుసగా Arduino యొక్క పిన్ 7 మరియు 6 తో అనుసంధానించబడి ఉన్నాయి. GPS రిసీవర్ మాడ్యూల్ Tx పిన్ Arduino యొక్క Rx పిన్ 10 కి అనుసంధానించబడి ఉంది. Arduino మరియు GPS యొక్క గ్రౌండ్ పిన్ ఒకదానితో ఒకటి అనుసంధానించబడి ఉన్నాయి. ఇక్కడ మేము SKG13BL GPS మాడ్యూల్ను ఉపయోగించాము, ఇది 9800 bps బాడ్ రేట్లో పనిచేస్తుంది. “సీరియల్.బిగిన్ (9800)” ఫంక్షన్ను ఉపయోగించి ఆర్డునో 9800 బిపిఎస్ బాడ్ రేటుతో కాన్ఫిగర్ చేయబడింది .
ప్రోగ్రామింగ్ వివరణ:
ప్రోగ్రామింగ్ భాగంలో మొదట మేము లైబ్రరీలను చేర్చుకుంటాము మరియు LCD & సాఫ్ట్వేర్ సీరియల్ కమ్యూనికేషన్ కోసం పిన్లను నిర్వచించాము. డేటాను నిల్వ చేయడానికి శ్రేణులతో కొన్ని వేరియబుల్ను కూడా నిర్వచించండి. ఇక్కడ సాఫ్ట్వేర్ సీరియల్ లైబ్రరీని ఉపయోగించడం ద్వారా, మేము పిన్ 10 మరియు 11 లలో సీరియల్ కమ్యూనికేషన్ను అనుమతించాము మరియు వాటిని వరుసగా Rx మరియు Tx గా చేసాము. అప్రమేయంగా ఆర్డునో యొక్క పిన్ 0 మరియు 1 సీరియల్ కమ్యూనికేషన్ కోసం ఉపయోగించబడతాయి కాని సాఫ్ట్వేర్ సీరియల్ లైబ్రరీని ఉపయోగించడం ద్వారా, ఆర్డునో యొక్క ఇతర డిజిటల్ పిన్లపై సీరియల్ కమ్యూనికేషన్ను అనుమతించవచ్చు.
# చేర్చండి
దాని తరువాత మేము సెటప్ ఫంక్షన్లో సీరియల్ కమ్యూనికేషన్ మరియు ఎల్సిడిని ప్రారంభించాము మరియు ఎల్సిడిలో స్వాగత సందేశాన్ని చూపించాము.
అప్పుడు మేము అందుకున్న స్ట్రింగ్ను రూపొందించిన సమయం మరియు తేదీని సేకరించాము.
అయితే (x
ఆపై సమయం మరియు తేదీని దశాంశంగా మార్చండి మరియు దానిని భారతీయ కాలానికి సవరించండి (UTC +5: 30)
int UTC_hourDec = UTC_hour.toInt (); int UTC_minutDec = UTC_minut.toInt (); int రెండవ = UTC_second.toInt (); పూర్ణాంక తేదీ = UTC_date.toInt (); పూర్ణాంకం = UTC_month.toInt ();……………
చివరకు ఎల్సిడిలో ప్రింట్ ఫంక్షన్ను ఉపయోగించి ఎల్సిడిలో సమయం మరియు తేదీ చూపించబడ్డాయి, క్రింద ఉన్న పూర్తి కోడ్ను తనిఖీ చేయండి.