Tag Archives: arduino

Capture macro photos with this Arduino-powered platform

via Arduino Blog

Getting that perfect up-close macro shot is touch, especially since even the smallest movement can throw off a focused image or make the subject leave the frame. This need for stability and precision is what drove Kike Glez (AKA ‘TelekikeG’ on Instructables) to build a motorized photography platform that would be able to gradually move closer/further away relative to the subject with extreme levels of granularity.

The device utilizes an Arduino Uno as its primary microcontroller and its job is to generate pulses for the DRV8825 stepper driver, which turns the stepper motor as well as accepts user inputs from a series of five buttons — all mounted on a custom PCB shield. The board also features several TIL331 seven-segment modules for a more vintage appearance. Rather than constructing the entire platform from scratch, an old CD-ROM drive was repurposed in order to use the laser head gantry to move the subject instead. Lastly, a pair of bright lights were placed in front of the subject that provided plenty of illumination.

To take a macro photo, the user must first input the start and stop locations of the subject, along with how much delay there should be between making a movement and taking a picture. The result is a massive collection of images, which can then be combined in software to create highly detailed macro photos. 

For more information about Glez’s project, be sure to check out its write-up here on Instructables

The post Capture macro photos with this Arduino-powered platform appeared first on Arduino Blog.

Supplino is a variable benchtop power supply that you can build yourself

via Arduino Blog

Working with electronics requires access to stable power in a variety of voltages. Some components require 3.3V and others require 5V. Still others need 9V or 12V — there are many possibilities. You could keep a variety of wall warts on hand, but a variable benchtop power supply is a more convenient option. Supplino is one choice and this guide from Giovanni Bernardo and Paolo Loberto will walk you through how to build one.

Supplino can accept anything from 4 to 40 volts and can output anything from 1.25 to 36 volts, with a maximum of 5A. An XH-M401 module with an XL4016E1 DC-DC buck converter handles the voltage regulation. Technically, you could use that alone to power your components. But the addition of an Arduino Nano board (or Nano Every) makes the experience far friendlier. It monitors the power supply output and drives a 1.8″ 128×160 TFT LCD screen, which displays the present voltage, amperage, and wattage.

The Arduino receives power from a second 5V buck converter. It uses a relay to control power going to the primary buck converter. A relocated potentiometer controls the voltage. Two banana plug socket make it easy to attach alligator clips or whatever other leads your project requires. You can wrap up all of these components in a tidy and attractive 3D-printed enclosure, which is compact and fits on any desktop. You have many options for the input power, but a laptop power supply is a good choice.

More details on the Supplino can be found in its post here.

The post Supplino is a variable benchtop power supply that you can build yourself appeared first on Arduino Blog.

AutoStrap is a self-tightening strap that’s like something out of Back to the Future

via Arduino Blog

For wearable devices, attaching them to an arm or leg can be an annoying process since the straps used often have complicated tightening/locking mechanisms. This is what inspired one Instructables user who goes by The Puma to create the AutoStrap, a self-tightening strap system for wearable electronics similar to Marty McFly’s power-lacing shoes in Back to the Future.

The AutoStrap works by using a 3D-printed arm that is loaded with a spring and is actuated with a stepper motor. In order to check if the device is fully tightened around one’s arm, the spring contains 1K Ohm resistor within that goes from the rated resistance down to zero when the end is reached. This value, in turn, tells the Arduino Uno that a home point has been reached and to stop, where a button press can then reverse the process.

Besides being a quick way to attach wearable devices for fitness or VR tracking, the AutoStrap also has potential to become an assistive device for those who might not be able to use traditional attachment mechanisms. To read more about this project, you can visit its write-up here on Instructables and watch its demo video below.

The post AutoStrap is a self-tightening strap that’s like something out of Back to the Future appeared first on Arduino Blog.

Plot designs onto cups with CylinDraw

via Arduino Blog

Most plotters are planar, meaning they move in a single plane — though they often have the ability to move the tool up and down in the third axis. But if you convert one axis of the drawing plane into rotation, you get cylindrical plotting. That is how the rotary axis on a CNC machine works. If the tool moves in a third axis, you can even do conical plots. That’s exactly how CylinDraw makes it possible to plot directly onto cups and glasses.

CylinDraw is an open source “cup-specific” plotter and engraver. It is a 2.5 axis machine with a rotary axis, similar to the famous EggBot egg plotter. Except instead of drawing onto the elliptical (in cross section) surface of an egg, CylinDraw plots onto the straight or sloped surface of cups, bottles, and similar objects. By equipping a Dremel or other rotary tool, you can also engrave onto a surface instead of drawing. If you do draw, the software also lets you swap pens to get a full color palette.

An Arduino Nano board controls CylinDraw’s operation, including the stepper motors that rotate the cup and move the tool along the X axis. The frame and many of the parts, including the lathe-inspired chuck, are 3D-printed. But it is the software that really differentiates CylinDraw from similar plotters. With this software, you can automatically convert images into G-code toolpaths for the Arduino to follow for plotting.

CylinDraw is currently available as a DIY hardware kit on Etsy if you want to build one for yourself.

The post Plot designs onto cups with CylinDraw appeared first on Arduino Blog.

AIfES releases exciting new version of TinyML library for Arduino

via Arduino Blog

Last July AIfES (Artificial Intelligence for Embedded Systems) from the Fraunhofer Institute for Microelectronic Circuits and Systems (IMS) was launched. This open source solution makes it possible to run, and even train, artificial neural networks (ANN) on almost any hardware, including the Arduino UNO. 

The team hasn’t stopped work on this exciting machine learning platform, and an update just landed that you’ll definitely want to check out.

The new AIfES-Express API

AIfES-Express is an alternative, simplified API that’s integrated directly into the library. The new features allow you to run and train a feed-forward neural network (FNN) with only a few lines of code.

Q7 weight quantization

This update enables the simple Q7 (8-bit) quantization of the weights of a trained FNN. This significantly reduces the memory required. And depending where it’s being deployed, it brings a significant increase in speed along with it.

This is especially true for controllers without FPU (Floating Point Unit). The quantization can be handled directly in AIfES® (and AIfES-Express) on the controller, PC, or wherever you’re using it. There are even example Python scripts to perform the quantization directly in Keras or PyTorch. The quantized weights can then be used in AIfES®.

Advanced Arm CMSIS integration

AIfES® now provides the option to use the Arm CMSIS (DSP and NN) library for a faster runtime.

New examples to help you get building

A simple gesture recognition application can be trained on-device for different Arduino boards, including:

You can play tic-tac-toe against a microcontroller, with a pre-trained net that’s practically impossible to defeat. There are F32 and quantized Q7 versions to try. The Q7 version even runs on the Arduino UNO. The AIfES® team do issue a warning that it can be demoralizing to repeatedly lose against an 8-bit controller!

This Portenta H7 example is particularly impressive. It shows you how to train in the background on one core, while using the other to run a completely different task. In the example, the M7 core of the Portenta H7 can even give the M4 core a task to train an FNN. The optimized weights can then be used by the M7 to perform the FNN with no delay, due to the training.

Here’s a link to the GitHub repository so you can give this a go yourself.

The post AIfES releases exciting new version of TinyML library for Arduino appeared first on Arduino Blog.

Homemade Pirani vacuum gauge controller with Arduino

via Arduino Blog

In theory, a Pirani gauge is a very simple device for measuring the pressure of a gas within a container, as it consists of a heated metal wire that loses heat as the pressure increases internally. With this value now known, the electrical resistance can be measured and used to determine the precise pressure of a given gas. And although the sensors themselves are relatively inexpensive, the controllers they are often connected to can have a very high price, which is why YouTuber Advanced Tinkering decided to create his own digital readout

The display uses an Arduino Mega to take in data from the sensor, convert it to a pressure level, and send it to a pair of LCDs. First, the Pirani gauge’s analog value is read with an ADS1115 ADC, which has 16 bits of resolution, and from there the value is converted to pressure using the calibration constant for air and a unit coefficient. The Mega then writes this information to the unit’s 16×2 character LCD module and plots points along a graph shown on a 3.5” TFT screen. Additionally, pressure data is sent via USB to a host machine where it can be read by an external program such as the Arduino Serial Plotter tool.

This DIY controller is a great showcase of how one can build their own scientific equipment for far cheaper than is otherwise available. To see more about this project, watch Advanced Tinkering’s video below!

The post Homemade Pirani vacuum gauge controller with Arduino appeared first on Arduino Blog.