Führen Sie den Python-Beispielcode BNO055 mit I2C (Raspberry Pi 3B) aus.

Zusammenfassung

Ich hatte die Möglichkeit, BNO005 auf i2C mit Raspberry Pi 3B auszuführen, und bin gestolpert, sodass ich es als Memorandum belassen werde.

Die verwendete Sprache ist Python. Die Entwicklungsumgebung wurde gemäß [hier] festgelegt (https://learn.adafruit.com/bno055-absolute-orientation-sensor-with-raspberry-pi-and-beaglebone-black/hardware). Als ich das offizielle Beispiel von hier verschoben habe, funktionierte es mit I2C nicht so wie es war.

Lösung

Ich habe den folgenden Code in Zeile 30 geändert.

Befor

# Create and configure the BNO sensor connection.  Make sure only ONE of the
# below 'bno = ...' lines is uncommented:
# Raspberry Pi configuration with serial UART and RST connected to GPIO 18:
bno = BNO055.BNO055(serial_port='/dev/serial0', rst=18)
# BeagleBone Black configuration with default I2C connection (SCL=P9_19, SDA=P9_20),
# and RST connected to pin P9_12:
#bno = BNO055.BNO055(rst='P9_12')

After

# Create and configure the BNO sensor connection.  Make sure only ONE of the
# below 'bno = ...' lines is uncommented:
# Raspberry Pi configuration with serial UART and RST connected to GPIO 18:
bno = BNO055.BNO055(rst=18)
# BeagleBone Black configuration with default I2C connection (SCL=P9_19, SDA=P9_20),
# and RST connected to pin P9_12:
#bno = BNO055.BNO055(rst='P9_12')

Ich habe bei der Initialisierung von BNO005 die Kommunikationsschnittstelle nicht angegeben. Auf diese Weise wurde I2C automatisch eingestellt.

Ich habe es gefunden, indem ich mir den folgenden Teil der BNO005.py-Bibliothek angesehen habe.

if serial_port is not None:
            # Use serial communication if serial_port name is provided.
            # Open the serial port at 115200 baud, 8N1.  Add a 5 second timeout
            # to prevent hanging if device is disconnected.
            self._serial = serial.Serial(serial_port, 115200, timeout=serial_timeout_sec,
                                         writeTimeout=serial_timeout_sec)
        else:
            # Use I2C if no serial port is provided.
            # Assume we're using platform's default I2C bus if none is specified.
            if i2c is None:
                import Adafruit_GPIO.I2C as I2C
                i2c = I2C
            # Save a reference to the I2C device instance for later communication.
            self._i2c_device = i2c.get_i2c_device(address, **kwargs)

abschließend

Selbst wenn Sie I2C verwenden, wollte ich, dass Sie es in die Erklärung des Beispielcodes schreiben ....

Recommended Posts

Führen Sie den Python-Beispielcode BNO055 mit I2C (Raspberry Pi 3B) aus.
GPS-Tracking mit Raspeye 4B + BU-353S4 (Python)
Himbeere pi 1 Modell b, Python
Verwenden Sie vl53l0x mit RaspberryPi (Python)
getrpimodel: Erkennen Sie das Himbeer-Pi-Modell (A, B, B +, B2, B3 usw.) mit Python
Lassen Sie einen Servomotor mit Python auf Raspberry Pi 3 laufen
Arbeiten mit GPS in Python für Raspberry Pi 3
Discord Bot Himbeere Pi Null mit Python [Hinweis]
Ich habe L-Chika mit Razpai 4 (Python Edition) ausprobiert.
Holen Sie sich CPU-Informationen von Raspberry Pi mit Python
Stellen Sie mit Python auf Raspberry Pi eine Verbindung zu MySQL her
Messen Sie die CPU-Temperatur von Raspeye mit Python
Führen Sie Python mit VBA aus
Führen Sie prepDE.py mit python3 aus
GPGPU mit Raspberry Pi
DigitalSignage mit Raspberry Pi
Führen Sie iperf mit Python aus
Spezifischer Beispielcode für die Arbeit mit SQLite3 in Python
Versuchen Sie, Python auf Raspberry Pi mit Visual Studio zu debuggen.
Ubuntu 20.04 auf Himbeer-Pi 4 mit OpenCV und mit Python verwenden
USB-Boot mit Raspberry Pi 4 Modell B (3) LVM Edition
Zeigen Sie das Bild der USB-Kamera mit OpenCV von Python mit Raspeye an
Lassen Sie uns GPIO von Raspeye mit Python CGI betreiben
Verwenden Sie tkinter, um den Ausgabecode in Python als "A und vorgeben, B zu sein" zu verschieben
Holen Sie sich den Ländercode mit Python
Mit Python erstellte Beispieldaten
Python mit VSCode (Windows 10)
Mutter pflanzt mit Raspberry Pi
Aktualisieren Sie Raspberry Pi Python mit pyenv auf 3.7 oder höher
Führen Sie das AWS IoT Device SDK für Python auf Raspberry Pi aus
Führen Sie Python mit PyCharm aus (Windows)
Lassen Sie uns jupyter ausführen, das von VS Code nativ mit python3.8 unterstützt wird
Führen Sie Python mit CloudFlash aus (arm926ej-s)
Python-Anfänger öffnet und schließt die ineinandergreifende Kamera mit Raspberry Pi
Ich habe versucht, Movidius NCS mit Python von Raspberry Pi3 auszuführen
Erstellen Sie LCD-Spiele (16x2) mit Raspberry Pi und Python
Debuggen Sie Python mit VS-Code
Raspeye + Python + OpenGL-Memo
Führen Sie Label mit tkinter [Python] aus.
SSD 1306 OLED kann mit Raspeye + Python verwendet werden (Hinweis)
[Python] Beispielcode für die Python-Grammatik
Dokumentieren Sie Python-Code mit Doxygen
Senden Sie Push-Benachrichtigungen mit Python2 an iOS-Apps (mit Beispielcode).
Verbinden Sie Raspberry Pi mit "Python" mit der Alibaba Cloud IoT Platform
Erste Schritte mit Heroku-Viewing Hello World in Python Django mit Raspberry PI 3
Steuern Sie den Motor mit einem Motortreiber mit Python auf Raspberry Pi 3!
Ich möchte Python GUI ausführen, wenn Raspberry Pi startet
Automatischer Programmstart beim Start mit Raspberry Pi 3B + systemd Zusammenfassung
[Hinweis] Verwenden eines 16x2-stelligen LCD-Zeichens (1602A) von Python mit Raspeye
Port FreeRTOS auf Raspberry Pi 4B
[Raspberry Pi] Schrittmotorsteuerung mit Raspberry Pi
Himbeer pi 1 Modell b, knotenroter Teil 17
Servomotorsteuerung mit Raspberry Pi
Führen Sie Rotrics DexArm mit der Python-API aus
Serielle Kommunikation mit Raspberry Pi + PySerial