Manipulating welder output with Arduino

   / Manipulating welder output with Arduino #11  
Dan, your water analogies bring back memories (along with your location) from when I taught electronics at Ft. Devens in MA. We got to teach everyone from cooks to truck drivers, etc, how to troubleshoot and repair electronics they weren't allowed to talk about outside class :rolleyes:

Joshua, if you get bored enough to want to actually understand electronics more than just building others' circuits and making them work, you might wanna look for a book - Horowitz - "The Art of Electronics" - well written, starts off fairly gentle and builds from there. Think it's out of print, but may still be available used... Steve

http://www.amazon.com/s/ref=nb_sb_s...electronics&sprefix=horowitz+-,stripbooks,687

The 1980 version is the one I have, the used version @ $12-15 should do anything you want to do that you don't already know.
 
   / Manipulating welder output with Arduino
  • Thread Starter
#12  
A small update. The bugs seem to have been worked out of the output ramping algorithm.


I spent a lot of time tracking down a bug wherein I mixed up the units of two variables. I track output internally as a percentage of max, so that the changes in output are independent of the welder's actual output range. But I also have to keep track of the actual voltage that I'm outputting, and somewhere in there, I mixed up a variable that holds one value for a variable that holds the other. Instead of setting output to 0.1 (10%), I tried to set it to 12 (1200%). Fortunately, my "set output" routine has bounds checking, and any value over 100% gets set to 100%. Any time you're sending voltage directly to hardware, put a lot of error checking in your code, kiddies...

The ramping algorithm takes as an argument two variables: a target percentage to move to, and a time period over which to move. I originally had a start and end value for the "ramp", but I realized that the start value should always be whatever the welder was currently set to. There should never be an abrupt jump in the signal that is being fed to the welder, even though the welder probably would handle such a thing gracefully. If a specific output value is required as a starting point, the right thing to do is to elect to move the welder's output to that value over a chosen, short period of time. Then, you're forced to input the short period of time explicitly; you can never inadvertently move the welder's output without specifying over what time period the move should happen.

Of course, you could always just specify 1 ms if you really wanted to, making the change effectively infinite.

The algorithm you see demonstrated here will form the backbone of the entire program. Every change in welder output will be done via this algorithm: upslope, downslope, pulsing, etc... At least that's the plan so far. So even though it's kind of boring in a way, it's also kind of exciting. It's like looking at the block of an engine and thinking about the car that's going to be built around it.
 
   / Manipulating welder output with Arduino
  • Thread Starter
#13  
... oh, and the door is also open now for more interesting methods of ramping, such as inverse log or what-have-you. For example, what if when you dialed in your max output, the pedal was really zippy toward the lower 2/3 of the range and much more sensitive in the upper 1/3 of the range? Sound tasty? It does to me...
 
   / Manipulating welder output with Arduino #14  
that does sound cool. And if you could add some kind of sensor, you could add/modify the hot start and arc force.

Oh, I found some of your other posts on another forum, and if you want to try it, I think i know how to give you linear max output control just using two pots.

Pot one: resistor accross V+ and gnd.

Pot two: resistor is accross pot one's wiper and gnd. Wiper of pot two is output to welder.
Pot one sets max current, pot two adjusts current within that range.

But i look forward to seeing what you come up with using that controler thingy.
 
   / Manipulating welder output with Arduino
  • Thread Starter
#18  
Well, folks, I am officially ready to call this an alpha build. The video below is a brief recap of the situation that led to me starting work on this project, followed by a full (non-welding) demonstration of all features. A welding demonstration is next on the list!

 
   / Manipulating welder output with Arduino
  • Thread Starter
#20  
I haven't been posting updates fast and furious here, but this is too good to pass up.

 

Tractor & Equipment Auctions

2021 CATERPILLAR 279D3 SKID STEER (A51242)
2021 CATERPILLAR...
2014 Gillig 31+56 Low Floor Passenger Bus (A50323)
2014 Gillig 31+56...
2006 MACK CV (GRANITE) BOB TAIL KILL TRUCK (A52472)
2006 MACK CV...
TAKEUCHI TB370D EXCAVATOR (A51242)
TAKEUCHI TB370D...
2011 ORTEQ ENERGY SERVICES 40 MANIFOLD TRAILER (A50854)
2011 ORTEQ ENERGY...
2017 Nissan Pathfinder SUV (A50324)
2017 Nissan...
 
Top