- Lo id ch v– tModel: cha các thông ti nv lo id ch vđ cs d ng
c. ođ ng (Kinematic)
C s c a đnh v đ ng là d a trên s khác nhau c a tr đo gi a hai chu k đo (epoch), đ c nh n b i m t máy thu tín hi u c a chính v tinh nào đó chuy n đ n. S thay đ i đó t ng đ ng v i s thay đ i kho ng cách đ a di n đ n v tinh.
Ph ng pháp đo đ ng c ng đ c th c hi n theo hai ch đ là đo đ ng x lý sau (Post Processing Kinematic- vi t t t là PPK) và đo đ ng th i gian th c (Real Time Kinematic- vi t t t là RTK). Trong ph ng pháp PPK, to đ s đ c tính toán x lý trong phòng do v y không c n đ n Radio Link, nh ng v i RTK thì thi t b đó không th thi u đ c, nó đóng vai trò trong vi c truy n đi tín hi u ch a các s hi u ch nh v to đ t tr m máy base.
d. o gi đ ng (Pseudo-Kinematic)
Ph ng pháp đo gi đ ng cho đ chính xác không cao b ng ph ng pháp đo đ ng. Ph ng pháp này cho phép xác đ nh v trí t ng đ i c a hàng lo t đi m so v i đi m đã bi t trong kho ng th i gian đo khá nhanh.
Máy c đnh c ng ph i ti n hành thu tín hi u trong su t chu k đo, máy di đ ng đ c chuy n t i các đi m c n xác đ nh và m i đi m thu tín hi u 5-10 phút. Sau khi đo h t l t máy di đ ng quay tr v đi m xu t phát và đo l p l i t t c các đi m theo đúng trình t nh tr c, nh ng ph i đ m b o kho ng th i gian dãn cách gi a hai l n đo t i m i đi m không ít h n 1 ti ng đ ng h . Yêu c u nh t thi t c a ph ng pháp này là ph i có ít nh t 3 v tinh chung cho c hai l n đo t i m i đi m quan sát.
i u đáng chú ý nh t trong ph ng pháp này là máy di đ ng không c n thu tín hi u v tinh liên t c trong su t chu k đo nh ph ng pháp đo đ ng, t i m i đi m đo máy ch đo 5-10 phút sau đó có th t t máy trong lúc di chuy n đ n đi m khác. i u này cho phép áp d ng c nh ng khu v c có nhi u v t che khu t.
2.3.2.4. Cách xác đ nh v trí trên m t đ t thông qua h th ng GPS.
Chúng ta bi t, ph n s d ng trong h th ng GPS bao g m các thi t b thu tín hi u t v tinh. M i v tinh quay quanh trái đ t 2 vòng m t ngày đêm. Qu đ o c a các v tinh đ c tính toán sao cho b t k n i nào trên trái đ t, vào b t k th i đi m nào, c ng có th “nhìn th y” t i thi u 4 v tinh. Công vi c c a m t máy thu GPS là xác đnh v trí c a 4 v tinh hay h n n a, tính toán kho ng cách t các v tinh và s d ng các thông tin đó đ xác đnh v trí c a chính nó. Vì ph i d a vào ít nh t là tín hi u c a 4 v tinh thì thông tin v v trí m i chính xác cao.
Các thi t b thu GPS xác đ nh quãng đ ng (S) t v tinh đ n nó, b ng cách: l y th i gian(T) nhân v i v n t c c a ánh sáng (V = 3.108 m/s).
S = V.T
Quá trình xác đnh v trí d a trên m t nguyên lý toán h c đ n gi n.
Áp d ng nguyên lý này vào không gian ba chi u, ta c ng có ba m t c u thay vì ba đ ng tròn, giao nhau t i m t đi m.
th c hi n tính toán đo kho ng cách t v tinh, máy thu GPS ph i bi t hai th t i thi u:
- V trí c a ít nh t ba v tinh bên trên nó.
- Kho ng cách gi a máy thu GPS đ n t ng v tinh nói trên
Ch ng 3. THI T K VÀ TRI N KHAI NG D NG
3.1. Phân tích ch c n ng ng d ng :
3.1.1. Kh o sát hi n tr ng :
Ngày nay khi chi c đi n tho i di đ ng đ c s d ng r ng rãi h n và phát tri n v i công ngh cao h n thì nó góp ph n không nh giúp ích cho cu c s ng. Cùng v i nó là s ra đ i c a các ph n m m ti n ích ph c v cho cu c s ng ph i k đ n ph n m m b n đ và c th h n là các ph n m m ph c v cho vi c đi l i c a ng i Vi t. Trên th tr ng đã có nhi u ph n m m b n đ nh ng th ng b h n ch v m t d li u. M t khác là b n đ dành cho ng i Vi t th hi n các t nh thành c a đ t n c thì c ng ít.
N m b t đ c th c t thì ngày nay vi c đi l i c a ng i dân thành ph m t ph n l n là đi b ng xe buýt và khách du l ch c ng s d ng nó. Vi c xây d ng ph n m m báo tr m và tìm ki m tuy n xe là r t có ích có th thay th đ c các b n đ gi y thông th ng.
3.1.2. Phân tích các ch c n ng yêu c u :
D a vào các yêu c u c a m t ng d ng c n thi t đ a ra các ch c n ng c a ng d ng nh sau : Các yêu c u chính : -Hi n th b n đ đ ng đi tr c tuy n. -Menu l a ch n ch c n ng ng d ng. -Phóng to thu nh b n đ . -Di chuy n đ c b n đ .
-Hi n th b n đ 114 tuy n xe buýt offline. -K t n i và l y v trí GPS.
-Tìm ki m thông tin các tuy n xe. Các ch c n ng ph c a ng d ng: -Hi n th các v tr trên b n đ .
-Hi n th đa ch khi ch n vào 1 đi m trên b n đ . Yêu c u c a ng d ng :
H tr trên các thi t b có ch y h đi u hành Android t các phiên b n th p nh t. T c đ t i b n đ v ng d ng và tìm ki m tuy n xe không quá ch m.
3.2. Tri n khai thi t k ng d ng:
3.2.1. T i b n đ v ng d ng:
Khi ng i s d ng ch y ng d ng s t i b n đ t trên Webservice đ c h tr t th vi n c a Google API. Ta s d ng b n đ đ c cung c p b i Google. s d ng đ c các th vi n c a Google API ta c n ph i có khai báo các thông tin trong ph n permision c a Project Android. T t c đ c khai báo trong file khai báo các quy n c a
ng d ng AndroidMainfest.xml.
Trong các quy n trên thì v i câu l nh:
<uses-library android:name="com.google.android.maps"/>
Cho phép ta s d ng th vi n GoogleMap đ t i b n đ mà Google cung c p. Giao di n c a ng d ng s đ c n m trong m t file xml. T đây ta có th thi t k giao di n cho ng d ng b ng đ h a ho c b ng dòng l nh. Và khi b n đ đ c t i v th ng khi Google cung c p m t lo t các nh g i vê ng d ng và ráp thành m t b n đ t i v trí m c đnh là n c M . b n đ tr nên thân thi n h n ta c n ch nh cho nó v v trí c a mình. có th ch nh v v trí c a mình thì ta c n bi t t a đ c a mình là đ a nó vào l y hình nh Google tr v .
hi n th t i v trí yêu c u ta thêm t a đ và hi n th phóng to nó thì dùng setZoom.
V i ph ng th c animateTo(p) v b n đ t i v trí yêu c u. ng d ng ch y lên
3.2.2. Di chuy n b n đ :
có th xem thêm các v trí khác c a b n đ thì c n di chuy n đ c b n đ . Khi di chuy n b n đ t i nh ng v trí mà nh c a b n đ ch a đ c t i v thì ng d ng s g i yêu c u đ n Webserver GoogleMap s t đ ng t i v nh ng nh còn l i c a b n đ . V i Google API thì có h tr ng i dùng di chuy n b n đ và đ di chuy n đ c ta c n đ t thu c tích cho nó nh sau: android:clickable="true".
V i ph n khai báo trong main.xml c a GoogleMap thì đã đ t thu c tính cho nó có th ch m và di chuy n đ c b n đ .
3.2.3. Phóng to, thu nh b n đ :
M t ng d ng xem b n đ th không th thi u công c này. Khi ng i s d ng mu n xem t ng th đ ng đi ho c xem chi ti t các h m đ ng thì phóng to thu nh nó.
hi n th công c này thì v i th vi n GoogleMap c ng h tr c n khai báo:
import com.google.android.maps.MapController
cho phép s d ng công c controller. Thêm vào class kh i t o chính c a ng d ng. Cho phép hi n th công c controller zoom, l y các giá tr khi tác ch n vào zoom in, zoom out và zoom m c đ nh khi ng d ng đ c ch y.
3.2.4. Menu l a ch n các ch c n ng :
Thông th ng m t ng d ng đ n thu n có th có nhi u ch c n ng, m i ch c n ng đ m nhi m m t vai trò làm cho ng d ng phong phú h n và nhi u l a ch n h n. Thi t k menu cho ng d ng đ d dàng l a ch n các ch c n ng. Trong ng d ng này có các ch c n ng nh xem b n đ tuy n xe buýt, tìm ki m, xác đnh v trí gps…T o nên giao di n thân thi n d s d ng. T o menu ta s d ng các ph ng th c trong th vi n.
import android.view.Menu; import android.view.MenuItem;
T o các item đ hi n thi trên menu, ng v i m i item s là các ch c n ng khác c a ng d ng.
Menu c a ng d ng đ c s p x p theo icon cùng v i tên item d dàng l a ch n. Và s hi n th menu khi nh n phím menu c a đi n tho i.
Hình 3.3: Menu trên Android
3.2.5. B n đ các tuy n xe buýt :
M t ch c n ng c a ng d ng là tích h p b n đ 114 tuy n xe buýt ho t đ ng trong thành ph vào trong ng d ng. ây là b n đ đã đ c l u t i ch ng trình và có th phóng to và thu nh . M c đích giúp ng i s d ng có th bi t các tuy n xe v i các b n xe nào mình c n đi. Trên th c t m t s ccs ph n m m không s d ng m ng thì vi c l u
tr d li u offline là đi u c n thi t nh ng đòi h i d li u l u tr không quá l n làm n ng ch ng trình. Các ch c n ng c a b n đ tuy n xe c ng g n gi ng b n đ xe buýt. Ng i s d ng có th phóng to, thu nh , di chuy n đ c. ây không ph i là nh c a m t b n đ duy nh t mà là ghép t nhi u nh nh theo t l và v trí. có cách nh c a b n đ dùng công c c t nh v i các nh phóng to và thu nh đ c. Các nh s đ c l u vào source c a ng d ng và s đ c t i lên khi ch n ch c n ng xem b n đ trong menu. Class kh i t o b n đ đ c k th a t import jp.co.mapion.android.maps.MapView;
Xây d ng m t class đ x lý hi n th c a b n đ . C n import các class c n thi t n i các nh c a b n đ khi ta phóng to hay thu nh có th t i v các v trí còn thi u trên b n đ … import java.lang.reflect.Field; import java.util.HashMap; import android.graphics.Point; import jp.co.mapion.android.maps.GeoPoint; import jp.co.mapion.android.maps.Map; import jp.co.mapion.android.maps.Tile; Các hàm c a class:
HashMap là nh ng l p dùng đ x lý collection theo d ng key-value giúp cho
m i nh c a b n đ s có 1 ID khác nhau khi ráp các hình b n đ chính xác.
3.2.6. Tìm ki m thông tin tuy n xe :
Xây d ng ng d ng d ng client-server, client là ng d ng Android và server là m t Webservice nào đó. Trong h th ng này s d ng Webservice là ASP.net vi t b ng C#. Ch c n ng này đ c th c hi n 2 phía: client và server.
3.2.6.1. Webservice :
Xây d ng m t Wedservice l u tr thông tin các tuyên xe, tr m xe trên m ng. Webservice luôn ch y và l ng nghe m t port nào đó. Các ch c n ng c a server:
o Ti p nh n các k t n i t client và l ng nghe khi co client yêu c u. o Cho phép g i thông tin đ n các client khi có yêu c u.
o L u tr thông tin các tr m xe bus và tr v khi có client ket n i đ n . Webservice s d ng k t n i SOAP đ nh n các k t n i t các client khi có cùng port k t n i đ n và cùng giao th c, name space, method.
Trong đ án này, s d ng Webservice là ASP. Net và ngôn ng C# đ l p trình. Các b c t o m t Webservice:
-S d ng VisualStudio t o m t Webservice. -T o c s d li u SQL đ l u tr và truy v n.
-Cho ch y d ch v wed v i s port c a webservice và l ng nghe các k t n i đ n cùng port.
Webservice trong h th ng s tr v client m t dataset d i d ng các xml và ng d ng s t o n i l u tr nó và l c các thông tin c n thi t.
Trên đây là m t webservice có 2 Method đ tr v thông tin các tuy n xe khi client k t n i đ n và truy n tham s truy v n đ n Webservice. D a vào đó mà webservice tr ra dòng d li u t ng ng c a m t b ng. C u trúc database c a webservice g m có 2 b ng.
Hình 3.5: B ng thông tin tuy n xe
Hình 3.6: B ng v trí các tr m
Và khi webservice ch y Local nó s m m t port cho client k t n i đ n. Trên th c t Webservice đ c đ t t i m t host nào đó luôn tr c tuy n. Giao di n webservice khi chay trên wed và các Method c a webservice .
Hình 3.7: Giao di n Webservice
Webservice ch y Localhost v i 2 ph ng th c là GetTram và GetTuyen.
Thông tin t Webservice tr v khi ta truy n m t tham s cho ph ng th c GetTuyen, nó tr v m t d ng xml g m các tab và các string. M c đích giúp cho truy n t i đ c d dàng và bên phía client có th phân tích và l y d li u.
Hình 3.9: K t qu tr v c a Webservice
3.2.6.2. ng d ng Client :
Bên ng d ng Android đ c xem nh m t client k t n i đ n. client k t n i đ c v i các d ch v web thì ta ph i s d ng các giao th c h tr k t n i. Có nhi u các giao th c nh k t n i b ng socket, soap, kxml, ksoap…V i ng d ng java thì có th s d ng các gói th vi n h tr k t n i trong đây ta s d ng gói Ksoap đ k t n i đ n Webservice. Trong project ta import gói th vi n ksoap2-android-assembly-2.4-jar- with-dependencies.jar là có th h tr đ y đ các giao th c k t n i đ n.
Tr c tiên mu n k t n i đ n Webservice ch y Local nào thì ta c n khai báo các thông tin, ph ng th c k t n i đ n, đa ch .
final String SOAP_ACTION ="http://tempuri.org/GetTuyen"; final String METHOD_NAME="GetTuyen";
final String NAMESPACE = ="http://tempuri.org/";
final String URL ="http://10.0.2.2:49230/WS/Service.asmx?WSDL";
T o m t class đ k t n i và phân tích d li u tr v t server. Thông th ng mu n k t n i đ n server thì không th thi u các thông tin trên.
• SOAP_ACTION : ch a đ ng d n không gian tên và ph ng th c.
• METHOD_NAME : đây là ph ng th c trên server .
• NAME_SPACE : không gian tên c a Webservice.
• URL : đa ch c a webservice đi đ n d ch v web. Trong ng d ng là chay trên local. N u ch y trên host th t thì ta ch c n thêm đa ch host vào trong đó.
Ph n khai báo trên đ k t n i đ n webserver và khi đã k t n i đ c thì ta c n