Skip to content

nbaptist16/finpro

Repository files navigation

yampad_top

RSCLAB

Portable, Automatable, MRI-Compatible Tactile Stimulation Device


A device to aid the Robotics and Sensorimotor Control Lab’s efforts in improving our understanding of human somatosensory perception in their upper limbs



This research project contributed to the Robotics and Sensorimotor Control Lab’s efforts in improving our understanding of human somatosensory perception in their upper limbs. The overall project goal is to identify the reason for tactile perception deficits in individuals with stroke. My contribution to this project was to advance a proof-of-concept mechatronic device to one that could be used for pilot testing. My contributions to this project include developing the hardware and software to permit automated control of the mechanical stimuli applied to an individual’s fingertip. The system now includes, in addition to the actuator fabricated in the previous quarter, a pressure regulator, pressure sensor, PIC32-powered controller, and serial communication via a computer for automated control of and data collection from the device

Project completed as MSR Final Project '21



Quickstart:

Components

Electronics:
NNT digital pressure regulator
NITRA solenoid valve: 24 VDC, 3.0W
Murrelektronik solenoid valve cable (x2)
• Power adaptor: 24V, 4.8W
PIC32MX170F256B-50I/SP
MCP4922-E/P
DRV8256E Single Brushed DC Motor Driver Carrier (x2)
DC DC CONVERTER 5V 15W
ILI9341 2.8" SPI TFT LCD Display 240X320 Module
CSTLS8M00G53-B0
L4931CZ33-AP
Breadboard-friendly SPDT Slide Switch
• 1 uF capacitor (x3)
• 0.1 uF capacitor (x2)
• 10 uF capacitor
• 3.3 kΩ resistor
1.7 kΩ resistor
• 330 Ω resistor
• 4.7 uF capacitor
MPLAB® SNAP
FTDI Serial TTL-232 USB Cable
Micro USB cable
2 Position wire to board terminal block (x5)
• Male header pins (x14)
• Female header pins (x22)
• Jumper wires
Honeywell pressure sensor
Finpro PCB!
   • note: the gerber files are included in as CAMOutputs.zip. Please be sure to install Eagle for any adjustments of the .sch and .brd files.
Hardware:
1-1/4" Diameter Chemical-Resistant Slippery PTFE Rod (1')
2.62 mm Wide, 17.86 mm ID Oil-Resistant Buna-N O-Ring (pack of 25)
• California Air Tools Light & Quiet 1P1060S Portable Air Compressor
Firm polyurethane tubing for air and water, 1/8" ID, 1/4" OD
Polypropylene Push-to-Connect Tube Male Connector, 1/4" Outside Diam, 1/8 NPTF
• ¼” FNPT - ¼” Tru-Flate design T-style Plug
• SharkBite ¼” OD x ¼” MIP Male Adapter
Push-to-Connect Tube Fitting for AirStraight Connector, for 1/4" Tube OD (x10 or as needed)
Push-to-Connect Tube Fitting for AirTee Connector, for 1/4" Tube OD
• 1/8" Acrylic
• Acrylic adhesive

Note: unlinked items were either carried over from the previous project or purchased from Lemoi Ace Hardware

Assembly

Two roughly 2" long pieces of PTFE rod are first cut on the band saw to be cleaned and machined on the mill and lathe, one for the barrel, and another to be split into the piston and end cap. The dimensions of the above mentioned items are as follows:

barrel piston end

These items should then be assembled in the following fashion:

cylinder_asm

The acrylic sheet is then cut into pieces to assemble the controller box.

top bottom front back side

All pieces except for the back are adhered together with an acrylic adhesive. It is suggested to temporarily hold the pieces together with tape while they dry. The back piece is simply held on with a piece of tape to allow continued access to the screw terminals and the designated SNAP headers.


The mount portion of the hand interface is 3D printed due to its complex geometry. It is derived from the pad_slice SolidWorks part included in the ref folder. It is attached to a laser cut rail using plastic screws, washers, and nuts.

• PTFE Plastic ScrewExtreme-Temperature, Slotted

• Flat Head, 6-32 Thread, 1" Long

• Nylon Hex Nut6-32 Thread Size

• Nylon Plastic Washerfor M4 Screw Size, 4.3 mm ID, 9 mm OD, Off-White

• Nylon 6/6 Plastic Hex Standoff1/4" Hex, 2" Long, 6-32 Female Thread

These components were orderd from McMaster Carr, but were not included in the bill of materials as a revised version of the interface will be used instead.


Assembly

The tubing for the pneumatic system is connected as follows:

connections

Note: while the screen normally connects to the back of the pcb and all pcb components fit into the controller box, they are shown separately in this image for ease of understanding

These connections can also be interpreted from the following image:

pipeline

Finally, the pressure regulator, power supply, and solenoid valve are connected to the screw terminals as follows:

screw_terminals


Programming

Before any programming, please install MPLAB® X IDE to easily modify code, make, and program the device (PIC32).

After cloning the source code from the github repository, program the PIC32 using the main_main.c file.

For quick testing, you can change the following variables in main_main.c to achieve the corresponding effects:

variable value effect
LATBbits.LATB12 0 switch solenoid 0 on, solenoid 1 off
LATBbits.LATB12 1 switch solenoid 1 on, solenoid 0 off
OC4RS 1600 regulator duty cycle to low (low pressure output)
OC4RS 2000 regulator duty cycle to med (med pressure output)
OC4RS 3000 regulator duty cycle to low (low pressure output)

You can also write a fully automated time-based procedure by changing the above values over time in the main_main.c while loop.


To log the pressure data in real time, all you have to do is run Experiment-Monitor-Py/remyspeak.py while the controller is powered. It will log the data into Experiment-Monitor-Py/logpsi.csv.



And there you have it! Congratulations on your new portable, automatable, MRI-compatible tactile stimulation device!

About

finpro code collection pre-documentation era

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published