Close

Does this project spark your interest?

Become a member to follow this project and don't miss any updates

Tiny robot family

A family of tiny robots, each with their own way of life.

13.8k 39 288 166

This project was created on 03/22/2014 and last updated 2 months ago.

Description
This is my growing family of tiny robots based on ATtiny controllers, pager motors and photo-transistors.
Details

These three little autonomous vehicles have a lot of similarities such as controller, battery and movement mechanism, and they all percieve the world through photo-transistor eyes. But they are all distinct designs with different capabilities and behaviors. They are the first members of a growing family of miniature robots that I have been playing with off and on for a long time


A key aspect of their design is at least one photo-transistor eye and one controlled LED. This allows them to interact in a meaningful way. Depending on how they are programmed, this could be as complex as data transmission between bots or as simple as interfering with the sight of other bots. The resulting interaction would also depend on the type of bots. For example, the eyes of robot 1 point downward to scan the surface, while robot 3 only looks forward.

At this point I have not programmed them for any complex interaction. Their main behavioral features are thus:

  • Robot 1 - Has left and right eyes looking down. Can detect lightness patterns on the ground. Here is a video of it acting as a line follower.
  • Robot 2 - Has one downward eye and one forward. Controlls a group of LEDs around its perimiter. It can see the lightness of the ground and look forward. It can also signal in all directions with the LEDs.
  • Robot 3 - Has one eye looking forward and two separately controlled LEDs pointing about 45 degrees to either side. It is supposed to be able to detect obstacles and determine which direction to turn to avoid them. I am still developing this feature.


The hardware:
The controller could be any of the 8-pin ATtinys. I have used the tiny85 because that's what I had on hand. I have considered a version based on the ATtiny10, but haven't gotten around to that. The batteries are LIR2032 rechargeable lithium coin cells that I pulled out of some solar key chain lights from the 100yen shop(dollar store). They don't last very long between charges, but I'm not planning on spending much money for fancy new batteries.
Here is the underside of each one.


You can see the 2N7002K mosfet transistors for driving the motors. There are also various resistors, capacitors and LEDs. The schematics are here:



The software:
At this point, the software is very simple, but it is easy to add another behavioral pattern in the code since the main loop simply calls a behavior function. Robot 1 has a line following bahavior. Robot 2 scans the ground and can signal to other robots in the area. Robot 3 avoids obstacles(still working on that one). I would be willing to upload the current code if requested, but since it is continually changing and far from complete, I won't put it here just yet.

If I make new robots, videos, changes etc. I will post a log here about it.

Components
  • 1 × ATtiny85 Microprocessors, Microcontrollers, DSPs / ARM, RISC-Based Microcontrollers
  • 2 × 2N7002K MOSFET Discrete Semiconductors / Transistors, MOSFETs, FETs, IGBTs
  • 2 × small motors from andromedabots
  • 1 × some red LEDs
  • 1 × some ASDL-6620 phototransistors
  • 1 × various smd resistors and capacitors see the schematics
  • 1 × LIR2032 3.6V rechargeable battery

Project logs

View all 2 project logs

Discussions

DayDreamingPhd wrote 2 months ago null point

I'v been looking at an old 1920 valve amp radio & loking to buy 1 to rebuild & stil keep the valves make it into annolg to digital & if I could get a few people helping m,e this would be grate fun , I have no exspeerence in elictronics & programing. but this would make progject to be on www.kickstater.com .

Are you sure? [yes] / [no]

bootdsc wrote 2 months ago null point

Looks like someone found an old BEAM robotics article and decided to pass it off as there own.

Are you sure? [yes] / [no]

shlonkin wrote 2 months ago null point

Not really, though they do look kind of similar. I've never seen a BEAM bot with a microcontroller, but then again I've never read a BEAM robotics article.

Are you sure? [yes] / [no]

ZaidPirwani wrote 3 months ago null point

well, here is what I did yesterday...
https://github.com/Ejaad/tiny85Bots

Are you sure? [yes] / [no]

shlonkin wrote 3 months ago null point

That's a really cool robot! How well does it work? Do you have a video of it?
I really like your idea of glue stick wheels, but I'm guessing that thing goes way fast.

Are you sure? [yes] / [no]

Eric wrote 3 months ago null point

Saw this on sparkfun today and immediately thought of the robot family: essential sensor kit https://www.sparkfun.com/products/12862. Needless to say, desired components could be sourced individually more cheaply, but a good example of the possibilities.

Are you sure? [yes] / [no]

Eric wrote 3 months ago null point

So as a first effort to create a educational development platform for these little guys, I have created a PCB design that incorporates the key components, prototyping area for adding the sensors, and a usb charging circuit to allow charging the coin cell. Note that I am just a hacker, not an electrical engineer, and this is totally unverified/untested. But if interested, please improve/correct/modify! https://github.com/erikor/tinybot

Are you sure? [yes] / [no]

shlonkin wrote 3 months ago null point

Awesome! If you are going to make these, you should definitely post a project and let me know. I haven't looked over your designs yet, but hey, I'm no expert either. I'm a kindergarten teacher.

Are you sure? [yes] / [no]

Eric wrote 3 months ago null point

Ok...project residing at http://hackaday.io/project/2054. (These are a bit larger than yours...3.5 x 4.8 cm. The main size limitation is the size of the coin cell. I could not find a smaller coin cell with anywhere near the capacity that wasn't 3 x more expensive, but the hunt continues). First batch of PCBs is ordered and should arrive in 1-2 weeks!

Are you sure? [yes] / [no]

ZaidPirwani wrote 3 months ago null point

so i have got my motors delivered today - awaiting ATTiny85s now... while I wait,

thinking to over-engineer this:
design a 3d motor/PCB holder and print it with my still experimental 3d printer
design a PCB for the 3d printed PCB holder

OR
just put everything on a vero board with lots of glue and wait till ATTiny85s arrives

Are you sure? [yes] / [no]

Eric wrote 3 months ago null point

This is really great. So half (most?) the learning/fun is putting this together, but I think it might be neat to have a PCB version that plugs into a usb charger (using the pcb itself as the male usb plug, like this: http://www.instructables.com/id/USB-PCB-Business-Card, and using the quite cheap [60 cents] mcp73831 battery charging chip), an upright battery clip, and has a prototyping area that breaks out the attiny pins to further facilitate adding new sensors.

I am working on just such a design and will share as it progresses. Feel free to comment/give input. Maybe I will put what I have so far up on github in the next day or two.

From a young developer standpoint, my vision is that the PCB could be pre-populated with everything except the sensors...then students could focus on programming, and thinking about what sensors/actuators they want to add. They would still get to solder because they would need to add the sensors/actuators.

Older students could just be given the empty PCB and components, and assemble the whole thing.

By the way, the mcp73831 is only available as a surface mount component. But it seems to me the sooner we get young developers over the fear of soldering surface mount, the better. Plus, this helps keep things small. (I am sure there are other battery charge controllers out there that are through hole). Anyway, the current design makes use of SMT MOSFETs already so that bridge has already been crossed.

Are you sure? [yes] / [no]

APBurner wrote 4 months ago null point

What are you using for wheels. I see something red on the end of the shaft but can't tell what it is.

Are you sure? [yes] / [no]

shlonkin wrote 3 months ago null point

Sorry this reply is so late. It is a piece of wire insulation from 0.6mm(22AWG) wire. It just happened to fit perfectly.

Are you sure? [yes] / [no]

ZaidPirwani wrote 4 months ago null point

so i just ordered

10x ATTiny85s for $10.0 from http://www.aliexpress.com/item/Free-Shipping-10PCS-Original-Integrated-circuit-parts-ATTINY85-ATTINY85-20SU/827307420.html

10x Pager Motors for $8.30 from http://www.aliexpress.com/item/5pcs-4-2V-46000RPM-6x14mm-Coreless-DC-Motor-Strong-magnetic-high-speed-for-helicopter-model-aircraft/1679522733.html

the rest i will be able to buy locally and at cheaper rates, only these 2 I need to import - what about the battery..???

Are you sure? [yes] / [no]

shlonkin wrote 4 months ago null point

I'm using LIR2032 rechargeable coin cells that I pulled out of some dollar store keychain lights. You could use whatever is most convenient for you.

Are you sure? [yes] / [no]

ianlee74 wrote 4 months ago null point

I love these! In fact, I could see a whole community built around creating infinite variations of these. Please put all your design & source files on GitHub so we can start playing together. Perhaps start a Google Group forum? We're always looking for cheap projects to use for teaching/training kids & user groups and these are just perfect. We can use them as tools for so many different topics including:
- Robotics (of course!)
- Arduino & other programming topics
- PCB design (very small PCB that can be created during a 1 hr demo).
- Motor Control
- Sensors

Perhaps you define a standard size & shape that has to be followed and the challenge then is to see what people can do in that small of a space. Of course, it needs a catchy name too.

Are you sure? [yes] / [no]

ianlee74 wrote 4 months ago null point

Also, how are you currently programming them? Do you remove the ATTiny85 and use a separate programmer or is there something onboard? Is the header for charging the battery?

Are you sure? [yes] / [no]

shlonkin wrote 4 months ago null point

If someone had a real interest in this, I would love to support it. I'm often putting together robots that are as simple and cheap as possible. I want to come up with something that even young children could make for just a few dollars(I'm a kindergarten teacher). The great thing about such a simple device is that there is no need for things like design files. As for the code, I would be happy to share, but you have to write your own to understand what's happening.
To program them I have to remove the chip and stick it in a breadboard. I would rather program it in place, but the rest of the circuit would interfere. The two pin header is for connecting the battery. It is a coin cell that is not shown in the pictures because it would cover the whole thing.

Are you sure? [yes] / [no]

srainsdon wrote 4 months ago null point

A wifi finder would be cool

Are you sure? [yes] / [no]

Richard Kutina (kutis) wrote 4 months ago null point

I don't wanna bitch much, but why are all the LED's in those schematics the wrong way around?

Are you sure? [yes] / [no]

Richard Kutina (kutis) wrote 4 months ago null point

ok, the one in the first schematic isn't...

Are you sure? [yes] / [no]

shlonkin wrote 4 months ago null point

Oh man, you're right. That's embarrassing. That's one danger of hastily copying and pasting.

Are you sure? [yes] / [no]

zakqwy wrote 5 months ago null point

Have you thought about other cheap-o sensors? Maybe an RTD to sense relative temperature and seek hot areas? Or a CdS cell (or other analog light sensor) to avoid/look for light?

Are you sure? [yes] / [no]

shlonkin wrote 5 months ago null point

Yeah, various sensors would be interesting to try. The reason I chose these was so the robots could interact somehow. They can detect the light from other robots. Sadly my life has become far too busy to spend more time on this project, but I may get around to it again someday.

Are you sure? [yes] / [no]

denizece2005 wrote 5 months ago null point

Love these robots. I am just starting out to make my projects and want to give a try to something like these. Would you mind sharing the current software you are using, even if it is incomplete?

Are you sure? [yes] / [no]

shlonkin wrote 5 months ago null point

Sure. I'll find some time tonight or tomorrow to clean some up and post it.

Are you sure? [yes] / [no]

shlonkin wrote 5 months ago null point

OK, the code is posted in the log above. Enjoy.

Are you sure? [yes] / [no]

The Big One wrote 6 months ago null point

Hey, would you happen to have a link to the eBay store that you found these at (or even better, the actual item link)? I couldn't find the store when searching by name, and I previously could not find any good deals on pager motors (they were all something like $5 for a single one!) I did end up ordering some small hobby motors for larger robots with my kids, but pager motors would be ideal for really small bots like your (very awesome) design.

Cheers

Are you sure? [yes] / [no]

shlonkin wrote 6 months ago null point

http://andromedabots.com/motors.html
It's not the ebay store, but the shop's website. They are $1.30 each, but shipping may be the expensive part.

Are you sure? [yes] / [no]

The Big One wrote 6 months ago null point

Thanks!

Are you sure? [yes] / [no]

zakqwy wrote 6 months ago null point

Let me know if you need a hand with PCB stuff. I've been working on a few things with SMD ATtiny44as and recently had some boards fabbed; drop me a note if you want any help with KiCAD and such.

Are you sure? [yes] / [no]

shlonkin wrote 6 months ago null point

Thanks for the offer. What have you been making with those ATtinys?
I've designed some boards for these in Eagle, but I haven't made enough concrete plans or tested enough to justify getting them fabbed. On the other hand, making the boards myself is half the fun.

Are you sure? [yes] / [no]

zakqwy wrote 6 months ago null point

Mostly just small dedicated I/O boards for handling serial data or flashing LEDs (replying to your comment below, not quite sure how to do get this one below yours). I ended up outsourcing the board fabrication rather than getting an etch setup put together at home; also, that meant that I didn't have to worry about solder mask, which helped the toaster oven reflow process significantly. For small quantities, places like OSH Park or other small-run outfits might be good.

Are you sure? [yes] / [no]

glofishing wrote 7 months ago null point

This is a cool project. I could see highschoolers programming these things to play soccer. What's the total cost for one of these? I could see potential education market for these if they were more modular like legos. Razor and blades type model where you get the basic unit for $10 but the add ons cost $10...

Are you sure? [yes] / [no]

shlonkin wrote 7 months ago null point

They were each between 500 and 550 yen(a little over $5). It would be very easy to make a cheap, simple kit. The only tricky part is gluing the motors in the right position, but if you made a plastic clip it would be a snap, literally. Someone with a 3D printer and the motivation to design a customizable, modular pcb could make a really cool educational toy.

Are you sure? [yes] / [no]

jaromir.sukuba wrote 7 months ago null point

Nice robots. By the way, what is your work procedure for removing the unbalaced weight from motor shaft?

Are you sure? [yes] / [no]

shlonkin wrote 7 months ago null point

Thank you. I tried various methods to remove weights, but finally gave up. I bought these motors without weights on ebay. They came from a shop called "Andromeda Robots" in Ukraine I think. They were pretty cheap and good quality. I recommend them.

Are you sure? [yes] / [no]

other wrote 6 months ago null point

I have had luck with putting them in a vise so that you are squeezing the weight the long way then using a pair of needle nose pliers to hold a very short section of piano wire over the shaft and hitting that with a hammer. That doesn't damage the motor.

Are you sure? [yes] / [no]

Similar projects