Go to Post There is no feeling greater than being a part of a group that would walk through fire with you. Complete commitment, complete trust, and total respect. - Rich Kressly [more]
Home
Go Back   Chief Delphi > Technical > Control System
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Closed Thread
 
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 05-05-2005, 17:50
tux tux is offline
Registered User
AKA: Lee Harr
FRC #3842 (Shock-a-Bots)
Team Role: Mentor
 
Join Date: Apr 2005
Rookie Year: 2005
Location: Rochester, NY
Posts: 91
tux is an unknown quantity at this point
servo range of motion

Hi;

I am using a HiTEC HS-322HD servo connected to the PWM Out port of the Edu controller.

I wonder if it is possible to make the servo turn more than it turns now.

Right now I am using code like ...
pwm08 = 0;
or
pwm08 = 255;
(those being the extremes) and the servo turns a total of about 180 degrees.

I see some sample code in the default code like this ...

Example: The following would generate a 40KHz PWM with a 50% duty cycle on the CCP2 pin (PWM OUT 1):
CCP2CON = 0x3C;
PR2 = 0xF9;
CCPR2L = 0x7F;
T2CON = 0;
T2CONbits.TMR2ON = 1;
Setup_PWM_Output_Type(USER_CCP,IFI_PWM,IFI_PWM,IFI _PWM);

but search as I might, I do not see anything telling what this is all about.

Is this type of code used to have better control over servos?

Apparently Setup_PWM_Output_Type() is defined in ifi_library.c which I do not see that file in the distribution.

Any pointers appreciated.
  #2   Spotlight this post!  
Unread 05-05-2005, 18:07
Mr. Steve's Avatar
Mr. Steve Mr. Steve is offline
No relation to Mrs. Steve
#1626 (Falcon Robotics)
 
Join Date: Nov 2004
Rookie Year: 2005
Location: NJ
Posts: 34
Mr. Steve is an unknown quantity at this point
Re: servo range of motion

There really isn't anything you can do beyond what you're already doing with the pwm outputs. Servo's only have a certain range (generally around 180degress) and the only way to get them to turn beyond that is to modify the servo itself.
__________________
Falcon Robotics
  #3   Spotlight this post!  
Unread 06-05-2005, 02:46
Unsung FIRST Hero
Mike Betts Mike Betts is offline
Electrical Engineer
no team
Team Role: Engineer
 
Join Date: Dec 2001
Rookie Year: 1995
Location: Homosassa, FL
Posts: 1,442
Mike Betts has a reputation beyond reputeMike Betts has a reputation beyond reputeMike Betts has a reputation beyond reputeMike Betts has a reputation beyond reputeMike Betts has a reputation beyond reputeMike Betts has a reputation beyond reputeMike Betts has a reputation beyond reputeMike Betts has a reputation beyond reputeMike Betts has a reputation beyond reputeMike Betts has a reputation beyond reputeMike Betts has a reputation beyond repute
Re: servo range of motion

Tux,

Your confusion is based on what a PWM is. For nearly everyone except the radio control crowd, a 50% PWM wave is a square wave. Likewise, a 0% PWM signal is a steady DC signal at the lower rail (usually 0 volts) and 100% is a steady DC signal at the upper rail (usually 5 or 12 volts). I would call this definition "classical".

In the RC world, a 1 ms pulse every 10 milliseconds is neutral, whereas a 0.5 ms pulse is full reverse and 1.5 ms is full forward.

The default for our PWM signals is the RC type. The code example you cited will allow you to create a "classical" PWM signal.

This classical PWM output will not help you get more rotation out of a servo.

Now, let's address your problem:

My suggestion is to tandem two servos together. Just align the axis of rotation and attach the dial of the first servo to the back of the second servo (plastic epoxy would work just fine) and connect both servos to the same RC PWM output via a Y cable. This would give you approximately +/- 180 degrees of rotation versus the +/- 90 you get from one servo and would have been legal by this years rules.

Hope this helps...
__________________
Mike Betts

Alumnus, Team 3518, Panthrobots, 2011
Alumnus, Team 177, Bobcat Robotics, 1995 - 2010
LRI, Connecticut Regional, 2007-2010
LRI, WPI Regional, 2009 - 2010
RI, South Florida Regional, 2012 - 2013

As easy as 355/113...
  #4   Spotlight this post!  
Unread 06-05-2005, 12:22
Alan Anderson's Avatar
Alan Anderson Alan Anderson is offline
Software Architect
FRC #0045 (TechnoKats)
Team Role: Mentor
 
Join Date: Feb 2004
Rookie Year: 2004
Location: Kokomo, Indiana
Posts: 9,112
Alan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond repute
Re: servo range of motion

Quote:
Originally Posted by tux
I am using a HiTEC HS-322HD servo connected to the PWM Out port of the Edu controller.

I wonder if it is possible to make the servo turn more than it turns now.

Right now I am using code like ...
pwm08 = 0;
or
pwm08 = 255;
(those being the extremes) and the servo turns a total of about 180 degrees.
The HiTEC HS-322HD servo has a range of travel of just about 200 degrees. You can take it apart and physically cut off its internal position feedback to make it act more like a motor, but then it wouldn't be a servo anymore.

If you want a servo with a greater range of travel, consider using a big gear on the HiTEC connected to a smaller gear on whatever it is you want to move to a specific direction.
  #5   Spotlight this post!  
Unread 07-05-2005, 02:32
Kevin Watson's Avatar
Kevin Watson Kevin Watson is offline
La Caņada High School
FRC #2429
Team Role: Mentor
 
Join Date: Jan 2002
Rookie Year: 2001
Location: La Caņada, California
Posts: 1,335
Kevin Watson has a reputation beyond reputeKevin Watson has a reputation beyond reputeKevin Watson has a reputation beyond reputeKevin Watson has a reputation beyond reputeKevin Watson has a reputation beyond reputeKevin Watson has a reputation beyond reputeKevin Watson has a reputation beyond reputeKevin Watson has a reputation beyond reputeKevin Watson has a reputation beyond reputeKevin Watson has a reputation beyond reputeKevin Watson has a reputation beyond repute
Re: servo range of motion

Quote:
Originally Posted by tux
I see some sample code in the default code like this ...

Example: The following would generate a 40KHz PWM with a 50% duty cycle on the CCP2 pin (PWM OUT 1):
CCP2CON = 0x3C;
PR2 = 0xF9;
CCPR2L = 0x7F;
T2CON = 0;
T2CONbits.TMR2ON = 1;
Setup_PWM_Output_Type(USER_CCP,IFI_PWM,IFI_PWM,IFI _PWM);

but search as I might, I do not see anything telling what this is all about.
This is from the IR beacon code used in last year's game.

-Kevin

Edit: Actually, it's early beacon code circa November 2003.
__________________
Kevin Watson
Engineer at stealth-mode startup
http://kevin.org

Last edited by Kevin Watson : 07-05-2005 at 02:36.
Closed Thread


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Help with motion detector chantilly_team Programming 13 31-01-2006 22:10
Servo Compact Design Problems!!! Dominator_Legen Electrical 22 07-04-2005 18:15
Servo Help Dominator_Legen Motors 3 11-03-2005 19:50
Camera Range Finding russell Programming 9 31-01-2005 19:54
Anyone received their EDUs already? Manoel Robotics Education and Curriculum 34 21-11-2003 10:28


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

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


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