Electronic Components (Brief Description)
Force Sensing Resistors (FSRs)
The resistances of FSRs decrease as they are placed under greater mechanical loads. The FSRs used are made of piezoelectric materials. Piezoelectric materials become more conductive to current when they are mechanically deformed. Larger deformations cause larger changes in resistance and allow for greater current flow. However, there is a limit to how much current can flow through them and as a result, the current output will decrease for relatively large loads.
Interlink Force Sensing Resistor (FSR)
The resolution of this sensor is much higher for small forces. The relationship between the force and sensor signal are approximately linear for the range of 0 to 2.2lb forces according to the manufacturer. After this range, the signal output saturates and diverges to 5V for all load forces greater than 2.2lb.
Flexiforce Force Sensing Resistor (FSR)
The Interlink sensor does not provide a high resolution for values greater than 2.2lbs. For applications requiring measurement of greater loads, the interlink FSR becomes useless. The Flexiforce FSR has a linear relationship between voltage and load applied for a range of 0 to 25lbs. The range of voltages is between 0 and 5V. Although it can measure a wider range of forces, this range is not needed in the bicep contraction application. The range of forces that can be measured is much beyond the range that the patient is able to generate. It is also three times the price and has a lower resolution.
Flexiforce Flex Sensor
The flexiforce flex sensor is a piezoelectric sensor that changes resistance when mechanically deformed due to bending. It alternates between 20kOhm and 10kOhm. It was mechanically deformed at different angles to obtain the Voltage-bend angle relationship. This signal was very noisy and provides a range of value outputs rather than discrete values.
Arduino Mega 2560 Microcontroller
The Arduino mega 2560 is a programmable microcontroller capable of being powered by a USB or a 9V battery. The microcontroller can control motor speed and direction through pulse width modulation (PWM). This alternates the current that is input into the motors. Programming the microcontroller in its own Arduino software allows for control of signals and outputs by conditional commands. PWM output ports can control servo motors. PWM outputs can be generated through programming of the microcontroller. Inputs can be used to generate desired PWM outputs. Duty cycle of the PWM output determines speed and direction. A 100% PWM duty cycle commands servos to run at full speed in one direction. A 0% duty cycle commands servos to run at full speed in the opposite direction. A 50% duty cycle commands servo motors to stay at rest.
Arduino board also comes with a 5V built in Power supply and ground reference. It can be used to power prototype breadboards that are in use with the Arduino. This is useful since it allows for the voltage and ground reference of analog inputs going into the board to be at the same range as the Arduino. The input ports have a voltage limit of 5V. Using the built in power supply prevents inputs from exceeding this range.
Pittman DC Motor
The motor used is Pittman DC motor with 30 lb-in of torque and a 12V DC requirement for motor operation. The maximum torque the shaft can take is 2700 lb-in. Two motors were used, one for the shoulder, the other for the elbow.
Sabertoothc 2x5 RC Dual Motor Controller
RC motor controllers can receive PWM signals and use them to control the speeds and directions of DC motors. Since the Arduino is limited to servo motors, this motor controller is a necessary interface between the Arduino microcontrollers and DC motors. Its recommended power supply operating range is 12V and it can control up to two DC motors through PWM inputs.
The resistances of FSRs decrease as they are placed under greater mechanical loads. The FSRs used are made of piezoelectric materials. Piezoelectric materials become more conductive to current when they are mechanically deformed. Larger deformations cause larger changes in resistance and allow for greater current flow. However, there is a limit to how much current can flow through them and as a result, the current output will decrease for relatively large loads.
Interlink Force Sensing Resistor (FSR)
The resolution of this sensor is much higher for small forces. The relationship between the force and sensor signal are approximately linear for the range of 0 to 2.2lb forces according to the manufacturer. After this range, the signal output saturates and diverges to 5V for all load forces greater than 2.2lb.
Flexiforce Force Sensing Resistor (FSR)
The Interlink sensor does not provide a high resolution for values greater than 2.2lbs. For applications requiring measurement of greater loads, the interlink FSR becomes useless. The Flexiforce FSR has a linear relationship between voltage and load applied for a range of 0 to 25lbs. The range of voltages is between 0 and 5V. Although it can measure a wider range of forces, this range is not needed in the bicep contraction application. The range of forces that can be measured is much beyond the range that the patient is able to generate. It is also three times the price and has a lower resolution.
Flexiforce Flex Sensor
The flexiforce flex sensor is a piezoelectric sensor that changes resistance when mechanically deformed due to bending. It alternates between 20kOhm and 10kOhm. It was mechanically deformed at different angles to obtain the Voltage-bend angle relationship. This signal was very noisy and provides a range of value outputs rather than discrete values.
Arduino Mega 2560 Microcontroller
The Arduino mega 2560 is a programmable microcontroller capable of being powered by a USB or a 9V battery. The microcontroller can control motor speed and direction through pulse width modulation (PWM). This alternates the current that is input into the motors. Programming the microcontroller in its own Arduino software allows for control of signals and outputs by conditional commands. PWM output ports can control servo motors. PWM outputs can be generated through programming of the microcontroller. Inputs can be used to generate desired PWM outputs. Duty cycle of the PWM output determines speed and direction. A 100% PWM duty cycle commands servos to run at full speed in one direction. A 0% duty cycle commands servos to run at full speed in the opposite direction. A 50% duty cycle commands servo motors to stay at rest.
Arduino board also comes with a 5V built in Power supply and ground reference. It can be used to power prototype breadboards that are in use with the Arduino. This is useful since it allows for the voltage and ground reference of analog inputs going into the board to be at the same range as the Arduino. The input ports have a voltage limit of 5V. Using the built in power supply prevents inputs from exceeding this range.
Pittman DC Motor
The motor used is Pittman DC motor with 30 lb-in of torque and a 12V DC requirement for motor operation. The maximum torque the shaft can take is 2700 lb-in. Two motors were used, one for the shoulder, the other for the elbow.
Sabertoothc 2x5 RC Dual Motor Controller
RC motor controllers can receive PWM signals and use them to control the speeds and directions of DC motors. Since the Arduino is limited to servo motors, this motor controller is a necessary interface between the Arduino microcontrollers and DC motors. Its recommended power supply operating range is 12V and it can control up to two DC motors through PWM inputs.