Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   FIRST Tech Challenge (http://www.chiefdelphi.com/forums/forumdisplay.php?f=146)
-   -   pic: kiwi vex robot (http://www.chiefdelphi.com/forums/showthread.php?t=46560)

Steve0100 15-04-2006 17:05

Re: pic: kiwi vex robot
 
Quote:

Originally Posted by billbo911
Thanks. :)

I really like how clean your assembly looks!

On sensors.... from my experience with the the Vex Ultrasonics.
They do a good job of sensing objects directly in front as long as object has a surface that is perpendicular to the sensor. In other words, when approaching a wall at an angle, the sensor wont pick it up very well at all.
Additionally, if you do put your bot in a box, the walls will bounce the 40KHz signal pulses quite a bit, causing misreadings from the controller.
Here's a thought. Try using the light sensors from the Line Following kit. With a little experimentation, you should be able to fine tune an algorithm to detect the relative distance from the wall based on the amount of light being reflected off of it. The biggest problem you will face with that is consistent light levels, and that may render this option useless. (Remember the difficulties with the CMU cam. and reflected light in 2005?) :(


Thanks, and thanks for the sensor feedback. I did consider Ultasonics, but couldn't hit on a scheme I thought would be reliable. Your info on the ultrasonics and performance at oblique angle confirms that I would have had a lot of problems. So- I'm using IR, very close proximity sensors, and a timing algorithm to detect differences in IR triggering in relation to angle of approach. I also have a mechanical switch backup plan- but I'd rather keep it clean with no real contact with the walls.

Thanks again for your reply. Billbo and Colin, your designs are both inspirational. Colin- I'll put your method of joining chassis parts with bearing blocks in my mental toolkit- I'm new to vex so I appreciate seeing new uses for the parts. It's amazing what can be done with, and learned from from, common creative constraints.

I'm glad I'm contending with 4-wheel math for holonomics rather than 3 though- much simpler. Thanks, trig.

billbo911 15-04-2006 18:51

Re: pic: kiwi vex robot
 
1 Attachment(s)
Quote:

Originally Posted by billbo911
I just got this working this morning. :) I tried for hours last night to code it with EasyC. Apparently doing the math wasn't so easy with EasyC. :o I'll figure it out later today. What you see it the video is coded with MPLAB in about 20 minutes.

Vex Kiwi Drive




:D

As I mentioned earlier, I was working on getting this coded using EasyC v2.0. Well I finally got it working. The math is the same, the process is a little different, but it works. Oddly, the bot works smoother with the code done in MPLAB than it does with the code from EasyC. Anyway, I'm attaching the .hex, .bds and .ecp files from EasyC in the hopes someone else can use them. They are in a .zip file, so download and do what you will with them.

Francis-134 16-04-2006 00:50

Re: pic: kiwi vex robot
 
Quote:

Originally Posted by billbo911
As I mentioned earlier, I was working on getting this coded using EasyC v2.0. Well I finally got it working. The math is the same, the process is a little different, but it works. Oddly, the bot works smoother with the code done in MPLAB than it does with the code from EasyC. Anyway, I'm attaching the .hex, .bds and .ecp files from EasyC in the hopes someone else can use them. They are in a .zip file, so download and do what you will with them.

I noticed that your code uses a lot of custom c blocks to do the math. May I suggest using the "assignment" block, located in program flow in order to cut down on the labor. Perhaps it will work better as well.

billbo911 16-04-2006 02:54

Re: pic: kiwi vex robot
 
Quote:

Originally Posted by Francis-134
I noticed that your code uses a lot of custom c blocks to do the math. May I suggest using the "assignment" block, located in program flow in order to cut down on the labor. Perhaps it will work better as well.

That's the help I'm looking for! My level of knowledge of EasyC is all based on my following the programming guide that came with 1.1 and my limited knowledge of C. So if I do things the hard way, it's quite literally because I didn't know any better. I will look into "assignment" blocks and see what I can do with them. I sure hope your right about it making the bot run better.
Logically speaking, the code should run the same whether I code it in MPLAB or EasyC. Realistically, I just need to figure out how to do it correctly in EacyC.
Thanks again!!
BTW, do you know if there are any detailed tutorials for EasyC 2.0? I found the programing guide for 1.1 quite helpful, but a little short on covering all options.

Francis-134 16-04-2006 09:03

Re: pic: kiwi vex robot
 
Indeed there is a very nice tutorial. Unlike most programs, the help file of easyC has been worked on quite a bit and is an excellent resource for any questions regarding the software. The file explains what every block and more. Whats real nice is if you have a problem with a specific block while you are trying to program with it, simply drag it into the program and hit "help".

Oh, and there are some tutorials in the help file, but I believe the first few are the same as what came with your programming guide.

billbo911 19-04-2006 00:32

Re: pic: kiwi vex robot
 
1 Attachment(s)
Quote:

Originally Posted by Francis-134
Indeed there is a very nice tutorial. Unlike most programs, the help file of easyC has been worked on quite a bit and is an excellent resource for any questions regarding the software. The file explains what every block and more. Whats real nice is if you have a problem with a specific block while you are trying to program with it, simply drag it into the program and hit "help".

Oh, and there are some tutorials in the help file, but I believe the first few are the same as what came with your programming guide.

Indeed, the tutorials and help files are fairly well implemented in this application. I found them quite helpful in learning both the basic and more advanced features of EasyC. Granted, having little knowledge (emphasis on LITTLE) of C helps tremendously.

Quote:

Originally Posted by Francis-134
I noticed that your code uses a lot of custom c blocks to do the math. May I suggest using the "assignment" block, located in program flow in order to cut down on the labor. Perhaps it will work better as well.

Thanks for the suggestion. I used the tutorials and your suggestion to create the attached program created in EasyC. And, yes, it does function as well as the version created in MPLAB. :D



EDIT: I just double checked this file. It appears that I didn't save my changes, so, these files are the old version. :( My BAD!!!! I will correct this as soon as I re-create the files correctly. Please stay tuned.

EDIT2: OK, I've replaced the files with the corrected versions. Sorry to anyone who tried the previous ones. These new files were updated to CD on 4/19/06 at 4:25pm PDST

jgarbers 19-04-2006 13:45

Re: pic: kiwi vex robot (slightly OT)
 
Quote:

Originally Posted by billbo911
What you see in the video is coded with MPLAB in about 20 minutes.

If I may ask - are you using the "Student Version" of the C18 compiler with MPLAB? If not, what compiler are you using? I'm trying to figure out what's appropriate to buy above and beyond what comes with the stock Vex Programming Kit... I've already bought the easyC v2 upgrade, but I'd like to be able to just edit source code.

Thanks!

billbo911 19-04-2006 14:48

Re: pic: kiwi vex robot (slightly OT)
 
Quote:

Originally Posted by jgarbers
If I may ask - are you using the "Student Version" of the C18 compiler with MPLAB? If not, what compiler are you using? I'm trying to figure out what's appropriate to buy above and beyond what comes with the stock Vex Programming Kit... I've already bought the easyC v2 upgrade, but I'd like to be able to just edit source code.

Thanks!

Excellent question.
I am one of the more impatient people in this world. I couldn't wait for the programming kit to be released through Radio Shack. So, when I found out that there was a possibility to purchase a prototype programming module directly from IFI , I jumped at it. It came with the cables, circuit board (unhoused) and a C-BOT CD which included MPLAB 7.0, C18 and IFI loader. These are all licensed to me and not part of my FRC teams programs. I have since then upgraded all three applications to the most current versions that work with FRC, and they still work with Vex. This allows me to use my laptop with the team to help them in programming and fiddle around with my Vex system as well.
I added EasyC when I bought the kit on sale, then later purchased the 2.0 upgrade. Now I can program in either environment. Honestly, I really like EasyC, it is amazingly powerful for a module based programming environment and is extremely easy to teach noobs the basics of robot programming. I can quite literally have a complete novice programming a Vex bot to work autonomously in less that ten minutes. On the other hand, MPLAB offers a lot more flexibility and advanced programming ability. I am not versed well enough in C to use MPLAB exclusively, but I have to admit, I can do some things in MPLAB much faster than I can with EasyC.
So, what do I recommend? Definitely keep EasyC. Only add MPLAB/C18/IFI Loader when you have mastered the use of EasyC and started running into limitations that require you to program directly in C. I know others will have different opinions, and listen to what they say as well. I base mine on my experience and knowledge level in programming. Weigh others opinions on their experience and ability as well. That will give you the truest measure of "What you should do".

jgarbers 19-04-2006 15:00

Re: pic: kiwi vex robot (slightly OT)
 
Quote:

Originally Posted by billbo911
Excellent question...

Thanks so much for your amazingly useful reply! Robot folks are good folks, I think. :)

I suspect it's possible to compile and download "manually-edited" C code using everything that comes with easyC -- it seems to be running an external compiler during its build step -- but I have a little more experimenting to do. I've been coding for over 25 years and the drag-the-block approach seems to get in my way, although my kids seem quite comfortable with it. Maybe they'll just use easyC the way it's intended and I can try messing around under the hood in my "copious free time".... then I'll figure out if I can justify MPLAB (which looks very nice, by the way... the free IDE is quite the "gateway drug" for the rest of the product line).

adam the great 01-10-2012 18:57

Re: pic: kiwi vex robot
 
This code helps a lot. Me and Casey Godzyk (current 229 members) have been resurrecting the old Kiwi bot and updating the hardware and we happened to find this code...Then later realized that we were basing our new code off of the actual original code from this robot. Can't wait to be able to post pics and video of it all updated and rebuilt (hopefully with underglow).


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

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