Kinarm | Interactive Robotics Brain Injury Research

  • Products
  • Clinical Applications
  • News
  • Support
  • About Us
  • Contact

Mobile nav

Task Tags Advanced

Show Target for 1 Frame on the Subject Display

Posted on Aug 6, 2020

This task is designed to show a target for a single frame on the subject display. The algorithm should work properly for any refresh rate on the subject display. The model is extensively commented with the details of the algorithm.

The task is compiled for MATLAB 2015a SP1 and Dexterit-E 3.7.

Visualization of Equations of Motion Parameters

Posted on Aug 6, 2020

This is a demo on how to access some of the data about the robots (link lengths, angles, positions of hand, elbow, and shoulder) in real time during a task. The task will draw the data on the subject display in real time to show what the link lengths, angles, positions of hand, elbow, and shoulder are. It is a real time visualization of Fig 7-1 Equations of Motion Parameters from the Dexterit-E 3.7 User Guide.

As well, the task demonstrates the use of moving targets, targets with changing labels, and the path target type, new in Dexterit-E 3.7.

The task is compiled in MATLAB 2013a and Dexterit-E 3.7 and will not work on earlier Dexterit-E versions.

Hand Trail

Posted on Aug 6, 2020

This is a task that will demonstrate the use of path targets, new in Dexterit-E 3.7. The task will draw a trail that will follow hand movement.

Compiled in MATLAB 2013a and Dexterit-E 3.7 and will not work on earlier Dexterit-E versions.

Coherent Dots Discrimination Task

Posted on Aug 6, 2020

This demonstration task is intended to show the use of the repeat target type, new in Dexterit-E 3.7, and is based on the ideas presented in:

Britten, Kenneth H., Michael N. Shadlen, William T. Newsome, and J. Anthony Movshon. “The analysis of visual motion: a comparison of neuronal and psychophysical performance.” Journal of Neuroscience 12, no. 12 (1992): 4745-4765.

Pilly, Praveen K., and Aaron R. Seitz. “What a difference a parameter makes: A psychophysical comparison of random dot motion algorithms.” Vision research 49, no. 13 (2009): 1599-1612.

This task was compiled in MATLAB 2013a and Dexterit-E 3.7 and will not work on earlier Dexterit-E versions.

Saving Data at 2 kHz

Posted on Aug 6, 2020

This task will demonstrate how to save data at 2 kHz in a Kinarm task (which saves data at 1 kHz). The task will generate a 2 kHz signal that counts from 0 and splits the task into 2 signals (the unmodified signal and another signal that is delayed by 1/2 ms). By saving both signals, we sample at 2 kHz.

Also included is a MATLAB script read_2kHz.m that will recombine the two separate signals into the original 2 kHz signal generated in the model.

Compiled in MATLAB 2013a and Dexterit-E 3.6.4.

KINVASION!

Posted on Aug 6, 2020

This is a task written by Ethan Heming, a Ph.D. canditate in Steve Scott’s lab. Kinarm would like to thank Ethan for allowing us to post his task! This is easily the most sophisticated task program I have seen. This game really stretches what can be done with Simulink, Stateflow and indeed Dexterit-E.

This task requires a bilateral Kinarm End-Point robot with force-torque sensors.

The object of this game is to destroy as many enemies as possible on each level. You control a ship represented by a green bar between your hands. The thickness of this line shows your ship’s health. Any enemies or enemy shots that hit this bar reduce your health and the game ends when ship has no health left. If you get hit there will be a haptic response (i.e. you will feel it)! At each handle you have a “gun” that fire perpendicular to the green health bar. They are fired by ’tilting’ robot handle (applying a pitch or roll torque). The farther apart your hands are, the faster your guns recharge, but the larger a target you present to enemies.

At the start of each level you can buy upgrades to your guns and shields by moving the cursor to the desired selection and torquing on the handle. There are also addition options such as auto-cannon or bombs. During a level you can catch coins to earn money to buy things. You also earn coins by killing enemy ships.

Some extra special features are:

If you have an End-Point robot with force plates then stomping on the plate will release a bomb if you have purchased that upgrade.

I have compiled this task for Dexterit-E 3.5.2 and MATLAB 2013a.

Have fun!

Image Display Spring

Posted on Aug 6, 2020

This isn’t really a task per se, it’s really just a demonstration of how to dynamically manipulate an image and use forces. When you start the task an image of a spring will be displayed between the hands. As you try to move your hands apart or together you will feel a spring trying to hold you at one distance. The task will work on a Kinarm Exoskeleton or EP robot.

The task was built for Dexterit-E 3.5 and MATLAB 2013a.

Note: This is a much improved version of the task. This has been cleaned up substantially since the first version.

Visuomotor Rotation Task

Posted on Aug 6, 2020

This task is provided to demonstrate how to create a visuomotor rotation task.

This task also provides an example of a “persistent” variable in embedded MATLAB (see the Calculate_Desired_Rotation function with /Visual_Rotation/Triggered Subsystem/).

Task was built using MATLAB 2013a and Dex 3.5

Hundreds of Background Targets

Posted on Jul 14, 2020

There is an example of how to create background targets from your target table in the background target example task. That version shows 10 targets at a time. One thing you may have noticed with that example is that the targets show up on the screen in order one at a time and they each take 1/60th of a second to show. This is because your task program needs to wait to ensure each new background target has been accepted. This works reasonably well for up to 60 targets because that will only take ~1s to send all targets.

This example demonstrates several concepts:
Dynamically creating large numbers of VCodes
Sending those VCodes in blocks (in this case 30 at a time)
Adding extra Stateflow charts to you model
Calling Matlab from Stateflow

What this example does specifically is:
Take in one “large” rectangular VCode, one small rectangular “tile” VCode, a number of tiles in the X and Y directions.
Creates X * Y “tile” VCodes that will completely cover the space defined by the “large” VCode
Turns on all of the “tiles” 30 at a time
Waits a specified duration
Turns off all the “tiles” 30 at a time

There is no interaction with the tiles, extending this model to interact with the tiles would not be hard. Limitations of the example are:

Up to 500 targets can be created (read comments in the model for how to make this larger)
Up to 30 targets at a time are sent (read comments in the model for how to make this larger)
All targets are assumed to be rectangular.

You can watch the shapes fill in with tiles. An easy extension to this would be to display a large black target over top of the permanent targets while they are being filled in and remove the black target when the tiling is done.

This was made with MATLAB 2013a and compiled for Dex 3.5.

Play Sound File in Real-time

Posted on Jul 14, 2020

The purpose of this task is to demonstrate how to produce sounds in real-time using analog outputs as part of Kinarm Lab.

For an alternatively method that does NOT play sounds in real-time, but instead works through the Dexterit-E computer, please see the other sample task entitled Tone player – non real-time

This task produces sounds by sending a pre-defined waveform over one analog channel output. If that output is connected to a speaker, then the user will hear the sound.

In order to make sounds in real-time, the following are required:

  • one or more analog outputs connected to the Robot computer (e.g. via a PCI card such as NI-6229 connected to a BNC-2090A panel)
    • You will need one analog channel for each independent speaker
  • speakers with built-in amplifiers (e.g. headphones, or computer speakers)
  • method to connect the analog output(s) to the speaker(s)
    • e.g. if connecting two channels of a BNC-2090A panel to speakers that have a single 3.5 mm stereo jack, the following would work:
      • 2 BNC to RCA/phono jacks – e.g. Newark (54M7978) or Digikey (367-1013-ND)
      • An adapter with 2 RCA/phone plugs to a single 3.5 mm stereo jack – e.g. from Radioshack or the Source
  • vector containing the waveform(s) of the desired sound (e.g. download one from the internet, record one yourself, etc)
  • MATLAB R2015a is recommended, but not necessary: because Task Programs are run at 4 kHz for R2015a and later, vs 2 kHz for R2013a and prior, using R2015a doubles the frequency range of sounds that are reproduceable

How to use this task:

  1. process the desired sound using the attached processWaveformForKINARM.m
    • please read the comments in the code for how to do use this script
    • a sample waveform of a piano keyboard is included
  2. connect your speaker(s) to the analog output(s) and turn the speakers on
    • the sample code in this example uses a single analog output (DAC0OUT) of a PCI-6229 card
    • Note: if you have a different analog output card, you will need to modify the task to use the Simulink block corresponding to your card
  3. build the task and run it
    • during the build process, the sound waveform becomes embedded in the sample code. So if a different waveform is required, the Task Program will have to be re-built.

This task was built using R2015a SP1, and was compiled for Dexterit-E 3.6.2

  • 1
  • 2
  • Next Page »

Questions about Kinarm products?

Please feel free to contact us, we’d be happy to help.

Contact Us

Dexterit-E Explorer

View any Dexterit-E exam file. FREE to Download!

Learn More

KST Summary

Our Kinarm Standard Tests enable clinical researchers to perform precise neurological assessment.

Learn More

Products

  • Platform Comparison
  • Kinarm Exoskeleton Lab
  • Kinarm End-Point Lab
  • Kinarm Standard Tests
  • Dexterit-E
  • Dexterit-E Explorer
  • NHP Kinarm Exoskeleton Lab

Clinical Applications

  • Clinical Applications
    • Stroke and TIA
    • Traumatic Brain Injury (TBI)
    • Neurological Disease
    • Pediatric
    • Primarily Non-Neurological
  • Clinical Research Sites
  • Publications

News

  • Kinarm News
  • Events
    • Neuroscience
    • Kinarm Camp
  • Product Notices
  • @KinarmLab Twitter Feed
  • Open Jobs

Support

  • Kinarm Help & Support
  • Installing & Maintaining Your Kinarm Lab
  • User Guides & Documentation
  • Software Downloads
  • Creating Custom Tasks
  • Sample Custom Tasks
  • Training Videos
  • Q&A Forum

About Us

  • About Us
  • Our People
  • Quality
  • Supplier Requirements
  • End-User License Agreement
  • Intellectual Property
  • Privacy & Terms

Contact

  • Contact Kinarm
    • International Sales Agents
  • Request an Account
  • Login
footer-logo

140 Railway St. Kingston, ON K7K 2L9 Canada Toll Free: (888) 533-4393 Phone: (613) 507-4393 info@kinarm.com

© Copyright BKIN Technologies. All Rights Reserved

Quality | Privacy Policy | Web design/development by 1dea Design + Media Inc.