Giter Club home page Giter Club logo

sensohapt's Introduction

SensoHapt

Description

SensoHapt is an application targeted at providing an easy-to-use experiment environment for performing experiments involving 3DSystems haptic devices and ATI force sensors with stereoscopic 3D support.

The application was developed using the Visual Studio 2015 IDE in the C++/CLI programming language.

Experiment configuration

Experiments are configured using a .xml file. With possible elements being experiment, trial, event and trial features with their corresponding attributes. (see given ExperimentConfig.xml for more help)

Build requirements

We recommend to open the solution in Visual Studio 2015. The library paths are configured for a x86 build, so make sure you build targeting this architecture or change the library paths to x64 equivalents.

Make sure the OpenHaptics 3.5 toolkit (update: compiled libs added to repo because link is down) and OpenHaptics Phantom Device Driver v5.1.7 and ATICombinedDAQFT .NET Class Library v1.0.4.2 are installed on the build machine.

  • No hardware build (debug purposes): make sure 'NO_HARDWARE_DEBUG' is defined in stdafx.h at compile-time.

  • Hardware build (normal): make sure 'NO_HARDWARE_DEBUG' is NOT defined in stdafx.h at compile-time.

Using the application

After starting the application using the built executable, the application will load the last given configuration .xml if applicable. Otherwise, it will ask the user to select one using the Load Experiment button.

An overview of the configuration belonging to the .xml is provided using a tree-view on the main window.

The number of current experiment subject can be put in using the number counter on the main window.

Users can configure output paths and hardware details using the Settings-window accessed by the Settings-button on the main window.

After pushing the Run-button, the experiment will start. After completion, the main window will reappear, giving the possibility to redo the experiment.

Settings

  • Haptic Device Name: name of the haptic device as is recognized by the 3DSystems Phantom HD drivers

  • DAQ Name: name of the used ATI DAQ as is recognized by DAQ software (like NIDAQ)

  • Calibration files: files containing the calibration matrices for the transducers (look at given FT8568.cal and FT8569.cal files for more help)

  • Output paths: paths specifying output folders for the experimental data .csv's

Output files

Experimental data is output in 3 files:

  • Answers: .csv containing the answers of the subject belonging to an experiment run

  • TrialData: .csv containing periodical measurements (period given by sampling rate) of haptic/force sensor measurements for further analyzation.

  • ExperimentDetails: .csv containing information about the past experiment (which trials of the .xml config where used in what order) (only important when random_enabled in .xml config file)

If an output file with the same subject of the same experiment already exists, it will be overwritten.

Licensing

This project was inspired by an existing program made by NihonBinary Co.

This software is based on pugixml library (http://pugixml.org) distributed under the MIT License. pugixml is Copyright (C) 2006-2018 Arseny Kapoulkine.

This software uses GLUT. GLUT is Copyright (c) Mark J. Kilgard, 1996. Repo

This software uses the OpenHaptics 3.5 toolkit for educational purposes License Agreement

ATICombinedDAQFT .NET Class Library is distributed under the MIT License

This software uses DirectSound Beep published in the Creative Commons public domain

sensohapt's People

Contributors

eliasstalpaert avatar eliass98 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.