Thread: CRIO-FRCIII
View Single Post
  #13   Spotlight this post!  
Unread 26-03-2014, 22:06
NotInControl NotInControl is offline
Controls Engineer
AKA: Kevin
FRC #2168 (Aluminum Falcons)
Team Role: Engineer
 
Join Date: Oct 2011
Rookie Year: 2004
Location: Groton, CT
Posts: 261
NotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond repute
Re: CRIO-FRCIII

Looks like a lot of conversation has already been made with regards to these questions. I will take a stab at answering each. Please read the disclaimer to these answers at the bottom of this post.

Quote:
Originally Posted by Arhowk View Post
Well, for either of you I suppose
[*] How is the new Java API? Is it simply the old one or did they re-do it with all Java 8ness
There are two parts to this question, the API part, which is your interface, and what is changing on the backend of WPI
Lib. As of right now, as stated by NI the roborio will run the JavaSE Embedded JVM. This is based off of JavaSE7. The WPILibrary is currently written using JavaME as that is what runs on the current cRIO. WPI plans to upgrade the backend WPILibJ to take advantage of new features of the Java7 language such as genereics, auto unboxing, etc. HOWEVER, this is not likely to be implemented for the first year. I believe FIRST wants to have the transisiton as seemless as possible, and part of that is to keep the library the way it is for now.

As for the API, in either event, WPI lib will try it's hardest to keep the interface the same irrespective of weather or not the backend if based on JavaME or JavaSE.

Note, this does not affect your ability to use the features of JavaSE in code that does not depend on WPILib calls. In other words, you will be able to take full advantage of JavaSE in the code you write, even if WPILib is not re-written to support the new JVM.

One thing that might change out of the box is hardware indexing. Right now your hardware pins are 1 based in code (starting from 1)... there were talkins of changing this to be zero based, (1st pin will be (pin 0 in code), however it is not clear yet which way the WPI team will go on this one.

Quote:
Originally Posted by Arhowk View Post
[*] Is it easy to upgrade / switch JRE's on the niRIO?
The RoboRio is an ARM based processor running a custom version of linux made by NI. NI Linux Real time. Obviously we do not have the rules for next year, but I would assume the JRE would be set. But efen if it isn't, as long as the JRE supports the ARM processor in the RoboRio, and its other hardware like memory I don't see why it would not work. As for upgrading, it would be a similar processes as upgrading any package on any other version of linux. NI Realtime has a full linux shell.

Quote:
Originally Posted by Arhowk View Post
[*] (not familiar with C++ on cRIO but our team is considering C++ for 2015) I've heard most about the upgrade from Java ME to SE but is it also being updated to C++11? (or does it already have C++11)
These questions are circumstantial. What we are running now, may not be what is released in 2015. The team is still in Alpha testing and are trying to see what packages are to be used to offer the most stable system overall. Right now my roborio has libc6 on it. As the dev team tries new things software versions can go up or down. In any event, wheather it is c++11 or not, that should not be a reason to no go the C++ route.

Quote:
Originally Posted by Arhowk View Post
[*] How easy is it to write code on standard Java SE / cRIO Java and port it to niRIO?
Should be very easy with few modifications. The WPI lib team is working to keep the API the same as best as possible. Direct compatibility may not be possible (think about module numbers when we first got the cRIOII vs the old 8-slot), but large portions of code will definetly be able to be reused.

Quote:
Originally Posted by Arhowk View Post
[*] What are the deploy times?
FAST. File transfer the cross-compiled binary from your computer to the roborio and then execute it. No restart required. (The way it should be!)




Quote:
Originally Posted by Jared View Post
I have a few questions.

How long does it take for the whole thing to turn on, including the radio?
The current radio we tested uses the USB port for power. I have not done concrete timing tests, but based on my early observations the full system was up in 20-40 seconds. I can do proper timing tests at a later time and provide a more acurate answer later.

Quote:
Originally Posted by Jared View Post
Is it still WPIlib for Java?
Yes, WPI is the developer for the Java and C++ libraries as they have been in previous years.

Quote:
Originally Posted by Jared View Post
What's the radio look like? Are we still using the d-links?
The radio we have been using thus far are ASUS N-53. Wheather this is what will be rolled out with the final system is unclear at the moment. It is a USB wifi dongle and supports softAP mode (think wifi theter on your mobile device) as well as regular client mode. This hardware is not set in stone.

Quote:
Originally Posted by Jared View Post
How low does the voltage have to go to brown out the radio/controller?
The roborio has a specified voltage input from 6.8V to 16V DC with a staged brown out of 4.5V to 6.8VDC I have not done brown out test yet, but will do after this season is over.

Quote:
Originally Posted by vinnie View Post
How good is the support for standard Linux programs, do you think it might be able to run ROS?
I don't know first hand. The roborio is linux based on a dual Arm Cortex 9, if you can compile it for that processor and memory constraints of the roborio, I do not see why it won't run. There is a full linux shell and you can use opkg to get additional packages on the rio.

Quote:
Originally Posted by theawesome1730 View Post
I realize the roboRIO has a shorter profile but a larger foot print and now must have external modules for solenoid breakouts and additional analog and digital inputs. Does weight with all the extra components end up similar to the cRIO or is it lighter weight (as we would hope it to be)?
I can give you a specific number later. I do not know at the moment, my inclination is that the weight is less. However, even if I measure the weight it will not be accurate. WE were given development hardware, the PD board and rio have no housing, they are just the PCB, the other modules had cases that were 3D printed. I can not say how much each of these items will weight once official casings are added to the mix. I assume what we have are just temporary to support our dev testing.

Quote:
Originally Posted by xXhunter47Xx View Post
I thought the roboRIO was the radio as well? That's what I saw at the display model at San Diego or at least what I thought I saw.

Do any of you know what the Solenoid Module will be? I've been told it's a CANipede RCM but it looks a bit old to be used in conjuncture with the new hardware.
The roborio is not the radio as well. IT needs a radio device. Right now we are using a dongle provided as a candiate to provide that function (Asus N-53) not sure if this will be the final deviced used, but a device is needed.

Solenoids are not CANipede, they are a new product line from cross the road electronics, the Pneumatics Control Module (PCM) and Power Distribution Panel (PDP) have a can protocol built in.

If you only have a small number of actuators, nothing stops you from using the 4 relays onboard the cRIO for pneumatics. If you want more, then you must venture out and use the PCM. The PCM also takes in the compressor and DIO switch directly, so they do not need separate power or io from the roborio.

Quote:
Originally Posted by BitTwiddler View Post
Hmm. That would seem to imply that the video camera/server is going to have to be plugged into the new CRIO Ethernet port to get to the network. On the other hand I won't miss having to find a good place to mount the DLink.
That is not implied at all. You are free to use any periperial device you like as long as there is a linux driver for it. USB camera, or put a ethernet switch for more ports. There are pros and cons to not having a dedicated switch on board. In all likely hood, most teams will probably be adding a switch to their robot just to have more ethernet ports. We always have at least a driverstation and programming laptop pluged in over ethernet.

Quote:
Originally Posted by rfolea View Post
Anybody heard any numbers on the cost of the new system or how the rollout will be handled next year?
We were told not to quote these products. Every team will get one in the 2015 KOP. Expect the system to be significantly less than the cRIO.

Quote:
Originally Posted by yash101 View Post
Thanks.
I wonder if it would be legal to have an onboard cheap ethernet switch. Next year, I want to have a node based processing system with multiple computers, running a specific portion of the code. One ethernet port will probably not be enough . I guess the dongle will be hard to hit my a gamepiece but I'm still kinda skeptical because the ASUS router sitting in front of me has quite a poor build quality and crashes every 15 mins. Is the antenna a single plane or multiple axes? A plane antenna would mean the robot would lose communications when it turns a bit.
I am also wondering about the build quality of the roborio. The GPIO seems to be build into the main package. Have you ever had any problems with debris getting in the case and making it behave very wierd? That was one thing that happened quite often with the Digital Sidecar!
I am just wondering but how accurate are the current sensors in the PDB? Do you ever use them as an effective debug strategy for eradicating nasty shorts?
Thanks.
I think I just spammed you with questions
If the rules stays the same with regards to networking, nothing prevents you from adding a switch to your Robot. The dongle we are using right now is the Asus N-53, you can look up the poles of the antenna, although I assure you it is not single-poled. IF you want we can talk more about EM Waves and antenna theory.

The version of the RIO we have is not conformally coated. I am not sure if the final product will be. I plan to use the current sensors to tell if my motors are stalling or simply not driving the gearbox. That is all I really need them for. I am not sure how you can use them to detect shorts based on the they circuit they are apart of.



DISLAIMER: WE ARE IN ALPHA TEST PHASE. THE INFORMATION PROVIDED IS BASED ON WHAT WE HAVE NOW. THIS MAY VERY WELL CHANGE IN THE NEXT COMING MONTHS AS SOFTWARE AND HARDWARE DEVELOPMENT PROGRESSES. I CAN ASSURE YOU FIRST IS DOING EVERYTHING TO EASE THE TRANSISTION. FOR THOSE THAT MOVED FROM IFI TO CRIO BACK IN 2009, EXPECT A MORE SEEMLESS TRANSITION. ALL OF THE QUESTIONS REGARDING PERIPERIAL HARDWARE, AND SOFTWARE VERSIONS ARE SUBJECT TO CHANGE AS DEVELOPMENT INCREASES. IN ANY EVENT, THE 2015 CONTROL SYSTEM IS AWESOME, AND SHOULD BE A WELCOME CHANGE, DO NOT FEAR IT, OR LET INFORMATION PRESENTED DETER YOU FROM IT. WE DO NOT HAVE ALL OF THE ANSWER, BUT WILL TRY TO ANSWER THEM THE BEST WE CAN.

Hope this helps,
Kevin
__________________
Controls Engineer, Team 2168 - The Aluminum Falcons
[2016 Season] - World Championship Controls Award, District Controls Award, 3rd BlueBanner
-World Championship- #45 seed in Quals, World Championship Innovation in Controls Award - Curie
-NE Championship- #26 seed in Quals, winner(195,125,2168)
[2015 Season] - NE Championship Controls Award, 2nd Blue Banner
-NE Championship- #26 seed in Quals, NE Championship Innovation in Controls Award
-MA District Event- #17 seed in Quals, Winner(2168,3718,3146)
[2014 Season] - NE Championship Controls Award & Semi-finalists, District Controls Award, Creativity Award, & Finalists
-NE Championship- #36 seed in Quals, SemiFinalist(228,2168,3525), NE Championship Innovation in Controls Award
-RI District Event- #7 seed in Quals, Finalist(1519,2168,5163), Innovation in Controls Award
-Groton District Event- #9 seed in Quals, QuarterFinalist(2168, 125, 5112), Creativity Award
[2013 Season] - WPI Regional Winner - 1st Blue Banner