• 沒有找到結果。

CHAPTER 3 Localization Algorithm

3.2 Fault tolerance

3.2.3 Coordinators

In the performance the coordinators, Raspberry pi, are responsible for collecting the signal of the Bluetooth Low energy, and transmit to the server. However, the coordinators, Raspberry pi, may run out of power, so I prepare two coordinators to backup. In addition, it can also detect BLE signals by four BLE dongles. With two coordinators, I can also detect and compare the user position which is more precise and adopt it. If one of the Raspberry pi is broken, the other pi can support to make the performance work successfully as the Figure 21.

Figure 21: The coordinators, raspberry pi.

26

CHAPTER 4

Experimental Evaluation

In this chapter, the results of the various localizations will be presented and the evolution test and algorithm will show in chapter 4.2. After trying to use the RSSI to trace human movement, I found that the update rate of RSSI is not enough to meet the needs. Fortunately, the IMU sensors can be used to improve the frame rate. By using these wearable sensors, it becomes possible to use the RSSI to detect the user’s position. Therefore, I will also compare the results of only using RSSI and the combination of the IMU and RSSI.

4.1 Simulation Setup

At the beginning, I used little BLE peripherals and only one BLE central to localize.

The BLE peripheral is a device which can broadcast the RSSI to let BLE central scan and detect the signals as the Figure 22.

Figure 22: The Bluetooth low energy serves as peripheral.

27

The BLE central uses the Bluetooth protocols, GATT (Generic Attribute Profile), to scan near devices for connection and each BLE peripheral has its universally unique identifier(UUID) for identification.

The coordinator is the raspberry pi 2 model B as the Figure 23. The raspberry pi is a little and light pc, which equips with a 900MHz quad-core ARM Cortex-A7 CPU, 1GB RAM, 4 USB ports, 40 GPIO pins, full HDMI port, Ethernet port, combined 3.5mm audio jack and composite video, camera interface (CSI), display interface (DSI), micro SD card slot, and videoCore IV 3D graphics core.

Figure 23: The coordinate hardware, raspberry pi.

When the raspberry pi coordinates all signals, pi needs to send these data to the server. To connect with server, the raspberry pi equips with Wifi dongle to transmit data to server.

The Server is a mac pro equips with 2.26 GHz (P8400) Intel Core 2 Duo Penryn with 3 MB on-chip L2 cache, 2 GB (two 1 GB) memory. Finally, the server has more resource to deal with complex operation. Therefore, some complex algorithm in the server can be operated in real time.

There is a problem about how to know the results of the localization. To see how

28

precise of the algorithm and debug results, I use the JSXGraph to create points, circles and lines. In this way, I can see where the user is as the Figure 24. Besides, I upload the results to the server. When the server receives the results, other tools such as Unity can use these data to draw many amazing graph as the Figure 25.

Figure 24: The diagram of detecting Bluetooth created by JSXGraph.

29

Figure 25: The human model created by Unity.

4.2 Simulation Results

4.2.1 Absolute position

I try to use three cases in the 650 * 200 � cubic room as the Figure 26.

Figure 26: The diagram of Bluetooth on the floor in the 650 * 200 cm.

The following is the results about deploying different BLEs to localize user position

30

as table 2.

The algorithm is in chapter 3, using weighting with each nodes, as Figure 24. As the Figure 27 shows, the more BLEs used the more precise I can calculate from user’s location. I put the BLE dongle on the floor to receive signals, the distance from BLE dongle to BLEs are 30, 50, and 100cm. Within 30 cm, I can really find the user’s location. In the 21 beacons, I ignore one beacon to make the distance from BLE dongle to BLE is 100cm. What the performance needs are not only stable but also high frame rates. Therefore, 21 beacons were used in performance.

Table 2: Deploy different BLEs and get its position

Number of

(250,150) (250,220) (250,240) (250,150) (250,220) (250,240) (250,150) (250,220) (250,240)

Calculate value

(390,218) (242,189) (263,210) (299,163) (245,171) (257,187) (298,181) (238,199) (256,204)

Error

155 cm 32 cm 32 cm 50.6 cm 49 cm 53.4 cm 57 cm 15 cm 36.4 cm

Graph

31

Figure 27: The error rate of BLEs. The error value shows the difference from real position to detect position. The 21 BLEs is the more precise than others.

The architecture of the flow char is as the Figure 28 shows. There are two ways to calculate the position. One is the BLE, and another is IMU sensor.

Figure 28: The error rate of BLEs. The error value shows the difference from real position to detect position. The 21 BLEs is the more precise than others.

After receiving the raw data of the RSSI, I use the algorithm of the filter to reduce the noise and improve the precise by using the IMU in Equation 11. I actually test the

0

32

localization algorithm and walk in the cubic room from 50m to 650m and return.

After the experiment, I compare the RSSI signals and use the camera to record my movement. The results of using only one Bluetooth dongle to receive the RSSI and use the low pass filter can solve the drift of the RSSI are as the Figure 29 shows. In addition, the raspberry pi uses the two Bluetooth dongles to receive more RSSI as the Figure 30 shows. In addition, I also use the camera to capture the real movement and the mapping virtual character as the Figure 31 shows.

Figure 29: The result of using filter to get more stable signal by one signal.

0

33

Figure 30: The result of using filter to get more stable signal by two signals.

(a) (b)

(c) (d)

Figure 31: The result of real movement from left to right.(a) Left (b)Right (c)middle (d) left but with some delay time

This paper focuses on the movement of the user especially the delay time, and the drifts of the RSSI may affect the result. In order to localize the user position, I present the algorithm which take little seconds to calculate the result. The low pass filter is a good solution to filter the noise and just takes 0.08s to get the user position.

0

34

Although it may not so precise that error may be 15cm to 57cm, it can follow up the movement of the user. In addition, I also use the IMU sensors to improve its precise, so the algorithm can get user’s position in real-time as the Figure 32 and Figure 33.

Figure 32: Using only one raspberry pi and IMU to get the position.

Figure 33: Using the two raspberry pi and IMU to get the position.

0

35

In addition, I also use the camera to capture the real movement and the mapping virtual character as the Figure 34 shows.

Figure 34: The result of real movement from left to right.

The architecture of the overall experiment is as the Figure 35. First, the BLE peripheral sent signal to the Raspberry pi. Second, the Raspberry pi filters these signal and sent to the Server by wireless. Finally, the server process these signal and sent the real position by message queue.

The cost time during the pi to server and server calculate the position from users is as the Table 3.

36

Figure 35: The architecture of the overall experiment.

Table 3: The total times from Raspberry pi to server.

Step time delay

From pi to server

0.23

Server process the siganl

0.08

Transfer by Message queue

0.006

4.2.2 Real performance in Campus

We used the Wearable Item Service runtimE (WISE) server as the platform. As shown in Figure 36a, the WISE items are responsible for gathering motion data of the performers and transmitting to a WISE Coordinator via BLE (Bluetooth Low Energy) protocol in real time. Besides, our team used Unity to create virtual characters and let performers wear our sensors to control performance content.

As shown in Figure 36b, we performed in our campus (May 19, 2015). One wears Xsens and the other wears our sensors. After the show, every audience can try to wear our sensors to experience (see Figure 37) as he/she is the performer. In addition to the stage show, our team also used AR to create virtual character interacting with real people by wearable sensors (May 20, 2015) (see Figure 38).

peripheral

37

(a)

(b)

Figure 36: (a) System architecture and show on the performance (b) wearable sensors works with Xsens.

38

Figure 37: Audience can wear our sensors to interact with virtual characters.

39

(a)

(b)

Figure 38: (a) System architecture and show on the performance

(b) AR coordinate with WISE and let audience wear our sensors to interact.

40

CHAPTER 5

Conclusions and Future Work

In this thesis, we present the localization in door and use this technique in the performance. To get less noise in the hardware, I tried many sensors and found best one to use, but there are still some problem about the frame rate less than 20 fps and the drift in RSSI. To solve this problem, I try to use the acceleration to calculate the distance and use the rotation between legs to get the movement. However, there are some problems need to overcome by using these sensors, so I try another way to get the position. I deploy 21 BLEs and combine the IMU sensors to give the weight in the low pass filter and reduce the noise to get more precise. Finally, the error value is about 30 cm. Although the error is not better than other scholar, what I care is the delay time. To make the virtual character follow the users the time is very important, so I develop the algorithm to calculate the users’ position in the real time.

Finally, the delay time of the final test in the real performance is about 0.3~0.5s without drift. We performed in the campus twice and joined the Digital Art Center in Taipei. Besides, we also let audience wear our sensors on the arms to experience the show. In the future, we hope to use this wearable technology to interact with more people in the different places.

41

REFERENCES

[1] Britain's Got Talent. Available:

https://www.youtube.com/watch?v=A7IMKWvyBn4 [2] International event of cool Japan. Available:

https://www.youtube.com/watch?v=nNushriHQ4Q&feature=youtu.be

[3] Daniel Roetenberg, Henk Luinge, and Per Slycke, “Xsens MVN: Full 6DOF

Human Motion Tracking Using Miniature Inertial Sensors. XSENS Technologies,

”version Apr 3, 2013.

[4] UWB Technical Overview. Available:

https://en.wikipedia.org/wiki/Ultra-wideband#cite_note-1

[5] 2015 Bluetooth SIG. Available: https://www.bluetooth.org/en-us

[6] Li, H. (2014). Low-Cost 3D Bluetooth Indoor Positioning with Least Square.

Wireless Personal Communications, 78(2), 1331-1344.

[7] Chawathe, S. S. (2008, October). Beacon placement for indoor localization

using bluetooth. In Intelligent Transportation Systems, 2008. ITSC 2008. 11th

International IEEE Conference on (pp. 980-985). IEEE.

[8] Muset, B., & Emerich, S. (2012). Distance Measuring using Accelerometer and

Gyroscope Sensors. Carpathian Journal of Electronic and Computer Engineering,

5(83), 2012.

[9] Deng, J., Qiu, J., Zhong, Z., & Wan, Z. (2015, January). Three-dimensional

Trajectory Tracking System Based on Compass and Gyroscope. In International

Conference on Education, Management, Commerce and Society (EMCS-15). Atlantis

42

Press.

[10] Blumrosen, G., & Luttwak, A. (2013). Human body parts tracking and

kinematic features assessment based on RSSI and inertial sensor measurements.

Sensors, 13(9), 11289-11313.

[11] Brookner, E. Tracking and Kalman Filtering Made Easy 1998;

Wiley-Interscience: New York, NY, USA, April 1998.

[12]

Chia-Feng Lu, Mathlab learning :

http://www.ym.edu.tw/~cflu/CFLu_course_matlabgui.html

[13] Sandeep Mistry masters in Bluetooth services.Available:

http://en.gravatar.com/mistrysandeep

[14] Ahn, D., Park, J. S., Kim, C. S., Kim, J., Qian, Y., & Itoh, T. (2001). A design of

the low-pass filter using the novel microstrip defected ground structure. Microwave

Theory and Techniques, IEEE Transactions on, 49(1), 86-93.

[15] Jeff Rowberg. “I2Cdevlib. MPU-6050 6-axis accelerometer/gyroscope”.

Accessed 28-May- 2014. 2013. URL: USC Viterbi School of Engineering. Archived from the original 2012-03-21.

[16] Liu, T., Inoue, Y., & Shibata, K. (2009). “Development of a wearable sensor

system for quantitative gait analysis. Measurement

”, 42(7), 978-988.

[17] Dąbek, P. (2013). “Evaluation of low-cost MEMS accelerometers for

measurements of velocity of unmanned vehicles.

” Pomiary, Automatyka, Robotyka, 17, 102-113.

[18] Takeda, R., Tadano, S., Natorigawa, A., Todoh, M., & Yoshinari, S. (2009).”

Gait posture estimation using wearable acceleration and gyro sensors.

” Journal of biomechanics, 42(15), 2486-2494.

[19] Drezner, Z., Drezner, T., & Wesolowsky, G. O. (2009). “Location with

acceleration –deceleration distance.” European Journal of Operational Research,

43

198(1), 157-164.

[20] Tuck, K. (2007). “Tilt sensing using linear accelerometers.” Freescale Semiconductor Application Note AN3107.

[21] Charlon, Y., Fourty, N., & Campo, E. (2013). “A telemetry system embedded in clothes for indoor localization and elderly health monitoring.” Sensors, 13(9),

11728-11749.

[22] Čapkun, S., Hamdi, M., & Hubaux, J. P. (2002). “GPS-free positioning in mobile ad hoc networks.” Cluster Computing, 5(2), 157-167.

[23] Lee, J. S., Su, Y. W., & Shen, C. C. (2007, November). “A comparative study of wireless protocols: Bluetooth, UWB, ZigBee, and Wi-Fi. In Industrial Electronics Society, 2007.” IECON 2007. 33rd Annual Conference of the IEEE (pp. 46-51).

IEEE.

[24] Lee, Y. H., Ho, K. W., Tseng, H. W., Lo, C. Y., Huang, T. C., Shih, J. Y., & Kang, T. H. (2014). “Accurate Bluetooth Positioning Using Large Number of Devices

Measurements.

” In Proceedings of the International MultiConference of Engineers and Computer Scientists (Vol. 2).

[25] Chandrasiri, R., Abhayasinghe, N., & Murray, I. (2013, October). “Bluetooth

Embedded Inertial Measurement Unit for Real-Time Data Collection for Gait Analysis.

” In International Conference on Indoor Positioning and Indoor Navigation (Vol. 28, p. 31st).

[26] Wang, Y., Yang, X., Zhao, Y., Liu, Y., & Cuthbert, L. (2013, January). “Bluetooth

positioning using RSSI and triangulation methods.

” In Consumer Communications and Networking Conference (CCNC), 2013 IEEE (pp. 837-842). IEEE.

[27] Liu, J., Chen, C., Ma, Y., & Xu, Y. (2013, September). “Energy analysis of

device discovery for bluetooth low energy.

” In Vehicular Technology Conference (VTC Fall), 2013 IEEE 78th (pp. 1-5). IEEE.

44

[28] Baniukevic, A., Jensen, C. S., & Lu, H. (2013, June). “Hybrid indoor positioning

with wi-fi and bluetooth: architecture and performance.

” In Mobile Data Management (MDM), 2013 IEEE 14th International Conference on (Vol. 1, pp. 207-216). IEEE.

相關文件