|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
|
|
Thread Tools | Rate Thread | Display Modes |
|
|
|
#1
|
||||
|
||||
|
Ok, the camera is working fine (altho i have no clue what do for the autonomous coding with including the camera) but anyhow we are using 6 diff autonomy codes and we have a dip switch pluged into rc_dig_in11 - 16 and the coding looks for which one is true then goes to that code, i have the LEDs on the control board light green when one of those return true (as a way to easily tell which mode we are using for that match) but when i merge my coding (just the LED defining for the rc_dig_in ports) with the camera coding, the LEDs dont light up, also i have tried just the main camera coding (with out my modifications) can any one tell me what to do about this?
|
|
#2
|
|||||
|
|||||
|
Re: Got it working now theres another problem!
Where in the program did you put the code that controls the OI LEDs? If it's in Default_Routine(), did you remember to uncomment the call to it from Process_Data_from_Master_Up()? If it's somewhere else, did you remember to remove the original LED control code from the program?
|
|
#3
|
||||
|
||||
|
Re: Got it working now theres another problem!
im not sure exactly, all i know its in the LED output section of User_Routines, i dont know really anything about the coding for the cam so i dont know what needs to be un commented or commented out and i did comment out the original LED output coding, and it works fine with my modified defult code but not with the modified camera code, in fact the LED that should light up when the camera has a green target doesnt light up either, even with an un modified cam User_Routines.
|
|
#4
|
|||||
|
|||||
|
Re: Got it working now theres another problem!
Quote:
|
|
#5
|
||||
|
||||
|
Re: Got it working now theres another problem!
i just un comment the one line that says defult_routine; (something like that) right? because i did that and the camera didnt track the green then
|
|
#6
|
|||||
|
|||||
|
Re: Got it working now theres another problem!
Make sure the pwm output code in Default_Routine() isn't conflicting with the camera servo control. As provided, the camera code wants the pan and tilt servos on pwm01 and pwm02. Also as provided, the default pwm code copies joystick inputs to those same pwm outputs. You'll have to either strip the pwm01/pwm02 control from Default_Routine() or move the camera servos to other outputs (details are in tracking.h).
Note: avoid using pwms 13-16. Hardware interrupts, including the interrupt-based serial communication, will interfere with the "fast update" pwm routine for those outputs and cause unwanted jitter in the servo or speed control signals. |
|
#7
|
||||
|
||||
|
Re: Got it working now theres another problem!
ok i uncommented Default_Routine() and went into tracking.h and chaned it from pwm01 - 02 to pwm11 - 12 and when i load the code the camera doesnt do anything (my LEDs light up) am i just not understanding that the camera isnt going to do anything till it has autonomy code? we want to use it as an aiming device during the match, i think im just confused
|
|
#8
|
|||||
|
|||||
|
Re: Got it working now theres another problem!
The very beginning of Default_Routine() has this code:
Code:
/*---------- Analog Inputs (Joysticks) to PWM Outputs----------------------- *-------------------------------------------------------------------------- * This maps the joystick axes to specific PWM outputs. */ pwm01 = p1_y; pwm02 = p2_y; pwm03 = p3_y; pwm04 = p4_y; pwm05 = p1_x; pwm06 = p2_x; pwm07 = p3_x; pwm08 = p4_x; pwm09 = p1_wheel; pwm10 = p2_wheel; pwm11 = p3_wheel; pwm12 = p4_wheel; |
|
#9
|
||||
|
||||
|
Re: Got it working now theres another problem!
you know, for some reason when we set our camera's PWM output to a value other then 1 or 2, we got issues. maybe its the same for you?
also, do what alan anderson told you to, because that same error (my stupidity...) gave us that problem at the begging of the season. |
|
#10
|
|||
|
|||
|
Re: Got it working now theres another problem!
Remember, when something is plugged into rc_dig_in[1-16] it is on, when the switch is actually off:
switch off == 1 in code switch on == 0 in code This caught me by surprise. My team used rc_dig_in[1-3] to create 7 different modes: 000 = off 001 = 1 010 = 2 011 = 3 100 = 4 101 = 5 110 = 6 111 = 7 Code is below for what you can use to do this. Stick it in user_routines_fast.c to make use of it, make sure to change it to what you need to use it for .Code:
unsigned int Auton = 0;
unsigned char flip (unsigned char input) {
if (input == 1)
return 0;
if (input == 0)
return 1;
}
void User_Autonomous_Code(void)
{
/* Initialize all PWMs and Relays when entering Autonomous mode, or else it
will be stuck with the last values mapped from the joysticks. Remember,
even when Disabled it is reading inputs from the Operator Interface.
*/
pwm01 = pwm02 = pwm03 = pwm04 = pwm05 = pwm06 = pwm07 = pwm08 = 127;
pwm09 = pwm10 = pwm11 = pwm12 = pwm13 = pwm14 = pwm15 = pwm16 = 127;
relay1_fwd = relay1_rev = relay2_fwd = relay2_rev = 0;
relay3_fwd = relay3_rev = relay4_fwd = relay4_rev = 0;
relay5_fwd = relay5_rev = relay6_fwd = relay6_rev = 0;
relay7_fwd = relay7_rev = relay8_fwd = relay8_rev = 0;
while (autonomous_mode) /* DO NOT CHANGE! */
{
if (statusflag.NEW_SPI_DATA) /* 26.2ms loop area */
{
Getdata(&rxdata); /* DO NOT DELETE, or you will be stuck here forever! */
// We have to shift the second and the third bits
Auton = flip(rc_dig_in01) | flip(rc_dig_in02) << 1 | flip(rc_dig_in03) << 2;
if (Auton == 0) {
// do absolutely nothing
}
else {
if (Auton == 1) {
// see 7
}
if (Auton == 2) {
// See 7
}
if (Auton == 7) {
// Do stuff when in binary added up together it is 7
}
}
Putdata(&txdata); /* DO NOT DELETE, or you will get no PWM outputs! */
}
}
}
|
|
#11
|
||||
|
||||
|
Re: Got it working now theres another problem!
Quote:
what type of switch did u use? |
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Strange Encoder Problem | AIBob | Electrical | 3 | 20-02-2005 22:20 |
| Problem w/Mesh | Kevin Thorp | 3D Animation and Competition | 4 | 17-02-2005 23:04 |
| Programming Problem: Extremely Frustrating | chantilly_team | Programming | 19 | 12-02-2005 23:00 |
| Physics Problem | Venkatesh | Math and Science | 13 | 30-11-2004 20:30 |
| autonomous mode problem on field | Chris_C | Programming | 17 | 26-03-2003 19:11 |