Newbie Needing Script Writing Help for Mini Maestro 18

Howdy, I’m very much a newbie to the world of microprocessors. I’m a mechanical engineer who is highly adept in engineering, solid modeling, CAM programming, and CNC machining.

I’m in trouble with this current project that needs to be working in a couple of days. I purchased the Mini Maestro 18-channel servo controller. I’m just not efficiently learning this new language of stacks, scripts, and sequences. Are any of the experts here interested in writing my script? I don’t mind paying money for such assistance!

I have a servo-driven door latching mechanism and a servo-driven hydraulic door actuator mechanism. Both mechanisms have travel limit switches at both ends of their travel.
Here is what needs to happen:

  1. I push the “door open_14” button
  2. The “latching servo_1” begins rotating to unlatch the door. Rotation is continuous until the “limit switch_12” is contacted.
  3. The controller sees that the “limit switch_12” was contacted and turns on the “door-opening servo_2” in continuous rotation.
  4. The door opens until “limit switch_16” is contacted
    This is the end of the unlatching and opening sequence.

Now to close the door and latch it:

  1. I push the “door close_15” button
  2. The “door-opening servo_2” now reverses rotation and the door closes until “limit switch_17” is contacted.
  3. The controller sees that “limit switch_17” was contacted (verifying that the door is now closed), and now reverses rotation of “latching servo_1” and runs until “limit switch_13” is contacted.

TIA! (thanks in advance!)…Again, I don’t mind paying for expert assistance!



If you are interested in writing a script yourself, I would be glad to help you get it working how you want.

Since you are new to the Maestro scripting language, I recommend focusing on getting one part to work before adding the next. You should be able to accomplish the sequence you described with a combination of IF statements and WHILE statements if your servo-driven actuator mechanisms work similarly to continuous rotation servos (e.g. it uses standard RC servo pulses for speed control instead of position control).

The sample code in the “Example Scripts” section of the Maestro User’s Guide is a good resource for getting more familiar with how to use the commands and the syntax of the scripting language (which is based on the Forth programming language). Using the “Step script” button in the Script tab of the Maestro Control Center to walk through the script one line at a time is also very helpful, especially for debugging. If you decide to give it a try and run into problems, you can post what you have so far, and I would be happy to take a look.