You are on page 1of 9

Available online at www.sciencedirect.

com

ScienceDirect
Available online at www.sciencedirect.com
Procedia Computer Science 00 (2019) 000–000
www.elsevier.com/locate/procedia
ScienceDirect
Procedia Computer Science 157 (2019) 629–637

4th International Conference on Computer Science and Computational Intelligence 2019


(ICCSCI), 12–13 September 2019

Development of Smart Trolley System Based on


Android Smartphone Sensors
Alexander A S Gunawana,*, Valdi Stevanusa, Albertus Farleya, Heri Ngariantoa,
Widodo Budihartoa, Herman Tolleb, Muhammad Attamimic
a
Computer Science Department, School of Computer Science, Bina Nusantara University, Jakarta, Indonesia 11480
b
Media, Game, and Mobile Technologies Research Group, Master of Computer Science Brawijaya University, Malang, Indonesia
c
Department of Electrical Engineering, Institut Teknologi Sepuluh Nopember, Surabaya, Indonesia

Abstract

In supermarkets, a shopping trolley or a shopping cart is the necessary tools for purchasing. Traditionally, it is used by customers
inside the store to transport goods to the cashier during shopping and designed not to leave the store. It is an inconvenience and
time wasted for customers who want to find the desired product in the store by using the traditional shopping trolley. Our goal is
to develop an automatic moving trolley with smart shopping devices to solve the problem. Our smart shopping trolley is based on
a two-wheeled mobile robot, developed in our previous research. This paper presents the hardware and software design of a smart
trolley system. Our smart trolley used IOIO microcontroller and Android smartphone as sensors and controller. The trolley is
modeled as a two-wheeled mobile robot. Android smartphone will control the robot by sending a signal to IOIO microcontroller
paired with a robot's actuator and monitor the situation using the smartphone camera. Furthermore, we exploited the smartphone
compass for robot navigation. This system is also equipped with the indoor positioning system to detect user position using
Navisens which based on gyroscope and accelerometer in the smartphone. Finally, the results of the testing on robot navigation
are presented. The result is our smart trolley system based on Navisens framework can move and show its location to the user.

© 2019
© 2019 The
The Authors.
Authors. Published
Published by
by Elsevier
Elsevier B.V.
B.V.
This is an open access article under the CC BY-NC-ND license (http://creativecommons.org/licenses/by-nc-nd/4.0/)
This is an open access article under the CC BY-NC-ND license (http://creativecommons.org/licenses/by-nc-nd/4.0/)
Peer-review under responsibility of the scientific committee of the 4th International Conference on Computer Science and
Peer-review
Computationalunder responsibility
Intelligence 2019. of the scientific committee of the 4th International Conference on Computer Science and
Computational Intelligence 2019
Keywords: Mobile Robot; IOIO; Android; Robot Navigation; Indoor Positioning System; Navisens;

* Corresponding author. Tel.: +62-21-5345830.


E-mail address: aagung@binus.edu

1877-0509 © 2019 The Authors. Published by Elsevier B.V.


This is an open access article under the CC BY-NC-ND license (http://creativecommons.org/licenses/by-nc-nd/4.0/)
Peer-review under responsibility of the scientific committee of the 4th International Conference on Computer Science and Computational
Intelligence 2019

1877-0509 © 2019 The Authors. Published by Elsevier B.V.


This is an open access article under the CC BY-NC-ND license (http://creativecommons.org/licenses/by-nc-nd/4.0/)
Peer-review under responsibility of the scientific committee of the 4th International Conference on Computer Science and Computational
Intelligence 2019.
10.1016/j.procs.2019.08.225
630 Alexander A S Gunawan et al. / Procedia Computer Science 157 (2019) 629–637
2 Gunawan et al. / Procedia Computer Science 00 (2019) 000–000

1. Introduction

Nowadays, many supermarkets offer convenience for shopping, one of which is a shopping trolley. It is used by
customers inside the store to transport goods to the cashier during shopping and designed not to leave the store. One
of the first shopping carts was introduced by Sylvan Goldman, owner of Standard Food Market in Oklahoma. He
receives many complaints from his customers because they have difficulty in carrying groceries from his shop.
Goldman tried to solve this problem and began experimenting with shopping baskets at his shop. He put the basket
on a carriage with small wheels to help customers carrying groceries. To facilitate and satisfy his customers, he
asked an engineer to design a modern shopping trolley and patented this invention 1. Since then, the shopping trolley
is made en masse. To this day, we find many shapes of shopping trolleys in a modern supermarket.
After Goldman, there are many types of research and inventions to improve the shopping trolleys. In modern days
when there are many products in the supermarkets, it is an inconvenience and time wasted for customers who want
to find the desired product by using the traditional shopping trolleys. In 2009 researchers began to develop
prototypes of computerized context-aware shopping trolleys by attaching tablet computers to traditional trolleys 2.
The purpose of the system is to support shopping in supermarkets by gaining user attention. Thus, the interactive
trolley helps customers in handling and finding products. The initial experiments showed that prototypes can
improve and change the shopping experience. The advanced research started to integrate the shopping trolleys with
mobile robot concept 3. The prototype integrated a shopping trolley with a portable mobile robot with human
following functions. The purpose of a human following robot is to improve the shopping experience by carrying
heavy loads for customers in supermarkets. The reason for this research is to implement an automated shopping
trolley that offers convenience and efficiency to customers, which eliminates human labor to push heavy loaded
trolleys. Our objective consists of navigating reachable routes to customers and avoiding collisions with barriers.
The first step of our research is to perceive shopping trolley as a mobile robot. We use our previous research 4 to
develop robot locomotion, which is how a mobile robot would move. The mobile robot was designed with two-
wheels and two castor wheels as commonly used on the shopping trolley in Indonesia. In this paper, our main
concern is robot navigation. Navigation is the ability to determine its own position based on the reference frame and
then to make path planning to reach the destination position. In navigation technologies, localization is one of the
fundamental problems in mobile robot navigation. In an indoor environment, localization is identified as a problem
of estimating the absolute position and orientation of a mobile robot. Our system is equipped with the indoor
positioning system to detect customer position using Navisens 5, which based on gyroscope and accelerometer in the
smartphone, provided by MotionDNA. On the other hand, odometry is widely used to estimate the relative position
and orientation for mobile robot 6. We present the odometry method as basic navigation by using compass sensors 7
as a means of controlling the robots. Furthermore, our smart trolley used IOIO microcontroller 8 and Android
smartphone as sensors and controller. It would like to use all Android smartphone sensors such as accelerometer and
compass and exploit the powerful smartphone’s microprocessor. The trolley is modeled as a two-wheeled mobile
robot. Fundamentally, the system can be divided into two roles, as robot and controller. The robot is designed and
installed on a modified trolley to accommodate the robot. Android smartphone controls trolley by sending a signal to
IOIO microcontroller paired with trolley actuator so that it can move properly according to the predetermined path.
The remainder of the paper is composed as follows: first, we discuss smart trolley system in section 2, and then is
followed by hardware design, in section 3. In section 4, we discuss software design based on the hardware
specifications. Furthermore, we report the experiment results in a smart trolley system based on location accuracy
and trolley movement in section 5. Finally, we concluded our work with suggestions for future research in section 6.

2. Smart Trolley System

The general concept of the smart trolley system is designed into an automated self-checkout system on a
shopping trolley with a user interface on a smartphone which allows customers to make payment for items scanned
and placed in the trolley before leaving the entrance of the store. In this paper, we focus on the smart trolley itself,
which is based on automated mobile robot system with some customizations. Our smart trolley design consists of
the following components, that is batteries, sensors controllers, actuators and trolley itself. It inevitably will require
a flexible design that will attract the customers to use the trolley. Basically, the traditional trolley remains an integral
Alexander A S Gunawan et al. / Procedia Computer Science 157 (2019) 629–637 631
Gunawan et al. / Procedia Computer Science 00 (2019) 000–000 3

part of the customers shopping experience, thus we wish to integrate the mobile robot into traditional trolleys to
ensure the design will meet the requirement of the customers.
A mobile robot is considered as one of the effective robots because it can travel easily and more flexible
compared to humanoid robots 9. In mobile robot, every wheel movements will contribute to the change of its
position and thus we must control its actuators. The main challenge of a mobile robot is its locomotion, which is
how a mobile robot would move. The locomotion of our mobile robot is based on a differential drive model 4.
Furthermore, our mobile robot has two motorized wheels on an axis and two castor wheels. Below is our smart
trolley architecture.

Fig. 1. Architecture of smart trolley

Our smart trolley must be able to move on a wide field with high mobility. It uses actuators in the form of wheels
that acts as locomotion medium to allow the trolley to move. In general, the wheels that act as actuators on the smart
trolley is connected through the wheel shaft on the motor as the main source of motion. The smart trolley is also
equipped with two castor wheels on the front side to help the movement that involves direction change.
Fundamentally, the architecture of smart trolley (see Fig 1) can be divided into two roles, that is trolley robot as
hardware and controller as software. For the hardware, we adopt the traditional trolley design with two-wheeled
mobile robot concept, while the software is designed for robot navigation and user interface applications. Both
hardware and software design will be explained in detail in the next sessions.

3. Hardware Design

The traditional trolley is used as a support for all components used on the developed smart trolley. All
components are placed at the bottom of the trolley basket with a box for supporting batteries, microcontrollers, and
DC motor drivers, as seen in Fig 2a. DC motors in Fig 2b is mounted to the trolley wheels through pulleys to
generate enough torque to move.

(a) (b)

Fig. 2. (a) Trolley view from the front side, (b) Electronic circuit of the smart trolley
632 Alexander A S Gunawan et al. / Procedia Computer Science 157 (2019) 629–637
4 Gunawan et al. / Procedia Computer Science 00 (2019) 000–000

In Fig 2b, there are five main components, that indicated with numbers on the picture. Those main components
are:
1. Accu Motobatt MTX5AL 12V 6Ah It is used as the main power source of the trolley
2. DC dual motor driver module board H-Bridge DC Mosfet IRF3205. The board can control the speed and
direction of two DC motors.
3. IOIO board V1. The board is used as the main controller to receive instructions from an Android smartphone
over Bluetooth module.
4. DC voltage step down. It is used to reduce the incoming voltage from Accu to IOIO board, so it will not fry the
circuits.
5. DC motors ZGB37RH are used to rotate the wheel on the smart trolley.

(a) (b) (c)

Fig. 3. (a) DC motor driver circuit, (b) DC motor (c) Pulleys

The hearth of our trolley hardware is depicted in Fig 3, which consist of high current DC motor driver, high
torque DC motor, and strong pulleys. Our DC motor driver board (see Fig 3a) is based on Mosfet transistor
IRF3205, which is a high current N-Channel HEXFET Power Mosfet that can switch long range voltage 3-36V. The
driver board focusses on the efficiency of motor power and battery life. It can withstand high current overload up to
30A. We used this driver to regulate and reinforce the electric current from the microcontroller to each motor of the
trolley. Meanwhile, we used high torque DC motors ZGB37RH from Zhengke Motor (see Fig 3b) as the workhorse
of our trolley. DC motor will change the electrical energy flowing from the motor driver to motion energy. This
motor has a maximum speed of 200 rpm and a torque of 12 Kg.cm which makes it is suitable for moving the trolley
without making the motor work beyond its capacity. Finally, we mounted DC motor to the trolley wheels through
pulleys to generate enough torque to move. The pulleys are used to transfer rotary motion from one place to another.
It offers some advantages over gears, where their teeth must be interlocked. For this purpose, we used Pulleys Belts
Kit (see Fig 3c) with ratio 2:1. The pulleys set consists of a Timing Belt 124XL 100mm, and two Pulley XL-15T
Bore 6mm and XL-30T Bore 12mm. The ratio 2:1 means that for every one turn of the motor pulley, the wheel
pulley turns two times through pulley belt. It is important to understand that pulleys do not increase power. They
only spread the work performed over a greater distance.

4. Software Design

Smart trolley application is a mobile application on Android platform that is used to control and navigate the
trolley. It also shows the user location based on their GPS reading on an indoor map. This application is based on
Java programming language and some specialized libraries, such as Navisens and IOIOLibAndroid. It will calculate
the user’s location based on data from accelerometer and gyroscope.
Smart trolley application has two separate applications, one is for the customer while another is for the trolley.
The application for the customer comes with several functionalities, one of the functionalities is the indoor maps,
which present a map of the current location. Other functionality includes live location tracking, trolley location
tracking, and the ability to re-initialize position by scanning QR Codes. On the other hand, the application installed
Alexander A S Gunawan et al. / Procedia Computer Science 157 (2019) 629–637 633
Gunawan et al. / Procedia Computer Science 00 (2019) 000–000 5

on trolley’s smartphone have a function as a server to receive instructions from the customer’s application and then
forwarding the instructions to the IOIO board to activate the DC motor driver. Since the trolley’s application only
need to receive and forward instructions, the application does not have graphical maps or live location tracking that
can be seen, but all required smart trolley functionalities has been included, but it works without any graphical
representation. The main steps in our smart trolley application are explained in below:

4.1. Registration and Controlling Smart Trolley

The first step of using the smart trolley application is registering the customer ID to a specific trolley. This
process binds the customer and the trolley by sending their own Unique ID to Firebase Real-time Database. After
that, the trolley application will check the Firebase Database to make sure the customer is the one, who scanned the
QR Code and making sure the customer has control of the trolley.

4.2. Navigation using Compass

To help trolley navigation, we used a compass in Android smartphone. The compass actually is a sensor fusion
which available from Android’s library 10. The compass is used when determining trolley’s turning degree. When
the trolley would like to start turning left or right, the application records the current compass degree and then
adding or subtracting the current degree by 90 to obtain the expected degree after turning, making the trolley turns
smoothly and ensures the trolley turn exactly 90 degrees left or right.

4.3. Indoor Positioning System

There exists a multitude of indoor positioning system. From the one using Wi-Fi 11, Bluetooth Low Energy 12,
and Ultra-Wide Band 13. For this research, we are using Navisens, an indoor positioning system that uses any
available sensor in the smartphone to estimate position. Navisens works by processing data produced by
accelerometer and gyroscope with Extended Kalman Filter and then combining it with Dead Reckoning System to
estimate customer’s and trolley’s position. The advantage of using Navisens is this system does not require
additional infrastructures or special technologies to be installed.
Besides Navisens, we use two other map services, called Mapbox and Mapwize. Mapbox 14 is a free mapping
service, much like the Google Maps, except this service is free and does not require the developer to connect credit
card for simple usage. Mapbox is crucial to the development because it gives our application access to the world
map for free. The second one is Mapwize 15. This free service offers a way to integrate world map and indoor map
by showing only relevant and registered maps to the user. Mapwize works by limiting the number of viewed places
when zoomed out and shows more places when zoomed in to a particular place. When the user has zoomed in
sufficiently, the user is automatically entered to the indoor map and can start navigating around.

4.4. NaviServer

NaviServer is a UDP server based on Go language. NaviServer is used to facilitate location sharing between the
user application and trolley application. The server can be deployed on any sufficiently powerful server. For this
research, we deployed it on a Raspberry Pi 3 Model B. This Raspberry Pi has a Quad Core 1.2GHz 64bit CPU, 1 GB
RAM, BCM43438 WLAN, and 100 Base Ethernet.
NaviServer works by creating several small servers called room. For each individual room, all occupants can
receive and send their position to each other occupants in the same room. Occupants cannot see position updates
from another room other than the one they are currently in. With this limitation, we can explicitly tell the customer
application and trolley application to join a specific room to show only two position updates, the customer and the
trolley.
We deployed the server locally to fine-tune the server configuration to meet our research needs. The
configuration is as follows: server’s IP address, server’s port, max number of rooms in the server, max number of
connections for each room, and the connection time for each timeout. The developer needs to explicitly tell the
634 Alexander A S Gunawan et al. / Procedia Computer Science 157 (2019) 629–637
6 Gunawan et al. / Procedia Computer Science 00 (2019) 000–000

application which IP address to connect to, the port, and the name of the room to be able to connect to a specific
room. If the requested room is not available, it will create a room with the configured name. If the developer doesn’t
set the IP address, port and room name, the application will try to connect to a public server and public room. This is
discouraged as the public server could be overloaded, thus rendering testing unavailable. To enable location sharing,
the server running NaviServer needs to be connected to the same Wi-Fi network as the user.

5. Experiment Results

5.1. Accuracy Analysis of Indoor Positioning System

From a multitude of existing indoor positioning systems, we have tested two systems. One is Anyplace Indoor
Navigation Service 16 and the other is Navisens 5. Our previous research used Anyplace framework. Its accuracy is
not suitable for our needs, so we move to use Navisens framework.
Anyplace uses Wi-Fi Radiomap-based indoor localization, which stores radio signals from Wi-Fi APs in a
database at a high density. The localization subsystem of Anyplace utilizes the following routine: in an offline
phase, a logging application records the so-called Wi-Fi fingerprints, which comprise of Received Signal Strength
(RSS) indicators of Wi-Fi Access Points (APs) at certain locations (x, y) pin-pointed on a building floor map (e.g.,
every few meters). Subsequently, in a second offline phase, the Wi-Fi fingerprints are joint into an NxM matrix,
coined the Wi-Fi RadioMap, where N is the number of unique (x, y) fingerprints and M the total number of APs.
Finally, a user can compare its currently observed RSS fingerprint against the RadioMap in order to find the best
match, using known algorithms such as KNN or WKNN 17. As mentioned before, Anyplace needs a lengthy
preparation beforehand to use it. We have collected a lot of radio signal readings from our research room which
consists of 4 Wi-Fi Access Points, room size of 9.6 m x 12 m, and gathering radio signals from each walkway at
least 4 times

Fig. 4. Radio signals logged for Anyplace

Fig. 4 shows all radio signals gathered from our logging attempt. The orange areas are at an acceptable range of
radio strength (70-90 dBm) and the yellow areas are at a good radio strength (60-70 dBm). With this many data, the
location estimation jumps off frantically from one place to other place ranging from about 50 cm to over 2 meters,
even when the testing device is put on a still surface, e.g. on a table and the device is at the place with densest radio
signal logged.
This result of Anyplace is not good for our requirement. We need a more robust, simple, and reliable indoor
positioning system, where the position estimation will not jump frantically from one place to another in a short span
of time. In search of another indoor navigation system, we stumbled upon Navisens, a simple and lightweight indoor
navigation system complete with documentation and examples. It is based on data processing from accelerometer
and gyroscope sensors. After reading and testing it a lot, we decided to use Navisens as the indoor positioning
system for the customer and the trolley.
In our experiment on Navisens, the client application is installed on a Xiaomi Redmi Note 4 with a 13-megapixel
camera, running Android 7.0 Nougat with 5.5-inch touchscreen display. While the trolley application is installed on
Alexander A S Gunawan et al. / Procedia Computer Science 157 (2019) 629–637 635
Gunawan et al. / Procedia Computer Science 00 (2019) 000–000 7

an Evercoss One X A65 with a 5-megapixel camera, running Android 6.0.1 Marshmallow with 4.5-inch touchscreen
display.

(a) (b)

Fig. 5. (a) User Interface of Smart Trolley Application (b) Trolley interface of Smart Trolley Application

Fig. 5a shows the user position after being initialized by GPS. Customer’s position is denoted by a pink circle
with an arrowhead. The user application is designed as simple as possible. This ensures the user could see the map
clearly without much obstruction. If the user zooms out by pinching the screen, the less relevant point will be hidden
to ensure the user could see some more relevant point at their zoom level. As the user zooms in, more point of
interests will be shown. If the user has scanned a QR Code on a trolley, the map will be updated with trolley position.
Fig. 5b shows the trolley app’s interface. It has a camera view to check for QR codes and 4 buttons to control the
trolley. Forward will make the trolley move forward. Turn left will make the trolley turns left by activating the right
wheel and deactivating the left wheel, thereby rotating the trolley. Turn right will make the trolley turns right by
activating the left wheel and deactivating the right wheel. Trolley position is denoted by a pink pin on the map. In
this experiment, the trolley position is updated every 2.5 seconds.
Both the customer’s and the trolley’s application have a camera view. The user can launch the view by pressing
the “Scanner” button as seen in Fig. 5a. Once opened, a camera view will show up, prompting the customer to scan
a QR Code. Depending on the QR code content, the user will either: a) attempt to connect to a trolley, or b) set the
current location to a specific place. The trolley app has an always active camera view to scan any QR Code, which
found on the floor as it moves. The purpose of scanning a QR Code is to re-initialize the position as the indoor
positioning system, that relies on accelerometer and gyroscope, have a tendency of accumulating errors over time.
Unlike Anyplace, by using Navisens framework, the customer’s position does not jump all over the place
frantically. The position stays at one place at a time, and only moves according to the customer’s movement. The
reason for Navisens' accuracy is that the estimated position is based on the position initialized and not by estimating
the position based on some received signal strength as in Anyplace framework.

5.2. Smart trolley movement

Smart trolley movement is crucial, since a wrong movement could potentially be dangerous, both to the customer
and to the trolley. The movement is calibrated by adjusting the speed through Java code. The IOIO board only
accept float values of 0 to 100. Any value higher than 100 is treated as 100 and any value lower than 0 is treated as 0.
We must calibrate these values based on the condition of the trolley’s motors. Table 1 through 3 shows the
experiment with different speed and different testing area. Table 1 is tested with 60 speed on the left wheel and 100
speed on the right wheel. Table 2 and 3 are tested with 50 speed on the left wheel and 73.4 speed on the right wheel.
636 Alexander A S Gunawan et al. / Procedia Computer Science 157 (2019) 629–637
8 Gunawan et al. / Procedia Computer Science 00 (2019) 000–000

Table 1. First trolley movement test


Distance Deviation Wheel Speed
Deviation Degree Deviation Distance Left Right
1 meter 2.397 1.8 cm 60 100
3 meters 3.991 3 cm 60 100
6 meters Off-track Off-track 60 100

Table 2. Second trolley movement test


Distance Deviation Wheel Speed
Deviation Degree Deviation Distance Left Right
1 meter 0.933 0.7 cm 50 73.4
3 meters 4.653 3.5 cm 50 73.4
6 meters 54.714 104 50 73.4

Table 3. Third trolley movement test


Distance Deviation Wheel Speed
Deviation Degree Deviation Distance Left Right
1 meter 0.266 0.2 cm 50 73.4
3 meters 7.682 5.8 cm 50 73.4
6 meters 78.257 300 cm 50 73.4

From Table 1 result, it could be concluded that the left wheel has significant speed compared to the right wheel.
At 3 meters distance, the result in Table 1 is better than Table 2 or 3. But it significantly became worse at 6 meters,
where the trolley goes off-track and moves in a circular pattern. After finishing the test, we reduce the left wheel’s
speed to accommodate the speed of the right wheel and then start the second and third test.
By reducing the left wheel speed by 10 and right wheel speed by 26.4, we get a better result at a shorter distance,
which is reflected in Table 2 and 3 indicated in Deviation Degree and Deviation Distance. At a higher speed, the
trolley performs better only at 3 meters. At lower speed, the trolley performs better at 1 meter and at 6 meters even
though the trolley still deviates from the expected path.

(a) (b)

Fig. 6. (a) Trolley movement test in Table 2 (b) Trolley movement test in Table 3

6. Conclusions

The following are our conclusions based on experiment results. Using Navisens framework as the indoor
positioning system is better than using Anyplace. Navisens’s estimated position is updated with Dead Reckoning
Alexander A S Gunawan et al. / Procedia Computer Science 157 (2019) 629–637 637
Gunawan et al. / Procedia Computer Science 00 (2019) 000–000 9

System and data from accelerometer and gyroscope rather than through Wi-Fi fingerprints as in Anyplace. The
smart trolley movement is good at 1 meter and 3 meters, but the movement is not stable at distances over 3 meters.
Based on our analyses, the smart trolley system needs an automated calibrator for the movement to ensure the
trolley does not stray from the planning path. This remains for our future research.

Acknowledgments

This work is supported by Directorate General of Research and Development Strengthening, Indonesian Ministry
of Research, Technology, and Higher Education, as a part of Konsorsium Riset Unggulan Perguruan Tinggi
(KRUPT) Research Grant to Bina Nusantara University titled “Smart Trolley in Smart Mart” with contract number:
12/AKM/PNT/2019 and contract date: 27 March 2019.

References

1. Goldman SN. US Patent: Combination basket and carriage. Patent. ; 1937. Report No.: US2155896A.
2. Black D, CNJ, SMB. Shopping in the Real World: Interacting with a Context-Aware Shopping Trolley. In Proc. of Mobile Interaction with
the Real World (MIRW); 2009; Universität Oldenburg.
3. Ng YL, Lim CS, Danapalasingam KA, Tan MLP, Tan CW. Automatic Human Guided Shopping Trolley with Smart Shopping System.
Jurnal teknologi. 2015; 73(3).
4. Gunawan AAS, William , Hartanto B, Mili A, Budiharto W, Salman AG, et al. Development of Affordable and Powerful Swarm Mobile
Robot Based on Smartphone Android and IOIO board. Procedia Computer Science. 2017; 116: p. 342-350.
5. Jackermeier R. LB. Task-Oriented Evaluation of Indoor Positioning Systems. In LBS 2018: 14th International Conference on Location Based
Services; 2018; Zurich. p. 25-47.
6. Solin A. CS,RE,KJ. Inertial Odometry on Handheld Smartphones. In IEEE; 2018; Cambridge. p. 1-5.
7. J. X. An Indoor Navigation System Using a Sensor Fusion Scheme on Android Platform. 2017..
8. S. M. Making Android Accessories with IOIO: Going Mobile with Sensors, Lights, Motors, and Robots. 1st ed. Oram A. HM, editor.
Sebastopol: O'Reilly Media, Inc.; 2012.
9. Siegwart R, Nourbakhsh IR, Scaramuzza D. Introduction to Autonomous Mobile Robots: The MIT Press; 2011.
10. Milette G. SA. Professional Android Sensor Programming: John Wiley & Sons; 2012.
11. Yang C. SH. WiFi-based Indoor Positioning. IEEE Communications Magazine. 2015 March; 53(3).
12. Ji M KJJJCY. Analysis of positioning accuracy corresponding to the number of BLE beacons in indoor positioning system. In 2015 17th
International Conference on Advanced Communication Technology (ICACT); 2015; Seoul. p. 92-95.
13. Gigl T JGDVWKIZ. Analysis of a UWB indoor positioning system based on received signal strength. In 2007 4th Workshop on Positioning,
Navigation and Communication; 2007; Hannover. p. 97-101.
14. Mapbox. [Online]. [cited 2019 June 14. Available from: https://www.mapbox.com.
15. Indoor mapping & Wayfinding for Smart Buildings. [Online]. [cited 2019 June 14. Available from: https://www.mapwize.io.
16. Georgiou K CTLCPLCGZYD. Anyplace: A crowdsourced indoor information service. In 2015 16th IEEE International Conference on
Mobile Data Management; 2015; Pittsburgh. p. 291-294.
17. Zeinalipour-Yazti D LC. The anatomy of the anyplace indoor navigation service. In SIGSPATIAL Special; 2017; New York. p. 3-10.
18. Electronics S. Enginursday: A new and improved IOIO-OTG! [Online].; 2016. Available from: https://www.sparkfun.com/news/2069.

You might also like