Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   C/C++ (http://www.chiefdelphi.com/forums/forumdisplay.php?f=183)
-   -   4-slot cRIO and default modules (http://www.chiefdelphi.com/forums/showthread.php?t=100682)

RufflesRidge 19-01-2012 23:44

Re: 4-slot cRIO and default modules
 
That all sounds about right, other than that you could never put the modules wherever you wanted as far as I know. I believe it used to be Analog in 1 and 2 (may have been 1 and 3), Digital in 4 and 6 and solenoid in 7 and 8.

And yes, backward code comparability has not been maintained. All code that specifically referenced slot numbers (other than analog slot 1 which is 1 either way) must be updated to work in order to work with the new libraries and image.

EDIT: Just saw your edit. You must put Analog, Digital, Solenoid in that order in slots 1-3 on either cRIO (solenoid may be omitted). On the 4 slot, the 4th slot can be any module. On the 8 slot the pattern repeats with slots 5-7 with 4 and 8 left empty (any of the "extra" modules may be omitted, but the modules may not be shuffled around).

There's a description of the new paradigm in the C++ Getting Started Guide: http://firstforge.wpi.edu/sf/go/doc1197?nav=1

mikets 19-01-2012 23:46

Re: 4-slot cRIO and default modules
 
Quote:

Originally Posted by Joe Ross (Post 1109517)
You've never been able to put the modules anywhere you wanted. Analog were slots 1 &2 (rules dictated you had to use slot 1), Digital were slots 4 & 6 (rules dictated you had to use slot 4), Solenoid were 7 & 8.

I meant "in theory". I am trying to understand the new paradigm, not that I really want to stick 3 analog modules in the cRIO.:)

mikets 19-01-2012 23:52

Re: 4-slot cRIO and default modules
 
Quote:

Originally Posted by RufflesRidge (Post 1109518)
EDIT: Just saw your edit. You must put Analog, Digital, Solenoid in slots 1-3 on either cRIO. On the 4 slot, the 4th slot can be any module. On the 8 slot the pattern repeats with slots 507 with 4 and 8 left empty.

So again, just to make sure I understand it correctly. In theory, if I put three analog modules in the 8-slot cRIO, the first one in slot 1, the second one in slot 4 and the third one in slot 5 (I suppose this is still legal :)). I can address them by:
Code:

Gyro(1, 1);    //Gyro in slot 1, channel 1
Gyro(2, 1);    //Gyro in slot 4, channel 1
Gyro(3, 1);    //Gyro in slot 5, channel 1

Does it sound right? If so, they should have called it "instance" instead of "moduleNumber".

Alan Anderson 20-01-2012 00:37

Re: 4-slot cRIO and default modules
 
Quote:

Originally Posted by mikets (Post 1109522)
So again, just to make sure I understand it correctly. In theory, if I put three analog modules in the 8-slot cRIO, the first one in slot 1, the second one in slot 4 and the third one in slot 5 (I suppose this is still legal :)). I can address them by:
Code:

Gyro(1, 1);    //Gyro in slot 1, channel 1
Gyro(2, 1);    //Gyro in slot 4, channel 1
Gyro(3, 1);    //Gyro in slot 5, channel 1

Does it sound right? If so, they should have called it "instance" instead of "moduleNumber".

Not right. No modules are supported in Slots 4 or 8 of an 8-slot FRC-cRIO.

mikets 20-01-2012 00:41

Re: 4-slot cRIO and default modules
 
Quote:

Originally Posted by Alan Anderson (Post 1109552)
Not right. No modules are supported in Slots 4 or 8 of an 8-slot FRC-cRIO.

You said no modules are supported in slot 4 or 8. Is it because it's not allowed by the rules or is it because the code won't accept anything in slot 4 or 8?

Joe Ross 20-01-2012 09:54

Re: 4-slot cRIO and default modules
 
Quote:

Originally Posted by mikets (Post 1109554)
You said no modules are supported in slot 4 or 8. Is it because it's not allowed by the rules or is it because the code won't accept anything in slot 4 or 8?

The code doesn't support it because the hardware (FPGA) doesn't support it.

mikets 20-01-2012 13:24

Re: 4-slot cRIO and default modules
 
Sorry about beating the dead horse but I am just curious about why the cRIO has the extra slot and the FPGA does not support it. It seems to me the extra slot is very useful especially in the 4-slot cRIO. For example, it is quite easy to run out of digital I/O channels with encoders taking 2 channels each, teams may want to stick another digital module in slot 4, for example.
Also RufflesRidge mentioned slot 4 of the 4-slot cRIO can take any modules.

Mark McLeod 20-01-2012 13:40

Re: 4-slot cRIO and default modules
 
You can stick whichever module you need in slot-4 of the cRIO FRC II.
The older cRIO FRC I, was just given the 3+0+3+0 pattern as a design choice. We are unlikely to mix the two up.

The FPGA is really full with all it's been given to do.
Excess capacity got sucked up to benefit us in other much more potentially useful ways.

All resources are limited in one way or another.
Engineering is designing and choosing between the optimal tradeoffs for our application.

Bryscus 20-01-2012 17:00

Re: 4-slot cRIO and default modules
 
Quote:

Originally Posted by mikets (Post 1109522)
So again, just to make sure I understand it correctly. In theory, if I put three analog modules in the 8-slot cRIO, the first one in slot 1, the second one in slot 4 and the third one in slot 5 (I suppose this is still legal :)). I can address them by:
Code:

Gyro(1, 1);    //Gyro in slot 1, channel 1
Gyro(2, 1);    //Gyro in slot 4, channel 1
Gyro(3, 1);    //Gyro in slot 5, channel 1

Does it sound right? If so, they should have called it "instance" instead of "moduleNumber".

You must have grown up only on a Windows machine. Windows only supports (without weird hacks) absolute paths for shortcuts. If you had grown up with Linux you would have used the symbolic links method (relative paths - module numbers not slot numbers). Then the code wouldn't have to be changed :).

Speaking of dead horses...this is just wrong. :deadhorse: LOL

- Bryce

mikets 20-01-2012 17:29

Re: 4-slot cRIO and default modules
 
Quote:

Originally Posted by Bryscus (Post 1109902)
You must have grown up only on a Windows machine. Windows only supports (without weird hacks) absolute paths for shortcuts. If you had grown up with Linux you would have used the symbolic links method (relative paths - module numbers not slot numbers). Then the code wouldn't have to be changed :).

Actually, I grew up with punch cards and unix :)

Mark McLeod 20-01-2012 18:10

Re: 4-slot cRIO and default modules
 
Quote:

Originally Posted by mikets (Post 1109930)
Actually, I grew up with punch cards and unix :)

Luxury...

Greg McKaskle 20-01-2012 21:42

Re: 4-slot cRIO and default modules
 
I hope I don't add to the confusion, but it is worth mentioning that the cRIO FPGA is reprogrammable. In its day job, it can have 8 32-bit digital modules if you like, and it is also possible to compile in a slot manager that will map the slots dynamically and make it truly plug-n-play. But, all of this is dependent on the FPGA, and the FRC FPGA uses fixed slots and has a ton of flexibility in what the pins can do.

Greg McKaskle

Bryscus 21-01-2012 21:17

Re: 4-slot cRIO and default modules
 
Quote:

Originally Posted by Mark McLeod (Post 1109977)
Luxury...

I've never had the fun of programming a machine with switches and push buttons, but some co-workers have shared many a story about entering bootloaders this way (and even more arcane methods).

- Bryce

mikets 21-01-2012 22:20

Re: 4-slot cRIO and default modules
 
Quote:

Originally Posted by Bryscus (Post 1110851)
I've never had the fun of programming a machine with switches and push buttons.

I've done that too with the PDP-11.

BitWizard 30-01-2012 01:28

Greg, we were planning to go with two analogs in slots 1 and 4, and two digitals in slots 2 and 3 on a 4-slot cRIO. We're ordering a 4-slot specifically for that purpose. Are you saying we can't do this. We have no pneumatics this year.

Chris


All times are GMT -5. The time now is 12:32.

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