Nadler_Smart_Gym_Research_HW4

advertisement
EE/CPE-322
Smart Gym: Homework 4
Alex Gurski
Russell Nadler
Ed Watt
Report Summary
Section 1:
The team initially accessed each of the major subgroups that culminate
the majority of concepts for the idea of a “smart” gym. Due to his extensive
background in computer science, Alex Gurski was tasked with formulating
the human-computer interaction, as well as t he publishing process for
application development. Russell Nadler was charged with researching
sensor characteristics, as well as control medium for sensors and
microcontrollers. Ed Watt covered short -range wireless communications, as
well as accessing their abilities.
Percentage of Effort
Alex Gurski
Russell Nadler
Ed Watt
33.33%
33.33%
33.33%
Sensors & Microcontrollers:
Sensors:
A sensor is a device that has the capability to measure a specific
parameter, or a set of parameters, such as position, light, pressure,
temperature, acceleration, etc. Sensors come in many shapes, sizes, and
prices, but there remains a set of significant characteristics that all sensors
are evaluated to, regardless of application. The first and most defining
sensor characteristic is sensitivity. The sensitivity of a sensor is defined as
“the minimum input of physical parameter that will create a detectable
output change” [1]. The resolution, then, is the smallest incremental change
in the input that can be measured by the sensor and produce a distinct
output. The time it takes for the sensor to calculate the output from the
change in input is the response time. Sensitivity will be the most critical
characteristic to evaluate, as an overly sensitive sensor may induce
unwanted costs, and an underly sensitive sensor may be insufficient. Just
like other electronic components, the sensor will operate within a set linear
curve, and deviation from the ideal curve is classified as sensitivity error.
Generally, a sensor is able to remain highly sensitive if its range of
measured values is generally small; the greater the dynamic range of a
sensor, the less likely it will be able to remain linear. The repeatability of
the sensors captured data points, known as precision, parallels accuracy;
precision is a measure of reproducibility, and accuracy is the largest
difference, in terms of a reading or percentage, of the measured value when
compared to the actual value. The linearity of the sensitivity error curve is
inherent in the sensor’s accuracy; however, environmental conditions may
also affect the sensor and may not be accounted for in
datasheets. Depending on accuracy and sensitivity error, the sensor will
have a different specific offset, classified as the difference between the
measured value and the ideal curve at specific inputs; for example, when
the input value is zero. The variety of the input direction to produce an
output error is classified as the hysteresis of the sensor - the measured data
in one path (for example, x to y) should be repeatable when the sensor
receives an input in the opposite direction (y to x). If the hysteresis can be
2
minimized, then the effect of amplitude and phase distortion will also lessen
- the dynamic linearity of the sensor is the measure of rapid changes
producing desirable outputs.
Microcontrollers:
Understanding the environment and being able to accurately model the
behavior of the system will result in selecting the right sensor for a specific
application - the key to the success of the measurement.
To process the output of the sensor, a microcontroller or other control
device must be used. A microcontroller is a small dedicated computer
embedded on a VSLI chip, in order to perform a specific function or task. In
the case of sensor processing, a microcontroller can be used to convert
voltage outputs to useful information - for example, if a three-axis
accelerometer was being used; a microcontroller can convert the three
voltages, one from each axis, to accurate position information (x, y, an d
z). Once the basic information is acquired, these values can be used for
advanced calculations - such as integrating to determine velocity and
position [2]. The microcontroller acts as the communication center for the
measurement system. The CPU (central processing unit) of the
microcontroller performs all computations and actions necessary for the
sensor to process the output. The non-volatile memory on the chip stores
the control program to be used, and the random access memory (RAM)
executes the program and stores temporary information. Depending on the
type of circuit board that the microcontroller is run on, a varying amount of
input and output ports exist, allowing the microcontroller to send signals as
well as accept inputs for additional functio nality. In the previously described
scenario with the three-axis accelerometer, a microcontroller would be used
to calculate the voltages received from three separate pins, each
representing an axis. The input/output (I/O) ports can also be used for
additional sensors, microcontrollers, and even liquid crystal panels for the
user to see displayed information. Depending on whether or not the sensor
is an analog or digital transducer, a microcontroller may also have an
analog-to-digital converter, in order to convert the sensors output to a easy
to process binary format. A communications port, as well as an internal
clock, would also be present, in order to have precisely controlled signals
[3].
Human-Computer Interaction:
Integration:
The users of Smart Gym will be interfacing exclusively with the mobile
application or the website. It is therefore necessary to create seamless
integration between not only the app and the website, but with the gym
itself. In doing this, two gulfs must be bridged: the Gulf of Ex ecution and
the Gulf of Evaluation. These gulfs are defined as “The difference between
the intentions and allowable actions” and “the amount of effort that the
person must exert to interpret the state of the system and determine how
well the expectations and intentions have been met”, respectively [4].
Endeavoring to rid the app of these potential problems will ultimately
produce a user friendly app.
3
First, examine the gulf of execution. This can be rewritten simply as
making the design goals obtainable in the system. A very necessary example
of eliminating this gulf is making the app interface with gym equipment; if
the app does not collect data from the machine, and then there is no
purpose. Therefore, the app must interface with a microcontroller, pull
useful information from it. This will be achieved via short range wireless
communication, at which point the app must convert the data into useful
metrics and sync the data to the Cloud. Google Cloud Messaging (GCM) is an
Android service that would allow Sma rt Gym to access the cloud by utilizing
3rd party messages (applicable in a machine or website) and allows the app
to run effectively in the background, however requires tethering Smart Gym
to Google Play accounts [5].
The gulf of evaluation is a lot more subjective, as it deals primarily with
how well the users can use the app for what it’s purpose is. Unlike the
previous gulf, this becomes an issue when looking at a potential user want:
multi-platform support. This becomes difficult with not only code nu ances,
but the SDKs for each phone as well as what each phone supports (for
example, should NFC be the short range wireless method chosen, the iPhone
wouldn’t be able to support the app at all). While Web Code such as
JavaScript does not suffer much where speed is concerned, making a UI
comparable to one created in an SDK is a difficult undertaking, and doesn’t
even account for lack of support [6].
Applications:
Making the application functional is only the beginning. Users have a
certain set of expectations for applications such as Smart Gym, which won’t
be determined until the app is released; until then, assumptions will have to
suffice. One such assumption is the integration of social media, which can
double as a method to get consumer feedback and find out what their
expectations are. Unfortunately, where businesses think consumers follow
them to learn about the products, the majority do so to find out about
discounts [7]. Use of social media is also risky in the sense that, for
business owners, it is a “[fundamental] change to the way they do business”
[8]. Social media provides a level of customer engagement that has never
been possible before, and fits seamlessly into a Smart Gym application.
From following your friends’ workouts to giving each other e ncouragement
to individual gyms interacting with their customers, social media is integral
to the design. Social media would not be limited to looking for Return on
Investment metrics, but rather a tool to both promote and foster the brand.
That being said, should an accurate way to measure ROI arise, such as click
or view metrics. Overall, any risks that may be presented by social media
such as bad PR are outweighed by the benefits. [8]
Further exploring the gulf of evaluation requires an intuitive app/web site
combination. The US Military Standard for Human Engineering Design
Criteria is as follows: achieve required performance by operator, control and
maintenance personnel, minimize skill and personnel requirements and
training time, achieve required relia bility of personnel-equipment/software
combinations, and foster design standardization within and among systems.
We’ve covered the required performance aspect, and the reliability of the
app will have to come with the development. Design standardization wo uld
4
favor a Web Code approach [6]. What’s left is making the app easy to use.
This is largely accomplished via build-measure-learn feedback loops. There’s
only so much that you can assume about your consumer; too many
presumptions can lead to a confused ap plication that doesn’t actually work
for those it was meant for. The build -measure-learn feedback loop accounts
for this by separating steps that most companies wrongfully combine. By
shipping a product before it is “perfect” for what is assumed that the
customers want, this strategy advocates letting the customers themselves
tell you what they want; build the product, measure how viable it is, learn
from your mistakes, and repeat. Doing so will establish not only an intuitive
app, but also the much sought after company-customer relationship. [10]
Publishing on each device is its own matter. Both Android and Apple
stores have their own distinct policies for publishing applications. For
example, the Apple Store requires the app to be built on the Distribution
Profile [11]. Android has a much more relaxed release program, which
involves a series of manual debugging methods to ensure the app is store ready [12]. It would therefore be easier to publish on Android first for
software reasons in addition to hardware concerns, but using Web Code so
that an iPhone compatible release would remain a possibility.
Short Range Wireless Communications
Bluetooth:
The Bluetooth Special Interest Group describes Bluetooth’s three key
features as “ubiquitousness, low power, and l ow cost.” Bluetooth devices
interact with each other by first pairing with each other. Once connected,
these devices can communicate with one another wirelessly through the
formation of piconets, small networks. Devices can enter and exit these
networks based on radio proximity. Devices in a piconet can simultaneously
interact with up to 7 other devices on that same network. Each device can
also belong to multiple piconets.
The range of Bluetooth connectivity has a required minimum of 10 meters,
but the maximum varies from one manufacturer to another. Bluetooth also
distinguishes itself by providing support for simultaneous data and voice
transmissions. Bluetooth radios are broken up into 3 classes. The most
common class, Class 2, uses 2.5 mW of power. The Bluetooth radio can also
be powered down when idle in order to save power. Bluetooth Low Energy
radios which provide a trade-off for lower power, lower data-rate
applications consume between 50% and 2% of the power of standard
Bluetooth radios [13].
Bluetooth technology provides short-range wireless connections between
devices. The latest version of the Bluetooth standard is Version 4.1, also
known as Bluetooth SMART. Bluetooth is currently available in two forms:
Basic Rate and Low Energy. Basic Rate allows for the following data transfer
rates: 721.2 kbps for Basic Rate data communications, 2.1 Mbps for
Enhanced Data Rate data communications, and up to 54 Mbps using 802.11
5
AMP. Bluetooth Low Energy features lower power consumption, lower cost
and lower complexity. It is optimal for applications with low data rates and
short transmission periods. These two forms are interoperable.
Bluetooth Basic Rate operates in the unlicensed ISM band at 2.4 GHz. In
order to avoid interference and fading, the tran sceiver utilizes frequency
hopping. Basic Rate utilizes shaped, binary frequency modulation. Bluetooth
piconets are formed which are synchronized to one master clock and a
single frequency hopping pattern. These piconets utilize time division
multiple access and time division duplex. Physical links are formed between
the master device and each slave device but not between slave devices.
Bluetooth Low Energy also operated in the unlicensed ISM band at 2.4
GHz. BLE also utilizes frequency hopping and a shape d, binary frequency
modulation. For multiple access, Bluetooth Low Energy utilizes frequency
division multiple access as well as time division multiple access. As in Basic
Rate, devices form piconets comprised of a single master and multiple
slaves. In Low Energy, slaves can have physical links to multiple masters
simultaneously.
Bluetooth Low Energy and Basic Rate both contain methods to avoid
frequencies in use by interfering devices. A third operating type is AMPS.
Bluetooth devices communicate and crea te a connection utilizing the Basic
Rate/Enhanced Data Rate radio. This initial connection can be utilized to
discover the AMP capabilities of the other device. When both devices contain
AMP capability, data traffic can be transferred to the AMP radios . [14]
NFC:
NFC, near field communication, enables wireless two -way interactions
between devices. Some uses of NFC include financial end -point transactions,
transfer of digital content, and setup of other wireless connections between
devices. NFC utilizes the existing RFID standards in use for contactless
cards. The range of NFC is less than or equal to 4 centimeters with a
maximum data rate of 424 kbps [15]. NFC technology operates at a center
frequency of 13.56 MHz. NFC utilizes magnetic induction between two loop
antennas for it physical medium.
The standards utilized in NFC include ISO/IEC 18092, ISO/IEC 14443 -2, 3,
4, and JIS X6319-4 [16]. NFC is a combination of three different operating
modes. Peer-to-peer mode allows two devices to connect to one another in
close proximity and exchange data. Android Beam is one technology which
utilizes this mode. Reader, writer mode allows the NFC device to read/write
passive NFC tags.
Card emulation mode allows an NFC device to act like a
passive NFC card to be accessed by an e xternal NFC card reader. [17][18]
ANT+:
ANT+ is a standard for the formation of wireless sensor networks. The
protocol operates in the unlicensed 2.4 GHz ISM band. ANT networks can be
formed according to a number of different types of topologies (peer -to-peer,
mesh, star, tree, etc.). All nodes within a network can communicate with
one another. ANT supports 125 different frequency channels. [19]
6
In order to maintain interoperability between devices, ANT defines a
number of different profile types. These pro file types specify the data
format, and communication parameters for that device. Devices can also
have multiple profiles in order to operate with other devices with different
profiles. Some examples of profiles are Speed and distance monitors, heart
rate monitor, weight scale, bike power sensor, bike speed and cadence
sensors, temperature sensors and fitness equipment data sensors. ANT can
be implemented in a single microcontroller controlled by the host over a
serial interface. A pairing mechanism is util ized to establish the connections
between ANT devices. [20]
References:
[1] NI Sensor Terminology, Joseph J Carr, John M Brown . Introduction to
Biomedical Equipment Technology, third edition. Sourced from:
http://zone.ni.com/devzone/cda/ph/p/id/227
[2] Sensing Orientation - Workshop 3 , Aatish Bhatia. Rutgers University,
Department of Physics. Sourced from:
http://physics.rutgers.edu/~aatish/teach/srr/workshop3.pdf
[3] The Hardware System, Daniel J Pack, Steven F. Barrett . Microcontroller
Theory and Applications, second edition . pgs 167-168.
[4] Donald A. Norman. The Design of Everyday Things. pgs 51.
[5] Google Services. Google Android Development. Sourced from:
http://developer.android.com/google/gcm/gcm.html
[6] Mobile Application Development: Web vs Native. Andre Charland, Brian
Leroux. Communications of the ACM, Vol. 54 No. 5, Pages 49 -53 Sourced
from http://cacm.acm.org/magazines/2011/5/107700-mobile-applicationdevelopment/fulltext
[7] What Customers Want. Carolyn Heller Baird, Gautam Parasnis. From Social
Media to Social CRM . Sourced from: http://www.ibm.com/common/ssi/cgibin/ssialias?infotype=PM&subtype=XB&appname=GBSE_GB_TI_USEN&htmlfi
d=GBE03391USEN&attachment=GBE03391USEN.PDF
[8] Reinventing the Customer Relationship. Carolyn Heller Baird, Gautam
Parasnis. From Social Media to Social CRM . Sourced from: http://www935.ibm.com/services/us/gbs/alliances/microsoft/images/GBE03416USEN.PD
F
[9] Human Engineering. Department of Defense. Design Criteria
Standard. Sourced from: http://www.taproot.com/content/wpcontent/uploads/2012/04/MIL-STD-1472G.pdf
[10] Eric Ries. The Lean Startup.
[11] A Guide to Distributing Xamarin.iOS Applications. Publishing to the App
Store. Sourced from:
http://docs.xamarin.com/guides/ios/deployment,_testing,_and_metrics/app_
distribution_overview/publishing_to_the_app_store/
7
[12]Tools: Publishing Overview. Google Android Development. Sourced from:
http://developer.android.com/tools/publishing/publishing_overview.html
[13] Bluetooth Special Interest Group, Bluetooth Basics, Sourced from
http://www.bluetooth.com/Pages/Basics.aspx, accessed 2/19/2014
[14] Specification of the Bluetooth System, BLUETOOTH SPECIFICAT ION
Version 4.1, 2013, Sourced from:
https://www.bluetooth.org/DocMan/handlers/DownloadDoc.ashx?doc_id=282
159, accessed 2/19/2014
[15] NFC Forum, About the Technology, Sourced from http://nfcforum.org/what-is-nfc/about-the-technology/
[16] Connection Handover- Technical Specification, Connection Handover 1.2
2010-07-07, NFC Forum
[17] NFC Forum, NFC Forum Specification Architecture, Sourced from
http://nfc-forum.org/our-work/specifications-and-applicationdocuments/specifications/
[18] Android Developers, Near Field Communication API Guide, Sourced from
http://developer.android.com/guide/topics/connectivity/nfc/index.html
[19] ANT Message Protocol and Usage, ANT Rev 5.0, Sourced from
http://www.thisisant.com
[20] ANT+, ANT Basics, Sourced from
http://www.thisisant.com/developer/ant/ant -basics/
8
Download