|
TB67S581FNG Stepper Motor Driver Carrier (Soldered Header Pins) |
|
Pololu Digital Distance Sensor, 100cm, Side-Entry Connector |
|
ACS37030LLZATR-040B3 Current Sensor Compact Carrier -40A to +40A, 3.3V |
|
Pololu Distance Sensor v2 with Pulse Width Output, 50cm Max, Side-Entry Connector |
|
ACS37041KLHBLT-010B3 Current Sensor Compact Carrier -10A to +10A, 3.3V |
|
ACS72981LLRATR-050U5 Current Sensor Compact Carrier 0A to 50A, 5V |
|
0.100″ (2.54 mm) Breakaway Male Header: 1×2-Pin, Straight, Black, 100-Pack |
|
ACS37800KMACTR-030B3-I2C Power Monitor Carrier with Secondary I²C Isolation |
|
JST SH-Style Connector Board for Micro Metal Gearmotors, 2-Pin, Side-Entry (2-Pack) |
|
JST PH-Style Cable with Female Pins for 0.1" Housings, 4-Pin, 12cm |
How to make a Balboa robot balance, part 4: a balancing algorithm
- 29 January 2018’m Back.
Hey, with further sleuthing of code I’m guessing… are you folks reading the accelerometer values in Balance.cpp?
It seems like there is testing if there is greater than 0 values in Z at rest . and a test with the x axis to run the standup code. I’m I right? Is it possible these tests are not > 0 at 90 degrees?
thanks in advance.
How to make a Balboa robot balance, part 4: a balancing algorithm
- 29 January 2018Hi,
I can get my balboa with arms installed to balance, if I start it standing up, but it will not stand up from a 90 or 85 degree angle lying down.(the angle the robot rests at lying down with the arms installed.)
I have been changing these values in Balance.cpp:
if (angleRate > -2 && angleRate < 2)
{
// It's really calm, so we know the angles.
if (imu.a.z > 0)
{
angle = 110000; changed to 90000 or 80000
}
else
{
angle = -110000; changed to -90000 or -80000
}
distanceLeft = 0;
distanceRight = 0;
}
}
I am I on the wrong track?
I cannot get the red led on with the initial standup code to engage when I press button A.
What part of the balance program “sees” the resting angle when the robot is face down at 110 degrees?
Where should I look to change it to about 87 degrees?