Login    Register
User Information
Username:
Password:
We are a free and open
community, all are welcome.
Click here to Register
Sponsored
Who is online

In total there are 67 users online :: 6 registered, 0 hidden and 61 guests


Most users ever online was 155 on Mon Aug 15, 2016 1:40 am

Registered users: anello, Bing [Bot], Google [Bot], Google Adsense [Bot], MSNbot Media, Yahoo [Bot] based on users active over the past 5 minutes

The Team
Administrators
Global Moderators
global_moderators.png CS

EPR Build Log

A place to ask general spud cannon related questions.
Sponsored 
  • Author
    Message

Unread postAuthor: PVC Arsenal 17 » Sat Feb 12, 2011 8:06 pm

Alright enough with the secrecy. Here is an early test of the automatic indexing system on my Electro-Pneumatic Revolver (EPR). The Arduino turns the 15 barrel assembly in consistent increments of 24 degrees, both in semi auto and full auto. Soon it'll be synched up with a solenoid valve and shooting actual ammo.

http://s237.photobucket.com/albums/ff15 ... t=run3.mp4
  • 0

Last edited by PVC Arsenal 17 on Sat Feb 12, 2011 11:54 pm, edited 1 time in total.

PVC Arsenal 17
Major General
Major General
 
Posts: 1762
Joined: Mon Mar 27, 2006 4:18 pm
Location: United States
Reputation: 1

Unread postAuthor: btrettel » Sat Feb 12, 2011 10:32 pm

Nice work.

This seems a little complicated for my tastes, but I can't argue with the results. I'm looking forward to the finished product.
  • 0

All spud gun related projects are currently on hold.

btrettel
Major
Major
 
Posts: 380
Joined: Sun Feb 03, 2008 4:40 pm
Location: Maryland
Reputation: 0

Unread postAuthor: jackssmirkingrevenge » Sun Feb 13, 2011 12:15 am

btrettel wrote:This seems a little complicated for my tastes, but I can't argue with the results.


My thoughts exactly :)
  • 0

User avatar
jackssmirkingrevenge
Donating Member
Donating Member
 
Posts: 24225
Joined: Thu Mar 15, 2007 11:28 pm
Country: Holy See (Vatican City State) (va)
Reputation: 66

Unread postAuthor: PVC Arsenal 17 » Sun Feb 13, 2011 1:06 am

It's not "complicated" considering the objective and the means with which to achieve it. What you see so far involved little more than a dremel, saw, and a drill to make. That said, this approach is perhaps the best way to achieve rotary indexing. I've yet to see it done this effectively under those circumstances.

On top of that, no strictly mechanical system within reach of the average builder can compete with the versatility of a similar electronic system. This features select-fire, adjustable rate of fire, it can't be short-stroked, it doesn't consume anymore air than it needs to fire a dart, and it will support more than a full day's use on a single r/c truck battery.

And when compared with a dedicated circuit approach, the MCU offers a level of control that can't be beaten. The precise delays needed to fine tune the indexing and synchronize it with the solenoid wouldn't be practical without the coding to implement them.

The downside is the cost of course: about $40 worth of electronics. However, I would spend more time and effort going to a machine shop to have a cam system made. So once again this proves worthwhile and offers even more.


My hope is to promote the use of microcontroller based electronics in the spudgun and Nerf communities. They take difficult tasks and make them easy. They offer so much potential for our hobbies to grow. It's unfortunate that most people (myself included until now) shy away from electronics due to preconceived notions that they involve extensive knowledge to work with. That's simply not the case, especially with user-friendly open source prototyping platforms like Arduino.
  • 0


PVC Arsenal 17
Major General
Major General
 
Posts: 1762
Joined: Mon Mar 27, 2006 4:18 pm
Location: United States
Reputation: 1

Unread postAuthor: btrettel » Sun Feb 13, 2011 11:03 am

The complicated remark was not meant to disparage the work. Rather, I just wanted to say this is complicated relative to other projects. The complication is certainly justified if you note the benefits, especially given that this probably is the most straightforward way to do what you want as you've said.

I was actually thinking about electronic triggering for FANG4, but nothing with a microcontroller. I might change my mind.
  • 0

All spud gun related projects are currently on hold.

btrettel
Major
Major
 
Posts: 380
Joined: Sun Feb 03, 2008 4:40 pm
Location: Maryland
Reputation: 0

Unread postAuthor: PVC Arsenal 17 » Mon Feb 14, 2011 12:25 am

I understand no harm was meant, and I only wanted to emphasize that the introduction of microcontrollers into this hobby does not necessarily entail knowledge or skill beyond that of the typical builder.

I recall a time when the basic DCV + QEV circuit was looked upon as sophisticated and only suitable for those with experience, but now it's as commonplace as the sprinkler valve. It's my hope that projects like this one will follow a similar trend, and it will begin sooner if more people are shown how simple it actually is (though still complicated in comparison to other things as you've said).


And I'd be quite curious to see what you come up with using similar methods considering your knowledge of programming and engineering far exceeds my own.
  • 0


PVC Arsenal 17
Major General
Major General
 
Posts: 1762
Joined: Mon Mar 27, 2006 4:18 pm
Location: United States
Reputation: 1

Unread postAuthor: POLAND_SPUD » Mon Feb 14, 2011 12:55 am

I recall a time when the basic DCV + QEV circuit was looked upon as sophisticated and only suitable for those with experience, but now it's as commonplace as the sprinkler valve
That's because I devoted my life to spreading the gospel of the holy DCVs :D
(ohh and I admit I do include subliminal messages that will help me to conquer the world in all of my posts )

And when compared with a dedicated circuit approach, the MCU offers a level of control that can't be beaten

emphasize that the introduction of microcontrollers into this hobby does not necessarily entail knowledge or skill beyond that of the typical builder
I agree totally. One day they will be commonly used

ohh BTW good work
  • 0

Last edited by POLAND_SPUD on Mon Feb 14, 2011 9:49 pm, edited 1 time in total.
Children are the future

unless we stop them now
User avatar
POLAND_SPUD
Chief of Staff
Chief of Staff
 
Posts: 5405
Joined: Sat Oct 13, 2007 4:43 pm
Country: Israel (il)
Reputation: 10

Sponsored

Sponsor
 


Unread postAuthor: Crna Legija » Mon Feb 14, 2011 8:20 am

i had a sudden urge to buy a dcv :?
  • 0

'' To alcohol... The cause of, and solution to, all of life's problems.”
--Homer Simpson

Add me on ps3: wannafuk, 8/11/11 cant wait
User avatar
Crna Legija
Major General
Major General
 
Posts: 2333
Joined: Sun Jul 20, 2008 5:14 am
Location: australia
Reputation: 0

Unread postAuthor: PVC Arsenal 17 » Wed Apr 06, 2011 12:34 pm

Since I've recently started planning for the second version of this project, I thought it may be helpful to post the full code used in the ARchangel. There will be very slight differences in the code used for the second version, but they're essentially the same.

To anyone who bothers to look at this in detail or try it themselves, note that certain delay times might make absolutely no sense. I can't recall whether or not I did any additional testing after the successful the trial runs. (Because, as I said, the delay times have a huge influence on the overall function of the gun so I did spend a lot of time finding the best values with some trial and error.)

Code: Select all
/**********ARchangel EPR Sketch**********/

//written for Arduino Uno with MOSFET power control
//handles rotary indexing and operates a pneumatic circuit
//full and semi automatic capable


int motor = 12;  //digital control for motor is on digital pin 12
int valve = 13;  //digital control for valve is on digital pin 13

int selector = 7;  //feedback from selector switch is on digital pin 7
int indexing = 8;  //feedback from indexing switch is on digital pin 8
int trigger = 9;  //feedback from trigger switch is on digital pin 9

//assigning start values to all switch states
int selector_state = 0;
int indexing_state = 0;
int trigger_state = 0;
int old_trigger_state = 0;  //will be used in semi-auto loop to detect transition in trigger state

void setup()
{
  //Setting motor & valve pins as outputs
  pinMode(motor, OUTPUT);
  pinMode(valve, OUTPUT);
 
  //Setting selector and indexing switches as inputs
  pinMode(selector, INPUT);
  pinMode(indexing, INPUT);
  pinMode(trigger, INPUT);
 
  //Apply no power to motor or valve at start
  digitalWrite(motor, LOW);
  digitalWrite(valve, LOW);
}

void loop()
{
   selector_state = digitalRead(selector);  //reading and storing value of selector switch
 
 
  //beginning of Full-Auto loop:
 
  if(selector_state == LOW){  //if selector is in "Full-Auto" position, the full-auto loop begins
 
    trigger_state = digitalRead(trigger);  //reading and storing value of trigger switch
    delay(10);
   
    if(trigger_state == HIGH){  //if trigger is pulled, loop runs
     
     //read and store state of indexing swith
     indexing_state = digitalRead(indexing);
     
     //if indexing switch is already high, turn motor until it goes low
     while(indexing_state == HIGH){
       digitalWrite(motor, HIGH);
       indexing_state = digitalRead(indexing);
     }
     
    digitalWrite(motor, LOW);
    delay(12);
     
     //turn motor until indexing switch goes high
     while(indexing_state == LOW){
       digitalWrite(motor, HIGH);
       indexing_state = digitalRead(indexing);
     }
     
    //shut off motor
    digitalWrite(motor, LOW);
    delay(20);
   
    digitalWrite(valve, HIGH);  //open valve
    delay(10);
    digitalWrite(valve, LOW);
    delay(50);
   
   }
    else{  //if trigger is not pulled, nothing happens
      analogWrite(motor, 0);
      analogWrite(valve, 0);
    }
  }
 
 
 
  //Beginning of Semi-Auto loop:
 
  else{   //selector state is LOW, so "Semi-Auto" loop begins
   
    trigger_state = digitalRead(trigger);  //reading and storing value of trigger switch
    delay(10);
   
     if((trigger_state == HIGH) && (old_trigger_state == LOW)){  //gun will only fire when there has been a transition from non-pulled to pulled
      indexing_state = digitalRead(indexing);
     
     while(indexing_state == HIGH){
       digitalWrite(motor, HIGH);
       indexing_state = digitalRead(indexing);
     }
     
    digitalWrite(motor, LOW);
    delay(12);
 
     
     while(indexing_state == LOW){
       digitalWrite(motor, HIGH);
       indexing_state = digitalRead(indexing);
     }
   
    //shut off motor
    digitalWrite(motor, LOW);
    delay(30);
   
    digitalWrite(valve, HIGH);  //open valve
    delay(10);
    digitalWrite(valve, LOW);
    }
    else{  //if trigger is not pulled, nothing happens
      analogWrite(motor, 0);
      analogWrite(valve, 0);
    }
    old_trigger_state = trigger_state;  //old trigger state becomes current
 }
}


Edit: For anyone thinking of putting the control for something like a valve on pin 13 of an Arduino - don't. This pin likes to sputter between high and low when the board turns on for some reason. It led to some wasted CO2.
  • 0


PVC Arsenal 17
Major General
Major General
 
Posts: 1762
Joined: Mon Mar 27, 2006 4:18 pm
Location: United States
Reputation: 1

Unread postAuthor: shardbearer » Sun Apr 24, 2011 9:26 am

First, this gun is amazing. It needed to be done a long time ago.
Now to work.
How is the seal with the turret? On semi auto and "high powered mode" could you tighten the seal onto the turret before it fires, and would this be beneficial? Of course this would require some more work and another solenoid, and it would result in slower ROF.
How powerful is this blaster? Powerful enough to put a small inline clip on each barrel? Maybe an RSCB?

Edit: Whoops, kinda a necro.
  • 0


shardbearer
Sergeant
Sergeant
 
Posts: 85
Joined: Sat Apr 23, 2011 10:21 pm
Reputation: 0

Unread postAuthor: Technician1002 » Sun Apr 24, 2011 3:09 pm

Power sequencing may be in order for anyone thinking of using pin 13. First power the Arduino, then after a boot delay, enable the high voltage supply for the valves and motors.
  • 0

User avatar
Technician1002
Chief of Staff
Chief of Staff
 
Posts: 5190
Joined: Sat Apr 04, 2009 11:10 am
Reputation: 14

Unread postAuthor: PVC Arsenal 17 » Sun Apr 24, 2011 6:18 pm

Tech- I'm slapping myself for not realizing that... :lol:

shardbearer- Thanks for the comments. The seal is achieved with a foam-rubber gasket around the air outlet. Considering the short barrel length and relatively low mass of the intended projectiles (nerf darts), I'm not too concerned with a loss of backpressure. It was something I was worried about before I started building the gun and I quickly decided it wasn't worth stressing over. In fact, this part will be left unchanged in the second version.

Inline clips are a possibility. I thought it would be cool to have the barrels reload themselves as they went around but I never got a chance to try it. There are limitations though. For example you'd want to prevent automatic loading when using full-auto mode or shooting at high RoF in semi due to possible misfeeds. There is also the trouble of loading just one dart into barrels that are 4 inches long.
  • 0


PVC Arsenal 17
Major General
Major General
 
Posts: 1762
Joined: Mon Mar 27, 2006 4:18 pm
Location: United States
Reputation: 1

Unread postAuthor: shardbearer » Sun Apr 24, 2011 11:56 pm

How were you thinking of reloading automatically? A gravity mag and solenoid, pushing darts into the barrels as they spin?

And then what's the point of having 15 barrels? A gravity mag and 2-3 would work just as well.

And what do you mean by the last sentence? That the darts would only fill the front couple inches?
  • 0


shardbearer
Sergeant
Sergeant
 
Posts: 85
Joined: Sat Apr 23, 2011 10:21 pm
Reputation: 0

Unread postAuthor: PVC Arsenal 17 » Mon Apr 25, 2011 2:41 pm

Somewhere on the side of the side of the gun would be a spring loaded inline magazine which (at some point) lines up with the empty barrels as they go around and inserts a new dart into them. Yes, if I've done that, I might as well have fewer barrels.

The trouble with having such a loading system is that you'd have to devise a way to insert just one dart into each barrel for every pass. If the barrels are 4 inches long and the darts are 2 inches long, the mag will try to fill the barrel with 2 darts assuming a detent is placed at the end of the barrel.
  • 0

Attachments
rilm.png
rilm.png (15.34 KiB) Viewed 509 times

PVC Arsenal 17
Major General
Major General
 
Posts: 1762
Joined: Mon Mar 27, 2006 4:18 pm
Location: United States
Reputation: 1

Previous

Return to General Spud Cannon Related

Who is online

Registered users: anello, Bing [Bot], Google [Bot], Google Adsense [Bot], MSNbot Media, Yahoo [Bot]

Reputation System ©'