|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
|
|
Thread Tools | Rate Thread | Display Modes |
|
|
|
#1
|
||||
|
||||
|
We achieved a major milestone for our veteran team in getting the camera code working with 1.5 weeks left to program
Here is video from Tuesday night without the tilt function on the camera. On Wednesday night, we repeated the performance but this time with the tilt. The development 'bot is from '05.Quote:
|
|
#2
|
||||
|
||||
|
Re: Toltechs success with camera
Looks good, glad to see another team getting the camera driving up and working.
|
|
#3
|
||||
|
||||
|
Re: Toltechs success with camera
Very cool, congrats... Hopefully ours looks the same in the near future. Although we were planning on just dead reckoning forward (obviously getting a little slower at the end) and using the light for horizontal adjustment... Although it sounds like you tried that, you like using the camera tilt to adjust speed based on how far you are also? Hm.
|
|
#4
|
|||||
|
|||||
|
Re: Toltechs success with camera
having the robot move towards the light............always a good thing
|
|
#5
|
||||
|
||||
|
Re: Toltechs success with camera
Quote:
Good luck with your efforts and I hope to see lots of teams driving autonomously this year ![]() |
|
#6
|
|||
|
|||
|
Re: Toltechs success with camera
Please help me, I can't figure out how to use the camera to actually MOVE the robot. I have the camera code working along with the camera itself, but how do I move pwm01 (left drive wheel) and pwm02 (right drive wheel) individually according to the pan of the camera? I have no idea where to begin with this code. (I just got the code to work for the camera and I've been trying for weeks. Now I only have 2 days, Please help if you can)
Code:
int I_Want_To_Search = 1;
int pwm01_On_Off = 1;
int pwm02_On_Off = 1;
int pwm03_On_Off = 1; //these are all at the top of user_routines.c Everything else is in Processfrom master UP (except TARGETRANGE[] and FIND_DISTANCE())
if(I_Want_To_Search == 1)
{
Servo_Track();
}
if((Get_Tracking_State() == CAMERA_ON_TARGET) || (Get_Tracking_State() == TARGET_IN_VIEW))
{
pwm01_On_Off = 0;
pwm02_On_Off = 0;
pwm01 = 230; //Desired Forward Velocity
pwm02 = 230;
Switch3_LED = 1;
//printf("2"); //these statements are just to see if it worked
}
else
{
Switch3_LED = 0;
pwm01_On_Off = 1;
pwm02_On_Off = 1;
//printf("4"); //these statements are just to see if it worked
}
/*
if(Find_Distance() <= 50) //THIS DOESN"T WORK!! WHY NOT?
{
pwm01 = 127;
pwm02 = 127;
pwm01_On_Off = 1;
pwm02_On_Off = 1;
I_Want_To_Search = 0; //Stops calling Servo_Track(). THEN CALL ANOTHER THING
Switch3_LED = 0;
//printf("3"); //these statements are just to see if it worked
}
*/
if(p1_y > 129 || p2_y > 129)
{
pwm01_On_Off = 1;
pwm02_On_Off = 1;
}
else if(p1_y < 125 || p2_y < 125)
{
pwm01_On_Off = 1;
pwm02_On_Off = 1;
}
Code:
unsigned int Find_Distance(void)
{
return(targetRange[pwm07-144]);
}and target range is this:
Code:
const rom unsigned int targetRange[] =
{
3355,
1676,
1116,
835,
666,
553,
472,
411,
363,
325, //place 10
293,
267,
244,
225,
208,
193,
179,
167,
156,
146, //place 20
137,
128,
121,
113,
107,
100,
94,
89,
83,
78, //place 30
73,
68,
64,
60,
56,
51,
48,
44,
40,
36, //place 40
33,
29,
26,
23,
19,
16,
13,
10,
6,
3, //place 50
0, //place 51
};
|
|
#7
|
|||
|
|||
|
Re: Toltechs success with camera
Ianuser:
why do you divide 50 by 90? Degrees/per step = The amount of tilt angle in the camera/ number of PWM steps The number of steps you have is 51 (194-144) inclusive... okay never mind, 1.765 is the right number... you just wrote it wrong in the post. Now are you sure that the camera has a 90 degree range when varying from level (pwm = 144) to fully raised( 194) ? I don't think that is right, but i'm an alumnus, and haven't played with the camera much. You turn off I_want_to_search when range is <= 50, i'm assuming that sets the PWM values to neutral, that is why the camera looks away. How to move? The fastest/simplest way is to scale your motor speed to your tilt angle (and thus your distance), so do something like this: PWMsout = (194-cameraTiltValue)*Scalar; |
|
#8
|
|||
|
|||
|
Re: Toltechs success with camera
.999~(repeating) = x
9.999~ = 10x (Multiply both sides by ten) 9 = 9x (Subtract x, or .999~ from both sides) Wait a sec... you are assuming x =1, 10 - 1 = 9, not 10 - .999~ That does not follow, you can't use your conclusion, to reach your conclusion! x = 1 = .999~ |
|
#9
|
|||
|
|||
|
Re: Toltechs success with camera
OK, for the pwm steps, my MIN is 94, max is 194 and center is 144. its a 50º range, 25º from 94 to 144 and 25º from 144 to 194. So, shouldn't it then be 100/50? or what? Im still a bit confused.
ALSO, might this work for moving the robot toward the light? Code:
if((Get_Tracking_State() == CAMERA_ON_TARGET) || (Get_Tracking_State() == TARGET_IN_VIEW))
{
pwm01_On_Off = 0;
pwm02_On_Off = 0;
Switch3_LED = 1;
if(PAN_SERVO > PAN_CENTER_PWM_DEFAULT)
{
pwm01 = 180;
}
else if(PAN_SERVO < PAN_CENTER_PWM_DEFAULT)
{
pwm02 = 180;
}
else //see below for question
{
pwm01 = 180;
pwm02 = 180;
}
}
How do I use error precent to manipulate how accurate ("//see below for question") this will be (when it is looking directly at the light)? |
|
#10
|
|||
|
|||
|
Re: Toltechs success with camera
ALSO, about the pwmstep thing...I can change the MAX and MIN and CENTER in tracking.h, right? (If I do that, do I have to mess around with the pwmvalue per large step which is right now 50...94 to 144 to 194 at 3 steps in total? And do I have to change anything in the CAMERA.C file?) Might that give me a better angle to work with if 94 to 194 is only -25º to 25º?
|
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Camera Success?? | Warren Boudreau | Programming | 3 | 16-03-2006 17:55 |
| pic: Toltechs drive-train teaser | Andrew Schuetze | Robot Showcase | 21 | 06-02-2006 13:27 |
| Autonomous With Camera | schenkin | Programming | 20 | 16-02-2005 23:52 |
| any success with winches? | Ben.V.293 | Technical Discussion | 15 | 28-01-2004 22:38 |
| Success with Tank Treads | Yan Wang | Technical Discussion | 17 | 23-01-2004 15:53 |