Flig's Display

Decorate Your Robot

As always, we can make things better and introduce 'nice to have' features. Previously I called them "Distractions (of the Year)". Now, I'll just call them "Decorate Your Robot". But, this is not completely decorative function of the robot - it serves good purpose as well: to keep batteries safe.

Lithium Polymer (and Lithium Ion) batteries are very 'fussy'. They don't like being too cold, or too warm or being overcharged (fortunately today's chargers do cater for that) or, in this case important thing, over-discharged! From my RC days I've learnt that nominal voltage of LiPo battery's is 3.7V per cell. And batteries are quite sensitive of each cell's voltage going much lower. Some specs say that 3.3V its fine, another even go down to 3V, but my experience taught me that if resting voltage of battery, after being used, is at 3.7 or lower - that battery's lifespan is being shortened.

Read more…

Comments

Cat Gait

Write Software

Now that all pieces are in place we can go and improve stuff. It seems that the most stable way of walking the way cats do is to have long strides (another parameter to be passed in walking gait). Long strides make good 'triangles': when the front leg is moving near the last position while back leg is travelling through the air to almost meet front leg all on one side. That way the front leg on that side plus two legs on the other side form perfect triangle which contains centre of the body.

When the front and back leg meet, the front leg can then move forward while the back leg creates a very similar triangle which will still hold the centre of the body while the body travels forward. Only near the end of the front leg's travel through the air - towards the front most position, the centre of gravity would fall out of the 'back' triangle and the whole robot would tip forward. Fortunately, that happens just as the front leg was going down towards its front most position. When that happens, the whole process repeats with opposite side back leg that reaches last position and is ready to travel forward to meet its front leg.

Read more…

Comments

Walking Pattern or Gait

Write Software

Next on agenda is to make Flig walk!

Original idea was to make sure that the three legs are on the ground all the time, slowly 'travelling' backwards (propelling body forward) while fourth leg travels forward to a new position. But which way around? Now to synchronise all the legs to do what is needed of them to do so?

Read more…

Comments

First Software

Write Software

Now the simpler and easier part is done - it is time for writing some code. Fortunately, most of previous PiWars robot's architecture rested on PyROS (more references: Clustered PyROS, GCC Rover 2017 Software Part II ) it is easy to continue where those robots stopped. There is already quite a few elements of PyROS and extra services that will come handy:

  • PyROS discovery service - ability to discover and talk to robots based on their names not IP addresses
  • storage - registry of key/value pairs for other services - mostly used for calibrated values for servos
  • telemetry - library and service for streaming structured/record data out of services
  • shutdown service - service to check GPIO and shuts down Raspberry Pi
  • game controller service - service that reads PS4 gamepad changes and sends digested driving information to other services

Read more…

Comments

... Three Legs and Four

Build A Prototype

With one leg done, it is relatively easy replicating it 4 times and adding square frame to put shoulder servos inside.

Flig No Electronics

But that's just shell without any guts. Breakout boards PCA9685 for 16 servos is the perfect for the job along with PiZero2W. Also, if servos are properly grouped we can utilise INA3221 - a three channel, 13bit, i2c current/voltage monitor. As it is very easy to set up i2c address of INA3221 - we can use two or even three to monitor voltages and currents through our robot.

Read more…

Comments

One Leg, Two Legs...

Build A Prototype

Now target is set - let's get making!

Ideally, we would use small brushless motors with proper absolute positioning senors as direct drives or geared for driving joints, but such miniaturisation is way beyond our capabilities. There was some thoughts of making small harmonic drives or distribute gears along the legs, but current 3D printing is still not at that technological level.

Since PiWars robot need to fit certain dimensions and going really big is going to cause an issue in relatively small PiWars arena(s) (normally around 1500mm x 1500mm), it was easy decision to stick with servos and see to use servos as direct drives of joints (where possible and makes sense).

Read more…

Comments

Name is the Hardest Part

Name Your Robot

Next was naming. And many people who are in programming would know that is the hardest part. Luckily, name, kind of, imposed itself. Before we started staring down that rabbit hole, we though we need some public source repository - a place to collaborate on various things like images, links to web pages or videos, snippets for blogs, source code, etc. And there's where name emerged.

Read more…

Comments

Search For a Robot

Search The Internet

This was really interesting, a few weeks long brainstorming that went through quite a few different web sites and videos.

Main considerations we started with were:

  • simple, four wheels, tank steering robots are boring
  • four (or more) independent steered wheels we've already done on previous PiWars
  • legs are different to wheels

Read more…

Comments

Short (Pre) History

Recruit A Team Member

At least two-three years before learning about PiWars I was thinking of making a walking robot. As with many things I couldn't start small: I thought the easiest way would be to make a 6 or 8 legged one: Raspberry Pi powered, 3d printed body, servo drive legs and servos in all the joints. And to make it 'properly' - each leg to have three degrees of freedom. That meant 8x3 servos + a couple spares, so I ordered 28 servos in total.

Read more…

Comments

Nikola Web Site Is Up

This is first post on our new web site dedicated to four legged PiWars robot!

Comments