Pen-Plotter Firmware Written Completely in Ada

[Fabian Chouteau] built a plotter out of CD-ROM parts. Yawn, you say? Besides being a beautiful physical build, this one has a twist. He wrote the software and firmware for the entire project himself, in Ada.

Ada is currently number two on our list of oddball programming languages that should be useful for embedded programming. It’s vaguely Pascal-y, but with some modern object-oriented twists. It was developed for safety-critical, real-time embedded systems (by the US Department of Defense), and is used in things like airplanes, rockets, and the French TGV trains. If that sounds like overkill for your projects, [Fabian]’s project shows that it’s still very tractable.

In his GitHub, he re-implements the GRBL G-code generator and then writes a GUI front-end for it. In his writeup, he mentions that the firmware and its simulator for the front-end use exactly the same code which is quite a nice trick, and guarantees no (firmware) surprises when moving from the modelled device to the real thing.

We looked quickly around for Ada resources and came up with: GNAT, the GNU Ada compiler, and its derivatives: GNAT for ARM (STM32-flavor), ARM-Ada (LPC21xx flavor), AVR-Ada, and MSP430-Ada.

Any of you out there use Ada in embedded work? We’d love to hear your thoughts.

Continue reading “Pen-Plotter Firmware Written Completely in Ada”

OpenPLC is Ready for Hacking

It’s been nearly four years since we covered [Thiago]’s OpenPLC project. He never stopped working on it, and now it’s in a highly polished state.

If you read our initial coverage of this project, it would be easy to assume that he just wanted to control some halloween decorations. He is actually a PhD student at the University of Alabama in Huntsville. His research topic is SCADA (aka Industrial Control Systems) cyber security. His goal was to find vulnerabilities in PLCs and, hopefully, fix them. However, no PLC manufacturer releases their source code, and he was having trouble getting a deep understanding of something so closed.

So, since no one was going to open their code and hardware for him he simply made his own. OpenPLC can be programmed in all 5 IEC 61131-3 languages: ST, IL, LADDER, FBD and SFC. On top of that, it lowers the barrier of entry to developing this kind of industrial hardware by being compatible with all the favorites Arduino, Raspberry Pi, Windows, Linux, etc.

“The OpenPLC is the first fully functional standardized open source PLC. We believe that opening the black-box of a PLC will create opportunities for people to study its concepts, create new technologies and share resources.”

CNC Drag Knife Upgrade with Off-the-Shelf Blades

Drag Knives seem to be the overshadowed awkward kid on the playground of CNC equipment, but they have a definitive niche making stencils, vinyl stickers, and paper cuts. Unfortunately, the drag knife blades for CNC routers are pricey — over $100 for a single blade. [Brian] at the Grunblau Design Studio took the price point as a challenge to build his own end-effector. A few iterations later, he’s created his very own drag knife blade tool that accepts replaceable steel blades for cutting.

From constraint-driven concept, to a 3D printed proof-of-concept, to a fully machined aluminum prototype, [Brian’s] efforts hit all the highlights of a well-engineered project. At the end of the day, dull blades can be swapped for a few dollars, rather than shelling out another $150 for the off-the-shelf variant. We’ve seen bootstrapped CNC vinyl cutters before, but nothing that takes an original re-envisioning of the tool itself.

FR4 Machine Shield Is A CNC Milling Machine From FR4 PCB

The people behind the PocketNC heard you like CNC PCB mills, so they milled you a PCB mill out of PCB. They announced their surprising new open source hardware product, a pocket sized 3-axis CNC machine entirely made out of FR4 PCB material, aptly named “FR4 Machine Shield”, at this year’s Bay Area Maker Faire.

fr4_thumbWe know the concept from quadcopters, little robots, and generally things that are small enough to make use of their PCBs as a structural component. But an entire CNC machine, soldered together from a few dozen PCBs certainly takes it to the next level.

There is no doubt that 2mm thick fiber reinforced epoxy can be surprisingly rigid, although the Achilles heel of this method might be the solder joints. However, it looks like all load bearing, mechanical connections of the machine are supported by tightly interlocking “dovetail” finger-joints, which may help protecting all the solder connections from the strain hardening effects of continuous stress and spindle vibrations.

As you might expect, most of the wiring is embedded into the FR4 frame construction, and to squeeze the maximum value out of the PCB material, the motor driver boards interface via card edge connectors with the (currently Arduino based) controller board. In addition to the milling head, which features a brushless DC motor and a tool coupler, the team wants to develop heads for circuit printing, microscopy, pneumatic pick and place, hot air reflow, and 3D printing.

With all those cost-driven design choices, from the one-step manufacturing process of the frame and wiring to the dismissal of screws and nuts from the frame assembly, the “FR4 Machine Shield” could indeed become one of the cheapest CNC machine kits on the market. The team targets an introduction price of $400 during a Kickstarter campaign in June 2016. Can they deliver? [Gerrit] checked Pocket NC out at the Faire and ended up raving about how they run their business.

Enjoy their teaser video below!

Continue reading “FR4 Machine Shield Is A CNC Milling Machine From FR4 PCB”

Mechaduino- Closed Loop Stepper Servos For Everyone

Is it something in the water, or have there been a lot of really cool servo projects lately? Mechaduino is a board that sits on a regular stepper motor and turns it into a servo with a closed loop control of 0.1degree.

Whenever we post something about using cheap brushless motors for precision control, someone comments that a stepper is just a brushless motor with a lot of poles, why not just control it like one. That’s exactly what the Mechaduino does. They also hint at doing something very clever with a magnetic encoder on the board which allows them, after a calibration routine, to get the accuracy they’ve promised.

T Continue reading “Mechaduino- Closed Loop Stepper Servos For Everyone”

CNC Clock Mills Itself, Displays The Time

[Christian] wrote and sells some CAM/CNC controller software. We’re kinda sticklers for open source, and this software doesn’t seem to be, so “meh”. But what we do like is the Easter egg that comes included: the paths to mill out the base for a clock, and then the codes to move steel ball-bearings around to display the time.

Of course we’d like to see more info (more, MORE, MOAR!) but it looks easy enough to recreate. We could see redesigning this with marbles and a vacuum system, for instance. The seats for the ball bearings don’t even need to be milled out spheres. You could do this part with a drill press. Who’s going to rebuild this for their 3D printer? You just have to make sure that the machine is fast enough to move the balls around within one minute.

Continue reading “CNC Clock Mills Itself, Displays The Time”

Hackaday Prize Entry: Industrial Servo Control On The Cheap

[Oscar] wonders why hobby projects ignore all the powerful brushless motors available for far less than the equivalent stepper motors, especially with advanced techniques available to overcome their deficiencies.  He decided it must be because there is simply not a good, cheap, open source motor controller out there to drive them precisely. So, he made one.

Stepper motors are good for what they do, open-loop positioning along a grid, but as far as industrial motors go they’re really not the best technology available. Steppers win on the cost curve for being uncomplicated to manufacture and easy to control, but when it comes to higher-end automation it’s servo control all the way. The motors are more powerful and the closed-loop control can be more precise, but they require more control logic. [Oscar]’s board is designed to fill in this gap and take full advantage of this motor control technology.

The board can do some pretty impressive things for something with a price goal under $50 US dollars. It supports two motors at 24 volts with up to 150 amps peak current. It can take an encoder input for full closed loop control. It supports battery regeneration for braking. You can even augment a more modest power supply to allow for the occasional 1 KW peak movement with  the addition of a lithium battery. You can see the board showing off some of its features in the video after the break.

Continue reading “Hackaday Prize Entry: Industrial Servo Control On The Cheap”