What's new
What's new

Is there a place for cheap automation (Arduino) in industrial environments?

Garwood

Diamond
Joined
Oct 10, 2009
Location
Oregon
A close friend has a background developing UI's and controls for presses, welders and other misc. He's running out of stuff to do at home while collecting a paycheck not to work. He's asked if there's anything he could help me with, automation-wise, in my shop.

I figured the work he does would use some fancy components, but as we discuss projects everything he does is using a Raspberry PI based UI and Arduino/ China steppers for the process. None of this is hobby stuff. Big manufacturer and some serious equipment.

Anyone else running real industrial automation based on ultra low cost open source hobby parts?

I'm trying to steer him in the direction of an ultra versatile, compact, intuitive UI in a bulletproof housing that we can adapt to anything in the shop- From a single axis back gauge controller to an auto bandsaw control, air compressor VFD control, gantry load/ 3 axis robot arm control.

I know this stuff is big discussion on other sites, but I struggle to wade through the arm chair hobbyist BS. Usually when I read "which size steppers do I...." I know it's a shitshow and I can skip it.
 
A few quick thoughts. Depends on the project obviously.

Automation is expensive. There is a lot of labour tied up in doing it properly. So to cheap out on components doesn't really make sense. Saving $1500 on a hobby grade vs industrial control on a project that may take 6 months to complete doesn't make a lot of sense to me.

I've worked with some hobby stuff on proof of concept work (this is where hobby stuff makes a lot of sense - fail fast and cheap if you will). Most hobby grade stuff I have worked with has a very low MTBF or it is full of bugs. The whole point of automation is to get the man labour out of it. If you spend all your time fixing and monkeying with the automation solution why wouldn't you just forgo the whole experiment and pay the labour in the first place? I've taken a proof of concept solution and made it into a production device - but usually through this process you ditch all the "hobby grade" hardware.

Instead of trying to build a catch all I'd have him focus on solving a very specific problem for you. You don't need to spend piles of cash to do it right and get the proof of concept done using hobby grade stuff. If it works then invest.
 
I think arduino has a place because of simplicity and cost.
That said, WHEN I start building my own gantry load systems, it will be raspPi, as arduino has limitations... the cost difference is meh

For big boy stuff that has to be 100% reliable day in and out, Id go with a proven industrial control.

As enginuity mentions, proof of concept is one thing. Reliability and uptime in a production environment is another.
 
I would be skeptical just based on the fact that PLCs are designed to handle 10s of millions of cycles in a less-than-friendly environment.
Raspberry Pi's are not.

And there's also the thing of service. How many field technicians know how to fix a Pi?
Just my $.02 :)
 
it will be raspPi, as arduino has limitations... the cost difference is meh

So it was explained to me that Raspberry pi is perfect for running the UI, but it isn't reliable for controlling the process- Like 1 in 1000 times it has some behind the scenes process going on that slows or stops things. So he uses Raspberry pi for the UI, but the Arduino controls the process and never misses a beat.

These is all greek to me, but I'm trying to learn and hands on stuff like this is where it sinks in for me.

I'm being told that the time to put something basic together is not anywhere near 6 months because he's borrowing from pre-existing proven programs/setups and we're keeping things as simple.

This really isn't costing me anything more than the time to make whatever hard parts are needed and a few beers.
 
So it was explained to me that Raspberry pi is perfect for running the UI, but it isn't reliable for controlling the process- Like 1 in 1000 times it has some behind the scenes process going on that slows or stops things. So he uses Raspberry pi for the UI, but the Arduino controls the process and never misses a beat.

These is all greek to me, but I'm trying to learn and hands on stuff like this is where it sinks in for me.

I'm being told that the time to put something basic together is not anywhere near 6 months because he's borrowing from pre-existing proven programs/setups and we're keeping things as simple.

This really isn't costing me anything more than the time to make whatever hard parts are needed and a few beers.

Sounds like you are at a proof of concept stage. Use whatever is available to get your ideas flushed out.
 
It sounds like your buddy has some ideas that would lend themselves towards automating simpler shop equipment, and I'd look at doing a coldsaw conversion.

Just a few axis controls are needed - one for a ballscrew-driven feed arm, one for a pneumatic or air-oil material clamp, and one for a chain drive stock feed system. I'd bet you get the mechanism cost down to ~$2-3K for a functional set, then whatever the control end would be (around $.5 - 1K?).

What say others? Am I off the wall (answer is yes, but still...)?

Another place to check out is converting manual surface grinders to fully automatic. If anything, this would be simpler, as you just need to couple drives to three axis and set up a UI/Control.
 
It sounds like your buddy has some ideas that would lend themselves towards automating simpler shop equipment, and I'd look at doing a coldsaw conversion.

Just a few axis controls are needed - one for a ballscrew-driven feed arm, one for a pneumatic or air-oil material clamp, and one for a chain drive stock feed system. I'd bet you get the mechanism cost down to ~$2-3K for a functional set, then whatever the control end would be (around $.5 - 1K?).

What say others? Am I off the wall (answer is yes, but still...)?

Another place to check out is converting manual surface grinders to fully automatic. If anything, this would be simpler, as you just need to couple drives to three axis and set up a UI/Control.

I think where I'm at is not a proof of concept stage, but rather what super simple time sucking task can we automate with $300 in hardware and a really convenient interface. This is not a G-code CNC thing, but rather a fill in the blanks deal. Like a 7" LCD screen with 4 softkeys and a $5 USB keypad. Mount those in a 3/4" thick 6x10 anodized box and screw it to a press brake ram, or a bandsaw frame or a surface grinder or a vibratory tumbler or a pick and place part loader. It can send me an email when the bandsaw needs an oil change. It can send me a daily report on average cycle time for the day.

For instance I have a great condition perfect working automatic bandsaw, but it is entirely hydraulic and dumb. It cuts and cuts and has no idea when it runs out of stock or the ability to stop after 50 parts, etc. Nobody can tell me that the brains of the most advanced new automatic bandsaw are out of the realm of what a credit card sized computer can handle. The bandsaw is probably an extreme example of something I would attempt, but I feel like it's not out of the realm.

I guess I feel like there is some kind of line in the sand where a certain process should not be handled by a $20 computer, but the more I ponder the subject, the more things I think about that DO fit into the basic bullshit category.

And frankly, on the subject of a tech not knowing how to troubleshoot an open source thingamajigger- That is certainly an issue to consider, but the opposite is also true- I have hundreds of tons of good quality CNC mills and lathes and even a laser mostly from the 90's. You think today's tech's know much about working on this stuff?

Also, I come from an automotive background. I have done a fair number of EFI related projects and a cubic shitload of integration projects where I get things to work together that were never ever intended to. I used to believe that spending the big bucks on the premium electronic control systems with their big names and customer support phone numbers was the way to fly.

After a decade of using a big name's electronics (built specially for me) and using every one of a dozen other competitor's products to do the same and similar things I had a big problem where this company shit on me. They did a revision and their new product was a step backwards than what they had before and could no longer do what it needed to for my use. I was desperate to find a solution. I got so desperate I bought a Megasquirt open source ECU and worked with a retailer to develop firmware for my products.

The ridiculous part was that the $200 Megasquirt ECU was better in every single way than the $1200 (wholesale) shit that I was using. Even the Tuner Studio UI is excellent.
 
So it was explained to me that Raspberry pi is perfect for running the UI, but it isn't reliable for controlling the process- Like 1 in 1000 times it has some behind the scenes process going on that slows or stops things. So he uses Raspberry pi for the UI, but the Arduino controls the process and never misses a beat.

That concept is similar to how the Dynomotion Kflop CNC control works. Uses a PC for the user interface, but the machine is ultimately controlled by the Kflop controller which runs in real time and never has to deal with delays.

I use this controller on a Fadal 4020 and really like it. Lots of people using this setup on industrial machinery and its very reliable. Little more expensive then an Arduino but still very reasonably priced and has great support.
 
I'd like to use an arudino to bring my once mechanical logic bandsaw back to autocontrol. The hardware is in place to move the bandarm as necessary and for in-feed control. If I knew how to incorporate a linear scale to for the shuttle feed I'd be in business, the rest is just limit switches and basic logic.
 
"problem" with arudinos is the components around the chip, depending on what the task is, they may be inadequate, reliability of "industrial" controls is the quality of all of the parts, not just a microcontroller running the program.

For instance, if you want a precise and repeatable analog to digital conversions, you will need external voltage reference source, the internal one is affected by noise and temperature too much to be very reliable, those precision voltage reference chips are not expensive by any means, you simply need to integrate them, other things relate to software part, some of the existing and available libraries are buggy and slow, so you will have to spend time fixing those issues.

A lot of times, dealing with higher voltages, you'll want optically isolated inputs/outputs (some ready made expansion boards might be out there), to protect your logic control circuitry, again, not expensive, just need to spend time designing it, sourcing or outsourcing PCB building and component purchasing, there are quite a few places that provide software tools where you can design your pcb with components from their stock, pay when finished and receive completed and tested circuit boards ready to be used, it is time consuming though.

With industrial controls a lot of it taken care of and the price reflects that - that is the main difference.

One fine winter weekend evening few years ago, when it was actual winter and -20C outside, the wood pellet boilers controller of a reputable brand failed at my house, replacement could arrive only in 2-3 days, which was wayyyy too long, so I put one together using an arduino, couple relays and dallas 18b20 temperature sensors, encoder and small oled display for UI, 3-4 hours of fiddling with building the software using existing libraries for the display and the temperature sensors and designing the UI and the boiler was up and running, disregarding the time, it cost me maybe 15$ in components.
The boiler itself was quite dated, it didn't have any adjustments in regards to the pellet quality, air/fuel ratio was only adjustable by reprogramming the control using serial to ttl cable (~100$ store price), and as far as I remember, the controller itself was another 200$ to replace, it is not difficult to see just how much better my one was, I think it is 6th year now since it has been controlling the boiler now.

Would I use arduinos if I ever decide to mass produce pellet boilers - of course not, but it is great that the tech exists for situations where you need a solution quickly and the task isn't complicated, or to prove a concept etc.

The most "complex" thing I've done using one of the larger arduinos was to make a 5 pressure sensor monitoring box, ethernet/internet connected, it ran a tiny web server on it, if you punch in its IP address in a web browser in your pc, a page of current readings and configuration could be seen, the same arduino would also send email messages if low/high limits were exceeded, all configurable via serial console, all that on a 20$ piece of hardware, not counting the sensors, I even wrote a small windows app that was reading values and displaying them on a PC in real time.
 
One point to consider is that "Arduino" is not a type of computation system, it is the name of an organization that developed simple user programmable devices using their own custom programming environment.

The underlying hardware of the "Arduino" device is some version of Atmel microcontroller which is a standard industrial grade item and its programming language is a simplified version of C++ which is a serious established programming language.

Would I use an actual Arduino produced circuit board to operate an industrial system? Probably not but I would certainly use an Arduino board to develop an application for such a system which would then be fabricated on a higher quality circuit board using the same microcontroller and professionally programmed in C++. In fact we have done just this although the system controlled is not safety critical and it can't lead to expensive crashes.

As an aside, our shop water processing system, various pumps, level switches, pressure switches and pH adjusting system has been running faultlessly for about 5 years using a simple Arduino Zero hobby board.

.
 
Realistically this sort of lightweight control approach needs a different paradigm to what is currently used.

Oversimplifying the mainstream approach is "one big processor" doing all the work with external ladder logic et al to ensure the machine implementation actually does what the processor says. Very much a natural approach when you consider the evolution of CNC controls. Its inherently very efficient and relatively component light on simpler systems. Which is important in earlier days when all the parts were expensive and you have to design by hand. Step by step evolution gets you to where we are today without it being apparent just how complicated it all is under the hood.

If you are going lightweight you'd probably be best considering independent controls for each axis and function, each with its own lightweight processor co-ordinated by a main supervisory processor doing the command and display duties.

Consider a basic three axis milling machine. Given a variable master clock, a distance feed back device such as a liner scale or shaft encoder and a software divider chain for each axis "any" shape can be cut by synchronising each axis drive to the master via the distance feedback and software divider. One Y step to every 6 axis steps until X gets to 200 then change to 2 Y steps per 4 X ones sort of thing. Constant surface speed and constant tooth load is a doddle and its inherently HSM. Pretty much no look ahead needed too so long as the input program has been pre-screened to ensure that machine acceleration and deceleration rates are not exceeded.

No idea how you'd get from a normal CAD / CAM file set-up to that sort of machine because its pure vector drive pushing rate and distance directly to each axis. Basically all the main processor needs to do is to supply a rate function to each axis manipulating master clock rate and software dividers as needed. When it comes to axis synchronisation the supervisory process is pretty much a software phase lock look. Or maybe put real hardware one in the way for reliability.

G-Code systems are still fundamentally point to point logic which is very different.

Of course tool changers and all the other subsidiary devices have to have their own processors. The main controller just interrupts the machining process, flags up the next tool ID and hands control over the the changer processor which knows where to put the spindle and how to shift the tool from rack to spindle. Having done that control goes back to the main processor which knows where to restart machining. Same for everything else.

Absolute breeze for retrofits once components and programs are available.

Objectively is ridiculously overweight in terms of processing power as compared to the conventional approach. But its cheap processing power and system integration is simple.

Clive
 
Anyone else running real industrial automation based on ultra low cost open source hobby parts?
.

Define "real industrial automation" to me.
The robot tender shown above not so complicated.
Your friend does multiple brains which is good. Easier to separate tasks.
At the deep end watchdog timers which kill everything unless happy.
My first cnc surface grinder ran off a COSMAC Elf and then later upgraded to a ZX-81 (yee-ha a TV and a keypad). It and is descendants have made many parts.
Truly hobby and hacker grade yet produced much income.

A "tech, skilled trades, or engineer" can't fix a special but they can not fix a PLC either. They just swap parts until the problem disappears.
Industrial type control is designed so that a fail in an I/O or feedback won't take out anybody else and will stop.

This tis a good idea in my book but making bullet proof code on the control end is real time programming and all the counting clock cycles and worst case latencies that entails.
Interfacing to the real is often a real cost above the micro-controller itself.

Bob
 
I used an Arduino to build a simple self contained system to monitor unattended production and provide some tool life functionality and such on an old lathe that didn't have such built in. Specific for one job that ran for a couple of years. Interfaced to the i/o relays for cycle monitoring, and to the turret encoder for tool changes / cutting time.

An Arduino is a pretty capable platform for this kind of stuff, and very fast to prototype something like that, but the hardware is not industrial quality as others have stated. I'm not aware of any hardened microcontrollers using the Atmega...
 
Arduino came out and I noticed that beginning college students (engineering) were buying up the stuff for school projects.
I looked into one of those Arduino books and thought that somebody figured out a way to make money selling books and boards.
The concepts have been around for many years.
 








 
Back
Top