Go to Post "Why yes, actually I AM a rocket scientist" - Gary Dillard [more]
Home
Go Back   Chief Delphi > Technical > Technical Discussion
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Closed Thread
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 13-05-2011, 01:46
James Critchley James Critchley is offline
Registered User
no team
Team Role: Mentor
 
Join Date: Apr 2011
Rookie Year: 2010
Location: Lake Orion, Michigan
Posts: 45
James Critchley is an unknown quantity at this point
Virtual Robot System - Introducing VIRSYS (alpha)

Team 302 has been talking about this for a while and a number of poeple at the Championship wanted to see how exactly we were doing this... So here it is!!!

http://www.virsys.org/

VIRSYS (pronounceds "versus" as in "it's the game") is a virtual robot system. It's an emulator that lets you develop and test the hardware independent portions of your software without the robot or CRIO... even before you build it. Basically it runs realistic physics in the background and provides a light weight image generator (graphics) so you can interact with your robot on the field.



This release is setup for those that use LabVIEW, but we're looking for volunteers in the community to apply and demonstrate a similar stub architecture in C++, Java, Python, etc.

This is an ALPHA release, so please be patient and kind. There is very little documentation, but the code (labVIEW) is very clean (perhaps too clean in spots ). This public release is geared towards getting our process out there and seeing if there is interest to continue this project as an open development.

This release is the Dragons' 2011 off season trainer where our new software students will be able to work anytime and anywhere to learn general programming concepts as applied to a real competition robot. The robot is hard coded to a parametric "arm bot" and the graphics are fixed to our speciffic dimensions.

To get started you'll need : Windows, LabVIEW, a joystick or gamepad, Nate Robin's GLUT DLL, and the two files on the virsys.org downloads page.

If you want a quick demonstration of the physics, remove the rocker from the wheels (make the "z" coordinate on all of the wheels the same number in "robot.txt"... perferably "3.0" inches) then re-run and try to turn the robot! Or gradually move the "Chassis Center of Gravity" higher and see how easy it is to flip over. If you take out the friction out of the Arm and zero out the bump stop, you can really get it swinging around. With no friction in the bearing, the trick is making it stop.

Have Fun! And let us know what you think.

Last edited by James Critchley : 13-05-2011 at 09:13. Reason: corrected image link
  #2   Spotlight this post!  
Unread 26-06-2011, 11:43
blakeelias's Avatar
blakeelias blakeelias is offline
2011 CT chairman's award
FRC #0694 (Stuypulse)
Team Role: Programmer
 
Join Date: Jan 2011
Rookie Year: 2010
Location: New York
Posts: 26
blakeelias is an unknown quantity at this point
Re: Virtual Robot System - Introducing VIRSYS (alpha)

Cool! How would we be able to help make a Java version?

Also, is there a way to run the robot without a joystick (I don't know how to work with LabVIEW code)?
  #3   Spotlight this post!  
Unread 26-06-2011, 15:38
James Critchley James Critchley is offline
Registered User
no team
Team Role: Mentor
 
Join Date: Apr 2011
Rookie Year: 2010
Location: Lake Orion, Michigan
Posts: 45
James Critchley is an unknown quantity at this point
Re: Virtual Robot System - Introducing VIRSYS (alpha)

Great!

You're the second person to make the joystick comment, we'll have to remove that / make it optional.

The field render and dynamic model run outside of LabVIEW, so all you need to do is figure out how to send and receive the same messages.

To get started running with Java (Java robot code), you just need 2 things.

(1) The ability to run your java code on your PC as opposed to deployment on the robot. I do not work with Java or common FIRST project structure outside of LabVIEW. This SHOULD be easy, but I can see how it could be difficult if not planned from the outset of a robotics project.

(2) a UDP socket - send and receive implementation. You can look this up on Google and find LOTS of links. VIRSYS is going to have a few special features beyond the most generic stuff you find in those searches but not much. I can help you setup a nice communications class that does exactly what we need, then you can add it to the project.

See how far you can get on (1) and (2) and let me know (PM). I can install Java if necessary to help.

Once communications are completed you would create the same type of demo using the 302 robot from Java.

FYI: The generic robot dynamics code is now complete but I don't have a scripting feature for building anything yet. Another couple of months and you'll be able to build your own robots.
  #4   Spotlight this post!  
Unread 27-06-2011, 11:38
goodsky's Avatar
goodsky goodsky is offline
Programming Mentor
AKA: Skyler
FRC #1902 (Exploding Bacon)
Team Role: College Student
 
Join Date: Sep 2007
Rookie Year: 2005
Location: Orlando
Posts: 55
goodsky has a spectacular aura aboutgoodsky has a spectacular aura aboutgoodsky has a spectacular aura about
Re: Virtual Robot System - Introducing VIRSYS (alpha)

Exploding Bacon has been making C++/Java robot simulator since last build season.

We were considering making a Labview version in the future, but it looks like you have that covered! We are planning on releasing a stable version later this summer.

Very cool work though! This can be extremely useful!
__________________
OINK OINK BOOM!!!
  #5   Spotlight this post!  
Unread 29-06-2011, 11:47
James Critchley James Critchley is offline
Registered User
no team
Team Role: Mentor
 
Join Date: Apr 2011
Rookie Year: 2010
Location: Lake Orion, Michigan
Posts: 45
James Critchley is an unknown quantity at this point
Re: Virtual Robot System - Introducing VIRSYS (alpha)

goodsky,

I can't find your team's website. Google suggests FIRST team content, but it looks like it's been taken down. Is there anywhere we can see your simulator?
  #6   Spotlight this post!  
Unread 13-07-2011, 22:14
blakeelias's Avatar
blakeelias blakeelias is offline
2011 CT chairman's award
FRC #0694 (Stuypulse)
Team Role: Programmer
 
Join Date: Jan 2011
Rookie Year: 2010
Location: New York
Posts: 26
blakeelias is an unknown quantity at this point
Re: Virtual Robot System - Introducing VIRSYS (alpha)

Quote:
Originally Posted by blakeelias View Post
Cool! How would we be able to help make a Java version?

Also, is there a way to run the robot without a joystick (I don't know how to work with LabVIEW code)?
This thing is AWESOME.

My team is developing both a Python and Java version. Right now the Python version is well on its way, with a few WPILib classes. Java still needs to be designed.

https://github.com/prog694/VIRSYSPy
https://github.com/prog694/VIRSYSJ
  #7   Spotlight this post!  
Unread 07-08-2011, 11:43
hdastwb's Avatar
hdastwb hdastwb is offline
Registered User
AKA: Daniel Woodworth
FRC #1677 (Quantum Ninjas)
Team Role: Programmer
 
Join Date: Jan 2011
Rookie Year: 2009
Location: Kalamazoo, MI
Posts: 8
hdastwb is an unknown quantity at this point
Re: Virtual Robot System - Introducing VIRSYS (alpha)

Attached is a version of the trainer code with keyboard input instead of joystick input (and a picture documenting my changes). You can drive the robot with the I, J, K, and L keys and activate the button with the U key.
Attached Files
File Type: zip Trainer.zip (228.0 KB, 21 views)
  #8   Spotlight this post!  
Unread 07-08-2011, 21:35
James Critchley James Critchley is offline
Registered User
no team
Team Role: Mentor
 
Join Date: Apr 2011
Rookie Year: 2010
Location: Lake Orion, Michigan
Posts: 45
James Critchley is an unknown quantity at this point
Re: Virtual Robot System - Introducing VIRSYS (alpha)

Outstanding. You beat us to it!!!

I *believe* we already have a slightly larger update to share on this topic. I'm checking on that.
  #9   Spotlight this post!  
Unread 20-10-2011, 11:10
robs robs is offline
Registered User
FRC #0330 (BeachBots)
Team Role: Leadership
 
Join Date: Oct 2006
Rookie Year: 1995
Location: Frazier Park, CA
Posts: 3
robs is an unknown quantity at this point
Send a message via Yahoo to robs
Re: Virtual Robot System - Introducing VIRSYS (alpha)

Is there a way to simulate a lift device in VIRSYS?
Rob Steele
818 395 4657
  #10   Spotlight this post!  
Unread 21-10-2011, 09:10
James Critchley James Critchley is offline
Registered User
no team
Team Role: Mentor
 
Join Date: Apr 2011
Rookie Year: 2010
Location: Lake Orion, Michigan
Posts: 45
James Critchley is an unknown quantity at this point
Re: Virtual Robot System - Introducing VIRSYS (alpha)

Quote:
Originally Posted by robs View Post
Is there a way to simulate a lift device in VIRSYS?
Not in the "alpha" version. We are mainly concerned with showcasing the basic interface to the coding environment. We use LabVIEW and are looking for others to do Java and C++.

I do have the 3D physics to do generic articulated systems (your request). The trick is matching a generic configuration with the visualization and software environment interface. I want to get all of this going in a package that 90% of FRC teams could learn on thier own and use. Unfortunately it's a good size project, I don't have the time on my own to keep development on any kind of schedule, and last year's seniors who were helping have graduated.

The more requests I get, the more likely I will be to find the time to make this work. At this time my reply must be, "please wait for the Beta release which is under intermittent development."
  #11   Spotlight this post!  
Unread 08-11-2011, 16:27
JohnGilb JohnGilb is offline
Programming Mentor, Drive Mentor
FRC #0488
 
Join Date: Mar 2011
Rookie Year: 2003
Location: Redmond, WA
Posts: 116
JohnGilb has a spectacular aura aboutJohnGilb has a spectacular aura aboutJohnGilb has a spectacular aura about
Re: Virtual Robot System - Introducing VIRSYS (alpha)

What changes would need to be made in order to support other 4-wheel drive types? (Holonomic, Swerve)?
  #12   Spotlight this post!  
Unread 08-11-2011, 21:53
James Critchley James Critchley is offline
Registered User
no team
Team Role: Mentor
 
Join Date: Apr 2011
Rookie Year: 2010
Location: Lake Orion, Michigan
Posts: 45
James Critchley is an unknown quantity at this point
Re: Virtual Robot System - Introducing VIRSYS (alpha)

Quote:
Originally Posted by JohnGilb View Post
What changes would need to be made in order to support other 4-wheel drive types? (Holonomic, Swerve)?
Sorry John, you need the source code for that and it's in no shape for sharing right now.

The intent is to support most any robot in releases beyond "alpha"... Holonomic, nonholonomic, skids and skis, and outriggers are all possible with a small library of configurable wheels and ground contacts. The trouble is getting to a configurable robot software package quickly and making it accessible to everyone.

At the end of next build season I expect to be happy enough with the source code to support an open release and subsequent development of examples in each class of mobility. I do not expect that too many teams will be willing to use the tool in that form. Development would need to continue from there to support interactive design and assembly of robots.

Do you have a particular need? A software testbed for swerve drive was an itch I considered scratching this summer. Sounds like a good off-season programming competition idea for next year.
  #13   Spotlight this post!  
Unread 09-11-2011, 00:32
JohnGilb JohnGilb is offline
Programming Mentor, Drive Mentor
FRC #0488
 
Join Date: Mar 2011
Rookie Year: 2003
Location: Redmond, WA
Posts: 116
JohnGilb has a spectacular aura aboutJohnGilb has a spectacular aura aboutJohnGilb has a spectacular aura about
Re: Virtual Robot System - Introducing VIRSYS (alpha)

Good to know it's in the works!

There's no pressing need, but I think software that would let programmers try out new drive types would be a huge asset. One of the things that makes teams wary of implementing holonomic/swerve drive is knowing that the programming for it is going to be more complex than tank drive, and they don't want to hit all the painful issues during the season.

Having a virtual playground where you can test out new programming ideas would give them more confidence, and we'd probably see more complex drives emerge as a result.
  #14   Spotlight this post!  
Unread 18-05-2012, 20:36
Joe Ross's Avatar Unsung FIRST Hero
Joe Ross Joe Ross is offline
Registered User
FRC #0330 (Beachbots)
Team Role: Engineer
 
Join Date: Jun 2001
Rookie Year: 1997
Location: Los Angeles, CA
Posts: 8,580
Joe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond repute
Re: Virtual Robot System - Introducing VIRSYS (alpha)

It appears that the virsys website is no longer available.
  #15   Spotlight this post!  
Unread 16-06-2012, 13:36
James Critchley James Critchley is offline
Registered User
no team
Team Role: Mentor
 
Join Date: Apr 2011
Rookie Year: 2010
Location: Lake Orion, Michigan
Posts: 45
James Critchley is an unknown quantity at this point
Re: Virtual Robot System - Introducing VIRSYS (alpha)

Sorry all,

I've been pretty busy this year starting a business on the side. unfortunately that effort represents the time I would have otherwise put into mentoring activities with team 302 and developing VIRSYS.

I have re-posted the webpage here:

http://www.multibody.org/VIRSYS/

It is still a very good training exercise for new LV programmers. Not to mention experienced mentors who could spend days optimizing the robot's motion performance.

As things settle down with my first contract, I should be able to spin-off related source code and get VIRSYS development back on track. But don't hold your breath.

Best regards,
James
Closed Thread


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT -5. The time now is 05:11.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


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