Basic positional control system advice.

Hi all,
I have a few questions regarding the development of a basic positional
control system. I want to make a set of force feedback pedals using
windscreen wiper motors. The pedal will be mounted on an axle so it
pivots moves as I push it down. I am planning on using a
potentiometer to measure how far the pedal is pushed in (as a rotation
about the axle) and sample this signal with an A/D converter. This
digital information will be read in by a PC and a corresponding
feedback level generated based on some feedback parameters I will
implement within the control software. The signal will exit the PC
via a D/A converter before going through an amp and to the motor that
will generate a torque that will force the pedal back to the zero
position as I push it down.
I want to know if the approach outlined above is suitable for this
application. I don't know much about servo or stepper motor systems
so I really limited my thinking to this basic approach which was what
we learnt at uni.
I also want to know what sort of power amplifier I should be using and
where I can get somthing that is suitable. The 5V, low current output
from the PC is hardly enough to drive the 12V high current motors,
especially at stall, which is what these motors will be doing most of
the time. Is a PWM amp the way to go or something else? Does anyone
have any additional advice, links or whatever that would help me with
this project.
Thanks and regards,
Lyndon.
Reply to
Lyndon
Loading thread data ...
Are the motors geared? If you're going through a gearbox you'll have a hard time relating motor torque to pedal torque because of friction in the gearbox. If you can stand the loss of accuracy it should be OK.
Also, I think you'll be unhappy if you use a PC with Windows or even Linux. You want to use something with an RTOS (real-time operating system) or no OS at all. Both Windows and Linux get seriously in the way (I understand that Linux is easier to work around because you can hack the kernel, but...).
I'd advise going to a small microcontroller or DSP board & talk pedal positions to the PC via RS-232.
For circuit design questions try sci.electronics.design, or "The Art of Electronics" by Horowitz.
I wouldn't recommend PWM for this application, unless you use a processor's PWM output and low-pass filter it instead of using a DAC. For this kind of thing where you want the motor to generate a controllable torque you want a current driver. If you'll always push in one direction I'd recommend an op-amp driving a power FET or BJT with a source/emitter resistor, and monitor the voltage across the resistor to control current with an op-amp.
If you have to drive current in both directions then you either need a power op-amp or you need a linear H-bridge circuit. For room-temperature operation you might look at some of the high-power audio chips -- they look like they'd make good motor drivers, but I've never had a room-temperature application in which to try them myself.
If you have $$ you can do this whole thing with off-the-shelf parts for the motor controller and amplifier. You'll spend less time and get to target quicker.
Good luck.
Reply to
Tim Wescott
[]
No need to hack. It has been done a number of times. I'll mention only RTLinux/GNU and RTAI as free *hard* real-time Linux extensions, but there are many others, including commercial and proprietary.
formatting link
is a good starting point to get more info. Now for the sake of fairness, there are real-time Windows extension, as well.
Just my 0.02EUR
Andrey
Reply to
Andrey Romanenko
Thanks for the reality check. I knew that such extensions existed and should have thought of it. There are (or were, at least) good real-time extensions to Windows, but they cost up the wazoo. Given that the OP is using motors adapted from another purpose I suspect that there isn't a lot of money to fling around, so the Windows idea probably won't fly.
It may still be a good idea to use a separate (smaller) processor for the controller, however. There are many simplifications to be had from having such a well-defined separation between the UI and the controller, and a separate evaluation board approach would be more portable, allowing you to use the system with any box.
Reply to
Tim Wescott
A cheap and chearful way of sampling is to use the PCs 18.2Hz RTC hardware Interrupt if thats fast enough. It's easy to access using an Interrupt Service Routine in DOS based OS's like w98 or W95 but may be more tricky in NT etc. Any PC from a 386 upwards will do as well. Audio power Opamps are good at sourcing and sinking current as well.
Hugh
Reply to
hugh.w.p

PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.