|colspan="2"|With the sensor properly connected, configuring it in ROBOTC is no more difficult than any of the official VEX sensors. In the Motors and Sensors Setup, on the VEX 2.0 Analog Sensors 1-8 tab, give the sensor a name and choose from Potentiometer, Light Sensor, or Line Follower for the sensor type. Any of these three types will work, as they are set up to return the raw A-to-D (Analog-to-Digital) values from the sensor. The Gyro and Accelerometer sensor types perform additional calculations on the raw sensor data, making them inappropriate choices for a basic analog sensor like the photoresistor. The VEX Light Sensor is the most similar to the Fischertechnik photoresistor, so it’s the logical choice.

|colspan="2"|With the sensor properly connected, configuring it in ROBOTC is no more difficult than any of the official VEX sensors. In the Motors and Sensors Setup, on the VEX 2.0 Analog Sensors 1-8 tab, give the sensor a name and choose from Potentiometer, Light Sensor, or Line Follower for the sensor type. Any of these three types will work, as they are set up to return the raw A-to-D (Analog-to-Digital) values from the sensor. The Gyro and Accelerometer sensor types perform additional calculations on the raw sensor data, making them inappropriate choices for a basic analog sensor like the photoresistor. The VEX Light Sensor is the most similar to the Fischertechnik photoresistor, so it’s the logical choice.

|-

|-

−

|colspan="2"|[[Image:tut_fischertechnik_4.png|left]]

+

|colspan="2"|[[Image:tut_fischertechnik_4.png|700px|left]]

|-

|-

|colspan="2"|The values from the photoresistor can be used in your ROBOTC programs just like any of the other sensors – using the <span class="keywordB">SensorValue</span><span class="codePunc">[]</span> command. The ROBOTC Natural Language commands like <span class="keywordB">untilLight</span><span class="codePunc">()</span> and <span class="keywordB">untilDark</span><span class="codePunc">()</span> will also work!<br />

|colspan="2"|The values from the photoresistor can be used in your ROBOTC programs just like any of the other sensors – using the <span class="keywordB">SensorValue</span><span class="codePunc">[]</span> command. The ROBOTC Natural Language commands like <span class="keywordB">untilLight</span><span class="codePunc">()</span> and <span class="keywordB">untilDark</span><span class="codePunc">()</span> will also work!<br />

Line 60:

Line 60:

|Unlike the photoresistor, the touch sensor has three pins and we’ll need to be careful about how we plug them into the Cortex. We’ll need to plug the pin labeled 1 into the GROUND line on the Cortex, the pin labeled 2 into the SIGNAL line, and the pin labeled 3 into the +5V line. Failure to do so can result in the sensor always reading 1, always reading 0, or having the values reversed (0 = pushed, 1 = not pushed).

|Unlike the photoresistor, the touch sensor has three pins and we’ll need to be careful about how we plug them into the Cortex. We’ll need to plug the pin labeled 1 into the GROUND line on the Cortex, the pin labeled 2 into the SIGNAL line, and the pin labeled 3 into the +5V line. Failure to do so can result in the sensor always reading 1, always reading 0, or having the values reversed (0 = pushed, 1 = not pushed).

|colspan="2"|Below is a picture of the sensor connected to the Cortex. Note that all three lines are used, and that the Fischertechnik connectors were again used to connect the sensor to jumper cables.

|colspan="2"|Below is a picture of the sensor connected to the Cortex. Note that all three lines are used, and that the Fischertechnik connectors were again used to connect the sensor to jumper cables.

|colspan="2"|The Fischertechnik touch sensor can be configured as a Touch Sensor or Digital Input in the ROBOTC Motors and Sensors Setup window.

|colspan="2"|The Fischertechnik touch sensor can be configured as a Touch Sensor or Digital Input in the ROBOTC Motors and Sensors Setup window.

|-

|-

−

|colspan="2"|[[Image:tut_fischertechnik_7.png|left]]

+

|colspan="2"|[[Image:tut_fischertechnik_7.png|700px|left]]

|-

|-

|colspan="2"|The values from the digital touch sensor can be used in your ROBOTC programs just like any of the other sensors – using the <span class="keywordB">SensorValue</span><span class="codePunc">[]</span> command. The ROBOTC Natural Language commands like <span class="keywordB">untilLight<span class="codePunc">()</span> and <span class="keywordB">untilDark<span class="codePunc">()</span> will also work!<br />

|colspan="2"|The values from the digital touch sensor can be used in your ROBOTC programs just like any of the other sensors – using the <span class="keywordB">SensorValue</span><span class="codePunc">[]</span> command. The ROBOTC Natural Language commands like <span class="keywordB">untilLight<span class="codePunc">()</span> and <span class="keywordB">untilDark<span class="codePunc">()</span> will also work!<br />

Revision as of 15:39, 7 May 2012

The VEX Cortex is an incredibly powerful and versatile microcontroller. Part of what makes it so versatile is the basic 3-pin system (Power, Signal, Ground) it uses for inputs and outputs.

When coupled with a powerful programming language like ROBOTC, the VEX Cortex allows you to connect all types of third-party sensors (and actuators) with little or no effort. Taken from the VEX Wiki, any analog sensor can be connected to the Cortex as long as its characteristics align with the following:

Output voltage range: 0.0 v to 5.0 v.

Must not exceed -0.5v to +5.5v.

Likewise, any digital sensor can be directly connected to the Cortex as long as its characteristics align with the following:

Provides 0.0 to 0.6 volts for a low and 2.5 to 5.0 volts for a high.

Must not exceed -0.5v or +5.5v.

All of the basic Fischertechnik sensors meet these qualifying characteristics, making them perfect candidates for use with the VEX Cortex!

Analog Sensors Example: Fischertechnic Photoresistor

Based on the VEX Cortex Schematic, the SIGNAL line in the ANALOG INPUTS bank is closest to the USB Port in the center of the Cortex, with the +5 VOLTS line next, and finally the GROUND line. The Fischertechnic analog sensors only have two output pins, and we’ll be connecting them to the SIGNAL and +5V lines.

In the picture below, we used the connector pins that come with the Fischertechnik system to connect the photoresistor to male-to-male jumper cables, which can be plugged directly into the Cortex. Note that with these basic analog sensors, polarity does not matter; it only matters that you use the SIGNAL and +5V lines on the Cortex.

With the sensor properly connected, configuring it in ROBOTC is no more difficult than any of the official VEX sensors. In the Motors and Sensors Setup, on the VEX 2.0 Analog Sensors 1-8 tab, give the sensor a name and choose from Potentiometer, Light Sensor, or Line Follower for the sensor type. Any of these three types will work, as they are set up to return the raw A-to-D (Analog-to-Digital) values from the sensor. The Gyro and Accelerometer sensor types perform additional calculations on the raw sensor data, making them inappropriate choices for a basic analog sensor like the photoresistor. The VEX Light Sensor is the most similar to the Fischertechnik photoresistor, so it’s the logical choice.

The values from the photoresistor can be used in your ROBOTC programs just like any of the other sensors – using the SensorValue[] command. The ROBOTC Natural Language commands like untilLight() and untilDark() will also work!

Also, just like any of the official sensors, the value from the Fischertechnik sensors will appear in the ROBOTC Sensors Debug window!

Digital Sensors Example: Fischertechnic Touch Sensor

Unlike the photoresistor, the touch sensor has three pins and we’ll need to be careful about how we plug them into the Cortex. We’ll need to plug the pin labeled 1 into the GROUND line on the Cortex, the pin labeled 2 into the SIGNAL line, and the pin labeled 3 into the +5V line. Failure to do so can result in the sensor always reading 1, always reading 0, or having the values reversed (0 = pushed, 1 = not pushed).

Below is a picture of the sensor connected to the Cortex. Note that all three lines are used, and that the Fischertechnik connectors were again used to connect the sensor to jumper cables.

The Fischertechnik touch sensor can be configured as a Touch Sensor or Digital Input in the ROBOTC Motors and Sensors Setup window.

The values from the digital touch sensor can be used in your ROBOTC programs just like any of the other sensors – using the SensorValue[] command. The ROBOTC Natural Language commands like untilLight() and untilDark() will also work!