14
Swish Sleeve Software Design Narrative Team 7: Stephen MacNeil, Michael Kobit, Sriharsh Achukola, Augustus Hong 1 Team 7 - Swish Sleeve

Swish Sleeve Software Design Narrative

  • Upload
    kassia

  • View
    33

  • Download
    2

Embed Size (px)

DESCRIPTION

Swish Sleeve Software Design Narrative. Team 7: Stephen MacNeil, Michael Kobit , Sriharsh Achukola, Augustus Hong. Project Overview. - PowerPoint PPT Presentation

Citation preview

Page 1: Swish Sleeve Software Design Narrative

Swish SleeveSoftware Design Narrative

Team 7: Stephen MacNeil,

Michael Kobit, Sriharsh Achukola,

Augustus Hong

1Team 7 - Swish Sleeve

Page 2: Swish Sleeve Software Design Narrative

Project Overview

We would like to design and implement a series of sensors that can be attached to the arm with Velcro straps. Basketball players would wear these straps to track their motion, without the use of cameras. This prevents current occlusion issues inherent in optical motion capture. The sleeve can be extended to other sports as well and beyond the scope of this class could be extended to an entire suit which could monitor sports performance in athletes. With the help of OpenGL the movement can be recreated in simulation.

2Team 7 - Swish Sleeve

Page 3: Swish Sleeve Software Design Narrative

Basic Idea

3Team 7 - Swish Sleeve

Page 4: Swish Sleeve Software Design Narrative

4Team 7 - Swish Sleeve

Block Diagram

Page 5: Swish Sleeve Software Design Narrative

Software Overview

• PIC32, Embedded C• 80 MHz clock• Sampling of IMU’s is 100 Hz• Event-driven/polling

Every .01 s the IMU’s will be polled and data transmitted to base station via XBee

Every 5 s the LCD screen will be updated Every 30 s the Battery monitor will be polled

• Atom board (base station) – C++ and OpenGL

Page 6: Swish Sleeve Software Design Narrative

Main Loop – Waist Unit

Receive IMU Data

Apply Kalman Filter and update states

.01 s gone by?

5 s gone by? Update LCD display

30 s gone by?

Update LCD display

Transmit data to base

Yes

Yes

Yes

No

No

NoWait

Page 7: Swish Sleeve Software Design Narrative

Main Loop – Waist Unit

Read data transmitted from waist

Update 3D model

Time to Refresh? Yes

Draw 3D Image

Xbee waist data ready?

No

Wait

No

Yes

Page 8: Swish Sleeve Software Design Narrative

IMU and filtering

• Communicate with I2C up to 400 kHz clock• Data will be read every .01 s• X,y,z data each 2 bytes (both accel and gyro)• Kalman states for each IMU• X,y,z position• X,y,z velocity

• Update current state of each IMU based on measurement and past state

Page 9: Swish Sleeve Software Design Narrative

LCD

• Write and read mode• Enable Cycle Time – 400 ns

• Most instructions take 37 us• Clear display and return home take 1.52ms

• We will not use read functionality

Page 10: Swish Sleeve Software Design Narrative

Battery Monitor

• 1-wire interface• Remaining Active Absolute Capacity (RAAC)

[mAh]• 2 bytes

• Interface operation– Normal – 16 kbps => 2 bytes every .001 seconds– Overdrive – 140 kbps => 17.5 bytes every .001

seconds• Not extremely time critical, can read the bits

when the micro has time

Page 11: Swish Sleeve Software Design Narrative

XBee – Transfer• Configure XBee network ID and communication

channel to avoid receiving information from other modules in the lab

• Operate XBee in simple transparent mode• Baud Rate: 9600 bits/s• Serial data comes in on one end and comes out

the other• Code should be interrupt driven, to allow faster

data transfer rate• Transmit interrupts occur when XBee is asking for

more character to send

Page 12: Swish Sleeve Software Design Narrative

XBee – Receive

• Receiving XBee connected to the atom board through the XBee Explorer• USB interface

• FTDI drivers on PC allows treating USB connection as standard PC serial port

• Received data can then be obtained through the SerialPort class in C++

Page 13: Swish Sleeve Software Design Narrative

Atom Board – 3D Output

• Written in C++ and OpenGL• Atom board’s graphic support limits refresh

rate• Aiming for 15-30 frames per second• Refresh rate of less that 60 fps is visibly

noticeable

• Packets from XStick unpackaged and used to update 3D model

Page 14: Swish Sleeve Software Design Narrative

Questions?