|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
| Thread Tools | Rate Thread | Display Modes |
|
#16
|
|||||
|
|||||
|
What we did was while design worked hard on our design, I got 2 or 3 guys together and made last year's robot do kinda what this years bot will be doing. We then took this and found out flaws in our design, found better, more efficient and faster methods of working as well as gave us the ability to have different codes designed (such as stack tracking) that can be used if we add and setup the sensors. I have a few different little autonomous codes so we can swap codes to counteract what scouting data brings us.
One last thing, with your dead reckoning codes, be careful! I realized very well that over time those numbers WILL change. The drive system is gonna change after running a bit, as things wear in and hardware changes. Also I'd really suggest using the delta_t counter and add it in to your counter since sometimes that RC can be crazy and lose loops like mad. It keeps it so you have your times closer. That's my 2 cents though. Good luck programmers. If you guys got that autonomous running well, great job cause you deserve it. |
|
#17
|
|||||
|
|||||
|
Are code is done we got the auton code working it does perfect 90's everytime not matter about wheel slip or battery it works everytime.
|
|
#18
|
|||
|
|||
|
could you give me an example of how delta_t would be used? I'm interested in how this could be utilized in my own counter.
|
|
#19
|
||||
|
||||
|
Quote:
|
|
#20
|
|||
|
|||
|
Quote:
really easy. make sure delta_t is setup in your code like in the default code and use this for your counter... counter = counter + 1 + delta_t |
|
#21
|
|||
|
|||
|
Yah, 15 minutes sounds about right. The problem being I have never programed in pbasic before and have no idea if our auto code even works!
***sigh*** what I wouldn't give for fractions and inverse trig functions.......... |
|
#22
|
||||||
|
||||||
|
I've talked to several teams, and none of them got line following working with just 3 sensors. One used 5 sensors and has it working, and the rest of us are using dead reckoning.
edit: do a search on delta_t. I know I've explained it several times, and I know others have as well. |
|
#23
|
|||
|
|||
|
Hey, errrm there's a robot emulator out there. go to the innovation first website. It's a good way to test if your code is messed up or not. Can't really predict turning and stuff because that's all based on your robot, but it helps.
Oh really? Nobody got their working on 3 sensors? Ours works decently. I just did some testing on carpeting last night. We just had to space the sensors right, and coding wise I did some stuff that works pretty well. 5 sensors would've been nice to work with tho. Man. Right now I just gotta tweak code so that it doesn't just turn right when it hits the top of the ramp. example: Code:
do_autonomous_stuff:
' sensor1 sensor2 sensor3
course3 = 0
if (sensor1>127) then too_left
if (sensor3>127) then too_right
'straight on line
drive_L =145
drive_R = 145
course2 = 3
course = 1
goto perfect
'===================================
'===================================
'===========Too left===============
'===================================
too_left:
'===========================
'--------Semi Off ----------
'============================
if (sensor2>127) then drive_R = 113
if (sensor2>127) then drive_L = 155
'checks to see if swinging back
if (sensor2>127) and course2 = 1 then course3 = 1
'sets course status
if (sensor2>127) then course2 = 0
'======================
'-------Way Off--------
'=======================
if (sensor2<=127) then drive_R = 103
if (sensor2<=127) then drive_L = 155
'checks to see if swinging further
if (sensor2<=127) and course2 = 0 then course3 = 2
'sets course status
if (sensor2<=127) then course2 = 1
'adaptable course timer
if (course < 170) then course = (course +1)
if (course = 171) then course = 171
'checks previous sensor status and adjusts accordingly
if (sensor2>127) and course3 = 1 then course = (course - 90)
if (sensor2<=127) and course3 = 2 then course = ( course - 70)
'adjusts motor values
if (course >= 39) then drive_R = (drive_R - ((course - 39)/10))
if (course >= 39) then drive_L = (drive_L + ((course - 39)/12))
goto perfect
'===================================
'===================================
'===========Too Right===============
'===================================
too_right:
'===========================
'--------Semi Off ----------
'============================
if (sensor2>127) then drive_L = 113
if (sensor2>127) then drive_R = 155
'checks to see if swinging back
if (sensor2>127) and course2 = 1 then course3 = 1
'sets course status
if (sensor2>127) then course2 = 0
'======================
'-------Way Off--------
'=======================
if (sensor2<=127) then drive_L = 103
if (sensor2<=127) then drive_R = 155
'checks to see if swinging further
if (sensor2<=127) and course2 = 0 then course3 = 2
'sets course status
if (sensor2<=127) then course2 = 1
'adaptable course timer
if (course < 170) then course = (course +1)
if (course = 171) then course = 171
'checks previous sensor status and adjusts accordingly
if (sensor2>127) and course3 = 1 then course = (course - 90)
if (sensor2<=127) and course3 = 2 then course = ( course - 70)
'adjusts motor values
if (course >= 39) then drive_L = (drive_L - ((course - 39)/10))
if (course >= 39) then drive_R = (drive_R + ((course - 39)/12))
goto perfect
perfect:
'sensor check
if sensor1 > 127 then out10 = 1
if sensor1 <= 127 then out10 = 0
if sensor2 > 127 then out11 = 1
if sensor2 <= 127 then out11 = 0
if sensor3 >127 then out12 = 1
if sensor3 <= 127 then out12 = 0
'course check
if (course > 1) then out13 = 1
if (course = 1) then out13 = 0
Last edited by TOHSlancer : 17-02-2003 at 11:50. |
|
#24
|
|||
|
|||
|
HALLELUYAH!!! Praise be the the powers that be, we have an extension!! We were almost considering not telling our Mech E team so we had more time to test programing
I say programers unite and we take control of the bots for a change. Wadda ya all think? |
|
#25
|
|||
|
|||
|
extension wu? Well I am the driver as well as programmer. *chuckles* GTA 3 skillz baby! Not really.. but extension? time to head over to first website
|
|
#26
|
||||||
|
||||||
|
Quote:
|
|
#27
|
|||||
|
|||||
|
bah our programmers have to much time with the bot and havn't given our drivers enough time to p ractice.. today our sponsors company is working and only allowed 2 team members to work on the the bot during work hourse ( like 7-3 ) so the programmers forced their way in there and have been running autonmous programs all day, I have to sit here and wait until finally at about 2:30 I can get up there and start playing around and getting better at this driving buisness
|
|
#28
|
|||
|
|||
|
Quote:
|
|
#29
|
|||||
|
|||||
|
Our code is coming along but was set back a few days ago when our yaw rate chip decided that it didn't want to work anymore setting us back about 3 days... but we are getting by...
we are doing some crazy stuff that should be cool if it gets done...hopefully we can get enough time in to play with it while still letting the drivers practice. |
|
#30
|
||||
|
||||
|
hehe.. our team is lucky... the driver is our other programmer .. although she doesn't really do much programming.. but no competition for driving times!
.. they wont let me drive cuz im way too agressive.. you should have seen the mentors faces when i was doing "quality control" (involving running the robot in high gear straight into a cement wall multiple times).. hehe ![]() Last edited by randomperson : 17-02-2003 at 21:33. |
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| A better autonomous method.. | randomperson | Programming | 4 | 24-02-2004 18:02 |
| crazy idea for autonomous | Mike Ciance | Programming | 16 | 24-04-2003 21:50 |
| autonomous location | manodrum | Programming | 4 | 02-04-2003 08:05 |
| autonomous mode problem on field | Chris_C | Programming | 17 | 26-03-2003 19:11 |
| Autonomous Kill Switch | UCGL_Guy | Programming | 8 | 15-01-2003 17:39 |