Python脚本实现树莓派对MPU6050的数据读取
2017-08-30 17:31
821 查看
树莓派连接MPU6050六轴传感器接法(mpu6050连接树莓派)
#!/usr/bin/python import smbus import math # Power management registers power_mgmt_1 = 0x6b power_mgmt_2 = 0x6c def read_byte(adr): return bus.read_byte_data(address, adr) def read_word(adr): high = bus.read_byte_data(address, adr) low = bus.read_byte_data(address, adr+1) val = (high << 8) + low return val def read_word_2c(adr): val = read_word(adr) if (val >= 0x8000): return -((65535 - val) + 1) else: return val def dist(a,b): return math.sqrt((a*a)+(b*b)) def get_y_rotation(x,y,z): radians = math.atan2(x, dist(y,z)) return -math.degrees(radians) def get_x_rotation(x,y,z): radians = math.atan2(y, dist(x,z)) return math.degrees(radians) bus = smbus.SMBus(0) # or bus = smbus.SMBus(1) for Revision 2 boards address = 0x68 # This is the address value read via the i2cdetect command # Now wake the 6050 up as it starts in sleep mode bus.write_byte_data(address, power_mgmt_1, 0) print "gyro data" print "---------" gyro_xout = read_word_2c(0x43) gyro_yout = read_word_2c(0x45) gyro_zout = read_word_2c(0x47) print "gyro_xout: ", gyro_xout, " scaled: ", (gyro_xout / 131) print "gyro_yout: ", gyro_yout, " scaled: ", (gyro_yout / 131) print "gyro_zout: ", gyro_zout, " scaled: ", (gyro_zout / 131) print print "accelerometer data" print "------------------" accel_xout = read_word_2c(0x3b) accel_yout = read_word_2c(0x3d) accel_zout = read_word_2c(0x3f) accel_xout_scaled = accel_xout / 16384.0 accel_yout_scaled = accel_yout / 16384.0 accel_zout_scaled = accel_zout / 16384.0 print "accel_xout: ", accel_xout, " scaled: ", accel_xout_scaled print "accel_yout: ", accel_yout, " scaled: ", accel_yout_scaled print "accel_zout: ", accel_zout, " scaled: ", accel_zout_scaled print "x rotation: " , get_x_rotation(accel_xout_scaled, accel_yout_scaled, accel_zout_scaled) print "y rotation: " , get_y_rotation(accel_xout_scaled, accel_yout_scaled, accel_zout_scaled)
相关文章推荐
- python脚本读取MPU6050数据
- Delphi中使用python脚本读取Excel数据
- python读取文本、配对、插入数据脚本
- 通过shell脚本实现从文件中读取数据的几种方法
- python实现正弦+余弦图+csv文件数据读取
- 详解python实现读取邮件数据并下载附件的实例
- 简单Python脚本实现数据导出Excel格式的尝试
- Python3实现将文件归档到zip文件及从zip文件中读取数据的方法
- Python基于csv模块实现读取与写入csv数据的方法
- Python中xlrd、xlwt、xlutils模块,实现在Excel读取和写入数据
- python代理脚本实现期望数据与实际数据的比对(V1.0)
- 树莓派--python serial读取usb连接的arduino监测的数据
- Python实现读取TXT文件数据并存进内置数据库SQLite3的方法
- Delphi中使用python脚本读取Excel数据
- radiobutton 的数据可放在python脚本里读取,便于修改
- 实现BIN文件数据读取的TCL脚本分析
- Python3实现将文件归档到zip文件及从zip文件中读取数据的方法
- ARCGIS读取Excell数据生成多边形Python脚本
- 简单Python脚本实现数据导出Excel格式的尝试
- Python实现从excel读取数据并绘制成精美图像