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.
RPicSim is an open source software library written in Ruby that provides an interface to the MPLAB X PIC simulator and allows you to write simulator-based automated tests of PIC firmware. While RPicSim has been available since early this year, we just released version 1.0.0 and are excited to share why we made it and to encourage people to start using it. Continued…
Just about every integrated switching regulator datasheet I come across advertises how easy it is to use the chip, which is probably a good sign that it’s not necessarily that easy. I have designed several of our regulator boards, and for the most part, following the manufacturer recommendations and warnings about short traces and small loops led to working designs without much drama. But, as we push for higher performance, it can get tricky, and I thought I would share some fun pictures of what goes into troubleshooting a design that ought to work but did not.
This instance is about the D24V25F5 step-down regulator we just released today. It should have been straightforward because the basic circuit is very similar to that of the higher-power D24V60F5 and D24V90F5 regulators we released earlier this year. Because this board was supposed to be really small, I designed it with components tightly packed on both sides, which meant I had to make compromises on some of those trace lengths and loop sizes. It wasn’t even clear that the circuit would be routable with just two PCB layers, so when I did find a solution, the design team wanted to try it even though we knew we were pushing our luck.
|Pololu 2.5A Step-Down Voltage Regulator D24V25Fx, side view.|
Well, if we had been lucky, you might have been reading a less interesting version of this new product announcement three weeks ago. As is typical for these borderline cases, it was the especially hope-dashing kind of failure where a casual test indicated that the board was working, but more in-depth tests revealed stability and performance issues. To make sure the components were not the source of the problem, we put the exact same components onto the PCB of the larger version that already worked. The pictures below show the D24V60F5 regulator (left) populated with its standard components and the D24V60F5 regulator’s PCB populated with the components for the new D24V25F5 (right).
The new components on the old board worked, so after some final checks that the new prototypes were assembled correctly, we knew it was a layout issue. We wanted assurance that the design could work before just diving into a four-layer revision, so I took some prototypes and added redundant connections to see their impact. The pictures below show some of my test boards with varying numbers of additional ground connections.
I was able to see that the more additional ground connections there were, the more the issues went away. So, I routed the four-layer board, and after a week of tests on over a dozen prototypes, I am happy to announce the release of our most sophisticated regulator yet! The D24V25F5 buck regulator generates 5 V from input voltages of up to 38 V with typical efficiencies of 85% to 95%. The board measures only 0.7″ × 0.7″, but it allows a typical continuous output current of up to 2.5 A.
We are quite happy with how manufacturing of these units is going, so we expect to be moving toward more dense designs like this in future products.
|3D rendering of the Pololu carrier with Sharp GP2Y0A60SZLF distance sensor.|
We have released some simple boards over the past few weeks that were developed by our mechanical engineers (see earlier posts for Jon’s board and Brandon’s board). The board I got to design is a carrier board for the Sharp GP2Y0A60SZ 10-150cm analog distance sensor, which is a part we have been trying to get for almost five years.
While the board itself is simple, the GP2Y0A60SZ is exciting for us because it pretty much outperforms all of the other analog Sharp distance sensors. In particular, compared to the more expensive Sharp GP2Y0A02YK0F, which can also detect objects out to a maximum distance of 150 cm, the GP2Y0A60SZ offers half the minimum sensing distance (10 cm) and more than twice the update rate (60 Hz) in a much smaller package:
|Sharp GP2Y0A02YK0F Sensor 20-150cm (left) next to Pololu Carrier with Sharp GP2Y0A60SZLF Sensor 10-150cm (right).|
One application of these sensors that I am looking forward to is mini-sumo. The features on the sensor make them a great addition to a mini-sumo robot like the one I built for the LVBots mini-sumo competition last year. With these on my robot (the one with the Magikarp on it), I might be able to knock out a few more competitors the next time we have a competition.
5V and 3V versions available
Pololu forum member spiked3 recently shared a sophisticated robot he made called RoboNUC. It uses a Netduino and a LIDAR module and was intended to help him learn simultaneous localization and mapping (SLAM). SLAM is a technique used to map an unknown environment and keep track of the device’s location within the environment. Using SLAM, the robot is able to characterize the surrounding areas without needing to physically navigate them. RoboNUC uses our 1″ plastic ball caster, and the acrylic chassis was laser cut using our custom laser cutting service.
Sharp’s optical rangefinders and distance sensors have long been a favorite among robot builders for quick, easy, and affordable obstacle detection. We are excited to add to our selection the new digital GP2Y0D815Z0F sensor, which can detect objects ranging from 15 cm (6″) to almost touching the sensor face. The GP2Y0D805 and GP2Y0D810 digital sensors we have had for years are great because of their small size, high sampling rate, and small minimum sensing distances, but their short detection ranges have limited their applications. We have always wanted a version that could see farther, and now we have one! We have the sensor available by itself and on a carrier that makes connecting and mounting it a lot more convenient.
Heikki Leivo and Matti Koljonen are currently working together to develop a miniature autonomous electric boat, which they are calling Leviathan. The boat is made of polystyrene foam, uses brushed DC motors and servos for movement, and is controlled by a Raspberry Pi, which reads data from GPS and a MinIMU-9 inertial measurement unit for navigation. Leviathan is equipped with a camera and also features a D24V6ALV step-down regulator for powering servos and other electronics. The boat is also controllable over WiFi.
|The electronics inside Leviathan.|
Matti and Heikki plan for their vehicle to be able to run pre-defined routes, capture photos, and record video, among other things. You can learn more about Leviathan on its website.
Last week, Jon mentioned how several of the mechanical engineers here at Pololu were assigned a simple board to develop. Well, our new Breakout Board for microSD Card is the first board that I designed!
Electrically, this board is pretty basic. It breaks out all of the connections available on a microSD card into two rows of 0.1″-spaced pins for easy prototyping use with standard perfboards, solderless breadboards, and 0.1″ connectors. We tried to arrange the pins in a convenient order by placing all of the pins needed for SPI mode on one side of the board (along with the card detect pin). What makes this board interesting mechanically is that it is the first of our products to use a connector for a microSD card. The push-push type connector is positioned so that when a microSD card is fully inserted, it protrudes slightly beyond the edge of the board to allow easy access to the card. The integration of our electrical and mechanical procedures allows us to make 3D models such as the one below to help support our products. We currently use models like this in the dimension diagrams we publish for our boards, but we hope to eventually make the models themselves available too.
|Breakout Board for microSD Card rendered in Solidworks.|
Integration with 5 V systems
There are no other components on the board aside from the microSD card connector. Since standard microSD cards use 3.3 V logic, no extra considerations need to be taken to use it with a 3.3 V microcontroller, but signal conditioning is required for use with 5 V microcontrollers. We did some tests using our 4-channel level shifter and an Arduino Uno to read and write from a microSD card using the Arduino SD library, and we had successful results; however upon closer inspection, we noticed the level shifter did not have time to shift the 3.3 V signals all the way up to 5 V, so this setup only worked because the Arduino Uno registered 3.3 V as a high signal. With a 5 V microcontroller that accepts a 3.3 V signal as high, the microSD card outputs can be connected directly to the microcontroller, and the microcontroller’s 5 V outputs can be shifted to 3.3 V using a simple voltage divider. We found the resistor values needed to be fairly low – we settled on 500 Ω and 1 kΩ resistors. Since we used the standard Arduino SD library, our tests were done at SPI speeds of 4 MHz. In systems operating at higher speeds or with more stringent logic voltage requirements, it might be necessary to use a buffer IC or other high-speed level-shifting solutions.
For more information about this breakout board, see its product page.
Last weekend, Pololu engineers Brian, Jeremy, Kevin, and Ryan participated in the AT&T Car and Home Hackathon. They competed against around 300 people who came to The Cosmopolitan hotel in Las Vegas to participate in the event. The sponsors provided hardware, development boards, supplies, and APIs for the teams to work with, and they had 26 hours from Saturday to Sunday to make a home automation or “connected car” project.
Team Car Bon, which also included local programmer Dylan Simpson of the Las Vegas Ruby Group, hacked together a carbon monoxide sensor that would be installed in a car or garage and connected to the internet. The idea was for their system to monitor carbon monoxide levels, and if the levels became dangerous, to shut off the car engine, open the garage door, and alert your phone.
Our engineers also took first place (in one of many categories) at another AT&T hackathon earlier this year, which sets a high bar for future Pololu participants. Come out here to compete in the next AT&T hackathon and help put the pressure on our next team!
If you’ve checked out my company profile, you might have noticed that my focus at Pololu is on developing mechanical parts. So, I am particularly excited to reveal this basic board I designed! (Don’t worry, like Jan mentioned in this blog post, we have support structures for checking all of the work we do, so other experienced electrical engineers here assessed and contributed to my work.)
The DRV8838 motor driver carrier is the smallest motor driver we’ve made yet. With a motor supply range from 0 V to 11 V and the ability to deliver a continuous 1.7 A (1.8 A peak) to a single brushed DC motor, the DRV8838 is an exciting option for controlling any one of our plastic or micro metal gearmotors. (That includes the high power versions.)
For more information about this carrier, see its product page.
But Jon, why are mechanical engineers designing PCBs?
As our products get more sophisticated, we find ourselves wanting to integrate mechanical and electrical aspects of our design process. To give the mechanical engineers better perspective on what goes into designing electronics, we were each assigned a simple board to develop. We expect this to improve our all-around engineering abilities and also to lead to additional benefits for our customers, like better documentation and support.
I received a phone call yesterday from a writer for a local community-oriented, general-interest publication. Pololu is one of a dozen or so companies she was covering in an article about technology-related companies in southern Nevada, and she asked some basic questions about Pololu and how we might be relevant to Las Vegas-area locals. She then asked if there was anything else I would like to add or have mentioned about us. I answered that since I wasn’t really clear on what this article was going to be or what the intended audience was, I did not know what would be appropriate or interesting. I suggested that she could send me a draft of her article so that I might have a better context for giving her additional info. Continued…