No one expected Jack the Gripper
A few weeks ago, the guys who sit in the offices on either side of mine -- we'll call them Bruce and Bob (because these are their names) -- came bouncing into my office excitedly exclaiming "Max, Max, Max," at which point my internal "Duck! Incoming!" radar immediately ramped up to its "Blue Alert" state.
In my conversations with Bruce and Bob (B&B) over the years, I may have alluded to the fact that I am widely acknowledged as being an expert in everything to do with electronics and computing (well, that's what my mom tells everyone and she's always right [well, that's what she tells me]). It never struck me that B&B would ever want me to actually build something for them.
Once I had managed to sit B&B down and sedate them, they explained what it was they were hoping to achieve. As part of a recent project, it appears that B&B have been exposed to hunters and their practices. It turns out that hunters make use of things called Tree Stands or Ladder Stands or Ladder Tree Stands or... whatever. These are essentially metal seats mounted on top of a metal ladder. It may be possible to raise a smaller stand by yourself, but -- as shown in this video -- a medium-sized stand will require at least two people.
In the case of a larger stand -- and these things can be as much as 40-feet tall -- you will probably need four people or more. The fun really starts after the stand has been raised to a vertical orientation, at which time whoever draws the shortest straw has to climb up the thing and secure it to the tree. I can only imagine how exciting this must be, especially if everyone in the party has consumed a beer or three. In fact, B&B tell me that there are over 3,000 stand-related hunting accidents involving people falling out of trees each year in the USA (and these are only the ones we know about because they require hospitalization).
B&B's idea was to create a motorized mechanism called Jack the Gripper (they started with The Tree Hugger, but decided this wasn't manly enough, bless their little cotton socks) that could be used to hoist a ladder stand into a vertical orientation and secure it to the tree without anyone having to risk their lives. As part of this, there were to be two motors, one driving the gripper arms and the other driving the hoist (a future implementation may employ a single motor to perform both functions).
One key requirement was that everything had to be controlled using the one thing every hunter owns. No, not a gun (don’t be silly), we're talking about a smartphone. Well, this part was easy. I immediately suggested using a Simblee module, which is only 10mm x 7mm x 2.2mm in size, and which contains two main functional units: a 32-bit ARM Cortex-M0 processor (with 128 KB of Flash and 24 KB of RAM running at 16 MHz) and a Bluetooth Smart Radio.
In the case of our prototype, I opted to use one of these Simblee modules mounted on a 29-GPIO breakout board that can be plugged into a standard breadboard. By some strange quirk of fate, I happen to have a bunch of Simblee breakout boards here in the office because I use them to control all of my own hobby projects, from my Cunning Chronograph to my BADASS Display to my Caveman Diorama.
B&B also expected me to whip up the motor control board on the spot (I get the impression they think I carry all the components I need to make anything in my pockets), but I explained that there's a huge difference between drawing a theoretical schematic on the whiteboard and building a functioning unit that will work in the real world.
When it comes to making things work, the man of the moment is my chum Ivan, who sits in the bay across from ours. Ivan took over the design of the motor controller board. All I needed to know was the signals Ivan required me to provide to drive and monitor his system, after which he disappeared into his
cave lair burrow office and left me to work on the software.
A big part of this project was to keep the costs down as much as possible. Based on this, Ivan opted to use four discrete power MOSFETs (two p-type, two n-type) as opposed to an off-the-shelf H-Bridge.
Cost considerations also affected another design decision -- how to detect when the gripper arms were fully closed and/or the hoist was fully raised, and to then stop the motors. The purist in me wanted to monitor the current being drawn and to use this to detect when the motors were straining. We even talked about making the algorithm monitor the battery voltage and current over time, and to add learning and predictive capabilities, but all of this would require more effort on our part and -- more importantly -- additional components and costs.
In the end, we opted for geared motors with slip clutches. Once the gripper arms or hoist reach their limits, the relevant motor starts to slip and make a "ratcheting" sound, at which point the operator simply presses the stop button (remember the KISS principle -- "Keep it simple, stupid!").
The images below show the prototype motor control board (you can see the 29-GPIO Simblee breakout board sitting on the top) and the prototype gripper-hoist mechanism.
The prototype motor control board (Source: Bruce Till and Bob Cuffe)
The prototype gripper-hoist mechanism (Source: Bruce Till and Bob Cuffe)
One of the problems with this project was that there was never an official specification and everything was constantly evolving. (Give me strength. I'm too young for all this excitement. I really should know better by now.) Not surprisingly, this led to all sorts of issues. For example, we started off with two low-power 12V motors -- the same type you might expect to find in an electric drill. At that time, our three main battery options were NiCads, nickel-metal hydride (NiMH), or some form of lithium-based solution.
We started with NiCads because they were cheaper, and everything worked well until B&B decided to move from 12V motors to low-power 18V units. The result was that, when the battery charge had fallen to around the half-way point, and when the system was placed under maximum load, the internal resistance of the batteries was sufficiently high to cause the motors to stall. Since 18V NiMH batteries weren't so easy to find, we therefore decided to move to the more expensive lithium batteries.
Once again, everything worked fine until B&B changed course once again by opting to use a high-power flavor of 18V motor. Now, when the gripper or hoist motors reached their limits and the motor's slip clutches came into play, the battery current rose sufficiently high that the protective circuits in the lithium battery assemblies kicked in and shut everything down. Arrgggh! Ultimately, we returned to using NiCads, but moved from 1,500 mAh units to their beefier 3 Ah cousins.
I could go on and on... On the bright, all of the above was predominantly Ivan's problem. I was happily working on the control program in the evenings. The great thing about the Simblee is that it's easy to create a graphical user interface (GUI) that's presented on your Android or iOS smartphone.
The prototype Jack the Gripper GUI (Source: Bruce Till and Bob Cuffe)
Of course, there's a lot more going on in the code than this simple interface would suggest (including the fact that we are using the Simblee to monitor the battery voltage and current and display the results on the GUI). For example, if one of the motors is already running and the operator tries to reverse its direction or activate the other motor, then the program first deactivates the currently running motor and then waits for an appropriate time before executing the new command.
Now, take a look at this video to see Jack the Gripper in action, after which I'll tell you what went on behind the scenes.
As you can see, using Jack the Gripper, it's possible for a single person to hoist and secure the largest of ladder stands by himself (or herself). Of particular importance is the fact that the stand is fully secured before the hunter even sets foot on the ladder.
Of course, when you are designing something like this, you can't think of everything right from the get-go (that's why they call it a "prototype"). As a case in point, when I was creating the GUI, I had happily assumed that the operator would exit the application and turn the phone off before climbing the ladder and ensconcing himself in the stand. What actually happened was that the test subject left the application running and stuck the phone in his back pocket. The end result was that as soon as he sat down, he "butt-dialed" the application instructing the gripper arms to open.
I wasn't there myself, but I'm told that everyone had a jolly exciting time. This has, of course, resulted in a revision of the software that flashes an "Are You Sure?" box on the screen when the operator instructs Jack the Gripper to activate a motor. The command will be cancelled if the operator doesn’t click the "OK" option within a specified amount of time. Furthermore, the small "OK" button is located a long way from the motor activation buttons, while the large "Cancel" button covers them, the idea being that a butt-dial of a motor activation button will either timeout or be followed by a butt-dial of the "Cancel" button. Also, the application will deactivate itself after a short period of time and... you get the idea.
The latest incarnation (Source: Bruce Till and Bob Cuffe)
I'm informed that all of this is going to be tremendously exciting news to members of the hunting fraternity. For myself, I have a certain satisfaction in knowing that I've played a small part in ensuring that fewer of our brave lads and lasses will be plummeting to the ground out of the trees. Of course, this may slightly reduce entries to the Darwin Awards, but I have confidence in my fellows that they will find a way to bounce back (no pun intended).
How about you? Do you hunt yourself (you know what I mean), or do you have family members or friends who do so? If so, and if you are interested in learning more about Jack the Gripper, or if you have any suggestions to be made before Bruce and Bob take this project into production, please feel free to email them at email@example.com and firstname.lastname@example.org, respectively.