In this Video Lesson we show how to calibrate a joystick to report Angular Position. We do this using MicroPython on a Raspberry Pi Pico W. For your convenience, the code is included below.
In this lesson we show how to get intuitive calibrated results from a joystick, connected to a Raspberry Pi Pico W, using microPython. This lesson will make it easy to incorporate a joystick into Pico W projects.
For your convenience, the code we develop in the video above is included below.
In this video lesson I show you how to remove long term steady state error from the tilt values calculated from the MPU6050 IMU. We are using the following schematic for our prototype.
For your convenience, this is the code we developed in the video.
In this video lesson we show how to create a complimentary filter such we get pitch and roll data from the MPU6050 which is quick and responsive, accurate, and low noise. We are using the following schematic:
In this video lesson we describe how to measure roll, pitch, and yaw using the MPU6050. We describe the issues associated with drift in these gyros and will propose a path forward in dealing with the drift issue.
We are using the following circuit for this project:
And this is the code we develop in today’s lesson.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
from imu import MPU6050
from machine import I2C,Pin
import math
import time
i2c=I2C(0,sda=Pin(16),scl=Pin(17),freq=400000)
mpu=MPU6050(i2c)
roll=0
pitch=0
yaw=0
tLoop=0
cnt=0
whileTrue:
tStart=time.ticks_ms()
xGyro=mpu.gyro.x
yGyro=mpu.gyro.y
zGyro=mpu.gyro.z
roll=roll+yGyro*tLoop
pitch=pitch+xGyro*tLoop
yaw=yaw+zGyro*tLoop
cnt=cnt+1
ifcnt==10:
cnt=0
print('R: ',roll,'P: ',pitch,'Y: ',yaw)
tStop=time.ticks_ms()
tLoop=(tStop-tStart)*.001
Making The World a Better Place One High Tech Project at a Time. Enjoy!