Main

tiggerbot Archives

October 8, 2007

introduction

Robot Army is a website documenting the development of a new amateur robot. TiggerBot II is an update of my very first robot, TiggerBot. While its form and functions are similar to the first robot bearing the name, its design and construction are quite different. Specifically, the primary design goal is to be cheap and easy to build from easily available and custom computer designed parts. As opposed to amateur robots that are unique and handmade, this combination of design constraints makes it feasible to consider building an "army" of such robots.

TiggerBot II is a work-in-progress. There are presently no CAM files available here (i.e. eps/dxf frame cuts or gerber circuit board layouts) because I do not want to distribute broken and/or malfunctioning designs -- as everything here so far has been to at least some extent. You may contact me if you are interested in building a broken and/or malfunctioning model, however. I plan to eventually publish full schematics and instructions under a BSD license.

October 9, 2007

frame 01

The circuit board and battery photographed here are from another project.

Oblique

Front

Side

October 17, 2007

board 01

This is logic board 01, partially assembled.

Board

October 20, 2007

more board 01 testing

More board assembly and testing and 01 is already a reject. Apparently TLE5602s are too slow for 30KHz PWM. The AVR and external SRAM work fine at 16MHz, though, which was the most worrisome aspect of this board. (Especially since this is basically SMT soldering practice for me.) I wanted to squeeze a few more cells into the battery pack anyway, which would put LMD18200s back on the table to replace the TLE5602s. Two more minor issues are the LM2678 /OFF incorrectly grounded (works if you just cut it) and the SRAM starting at address 0x0000, which means the first 4k are unusable.

The photo below shows the custom circuit board mounted, as well as the pan/tilt unit and CMUCam2+. The planned battery pack is installed between the two decks.

Whole

October 25, 2007

more

Installed and tested maxstream radio modem telemetry. (Not pictured, but it
goes in the big blank area on the logic board.) Also did more extensive
platform mobility testing and discovered serious problems. In some
circumstances tigger2 can throw a tread while turning on high-friction
surfaces. This may be due to slop in the suspension, insufficient tread
tension, incorrect drive/idler/road wheel geometry, or some combination of
those. In any case a frame 02 will be required before serious development can
begin. No references designs were available for using this tamiya track set
with an independent suspension, and it is possible that doing so will prove
impractical.

In the next revision, the drive and idler wheels will be higher and closer
together, the suspension plungers will fit tighter in the deck cutouts, and the
treads will be under slightly more tension at zero deflection.

October 27, 2007

frame 02

This one uses continuous-rotation modified rc servos instead of the maxon servos. Put simply, rc servos suck, but I am attempting to get the parts cost down and use only widely available parts. The tread geometry is modified somewhat in hopes of fixing the thrown-tread problem. The suspension is changed to eliminate the need to drill the road wheel struts edge-wise, so now a drill press is no longer critical equipment. This design also lacks a mount for the pan/tilt platform.


Cad

Parts

October 30, 2007

frame 02

As manufactured from above drawings. Cut from 1/4" amber transparent acrylic instead of ABS.


Tamiya Treads

Laser-cut parts

Unwrapped

Drilling drive cog

HS-425BB

Opened

Output gear tab

Finished servos

Side

Front

Back

Top
Initial thoughts: the inner ribs weren't necessary; the bracket+spacer works pretty well. The cutouts for it can be removed and the top deck can also be cut off at the front of the servos. The decision to put 4-40 bolts through the springs was an afterthought; I had been planning on gluing a 1/8" shaft into place. It works well because the torque keeps the backet from scraping on the threads.

On modifying the HS-425BB. This is an easy one to mod because it is dual ball bearing. A servo consists of a small dc motor, a gear train, and a potentiometer for feedback. On some cheap servos the potentiometer is a mechanically critical component. On BB servos it cannot be. So, there are two things you need to do. Both require opening the servo case. First, open the back. There is a small screw securing the pot. Remove it, then give a good yank on the cables to pull the pot out. If you're trying to be super elegant you can replace the pot with two matched resistors, thus making it forever at exactly 50%. More easily, you just move the existing pot outside the case. I did that by cutting a notch under where the actual cable exits to allow room for the 3 feedback wires. Second, the output gear has a small tab on it that physically prevents 360 deg rotation. Remove it very carefully lest you slice off a finger using a hobby knife. There are probably other better ways, though, and modifying rc servos is better documented elsewhere on the internet than here.

There is still too much slop in the suspension because I didn't fix it. That was because I had this cut out by a different company and didn't want to assume the kerf would be the same and have it not fit. Since the interdeck space is only 3/4" inches on this and the bracket is about 3/8", there is only about 3/8" of suspension throw. I think this can be solved by a cleverly designed cutout that lets the bracket penetrate the top deck, but that remains to be seen.

The only tricky step remaining in construction is coring out the drive cog. I did it with a mill, which is not supposed to be required equipment. Fortunately the drilling requires no precision.

It took about an hour to assemble this vehicle.

Revision 02 has much less tread problems on hard surfaces or flat rugs. One rug, the "evil" rug, still causes problems, but I'm hoping that if I remove the rotational play in the suspension it will help somewhat.

October 31, 2007

movie

This is frame 02 with logic board 01. Logic board 01 is much more complicated than what is planned for frame 02, but it has servo outputs and a radio modem, so it's good for remote-control testing.

>

Maybe it's time to invest in a camera capable of more than 15 fps.

November 1, 2007

design changes for frame 03

I like the bolts-through-springs approach but it would be better still if there were spacer tubes so the springs can't touch the threads. In short, 4-40 bolt inside a 3/4" spacer; spring around that; bracket around spacer engaging spring. I haven't been able to find a similar bracket with a large enough drill hole but drilling them out isn't hard.

It is starting to become clear that there are important physical differences between link-type treads and big rubber bands with holes in them. They are not the only elegance/money tradeoff, however.

November 2, 2007

suppliers

These are where pieces of TiggerBot II come from:

Frames 01 and 02

November 3, 2007

board 02 design


Logic Board 02
This one features 5 sonar rx/tx pairs and an AVR Mega 32. Should be ready by 10/12 - 10/14 or so. Compared to the 01 board, this one is less sophisticated in that it avoids SMT components, but the objective here is to come up with a design that can be assembled with at $10 radio shack soldering iron.

November 6, 2007

frame 03 design


Plastics.
It is designed for board 02. It is quite similar to the 02 frame except that (1) the suspension spring holes are designed for 3/16" brass spring guides (2) the strut cutouts are kerf-corrected for precision (3) the rear rib supports have been moved to eliminate the spacer (4) to reduce weight and expense, the decks are now 1/8" acrylic instead of 1/4" (Frame 02 was actually designed for that but I didn't bother with different materials because I was only having one made.) (5) the rear inner ribs are eliminated. These pictures show two copies of the separate thick and thin components, packed together for cutting efficiency.

This design will be rendered later today in thin red transparent and thick black opaque acrylic.

November 7, 2007

frame 03


Side

This is the first of two copies manufactured. It's not perfect but will be quite capable of evaluating the forthcoming logic board.

November 8, 2007

more

The design requires the suspension springs to be at least 3/16" i.d. and the only ones I could find on mcmaster-carr that fit had a rate of about 4lbs/in. (There are six, so it's really 24lbs/inch) This is roughly equivalent to not having any suspension. It also requires an extra steps of cutting brass tubes to fit between the bolt and spring and drilling the strut brackets out to 3/16"+ which is really close to the edge. I broke one while attempting that which means it is an unrealistic plan. I've ordered some nylon flange washers which I hope will allow me to solve the issues with the frame 02 suspension.

This frame was the first kerf-corrected design. In general stuff fit well. One issue was a crack in the top deck where the servo rib tab is inserted. That part is much thinner than it ought to be but there is no obvious way to correct it because it is somewhat dictated by the distance from the drive cog to the rear road wheel. I am going to open that tolerance slightly. It won't break during assembly but it may not be sufficiently durable. The kerf correction also meant that the servo rib bracket is not actually required which is fortunate since the hole for it is in the wrong place. It will help with durability but if removed would reduce cutting distance by about four inches.

November 9, 2007

more frame 03


Top

Side

Bottom

The suspension has been modified in these pictures. The cutout tolerances are tight enough and the decks are flexible enough that deforming them too much (i.e. tightening the suspension bolts) makes the suspension struts bind. One solution to this is to use 4 aluminum spacers to secure the decks together and secure the suspension bolts loosely using nylon nuts.

November 14, 2007

logic board 02 arrives

The second revision circuit boards have arrived. I can't wait to build one of these and find out how many components of this I actually got right.

November 16, 2007

board 02 testing

Just a few minor glitches so far, nothing that couldn't be fixed with some minor soldering. Still working on the code to make the sonar work but everything looks good on the scope. The charger components are not yet installed and only one of five sonar pairs is installed.

November 17, 2007

frame 03 + board 02

This is the first prototype that looks similar to what the final model will look like.

November 19, 2007

hari's tb2

My college roommate Hari has agreed to be the first alpha-tester. Here are some photos.

on cooking your jtag cable

As it turns out the power traces on board 02 are a bit close together. If you are clumsy (as I am) and damage the adjacent power and switch pins on the LM2676 such that they short, vcc goes from 5 to 10 volts and you have a bad day. The silver lining of this cloud is I finally had to figure out putting a bootloader on the mega32. This is how.

First, wire your AVR directly to a parallel port as described here. Basically, on a DB25, 1=SCK 2=MOSI 11=MISO, 16=RESET, 18-25ish=GND. Then do this:
uisp -dprog=dapa -dpart=ATmega32 --wr_fuse_h=D8 --wr_fuse_l=DF
uisp -dprog=dapa --erase --upload --verify if=stkload_m32_2k32k_16000000.hex
uisp -dprog=dapa --wr_lock=EF
The hex file comes from here. These steps set up the fuses correctly for a R02 board, write a boot loader to the 2kw boot section, and set up the lock bits so the app cannot overwrite it accidentally with the SPM (store-program-memory) instruction.

Then, assuming you are using your first usb serial port, upload code by pressing the reset button and then running this within a few seconds:
uisp -dprog=stk500 -dpart=ATmega32 -dserial=/dev/ttyUSB0 if=main.hex --upload --verify
You need to reset again afterwards because it will not come out of program mode on its own. Theoretically speaking this should make the board Arduino-compatible, but it didn't work on the first try (probably a slightly different bootloader) and I'm not really worried about spending time on that now.

November 20, 2007

board 02 mistakes

  • MAX232 VCC not connected. hand solder to VCC5.
  • TXMUX VSS and MAX232 capacitor GNDs not connected. hand solder to GND.
  • Too much voltage drop across AVCC isolation resistor. short.
  • Omit R29, substitute R26 100k instead of 50k (or, R25 to 25k)
  • AD5220 should have higher resistance
  • Make R10 smaller
  • Remove JTAG port, use a bootloader instead.
  • Increase sonar TX power by a factor of 2. I didn't realize why I put in R26 in until now: replace it with a tuned inductor to make the transmitter resonant. Apparently this does not work. I think the problem is that the piezo transducers are not particularly efficient capacitors. If a real capacitor is put in parallel with the transmitter and the inductor value is readjusted it should work but at this point I am more inclined to copy the tried-and-true circuit from Crunch.
More to come, unfortunately.

November 21, 2007

Le site web demandé n'existe pas

WTF. That is what you get when your name is Hari and you register a domain for your robot with a french registrar then are too lazy to point it at your webserver.

November 27, 2007

more board 02 mistakes

  • as it turns out you need dc blocking caps at every op-amp stage, especially the last one. AD5220 B lead cut, 0.1 uF added in series.
  • the mega32 has no agnd, just gnd, and they are connected. so not connecting them externally does not help a lot.
  • 0.1uF vcc filter caps are always a good idea around servos
  • an avcc isolation inductor goes a long way helping ignore the outside world
  • switching the AD5220 gain during receive seems to cause big problems. no idea why.
At right, photograph evidence that the sonar sort of works. Also, it can now drive around and avoid running into things. Large flat things anyway.

December 4, 2007

frame 04 design

This frame is a native 6mm design. (unlike 03, which was half 3mm, and 02, which was designed half 3mm then manufactured all 6mm.) This is sort of pricey, but frame 03 had a really flimsy feel to it, and I think I'll be able to find a place to have these cut online cheaper.

December 6, 2007

frame 04

This is a whole new complete frame except for the suspension springs, which hopefully mcmaster will deliver this week. The full 6mm design with standoffs and moderate kerf correction is the toughest design since the highly overengineered ABS frame 01.

Mistakes so far:
  • Some of the holes are too small.
  • The servo brackets are fitted too loosely.
  • The suspension brackets are out of spec. Totally not my fault.
Frame 05 is tentatively RC1. These cost $59 at canal. I think it will be about half that at ponoko but they seem to be having website problems at the moment. Also, starting with this build, I'm photographing every step (96 photos so far!) and writing down every single fastener required and tool used.

December 10, 2007

frame 06

This is frame 06. It is identical to frame 04 except the suspension bolts are a little bit closer to the suspension strut cutouts, i.e. placed correctly. This design is going to last for a while, or at least until I get board 03 done. Frame 05 was overadjusted for kerf and nothing fit right and we shall no longer speak of it.

December 18, 2007

board 03 design

This is compressed somewhat by putting some parts under the avr and the buzzer on the back. It lacks jtag, but it has an icsp connector. It has a second max232 specifically for the sonar so it is 4 times more powerful transmitting. It has an adjustable hysteresis external comparator which should suck less. It has a new variable gain element with a datasheet that specifically says "make before break switching for no glitches". The old one didn't claim that. The charger transistor is not in backwards. Ideally this should arrive before the end of the month.

December 31, 2007

finally a new digital camera


January 7, 2008

the end.

TiggerBot II is a loser. I probably won't be doing any more work on it.

About tiggerbot

This page contains an archive of all entries posted to Robot Army in the tiggerbot category. They are listed from oldest to newest.

devilcat is the previous category.

Many more can be found on the main index page or by looking through the archives.

Powered by
Movable Type 3.35