Pololu Blog (Page 2)

Welcome to the Pololu Blog, where we provide updates about what we and our customers are doing and thinking about. This blog used to be Pololu president Jan Malášek’s Engage Your Brain blog; you can view just those posts here.

At Pololu, I have spent the recent weeks developing new products, like the motor driver I announced on Wednesday, but at school (I am a mechanical engineering student at the University of Nevada, Las Vegas, UNLV) I have been managing an American Society of Mechanical Engineers (ASME) Student Design Competition (SDC) team. SDC teams create robotic devices to fulfill a problem statement that changes every year. They compete with their devices at one of ASME’s regional student conferences called E-Fests. Last year, I managed a three-member team that built The Rebel WIP and earned third place in the Robot Pentathalon at the E-Fest West. This year, my ten-member team made a squad of robots called The Rebel Bandits for the new SDC challenge, Robot Football. We overcame many technical challenges and 14 other teams to win first place at this year’s E-Fest West that competed this past Saturday!

The SDC’s Robot Football was loosely based on soccer, but with four robot teams competing to shoot eight tennis balls into four goals on a 5 m x 5 m field. Each team was assigned a goal to defend, and eight tennis balls were set in a square pattern at the center of the field for robots to score into the other goals. For this competition, teams could build multiple remote controlled robots, but the robots and controllers had to be able to fit inside a single 50 cm cube. Some teams built soccer squads with only two or three big robots, while other teams used up to six little robots for their squad (which made the matches super chaotic), but each team could only control one ball at a time. Robots controlling a ball needed to keep the ball on the ground when they moved around, but they could stop and lift the ball to shoot on a goal.

The Rebel Bandits.

The Outlaw.

I am really proud of the robots my team designed and built for this competition, so I want to share how my team made a first place robot squad! However, since we won the competition at E-Fest West, we were invited to compete again in the SDC Finals at ASME’s International Mechanical Engineering Congress and Exposition in Pittsburgh, Pennsylvania this November. We will be competing against the first and second place winners from the other student conferences: E-Fest East, E-Fest Asia Pacific, and E-Fest South America, as well as the SDC team from California State University, Northridge, who came in second place at E-Fest West. The teams will be more competitive, and the prize money increases significantly! So that makes me a little bit nervous about showing all the technical details for our robots right now, but I would still like to give a basic rundown.

Our strategy was to build three large robots: one defender, and two offensive robots. We call the defender robot The Outlaw. It is built on a U-shaped frame with 19 in (48.3 cm) long sides and has tall walls. Even though it cannot block from inside our penalty box and is not particularly fast, it can seriously impede the efforts of other teams to score on our goal just by being big and tall. The Outlaw uses three DC motors for its drive train at the base of the U-frame, and Pololu ball casters help support the far ends of the U-frame. One DC motor is driven by a G2 High-Power Motor Driver, and since we use an A-Star 32U4 SV for the Outlaw’s microcontroller, the other two DC motors are driven by a Dual G2 High-Power Motor Driver Shield for Arduino.

The Desperado and The Renegade.

The two offensive robots are named The Renegade and The Desperado (you should notice the Wild West theme by now). Other than the color schemes, these robots are almost complete duplicates. We decided to build only two offensive robots because it gave us sufficient space to build robust robots with high quality shooting mechanisms.

Each offensive robot uses four DC motors for the drive train. A standard size servo extends an arm with an intake belt, and a DC motor runs the intake belt to pull a ball into the robot’s reservoir. Another servo opens and closes a gate that keeps the ball in the reservoir or pushes the ball into the shooting mechanism. The reservoir allows the ball to roll on the ground as the robot moves without the intake belt constantly pushing down on the ball and impeding driving. The shooting device is a ramp and flywheel. When taking a shot on the goal, the operator stops the robot and the flywheel revs up to high speed. Then the gate servo pushes the ball into the ramp. The velocity of the wheel pulls the ball along the ramp structure and throws the ball at high velocity. Just beyond the outlet for the ball, a plate on a pivot controlled by a servo lets us control the ball’s trajectory. This allows us to shoot across long distances or over defender robots.

The offensive robots each use an Arduino Mega as their primary microcontroller. Most of the DC motors on The Renegade and The Desperado are controlled by either a Dual G2 High-Power Motor Driver Shield connected to the Arduino Mega or are driven by individual G2 High-Power Motor Drivers. On each robot, a Maestro servo controller is used as a slave controller that powers and controls the standard servos. Additionally we use the Maestros’ functionality as general I/O controllers to send logic signals to the individual 18v17 Motor Drivers. In our setups, we want the servos and the Maestros to be powered from 6 V, so we use a step-down voltage regulator to connect the Maestro power rails to main power supply on each robot, a 12 V lead-acid battery.

I am very fortunate to have worked with an awesome team this year for the SDC, and I am grateful for the parts and support we obtained from both Pololu and UNLV! It was also exciting to see different teams at the competition using other Pololu parts like our wheels, metal gearmotors, regulators, and brushed DC motor drivers. After our SDC Finals competition in November, I plan to write another blog post about more of the technical details of our robot. (Hopefully I will be able to brag a little about another first place trophy too!)

Patrick and 6 members of UNLV’s SDC team that traveled to competition in Pomona, California.

Until then, I want to know more about some of your projects! I hope you will share a little about your cool projects in the blog comments, or you can make a Pololu forum account and post in the Share Your Projects category!

For my birthday, I am excited to share two new products to help get your projects moving: dual motor driver boards for Arduino and for Raspberry Pi based on Maxim MAX14870 drivers, which on these boards (without additional cooling) can power motors with a continuous 1.7 A (2.5 A peak) from a voltage source anywhere from 4.5 V to 36 V. This makes the driver ideal for powering a wide range of motors including our high power micro metal gearmotors, and our 12 V 20D mm metal gearmotors. We like the MAX14870 so much that already we make a single driver carrier for it, and we use it on our A-Star 32U4 Robot Controller SV. These new boards make it easy to control two motors using the MAX14870 with an Arduino or Raspberry Pi.

The Dual MAX14870 Motor Driver Shield for Arduino is designed to plug directly into an Arduino or another microcontroller board with the Arduino form factor. It connects the Arduino I/O pins to the two-pin speed/direction interfaces as well as the fault output pins, and our open-source library is available to help you get started. The shield can be set up to power your Arduino device from your motor power supply, which is especially helpful if you are using an Arduino or compatible device with an operating voltage similar to that of the MAX14870, such as our A-Star 32U4 Prime SV. Additionally, the board can be customized to use the advanced features of the MAX14870 drivers or change the pin mappings.

The Dual MAX14870 Motor Driver for Raspberry Pi has many of the same features as the Arduino version, but it is designed to plug into the GPIO header on a compatible Raspberry Pi (Model B+ or newer), including the Pi 3 Model B and Model A+. We provide an open-source Python library to make it easy to interface with the board. This board also has a location to connect a step-down 5 V regulator to power the Raspberry Pi from your motor’s power supply.

I am really excited about these boards because the Raspberry Pi expansion board is the first PCB I ever designed, and the Arduino shield was designed by my friend David S. Both of us are engineering students at the University of Nevada, Las Vegas who work at Pololu to complement our studies. It has been a great experience for us to learn how to design these products from the development engineers here at Pololu. Plus, getting to share these products for the first time with you is a fun way to celebrate my birthday!

As usual for our new product releases this year, we’re offering an extra introductory discount: the first 100 customers to use coupon code MAX14870INTRO can get any mix of up to 3 of these boards for $7.77 each. (Click to add the coupon code to your cart .) Note that this introductory offer applies only to the units without connectors soldered in.

The Beattys are currently in the process of documenting their rover. Right now there’s a blog post out focused on the robot’s exterior, but the duo plans to also post about the electronics and functionality soon. We are looking forward to seeing more pictures and learning about how each part contributes to the whole system!

If you are curious to know more about the electronics inside of this replica rover, you can keep an eye on the Beatty website, or you can stay tuned to our blog – we will update you when they share more.

Our new programmer, the Pololu USB AVR Programmer v2.1, was supposed to be a minor update to our existing programmer, coming right after the A-Star 328PB Micro that we released last month, with the main point of excitement being the Las Vegas-inspired $7.77 price. But as we were testing the combination of the programmer with the A-Star, we were getting brown-out resets on the programmer when it powered the A-Star. The relevant part of the circuit was just a P-channel MOSFET that connected the programmer’s own logic voltage (which we call VDD) to the VCC pin of the ISP connector:

MOSFET-based target VCC power control used on Pololu USB AVR Programmer v2.

The problem was caused by the MOSFET turning on too well (quickly and with low resistance), causing the logic voltage on the programmer to drop if the VCC of the target device had more than a few µF of discharged capacitance on it. The bigger the capacitance on VCC, the bigger the voltage drop on VDD, until eventually the drop was big enough to trigger the brown-out reset protection on the programmer’s microcontroller. We tried various firmware tricks with our existing hardware, such as turning on the MOSFET for very short pulses to gradually charge up the target device’s VCC capacitance, but none of them worked reliably enough. So in the end, we decided to redo our PCB and put in a dedicated high-side power switch with a controlled slew rate. The new programmer can now power target boards with up to about 33 µF on their logic supplies.

These are the two other improvements we made to the new v2.1 programmer over the older v2 programmer:

Plugging a v2 programmer into a 3pi robot could cause one of the motors to briefly run at full speed because the programmer’s circuitry for measuring VCC could inadvertently pull up one of the 3pi’s programming pins (which doubles as a motor driver input) before the GND connection was established. The v2.1 programmer has improved circuitry for measuring VCC which limits the duty cycle of this effect to about 0.2%, so the motor won’t move (but it might make a 25 Hz clicking sound).

The v2 programmer would typically brown-out if a 5 V signal was applied to its RST pin while it was operating at 3.3 V. The v2.1 programmer does not have this problem.

The v2.1 programmer is otherwise identical to the v2 programmer, which means it’s a USB AVR microcontroller programmer that can program targets at 3.3 V and 5 V and offers an extra UART-type TTL serial port (like the popular FTDI USB-to-serial adapters) that can be super handy for debugging, bootloading, or even general connection of your project to a USB port.

Pololu USB AVR Programmer v2.1, labeled top view.

The v2 programmer was already a good deal at under $12, but at $7.77, and with free shipping in the USA, we hope to make AVR development extremely accessible. The manufacturing improvements and other cost reduction initiatives I have been blogging about this year help us make this offer without losing money on it, but I am not expecting to be making money directly off of the programmers, either. My goal is to give you the best value in a basic tool you will use over and over as you build your own projects, with the hope that that will help you keep Pololu in mind the next time you need some electronics or robotics parts.

And, as usual for our new product releases this year, we’re offering an extra introductory discount: the first 100 customers to use coupon code AVRPROGINTRO get that already great $7.77 price dropped to $5.55 (limit 2 per customer). (Click to add the coupon code to your cart.)

As I showed in my last post a few weeks ago, our Tic stepper motor controllers offer six different control interfaces so you can add stepper motors to a variety of projects. Getting started with the Tics is easy. This new video tutorial steps (see what I did there?) you through getting your stepper motor running with our Tic controllers:

As I was making this video, I realized one of the coolest things about the Tic is how quickly you can work out the capabilities of your stepper motor. Even if you’re comfortable using one of our stepper motor drivers along with a microcontroller, using the Tics makes adjusting settings like current limits, step rates, speed, and acceleration as quick as a click of the button, and you can control your motor directly from the software to make sure it’s behaving how you would like. So you might want to keep an extra Tic around for that purpose, just as a stepper motor tester.

Right now you can still purchase our newest Tic at a special introductory price of just $15.53 using the coupon code T500INTRO! (Click to add the coupon code to your cart.) We also cover shipping in the US! Note that this introductory offer applies only to the units without connectors soldered in.

We are now carrying Ion Motion Control’s line of single-channel RoboClaws, the Solo 30A and Solo 60A. These versatile, high-power motor controllers have nearly all the same features and performance capabilities as their dual-channel 2×30A and 2×60A counterparts, just with one fewer motor channel. Just like the rest of the RoboClaw family, the Solos support a variety of interfaces, including USB serial, TTL serial, RC hobby servo pulses, and analog voltages, and integrated quadrature decoders enable closed-loop position or velocity control.

Unlike our selection of dual-channel RoboClaws, the Solos also feature a rugged, all-metal case that protects the driver while simultaneously serving as a heat sink, and they have four 12 AWG unterminated leads for supplying power and connecting a motor.

The following table shows our full updated offering of RoboClaw motor controllers:

Erik Pettersson’s interactive sculpture, Roball, is a gripping take on the classic rolling marble kinetic sculpture. Roball uses a robotic arm to pick up a small ball and randomly place it on one of five tracks, where it twists and turns as it rolls down the track, eventually coming to rest at a holding station. The input to the system is a single pushbutton, and when the user presses the button, the arm picks the ball up wherever it stopped. Then, the device randomly selects another path, moves the marble to the start of that track, and releases it. A 12-channel Maestro controls the whole system and analog sensors (which might be our QTR-1A) at each holding station at the end of each track help not only detect the ball, but help the Maestro randomize its next move. Because of the ball’s non-uniform surface, the analog sensor will read different values depending on how the ball is positioned. That reading is then used in a calculation to determine what track to roll the ball on next.

Our Tic stepper motor controllers are pretty awesome, and the new Tic T500 we released today should make stepper motors even more accessible for your next project. This latest version features a broad 4.5 V to 35 V operating range that covers everything from small 2-cell lithium battery packs up to 24 V batteries or power supplies while costing just $20 in single-piece quantities. This video gives you a quick overview of what the Tic stepper motor controllers offer:

The Tics make basic speed or position control of a stepper motor easy, with support for six high-level control interfaces:

USB for direct connection to a computer

TTL serial operating at 5 V for use with a microcontroller

I²C for use with a microcontroller

RC hobby servo pulses for use in an RC system

Analog voltage for use with a potentiometer or analog joystick

Quadrature encoder input for use with a rotary encoder dial, allowing full rotation without limits (not for position feedback)

Basically, the new T500 does not offer the finer microstep resolutions of the T834 and T825, and the T834 supports very low operating voltages while the T825 supports higher operating voltages.

For those of you interested in more of the details of the stepper motor driver, the Tic T500 uses the new MP6500 from MPS, which we also offer on some low-cost MP6500 breakout boards with analog (small trimmer potentiometer) and digital (via PWM) current limit setting options.

In keeping with the tradition we started this year, we are offering an extra discount for the first customers, to help share in our celebration of releasing a new product. The first hundred customers to use coupon code T500INTRO can get up to two units for just $15.53! (Click to add the coupon code to your cart.) And we’ll even cover the shipping in the US! Note that this introductory offer applies only to the units without connectors soldered in.

Pi Day is nearly upon us, and to celebrate, we are discounting a variety of exciting products that can be loosely associated with “Pi”. The sale starts tonight at 8:36 PM PDT and runs through the end of the 15th. And in case you are wondering about the strange start time, that makes the sale 3.14159 days long in yet another tribute to this wonderful irrational number (if it bothers you that 3.14159 is not irrational, you can pretend that the sale lasts exactly π days).

Check out the sale page for more information (and check out piday.org for more information on Pi Day)!

MIRR, which stands for Mobile Interactive Responsive Reflector, is an interactive installation that responds to people’s movement by independently rotating elements in its array of 98 mirrored panels. A FEETECH Mini Servo FT1117M actuates each panel and a total of five Mini Maestros control the servos. People can also use a custom box of arcade buttons to independently move each panel. You can read more about how MIRR works in this post on our forum.