ST LY530AL - 300/s Analog Yaw-Rate Sensing Gyro (Z-Axis)
Power supply: 2.7 V to 3.6 V. (Normally 3.3V)
Output Type: Analog 3.33 mV/ °/s on 4x amplified output. 0.83 mV/ °/s on 1x output.
Power consumption: 5mA Active mode, 1uA Power-down mode
A gyroscope measures angular rate, or how quickly an object turns. The rotation is typically measured in reference to one of three axes: Yaw, Pitch, and Roll. The LY530AL is, by nature, a yaw axis Gyro, measuring rate of turn on a Z-axis. The axis of measurment, however, depends on the direction or orientation of mounting. The images below demonstrate roll, pitch, and yaw and the three possible axes for measurement.
Gyroscopes are used in a variety of applications, very often by the automotive industry. Accelerometers are excellent for testing sudden acceleration and deceleration and can be employed in airbag releasing systems and auto locking brakes. Gyroscopes can be used to measure whether a car seems to be spinning out of control. Should the rate of turn increase dramatically in a very brief burst of time, further braking sytems can be implemented to stop the car.
Gyros are also very popular for robotics purposes. They can be used for navigation and equilibrium calibration. Sparkfun sells a Six Degrees of Freedom arrangement which uses three of these devices in conjunction with an accelerometer to create an internal navgation system for robots, model boats, and model aeronautics projects.
THE CORIOLIS EFFECT Gyroscopes measure angular rate by means of Coriolis Acceleration.
(Images used below are from the ADXRS150 information sheet
In the above picture, there is an example of the Coriolis Effect. Imagine you are standing on the edge of a stationary carousel and you see a tree in the distance. You wish to walk towards the tree. As the carousel starts spinning, you still attempt to walk towards the tree. Because of the spinning of the carousel, you are forced to walk not only forward but to your left as well to counteract the spinning of the carousel. The amount of left-ward acceleration required to continue to allow you to walk straight towards the tree is the Coriolis acceleration.
Silicon beams inside the substrate of the unit form two nominally equal capacitors. As the item which the gyro is mounted to turns, the mass in the center, mounted to a set of springs, exerts force in one direction or another. The mass also moves creating differential capacitance. This change is what is measured to create an output voltage. In the case of the LY530AL, this output voltage is about 0.83mV/degree/second.
- Vdd- 2.7~3.6V DC, Power supply
- GND- Ground
- Vref- Reference voltage output. It is zero-rate level describes the actual output signal if there is no angular rate present. Connect this pin to arduino's one analog input for reference to get more accurate result.
- Z 1xOUT- Outputs an analog voltage equivalent to rate of turning (0.83mV per degree of turning, up to 1200 degrees in one second)
- Z 4xOUT- Outputs an analog voltage equivalent to rate of turning (3.33mV per degree of turning, up to 300 degrees in one second)
- ST- Self-test, refer to datasheet if you are willing to use it. Otherwise, leave it unconnected.
- PD- Power-down, pull it up to put the chip into sleep mode to save power. Not necessary for an Arduino application I guess. Leave it unconnected is acceptable.
- HP- High pass filter reset. Refer to datasheet for more information. Not necessary for Sparkfun breakout board. Leave it unconnected is acceptable.
Datasheet from ST Microelectronics: The datasheet is pretty straightforward. The pin description provided is for the chip itself, not for the breakout board from Sparkfun, which is detailed above.
- Typical Operating Voltage: +3.3Vdc (2.7V MIN/3.6V MAX). The range of power for this device is pretty narrow, another reason the precomposed breakout from Sparkfun is a great tool, as they provide the proper set of resistors and capacitors.
- Typical Supply Current: 5mA (5.5mA MAX).
When the Gyro is at rest, the ouput on the output pin is +1.23V. This is a Z-Axis device, and when you turn it anti-clockwise along the Z-Axis, the voltage increases to the tune of 3.33mV per degree on 4x output, 0.83mV on 1x output. At a full 300 degrees per second, the 4x output voltage is 2.23V (anti-clockwise rotation) and 0.23V (clockwise rotation). At a full 1200 degrees per second, the 1x output voltage is 2.23V (anti-clockwise rotation) and 0.23V (clockwise rotation).
The voltage increases according to the rate at which you rotate. However, if you rotate faster than 300 degrees in a second, this sensor will not pick up anything past that ceiling. (!!! need experiment!!!!)
One main concept to consider is that these sensors measure how fast an object turns, but once it stops, the sensor resets itself to resting voltage. While an Accelerometer will measure tilt and provide a constant voltage based on angle measurement, a Gyro will not do so. That said, a Gyro is much more accurate for measuring rate of turn.
Below are some testing images which demonstrate the behavior of the devices:
The image on the left demonstrates resting voltage. The shot on the right shows a variety of turn types. A steady turn produces a consistent plateau of voltage. Once the turn stops, the voltage resets. The second set of turns show the spikes that are created when the Gyro is rotated sharply. Notice that immediately after the turn stops, the voltage resets to resting.
Datalogging done with Processing
Using the ADXRS 150
I originally set out to use the Gyro as part of a project involving sensor rigs worn by dancers so they can control environmental media playback during a performance. For that project, I am working with an experienced performer/dancer who has specific ideas as to what sort of physicality will be in the choreography. The Gyro, unfortunately, does not behave in a fashion which allows for a lot of room for improvisation.
Its first weakness is its inability to provide a distinct range of values for a full 360 degree turn. This particular model will not even fully translate half a turn if it happens in less than a second (150 degrees per second). A dancer's movements are often much faster than that.
As discussed above, they also do not provide a sense of angle, only angular rate, though I did start to examine ways to work with this information. An accelerometer would do the job nicely, as that sensor would record the angle of bend, and maintain it as long as it is held. I also tried using a flex sensor to accomplish the same idea. As an example, if I wanted to measure the movement of a dancer's lower arm, I might place a Gyro on the lower arm, near the wrist, which would allow me to get the rate of bend at the elbow. If I then had a flex sensor on the elbow, I can measure the angle of bend.
I did some test for this with a basic flex sensing variable resistor and a Microchip 18f252(Datasheet), and sent out decimal values from the 10 bit analog to digital converter (meaning values from 0- 1023) to a terminal program. Also, a 4.7k resistor was run to ground from the same pin of the chip on which the flex sensor sat (in my case A.0).
- The average output with the flex sensor flat was 340.
- The ouptut with the sensor bent to 90 degrees was around 210 (more resistance, lower values).
- Using this rough formula, you can guage angle: Angle = (DEC value) x .69 (again a rough formula based on one set of tests
Arduino Sample Code