element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Members
    Members
    • Benefits of Membership
    • Achievement Levels
    • Members Area
    • Personal Blogs
    • Feedback and Support
    • What's New on element14
  • Learn
    Learn
    • Learning Center
    • eBooks
    • STEM Academy
    • Webinars, Training and Events
    • More
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • More
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • More
  • Products
    Products
    • Arduino
    • Dev Tools
    • Manufacturers
    • Raspberry Pi
    • RoadTests & Reviews
    • Avnet Boards Community
    • More
  • Store
    Store
    • Visit Your Store
    • Choose Another Store
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
Sudden Impact Wearables Design Challenge
  • Challenges & Projects
  • Design Challenges
  • Sudden Impact Wearables Design Challenge
  • More
  • Cancel
Sudden Impact Wearables Design Challenge
Blog EasyConfigure - Hardware Components
  • Blog
  • Forum
  • Documents
  • Events
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Blog Post Actions
  • Subscribe by email
  • More
  • Cancel
  • Share
  • Subscribe by email
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: tomaja
  • Date Created: 17 Dec 2014 1:45 PM Date Created
  • Views 128 views
  • Likes 3 likes
  • Comments 6 comments
  • mqtt
  • easy_configure
  • sudden_impact
  • esp8266
  • iot
  • analog_devices
Related
Recommended

EasyConfigure - Hardware Components

tomaja
tomaja
17 Dec 2014

Previous posts:

Sudden Impact Design Challenge - Modular/Configurable System Intro

 

 

Hardware Components

 

My plan is to make a modular and easy to configure prototype. It will also have to be accurate and should provide realtime sensor data.

In my initial post I explained my plan only in rough words. I will now try to be more elaborated about the hardware components.

 

1) Remote units

a) MCU and wireless connection

Remote units will be based on a small development module.

Until I receive my kit I will not make the final decision regarding the development board that I will use. ADuCM350 might be sufficient since it provides a powerful processor and plenty of GPIO pins but if that turns out to be a problem for whatever reason (it’s probably too big), I will select Arduino Pro Mini as it features small size and a lot of IO pins I can use. It’s based on a well-known MCU. It does not include USB to Serial converter, which is also a plus (decreases both size and unit price). Prototyping is easy using Arduino IDE.

For communication with central unit, cheap ESP8266 breakout board (ESP-03 variant) will be used. This is a Wi-Fi module made by Espressif. I selected a variant with no headers to make the smaller device and a ceramic antenna to make better transmission range. Some range tests were performed for this module and here's the result of one of them: https://www.youtube.com/watch?v=7BYdZ_24yg0#t=385. This should be good enough for almost any kind of sport field - for additional range, additional repeater access points could be setup in the field.

Remote units will be equipped with sensor modules connected using wires. If I get to the point that I need to communicate with some sensor wirelessly, BLE connection will be used. Connected sensors will be enumerated at startup and list of them will be published to central unit.

Figure 1. Remote unit

 

b) Sensors

I will use accelerometers, temperature sensors and heart rate monitor sensors.

My plan is to make them easy to attach/detach to/from the remote unit (using connectors).  If time allows, I will also include an ECG module.

 

c) Power Supply

LiFePo4 batteries will power the remote units (like this one: http://www.batteryspace.com/lifepo4-18650-battery-3-2v-1250mah-4a-rate-4-wh-rechargeable-battery.aspx). Batteries will be removable for charging. Final selection for batteries will be made after I make the power consumption estimate (didn’t consider that at this time).

 

d) Form Factor

Remote unit shape should also be configurable to some extent. The idea is to make the same device suitable for many sport disciplines. I plan to make the remote unit foldable so it can be made long and thin or short and thick (when folded):

 

Figure 1. Folded remote unit

 

 

2) Central unit

Central unit will be in charge of data collection. Remote units will talk to the central unit via Wi-Fi connection. This unit will run a MQTT broker to receive data from remote units. Sensor data will be dispatched to all subscribed clients (coach’s or assistants' phones and tablets). Sensor data will also be stored in the database too so it can be reviewed later.

BeagleBone Black or Raspberry Pi will serve as a central unit. Both of them should have more than enough computing power for this task.

 

3) Monitoring units

Almost any mobile phone or tablet device will be able to serve as a monitoring device. These devices will be equipped with an application that will enable them to display real-time sensor data in a convenient manner. They will also provide instant alerts when some alert criteria are met. If time allows, alert criteria will be configurable by each monitor user.

I will probably use Qt framework to develop a cross-platform application, since I’m already working on a similar application.

 

 

In my next post I will go into more details about software part of this project. Communication flow will also be explained.

 

Greetings,

Dragan

Anonymous

Top Comments

  • mcb1
    mcb1 over 7 years ago in reply to hlipka +4

    We have commercial alarm sending units at work.

    The time is centralised, and at each communication it sends the time, but inbetween they run on their own time, and stamp the alarms with the detection time…

  • DAB
    DAB over 7 years ago +2

    Hi Dragan,

     

    You might also want to set up a clock on the board to put your data sampling on a time base.

    That way, you can look the body fatigue issues along with impact.  There might be a correlation to injury…

  • hlipka
    hlipka over 7 years ago in reply to tomaja +1

    If your remote units are always in the transmission range to the central unit, this might be fine. Otherwise they would need to store some data and transmit it later on, then you need a timestamp. Also…

Parents
  • DAB
    DAB over 7 years ago

    Hi Dragan,

     

    You might also want to set up a clock on the board to put your data sampling on a time base.

    That way, you can look the body fatigue issues along with impact.  There might be a correlation to injury occurrence based upon fatigue factors.

     

    DAB

    • Cancel
    • Up +2 Down
    • Reply
    • More
    • Cancel
Comment
  • DAB
    DAB over 7 years ago

    Hi Dragan,

     

    You might also want to set up a clock on the board to put your data sampling on a time base.

    That way, you can look the body fatigue issues along with impact.  There might be a correlation to injury occurrence based upon fatigue factors.

     

    DAB

    • Cancel
    • Up +2 Down
    • Reply
    • More
    • Cancel
Children
  • tomaja
    tomaja over 7 years ago in reply to DAB

    Hi DAB,

     

    Thank you for your suggestion.

     

    What do you mean? Real time clock as additional module connected to each remote board?

    I was planning to use central unit time to assign the timestamp to each data sample. Do you think there's a problem with that?

     

    Dragan

    • Cancel
    • Up 0 Down
    • Reply
    • More
    • Cancel
  • hlipka
    hlipka over 7 years ago in reply to tomaja

    If your remote units are always in the transmission range to the central unit, this might be fine. Otherwise they would need to store some data and transmit it later on, then you need a timestamp. Also, when multiple devices are sending data streams, the central device might get overwhelmed and data might get out of sync.

    And MQTT as queue solution is not synchronous anyway...

    • Cancel
    • Up +1 Down
    • Reply
    • More
    • Cancel
  • mcb1
    mcb1 over 7 years ago in reply to hlipka

    We have commercial alarm sending units at work.

    The time is centralised, and at each communication it sends the time, but inbetween they run on their own time, and stamp the alarms with the detection time.

     

    You may be able to include the "detection time" (device time) and the "reception time" (central time) in the stored data.

    It may provide some additional information about the communication quality, and provide flags when comms has stopped for some reason.

     

    Mark

    • Cancel
    • Up +4 Down
    • Reply
    • More
    • Cancel
  • tomaja
    tomaja over 7 years ago in reply to hlipka

    Thanks for sharing your thoughts.

     

    I agree that adding RTC to remote devices will provide more possibilities so I will certainly include it in the final design.

     

    Well, to be honest I was hoping to use some existing and proven solution (like MQTT) instead of developing my own. I was hoping that it will be good enough for this task.


    Having up to 30 remote units running at a time should result in stable connections with no major delays (with 1-2Hz update frequency). Anyway, this will be very easy to simulate at an early point in development so I can switch to plan B if it turns out that BBB or RPi can't handle that traffic. 1 or 2 samples per second should be enough with additional transmissions in case certain criteria are met (e.g. accelerometers support interrupts).

     

    Dragan

    • Cancel
    • Up 0 Down
    • Reply
    • More
    • Cancel
  • tomaja
    tomaja over 7 years ago in reply to mcb1

    Mark, you also have a good point here!

    Having clock on the remote units (synchronized with central units time) will provide me with some insight about communication quality which I wouldn't have otherwise.

     

    Thanks for the idea!

    And thank you DAB for pointing it out in the first place.

     

    Dragan

    • Cancel
    • Up 0 Down
    • Reply
    • More
    • Cancel
Element14

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2022 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • Facebook
  • Twitter
  • linkedin
  • YouTube