|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
| Thread Tools | Rate Thread | Display Modes |
|
#1
|
|||
|
|||
|
Several questions (language comparison)
Our team (well, I, as our only veteran programmer) is trying to decide on the language to program the robot in next year. While thinking this over, I have come up with several questions.
Please correct me if I'm wrong in these questions. In the C++ WPILib, is there a way to set thread priorities? I believe it can be done in both LabVIEW and Java. What about UDP communication? I know LabVIEW contains primitives, but is this doable in Java and C++? Is there some sort of event handling available? Could I, for example, run a section of code whenever a new image is available from the camera, or run a section of code when a digital input changes without polling? I'll post more questions when I can think of them. Thank you for any help. |
|
#2
|
|||
|
|||
|
Re: Several questions (language comparison)
I can help answer one or two of your questions, and hopefully someone else can step in to fill in any gaps in my answers and answer the other questions.
Quote:
It's very doable in C++. We've done it... If I remember right, we used standard UNIX sockets, and it just worked. |
|
#3
|
|||
|
|||
|
Re: Several questions (language comparison)
I'll look up VxWorks calls. Any additional help on this would be appreciated.
Any clue if all of the standard library is available? I don't have the software environment set up (I'm on Linux here) so I can't test anything. Thank you for your help. |
|
#4
|
|||
|
|||
|
Re: Several questions (language comparison)
Quote:
Quote:
Quote:
Any class that inherits from InterruptableSensorBase (That means DigitalInput, but not AnalogChannel) can interrupt the code. I think the code was somewhere along the lines of this: Code:
DigitalInput *sensor;
void InterruptFunction() {
//do stuff here
}
Init() {
//blah
sensor = new DigitalInput(1);
sensor->RequestInterrupts( (tInterruptHandler)InterruptFunction);
sensor->EnableInterrupts();
//blah
}
No idea if an equivalent exists in Java |
|
#5
|
|||
|
|||
|
Re: Several questions (language comparison)
Okay, so I think I'm starting to get a better idea of this.
I guess I'll have to install WindRiver to look at more documentation -- I cannot find those interrupt functions in the WPILib user's guide, and they do not have the same names as the VxWorks ones. Thank you for the help. |
|
#6
|
|||
|
|||
|
Re: Several questions (language comparison)
The interrupt functions aren't in the documentation. We had to figure out how to use them ourselves
|
|
#7
|
|||
|
|||
|
Re: Several questions (language comparison)
For now, we only have one computer usable (i.e. a laptop other than the Classmate) for programming the robot, but it is running Linux.
Therefore, I'll probably (I'm still very undecided about all this) suggest Java. I'm willing to use my laptop as the team's programming laptop, if I can get NetBeans installed. I'll start working on it soon. Thank you. |
|
#8
|
||||
|
||||
|
Re: Several questions (language comparison)
Quote:
|
|
#9
|
|||
|
|||
|
Re: Several questions (language comparison)
Our kicker rotated and launched outward when the kick button was pressed. The rotations were at an extremely high speed. To prevent the kicker from coming out at an unpredictable and generally unfavorable angle, we used the sensor as an interrupt to make sure the kicker could come out at a predictable angle. As the speed of the rotator increased, the range of angles for a good kick decreased, so the room for error in the timing of the code wouldn't allow for timing of the kick to occur in the main loop. The interrupt checks a flag for whether to kick, and also will delay the kick as needed to compensate for the speed of the kicker (without the extra timing code, the kicker only works around 75% power)
|
|
#10
|
||||
|
||||
|
Re: Several questions (language comparison)
Quote:
|
|
#11
|
|||
|
|||
|
Re: Several questions (language comparison)
Quote:
The interrupt is setup through WPILib, so I have no idea if interrupts during interrupts are enabled (never seen any problems though). |
|
#12
|
||||
|
||||
|
Re: Several questions (language comparison)
Quote:
Or are you talking milliseconds? |
|
#13
|
|||
|
|||
|
Re: Several questions (language comparison)
I think it's in the single digit milliseconds, but again I'm making a guess from the speed of our kicker
|
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Several questions... | elbuo | NI LabVIEW | 0 | 16-02-2010 02:14 |
| joystick comparison within percentage | IceStorm | NI LabVIEW | 4 | 20-03-2009 00:19 |
| Aluminum sprockets for drive train - several questions | M. Mellott | Technical Discussion | 16 | 16-12-2008 15:53 |
| Several questions | Amittt | 3D Animation and Competition | 8 | 02-02-2006 18:21 |
| Comparison Paper ? | Steve W | General Forum | 13 | 09-11-2004 16:37 |