Slide 1

Slide 1 text

8J'J355ʹΑΔ԰಺ଌҐΞϓϦ Λ࡞Ζ͏ !OBQQMFDPNQVUFS 1

Slide 2

Slide 2 text

ࣗݾ঺հ • ͳͬͽʔ • !OBQQMFDPNQVUFS • גࣜձࣾσΟʔɾΤψɾΤʔॴଐ • .07ͷϢʔβʔΞϓϦ։ൃ 2

Slide 3

Slide 3 text

໨࣍ 3 ͖͔͚ͬ 8J'J355ͷ࢓༷ ࡞ͬͯΈͨ ਫ਼౓Λ্͛ΔͨΊͷΞΠσΟΞ

Slide 4

Slide 4 text

͖͔͚ͬ 4

Slide 5

Slide 5 text

5 )PXUPHFUPOFNFUFSMPDBUJPOBDDVSBDZ GSPN"OESPJEEFWJDFT (PPHMF*0` IUUQTZPVUVCFWZX(H4S(0%6

Slide 6

Slide 6 text

8J'J355ͷ࢓༷ 6

Slide 7

Slide 7 text

"OESPJEͷҐஔ৘ใऔಘํ๏ 7

Slide 8

Slide 8 text

'VTFE-PDBUJPO 8

Slide 9

Slide 9 text

'VTFE-PDBUJPOͳ͠ 9 ΞϓϦ ηϯαʔ" ΞϓϦ ηϯαʔ$ ηϯαʔ#

Slide 10

Slide 10 text

'VTFE-PDBUJPO͋Γ 10 ΞϓϦ ηϯαʔ" ΞϓϦ ηϯαʔ$ ηϯαʔ# (PPHMF1MBZ 4FSWJDFT

Slide 11

Slide 11 text

'VTFE-PDBUJPO 11 (14 8J'J 344* ΩϟϦΞج஍ہ ਫ਼౓ ϝʔτϧ ϝʔτϧ ϝʔτϧʁ ԰಺ ! " " ҐஔଌҐ༻ " ! ʁ

Slide 12

Slide 12 text

'VTFE-PDBUJPO 12 (14 8J'J 344* ΩϟϦΞج஍ہ 8J'J 355 ਫ਼౓ ϝʔτϧ ϝʔτϧ ϝʔτϧʁ ϝʔτϧ ԰಺ ! " " " ҐஔଌҐ༻ " ! ʁ "

Slide 13

Slide 13 text

'VTFE-PDBUJPO 13 (14 8J'J 344* ΩϟϦΞج஍ہ 8J'J 355 ਫ਼౓ ϝʔτϧ ϝʔτϧ ϝʔτϧʁ ϝʔτϧ ԰಺ ! " " " ҐஔଌҐ༻ " ! ʁ " /&8

Slide 14

Slide 14 text

8J'J355ͷ࢓༷ 14

Slide 15

Slide 15 text

8J'J355 • 355͸3PVOE5SJQ5JNFͷུ • *&&&NDͰఆٛ • *&&&NDʹରԠ͍ͯ͠ΔΞΫηεϙΠϯτͱɺ *&&&NDʹରԠ͍ͯ͠Δ୺຤͕ඞཁ • ௨৴͔࣌ؒΒڑ཭Λܭଌ͢Δ 15

Slide 16

Slide 16 text

ڑ཭ܭଌ 16 ΞΫηεϙΠϯτ ୺຤ ڑ཭τʔλϧ࣌ؒʷޫͷ଎͞ D ̎

Slide 17

Slide 17 text

ڑ཭ܭଌ΋ͬͱৄ͘͠ 17 ΞΫηεϙΠϯτ ୺຤ '5.3FRVFTU '5. U U "$, U U U U ڑ཭ UU UU ʷޫͷ଎͞ D ࣌ؒ

Slide 18

Slide 18 text

୺຤ͷҐஔΛܭࢉ͢Δ 18

Slide 19

Slide 19 text

୺຤ͷҐஔΛࢉग़͢Δ • 355ͰऔΕΔͷ͸ΞΫηεϙΠϯτ·Ͱͷڑ཭͚ͩ • ୺຤ͷҐஔ৘ใͷࢉग़͸355ͷൣғ֎ • ࣗ෼Ͱܭࢉ͢Δ • ΞΫηεϙΠϯτͷҐஔ৘ใ΋355ͷൣғ֎ • ΞΫηεϙΠϯτ͕ͭ͋Ε͹Ґஔͷಛఆ͕Մೳ • ਫ਼౓Λग़͢ͳΒͭ΄͍͠ 19

Slide 20

Slide 20 text

ΞΫηεϙΠϯτ͕ͭͷ৔߹ 20

Slide 21

Slide 21 text

ΞΫηεϙΠϯτ͕ͭͷ৔߹ 21

Slide 22

Slide 22 text

ΞΫηεϙΠϯτ͕ͭͷ৔߹ 22

Slide 23

Slide 23 text

࣮ࡍʹ͸׬ᘳͳ஋͸ औಘͰ͖ͳ͍ 23

Slide 24

Slide 24 text

ݱ࣮ 24

Slide 25

Slide 25 text

25

Slide 26

Slide 26 text

(PPHMF*0Ͱ঺հ͞Ε͍ͯͨํ๏ • ࣍ݩ௚ަ࠲ඪʹ୺຤ͱΞΫηεϙΠϯτΛஔ͘ • ϐλΰϥεͷఆཧΛ࢖ͬͯํఔࣜͰදݱ͢Δ • ͭͷ࣍ํఔࣜΛͭͷ࿈ཱํఔࣜʹͯ͠ղ͘ • ͭͷ࣍ํఔࣜʹͳΔ • ͭͷ࣍ํఔࣜͷ઀఺Ͱଟ֯ܗΛ࡞Γɺͦͷଟ֯ܗͷ த৺Λ୺຤ͷҐஔͱ͢Δ 26

Slide 27

Slide 27 text

࣍ݩ௚ަ࠲ඪʹ୺຤ͱΞΫηεϙΠϯτΛஔ͘ 27

Slide 28

Slide 28 text

28 x1 y1 r1 x, y (x − x1 )2 + (y − y1 )2 = r2 1 ϐλΰϥεͷఆཧΛ࢖ͬͯํఔࣜͰදݱ͢Δ

Slide 29

Slide 29 text

ϐλΰϥεͷఆཧΛ࢖ͬͯํఔࣜͰදݱ͢Δ 29 (x − x1 )2 + (y − y1 )2 = r2 1 (x − x3 )2 + (y − y3 )2 = r2 3 (x − x2 )2 + (y − y2 )2 = r2 2 (x − x4 )2 + (y − y4 )2 = r2 4

Slide 30

Slide 30 text

࣍ํఔࣜΛඳը͢Δ 30 (x − x1 )2 + (y − y1 )2 = r2 1 (x − x3 )2 + (y − y3 )2 = r2 3 (x − x2 )2 + (y − y2 )2 = r2 2 (x − x4 )2 + (y − y4 )2 = r2 4

Slide 31

Slide 31 text

ଟ֯ܗͷਅΜதΛ୺຤ͷ৔ॴͱ͢Δ 31 (x − x1 )2 + (y − y1 )2 = r2 1 (x − x3 )2 + (y − y3 )2 = r2 3 (x − x2 )2 + (y − y2 )2 = r2 2 (x − x4 )2 + (y − y4 )2 = r2 4

Slide 32

Slide 32 text

"OESPJEͷ8J'J355"1* 32

Slide 33

Slide 33 text

"OESPJEͰͷ8J'J355 • 04ͱͯ͠͸"OESPJE "1*-FWFM ͔ΒରԠ • ୺຤ͱͯ͠͸1JYFM 9-ؚΉ ͕ରԠ͍ͯ͠Δ • *0Ͱ͸1JYFMTͱݴͬͯͨͷͰ1JYFM΍1JYFM΋ର Ԡͯ͠Δ͔΋ 33

Slide 34

Slide 34 text

ಛ௃ • ΞΫηεϙΠϯτʹ8J'Jͱͯ͠઀ଓ͠ͳͯ͘΋࢖͑Δ • ଞͷΞΫηεϙΠϯτʹ8J'Jͱͯ͠઀ଓதͰ΋࢖͑Δ • ̍౓ͷ"1*ͷ࣮ߦͰ'5.Λෳ਺ճ౤͛ͯɺฏۉɺඪ४ ภࠩ΍Τϥʔ཰Λฦͯ͘͠ΕΔ • كʹϚΠφεͷڑ཭͕ฦͬͯ͘Δʜ • ߴස౓ NT͘Β͍ʣͰ࢖͏ͱࢮ͵ 34

Slide 35

Slide 35 text

΍Δ͜ͱ • 8J'JΞΫηεϙΠϯτΛεΩϟϯ͢Δ • εΩϟϯͯ͠ಘΒΕͨΞΫηεϙΠϯτͷதʹ8J'J 355ରԠ͍ͯ͠ΔΞΫηεϙΠϯτ͕͋Δ͔֬ೝ͢Δ • 8J'J355ରԠΞΫηεϙΠϯτͱ8J'J355ͷ΍ ΓͱΓΛͯ݁͠ՌΛಘΔ 35

Slide 36

Slide 36 text

ඞཁͳ1FSNJTTJPO 36

Slide 37

Slide 37 text

8J'JΞΫηεϙΠϯτΛεΩϟϯ val receiver = object: BroadcastReceiver() { override fun onReceive(context: Context, intent: Intent) { when(intent.action) { WifiManager.SCAN_RESULTS_AVAILABLE_ACTION -> { // Wi-FiͷεΩϟϯ͕׬ྃͨ͠ } } } } val filter = IntentFilter(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION) registerReceiver(receiver, filter) 37

Slide 38

Slide 38 text

8J'JΞΫηεϙΠϯτΛεΩϟϯ val wifiManager = getSystemService(Context.WIFI_SERVICE) as WifiManager wifiManager.startScan() 38

Slide 39

Slide 39 text

8J'JΞΫηεϙΠϯτΛεΩϟϯ val scanResults = wifiManager.scanResults.filter { it.is80211mcResponder } 39

Slide 40

Slide 40 text

ΞΫηεϙΠϯτ·Ͱͷڑ཭Λऔಘ val rangingRequest = RangingRequest.Builder() .addAccessPoints(scanResults) .build() val rttManager = getSystemService(Context.WIFI_RTT_RANGING_SERVICE) as WifiRttManager val resultCallback = object : RangingResultCallback() { override fun onRangingResults(results: MutableList) { val ragingResults = results.filter { it.status == STATUS_SUCCESS } } override fun onRangingFailure(code: Int) { } } rttManager.startRanging(rangingRequest, executor, resultCallback) 40

Slide 41

Slide 41 text

TUBSU4DBOͷ࢓༷มߋ • 8JGJ.BOBHFSTUBSU4DBO ͕"1*-FWFM͔ Β৭ʑมߋ • ಥવͷEFQSFDBUFE • ͔͠΋୅ସखஈ͸ࠓͷͱ͜Ζͳͦ͞͏ • όοΫάϥ΢ϯυΞϓϦͰ͸෼ʹճ͔͠ݺ΂ͳ͍ • ϑΥΞάϥ΢ϯυΞϓϦͰ΋෼ʹճ͔͠ݺ΂ͳ͍ 41

Slide 42

Slide 42 text

8J'J"XBSFʹΑΔ355 42

Slide 43

Slide 43 text

8J'J"XBSFʹΑΔ355 • 8J'J"XBSFΛ࢖͏ͱ"OESPJE୺຤ಉ࢜Ͱ355Λ ߦ͑Δ • "1*-FWFM͔Β • 8J'J"XBSF͸͢Ε͕͍ͪ௨৴ͷΑ͏ͳػೳΛ࣮ݱ Ͱ͖Δ • 8J'J"XBSFͰ઀ଓޙɺ355༻ͷϝιουΛݺͿ 43

Slide 44

Slide 44 text

࡞ͬͯΈͨ 44

Slide 45

Slide 45 text

࡞Δࡍʹ΍Δ͜ͱ • ΞΫηεϙΠϯτͷબఆ • ৔ॴͷબఆ • ஍ਤͷೖख • ΞΫηεϙΠϯτͷઃஔ • ΞΫηεϙΠϯτͷҢ౓ܦ౓ͷऔಘ • ΞϓϦͷ࡞੒ 45

Slide 46

Slide 46 text

ΞΫηεϙΠϯτͷબఆ 46

Slide 47

Slide 47 text

ΞΫηεϙΠϯτͷબఆ • *&&&NDʹରԠͨ͠8J'JΞΫηεϙΠϯτ • 8J'J"XBSF • ͭ·Γ1JYFM 47

Slide 48

Slide 48 text

*&&&NDରԠΛ ᨳ͍ͬͯΔΞΫηεϙΠϯτ 48

Slide 49

Slide 49 text

ແ͍ 49

Slide 50

Slide 50 text

ແ͍ ˞ͳͬͽʔௐ΂ 50

Slide 51

Slide 51 text

51 (PPHMF8J'J

Slide 52

Slide 52 text

(PPHMF8J'J • (PPHMF*0Ͱ͸(PPHMF8J'J͕XJMMTPPO ͰରԠ͢Δͱݴ͍ͬͯͨ • (PPHMF8J'JͷϦϦʔεϊʔτΛ൒೥Ҏ্؂ࢹ͠ଓ͚ ͕ͨ*&&&NDͷ͜ͱ͸Ұ੾ॻ͔Ε͍ͯͳ͍ • XJMMTPPOͱ͸Կͩͬͨͷ͔ 52

Slide 53

Slide 53 text

(PPHMF8J'J • %SPJE,BJHJͷొஃ΋ܾ·ͬͨͷͰɺ(PPHMF8J'J ͕͍ͭߋ৽͞Εͯ΋͍͍Α͏ʹങ݄ͬͯʹηοςΟϯ άͨ͠ • ՈͰ8J'J355ͷ"OESPJE"1*Λࢼͨ͠Β8J'J 355ରԠ͍ͯ͠ΔΞΫηεϙΠϯτ͕ݟ͔ͭͬͨ • (PPHMF8J'J͕͠ΕͬͱରԠ͍ͯͨ͠ 53

Slide 54

Slide 54 text

(PPHMF8J'J • ରԠ͍ͯ͠Δ΋ͷͷ(PPHMF 8J'Jͷઃఆ߲໨ʹ8J'J 355͸ͳ͍ • (PPHMF*0Ͱ͸8J'J355͸σϑΥϧτͰΦϯͱݴͬ ͍͕ͯͨΦϑʹͰ͖ͳ͍ • օ͞Μ͕͓࢖͍ͷ(PPHMF8J'J΋'5.SFRVFTUΛ ૹΔͱ'5.ฦͯ͘͠Ε·͢ 54

Slide 55

Slide 55 text

৔ॴͷબఆ 55

Slide 56

Slide 56 text

৔ॴͷબఆ • ී௨͸ܭଌ͍ͨ͠৔ॴ͕͋Δͱ͜Ζ͔Β࢝·ΔͷͰ৔ ॴ͕ܾ·ͬͨঢ়ଶͰ࢝·Δʢ͸ͣʣ • ࠓճ͸ܭଌ͢Δ͜ͱ͕໨తͳͷͰɺ৔ॴͷબఆ͕ඞཁ 56

Slide 57

Slide 57 text

৔ॴͷ৚݅ • ޿͍৔ॴ • ڱ͍৔ॴ͸ਫ਼౓తʹແཧ • ݐ෺಺ͷେ͖͕͞ਖ਼֬ͳ஍ਤ͕͋Δ • ݐ෺಺ͷҢ౓ܦ౓ΛʢϝδϟʔͰଌΔͳͲͷํ๏Ͱʣ ஌Δ͜ͱ͕Ͱ͖Δ • ΞΫηεϙΠϯτͷҢ౓ܦ౓ʹਖ਼֬ͳ஋͕ඞཁ 57

Slide 58

Slide 58 text

ࠓճͷ৔ॴ • ࠓճ͸ࣗ෼ͷՈʹͨ͠ • ͋ͱ͔ΒݟΔͱ͜Ε͸ࣦഊ • ڱ͍ • σϞಈըͰΞϓϦͷը໘ͱ৔ॴΛऩΊ͔͕ͨͬͨɺ ՈͷதΛ%SPJE,BJHJͰࡽ͢༐ؾ͸ͳ͔ͬͨ 58

Slide 59

Slide 59 text

஍ਤͷೖख 59

Slide 60

Slide 60 text

஍ਤͷೖख • ϢʔβʔʹݟͤΔͱ͖ͱΞΫηεϙΠϯτͷઃஔʹ࢖ ༻͢Δ • ԰಺ͷ஍ਤ͕ͳ͍ͳΒ԰಺ଌҐ͢Δҙຯ͸͋·Γͳ͍ • ਖ਼֬ͳ஍ਤͰͳ͚Ε͹ਖ਼֬ͳଌҐ͸Ͱ͖ͳ͍ • ࠓճ͸ؒऔΓਤΛ࢖༻ 60

Slide 61

Slide 61 text

ΞΫηεϙΠϯτͷઃஔ 61

Slide 62

Slide 62 text

ΞΫηεϙΠϯτͷઃஔ • ձ৔ͷେ͖͞ʹ߹Θͤͯ·Μ΂Μͳ͘ઃஔ͢Δ • ΞΫηεϙΠϯτʹғ·Ε͍ͯΔΑ͏ͳঢ়ଶʹ͢Δ • ௚ઢͰ݁΂ΔΑ͏ͳ഑ஔ͸Ͱ͸ਫ਼౓͕ग़ͳ͍ • ࢛͍֯෦԰ͳΒ࢛۱ͱਅΜத͕ྑͦ͞͏ • ࠓճ͸ׂͱࡶ 62

Slide 63

Slide 63 text

ΞΫηεϙΠϯτͷҢ౓ܦ౓ 63

Slide 64

Slide 64 text

ΞΫηεϙΠϯτͷҢ౓ܦ౓ͷऔಘ • ஍ਤͳͲΛ࢖ͬͯΞΫηεϙΠϯτͷҢ౓ܦ౓Λؤுͬ ׂͯΓग़͢ • ௒େม 64

Slide 65

Slide 65 text

ΞϓϦͷ࡞੒ 65

Slide 66

Slide 66 text

ΞϓϦͷ࡞੒ • (PPHMF.BQ4%,Λ࢖͏͔࢖Θͳ͍͔ΛܾΊΔ • ࢖Θͳ͍৔߹ɺ஍ਤతͳૢ࡞͸ࣗલ࣮૷͕ඞཁ • ࢖Θͳ͍৔߹ɺҢ౓ܦ౓͸ͳͯ͘΋͍͍ • Ψοͱؾ߹Ͱ࣮૷͢Δ • ਫ਼౓Λؾʹ͠ͳ͚Ε͹؆୯ʹ࣮૷Ͱ͖Δ • ਫ਼౓Λؾʹ͢Δͱແݶʹ͕͔͔࣌ؒΔ 66

Slide 67

Slide 67 text

ਫ਼౓Λ্͛ΔΞΠσΟΞ 67

Slide 68

Slide 68 text

ਫ਼౓Λ্͛Δ • ߴ͞Λ࢖͏ • ΞΫηεϙΠϯτ͕ఱҪʹ͋Δ৔߹ͳͲ͸ߟྀͨ͠ ΄͏͕ྑͦ͞͏ • ΞΫηεϙΠϯτͷઃஔ৔ॴΛݟ௚͢ • ڑ཭͔ΒҐஔ৘ใΛࢉग़͢Δํ๏Λมߋ͢Δ • લճऔಘͨ͠஋ͳͲΛ࢖ͬͯҟৗ஋Λແࢹ͢Δ 68

Slide 69

Slide 69 text

ਫ਼౓Λ্͛Δ • ΞΫηεϙΠϯτͷ਺Λ૿΍͢ • ඪ४ภࠩͷେ͖ͳΞΫηεϙΠϯτΛແࢹ͢ΔͳͲ • ֤छηϯαʔΛ࢖͏ • Ճ଎౓ηϯαʔ • ίϯύε 69

Slide 70

Slide 70 text

·ͱΊ 70

Slide 71

Slide 71 text

·ͱΊ • ΞΫηεϙΠϯτ͸(PPHMF8J'J • ஍ਤ΍ΞΫηεϙΠϯτͷҢ౓ܦ౓ͳͲͷਖ਼͕֬͞ॏཁ • ͋Δఔ౓޻෉Λ͠ͳ͍ͱਫ਼౓͸ग़ͳ͍ • ਫ਼౓͕ѱ͍৔߹Ͳ͜ʹ໰୊͕͋Δͷ͔ಛఆ͠ʹ͍͘ 71

Slide 72

Slide 72 text

΋͜͠ͷ৔ͰσϞ͢ΔͳΒ 72

Slide 73

Slide 73 text

͜ͷ৔ͰσϞ͢Δʹ͸ • ձ৔ͷ8J'JʹӨڹΛ༩͑ΔՄೳੑ͕͋ΔͷͰӡӦʹ֬ ೝ • 8J'J"XBSFΛ࢖͏ • ઃஔָ͕ 73

Slide 74

Slide 74 text

͜ͷ৔ͰσϞ͢Δʹ͸ • ਖ਼֬ͳ஍ਤͷೖख͸ఘΊΔ • (PPHMF.BQΛͦͷ··࢖͍͍ͬͯͳΒਖ਼֬ͳ஍ ਤ͸ͳͯ͘΋͍͍ • ৄࡉͳ஍ਤ͕͋ͬͨ΄͏͕໘ന͍͕ɺσϞͳͷͰ໨ ͷલͰಈ͔͚ͩ͢Ͱ΋े෼ 74

Slide 75

Slide 75 text

͜ͷ৔ͰσϞ͢Δʹ͸ • ઃஔ৔ॴ͸࢛۱ʴձ৔ͷେ͖͞ʹԠͯ͡ਅΜதʹ • Ң౓ܦ౓͸ؤுͬͯ༧૝͢Δ • લ೔ͳͲʹਤΒͤͯ΋Β͑ͳ͍͔ަব͢Δ • 8J'J"XBSFͳΒ୺຤ஔ͚ͩ͘ͳͷͰɺΈͳ͞Μ ʹ࣋ͬͯ΋Β͏ͷ΋͋Γ 75