Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   Technical Discussion (http://www.chiefdelphi.com/forums/forumdisplay.php?f=22)
-   -   What is a Cypress? (http://www.chiefdelphi.com/forums/showthread.php?t=84402)

eedo369 18-03-2010 18:38

What is a Cypress?
 
Hello everyone,

I know this may sound a bit too late but I wanted to ask what exactly is the Cypress, what can I do with it and how does it work?

hipsterjr 18-03-2010 19:19

Re: What is a Cypress?
 
Well here in the south, a cypress is a tree that grows in the swamp. But I doubt that is what you mean.

The Lucas 18-03-2010 19:27

Re: What is a Cypress?
 
It is an electronic board that came in your KOP, also called a PSoC. You can connect it to the USB port of your Classmate and configure what I/O options you want. Then then you can program your cRIO to can read analog and digital I/O from switches etc, connected to the Cypress

Mike Betts 18-03-2010 19:28

Re: What is a Cypress?
 
You can read more about it here.

vhcook 18-03-2010 19:34

Re: What is a Cypress?
 
There is a nice enclosure for the board which you can get here, if you would like a protective box and nice headers to wire to.

robself705 18-03-2010 20:58

Re: What is a Cypress?
 
You can do cool things like put switches on it to tell the robot which zone it is starting in so it can use the right autonomous code......that is if there is time to program different autonomous :D

apalrd 18-03-2010 21:44

Re: What is a Cypress?
 
Quote:

Originally Posted by robself705 (Post 939402)
You can do cool things like put switches on it to tell the robot which zone it is starting in so it can use the right autonomous code......that is if there is time to program different autonomous :D

You can do more than that - You can build a whole custom control box for your operator (although I recommend against using it for the driver, simply because the driver needs two joysticks or a gamepad to drive)

kevin.li.rit 19-03-2010 01:00

Re: What is a Cypress?
 
Quote:

Originally Posted by apalrd (Post 939418)
You can do more than that - You can build a whole custom control box for your operator (although I recommend against using it for the driver, simply because the driver needs two joysticks or a gamepad to drive)

You can have joysticks on the PSoC since its got ADC capability. You just have to use joysticks similar to the ones included in the kit 2008 and earlier.

eedo369 19-03-2010 05:53

Re: What is a Cypress?
 
Thanks for all the info!

Can you tell me how to program it and and how to use Labview to program the CRIO to read it?

apalrd 19-03-2010 13:43

Re: What is a Cypress?
 
To program the PSoC: Plug it in to USB (no battery needed) and open PSoC programmer. Find the file called FRC_IO_v2.hex, located in Shared Documents on the Classmate. Upload the image.

On the other end - Go to WPI Robotics Library => Driver Station => Extended IO for the extended IO. This includes VI's to read analog channels, digital channels, and write digital outputs, plus much more.

eedo369 19-03-2010 14:05

Re: What is a Cypress?
 
Quote:

Originally Posted by apalrd (Post 939629)
To program the PSoC: Plug it in to USB (no battery needed) and open PSoC programmer. Find the file called FRC_IO_v2.hex, located in Shared Documents on the Classmate. Upload the image.

On the other end - Go to WPI Robotics Library => Driver Station => Extended IO for the extended IO. This includes VI's to read analog channels, digital channels, and write digital outputs, plus much more.

O.K. Let's say that I want to use the Button on the Cypress to determine which autonomous I want to use right before the match starts.
How do I do that?

The problam is, I don't know how to "connect" what I see in Labview to what I see on the board. And our electrician hasn't got a clue on how to connect DIOs and PWMs etc to it.

Dad1279 19-03-2010 14:47

Re: What is a Cypress?
 
Quote:

Originally Posted by eedo369 (Post 939640)
O.K. Let's say that I want to use the Button on the Cypress to determine which autonomous I want to use right before the match starts.
How do I do that?

The problam is, I don't know how to "connect" what I see in Labview to what I see on the board. And our electrician hasn't got a clue on how to connect DIOs and PWMs etc to it.

For autonomous you can also use a few switches on the robot, connected to Digital Inputs. Or we use a rotary switch, with multiple resisters connected to an analog input on the robot.

To wire a few toggle switches on the control panel, we found it easier to take apart a joystick and parallel toggle switches to some of the push-buttons.

eedo369 19-03-2010 14:54

Re: What is a Cypress?
 
Quote:

Originally Posted by Dad1279 (Post 939649)
For autonomous you can also use a few switches on the robot, connected to Digital Inputs. Or we use a rotary switch, with multiple resisters connected to an analog input on the robot.

To wire a few toggle switches on the control panel, we found it easier to take apart a joystick and parallel toggle switches to some of the push-buttons.

These are cool ideas, but I want to specifically use the Cypress because I want to understand how it works.
I'm the programmer of my team and I had almost no problams writing our code in Labview, including state machines, clusters, etc.

The problam is that as far as I can see, the Cypress requires both knowledge in programming and in electricity, and I can't write any VI without knowing how to 'read' it properly and maximize its potential.

apalrd 19-03-2010 18:03

Re: What is a Cypress?
 
Once it is wired, its simple. Go to the FIRST control system documentation page and find a pinout of the Cypress IO board. Depending on what you want, you can use Compatibility or Enhanced IO. I used Enhanced, but Compatibility allows Virtual IO if you would rather have that. On your Classmate, you can configure if any digital input is pulled high, pulled low, floating, or out. You will want "pulled high" for all of the input/output you use, so the electrical team can wire between the signal and GND. In software, all pulled high inputs will be TRUE until the button is pressed, so NOT gates will become your friend. For analog Inputs, voltage in will be between 0v and 3.3v, or you can use the "analog range" for 0-1. There are also more advanced features, like two quadrature encoders on four inputs and some even more advanced IO on the Wireless connector (two DAC's, PWM Out, HDDIO, etc. ) and you can also use the buttons , LED's, 3-axis accelerometer, and touch slider on the board itself. It's all in "Enhanced IO". One thing you might find useful is the front panel. You can just put an indicator on all of the Cypress IO of the category you want and see what it does.

eedo369 19-03-2010 18:12

Re: What is a Cypress?
 
Quote:

Originally Posted by apalrd (Post 939690)
Once it is wired, its simple. Go to the FIRST control system documentation page and find a pinout of the Cypress IO board. Depending on what you want, you can use Compatibility or Enhanced IO. I used Enhanced, but Compatibility allows Virtual IO if you would rather have that. On your Classmate, you can configure if any digital input is pulled high, pulled low, floating, or out. You will want "pulled high" for all of the input/output you use, so the electrical team can wire between the signal and GND. In software, all pulled high inputs will be TRUE until the button is pressed, so NOT gates will become your friend. For analog Inputs, voltage in will be between 0v and 3.3v, or you can use the "analog range" for 0-1. There are also more advanced features, like two quadrature encoders on four inputs and some even more advanced IO on the Wireless connector (two DAC's, PWM Out, HDDIO, etc. ) and you can also use the buttons , LED's, 3-axis accelerometer, and touch slider on the board itself. It's all in "Enhanced IO". One thing you might find useful is the front panel. You can just put an indicator on all of the Cypress IO of the category you want and see what it does.

You make it sound so simple, but I guess you're right. The best thing to do is to just check it out myself.

I'll see what I can do next time I'll be near the CRIO.

Thanks!


All times are GMT -5. The time now is 14:37.

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