• Stars
    star
    339
  • Rank 124,214 (Top 3 %)
  • Language
    C++
  • License
    MIT License
  • Created almost 3 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

openDogV3

CAD and Code for openDog V3: https://www.youtube.com/playlist?list=PLpwJoq86vov8uTgd8_WNgBHFpDYemO-OJ

I've included a Bill of Materials this time, BOM.ods, which is probably complete, I'll be adding to it if I remember anything else.

I used the AS5047 encoders in absolute position mode in this build. Check out the ODrive documentation for more info: https://docs.odriverobotics.com/v/latest/encoders.html You will have to configure the encoder parameters and then run the offset calibration as per the ODrive docmentation. Default offsets are set in the code in the variable declaration section which will need calibrating to move the joints to the default positons in mode 3 below.

ODrive vel_limit and vel_limit_tolerance are set to math.inf within the ODrive tool which stops the motors disarming under certain circumstanses. (You will have to do 'import math' first within the ODrive tool).

Menu options on the Dog/LCD are as follows:

  1. nothing / default at power up
  2. put motors into closed loop control
  3. move legs outwards so they just clear the stand stirrups by 1-2 mm
  4. move legs so both shoulder and knee joints are at 45' (the default positions shown in the CAD)
  5. turn up motor position, velocity and integrator gains
  6. inverse kinematics demo mode for 6 axis of translation and rotation (also makes the legs slightly straighterCancel changes)
  7. walking mode (same leg position as 5)
  8. put the feet back into position so they rest on the stand stirrups

The remote now has a 'reverse' switch which reverses four axis of the remote so the dog walks backwards. This happens on the remote rather than in the dog's kinematics. There is also a motor enable switch which must be on for the dog to work.

Foot mould CAD is included for silicone rubber feet. I used a 25A Shore hardness Platinum cure silicone with pigment. Note that the Carbon Fibre foot tube is glued into the lower leg and foot insert to stop it rotating.

The parts are all printed in PLA. The larger parts are around 15% infill with 3 perimeters at 0.3mm layer height. The smaller parts such as the Cycloidal drive internals are 4 perimeters and up to 30-40% infill.

More Repositories

1

openDog

CAD and code for each episode of my open source dog series
C++
828
star
2

openDogV2

C++
229
star
3

ReallyUsefulRobot

C++
188
star
4

CycloidalDrive

179
star
5

ServoSmoothing

C++
174
star
6

3D_R2_Public

3D Print CAD files from XRobots.co.uk/R6
Arduino
157
star
7

RobotX

All the things for RobotX
C++
124
star
8

3D_BB8_Public

Files for the XRobots BB8 project
Arduino
90
star
9

BallContraption

C++
70
star
10

ScrewBike

C++
70
star
11

BB82_public

BB8 Version 2!
Arduino
64
star
12

miniDogV2

miniDog V2 CAD and Code
C++
62
star
13

miniDog

C++
55
star
14

RemoteDSM

C++
53
star
15

BB83_Public

Parts for my V3 BB-8 as I make them
Arduino
52
star
16

WiperMotorServo

C++
44
star
17

IoT-Message-Board

Python
38
star
18

PerformanceRobots

C++
38
star
19

GEDroid

C++
37
star
20

Navigation-Unit

C++
35
star
21

ROSremote

C++
32
star
22

CameraBot

C++
29
star
23

BallWheels

C++
27
star
24

Actuator_Linear

C++
27
star
25

ControlMomentGyros

C
26
star
26

SonicRobot

C++
26
star
27

tracks

Python
25
star
28

LidarNerf

C++
24
star
29

ActiveOmniWheel

C
24
star
30

OnmiSwerve

C++
18
star
31

TallBalancer

C
18
star
32

ATAT

C++
17
star
33

ReactionWheels

C
17
star
34

BlinkyBall

C++
17
star
35

StewartTentacle

C++
17
star
36

Tiny-E-Bike

Open source hardware CAD for the tiny-bike
15
star
37

BigBallWheels

C++
14
star
38

Monowheel

C
14
star
39

BallBalancingV1

C++
13
star
40

Posenet_OSC

Python
13
star
41

Rotaped

C
10
star
42

ForceControlledGripper01

C++
10
star
43

OmniTracks

C++
10
star
44

Animatronic-Elmo

C++
9
star
45

GNK-Power-Droid

Arduino
9
star
46

Centipede

C++
9
star
47

MechanicalMultiplexer

C++
8
star
48

BarcodeSynth

Python
8
star
49

Ultrasonics

C++
8
star
50

BalancingStrandbeest

C++
8
star
51

LEGOSkater

C++
8
star
52

RobotWorkstation

7
star
53

FlipDotMatrix

C++
7
star
54

ClimbingRobot

C++
7
star
55

RobotBin

C++
7
star
56

drifting

C++
6
star
57

SoftRobot

6
star
58

Pedrail

C++
6
star
59

SimpleBiped

C++
6
star
60

BallCVT

C++
6
star
61

BIGOmni-Bike

C++
6
star
62

Furby

C++
6
star
63

JammingGripper

6
star
64

Breakfast-Machine

C++
6
star
65

Punchy

C++
6
star
66

Worm

C++
5
star
67

OmniWalker

C++
5
star
68

Wolvo

Python
5
star
69

CAN-Bus-Teensy-Testing

Testing CAN Bus on Teensy 3.2 and 3.6
C++
5
star
70

CVT_Arm

C++
5
star
71

ScannerGuitar

The Barcode Scanner Guitar
C++
5
star
72

Morph

C++
5
star
73

VoiceControlledCar

C++
5
star
74

Accelerator

C++
5
star
75

Mobius

C++
5
star
76

TriPods

C++
4
star
77

Stairs

C++
4
star
78

Tensegrity

4
star
79

BendyTank

C++
4
star
80

WaveTank

C++
3
star
81

Mr-Fusion

3
star
82

BatBoard

Code for the BatBoard project
C++
3
star
83

Snake

C++
3
star
84

PedrailMonoWheel

C++
3
star
85

MarbleTea

C++
3
star
86

LaserEQ

Laser Graphic EQ projector
C++
3
star
87

Misc

Arduino
3
star
88

SnakeBike

C++
3
star
89

OmniBike

C
2
star
90

Tentacles

C++
2
star
91

Rhino

C++
2
star
92

Bike2Steering

C++
1
star
93

AT-AT_BIG

C++
1
star