Braking with Spark Controllers

We are using a Spark Controller to drive our climbing winch. We drive full drive power to climb, the reduced power to hold, the 0 power to let is slowly backdrive to the ground. Works great.

Then we hit the Emergency Stop (Space Bar) or the Stop (Enter Key) and it fell like a rock (exaggeration).

I assumed that it was slowly backdriving because of the Braking mode being selected.

When the field management system disables things at the end of a match will our robot backdrive slowly or fall like a rock?

The latter. Hence why most teams opted for some form of a ratchet system.

You can also use a Victor or Talon and when you disable it will act in braking mode. We tested this and saw similar behavior so we made the switch to a victor.

The mechanical resistance in “braking mode” is a function of speed. A stationary motor has essentially no additional braking. If you had a really long climb, braking mode would greatly reduce your terminal velocity. We went with a ratchet.

thanx for the responses. We will try switching to older Talon today. If all fails then we will add the ratchet.

At the Corvallis Scrimmage sponsored by 997, we saw several ratchet climbers struggling to remove their robot. While ours gently lowered to ground. Just seemed safer.

We will post our conclusion later today.

Talon SR worked. In brake mode it slowly backdrives to the ground when disabled. If our robot lost power it would coast quickly and potentially do damage. But that will never happen.

:smiley: :ahh: :yikes:

This is by design. For saftey reasons we chose to make it so that when the SPARK is not receiving signals it goes into a completely passive mode. So essentially when disabled we are always in coast mode. We know this is different than some of the other motor controllers on the market, but we felt that it was actually safer in most conditions to go to this condition rather than hold the shunt.

As other mentioned in the thread, some of the other motor controllers will act differently, but I would recommend a mechanical stop (such as a ratcheting wrench) rather than relying on the shunt break on a motor controller.

Our SPARKs are not user firmware update-able but I will make a note to re-visit this decision before our next manufacturing batch as we can change the performance with a few lines of code.

Will there be some sort of way of telling the firmware revisions apart? I imagine the difference won’t be that important for most things, but it would be nice to know if you had more than one motor doing something and you wanted to use the same revision for both motors.

If we decided to make this change we would be sure to make the indication clear.

Just my two cents:

I think that many inexperienced teams are likely to expect them to maintain coast/break whether disabled or not.

Not braking when disabled is a very nice feature for drivetrains most years.

Try using a .5" ratcheting wrench that is pinned. That way you can remove the entire wrench and let it lower. Alternatively you could use one of the ones that has a switch to change the direction.

Also glad you could make it to the scrimmage!

Having a variant of Spark that behaved like this in break mode would be amazing! 10/10 would use for end game!

This might not work if there is torque being applied to the wrench. The torque prevents the switch from being moved on the ones we have.

What if you lift the robot a little to relieve some of the tension?

Attach the handle of the ratchet wrench with a zip tie. Cut the zip tie to release it (while someone(s) is holding the robot up so the handle doesn’t smack you). Keep fingers clear.

Also make sure it doesn’t smack the radio, or other nearby electronics :ahh: .

There is another thread discussing climbing and this particular issue is raised. If your robot is pulling up against the touchpad and the rope is under tension, you will not be able to lift the robot any further to relieve the tension on the rope.

But you can still cut the zip tie on the ratchet handle. Be careful!

I believe that is one of the solutions given in the other thread.