Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   Control System (http://www.chiefdelphi.com/forums/forumdisplay.php?f=177)
-   -   Joysticks (http://www.chiefdelphi.com/forums/showthread.php?t=37708)

John Gutmann 26-04-2005 21:47

Joysticks
 
Where do you get the joysticks from the old kit of parts, i dont kno if they are in the new ones, they are the black ones with red buttons that i am looking for, if you have any please tell me

henryBsick 26-04-2005 21:54

Re: Joysticks
 
Quote:

Originally Posted by sparksandtabs
Where do you get the joysticks from the old kit of parts, i dont kno if they are in the new ones, they are the black ones with red buttons that i am looking for, if you have any please tell me

They don't make them anymore, 222 pirated them off of old controll systems and replaced them with white sticks.

sanddrag 26-04-2005 22:56

Re: Joysticks
 
They are just the old serial CH Flightstick joysticks. The only place I know of where you can ocassionally get one is eBay. I know, those things were and forever will be the best. Here's one on there now http://cgi.ebay.com/ws/eBayISAPI.dll...sPageName=WDVW

sven 28-04-2005 18:47

Re: Joysticks
 
http://cgi.ebay.com/ws/eBayISAPI.dll... 252&tc=photo

My team used some of these joysticks this year. They seemed to work ok, but our programer said their range was not as much as it should be. He had to put a thing in the program to get them to work all the way.

Andy A. 28-04-2005 21:09

Re: Joysticks
 
Sven-

Most (older) joysticks won't reach full range on the pots. This is just part of the nature of joysticks, even the trusty CH flightstick wouldn't quite get full range.

The work around is to calibrate your Victors to each joystick. The process is pretty simple, and can do wonders for drivabilty. Basically what happens is that the victor looks at the outputs from the joystick as you move it from physical stop to stop, and then scales its (the victors) outputs to match. It accomplishes the same thing that your programmer may have done, but in a much simpler manner.

Ask your programmer if he is familiar with the practice. If he isn't, ask about it here and the whole calibrate/don't calibrate debate can resurface.

-Andy A>

sven 29-04-2005 00:14

Re: Joysticks
 
I thought so, but he decided to do that. Maby I should take the time and learn alittle C :yikes:

Thanks.

Andy A. 29-04-2005 22:48

Re: Joysticks
 
Sven-

The wonderful thing about victors is that they are just plain wonderful.

Calibrating a victor requires no programming at all. It's done in hardware. All you do is depress a switch built into the victor and run the joystick through its limits. The data is stored right on the victor, and the RC never knows any better.

Interestingly, I've used this feature a lot. A friend and I have used victors as speed controllers in some RC cars we've retrofit with updated components. Since R/C radio systems have a completely different range of PWM signal, the factory set calibration is way off (a neutral signal from the RC gear is about 1/3 reverse on the factory set calibration). With out the ability to calibrate the victor, they would be useless in any setting that was specifically designed for them (like FIRST).

-Andy A.

Al Skierkiewicz 30-04-2005 15:58

Re: Joysticks
 
Quote:

Originally Posted by sven
I thought so, but he decided to do that. Maby I should take the time and learn alittle C :yikes:

Thanks.

Sven,
This is such a prevalent misconception, I included it in my mythbuster presentation on robot electrical. Everyone needs to understand that the speed controllers are not calibrated when you receive them. If they were you would get matched controllers and joysticks and would be instructed as to which controller you must use for each joystick axis.

ALWAYS CALIBRATE SPEED CONTROLLERS. RECALIBRATE ANYTIME YOU CHANGE CONTROLLERS OR JOYSTICKS.

Mike Soukup 03-05-2005 17:19

Re: Joysticks
 
Quote:

Originally Posted by Andy A.
The work around is to calibrate your Victors to each joystick. The process is pretty simple, and can do wonders for drivabilty. Basically what happens is that the victor looks at the outputs from the joystick as you move it from physical stop to stop, and then scales its (the victors) outputs to match. It accomplishes the same thing that your programmer may have done, but in a much simpler manner.

No, the workaround is as Sven stated, fix the range in software. All you need to do is determine the min & max values of each joystick axis and create a function that linearly maps the smaller joystick range to the full 0-254 range. Just make sure you have two mapping functions, one for below 127 and one for above. Then calibrate your speed controllers for the full 0-254 range. We've been using this method for at least 3 years.

The reason to fix this in software instead of the speed controller is in the cases of autonomous or feedback control. If the speed controllers that handle your arm joint are calibrated for a smaller range of 30-245 (typical values I've seen for the y-axis) then your feedback code is only effective over that range. Any numbers outside the range will not make the arm drive faster, and if your feedback routine wants to drive the arm slightly slower than full reverse (say a pwm value of 20) it will still be going full reverse.

billbo911 03-05-2005 17:55

Re: Joysticks
 
Quote:

Originally Posted by Mike Soukup
No, the workaround is as Sven stated, fix the range in software. All you need to do is determine the min & max values of each joystick axis and create a function that linearly maps the smaller joystick range to the full 0-254 range. Just make sure you have two mapping functions, one for below 127 and one for above. Then calibrate your speed controllers for the full 0-254 range. We've been using this method for at least 3 years.

I've often wondered how I could linearize a range of values to another range of values, such as 137-235 linearized to 137-254. But, not being a software guru, yet, I am not certain how to do this without several "if, if else, else" statements turning the output into a multi stepped scale. Something like:
if (P2y > 135 && P2Y <= 145)
PWM02 = 140
if else (P2Y > 145 && P2y <= 155)
PWM02 =150
etc. etc. etc.

As you can see, not too smooth a response. So the question is, what code would you use to linearly map one range to another?

Alan Anderson 04-05-2005 01:39

Re: Joysticks
 
Quote:

Originally Posted by billbo911
I've often wondered how I could linearize a range of values to another range of values, such as 137-235 linearized to 137-254...So the question is, what code would you use to linearly map one range to another?

Use the equation for a line, y = mx + b.
Take the input value x, multiply it by a factor m, and add an offset b to yield the output value y. The factor can be a floating point value, or to save time you can multiply by an integer and divide by another integer.
To determine the m and b constants, use algebra to solve the pair of equations for the known input and output values.

billbo911 04-05-2005 10:15

Re: Joysticks
 
Quote:

Originally Posted by Alan Anderson
Use the equation for a line, y = mx + b.
Take the input value x, multiply it by a factor m, and add an offset b to yield the output value y. The factor can be a floating point value, or to save time you can multiply by an integer and divide by another integer.
To determine the m and b constants, use algebra to solve the pair of equations for the known input and output values.


Thank You Alan

I knew it would be a relatively simple solution.
My years removed from Algebra are many, too many in fact, so some portions of my memory need a little refresh. This will help tremendously.


All times are GMT -5. The time now is 03:59.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi