I’m interested in building a reaching task that provides some feedback when the cursor has entered the target, similar to the collision felt in the Object Hit standard task. What would be the simplest way to achieve this?
What we do in the Spatial Span task to register touching a target is 2 short perturbations. The perturbations are of equal magnitude, but in opposite directions. i.e. a short small bump left followed by an equal bump right. This leaves the hand in the same final position and feels reasonable to the subject.
All the best,
Off the top of my head, there are a couple of ways to manage the double bump. First, it’s important to know how the perturbation blocks work. If you look in the task library forum there is an example of a perturbation. The key is that the perturbation block does not actually create forces, it only helps scale another load (often a constant load) so that it feels like a perturbation.
One way to accomplish what you want is:
Create a new sub-system (otherwise this will get messy in your model’s main level)
In the sub-system:
Make inputs to the sub-system for the load rows and trigger event, make and output for the created loads
Create a new state flow chart that has a trigger input of the global clock (just like the trial control)
Add 2 perturbation blocks and 2 constant load blocks (one set for each direction of bump)
In stateflow have a state that waits around for the perturbation trigger
When the trigger is fired send load 1 to one of the perturbation/constant load sets
In state flow look at the load rows to figure out how long to wait for the perturbation to complete and wait that long
When the first perturbation is done send a perturbation trigger to the second set of perturbation/constant blocks
Wait for the second perturbation to finish (like step 6) , then go back to waiting for a perturbation trigger again.
That isn’t quite a complete description of what you need to do, but it is a good general approach. Please let me know if you have more questions.