Help with a few things

So we are a new VEX team and as we have gone along, we have run into a series of different problems. I’ve searched the forums thoroughly and some of my questions have been answered but many were not directly answered or there was not a topic on it already that I saw. That being said, I could really use some help getting some questions answered directly. Any help anyone can give would be greatly appreciated.

So my primary issue is my autonomous. I want to use a potentiometer to select three or four different programs. I looked this up and I found some good topics on it and I made my own but nothing happens. I think there is an error in it but I’m not sure. I would love to post my code but I’m not sure how so if someone could tell me how to, I would be glad to post my code for help. Also as a side note, I can’t seem to figure out autonomous programming for pneumatics. I looked through the forums but couldn’t find it because I did not have a way to open the files I was looking at. As another side note, I can lost this in the programming sticky. I just wanted to reduce the posts I did.

Another issue I have run in to is Vexnet disconnects. I will be driving with the three green lights on both the controller and micro controller.Then, the robot’s lights go off, break connection, and then reset to the blinking orange lights as if looking for signal. I then get a blinking red light on the VEXNet light on my controller. We tried pushing the key in better on the micro controller and have it secured but it doesn’t seem to make a difference. Has anyone found a solution to this?

Next, we have been considering a transmission for our lift. We have a lower torque gear ratio (1:5 I believe) for regular game play that works well. We really want to hang but with our current ratio, it is not strong enough. We are trying to cut weight and such on the base but we considered doing a transmission in our towers that would switch with pneumatics. Has anyone tried this? I have seen transmission drives but not lifts yet.

Finally, these things being coined magic intakes. I saw team 21’s release video (extremely impressive if you guys are reading this. You came to a tournament we (Orange Lutheran) hosted and I was really impressed with your robot) and was blown away by them. I’ve been trying to get something like them but was wondering if anyone had some tips. I know its a matter of luck and a bit of skill but if there are tips you could give, that would be awesome. If not, I understand too. It’s a cool design you probably don’t want many people having.

I think that is all the questions I have for now. However, more will most likely arise so… Ya. Like I said before though, we really appreciate any help you can give. We are really new so we have very basic questions and any help at all really goes a long way. We can try and return the favor and help others in any way we can as well.

Thanks again,

As far as the programming goes, you can use the potentiometer plugged into an analog port as an int variable. Since it returns values of 0-1024, you can use (get potentiometer) to send the value to the variable. Then you can use IF statements to say IF your variable is less than x and greater than y, run a certain loop. This is only my knowledge of easyc, so if you have ROBOTC it probably doesn’t help.

As for the Vexnet problems, I’d say make sure you have a charged 9 volt battery and updated firmware on your robot (the newer versions are supposed to drop signal less often). using a rubber band to secure the key around the cortex and around the joystick isn’t a bad idea, either.

Magic intakes seem to be a combo of flap and intake orientation. Intake angle is something you just have to play around with. As far as flap orientation, there might be some special order and number of flaps that bring balls around into the intake. You’d have to play around with this, too, but I believe that a few spaces followed by multiple flaps in a row (repeated in a pattern) works well, from what I’ve seen. But again, you’d have to really play around with it, depending on sprocket size and other factors.

For code I will need to ask EasyC or RobotC?
To post code you can use the code]stuff/code
needs brackets at beginning and end
Just copy paste code where I put stuffff.

Vexnet disconnects are mainly caused by not having a backup battery. It could also be from code and loose battery connects so try eliminating a few of these potential problems.

Lift transmission have been done but rarely and the process is the same as drive transmissions. How many motors do you have?

Well magic intake is a term for a specifically successful and specific type of side roller (nz intake). It is just created by being a little clever and a lot of time trying different configurations.

You can wrap code in these tags (CODE)(/CODE), replacing the parenthesis () with square brackets ]. What is the exact wording of the error message? This will likely be answered by posting your code, but what programming environment are you using, ROBOTC, EasyC, or something else?

There have been several threads within the past several weeks that pertain to this issue, have you tried any of them?

Perhaps increasing your torque a little bit give you the lifting power you need with the speed you want. I wouldn’t jump just yet to pnuematic transmissions as they can be difficult to build and add a lot of bulk and weight to your robot that may be easily avoidable. I’m currently toying around with different gear ratios, so can’t really recommend anything yet (other than 1:5 won’t cut it :p)

This was hilarious.
So many questions we spent so long answering that 3 posts all happened

Wait, what? :confused:

The 3 posts all happened in a 5 minute period. None of us realized 2 other people were answering the question because we were all typing responses at the same time.
Not just ninjad but double ninjad

Thank you all for your quick responses. Sorry I was working on a little calc homework. Ok so regarding these responses, I will try and be as thorough as I can be.

Ok that sounds like what I have but for some reason, it is not working. It must just be some stupid error I made. OK and my programming won’t copy out of the EasyC window. I have it in C programming, highlight all of it, but it won’t let me copy. I’m probably just doing something stupid but can’t figure it out.

Ok so we have a charged battery, updated firmware, and that is actually exactly what we do. We have a rubber band double bound around the key. It solved the problem for a while and we hadn’t been having problems with it for a few months but all of a sudden, it picked up again. We had just gone on a drive in the car and it could have gotten a little jostled so that could have something to do with it. I’m worried though as we have a competition in two weeks and that would be a really big problem.

OK great thanks :).

OK so I run EasyC V4 for Cortex and usually do block programming because it is easy for me to visualize.

So I tried this but EasyC will not let me copy out of it. Am I doing something wrong? I go to all C programming, highlight it all, and it won’t give me the option to copy.

Oh ok that could be part of our problem is not having a backup battery. I will check that out.

Ya I have seen the drive transmissions and have found them really interesting. I was just wondering if people thought they could be valuable solutions for a tower design. I thought that could be a really cool way to fix some issues with hanging. But regarding motors, we have four motors actually on our lift, four on our base, and two on our intakes. Therefore, we have none left over which is really sucking as we get further along. We may change that eventually.

Looks like I will be working on those a bit then. I honestly don’t understand the physics behind it so I am trying to get my head around that first.

OK so we are not actually getting an error message. It all checks, builds, download, etc. However, when we try and run the program using a competition switch, nothing happens no matter where we have our knob for the potentiometer.

We are using EasyC V4 Cortex.

Ya I have been looking through those and tried several of the solutions but none seemed to help.

OK that is helpful advice. Our logic for it was simply that we cannot get the torque from our current gear ratio to hang. However, if we change the ratio to a ratio with more torque, we run into issues with speed during match play. We thought maybe the transmission could be a cool solution to that where we can play with our current ratio which is quick and efficient but then can get the torque ratio for hanging. We may end up at least just mocking it up just because it is a cool thing to have for documentation and showing other people :p.

I really appreciate all of your help with these questions. Sorry there are so many and I apologize for the length of this post. I have seen other posts though where someone will only answer a few questions and be very vague so I tried not to do that.

Better overly specific than under specific. Overkill is always good in bridges and questions.

As far as your potent issue, are you sure you have it plugged into an analog port? and when you are rotating the axle inside of the potent, are there two clear stopping points?

I figured as much :).

OK so I just checked these things. It is in analog port 1 and it does have two clear stopping points.

I can’t view or edit EasyC code… but, you could upload what code you have by adding an attachment. I believe most EasyC users create .zip of the project and upload that. While I won’t be able assist you, it should speed up the process once somebody who can (read EasyC files) views this thread…

If that’s not working for the potentiometer, I’d try making the variable an unsigned int instead of an int. When you compile the program does it give you an error? Or does it just not work in application?

You could try using the online window that is built into easy c to make sure that the potentiometer values are being recognized.

OK sorry for the delay. I have not had access to the computer with my code until now.

So, I tried making a .zip of it but was not able to with this computer. I kept getting error messages saying that specific program that zips files could not be run or something. Is there another way to post code?

Ok sorry forgive my ignorance but what is the difference? And how do I make an unsigned int?

Nope. It all compiles and checks out. But yes to your second question. It all checks in the computer but somewhere in between, there is a disconnect.

OK sorry can you elaborate on this a little? I know what the online window is but I don’t have a clue what I woud do with it :o.

Oh and another thing, we have been debating doing all omni wheel drive. Should we do this? If so, why? Like are there pros and cons? I’ve seen turning and mobility greatly increased in teams with all omnis but we are worried about traction issues (getting over the bump especially) and being pushed around by other bots. Does anyone have an opinion on this? Oh and we currently have omnis on the front and the bumpy wheels on the back.

We use nothing but Omnis. Clearing the bump isn’t a problem, and if you don’t want to be pushed there are ways of driving to prevent it. I like the way it turns better, and almost every robot I’ve built or programmed used them.

It’s Omnis or Mecanum. The traction wheels, we don’t care for.

Your center of rotation will be moved to the center of your robot if you use all Omnis. High traction on the front/back moves the center of rotation to the front/back, respectively. Most teams don’t have a preference either way, unless they have a design or strategy that calls for it. This year, I would almost recommend having traction wheels, as they should help you get over the bump if you end up straddling it by accident. That being said, our team is using a modified 6-wheel Mecanum drive…

Ok so what style of driving is there to help with this?

Is there a way to program traction wheels so that the center of rotation is at the center? My teammate says there is but I don’t think so.

I wish we could get Mecanums but they are really expensive and they seem pretty hard to program.

Turn at a 45 degree angle to the guy ramming you. Don’t get hit from the side. It just takes practice.

Possibly. But if there is, it won’t be as efficient as turning with 4 Omni wheels. You’d have to reduce motor power… somewhere.

Worth the cost. Maybe not the weight or the space required. And they’re easy to program. Daniel has sample code on the Bots n’ Stuff wiki, and we can always help you out if you don’t like the way that set works. Basically, you just add and subtract the channels on the joystick. EasyC has holonomic blocks, even, if you use that.

OK that makes sense.

OK I may pitch the all omni style to my teammates. We can’t get out of it when we are stuck straddling the bump as it is so we may just go to omnis for the turning advantages.

How large are they? Are they truly that large? And do you need both joysticks in order to have Mecanum drive? We are currently using one joystick for our lift and one for our drive and I really like that control on the lift and don’t really want to change that. If I can do the single joystick Mecanum drive, I’m hooked. Otherwise, that could be tough.