hey everyone I made
a quick hack of a
game controller to test out an idea this
weekend what this is is a game
controller that you sit on and how you
shift your weight and turn your body
will control the game character so I
have it setup right now so that the
rotational axis is one-to-one it's
basically just like moving a mouse
side-to-side and the direction controls
are relative so if you put more weight
on the front of this panel you go
forward and if you put more weight on
the back can you go backward and it
works for strafing as well note that I
am also using the mouse in addition to
this game controller the environment
requires me to turn more than 180
degrees to navigate and there's really
no way to do that with the the seat
controller yet so you can see how this
thing would work to control a
first-person shooter and you might be
saying oh that's silly uh you know
lostie already works perfectly well
there's no way this could be faster and
that's true however there are some
circumstances where you might want to
have your body control the motion one it
frees up your hand to do something else
to interact with the environment and
also this works better for virtual
reality and so I'll be talking about
some of the VR works that I've been
doing at valve and this controller may
tie into that I built this controller by
combining a cheap digital bathroom scale
and an Xbox 360 controller and I took
the scale apart and noticed that it had
four force sensors at each corner and
the sensors were routed to a main PCB
with the display readout so at first I
was thinking what I would do is add a
micro controller to this and measure
each channel separately and then use the
micro controller to figure out where
your center of gravity is on the scale
just by calculating the ratios between
the sensors but then I realized there
was actually a much quicker cheaper way
to do this just with a single op-amp so
each of the four force sensors has three
wires coming out and I suspect they're
built kind of like this but I'm not sure
and the three wires are arranged like so
and one resistance is fixed and the
other resistance
Changez when you put force on the on the
sensor one of the main reasons to have a
configuration like this is to compensate
for temperature so this resistor won't
be affected by the force applied to it
but it will be affected by temperature
and this one will be affected by
temperature and the force applied to it
so by effectively subtracting those two
are taking the difference we can get
just the force only and avoiding
temperature effects so the trick here is
that the change in resistance is very
low probably just maybe a couple ohms
and these resistors have a base
resistance of about a kilo ohm so we're
talking about a very very small
percentage so the trick is how do you
amplify that small change in that tiny
tiny change in resistance to a voltage
big enough to give to our game
controller board so this is the circuit
that I came up with and there's nothing
too special here but we can use the
arrangement of these sensors to our
advantage so since they're arranged in a
cross pattern what we can do is say
arbitrarily that one of these opposed
set of sensors will be fore-and-aft and
the other pair will be left and right so
that whenever the ratio changes between
these opposed sensors we'll know that
that's a foreign apt input so this this
circuit here represents one axis and
what we do is we set up the sensors in a
Wheatstone bridge and this bridge is
designed to measure very small changes
in resistance and what we do is we put
the forward sensor on the top half of
the bridge and the reverse sensor in the
bottom half of the bridge so an increase
in resistance here will lower this
voltage or a decrease in resistance here
will raise this voltage and we put these
into an op amp with the positive or the
non-inverting and inverting inputs such
that the two the differences are are
summed the important thing is that the
total amount of weight applied to the
scale doesn't really matter what we're
only interested in is relative
difference between these sensors so in
the original scale application they
actually summed all these together in a
positive way and we're actually taking
just the differential difference between
between two pairs of sensors the Xbox
controller before I took it apart I
measured the voltages on the thumbstick
pot and it appeared that the pot was
supplied with zero and one point 6 volts
and it's arresting point was about point
eight so I guess they optimized this
circuit for battery power being a one
point six volt circuit so what I did is
I added a another pot to the op-amp
circuit to control the offset so this
will feed a little bit of current into
or draw a little bit out of this line
which will change the resting state
value of the whole system and this is
also a pot in my circuit so that I can
control the game so here's what the
whole thing looks like it's just one
op-amp and I used an LM 324 which I've
been accused of using these even though
they're apparently the worst off amp in
production but you know for low
frequency applications like this it's
fine and there's the gain and offset
pots for each axis and the wire is going
into the board here the mouse sensor is
also a quick and dirty hack I just cut
up an old ball mouse and sliced away the
case except for one axis one roller and
put a piece of rubber tubing on it and
mounted it here so that it would contact
the the bottom of this lazy susan
bearing so after just a little bit of
tweaking it was actually quite playable
and I suspect the next set of
improvements would be to actually add
the micro controller to do auto zeroing
so you could just sit down and press a
button and have it remember that centre
of gravity as zero and then your
movements relative to that would be
counted as inputs currently you have to
shift your weight a little bit carefully
on this to get to the scales actual
center point because there is no auto
zeroing function also I imagine with
better signal processing discrete
movements could be detected better so
instead of just doing an absolute sort
of one-to-one relationship between the
center of mass and control input there
could be different curves you know you
might figure out a logarithmic curve
what might work better right now it's
linear and I suspect there's quite a bit
more that can
done once a microcontroller is added
okay see you next time byeTop Search Keyword : online earning, , make money online, earn money online, online earning, online earning sites, make money online free, online money income, earn money online free, money online, best way to earn money online, online income site, money earning websites, best online earning sites, easiest way to earn money online, earn money payment bkash, online money income site
No comments:
Post a Comment