Tag Archives: robot

Ask Hackaday: Dude, Where’s My MOSFET?

via hardware – Hackaday

Transistors versus MOSFETs: both have their obvious niches. FETs are great for relatively high power applications because they have such a low on-resistance, but transistors are often easier to drive from low voltage microcontrollers because all they require is a current. It’s uncanny, though, how often we find ourselves in the middle between these extremes. What we’d really love is a part that has the virtues of both.

The ask in today’s Ask Hackaday is for your favorite part that fills a particular gap: a MOSFET device that’s able to move a handful of amps of low-voltage current without losing too much to heat, that is still drivable from a 3.3 V microcontroller, with bonus points for PWM ability at a frequency above human hearing. Imagine driving a moderately robust small DC robot motor forwards with a microcontroller, all running on a LiPo — a simple application that doesn’t need a full motor driver IC, but requires a high-efficiency, moderate current, and low-voltage-logic compatible transistor. If you’ve been here and done that, what did you use?

Bipolars

Years ago, the obvious answer to this dilemma would be TIP120 or similar bipolar junction transistor (BJT) — and a lot more batteries. The beauty of old-school Darlington transistors in low-voltage circuits is that the microcontroller only needs to produce a small current to push relatively large currents on the business end. With BJTs, as long as you can get over the base-emitter junction voltage (typically under one or two volts) you just pick the right base resistor and you’re set. This is in contrast to FETs of the day which require a given voltage to pass a current through them. Gate voltages for the big FETs are optimized for the 4-5 V range which is lousy if you all you have is a LiPo battery.

TIP122/127 H-Bridge: Easy to Build, but a Battery Hog
TIP122/127 H-Bridge: Easy to Build, Battery Hog

While the power Darlington is easy to drive, it has a few drawbacks. First is the voltage drop through the device when it’s conducting. Drop one or two volts on the transistor and you’ve pretty quickly got a few watts of power going to waste and a hot chip. And that’s assuming that you’ve got the voltage drop to spare — a volt or two off of the 3.6 V on a LiPo battery pack is a serious loss.

With apologies to [Adam Fabio], the BJT is off the list here. It’s easy to drive at low voltages, so it would work, but it won’t work well because of stupid quantum mechanics.

FETs

MOSFETs should be great for driving small motors, on paper. They have incredibly low on-resistances, easily in the milliohms, and they can turn on and off fast enough that the PWM will be efficient and noiseless. The flaw is that garden-variety power MOSFETS, for driving big loads, tend to have similarly large gate threshold voltages, which is a showstopper for low-voltage circuits. What can we do?

If the motor were being driven by a higher-voltage source, and you were switching the MOSFET on the low side, then you can use the motor’s power supply to drive the MOSFET, switching it on and off with whatever is handy — a small-signal BJT is just about perfect here. That’s the classic solution, illustrated here. As long as the motor voltage is high enough to fully open the MOSFET, you can just use that for the switching voltage.

In the actual application that spurred this column, I wanted to use a LiPo cell for the motor and the logic, but I ended up doing something ridiculous. I started off with a go-to MOSFET from my 5 V logic days, the IRF530, but it barely turns on at 3.3 V. So I cobbled on a 9 V battery to provide the switching voltage — purely to drive the MOSFET into full conduction. This 9 V “high” voltage is switched by a 2N2222 small-signal BJT and seems to do the job just fine. It works, but it’s a horrible hack; I wanted to drive everything off the LiPo, and failed.

Other Options?

Big power MOSFETs, in addition to having a higher gate voltage, also have some capacitance that needs to be overcome to turn them on and off. Between the fully-on and fully-off states, they get hot, so it’s important to push enough current into the gate fast enough that they transition quickly. Thus, big power MOSFET circuits use a gate driver circuit to drive them. A low-voltage gate driver, paired with my IRF530, would certainly be an option here. But all this just for a medium-sized DC motor? Seems like overkill.

7307Once we embrace complexity, there are small H-bridge and push-pull driver ICs that might fit the bill, and they’ve naturally got MOSFETs inside. Now that I think about it, I’ve built small-motor H-bridges from N/P complementary pair MOSFET chips in the past, and they work for low voltages. Somewhere in my pile I have some IRF7307s that will just barely do the job. I’d be ignoring one of the two paired FETs, but who cares?

Taking the next step in IC complexity, the various stepper-motor driver ICs can usually push and pull an amp or two, and operate on low voltages. You could conceivably drive a DC motor off of one phase of a stepper controller, but that just seems wasteful. But something like (half of) a TB6612 would work.

On the other hand, the fact that these various gate-driver, H-bridge, and stepper controller ICs can handle the currents I want with low logic voltage thresholds suggests that there should be at least a few monolithic, and cheaper, MOSFETs that can switch a few amps around on low voltages. Where are they hiding?

The Ask

So what would you do when you need to push up to two amps DC in one direction at LiPo battery voltages, with low loss, driven (potentially by PWM) from a 3.3 V microcontroller? Feel free to take this as a guideline, and deviate wherever you’d like from the spec if it brings up an interesting solution.

Whatever you do, don’t give me current figures out of a datasheet headline that are based on microsecond pulses, only to find out that it’s outside of the part’s DC safe operating area. I’ve been down that road before! It never ceases to amaze me how they design parts that are rated for 100 A at 10 microseconds that can only handle 300 mA steady state.

This has to be a common hacker use case. Does anyone have the MOSFET I’m looking for? Or do you all just use motor driver ICs or tack random 9 V batteries into your projects? (Ugh!)

[MOSFET tattoo image from Google image search; Make Yr Mom Sad on Tumblr (dead link)]


Filed under: Ask Hackaday, Engineering, hardware

R2-D2 build

via Dangerous Prototypes

r2d2-4

Bithead942 blogged about his R2-D2 build:

To really bring R2-D2 to life, I knew I had to do some great sturff with electronics.  I started with a Taranis X9D controller and a pair of X8R receivers configured for a full 16-channels.  I chose this platform mainly for its versatility, but also because I wanted to have separate control of the head and body with one remote controller (so the head can spin a full 360 degrees without tangling the wires).

Project info at Bithead’s blog.

Check out the video after the break.

You’re a (chess) wizard, Bethanie

via Raspberry Pi

By recreating the iconic Wizard’s Chess set from Harry Potter and the Philosopher’s Stone (sorry America, it’s Philosopher, not Sorcerer), 18-year-old Jambassador Bethanie Fentiman has become my new hero.

wizard's chess

Ron, you don’t suppose this is going to be like… ‘real’ wizard’s chess, do you?

Playing on an idea she’d had last year, Bethanie decided to recreate the chess board from the book/movie as part of her A-Level coursework (putting everything I ever created at school to utter shame), utilising the knowledge and support of her fellow Jammers from the Kent Raspberry Jam community.

After searching through the internet for inspiration, she stumbled upon an Instructables guide for building an Arduino-powered chess robot, which gave her a basis on which to build her system of stepper motors, drawer runners, gears, magnets, and so on.

Wizard's Chess

Harry Potter and the ‘it’s almost complete’ Wizard’s Chess board

The next issue she faced in her quest for ultimate wizarding glory was to figure out how to actually play chess! Without any chess-playing knowhow, Bethanie either needed to learn quickly or…cheat a bit. So she looked up the legal moves of each piece, coding them into the programme, therefore allowing her to move on with the project without the need to monotonously learn the rules to the game. 

wizard's chess

Hermione would never approve.

There were a few snags along the way, mainly due to problems with measuring. But once assembled, everything was looking good.

Wizard's Chess

We’ve got our fingers crossed that Bethanie replaces the pieces in time with some battling replicas from the movie.

On a minimal budget, Bethanie procured her chess pieces from a local charity shop, managing to get the board itself laser-cut for free, thanks to her school’s technology department.

Now complete, the board has begun its own ‘Wizard Chess Tour’, visiting various Raspberry Jams across the country. Its first stop was in Harlow, and more recently, Bethanie has taken the board to the August Covent Garden Jam.

Wizard's Chess gif

MAGIC!

You can find out more about the Wizard’s Chess board via the Kent Jams Twitter account and website. And you’d like the board to visit your own Raspberry Jam event… send Bethanie word by owl and see what she says!

l5XXMbH

The post You’re a (chess) wizard, Bethanie appeared first on Raspberry Pi.

Jumping robot leg

via Dangerous Prototypes

Ben Katz documented his robotic leg project:

Here are the python scripts that send serial commands to the motor controllers.
Here are the eagle files, gerbers, and BOM for the motor controllers and sensor boards. When I sent the boards to 3PCB, the text the motor controllers got all scrambled so keep that in mind. At this point I’ve built up three of each board, and they all work. I haven’t even blown up a single FET yet, in all of my motor control derping so far.
Here are my CAD files for the motor, gearbox, motor module, and leg. Requires Solidworks 2015-2016 to open. Many of the gearbox files have HSMWorks CAM in them, so you’ll need the full version of HSMWorks to view the CAM. There’s also a list of the gears I got from KHK and the post-machining I did on them.

Full details at BuildIts in Progress blog.

 

the easiest educational robot for kids, Mbot, goes AtHeart

via Arduino Blog

mbloc

It’s cute, it’s fun and easy to assemble, it’s mBot by Makebloc, the new educational robot joining Arduino AtHeart program!

mBot it’s an all-in-one solution for kids and beginners to enjoy the hands-on experience about robotics, programming, and electronics.

You can program it with drag-and-drop graphical programming software based on Scratch 2.0 and the magic happens: the robots can follow lines, kick balls and push objects, avoid walls and more. You can also switch from graphical to text-based programming in Arduino mode as it can be coded with Arduino IDE environment.

Watch the video of their successful Kickstarter campaign:

mBot supports wireless communication, standard Arduino boards like Arduino Uno, Leonardo boards, Arduino Nano, Arduino Mega 2560, Makeblock mCore (based on Arduino Uno).

The main control board’s design, mCore of mBot, is based on Arduino UNO: with intuitional color labels and easy-to-use RJ25 connectors, the board can get wired easily so students can then get more time to focus on creating all kinds of interactive stories and projects.

To help teachers, parents, and kids get started easier and faster the robot kit has two free tutorial e-books and online manuals are provided and increasing continually.

Take a look at mBot on Makeblock website and discover how to use 2.4GHz wireless module and Bluetooth module with mBot:

the easiest educational robot for kids, Mbot, goes AtHeart

via Arduino Blog

mbloc

It’s cute, it’s fun and easy to assemble, it’s mBot by Makebloc, the new educational robot joining Arduino AtHeart program!

mBot it’s an all-in-one solution for kids and beginners to enjoy the hands-on experience about robotics, programming, and electronics.

You can program it with drag-and-drop graphical programming software based on Scratch 2.0 and the magic happens: the robots can follow lines, kick balls and push objects, avoid walls and more. You can also switch from graphical to text-based programming in Arduino mode as it can be coded with Arduino IDE environment.

Watch the video of their successful Kickstarter campaign:

mBot supports wireless communication, standard Arduino boards like Arduino Uno, Leonardo boards, Arduino Nano, Arduino Mega 2560, Makeblock mCore (based on Arduino Uno).

The main control board’s design, mCore of mBot, is based on Arduino UNO: with intuitional color labels and easy-to-use RJ25 connectors, the board can get wired easily so students can then get more time to focus on creating all kinds of interactive stories and projects.

To help teachers, parents, and kids get started easier and faster the robot kit has two free tutorial e-books and online manuals are provided and increasing continually.

Take a look at mBot on Makeblock website and discover how to use 2.4GHz wireless module and Bluetooth module with mBot: