question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

How to Get Value of 'TILT-ANGLE' in Gyro Sensor ?

See original GitHub issue

4.14.96-ev3dev-2.3.2-ev3

ii python3-ev3dev 1.2.0 all Python language bindings for ev3dev ii python3-ev3dev2 2.0.0~beta3 all Python language bindings for ev3dev

Hello! I’m Testing to Get Value from ‘TILT-ANGLE’ mode of Gyro Sensor. But The Following Error Occurs : (‘TILT-RATE’ Mode Is No Problem And Date Code of Sensor Is ‘N6’)

-Source Code-

#!/usr/bin/env python3
from ev3dev2.sensor import INPUT_1
from ev3dev2.sensor.lego import GyroSensor
from time import sleep
import sys

gy = GyroSensor(INPUT_1)
sleep(0.5)
while True:
    print(gy.tilt_angle, file=sys.stderr)
    #print(gy.tilt_rate, file=sys.stderr)
    sleep(0.5)

-Error code-

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/ev3dev2/__init__.py", line 261, in _set_attribute
    attribute.write(value)
OSError: [Errno 22] Invalid argument

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/robot/start/01_gyro.py", line 16, in <module>
    print(int(gy.tilt_angle), file=sys.stderr)
  File "/usr/lib/python3/dist-packages/ev3dev2/sensor/lego.py", line 617, in tilt_angle
    self._ensure_mode(self.MODE_TILT_ANG)
  File "/usr/lib/python3/dist-packages/ev3dev2/sensor/__init__.py", line 280, in _ensure_mode
    self.mode = mode
  File "/usr/lib/python3/dist-packages/ev3dev2/sensor/__init__.py", line 182, in mode
    self._mode = self.set_attr_string(self._mode, 'mode', value)
  File "/usr/lib/python3/dist-packages/ev3dev2/__init__.py", line 321, in set_attr_string
    return self._set_attribute(attribute, name, value)
  File "/usr/lib/python3/dist-packages/ev3dev2/__init__.py", line 264, in _set_attribute
    self._raise_friendly_access_error(ex, name)
  File "/usr/lib/python3/dist-packages/ev3dev2/__init__.py", line 281, in _raise_friendly_access_error
    chain_exception(ValueError("One or more arguments were out of range or invalid"), driver_error)
  File "/usr/lib/python3/dist-packages/ev3dev2/__init__.py", line 38, in chain_exception
    raise exception from cause
ValueError: One or more arguments were out of range or invalid
----------
Exited with error code 1.

Can Someone Fix This Problem by Modifying the Code? Thank You !

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Comments:5 (3 by maintainers)

github_iconTop GitHub Comments

2reactions
dlechcommented, Apr 13, 2019

At the beginning of your program (after the import statements), you can put…

GyroSensor.MODE_TILT_ANG = 'TILT-ANG'
0reactions
deoparkcommented, Apr 14, 2019

Thank You for Your Reply. Your Advice Was Right.

gy.modes ['GYRO-ANG', 'GYRO-RATE', 'GYRO-FAS', 'GYRO-G&A', 'GYRO-CAL', 'TILT-RATE', 'TILT-ANG']

Mode Name is ‘TILT-ANG’.

But It was defined In GyroSensor class like Below.

MODE_TILT_ANG = 'TILT-ANGLE' MODE_TILT_RATE = 'TILT-RATE' `

so, I Could Get a Value of ‘Tilt_angle’ by Modifying my Code like Below.

gy._ensure_mode('TILT-ANG')
while True:
    
    print(gy.value(0), file=sys.stderr)
    #print(gy.tilt_angle, file=sys.stderr)
    #print(gy.tilt_rate, file=sys.stderr)
    sleep(0.5)

Nevertheless, How Can I Modify the GyroSensor class Variable ?

Read more comments on GitHub >

github_iconTop Results From Across the Web

Measure Tilt Angle Using MPU6050 Gyro/Accelerometer ...
In this post we will learn how to Measure Tilt Angle using MPU6050 & Arduino. This can be done by simply interfacing MPU6050...
Read more >
Measuring Tilt Angle with Gyro and Accelerometer
The calculated tilt angle from the accelerometer data has slow response time, while the integrated tilt angle from the gyro data is subjected...
Read more >
Basic Tilt Sensor (MPU-6050) Example - Mount Holyoke College
Simple Arduino example to print out rotation values (in angles) using an MPU-6050 gyro and accelerometer sensor. The sensor can actually generate more...
Read more >
Accelerometer & Gyro Tutorial : 3 Steps - Instructables
So far we have a set of measured values that we can obtain purely from accelerometer ADC values. We'll call this set of...
Read more >
Accelerometers - HobbyTronics
Accelerometers are often used to calculate a tilt angle. They can only do this reliably when they are static and not moving. To...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found