What is RevMetrix

Abstract

The RevMetrix project is a project that seeks to capture a bowling ball’s motion as it travels down a lane. The project is based on two components developed initially by Professor Hake and Dr. Babcock. The first is the SmartDot module, developed by Professor Hake. The SmartDot module is a piece of hardware that sits inside the finger insert of the bowling ball. The next component is the Ciclopes software. Ciclopes is a motion detection software that can track and display the path traveled by a bowling ball with an uploaded video of a bowling ball shot. The RevMetrix team is building a device called a Ball Spinner. A Ball Spinner is a bowling analysis tool that recreates the movement and rotation of a bowling ball during a game. The bowling ball sits in an enclosure where it is pressed against three motors, allowing it to spin in three orthogonal axes. Users can simulate shots through an application interface by entering input parameters for the shot, where these parameters are sent to the Ball Spinner, and the motors move the bowling ball as if it were actually on a bowling lane. Complex physics equations will account for the input parameters and the other external conditions to calculate instructions for the motors to move the ball as realistically as possible. A SmartDot module that resides in the ball allows users to visualize what it would be doing if it moved on a lane and store shots for later replaying/analyzing previous shots. In this paper, we will provide more context behind the RevMetrix project and any important concepts needed to understand our work, go over both the design and the implementation of each of the aspects of our project, and discuss any future work that still needs to be completed for the project.

Introduction

The RevMetrix project seeks to provide its users with a set of hardware and software to capture a bowling ball’s internal and external metrics. The approach to achieving this goal was to design a device capable of driving a bowling ball in three orthogonal axes. Accompanying this device will be a controller module capable of controlling the motors on the device and communicating with an application. This application provides users with an interface for creating simulated shots, where the users can enter parameters representing shot dynamics. The controller module will then be sent motor instructions from the application, based on kinematic models, using the parameters combined with other environment factors. The controller will then drive the physical device, where simultaneously, the application will display a simulation representing what is happening on the physical device using sensor data returned from a piece of hardware residing within the finger insert of the bowling ball. Thus, a significant focus will be on ensuring the quality and reliability of this module through thorough testing and validation. Each of the components that allow our system to fulfill these requirements are described below: Ball Spinner Controller: The communication module responsible for facilitating communication between the Ball Spinner Application and the Ball Spinner device. Instructions from the application can be sent to the Ball Spinner from the Ball Spinner Controller, as well as SmartDot feedback data that can be sent back to the application. Ball Spinner Application: Software that can be used to simulate a bowling shot via the Ball Spinner device. Data is collected representing the dynamics of the simulated shot from the SmartDot module residing on the bowling ball. The Ball Spinner Application will facilitate communication with the Ball Spinner device and the SmartDot module through a TCP connection with the Ball Spinner Controller. Ball Spinner: The enclosed physical device that will simulate the bowling balls movement based on user input from the application. The Ball Spinner will contain motors that drive the ball, as specified by the motor instructions sent by the Ball Spinner Controller. SmartDot Module: Device that contains an embedded accelerometer, gyroscope, magnetometer, and ambient light sensor. This device will be placed within the bowling ball, and will send data collected from the sensors back to the Ball Spinner Controller, to then be sent to the application.

The Problem

The problem our system addresses is the lack of calibration and testing environments for the SmartDot. The future SmartDot module device and the creation of the testing environment for the future SmartDot module are integral requirements for this project as well. The system will also provide functionality to allow a user to analyze and review previous shot data, enabling them to leverage our platform to evaluate the effects of various factors on a bowling shot. Since the Ball Spinner device uses physical motors to drive the ball, we must ensure that the instructions we send to the motors move the ball to the specified speed. Since the SmartDot module is still under development, once the Ball Spinner is calibrated, this will also foster a testing environment for Professor Hake to test the module’s functionality.