Electronically Controlled Gas/Spray Delivery

I'm working on a off-road drone project (see pictures below) and I wanted to mount two small spud-guns on it (potato guns).

A large chamber converts to a smaller barrel where pressure from a little bit of flammable gas being ignited would cause enough force to throw out a small chunk of a potato.

The issue I am having is with the delivery of the flammable gas (hair spray) in this situation. If I pre-load the drone with the gas in the chamber, the gas tends to die out. I wanted to be able to control via the Arduino when to activate some sort of pump or valve which would inject a small burst of 'hair spray' into the chamber and then I could ignite it with my high voltage arc system which is controlled via Arduino as well.

Do you guys have any ideas on what I could use to do this? It can't be too big either. The potato gun is 3" wide (circular) and 1 1/2 feet long.

To help give you an idea of how it is, here is a picture of an example. Manually, you would remove the screwed in cap in the back (red part) and do a quick spray of 'hair spray' and close it and then ignite it.

Here's my project log so far if your curious!

I wanted to share one of my hobbies with everyone. I'm working on modifying a basic RC tank and making it into one awesome custom off-road drone.

Basically, check out its list of features:

  1. Upgrade the current stock motors/gearing system with a fast and high torque configuration in order to make the tank more mobile and robust for off-road and climbing.
  2. Mount an actual hacked Linksys router circuit board which will allow me to control and view live video from a mounted D-Link IP Network based camera so I can explore/survey areas without even being there.
  3. Mount two 'spud/potato cannons' on the tank which I could trigger and fire from the comfort of my laptop. (This was just for fun since it is a tank after all).
  4. Replace the stock tank circuit board system with a more advance microcontroller (Arduino).
  5. Design in Eagle CAD my electronic schematic for the entire tank, and then design the PCB which I will then fabricate it in-house with a DYI PCB circuit kit.
  6. Power all electronics (RC tank motors, microcontroller, spud-gun spark igniter, router, and IP camera) with four 9.6v batteries in a series and parallel configuration with voltage regulators to deliver the exact voltage and amperage needed by the various components for a run time of at least 30 minutes.

Once complete, I will definitely include a video of it in action. I am going to be updating this work log covering everything from start to finish.

Let's begin with what I have done so far:

This is the massive 2.57 feet (32 inches) long tank I purchased online:

That same day, I gutted it up and took the entire thing apart to get access to all the components:

This is the stock gearbox system which makes the tank go forward and backward. The tank would only go about a 1 feet every 10 seconds which was painfully slow. This led me to upgrade the system, which I will show more details on soon:

Here is an overall snapshot of the tank taken apart:

The tracks are massive on this tank; they are about two inches wide and about 2 feet long. This will allow me to easily go over almost any terrain and have no traction issues due to the large surface foot print:

Now the juicy part! I purchased two high torque motors designed for hobby RC rock climbers which will provide more than enough power to make this thing unstoppable. Checkout the comparison versus the stock motor: [there are a total of two motors because each side of the track has its own separate drive]

Since I can't use the stock gears and gear box, I decided to change the entire system to a direct belt drive:

The pulley itself had a smaller diameter than the shaft that moved the tracks, so I had to use a drill press to enlarge it:

I had to use a JB Weld epoxy [once this stuff hardens it basically strong as steel] to secure the pulley to the shaft that moves the track on the tank. I had to make sure I made a super strong bond because the shaft is actually a hex pattern where the pulley is actually circular. After it fully cured, this thing would not even budge, I tried to force it off with some pliers but it was rock solid:

Here is a shot of the stock electronics on the tank. It used four relays to control the motors from being on or off and from going either forward or backward. This was a very simple and cheap way of doing it because I was unable to vary the speed of the motors on the tank. With this setup, it cant deliver the speed, power, or mobility I need:

This led me to create my own circuit board and program an Atmel AVR (microcontroller chip) to do everything that I listed earlier. This is a snap shot of an Atmel AVR chip on a development board which allows me to debug the various inputs and outputs and also program the chip using an open source language 'Arduino' and a computer via USB.

Remember those four black relays? We'll I'm replacing them with MOSFET's which are designed to switch on and off high current sources with a PWN signal which basically allows me to vary the speed of the new motors. Here is an image of one of the 8 MSOFET's. (I'll explain why I need 8 [4 per motor] later):

Before I invest time in developing the circuit board layout, we need to do prototype testing to ensure everything works well with each other. Here is an overview of me driving one of the new motors with a MOSFET and the microcontroller chip:

Since I am going with a belt drive, I want to make sure everything is robust and as solid as possible. The last thing I want is to have the belt come off during use. As you can see here, the belt has the possibility of slipping off:

I purchased some washers that I am going to bond to the gear that goes on the motors:

Here is how it should look after:

This is after I glued them together and letting them sit overnight to fully bond and cure:

Here is a sneak peek at that router board I was talking about. I flashed DD-WRT (open source Linksys firmware) on to the router. I needed to install a few Linux packages on the router but I was limited to the space so I found a guide on how to wire a SD storage card and successfully mapped the storage to the DD-WRT firmware. Now, I can connect to this router with any computer and send and receive data using internal serial ports which I connect to the microcontroller using a logic board so I can drive this thing from a computer (laptop). The network ports you see will be used to connect one or two IP network cameras which I can view by simply connecting to the router's wireless network and entering the IP address of the camera(s). Another cool feature is that I could have a bunch of people viewing the camera feed by simply connecting to the router's wireless network!

I started to work on creating the mounting system for the new motor. I used the drill press with a sanding wheel which worked out perfectly. If you notice all of the weird gray lines near the large circle, thats the original stock motor mounting area and I shaved off the plastic mounting brackets for the stock motor:

Here is a shot of it after I drilled two holes for the motor to mount onto:

Here is a shot of it all coming together. This is with the new direct belt drive from the new high torque motor to the custom pulley geared shaft which will drive one of the tracks:

And here is a shot of both of them complete, you'll probably notice I removed the washers that I originally mounted to the gear. They blocked access to a small black screw which secures the gear to the motor's shaft:

Here is a comparison versus the original stock setup! As you can see below versus the image above, it's a drastic change and should deliver more direc

If you could link me to some small enough items you had in mind that would be great!

I'll link you to the items I used for the pulley. It was from a rc car hobby store.

I'm wondering why a spud gun?

Surely something like an automatic electric BB gun would be better :D

Nice writeup so far. We need more writeups like these on the forums.


Buy an automatic air freshener and hack away :)

Buy an automatic air freshener and hack away

Shoots AND covers up the stench its victims leave. Brilliant.

Have you seen how fast it'll go now? I have a feeling it may be ridiculous, as all the reduction gearing which the old setup had is now gone (apart from that available due to the two gears you have now).

As for the original question, you'd probably need a really strong solenoid to push down a spray can top in order to fill the chamber - have you googled for electronic valves of some sort instead?

Have you seen how fast it'll go now? I have a feeling it may be ridiculous, as all the reduction gearing which the old setup had is now gone (apart from that available due to the two gears you have now).

In another thread (thought I was dreamin' this one - couldn't find it again!) - I speculated that "on the low end" this machine after the mods might -only- go about 17 feet per second!


That would be the "unloaded" speed; that is, if the tracks weren't touching the ground, no weight on them, lack of friction, etc. Plus, with a guess that the motor only runs at 600 RPM.

What is the real gear ratio? What speed does the motor turn at? Can the rest of the track drive train and system handle the strain?

I sure love to see this thing run, and I think with proper engineering it could, but it seems like what Harjit Singh currently has built is more likely to self destruct (or at least strip and break the drivetrain, throw the tracks, or cause other mayhem) than anything else...

BTW - Harjit Singh: You got a link or other information on where you picked up that tank chassis? It would be a useful robot platform as-is (assuming it isn't super expensive.


Interesting project, but the spud gun will probably be unreliable. A paintball gun might be a good replacement. Instead of converting an RC model tank, maybe a DIY wooden tracked setup like below might be the way to go.

http://www.theshawfactor.com/node/3 http://www.theshawfactor.com/zen/index.php?album=wudy http://forums.trossenrobotics.com/showthread.php?t=4027

Interesting project, but the spud gun will probably be unreliable. A paintball gun might be a good replacement.

Best thing to use, if you need a “gun” on your robot, is an electric airsoft gun; very easy to interface with, and if you don’t mind the cost, you can easily purchase steel and ceramic shot (ie, ball bearings) which will fit such guns (if you need something that will pack more punch than standard plastic airsoft bullets). I think they also make airsoft rounds that are essentially paint balls, as well as pepper spray…

Instead of converting an RC model tank, maybe a DIY wooden tracked setup like below might be the way to go.

What would be better than a wood tracked machine would be to use large double sided timing belts, with custom metal cleats attached to the outer edge (or just leave the rubber teeth as-is). A system like this was described by Martin Bradley Weinstein in his book “Android Design” (ISBN 0-8104-5192-1); note that this book is long out-of-print.

A simpler design, which offers performance close to that of tracks, is a six-wheel differential/skid-steering robot. Use of large 8-10 inch all-terrain pneumatic tire/wheels (like from Harbor Freight), a welded/bolted steel/aluminum box frame, and chain drives coupled to low-cost gear motors offers a very robust all-terrain platform. Such a platform has been described by various authors, and was also used by CMU for their Terragator platform:


All - as pointed out to me in this thread:


I discounted the fact that the tread would form another level of “gear down”; this would alter may figures for “final RPM” and torque on the tracks considerably.

Richard Crowley:

That does look like a very interesting device; their whole site actually has some interesting products for robotics design…

Thanks for posting that!