PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > PIC - Thiết kế và Ứng dụng

Tài trợ cho PIC Vietnam
Trang chủ Đăng Kí Hỏi/Ðáp Thành Viên Lịch Tìm Kiếm Bài Trong Ngày Ðánh Dấu Ðã Ðọc Vi điều khiển

PIC - Thiết kế và Ứng dụng Ý tưởng cho các sản phẩm sử dụng PIC/dsPIC và các sản phẩm của Microchip

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 22-12-2011, 09:45 AM   #1
longtu
Đệ tử 6 túi
 
longtu's Avatar
 
Tham gia ngày: Jul 2007
Bài gửi: 146
:
Send a message via Yahoo to longtu
Su Dung GPS Module

Chào các bạn,

Mình vừa có dịp làm việc với GPS module, một chút kinh nghiệm mình xin chia sẽ đến diễn đàn của chúng ta.

Mục đích:
- Giới thiệu loại GPS module rẻ và có bán ở VN, phù hợp với các ứng dụng nhỏ độ chính xác vừa phải.
- Cách kết nối phần cứng cho GPS module.
- Cách tách chuỗi dữ liệu cần thiết từ chuỗi dữ liệu của GPS module.
- Một số lưu ý khi vẽ mạch PCB
__________________
--------------------------------------------------------------------------------------
Phùng Minh Tuân
Email: tuan.phmt@gmail.com
"Cuộc đời sóng gió nuôi ta lớn
Bao lần thất bại dạy ta khôn".

thay đổi nội dung bởi: longtu, 08-01-2012 lúc 06:40 PM. Lý do: Thêm: Một số lưu ý khi vẽ PCB
longtu vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 22-12-2011, 10:07 AM   #2
longtu
Đệ tử 6 túi
 
longtu's Avatar
 
Tham gia ngày: Jul 2007
Bài gửi: 146
:
Send a message via Yahoo to longtu
1. Một số loại GPS module

GPS module có các hãng thông dụng sau:
- Holux
- Globalsat
- Royaltek
- Skylap
- FTech
- Simcom
- ...
Tấc nhiên là tùy thuộc vào ứng dụng mà ta chọn loại GPS module phù hợp.
Nếu các bạn cần tư vấn chọn lựa GPS phù hợp hãy liên lạc với anh Linh: http://vn-et.com
Mình cũng đã từng nhờ anh Linh tư vấn chọn lựa loại GPS phù hợp, giá cả hợp lý. Nhân đây cũng xin cám ơn anh Linh, nhờ có anh mà mình đã làm xong sản phẩm của mình.

Mình giới thiệu một số loại GPS module giá thành hạ: Khoảng 300k-400K
- M89
- GR89
- UB93
Chú ý: Giá GPS module tăng dần theo thứ tự bên trên(chênh lệch nhau khoảng vài chụp ngàn).

Phụ kiền cần thiết cho GPS module:
- Ngoài GPS module, chúng ta cần phải có GPS anten. Có 2 loại External hay Internal anten
1. External anten: Nếu bạn chòn loại anten này phải cần mua thêm RC-C-SMA connector để có thể gắn trực tiếp trên mạch PCB. Xem hình External Anten.
2. Internal Anten: Xem hình ảnh Internal Anten. Với loại này, connector cho anten nay mình không tìm được, đành phải cắt bỏ connector này. Khi cắt bỏ đầu connector sẽ có: đây lõi(tín hiệu GPS-RF) + lưới bọc bên ngoài(nối mass).
Hình Kèm Theo
File Type: bmp External Anten.bmp (203.6 KB, 379 lần tải)
File Type: bmp Internal Anten.bmp (62.4 KB, 297 lần tải)
__________________
--------------------------------------------------------------------------------------
Phùng Minh Tuân
Email: tuan.phmt@gmail.com
"Cuộc đời sóng gió nuôi ta lớn
Bao lần thất bại dạy ta khôn".

thay đổi nội dung bởi: longtu, 08-01-2012 lúc 06:41 PM. Lý do: Bô xung nội dung
longtu vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 22-12-2011, 10:29 AM   #3
longtu
Đệ tử 6 túi
 
longtu's Avatar
 
Tham gia ngày: Jul 2007
Bài gửi: 146
:
Send a message via Yahoo to longtu
2. Cách kết nối phần cứng tối thiểu để GPS hoạt động.

Mình làm việc với UB93 GPS module, vì vậy mình trình bày kết nối phần cứng cho module này. Loại module khác cũng sẽ tương tự.
- Kết nối phần cứng: Xem hình ảnh đính kèm.
Chú ý:
+ Tùy chọn sử dụng loại External hay Internal anten. Tuy nhiên, kinh nghiệm của mình thì Internal anten(nhỏ gọn, sắp xếp đặt được ngay trên mạch PCB được) hoạt động tốt không thua kém gì External(to, dây dài để có thể kéo ra bên ngoài).
+ Chân 1PPS: chân này được nối qua 1 Led. Ý nghỉa như su:
* Led tắt: chưa thu được tín hiệu từ vệ tinh.
* Led sáng: đang dò tìm tín hiệu từ vệ tinh
* Led chớp tắt: Tín hiệu thu được từ vệ tinh là tốt.
Khi kết nối GPS thành công, cứ khoảng 1s, GPS sẽ nhận được tín hiệu từ vệ tinh và khi đó ta chỉ cần quan sát Led này chớp tắt có nghỉa là việc thu tín hiệu đã tốt.
+ Chân TX0: Chân truyền dữ liệu từ GPS module. Để có thể xử lý data từ GPS module thông qua việc giao tiếp với Microcontroller, ta sẽ dụng chân này. Tuy nhiên, GPS module sử dụng 3.3V, microcontroller thông dụng lại là 5V. Vì vậy việc thêm 2 transistor(xem hình) là cần thiết.
Ngõ ra TX_GPS sẽ đuợc nối vào chân RX của microcontroller.
Hình Kèm Theo
File Type: bmp GPS Circuit.bmp (793.2 KB, 740 lần tải)
__________________
--------------------------------------------------------------------------------------
Phùng Minh Tuân
Email: tuan.phmt@gmail.com
"Cuộc đời sóng gió nuôi ta lớn
Bao lần thất bại dạy ta khôn".

thay đổi nội dung bởi: longtu, 22-12-2011 lúc 10:37 AM. Lý do: Attach hình ảnh.
longtu vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 22-12-2011, 11:11 AM   #4
longtu
Đệ tử 6 túi
 
longtu's Avatar
 
Tham gia ngày: Jul 2007
Bài gửi: 146
:
Send a message via Yahoo to longtu
3. Cách tách data cần thiết từ chuỗi data nhận được từ Vệ tinh

Việc kết nối GPS module(chân TX0) với Microcontroller qua chân RX, ta sử dụng ngắt RDA để thực hiện việc lấy chuỗi data cũng như tách lấy dữ liệu cần lấy.
Ví dụ: Chuỗi data cần lấy:
$GPRMC,220516,A,5133.82,N,00042.24,W,173.8,231.8,1 30694,004.2,W*70
Ghi nhận:
*Sau dấu "," thứ nhất: Thông tin thời gian
*Sau dấu "," thứ 2: thông tin Latitude
*Sau dấu "," thứ 4: thông tin Longitude
* ....
Code:
char GPSbuffer[70];
char GPRMC[6]={"$GPRMC"};//Nếu muốn lấy chuỗi data ta GPRMC
char Comma_position[13];
int8 check= 0;
/* Find comma in GPS datas -------------*/
Void FindComma()
{
   int8 i, counter= 0;
   for(i= 0;i<70; i++)
   {
      if(GPSbuffer[i]== ',' )
         Comma_position[counter++]= i;
   }
}
/*Received data from GPS module: ------------*/
#INT_RDA
Void Receive_GPSbuffer()
{
   char c;
   c= getc();
   if(check == 69) return;
   GPSbuffer[check++]= getc();
   if(check<7)
   {
      if((GPSbuffer[check-1]) != (GPRMC[check-1]))
         check= 0;
   }
}
Void TimeGPS()//Vi dụ mang tính minh họa lấy thời gian từ GPS module.
{
   char i;
   i= Comma_position[0];  //ngay sau vị trí dấu , đầu tiên là thông tin THOI GIAN
   printf("TIME(HHMMSS): %c%c:%c%c:%c%c\r\n",GPSbuffer[i+1],GPSbuffer[i+2], 
                                     GPSbuffer[i+3],GPSbuffer[i+4],
                                     GPSbuffer[i+5],GPSbuffer[i+6]);
   
  delay_ms(10);
}
Void LatitudeGPS()
{
char i;
 i= Comma_position[2];
...
}
Vode LongitudeGPS()
{
char i;
 i= Comma_position[4];
...
}
Void GetData()
{
   FindComma();
   TimeGPS();   
   LatitudeGPS();//*Sau dấu "," thứ 2: thông tin Latitude
   LongitudeGPS();//*Sau dấu "," thứ 4: thông tin Longitude
   //...
   check= 0;//The next get GPS datas.
}

void main()
{
   if(check == 69) GetData();
}
Code trên, chỉ là để minh hoạ cách lấy data cũng như tách lấy data cần sử dụng. Các bạn thay đổi để phù hợp với ứng dụng của mình.
__________________
--------------------------------------------------------------------------------------
Phùng Minh Tuân
Email: tuan.phmt@gmail.com
"Cuộc đời sóng gió nuôi ta lớn
Bao lần thất bại dạy ta khôn".

thay đổi nội dung bởi: longtu, 22-12-2011 lúc 11:16 AM.
longtu vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 22-12-2011, 11:21 AM   #5
longtu
Đệ tử 6 túi
 
longtu's Avatar
 
Tham gia ngày: Jul 2007
Bài gửi: 146
:
Send a message via Yahoo to longtu
Tổng kết:

- Hy vọng qua các bài viết ở trên, các bạn có thể hiểu cách thức làm việc với GPS module. Từ đó tuỳ biến sử dụng cho sản phẩm của mình.
- Nếu có chổ nào chưa thật rõ ràng, các bạn cần thêm thông tin, hãy gửi email cho mình(xem chữ ký).
__________________
--------------------------------------------------------------------------------------
Phùng Minh Tuân
Email: tuan.phmt@gmail.com
"Cuộc đời sóng gió nuôi ta lớn
Bao lần thất bại dạy ta khôn".
longtu vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 22-12-2011, 03:24 PM   #6
longtu
Đệ tử 6 túi
 
longtu's Avatar
 
Tham gia ngày: Jul 2007
Bài gửi: 146
:
Send a message via Yahoo to longtu
4. Một số lưu ý khi vẽ PCB

Một số chú ý khi vẽ PCB cho đường RF và các đặt GPS module trên mạch PCB.
Hình Kèm Theo
File Type: jpg PCB Layout Recommandation for GPS 1.jpg (73.9 KB, 160 lần tải)
File Type: jpg PCB Layout Recommandation for GPS 2.jpg (116.5 KB, 138 lần tải)
File Type: jpg PCB Layout Recommandation for GPS 4.jpg (119.3 KB, 126 lần tải)
__________________
--------------------------------------------------------------------------------------
Phùng Minh Tuân
Email: tuan.phmt@gmail.com
"Cuộc đời sóng gió nuôi ta lớn
Bao lần thất bại dạy ta khôn".
longtu vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 16-05-2012, 02:26 PM   #7
thanhsonvn90
Đệ tử 1 túi
 
Tham gia ngày: Oct 2010
Bài gửi: 18
:
Trích:
Nguyên văn bởi longtu View Post
+ Chân TX0: Chân truyền dữ liệu từ GPS module. Để có thể xử lý data từ GPS module thông qua việc giao tiếp với Microcontroller, ta sẽ dụng chân này. Tuy nhiên, GPS module sử dụng 3.3V, microcontroller thông dụng lại là 5V. Vì vậy việc thêm 2 transistor(xem hình) là cần thiết.
Ngõ ra TX_GPS sẽ đuợc nối vào chân RX của microcontroller.
Có thực sự cần thiết không bạn? Mình nghĩ 3v3 được coi là mức cao trong chuẩn TTL, do đó VDK có thể nhận được bt
thanhsonvn90 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 12-03-2012, 10:30 PM   #8
lambaotrung
Đệ tử 5 túi
 
Tham gia ngày: Jan 2010
Bài gửi: 96
:
cũng rất cảm ơn bạn, nhưng mình đọc đi đọc lại bài viết của bạn máy lần..... nhưng minh chưa biết làm thế nào.... kết nói kiễu sao với PIC hay là loại VĐK nào...

vd: bạn có thể đưa lên 1 bài về những gì bạn đạt dc ở một modell cụ thể ra làm sao. và bạn đã dạt đến mức nào..

trong diễn đàn cũng có 1 bạn cũng muốn tiềm hiểu về GPS về hiễn thi tọa đô lên màn hình LCD. để đạt dc như thế mình làm sao bạn có thể giúp thêm ko.


ví dụ modell GPS kết nói với VDK kiểu gì loại gì.....

và giá trị của modell GPS đưa cho vi điều khiển dưới dạng nào... ..


mong bạn giúp nhiều hơn. chân thành cảm on.
lambaotrung vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 13-03-2012, 09:42 AM   #9
longtu
Đệ tử 6 túi
 
longtu's Avatar
 
Tham gia ngày: Jul 2007
Bài gửi: 146
:
Send a message via Yahoo to longtu
Trả lời bạn Lâm Bảo Trung

Chào Trung, mình trả lời các câu hỏi của bạn ở dưới email của bạn:

[Lâm Bảo Trung]:cũng rất cảm ơn bạn, nhưng mình đọc đi đọc lại bài viết của bạn máy lần..... nhưng minh chưa biết làm thế nào.... kết nói kiễu sao với PIC hay là loại VĐK nào...
[Tuân 2012.03.13]: Trung để ý, mình cũng đã gửi schematic cho việc kết nối giữa GPS module và Microcontroller PIC(Microcontroller khác cũng tương tự). Việc giao tiếp giữa GPS và Microcontroller chỉ đơn giãn qua chân TX. Chú ý mức điện áp chỉ 3.3V cho GPS và thường 5V cho Microcontroller(xem hình ảnh schematic đã gửi).

[Lâm Bảo Trung]:vd: bạn có thể đưa lên 1 bài về những gì bạn đạt dc ở một modell cụ thể ra làm sao. và bạn đã dạt đến mức nào..
[Tuân 2012.03.13]: Bạn mong muốn gì ở GPS module, phải chăng là lấy và sử dụng được các thông tin nhận được từ vệ tinh thông qua GPS module này: thời gian, kinh đọ, vĩ độ... Bài viết của mình đã làm được điều này rồi mà. Bạn cần xem lại đoạn code mình đã gửi lên diễn dàn, đó là code tham khảo để lấy các thông tin từ vệ tinh. Còn mục đích sử dụng thì tùy vào ứng dụng, tùy vào mục đích của bạn.

[Lâm Bảo Trung]:trong diễn đàn cũng có 1 bạn cũng muốn tiềm hiểu về GPS về hiễn thi tọa đô lên màn hình LCD. để đạt dc như thế mình làm sao bạn có thể giúp thêm ko.
[Tuân 2012.03.13]: Việc hiển thị tọa độ lên LCD cũng đơn giản như bạn muốn hiển thị 1 data nào đó lên LCD mà thôi. Bạn đã làm được đến đâu(xem các câu hỏi bên dưới)?:
- Microcontroller mà ban tìm hiểu là gì(PIC, AVR, AMR...)?
- Bạn đã sử dụng được LCD với Microcontroller chưa?
Tiếp theo bạn thay data ở trên bởi dữ liệu là tọa độ rồi cho LCD hiển thị thôi.

[Lâm Bảo Trung]:ví dụ modell GPS kết nói với VDK kiểu gì loại gì.....
[Tuân 2012.03.13]: Hình như bạn không đọc kỹ bài viết của mình, không xem các hình ảnh dính kèm về schematic...
[Lâm Bảo Trung]:và giá trị của modell GPS đưa cho vi điều khiển dưới dạng nào... ..
[Tuân 2012.03.13]: Hình như bạn không đọc kỹ bài viết của mình, không xem các hình ảnh dính kèm về schematic, đoạn code minh họa...

mong bạn giúp nhiều hơn. chân thành cảm on.
[Tuân 2012.03.13]: Không ai giúp bạn được nếu như bạn chưa thật sự cố gắng, chưa tìm hiểu kỹ. Tấc cả các câu hỏi trên của bạn mình cho rằng bài viết của mình đã trả lời được hết rồi, hãy đặt câu hỏi cho đúng vấn đề, tấc cả mọi người trên diễn dàn này đều sẵn sàng giúp đở.
__________________
--------------------------------------------------------------------------------------
Phùng Minh Tuân
Email: tuan.phmt@gmail.com
"Cuộc đời sóng gió nuôi ta lớn
Bao lần thất bại dạy ta khôn".
longtu vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 14-03-2012, 10:06 PM   #10
lambaotrung
Đệ tử 5 túi
 
Tham gia ngày: Jan 2010
Bài gửi: 96
:
máy bác ơi cho em làm phiền.....

cái chuyện làm modull để từ từ rành rẻ về PIC thì hay làm. bày giờ em muốn làm 1 bài tập về truyền nhận dữ liệu từ PIC này sang PIC kia ( PIC1 đến PIC2) qua cổng RS232.

em truyền 1 số "123 " , hay 1 chử cái " A " đi và dùng ngắt RDA thì mình làm tốt và hiện thị giá trị lên LCD tốt.

nhưng khi em truyền 1 mãng char string[]=" PICVIETNAM ";
dùng lệnh Printf(string); nói chung thì no truyền đi dc.

nhưng ở phần PIC nhận thì em chỉ nhận dc có chứ "P" khi em dùng lệnh

IN=getc(); thì chi hiện chử 'P' á. . // khai bao char IN[10];

khi dùng lệnh gets(IN); thì nó đơ luôn. ko hiện hồn chử gì lên LCD cả.

các bác giúp em chổ này và bác Longtu ơi bác giúp noi rõ hơn về việc tìm dấu " , ". nhé anh. thật tình thi em chậm tiêu lam. đoạn code của bác em đọc tởi đọc lui 2 ngày mà chưa nghộ ra dc nhiều.


em kết nói 8bit với LCD qua portD.

thay đổi nội dung bởi: lambaotrung, 15-03-2012 lúc 03:54 PM.
lambaotrung vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 17-03-2012, 12:22 AM   #11
tienchuan
Đệ tử 4 túi
 
tienchuan's Avatar
 
Tham gia ngày: Oct 2008
Bài gửi: 71
:
Trích:
Nguyên văn bởi lambaotrung View Post
máy bác ơi cho em làm phiền.....

cái chuyện làm modull để từ từ rành rẻ về PIC thì hay làm. bày giờ em muốn làm 1 bài tập về truyền nhận dữ liệu từ PIC này sang PIC kia ( PIC1 đến PIC2) qua cổng RS232.

em truyền 1 số "123 " , hay 1 chử cái " A " đi và dùng ngắt RDA thì mình làm tốt và hiện thị giá trị lên LCD tốt.

nhưng khi em truyền 1 mãng char string[]=" PICVIETNAM ";
dùng lệnh Printf(string); nói chung thì no truyền đi dc.

nhưng ở phần PIC nhận thì em chỉ nhận dc có chứ "P" khi em dùng lệnh

IN=getc(); thì chi hiện chử 'P' á. . // khai bao char IN[10];

khi dùng lệnh gets(IN); thì nó đơ luôn. ko hiện hồn chử gì lên LCD cả.

các bác giúp em chổ này và bác Longtu ơi bác giúp noi rõ hơn về việc tìm dấu " , ". nhé anh. thật tình thi em chậm tiêu lam. đoạn code của bác em đọc tởi đọc lui 2 ngày mà chưa nghộ ra dc nhiều.


em kết nói 8bit với LCD qua portD.
đọc xog bài của bạn mih cũng đơ lun, hehe
bây h bạn làm từ từ cho hắn khỏi đơ
bạn muốn kiểm tra bên gởi đã gởi được hay chưa thì test qua Hyper Terminal đã nhé, nếu nhận OK hết rồi hãy kết nối với PIC để xử lý
Bên Pic nhận thì làm ngược lại, lấy Hyper gởi xuống chuỗi gì đó rồi cho hiện lên LCD
Xong 2 cái, bạn cắm lại vs nhau là OK thôi,
Nhớ đấu chéo 2 dây TX và RX nhé
p/s: bày vẻ bạn đủ thứ để cho có việc làm+ lần sau nên tạo chủ đề mới để hỏi nhé, làm loãng topic của a longtu
Thân.
tienchuan vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 19-03-2012, 11:37 AM   #12
lambaotrung
Đệ tử 5 túi
 
Tham gia ngày: Jan 2010
Bài gửi: 96
:
cám ơn các anh.

hiện em đã làm tốt việc nhận và xử lý tách chuổi dữ liệu qua rs232 giữa 2 PIC. côi như phần cần cơ bản em đã làm xong.

bày giờ quay lại đoạn chuỗi giữ liệu của bác Longtu.
$GPRMC,220516,A,5133.82,N,00042.24,W,173.8,231.8,1 30694,004.2,W*70

sau dấu ',' thứ 1: là thời gian ok em hiểu.
sau dấu ',' thứ 2: là vĩ độ " latitude " A,5133.82 đoạn này em ko hiểu.
sau dấu ',' thứ 4: là kinh độ " longitude" N,00042.24 đoạn này cũng ko hiểu.

ở 2 đoạn kia là các con số phần tích thế nào anh longtu. nếu như ở miền nàm thi nằm trong khoảng
- longitude: 105 độ, 55' 37.04" E.
- latitude: 10 độ 08' 59.07" N. " là tọa độ của máy tính em cung cấp vì máy laptop có card wwan + GPS.

như vậy em so sanh với đoạn code cua modull GPS đưa ra thì em ko hiểu luôn.. híc bác longtu giúp em. giải thích thêm nhe. cảm ơn bác longtu và các bác đã có những lời khuyên cho em và em đã thành công. hihi

thay đổi nội dung bởi: lambaotrung, 20-03-2012 lúc 11:20 AM.
lambaotrung vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 19-03-2012, 11:09 PM   #13
tienchuan
Đệ tử 4 túi
 
tienchuan's Avatar
 
Tham gia ngày: Oct 2008
Bài gửi: 71
:
@ Trung : vì làm code minh họa ví dụ nên chắc a longtu ghi nhầm đó, bạn cộng thêm 1 để lấy các giá trị đó, tức vĩ độ sau dấu phẩy thứ 3, kinh độ sau dấu phẩy thứ 5,... còn chữ A sau chuỗi thời gian báo hiệu cho biết thời gian thu được có hợp lệ hay chưa (A: có,V:ko),còn các chữ cái N - Bắc; W - Tây; E - Đông; S - Nam để chỉ hướng.
Bạn coi thêm định dạng chuỗi GPRMC trong chuẩn NMEA quy định để biết thông tin của chuỗi.
Còn về vấn đề tọa độ của Module gởi về , ở đây mih nói module sim 548C vì đang dùng, nếu dùng module khác, bạn coi datasheet module gởi về chuẩn gì, tra chuẩn, để biết thông tin của chuỗi.
Ở đây mih lấy cái chuỗi ở trên làm lun, chuỗi GPRMC.
$GPRMC,220516,A,5133.82,N,00042.24,W,173.8,231.8,1 30694,004.2,W*70
Trong đó:
+ kinh độ(ddmm.mmmm) : 5133.82=51 độ+33.82 phút=51,5637độ
+vĩ độ(dddmm.mmmm):00042.24=0 độ+ 42.24 phút=0,704độ
Sau lên gg sợt cái là qua tới bên London lun, chắc nhà a longtu ở gần đó
p/s:mọi người coi giúp e đổi đúng chưa mà sao đi xa quá
tienchuan vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 26-03-2012, 09:33 AM   #14
lambaotrung
Đệ tử 5 túi
 
Tham gia ngày: Jan 2010
Bài gửi: 96
:
Trích:
Nguyên văn bởi tienchuan View Post
@ Trung : vì làm code minh họa ví dụ nên chắc a longtu ghi nhầm đó, bạn cộng thêm 1 để lấy các giá trị đó, tức vĩ độ sau dấu phẩy thứ 3, kinh độ sau dấu phẩy thứ 5,... còn chữ A sau chuỗi thời gian báo hiệu cho biết thời gian thu được có hợp lệ hay chưa (A: có,V:ko),còn các chữ cái N - Bắc; W - Tây; E - Đông; S - Nam để chỉ hướng.
Bạn coi thêm định dạng chuỗi GPRMC trong chuẩn NMEA quy định để biết thông tin của chuỗi.
Còn về vấn đề tọa độ của Module gởi về , ở đây mih nói module sim 548C vì đang dùng, nếu dùng module khác, bạn coi datasheet module gởi về chuẩn gì, tra chuẩn, để biết thông tin của chuỗi.
Ở đây mih lấy cái chuỗi ở trên làm lun, chuỗi GPRMC.
$GPRMC,220516,A,5133.82,N,00042.24,W,173.8,231.8,1 30694,004.2,W*70
Trong đó:
+ kinh độ(ddmm.mmmm) : 5133.82=51 độ+33.82 phút=51,5637độ
+vĩ độ(dddmm.mmmm):00042.24=0 độ+ 42.24 phút=0,704độ
Sau lên gg sợt cái là qua tới bên London lun, chắc nhà a longtu ở gần đó
p/s:mọi người coi giúp e đổi đúng chưa mà sao đi xa quá

bác ơi bác giải thích rõ hơn về tính toán tọa độ dc ko bác.. em ko hiểu máy về tọa độ đó
lambaotrung vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 26-03-2012, 10:13 AM   #15
longtu
Đệ tử 6 túi
 
longtu's Avatar
 
Tham gia ngày: Jul 2007
Bài gửi: 146
:
Send a message via Yahoo to longtu
Trích:
Nguyên văn bởi lambaotrung View Post
bác ơi bác giải thích rõ hơn về tính toán tọa độ dc ko bác.. em ko hiểu máy về tọa độ đó
- Step 1: Từ chuỗi data $GPRMC...bạn sẽ có được dữ liệu về kinh độ và vĩ độ.
Ví dụ:
$GPRMC,220516,A,5133.82,N,00042.24,W,173.8,231.8,1 30694,004.2,W*70
Trong đó:
+ Kinh độ(ddmm.mmmm) : 5133.82=51 độ+33.82 phút=(51 + 33.82/60) phut= 51.563666
+ Vĩ độ(dddmm.mmmm):00042.24=0 độ+ 42.24 phút=(00 + 42.24/60) phút= 0.704
Chú ý: Dấu ngăn cách thập phân là dấu ".".
Step 2: Vào: http://www.google.com/maps
Step 3: Nhập Kinh độ và vĩ độ: (51.563666,0.704)
Hình Kèm Theo
File Type: png Google Map.png (160.0 KB, 44 lần tải)
__________________
--------------------------------------------------------------------------------------
Phùng Minh Tuân
Email: tuan.phmt@gmail.com
"Cuộc đời sóng gió nuôi ta lớn
Bao lần thất bại dạy ta khôn".
longtu vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lời

Ðiều Chỉnh
Xếp Bài

Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến


Múi giờ GMT. Hiện tại là 08:09 PM.


Được sáng lập bởi Đoàn Hiệp
Powered by vBulletin®
Page copy protected against web site content infringement by Copyscape
Copyright © PIC Vietnam