Let us be the first to say: Not a hack! Nonetheless this is an interesting read about how the Arduino movement has made hobby microcontroller boards attractive for industrial applications.
This is a digital printing machine which looks like it is used for industrial packaging. [Paul Furley] worked for the company which produces it, developing the software for the control interface. He recounts the story of how he helped guide the company away from choosing a microcontroller, and toward using an Arduino board. Actually, using three Arduino boards. We can already hear the flame war boiling up in the comments section. But before you rage, read the article and see if you don’t agree with [Paul’s] reasoning.
The most compelling argument to us is that choosing Arduino is absolutely future proof. If the company goes out of business there are hundreds of clone devices already available. As the Arduino platform evolves it will keep pin compatibility in order to support the older shields. And if they choose a different microcontroller the Arduino IDE will still compile the same sketch for the new hardware.
One thing that pops into our minds is write protection. The machine uses a big PCB to which the three Arduinos mount. That can be produced anywhere without threat of having the source code leak as the PCB doesn’t include chips that need to be programmed. Arduino uses AVR chips that have write protection fuses which can be burnt in-house after they flash the control firmware.
[Thanks Thomas]
inb4 arguing
I’ll admit it beats using a PLC, but….They designed and fabricated a giant PCB to mount arduinos. Why not just design a PCB with 5 ATMEL chips on board? It’s not like the supporting circuitry is all that expensive or complicated. You could even use the Arduino reference design as a guide. It would have shrunk the board considerably as well, making it even cheaper to manufacture. It could even still run ‘Arduino’ code.
Yeah, that would make sense to me, too. My very first mini-project when I got into Arduinos and electronics in general was to build my own Arduino on a breadboard. Surely, I had to get a $50 AVRISP mkii to program it (or I could have gone the FTDI route), but it pays for itself once you’ve built just a few of them. Why have redundant components like USB ports that you’ll never need? Anyway, I’m sure compared to the cost of everything else in that machine, but if you start to manufacture them in quantity, a few bucks saved can add up to some serious profit. The nice thing is that the existing project is easily open to this kind of refining, so there’s no reason they can’t roll their own Arduino in later versions once they’re comfortable with the current design.
I love Arduino to death but at the end of the day they are just an Atmel chip with support components and a bootloader. I dunno all the redundant vestigial components in an industrial machine just sorta don’t sit well with me, it just seems wasteful.
On the other hand if it works it works and it is nice that they used actual Arduino boards. Since it was a nice way to support a great product/community.
I can see 2 upsides to it.
1. Since the board works stand-alone, you could pull it out of the system and debug it without special tools.
2. Using an off the shelf part solves a supply chain problem. If a board dies somewhere in the middle of the night on a holiday weekend, a company can overnight a new Arduino from Mouser, program it and install it without any outside assistance.
So I guess it boils down to how often you expect to be debugging systems on-site and replacing dead units.
if you use an atmega328p, you could pull that out and stick it in an arduino board (or other avr dev board, or barebones it) and debug. You could also still overnight an avr from Mouser (not sure why you chose Mouser of all places. I’d have gone with run to radioshack and grab an arduino. and using a 328p, you could also do the same thing, and just pull the atmega from the arduino).
I don’t really see any advantage to using an arduino over just a 328p.
Did you actually read his page? He answers all of your questions there. Anyway, to reiterate: he chose to use the Arduino because it will still be around long after the Atmega328 has become obsolete. Perhaps it will use an ARM chip by then (or just an SMD Atmega), but the new Arduino will still be pin compatible (and immediately pluggable), and can be replaced instantly. His thinking (which is probably right) is that because of all the available shields, Arduino’s will be around in this form factor for a long time, at least longer than an Atmega328.
So? Many of the Atmel chips are pin compatible with each other. Those that don’t can be adapted like he (OMG) said in his page he could do with Arduino anyway. Since the Arduino bootloader is available you can keep 100% compatibility with the Arduino toolkit and by making a custom design you get less waste and a more customisable design.
He makes good points, but all of those points are for using microcontrollers instead of PLCs, none of them say that an Arduino dev board is more suitable than your own microcontroller design.
“none of them say that an Arduino dev board is more suitable..”
Did you actually read his page?? I’ll copy paste his very first point: “Supply security – even if Arduino stopped supplying boards tomorrow, other manufacturers are making clones, and the hardware design lives on.”
Think about it: what if Atmel goes bankrupt tomorrow or they discontinue the 328: there will be a new Arduino (in fact, there already are) using a different MCU but with the same pins and API’s. No redesign required. At all. Plug and play compatibility. It’s interestinig how some people completely can’t get their head wrapped around this idea. It’s not useful for high volume products of course, but for this particular case, I think it makes quite good sense.
Pulling mcu’s out of dip sockets kind of sucks and is a good way to break pins, and it requires having extra equipment on hand. There is something to be said for no equipment debugging.
and yes… I did read the article. I just find his conclusion wrong.
Atmel isn’t going to stop making chips tomorrow. They aren’t going to phase out an entire family without leaving behind a pin compatible version either….too many existing projects rely on them….if for some reason it did happen, someone else would start making a pin-compatible part to fill in the void.
Not only are the chances of Arduino folding much higher than Atmel, but the chances of the Arduino pin layout evolving (or when arduino dies…a knock off vendor changing the layout) are MUCH higher than the chances you will not be able to find a non compatible version of the MCU.
If you want to argue ease of access and support for end user modification, fine….but arguing that the Arduino platform has longer longevity than an Atmel chip design is just plain asinine
James you fail at comprehension. How about my relevant bit:
“Since the Arduino bootloader is available you can keep 100% compatibility with the Arduino toolkit…”
I.e. it doesn’t matter if you don’t use Arduino. Whatever platform Arduino uses you can port the code to that microcontroller. If Atmel decides to opt for corporate suicide and discontinues their single most popular line of microcontrollers then whatever platform Arduino moves over to can easily be migrated to as well if you code in the toolkit.
Arduino does NOTHING for you in terms of supply security.
From the article…
“because the Arduinos can be unplugged from the machine, it’s now preferable to just post a new set of boards to the customer and allow them to do the upgrade themselves”
…so that’s a good reason to have your control board easily swappable, and if you’re doing that, then you may as well use an off-the-shelf control board form like an Arduino, no point reinventing the wheel.
Even if they wanted to maintain the functionality, it would be cheaper to fab their own boards….even if they clone the arduino board verbatim. It’s not reinventing the wheel…more like a wholesaler paying retail.
And this don’t works with pure atmel chips ?
Not when Atmel goes bankrupt, or they discontinue the chip you happened to use.
at which point (30 years from now), if the product still happens to be in production or supported, you design V2 of the board (assuming there haven’t been ANY incremental design revisions since then) using new stock. It’s not like this sort of thing happens every week
I think the key is to realize that they designed the machine as an “arduino shield” so to say. They can in future simply plug and play a future version of a beefier arduino without re-doing any of their own designs.
But, I still find it a bit odd and costly from an industrial perspective to use arduinos as is.
Haha, what an awesome move! It’s just him, trolling a company with Opensouce! :)
How is it trolling? Many of us choose open source solutions for commercial products.
Also, it is a quite nice writeup … I read it with a big fat smile on my face … Just .. awesome! :D
If the hardware they produce uses the arduino libraries, doesn’t it have to be open sourced as well? Or are they thinking that popping the read protect fuses will protect any one from being able to “prove” that the software that runs on their hardware actually leverages those open source libraries.
GPL enthusiasts want to know.
The Arduino website states that the µC code is LGPL licensed. Wikipedia states the following:
“The main difference between the GPL and the LGPL is that the latter allows the work to be linked with (in the case of a library, ‘used by’) a non-(L)GPLed program, regardless of whether it is free software or proprietary software.[1] The non-(L)GPLed program can then be distributed under any terms if it is not a derivative work.”
Problem solved?
http://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License#Choosing_to_license_a_library_under_the_GPL_or_the_LGPL
I had the same thought. My Arduino libraries (including EasyTransfer) are CC-BY-SA not LGPL. So if he used one of my libraries, he’d have to attribute the work in his blog post and to the company. There’s also the SA part: “If you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.”
IANAL, but I think even with GPL you only have to give the source code out to the people you’ve given the binary to and then only if they ask for it.
The companies who receive the product could force the manufacturer to hand over the source, but in practice this never happens because these companies are not that interested in that, at least not more interested than regular updates and support, which I could imagine would suddenly stop if you turned litigious on your supplier.
I’m not sure what would happen if the product itself broke the licensing, making it unsuitable for redistribution. For instance if source form an incompatibly licensed origin is used.
But surely ARM is an equally well-suited platform (made by a hundred companies, code is portable between in-family chips, USB bootloaders for field-programmability), for a much cheaper, compact and more professional-looking system? Plus certainly a single reasonably-powerful ARM CPU with a few external peripherals could do the work of all those Arduinos.
I can understand the argument against PLC, but why go full-hobbyist?
Without knowing the situation, it’s hard to say…but I have seen situations where running multiple, low power micros works better than a single high power one….usually when the different components are doing completely different tasks.
I think he also mentioned that using the Arduino IDE made it easier for the end user to roll their own firmware…which sounds like a complete nightmare to me.
I suppose I have to disagree with your point there. This is not a system which is doing a set of completely unrelated tasks. It’s an industrial printer, whose task is to combine all functions to produce a printed page. You can’t tell me that there are enough wholly independent groups of tasks that the processors wouldn’t need (or at least want) to be synchronized in some way. The system gets a Print command, it fires up this set of rollers, it picks up the paper over there, it pumps some ink from these tanks, it sprays it on the page.. If it did those things in an uncoordinated manner you’d end up with a crumpled ink-soaked wad.
I have to believe that an ARM running an RTOS would be a much simpler and more reliable way of accomplishing this. If HP does it in a $50 printer, why shouldn’t it be a good idea in a $15,000 printer?
As for programming… I can’t think of any rational reason why you’d want your customers writing completely custom firmware. If you have to rely on your customers to write your software, you need better software. Plugins, maybe… but that should be on the PC side, not the machine side.
“If HP does it in a $50 printer, why shouldn’t it be a good idea in a $15,000 printer?”
Because HP is doing a little bit more than a 100 printers per year. I’m working machines even higher in price and lower in volume and I know, that the best solution is always the most simple one. When you sell few units per year, your wasted time in developing costs much more than $50 per unit. Also you don’t get these prices for components that HP have when you’re building in low volumes, so the difference between atmega and arduino gets even smaller. There is a reason, why big industrial machines are made of bunch of pricey PLCs slammed together.
I went and read the article again and noted what exactly the five units are doing (each dealing with a separate ink reservoir), so I guess your point may be valid after all – although I still think an integrated controller powered by a single medium-performance CPU would have no problem with this task. Plus then the customer wouldn’t have to reprogram five individual devices every time they wanted to tweak the firmware.
I see what you are saying, but consider that at the end of the day you have to pick 1 solution out of many (really many in this case) and you have to factor in what tools you already are familiar with (unless you plan on spending time/money on learning something new – which is a 3rd reason to pick something less obvious).
Hey, if it works, it works! Plus look at the publicity they’re getting now.
That might very well be the reason why they are using arduino boards and not just the 328 chip alone. Free publicity
I have seen too many machines that outlive the companies that made them, and many more that outlive their interest to support them. Owner interest and maker interest are mostly not in sync in the current times.
That’s a reason for good documentation (1960’s-style, with full schematics on the inside of the case), not for using a hobbyist part.
I can second that fact. As head IT of a small electronics fab shop, a small but significant percentage of our older hardware is completely unsupported with no vendor companies in business to do so. 15 years down the road and they all seem to fall under the IT umbrella to keep them operational.
Sometimes we get lucky and they used ‘standard’ PLCs, which typically have replacement hardware out there. It’s then just a matter of software.
(If a license is violated in the woods and no vendor is in business to hear it, does it make a lawsuit?) but it still occurs to find complex logic baked into boards and boards of 7400 chips and ribbon cables, or worse analog hydraulics and air valves.
While this company still keeps it’s firmware hidden away, despite all they have gotten for free from the open source community, it is still less of a sickening situation to at least have open hardware and a fighting chance.
Tis a shame we have no need for this type of printer. A screen printer sure, but paper/hardcopy? icky ;}
He fails big time on his reasoning on not using a PLC. “A couple of years down the line, the vendor discontinues the PLC, or worse, goes bust, and you’re in trouble.”
Really? Allen Bradley, Mitsubishi, GE Fanuc, and most others still support almost all thier PLCs. You can still get software to run units from the 80s. And one of these companies goes bust? Yeah, thats not going to happen.
PLCs are used because they are incredibly reliable, pretty easy to program, and are easy to modify in the field to add new functions my just modifying the ladder logic with a laptop. No one needs to be able to read and write code.
I will admit, I am using a teensy in a horizontal boring mill at work to handle an issue with a probe, but it is just doing a very simple thing, not needing 4 of them to run a machine.
“even if Arduino stopped supplying boards tomorrow, other manufacturers are making clones, and the hardware design lives on” Yes and no. People could just lose interest in the Arduino when something better comes along. Once that happens people stop making clones. The good thing is that they Arduino is Open as is the software so you could in theory make your own replacements or clones.
Thats nice, but it is not a reason to use an arduino. How it connects to the machine is only one variable in the whole equation. Its not like every subsequent version if going to be the same processor and that means your sketch that runs today may not run tomorrow if they used libraries and calls that are not supported in subsequent versions.
And without the original firmware you are still SOL, it is not like you can just dump it and decompile it easily into something easy to work with. With the PLCs I have worked with you can open the program while the PLC is running and debug without needing a copy of the original program. You dont get notation on what specific input or output does like it should have been noted in the original program, but it makes debugging a lot easier.
The whole point of “Arduino” is that it’s a platform: both the hardware and the supporting API’s are part of this platform and unlikely to break backwards compatibility in the future. Since it’s so widely used, even already today you have pin and software compatible “‘duino’s” with ARM chips or PIC chips. So, it IS a reason to use Arduino, and probably a pretty good one.
Except Arduino is a hobbyist project. Lets say in 5 years, using ATMega’s goes out of favor for using ARM chips, there is very little keeping them from removing backwards compatibility with the ATMega. If you want to use the ATMega, then you’ll just have to lean ANSI C.
This scenario is MUCH more likely than a company producing industrial grade PLC’s pulling the same crap. In the first case, you piss of some home tinkerer. In the second, you shut down factories.
The only issue I really have with PLC’s is vendor lock. It’s not that expensive or difficult to get up and running or to expand, but they nickel and dime you death when you start buying extra modules.
The Company that makes the printer does have the original firmware. My point is that there may not always be Arduino clones. I was shocked to find you can still buy PDP-11 clones and X86 motherboards that support ISA the reason why is that they were both documented extremely well. The Arduino maybe like those and have an extremely long life span or they may not. As to end users supporting the device after the company making them goes south most companies will just stop using the printer or somebody will buy the old company and keep supporting them for a while. If those two things do not happen then most users will use them until they break and can not be fixed.
i know there’s more to any machine then a single piece of electronics, but if i owned one of these machines, it would be a little disappointing at first to open it up and see consumer electronics powering it. “i just paid how much for stuff that my kid’s playing with for a hobby?!”
maybe there’s something about that perception that needs to be challenged and/or changed.
the reasoning makes sense in many respects. i’ve had the displeasure of having to install a few PLC’s in ways that the original engineers never intended– i would have many unkind words for them had they been on-site.. so that said, i think there is a huge benefit for a company to be able to control all aspects of the final product instead of relying on outside components for control circuits/control enclosures.
Use what works, but in business I am in, never would I do this, because we sell millions of units, and a simple $10 reduction in cost means a $10,000,000 available for salaries, and r&d for new products.
Of course you wouldn’t. You sell millions of units. He sells < 100 per year. That's merely a $1000 cost savings that could easily be eaten up by an extra couple of days of development time.
I’m surprised part of the rationale is that the end user is more comfortable swapping-out arduinos than alternatives. Really? If I’m taking my expensive machine apart, I’m already confident. Furthermore, surely pulling-out a 28-pin DIP IC and squishing a new one in its socket intimidates no one. The more I read this post, the more my “really? really? REALLY?” eyebrow raises. I also got a chuckle out of “because I used Arduino for my Master’s thesis.” Props for being inventive and making something though. You’re selling a product people are making fun of. I’m sitting here, eating chips, posting on a forum in my underwear. You win :)
I feel you on that one, I had a client bring a product to me, to retro fit a display driver, the previous engineer actualy used an embed x86 pc to drive an LCD monitor to do a simple display, I was like WTF? Then it hit me, he sold the units, I didn’t, he wins
This goes back to something that shocked me a a while back. A company can normally sell a cheap product for a higher price, than it can for a lower price.
It’s perception. You could import something for a quarter, then sell a billion of of them for $.30 (or try). But many people just wouldn’t buy them, because they perceive it to be a cheap item. So no sale.
But if you imported that SAME item, and sold it for $10, people think “wow! This must be great!! It costs more!” then you’ll sell a million of them.
Very counter intuitive, but yeah… that’s the way it is. You can’t price your product too low, or people just won’t buy it.
This is similar here in the vein that if they open that up, and see that little Arduino in there, they’ll freak out because they bought junk. But if they see a custom made board, just for them, no matter what the price is, they’ll love it, and they’ll be proud of it. No matter the price.
Shame, and shocking. But that’s the way it is. Perception. So what if it does the same job. So what if it’s cheaper. I want custom! I want special!
(Then you get into the whole baseline budget thing, where bosses have to keep spending money no matter what, just to get the same budget again next year… so they’re throwing money out the window…. but that’s another story)
Only some geeks will think that when they open the box. Probably 95% of their customers (printers) won’t open the box in the first place, and of the 5% who do, 95% has never heard of Arduino. Even if they have, who cares, if it makes it easier.
The forum is in your underwear? No wonder Caleb wants out :)
At first glance this seems like a bad idea however given the scope its a pretty good solution.
This solution is vender independent and chip independent.
Not a PLC – Sounds like they have had bad experiences with PLC’s
Easy for beginners to learn – This may the biggest reason. My guess is they have some great Mechanical engineers but they don’t have any in-house micro controller developers. This solution is easy to pickup for the current Engineering staff and the Arduino IDE is Friendly!
Customer Upgradeable – If you tell the customer don’t worry about it if you break it we will send another Arduino for free vs that board is worth $15,000 don’t break it, the customer will ask you to fly someone out to perform the upgrade. This is big if there is a software bug that is preventing production and causes downtime and you have a support contract.
Off the shelf parts – Rather than having to order 5000 boards all at once they can just order them 5-10 at a time.
I’m sure there are many other reasons that he chose not to disclose however pretty neat that he used the Arduino in this way.
Sounds like, Paul works for a great company, for just listening to this. A LOT of companies, wouldn’t even give you the time of this if you tried something like this.
One arduino per blinking led, just like in his master’s thesis
http://ruggedcircuits.com/html/ruggeduino.html
Seems to me like they were being lazy. If one of our customers found out that they were paying big bucks for something they can get online for under a hundred bucks, they’d go elsewhere. I’m not saying you can’t do professional level work with “hacker” tools but, it doesn’t scream professional.
Ahh.. But your just talking hardware – your NOT considering the time and effort to write the code.
A book is just 2 pieces of card with a lot of sheets of paper between them. But what we pay for is the writings and idea’s on them.
Just because the libraries and tools are open sourced – the idea and coding’s that make this application unique are not.
>The most compelling argument to us is that choosing Arduino is absolutely future proof. >If the company goes out of business there are hundreds of clone
>devices already available.
What if Atmel go out of business?
Ditto. The Arduino is fully dependent on a relatively new player in the 8-bit market (in industrial terms–Microchip is now at 2+ decades, and still supports chips from the early 90s, while Atmel has had trouble supplying ‘328 chips in the past, and has had a poor track record of keeping up with demand). In the industrial market, obsolescence is one of the most painful things to deal with, and it’s pretty misleading to say that the Arduino improves reliability at all (I wouldn’t be the first to say that there’s extremely poor and misleading documentation online, and that there’s a large amount of hardware variance in the market).
The more I think about it, the more I realize that what’s basically happened is completely unrelated to the Arduino. The author has basically led this company into making the big decision of doing all of their electronics and embedded design in-house (this is sometimes a very good idea, but also sometimes a bad idea), and used the Arduino and a few (IMHO) somewhat tenuous arguments as a bit of a way to ease the pain. As he’s noted, the company’s engineers, probably more experienced with printing and mechanical engineering than electronics, now need to learn C and C++, and in many of the “supply security” cases will need to learn to do PCB design and electrical testing/debugging on their own. Framed in that viewpoint, I don’t know enough to be able to even begin to decide if it was a good idea or not, but I think the Arduino is really quite irrelevant to the basic issues being dealt with in this case. The real question is–5-10 years down the line, after the Arduino Uno or whatever is a joke, and hobbyists have all moved on to the newest and great ARM Arduino, what will the board look like? Seems like there’s a good chance that the engineers will end up just designing their own little daughterboard with maybe an old stock of 328s they’ve been hogging, or if Atmel’s got their stuff done right, they’ll be supplied directly from Atmel’s old guaranteed stock.
If anything, what the Arduino is useful for is very much analogous to the learning process for many hobbyists–it’s a great first step for beginners, and for many experienced electronics hobbyists and engineers, a great way to start off a first prototype, but in the end a custom designed board tends to end up being more appropriate.
Or use something like the Teensy :)
are the new arduinos not arm based anyhow?
If Atmel goes out of business, you just use another ‘Duino board. They’re already there, like the Pinguino, etc. So again, the whole point is the abstraction layer that the Arduino platform provides.
Are the other duino boards 100% hardware compatible? The pins might have the same basic functions but do they actually do the same thing?
Future proofing based on the connectors/pinout would be fine if it was a defined industry standard.
As a former press operator, I’ve gotta say I kinda like the idea of an Arduino or five controlling a press.
What you have to understand about press operators is that we are always trying to make our machines do more than the manufacturer intended… we generally never leave a press in a stock configuration for long, (like about 10 min from the manufactures tech leaving from the initial installation)
Getting another manufacturers add-on to fit on a press is easy, getting it to play nice is not. Having some “redundant” usb ports to plug in and control it would’ve save me many a headache.
Dose anyone else see some problems with this regarding security. It took a large dedicated team of programmers to make stuxnet to make a equivalent for arduino would be much simpler and faster. Given the plug in nature of the device sending a fake “Update” package would allow a easy method of introducing malware. In terms of company secrets knowing how many and of what the competition are printing would be a major advantage. This leaves many complications to using such a well know common hardware and “open source” platform. If overcome this could be a good solution.
Except this does not seem to be an online device, you would update it by plugging in the USB or just swapping the board out. There is no real attack path so security is not a problem.
Send them a package looking like an update from the manufacture with installation instructions and they will install it for you ;)
Dunno it just seems… boring. People that are afraid of them being spied on are often quite boring and not even worth spying on. I think the same goes for the packaging machine above.
But how many sysadmins hold off installing patches because, “this thing is working okay, this patch may break it”. Read “The Cuckoo’s Egg”, DEC sent out security patches, but didn’t [want to] mention that the patches were fixing gaping security holes, so most patches were left on the shelf.
To do what? Just wondering why you would attack this device at all?
I know a guy that uses arduinos for middleware. He simply programs a little arduino box that translates information from one source to another.
Ok, i’ll drop my 0,02$ too…
I think that Arduino is no way future-proof. It’s great for prototyping but if you use it in a final project you may have issues. A board may be discontinued:
1) The new one could have different components, like Atmel USB bridge instead on FTDI (2009 vs Uno) or different MPU (2009 vs other 2009). Depending on your design, this may be ok or not.
2) The new one could have a slightly different layout and you could have other components which does not allow the new board to mechanically fit (see expanded pin header in Uno) and other possible changes to components location like USB, etc.
3) The software is not always backwards compatible. Arduino 1.0 had breaking changes with previous versions. The opensource firmwares for 3d printers had to be compiled with old versions to work.
4) No debugging is possible except for printf-based stuff. When you work on complex systems for a company you want to spend your time effectively.
Arduino may be fine for some products which have a limited time to live, but for industrial machinery this is not the case. Our machines need to live at least 20 years. Do you think in 20 years we’ll still have an Arduino Uno or something compatible?
Do you think we’ll still have the Atmega328 in 20 years? Or pick your favorite MCU..
There are MPUs which have a very long life cycle, like Z80 and HC16. Some MCUs are guaranteed for some time and then have a planned upgrade. PLCs have a long life too and the manufacturer takes care of providing a compatible replacement for the future.
Bingo. If longevity is a concern, build the system on an 8051. Released in 1980 and still widely used 30+ years later. Don’t rely on the ‘flavor of the week’ among hobbyists.
I had this exact same thought at first. sort of thinking that he used four “toys” to make a product. but then I thought about it a bit more carefully.
it’s not about using the ATmega 329, or any other chip specifically.
it’s about board compatibility.
Think past the chip, the form factor of the chip or even the family and brand of the chip.
All that any replacement board needs is compatible pin headers, (including the awkward space) what they’ve effectively done is made a couple of “shields” that interface with the hardware. the point is who cares what particular chip is in the arduino board.
Yes if the ATmega328 chip breaks you can replace with a similar chip, if that chip is not available you can replace with a pin compatible board, -regardless of what chip that board was using, Atmel, ARM, even PIC who cares? the only thing that you need is a row of pin headers that conform to the same standard as all Arduino boards since pretty much forever, and the ability to compile and run a sketch.
FOREVER? Arduino is the new kid on the block, it’s only been around like 8 years. There have been microcontrollers that have been around only 4 times as long…
Then there are those who know the difference between Arduino and… well a microcontroller.
Arduino is more akin to OOPic. Atmega to PIC. One is an abstracted platform the other the hardware. The platform needs the hardware, the hardware does not need the platform.
Waiting for the first arduino pacemaker…
The PIC 877 and many others from microchip have been around and are still around and are not going anywhere anytimes soon, in fact a lot of them where around before the arduino was a twinkle in anyones eye and you can buy them in mass quantities still to this day. The Aruduino is a fad at best and atmel could fold at any time, they already have a hard enough time fabbing chips. The arduino depends on a bloatloader and support hardware. A lot of PICs can run standalone. No bloatloader, No crystal, No level shifters, etc etc etc… They still had to make a motherboard for the arduinos to ride on, You could have done the same thing using whatever micro you wanted. The reason he did it is because arduino is all he knows enough about to program. Sketches are easy and milking the library is easy, period. I’ve seen people try to do this exact thing, like the rabbit boards for example, we had a piece of equipment that was chock full of them and it was junk because we had no access to the code so it went to the dumpser. And microchip doesnt call them GPIOs for no reason, as long as your power pins match up, the others can be programmed to do whatever unless its on chip hardware you need, and I can find about 50 different chips that all have the same pinout. I’d say the arduino forces you to fit them, not the other way around.
how come any time the word arduino is mentioned a storm of proportions is kicked up.
people complain that it could be done with the atmega alone, it is the same chip why bother?
for most companies the price of extra unneeded components in a case like this is beyond negligible, even thinking about it at that level is a waste of time(we are talking dollars on what seems like fairly specialized machines, if that)
actually just getting a functional and fairly plug and play device through the door with massive API libraries, ready to begin working on whatever challenge is ahead of you, instead of spending time on design and testing of the tools needed to even begin seem to be worth it in a lot of cases.
It isn’t that crazy, I used an arduino some relays and pnuematic valves to set up a simulated moving bed chromatography set up in the pilot plant at work. Using an arduino made sense in this instance because I needed it right away, it had to live in an environment where it was likely to get wet, and I could just make the quick drive to the local hobby electronics store to get another one if someone broke it. I have access to PLCs that I could have used but didn’t want to go through the trouble.
I think this guy is in for a world of hurt once these printers get out into the field. He doesn’t even know what he doesn’t know about the problems the PLC vendors have solved. PLC’s seem expensive for the amount of processing power you get but what you are paying for is their 30 years of experience dealing with crazy situations that happen on a shop floor. What happens to the Arduinos when the power blinks off for, say, 50 milliseconds? Do 2 of them reboot and the other 3 keep running? What happens when the power slowly droops? Do they all stop running at the same time? A PLC that can be programmed with the Arduino IDE may be a good idea for a product, and this engineer has just committed himself to trying to develop that product in addition to his regular job. My prediction is he will be fired after 30-50 of these get into the feild and the company will hire a 40+ year old engineer to replace the arduinos with a proper PLC
Right. And the earth is flat. Give the guy credit for coming up with a novel solution and thinking outside the usual box that some seem to be stuck in. You’re right, a 40+ year old engineer may use a PLC – but real innovations are usually made by the young. I think there’s something to be said for using a universal, open building block with a clear open standard. What happens when the power slowly droops? How about replacing the power supply? It’s a printer, not a plane we’re talking about.
I was excited when I first saw this post because I am all for disrupting the industrial control market. When I read the post I realized this is not someone setting out to disrupt a sclerotic market but this is someone who is trying to find the best option for a small, low volume manufacturer. He is doing this manufacturer a disservice forcing them into a difficult product development project they did not ask for. What happens when the power droops? (and I mean the mains power.) One of the Arduinos stops running before the others and the running ones dump all the ink from the machine onto the floor. The manufacturer has to send a service tech who can find nothing wrong. The whole cycle repeats itself every few months until with heroic effort someone figures out that turning on the building AC at the same time someone is microwaving a burrito make the machine go haywire.
One of the biggest headaches is getting an industry to agree to a standardized bus. A standard bus makes hardware upgraydds (with a double d) easier. The shield is a standardized bus they have adapted for their use. It’s good to have standards.
And the nice thing about standards, is there are so many to choose from!
B^)
I hate the Arduino and I actually think this is a good use for the hardware. My only gripe is thus:
Are the underlying Arduino drivers solid enough for this kind of application? It’s one thing to light an LED but a whole other ball game when a machine can potentially eat the customer. I stopped using Arduino about thirty seconds in when I realized some of the hardware interface design choices were so strange I was guaranteed to encounter problems down the road. I see Arduino sketches as kind of the same thing as PHP. It works but there are a whole lot of design choices caused by bad programmers without a clue that has caused nothing but nightmares for experienced programmers.
I liked the printer. But seems that every time an Arduino is used, people go crazy. It’s his design, the customers are happy, his employer is happy, he is happy, everything works. So, what is the problem?
Arduino is a toy? Yes, is a toy. But if I am using it to make money, big money, is not a toy. As someone said up in the comments, almost nobody will open a $15k printer. And if someone opens it up, almost nobody will recognize an Arduino.
There are obvious downsides for having a couple of Arduinos hardwired on the board, but being able to ship a plug-and-play software update by mail is a very nice feature to have.
I would hardly call it future proof
A mixer is used for many purposes for example mincing,
whipping, beating and mixing the food or reducing the food to a smaller size.
The nuts and seeds that were closest to the blade were the only items that seemed to be moving.
It is perfect for those who don’t want to handle onions
and garlic by hand. This simple recipe is versatile
and cost-effective.