|
|
|
|
Debian | コードネーム | 年月 | 備考 | (参考)Ubuntuでの該当名称 |
Debian 11 | Bullseye | 2021/08/14~ | 2021/11からラズパイにリリース | Focal Fossa 20.04 LTS ? |
Debian 10 | Buster | 2019/06/20~ | 2019/06からラズパイ4対応 | Bionic 18.04 LTS |
Debian 9 | Stretch | 2017/08/16~ | 2018/03からラズパイ3B+対応 | Xenial 16.04 LTS |
Debian 8 | Jessie | 2015~ | 2016/02からラズパイ3対応 | Trusty 14.04 LTS |
Debian 7 | Wheezy | 2013~2016 | ||
Debian 6.0 | Squeeze | 2011~2014 | ||
Debian GNU/Linux 5.0 | Lenny | 2009~2012 |
MPU-6050 使用 3軸ジャイロスコープ・3軸加速度センサー モジュール ASIN: B008BOPN40 |
サインスマート(SainSmart) MPU-6050 3軸ジャイロスコープ モジュール for Arduino ASIN: B009A526M6 |
SODIAL(R)MPU-6050モジュール3軸アナログジャイロセンサ+加速度センサーモジュールMPU 6050用 ASIN: B00YIE4ALE |
EasyWordMall GY-521 MPU-6050 三軸加速度計 ジャイロスコープ 6DOF モジュール ASIN: B019664RAM |
SODIAL(R) GY-521 MPU-60503軸ジャイロ+3軸加速度センサ ASIN: B00K67X810 |
$ sudo i2cdetect -y 1 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- 68 -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- 0x68に存在するのを確認する
# -*- coding: utf-8 -*- #!/usr/bin/python # http://www.neko.ne.jp/~freewing/raspberry_pi/ # Copyright (c)2016 FREE WING, Y.Sakamoto import RPi.GPIO as GPIO import os import smbus import time # MPU6050 Class class MPU6050(): DevAdr = 0x68 myBus = "" if GPIO.RPI_INFO['P1_REVISION'] == 1: myBus = 0 else: myBus = 1 b = smbus.SMBus(myBus) def setUp(self): self.b.write_byte_data(self.DevAdr, 0x6B, 0x80) # RESET time.sleep(0.25) self.b.write_byte_data(self.DevAdr, 0x6B, 0x00) # RESET time.sleep(0.25) self.b.write_byte_data(self.DevAdr, 0x6A, 0x07) # RESET time.sleep(0.25) self.b.write_byte_data(self.DevAdr, 0x6A, 0x00) # RESET time.sleep(0.25) self.b.write_byte_data(self.DevAdr, 0x1A, 0x00) # CONFIG self.b.write_byte_data(self.DevAdr, 0x1B, 0x18) # +-2000/s self.b.write_byte_data(self.DevAdr, 0x1C, 0x10) # +-8g def getValueGX(self): #self.b.write_byte(self.DevAdr, 0x43) # return self.getValue(0x43) def getValueGY(self): return self.getValue(0x45) def getValueGZ(self): return self.getValue(0x47) def getValueAX(self): #self.b.write_byte(self.DevAdr, 0x3B) # return self.getValue(0x3B) def getValueAY(self): return self.getValue(0x3D) def getValueAZ(self): return self.getValue(0x3F) def getValueTemp(self): val = self.getValue(0x41) return (val/340.00+36.53) def getValue(self, adr): tmp = self.b.read_byte_data(self.DevAdr, adr) sign = tmp & 0x80 tmp = tmp & 0x7F tmp = tmp<<8 tmp = tmp | self.b.read_byte_data(self.DevAdr, adr+1) print '%4x' % tmp # debug if sign > 0: tmp = tmp - 32768 return tmp # tmp = self.b.read_word_data(self.DevAdr, adr) # MAIN myMPU6050 = MPU6050() myMPU6050.setUp() # LOOP for a in range(1000): os.system("clear") gx = myMPU6050.getValueGX() gy = myMPU6050.getValueGY() gz = myMPU6050.getValueGZ() ax = myMPU6050.getValueAX() ay = myMPU6050.getValueAY() az = myMPU6050.getValueAZ() t = myMPU6050.getValueTemp() print 'Gyro X= %6d' % gx print 'Gyro Y= %6d' % gy print 'Gyro Z= %6d' % gz print 'Acc. X= %6d' % ax print 'Acc. Y= %6d' % ay print 'Acc. Z= %6d' % az print 'Temp. = %6.2f' % t time.sleep(0.5)
$ sudo apt-get -y install python-smbus i2c-tools $ nano MPU6050.py $ python MPU6050.py
加速度センサ | MMA7455L NXP | 使い方の説明 | 0x1D | (W:0x32 R:0x33) | MMA7455 三軸加速度センサモジュール AQM0802Aと一緒に使えない相性? |
地磁気センサ | HMC5883L Honeywell | 使い方の説明 | 0x1E | (W:0x3C R:0x3D) | CJ-M49 デジタルコンパスモジュール 3軸地磁気センサ |
RFID NFCリーダライタ | NXP PN532 | 使い方の説明 | 0x24 | (W:0x48 R:0x49) | ELECHOUSE NFC MODULE V3 |
8ビット I/Oエクスパンダ | PCF8574 Texas Instruments | 使い方の説明 | 0x2F | (W:0x5E R:0x5F) | FC-113 PCF8574 キャラクタ液晶モジュール接続用 |
キャラクタ液晶 8文字x2行 | 秋月 AQM0802A ST7032 Sitronix | 使い方の説明 | 0x3E | (W:0x7E R:0x7F) | 秋月の AQM0802液晶はラズパイ側の回路が原因の癖が有ります。 MMA7455と一緒に使えない相性? PCA9515AD I2Cバスリピーターとの併用を推奨 |
キャラクタ液晶モジュール 16文字×2行 | 秋月 AQM1602A ST7032 Sitronix | 使い方の説明 | 0x3E | (W:0x7E R:0x7F) | 秋月の AQM1602A液晶モジュール |
湿度センサ | HTU21D TE Connectivity | 使い方の説明 | 0x40 | (W:0x80 R:0x81) | GY-21 温度、湿度センサーモジュール |
AD/DA変換 | PCF8591 NXP | 使い方の説明 | 0x48 | (W:0x90 R:0x91) | YL-40 8ビットA/D & D/Aコンバータ |
温度センサ | LM75A Texas Instruments | 使い方の説明 | 0x4F A0-A2=H | (W:0x9E R:0x9F) | A0~A2を "H"に設定で 0x4F デフォルト 0x48 |
3軸加速度センサ | ADXL345 Analog Devices | 使い方の説明 | 0x53 | (W:0xA6 R:0xA7) | GY-291 3軸加速度センサモジュール |
I2Cメモリ | AT24C32 (4KBメモリ) | 0x57 | (W:0xAE R:0xAF) | ZS-042 下記の RTCモジュールに搭載 | |
RTC リアルタイムクロック | DS3231 現 Maxim 旧 Dallas Semiconductor | 使い方の説明 | 0x68 | (W:0xD0 R:0xD1) | ZS-042 温度補償水晶発振器(TCXO)および水晶を内蔵する低コスト、 超高精度 I2Cリアルタイムクロック(RTC) |
赤外線アレイセンサ | AMG8833 Panasonic | 使い方の説明 | 0x68 | (W:0xD0 R:0xD1) | AMG8833 赤外線アレイセンサ Grid-EYEモジュール サーモグラフィーごっこが可能 |
6軸 ジャイロ+加速度センサ | MPU-6050 InvenSense | 使い方の説明 | 0x68 ADO=L | (W:0xD0 R:0xD1) | GY-521 三軸加速度センサ・三軸ジャイロセンサモジュール、 AD0端子 プルアップ時=0x69、 AD0端子 プルダウン時=0x68 |
9軸 ジャイロ+加速度+地磁気センサ | MPU-9150 InvenSense | 0x69 | (W:0xD0 R:0xD1) | MPU-6050に地磁気センサーを追加した最強センサー | |
9軸 ジャイロ+加速度+地磁気センサ | MPU-9250 InvenSense | 0x69 | (W:0xD0 R:0xD1) | MPU-9150の改良型、3軸加速度 + 3軸ジャイロ + 3軸コンパス | |
気圧/気温/高度センサ | BMP180 Bosch Sensortec | 0x77 | (W:0xEE R:0xEF) | BMP085の改良型 | |
気圧/温度/高度センサ | BMP280 Bosch Sensortec | 使い方の説明 | 0x76 SDO=L | (W:0xEC R:0xED) | BMP180の改良型、温度・気圧(高度)センサー SDO端子 プルアップ時=0x77、 SDO端子 プルダウン時=0x76 |
湿度/気圧/温度/高度センサ | BME280 Bosch Sensortec | 0x76 SDO=L | (W:0xEC R:0xED) | BMP280の進化型、湿度・温度・気圧(高度)の 4種類の環境情報を取得できる(湿度が追加になった) SDO端子 プルアップ時=0x77、 SDO端子 プルダウン時=0x76 | |
照度、近接センサ | APDS-9930 Broadcom | 使い方の説明 | 0x39 | (W:0x72 R:0x73) | |
RGB色センサ、ジェスチャー、照度、近接センサ | APDS-9960 Broadcom | 使い方の説明 | 0x39 | (W:0x72 R:0x73) | |
RGB色センサ | TCS34725 TAOS | 使い方の説明 | 0x29 | (W:0x52 R:0x53) | |
12点 静電タッチセンサ | MPR121 Freescale Semiconductor | 使い方の説明 | 0x5A | (W:0xB4 R:0xB5) | |
有機LEDモジュール 128x64 0.96インチ | SSD1306 SOLOMON SYSTECH | 使い方の説明 | 0x3C | (W:0x78 R:0x79) | DC='L'で 0x3C、DC='H'で 0x3D |