How to add the Servo Pad robot skill
- Load the most recent release of ARC (Get ARC).
- Press the Project tab from the top menu bar in ARC.
- Press Add Robot Skill from the button ribbon bar in ARC.
- Choose the Servo category tab.
- Press the Servo Pad icon to add the robot skill to your project.
Don't have a robot yet?
Follow the Getting Started Guide to build a robot and use the Servo Pad robot skill.
How to use the Servo Pad robot skill
This skill allows you to drag your mouse or finger (on a touchscreen) to move x-axis and y-axis servos. It's like a virtual joystick. This is a great skill to use when you have servos in a pan/tilt configuration.Main Window
1. Servo Pad
Hold your mouse or finger (if you have a touchscreen) on this pad to control servos in a pan/tilt configuration. Swipping left and right will move the x-axis servo. Swipping up and down will move the y-axis servo.
Settings
1. Title Field
This field contains the title of the skill. You can change it if you'd like. *Note: Changing the title will also change the title in the controlCommand() associated with this skill.
2. X-axis Servo Settings
This section allows you to set up x-axis servo movement parameters such as servo port, board index, servo configuration, max/min degree limitations, multiple servo control, and inverted direction.
3. Y-axis Servo Settings
This section allows you to set up y-axis servo movement parameters such as servo port, board index, servo configuration, max/min degree limitations, multiple servo control, and inverted direction.
4. Background Image Settings
This section allows you to change the background to an image, edit the background with a paint brush, use an existing library image, export the background as a .jpg, or delete the background.
5. Foreground Image Settings
This section allows you to change the foreground to an image, edit the foreground with a paint brush, use an existing library image, export the foreground as a .jpg, or delete the foreground.
How to use Servo Pad
1) Add the Servo Pad skill to your ARC project (Project -> Add Skill -> Servo -> Servo Pad).
2) In the Servo Pad skill settings select the ports of the servos that you would like to control with the pad.
3) Click and hold your cursor or finger on the servo pad and watch as the x-axis and y-axis servos move around.
Today I was messing around with the global servo position scale found in project properties. I set it for the highest this Feetech servo can go 4096 positions. Then I connected the servo to the servo pad. I found an interesting correlation between resolution scaling and control by resizing the servo pad window. Very interesting stuff.
Weird. Odd. What the heck.
It's not weird
The servo pad resolution is dependent on the size of the servo pad. Remember, you have a resolution on your screen of the servo pad area. That resolution is relative to the resolution of the servos. If the servo resolution is 4096, but the width of the servo pad is only 200 pixels, that's 20 servo positions per pixel. It's relational geometry measurement (i.e. spatial relations)
Something small can't have more resolution than something big. If something has 200 points of resolution, the most it can relate to something having 4096 points of resolution is a difference of 20:1. That's because the servo position size is 20 times larger than the servo pad size.
The only way to have a higher resolution on the screen is to have more pixels than servo positions. With that, you end up reversing the ratio. Say for example you had 200 servo positions and 4096 servo pad resolution. Then, you'd end up with 1:20 ratio.
Perhaps using analog joysticks (i.e. game controller) would suit your needs for higher resolution? Or, if the servo doesn't require all 4096, then set a min and max limit to reduce the number of positions.
Can someone point out why one would need a foreground and background image?
Esthetics. You don’t need one for it to operate.
@thomas, Also function, I use them visually to illustrate what the pads are moving and which way (X or Y or a mix of both). This becomes useful when you use the finger pads to record motions like when using servo recorder. I will grab a pic load into photoshop and mark up the image. It becomes a visual reminder when you have alot of servos you are moving on many servo pads.