Force Feedback control - Capstone project

In summary: Heat would be the biggest concern in an ordinary motor. I would suggest using one rated a few times the needed torque. I wouldn't worry about the magnetic stresses, they occur every time the motor starts. With a Gear Motor you have to use a low to moderate gear ratio when back-driving it due to the static friction of the motor bearings, brushes, and the higher speed gears. The high-ratio gear trains can not be back driven at all. The reason a potentiometer is used for feedback is they are dirt cheap; and many micro-controllers have a builtin Analog to Digital converter.In summary, the conversation is about
  • #1
MacLaddy
Gold Member
291
11
I'm attempting to design a force feedback system for my senior capstone project. It will consist of a single lever that is free to move along a single axis. Imagine a video game joystick, but one that only moves forward and back.
I need to mimic a given force profile along the stroke of the lever. It will always be somewhere between 4 and 10 N. The idea to accomplish this is by using simple gearing, a DC motor, an arduino for control, and a potentiometer for feedback.
My question is this. How does this type of control work with the small DC motor? If I apply current to the motor and hold it steady, or even reverse the direction it is trying to go, will that damage the motor? Is there a better system for this application?

Any information is appreciated.

Thanks,
Mac
 
Engineering news on Phys.org
  • #2
Have you done any research into current/previous solutions to this problem? How does an off-the-shelf force-feedback joystick achieve this?
 
  • Like
Likes MacLaddy
  • #3
Mech_Engineer said:
Have you done any research into current/previous solutions to this problem? How does an off-the-shelf force-feedback joystick achieve this?

Yes, with what information we have been able to garner from DIY hobbyists and some teardown videos regarding the joysticks. I've considering purchasing a joystick if necessary, but I haven't gotten there yet. The setup we most often see is precisely what I described above, i.e. a motor, controller, pot and gear-set. The next step in my process is to explore what types of motors are used in this application and how the feedback affects them. Which is why I'm here.
 
  • Like
Likes Mech_Engineer
  • #4
MacLaddy said:
Yes, with what information we have been able to garner from DIY hobbyists and some teardown videos regarding the joysticks. I've considering purchasing a joystick if necessary, but I haven't gotten there yet. The setup we most often see is precisely what I described above, i.e. a motor, controller, pot and gear-set. The next step in my process is to explore what types of motors are used in this application, and how the feedback affects them. Which is why I'm here.

Good, I'm glad you've investigated previous solutions to the problem! I agree that you will want to identify a motor technology which is best-suited to your application. As a general rule a motor's torque output is related to the amount of electrical current being applied to its winding; with a proper current modulation controller you should be able to apply a continuous or varying amount of torque. You will need position feedback to provide torque as a function of position; consider a rotary encoder on the motor to achieve this.

I'd recommend comparing brushed vs. brushless DC motor technologies; you may find some differences that tend to lead you in one direction vs another. You should also consider more exotic solutions like linear motors, or even electromagnets.
 
  • Like
Likes MacLaddy
  • #5
Mech_Engineer said:
Good, I'm glad you've investigated previous solutions to the problem! I agree that you will want to identify a motor technology which is best-suited to your application. As a general rule a motor's torque output is related to the amount of electrical current being applied to its winding; with a proper current modulation controller you should be able to apply a continuous or varying amount of torque. You will need position feedback to provide torque as a function of position; consider a rotary encoder on the motor to achieve this.

I'd recommend comparing brushed vs. brushless DC motor technologies; you may find some differences that tend to lead you in one direction vs another. You should also consider more exotic solutions like linear motors, or even electromagnets.

Thank you, I will definitely look into a rotary encoder. I haven't worked with those yet, and it was one of my next questions.
I'm a bit unsure if I understand your answer regarding the motors. I understand how to calculate output torque, but I don't understand how the motor reacts when the torque exceeds its capabilities. Let me attempt to clarify. If current is supplied to the motor and it is trying to rotate clockwise with a certain torque, and I then decide to hold it steady, or even drive it counterclockwise against the direction it is trying to rotate, will that not damage the motor? It seems to me that it would create magnetic stresses and heat internally. The purpose of this force feedback is there to act as resistance to the movement, not to drive the lever.
I hope my question is more clear, thank you again.

Mac
 
  • #6
MacLaddy said:
It seems to me that it would create magnetic stresses and heat internally.
There are Torque Motors available that are designed to operate at the locked rotor condition, but they are a bit hard to find and not cheap.

Heat would be the biggest concern in an ordinary motor. I would suggest using one rated a few times the needed torque. I wouldn't worry about the magnetic stresses, they occur every time the motor starts. With a Gear Motor you have to use a low to moderate gear ratio when back-driving it due to the static friction of the motor bearings, brushes, and the higher speed gears. The high-ratio gear trains can not be back driven at all.

The reason a potentiometer is used for feedback is they are dirt cheap; and many micro-controllers have a builtin Analog to Digital converter.
 
  • Like
Likes MacLaddy
  • #7
Tom.G said:
There are Torque Motors available that are designed to operate at the locked rotor condition, but they are a bit hard to find and not cheap.

Heat would be the biggest concern in an ordinary motor. I would suggest using one rated a few times the needed torque. I wouldn't worry about the magnetic stresses, they occur every time the motor starts. With a Gear Motor you have to use a low to moderate gear ratio when back-driving it due to the static friction of the motor bearings, brushes, and the higher speed gears. The high-ratio gear trains can not be back driven at all.

The reason a potentiometer is used for feedback is they are dirt cheap; and many micro-controllers have a builtin Analog to Digital converter.

Good information, thank you. We are just starting gear and gear train analysis in our senior machine design course, so I haven't touched on this very much yet. Can you recommend any search terms for calculating the gear ratio needed that will still allow back-driving? I'm using Shigley's Mechanical Design, if that is any help. I'll start searching the obvious terms now.

Mac
 
  • #8
The more I think about this, the more I believe we may be taking the wrong approach. Our entire force profile over the stroke length of the lever is dependent on resistance. We want this lever to return home when it is released, but have a specific "feel" when pushing/pulling it. A spring on a crank would mimic the profile quite well, but it isn't variable/programmable.
I'm starting to think more in terms of braking systems than drive systems. The YouTube video below is a linear actuator that I may be able to make work, but I don't know if it would have enough power for our purposes.
If there are any suggestions of hardware that can act as an arduino based resistance mechanism I would be very appreciative to hear it. My search results have come up null so far.

Here is a link to the video.
 
  • #9
MacLaddy said:
Can you recommend any search terms for calculating the gear ratio needed that will still allow back-driving?
Afraid not. My background is Electronics and my back-driving comment was based on occasional observation over the years. I surmise you would have to find the static friction of each item from the motor to the output shaft and adjust for the gear ratio from each item to output. Then decide if the output device and each reduction stage can handle that torque.

MacLaddy said:
A spring on a crank would mimic the profile quite well, but it isn't variable/programmable.
Connect the fixed end of the spring to something (an arm or crank?) that is controlled by a motor; or to a string (fishing line?) that wraps around a motorized drum.

MacLaddy said:
If there are any suggestions of hardware that can act as an arduino based resistance mechanism I would be very appreciative to hear it. My search results have come up null so far.
Anything that can be electrically controlled. Although probably not the best choice, the first thing that comes to mind is a Prony Brake, http://enginemechanics.tpub.com/14037/css/Figure-8-3-A-Prony-Brake-53.htm, replace a scale with something (motor, solenoid...?) that adjusts the tension in the strap. You will have to add a Transistor stage or two to the Arduino output to handle the higher current that the actuator needs.
14037_53_3.jpg
 
  • Like
Likes MacLaddy
  • #10
Tom.G said:
Afraid not. My background is Electronics and my back-driving comment was based on occasional observation over the years. I surmise you would have to find the static friction of each item from the motor to the output shaft and adjust for the gear ratio from each item to output. Then decide if the output device and each reduction stage can handle that torque.Connect the fixed end of the spring to something (an arm or crank?) that is controlled by a motor; or to a string (fishing line?) that wraps around a motorized drum.Anything that can be electrically controlled. Although probably not the best choice, the first thing that comes to mind is a Prony Brake, http://enginemechanics.tpub.com/14037/css/Figure-8-3-A-Prony-Brake-53.htm, replace a scale with something (motor, solenoid...?) that adjusts the tension in the strap. You will have to add a Transistor stage or two to the Arduino output to handle the higher current that the actuator needs.
14037_53_3.jpg

That's an interesting mechanism, thank you. I'll start trying to wrap my head around these options and see what comes out of it.

Mac
 

1. What is force feedback control?

Force feedback control is a type of haptic feedback technology that uses sensory information, such as pressure or vibration, to simulate the sense of touch in a user's interaction with a device or system. In the context of a capstone project, force feedback control can be used to enhance the user's experience with a product or improve the functionality of a system.

2. How does force feedback control work?

Force feedback control works by using sensors to detect physical interactions between a user and a device or system. The sensors send information to a processor, which then uses algorithms to calculate the appropriate response, such as applying pressure or vibration, to the user. This creates a more immersive and realistic experience for the user.

3. What are some applications of force feedback control?

Force feedback control can be used in a variety of applications, including video games, virtual reality systems, medical simulators, and industrial control systems. It can also be used in devices such as joysticks, steering wheels, and game controllers to provide a more realistic and engaging user experience.

4. What are the benefits of using force feedback control?

Some potential benefits of using force feedback control include improved user engagement and immersion, enhanced realism and accuracy in simulations, and improved user performance and learning. It can also provide important sensory feedback for users with disabilities or impairments, making technology more accessible and inclusive.

5. What are some challenges in implementing force feedback control?

One challenge in implementing force feedback control is ensuring the accuracy and precision of the sensory feedback. This requires careful calibration and testing to ensure that the user's experience is realistic and consistent. Another challenge is designing effective and intuitive user interfaces that allow for seamless interaction with force feedback technology. Additionally, the cost of implementing force feedback control in a product or system may be a consideration for developers.

Similar threads

Replies
6
Views
980
  • Mechanical Engineering
Replies
3
Views
5K
Replies
5
Views
2K
  • Electrical Engineering
Replies
7
Views
3K
  • Mechanical Engineering
Replies
5
Views
4K
  • Mechanical Engineering
Replies
5
Views
971
Replies
25
Views
4K
Replies
3
Views
1K
  • Electrical Engineering
Replies
3
Views
1K
Back
Top