Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bez3 integration tests #526

Closed
wants to merge 43 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
0180c72
add submodule
lkunelk Jun 26, 2022
70faeb1
submodule file name change
lkunelk Jun 26, 2022
1a07ade
used trimesh to scale down triangles
lkunelk Jun 26, 2022
e640b51
make camera/imu joints fixed, generate simple box collisions
lkunelk Jun 26, 2022
5599039
submodule point to generated bez3 proto
lkunelk Jun 26, 2022
09aaa8c
remove urdf2webots submodule
lkunelk Jun 26, 2022
e57de81
temp
lkunelk Jun 26, 2022
3dd2092
make bez3 walk in pybullet
lkunelk Jun 29, 2022
7215b3e
firmware
lkunelk Jun 29, 2022
06995c3
Seperate bez13 int test (#532)
Jun 29, 2022
1c8219b
fix byte string problem
lkunelk Jun 29, 2022
25f936d
undo display/ros for test
lkunelk Jun 29, 2022
a2c6986
wip
lkunelk Jun 30, 2022
4c5982b
fix imu issue
lkunelk Jul 1, 2022
fb402b3
remove unused script
lkunelk Jul 1, 2022
335611a
fix pytest
lkunelk Jul 1, 2022
1204507
run bez3 only in 2 tests
lkunelk Jul 1, 2022
31d88f0
adjust test
lkunelk Jul 1, 2022
0c40507
add more flakyness
lkunelk Jul 1, 2022
dc68c4c
move bez3 stl files
lkunelk Jul 1, 2022
40fe92e
turn off display for CI test
lkunelk Jul 1, 2022
78feb17
Update bez3 feet (#538)
lkunelk Jul 2, 2022
38a4d22
Merge remote-tracking branch 'origin/master' into bez3-proto
lkunelk Jul 2, 2022
4bfc79c
Merge branch 'master' into bez3-proto
Jul 2, 2022
9e91472
New feet
Vuwij Jul 2, 2022
2c78ab9
Merge branch 'master' into bez3-proto
Jul 2, 2022
b72c6c4
Merge branch 'master' of github.com:utra-robosoccer/soccerbot into be…
Vuwij Jul 4, 2022
dc46aa9
Reset
Vuwij Jul 4, 2022
e1c9233
Merge remote-tracking branch 'origin/master' into bez3-proto
lkunelk Jul 5, 2022
6551033
use updated arm length
lkunelk Jul 5, 2022
f7b7b70
Merge remote-tracking branch 'origin/master' into bez3-proto
lkunelk Jul 5, 2022
ab4a3ae
bez walks slighlty faster with stable camera
lkunelk Jul 6, 2022
f11bfc6
walk faster, problem with initial step making robot turn
lkunelk Jul 6, 2022
4ceca60
add bez3 trajectories
lkunelk Jul 6, 2022
e4b3d44
get branch up to date with master
lkunelk Jul 10, 2022
4fe976d
Merge remote-tracking branch 'origin/master' into bez3-proto
lkunelk Jul 10, 2022
7e7067c
Merge branch 'master' into bez3-proto
lkunelk Jul 10, 2022
3cfd1d5
Merge branch 'master' into bez3-proto
lkunelk Jul 10, 2022
b31170f
zero standing PID and make walking slower but more stable
lkunelk Jul 10, 2022
a476e65
bez3 stands higher while walking
lkunelk Jul 11, 2022
6331f48
Various fixes for Bez 3 get up from back testing
acrylic-origami Jul 11, 2022
17c76f8
Elongate arms of Bez 3 by 10 cm
acrylic-origami Jul 11, 2022
9c92b65
Merge branch 'bez3-proto' of github.com:utra-robosoccer/soccerbot int…
acrylic-origami Jul 11, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions .github/workflows/remove_old_artifacts.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: Remove old artifacts

on:
workflow_dispatch:
schedule:
- cron: "0 1 * * *"

jobs:
remove-old-artifacts:
runs-on: ubuntu-latest
timeout-minutes: 10

steps:
- name: Remove old artifacts
uses: c-hive/gha-remove-artifacts@v1
with:
age: "7 days"
43 changes: 42 additions & 1 deletion .github/workflows/test_integration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ env:
DOCKER_BUILDKIT: 1

jobs:
test_integration:
build_docker_images:
runs-on: ubuntu-latest
timeout-minutes: 60
concurrency:
Expand All @@ -38,6 +38,47 @@ jobs:
run: |
docker-compose pull
docker-compose build --progress=plain
- name: Push test docker images
run: |
docker tag utrarobosoccer/soccerbot utrarobosoccer/soccerbot:test
docker tag utrarobosoccer/webots utrarobosoccer/webots:test
docker push utrarobosoccer/soccerbot:test
docker push utrarobosoccer/webots:test
run_integration_tests:
runs-on: ubuntu-latest
needs: build_docker_images
strategy:
fail-fast: false
matrix:
robot_model: [bez1, bez3]
timeout-minutes: 60
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
ROBOT_MODEL: ${{ matrix.robot_model }}
steps:
- name: Maximize build space
run: |
sudo rm -rf /usr/local/lib/android
sudo rm -rf /usr/share/dotnet
sudo rm -rf /opt/ghc
df -h
- uses: actions/checkout@v3
with:
lfs: true
submodules: recursive
- name: Docker Login
uses: docker/login-action@v1.12.0
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_TOKEN }}
- name: Get Docker image
run: |
docker pull utrarobosoccer/soccerbot:test
docker pull utrarobosoccer/webots:test
docker tag utrarobosoccer/soccerbot:test utrarobosoccer/soccerbot
docker tag utrarobosoccer/webots:test utrarobosoccer/webots
- name: Walking Integration Test
run: |
docker-compose -f docker-compose.test.yaml up --exit-code-from friendly
Expand Down
1 change: 0 additions & 1 deletion docker-compose.test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -84,4 +84,3 @@ services:
PYTHONUNBUFFERED: 1
DISPLAY: unix$DISPLAY
XDG_RUNTIME_DIR: $XDG_RUNTIME_DIR
ROBOT_MODEL: bez1
2 changes: 1 addition & 1 deletion external/webots
25 changes: 20 additions & 5 deletions soccer_pycontrol/config/bez3_sim.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Path parameters

torso_height: 0.46
walking_hip_height: 0.26

joint_indices:
LEFT_ARM_1: 12
LEFT_ARM_2: 13
Expand All @@ -22,8 +22,23 @@ joint_indices:
HEAD_1: 16
HEAD_2: 17

steps_per_second_default: 1.0
bodystep_size_default: 0.05
foot_separation: 0.06
torso_offset_x: 0.03
walking_hip_height: 0.26
steps_per_second_default: 1.6
bodystep_size_default: 0.01
bodystep_size_short_backwards: 0.05
bodystep_size_short_forwards: 0.05
foot_separation: 0.045
torso_offset_x: 0.01
merge_fixed_links: true

crotch_sidediff_sway: -0.024 # -0.025
crotch_zdiff_sway: -0.02 # 0

step_rotation: 0.3 # 0.05
step_outwardness: 0.01 # 0.015
pre_footstep_ratio: 0.15 # 0.15
step_height: 0.07 # 0.065

standing_Kp: 0.00
standing_Kd: 0.00
standing_Ki: 0.00
19 changes: 19 additions & 0 deletions soccer_trajectories/trajectories/bez3_sim/getupback.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
time,0,3,7,7.6,8.2
right_leg_motor_0,0,0,0,0,0
left_leg_motor_0,0,0,0,0,0
right_leg_motor_1,0,0,-0.2,0.2,-0.2
left_leg_motor_1,0,0,0.2,0.2,0.2
right_leg_motor_2,0,0,1.2,1.57,1.57
left_leg_motor_2,0,0,1.2,0,1.57
right_leg_motor_3,0,0,0,0,0
left_leg_motor_3,0,0,0,0,0
right_leg_motor_4,0,0,0,0,0
left_leg_motor_4,0,0,0,0,0
right_leg_motor_5,0,0,0,0,0
left_leg_motor_5,0,0,0,0,0
right_arm_motor_0,0,-1,-1.9,-1.57,-0.5
left_arm_motor_0,0,-1,-1.9,0.6,-1.57
right_arm_motor_1,0,2,0,0,0
left_arm_motor_1,0,2,0,0,0
head_motor_0,0,0,0,0,0
head_motor_1,0,0,0,0,0
19 changes: 19 additions & 0 deletions soccer_trajectories/trajectories/bez3_sim/getupfront.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
time,0,0.75,1.5,2.25,3,3.75,4.5,5.25,6,6.75
right_leg_motor_0,0,0,0,0,0,0,0,0,0,0
left_leg_motor_0,0,0,0,0,0,0,0,0,0,0
right_leg_motor_1,0,0,0,0,0,0,0,0,0,0
left_leg_motor_1,0,0,0,0,0,0,0,0,0,0
right_leg_motor_2,0,0,0,1,1.5,1.8,1.8,1.8,1.7,0.564
left_leg_motor_2,0,0,0,1,1.5,1.8,1.8,1.8,1.7,0.564
right_leg_motor_3,0,0,0,-1,-1.3,-1.8,-2.2,-2.6,-2.6, -1.176
left_leg_motor_3,0,0,0,-1,-1.3,-1.8,-2.2,-2.6,-2.6, -1.176
right_leg_motor_4,0,0,1.1,1.3,1.3,1.3,1.3,1.2,1.2,0.613
left_leg_motor_4,0,0,1.1,1.3,1.3,1.3,1.3,1.2,1.2,0.613
right_leg_motor_5,0,0,0,0,0,0,0,0,0,0
left_leg_motor_5,0,0,0,0,0,0,0,0,0,0
right_arm_motor_0,0,0,1.5,1.5,2,1.3,1.8,1.0,0.9,0
left_arm_motor_0,0,0,1.5,1.5,2,1.3,1.8,1.0,0.9,0
right_arm_motor_1,0,3.14,3.14,2,2,1.3,0,0,0,0
left_arm_motor_1,0,3.14,3.14,2,2,1.3,0,0,0,0
head_motor_0,0,0,0,0,0,0,0,0,0,0
head_motor_1,0,0,0,0,0,0,0,0,0,0
19 changes: 19 additions & 0 deletions soccer_trajectories/trajectories/bez3_sim/getupside.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
time,0,0.5
right_leg_motor_0,0,0
left_leg_motor_0,0,0
right_leg_motor_1,0,0
left_leg_motor_1,0,0
right_leg_motor_2,0,0
left_leg_motor_2,0,0
right_leg_motor_3,0,0
left_leg_motor_3,0,0
right_leg_motor_4,0,0
left_leg_motor_4,0,0
right_leg_motor_5,0,0
left_leg_motor_5,0,0
right_arm_motor_0,0,-1.5708
left_arm_motor_0,0,-1.5708
right_arm_motor_1,0,0
left_arm_motor_1,0,0
head_motor_0,0,0
head_motor_1,0,0
19 changes: 19 additions & 0 deletions soccer_trajectories/trajectories/bez3_sim/goalieleft.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
time,0,0.5,5
right_leg_motor_0,0,0,0
left_leg_motor_0,0,0,0
right_leg_motor_1,0,0,0
left_leg_motor_1,0,0,0
right_leg_motor_2,0.564,0.564,0.564
left_leg_motor_2,0.564,0.564,0.564
right_leg_motor_3,-1.176,-1.176,-1.176
left_leg_motor_3,-1.176,-2.5,-1.176
right_leg_motor_4,0.613,0.613,0.613
left_leg_motor_4,0.613,1.2,0.613
right_leg_motor_5,0,0,0
left_leg_motor_5,0,0,0
right_arm_motor_0,3.14,3.14,3.14
left_arm_motor_0,3.14,3.14,3.14
right_arm_motor_1,0,0,0
left_arm_motor_1,0,0,0
head_motor_0,0,0,0
head_motor_1,0,0,0
19 changes: 19 additions & 0 deletions soccer_trajectories/trajectories/bez3_sim/goalieright.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
time,0,0.5,5
right_leg_motor_0,0,0,0
left_leg_motor_0,0,0,0
right_leg_motor_1,0,0,0
left_leg_motor_1,0,0,0
right_leg_motor_2,0.564,0.564,0.564
left_leg_motor_2,0.564,0.564,0.564
right_leg_motor_3,-1.176,-2.5,-1.176
left_leg_motor_3,-1.176,-1.176,-1.176
right_leg_motor_4,0.613,1.2,0.613
left_leg_motor_4,0.613,0.613,0.613
right_leg_motor_5,0,0,0
left_leg_motor_5,0,0,0
right_arm_motor_0,3.14,3.14,3.14
left_arm_motor_0,3.14,3.14,3.14
right_arm_motor_1,0,0,0
left_arm_motor_1,0,0,0
head_motor_0,0,0,0
head_motor_1,0,0,0
20 changes: 20 additions & 0 deletions soccer_trajectories/trajectories/bez3_sim/rightkick.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
time,0.69,0.7,0.75,1,1.2,1.4,1.41,1.7,2
left_leg_motor_0,0,0,0,0,0,0,0,0,0
left_leg_motor_1,0.1,0.1,-0.15,-0.15,-0.25,-0.25,-0.25,-0.25,0.1
left_leg_motor_2,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25
left_leg_motor_3,-0.4,-0.4,-0.4,-0.4,-0.4,-0.4,-0.4,-0.4,-0.4
left_leg_motor_4,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2
left_leg_motor_5,-0.1,-0.1,0.15,0.15,0.25,0.25,0.25,0.25,-0.1
left_arm_motor_0,0,0,0,0,-1,-1,1,1,0
left_arm_motor_1,2,2,2,2,2,2,2,2,2
right_leg_motor_0,0,0,0,0,0,0,0,0,0
right_leg_motor_1,0.1,0.1,0.2,0.2,0.4,0.4,0.4,0.4,0.1
right_leg_motor_2,0.25,0.25,0.25,0.25,0.3,0.3,1.5,1,0.25
right_leg_motor_3,-0.4,-0.4,-0.4,-0.4,-1,-1,-1,-1,-0.4
right_leg_motor_4,0.2,0.2,0.2,0.2,0.5,0.5,0,0,0.2
right_leg_motor_5,-0.1,-0.1,-0.1,-0.1,-0.2,-0.2,-0.2,-0.2,-0.1
right_arm_motor_0,0,0,0,0,1,1,-1,-1,0
right_arm_motor_1,2,2,2,2,2,2,2,2,2
comment,stance,x,lean to the side,x,lift leg up,x,kick,step to balance,stance
head_motor_0,0,0,0,0,0,0,0,0,0
head_motor_1,0,0,0,0,0,0,0,0,0
4 changes: 2 additions & 2 deletions test_integration.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ def printlog(s: str):

class IntegrationTest(TestCase):
START_PLAY = "false"
ROBOT_MODEL = "bez1"
ROBOT_MODEL = os.environ['ROBOT_MODEL'] if 'ROBOT_MODEL' in os.environ else "bez1"

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

change back to bez1

def reset_simulation(self):

Expand All @@ -52,7 +52,7 @@ def reset_simulation(self):
subprocess.call(["/bin/bash", "-c", "killall python3 || echo 'No Python Executables running'"])
subprocess.call(["/bin/bash", "-c", "killall /usr/bin/java || echo 'No Java Executables running'"])
subprocess.call(["/bin/bash", "-c", "kill -9 $(pgrep webots) || echo 'No Webots running'"])
subprocess.call(["/bin/bash", "-c", "source ~/catkin_ws/devel/setup.bash && rosnode kill -a || echo 'No Nodes running"])
subprocess.call(["/bin/bash", "-c", "source ~/catkin_ws/devel/setup.bash && rosnode kill -a || echo 'No Nodes running'"])

def start_simulation(self):
if RUN_LOCALLY:
Expand Down