WiiHab Test Creator Brandon Shrewsbury [email protected] University of West Georgia Seth Ringling [email protected] Harding University Dr. Aaron Striegel [email protected] University of Notre Dame Abstract WiiHabilitation utilizes the Wii balance board as a low cost replacement for commercial grade force plate sensors. It can become a tool to rehabilitate patients with center of balance issues. For this application to be effective it is important for the therapists to create balance tests specifically designed to work affected areas of the body. An application was developed to address these issues with scalability and ease of use in mind. I. Introduction Using the balance board as a replacement for force plate instruments in the Wiihab rehabilitation software it became clear that for the software to become effective, tests must be tailored to the individual circumstances of the affected patient. Each patient’s range of motion, cognitive abilities, mental, and physical handicaps could greatly influence the effectiveness of a standard testing system along with the metrics used to score such a system. The creation of an easy to use test creator crafted around the needs of both the therapist and the patient was required to create an effective set of tools to aid in the recovery process. It also became apparent that the ultimate goal of the project was to create an in-home solution, so all applications associated with Wiihab had to be user friendly to even the most novice users. II. Static and Dynamic Balance Tests Commercial force plate sensors employ two types of basic standing balance tests; static and dynamic. A static standing balance test consists of a patient trying to keep their center of balance within a predefined target area for a certain period of time. Depending on the patient’s abilities, the target may be smaller in size or the patient may be asked to stand on one foot. Dynamic balance tests consist of targets positioned in such a way that patients must change their center of balance to hover over the targets for a specified amount of time. Targets may or may not be on a moving track. After the time has elapsed, a new target appears. Each test is measured based on the time taken to complete each time on target or the maximum time the patient is able to stay inside the target. III. Previous Solution Previous projects implemented predefined tests built into the applications with varying degrees of complexity. Dynamic balance tests were limited to a set number of targets with preset locations and a predefined time on target requirement. The included static balance test was a predefined target in the center of the target area with no available customization. The Wiimote’s D-Pad was used to relocate a targets location on a target by target basis which did provide the therapist with the option to modify at run-time. This feature was a good add-on, but was cumbersome and was consequently not desirable as the sole option to position targets. IV. Our Solution WiiHab Test Creator is a WPF application that allows the therapist to tailor tests specifically to patient’s needs efficiently and effectively. Static balance tests can be created with targets set in any area of the balance board, with different shapes and sizes. Time on target can be set independently for each target. The application treats dynamic and static balance tests the same, meaning a dynamic test can be turned into a static and vice versa. The additional movement toolbar adds animations to the targets, creating dynamically moving targets - a step above the current functionality of previously created applications. To ensure simplicity, animation was restricted to horizontal or vertical directions only. A drag and drop system was used to place the targets within the balance board canvas with limits on where the targets could be placed as well as limits on how far the targets can travel if animation has been added. After targets are added to the canvas their properties can be modified using the properties panel. Each target is displayed in the target canvas as it is added to the target list, allowing the creator to see where the targets have been placed. Due to the application’s limitless bounds for number of allowable targets, the target opacity can be changed to allow users to view targets placed behind other targets. If a target is nested below the active target, the author can select the nested target within the target list in the test properties panel to bring the Z-index to the top. V. The User Interface The UI was broken into 6 Parts: Available Tests Panel, Test Settings & Created Targets Panel, Test Canvas Settings, Test Canvas, Target Properties, & Target Movement. An additional window is available to preview the selected test after creation. The UI was designed to be as simple to use as possible with several shortcuts built in. Each property field reacts to a mouse scroll, which speeds up the configuration of each target considerably. The targets themselves react to mouse over scroll actions which proportionally increase both height and width. Available Tests The available tests panel displays all the pre-created tests in the “/tests/” directory. Each test displays the Name and Last Modified properties of the tests. Additional Available fields include the author, description, and number of targets. Test Settings & Created Targets The test setting panel contains fields for the author, name, and description of the test. Each field requires unique data before the test can be saved. “Add Target” adds a target to the canvas and to the target list. “Delete Target” will delete the target from the canvas, delete it from the target list, and will reduce each target number by one. “Save Test” will check each field for valid data, check for at least one target, then write out an XML file to the “/tests” folder and add a new item to the tests list. “+” & “-“ will move targets up and down the target list, modifying the target numbers along the way. The target list contains each added target with its target number, shape type, time on target, dimensions, and the locations of the target. Additional fields available include fill, stroke size, stroke fill, opacity, movement direction, and movement distance. Test Canvas Settings The test canvas settings panel modifies the test canvas background. The timer can be set to “Off”, “Count Up”, or “Count Down”. Count down will stop the test if it reaches zero. Test Canvas The test canvas contains the background vector images, and the targets. Targets can be dragged and dropped within the target canvas. The animation guidelines are limited to the edges of the canvas as well. Target Properties The “Target Properties” panel was modeled after Adobe Flash MX’s properties panel. Each textbox can be modified using the scroll wheel. Width, Height, X, and Y values have minimum and maximum limits. The shape drop down box contains Circle and Rectangle options. Time on target has a maximum value of 30. The minimum of 0 allows patients to simply touch the target with the center of balance to move on to the next target in the test’s sequence. The drop-down boxes to the right contain fill color for the stroke and background. The first spinner box modifies the stroke thickness. The lower spinner box modifies the opacity of the target fill. Target Movement The animation panel allows the author to set the direction and distance of the target movement. The distance is limited to the bounds of the canvas. VI. Reading and Writing Tests WiiHab Test Creator uses XML Serialization / Deserialization to read and write tests to the disk. XML serialization allows applications to easily import the created tests and targets. Serialization allows for scalability and revision safety. In the event new fields are added to the test classes, old versions of the class will still be importable. The new fields will be null in the class and can be easily checked on import. Below is an example of an XML serialized test with a single target. <?xml version="1.0" encoding="utf-8" ?> <PatientTest> <name>Targets anim test</name> <description>Targets anim test</description> <testTargetList> <TargetData> <width>50</width> <height>50</height> <x_val>0</x_val> <y_val>0</y_val> <fill>Green</fill> <strokeFill>Black</strokeFill> <strokeSize>2</strokeSize> <shape>Ellipse</shape> <opacity>1</opacity> <timeOnTarget>0</timeOnTarget> <movementDirection>System.Windows.Controls.ComboBoxItem: Vertical</movementDirection> <movementDistance>100</movementDistance> <movementVectorPointA> <int>25</int> <int>-75</int> </movementVectorPointA> <movementVectorPointB> <int>25</int> <int>125</int> </movementVectorPointB> </TargetData> </testTargetList> <author>Brandon</author> <lastModified>2010-06-28T15:52:06.3000544-04:00</lastModified> <timeLength>300</timeLength> </PatientTest> VII. Conclusions and Future Work With scalability in mind it was decided to build the test creator application separately, as its own application, in hopes it would be easier to adapt to previous and future versions of rehabilitation software. With this new wave of rehabilitation software, the types of tests and the way they are presented will change greatly over the lifetime of the WiiHab project. The future versions will have to adapt to the needs of the therapists and the types of tests they would like to employ. Future test designs could include horizontal movement from one side of the board to the other while avoiding targets, or giving the patient a certain amount of time to move from one target to another, logging the amount of time it takes to go from target to target, or rating response time instead of the center of balance. Along with updating the application to work with new tests, ease of use features will be added to ensure even the novice users can fully operate the application, taking full advantage of all the customization features. Future versions will include the ability to set the angle of movement, import background images for the tests, and have the target list’s highlight color match the fill color of the selected test.
© Copyright 2026 Paperzz