Servo control question with SSC-32

I’ve been fiddling with one of my SSC-32 controllers and a couple of HS-422 servos I got for W.A.L.T.E.R. to make a pan/tilt turret. I have dismantled the pan/tilt turrent and created some monster of a pan bracket so W.A.L.T.E.R. can hopefully detect and deal with low obstacles better.

My question has to do with the range I get from the servos when controlling them from the SSC-32. When I was controlling them from a Basic Atom, which has 0 as the center point, I could get +/-900 for +/- 90 degrees of motion.

With the SSC-32 and 1500 as the center point, I don’t seem to be getting the same range from the servo. I am getting a range of 850 (left) to 2200 (right) on the servo. I have not tried the other servo yet to see if the range on it is any different.

Shouldn’t I get about the same left and right movement using the SSC-32 like I did with the Basic Atom? The servo clearly does not move as far left as it does right using the SSC-32 and it was dead on half and half with the Atom.

Am I missing something important here? I am new to using the SSC-32, so could quite possibly be missing something. I’ll try the other servo and see if there is a difference there.

8-Dale

Don’t think of it as Atom vs SSC-32, deduce it to the actual pulse values in uS. I think you’re using the Atom Pro with the Hservo command. That particular implementation of code around the Hservo command was tweeked by Nathan to be in angles instead of uS. So I think it’s just a matter of sending a broader range of pulses to match what the Atom Pro was doing. It can go from 500uS to 2500uS. :wink:

I am just sending commands out a serial port from a Linux box to the SSC-32 from a Python script - same as it would be from a standard terminal window. Before, I was using the Basic Atom (not PRO) to control the servos directly using the servo command. That’s my current comparison and experience with servo control. :slight_smile:

I am getting a new microcontroller soon, but have not decided which way I want to go.

8-Dale

Hello Dale, I made an assumption on the Atom stuff. so lets look at the book… (getting book) Found book, looking up the servo command… Interesting, the programming manual does not list a definite value to pulse length equation. I’ll test it… getting Bot Board and Atom chip, finding O-scope, Oh crap… Building a new battery pack for Fluke 123 scope. :frowning:

OK! finally!

0 = 1500uS dead nuts on!
900 = 2400uS
-900 = 600uS
So it’s a simple 1uS resolution, but shifted to be 0 at center instead of 1500. So the SSC-32 equivelent would be 600uS and 2400uS, and the servos should act exactly the same. I was curious about this anyway… Hope this helps.

OK, got it. :smiley:

Yes, it does help a great deal for my understanding. It all even makes sense! :smiley: With this, I understand how to manipulate servos with the SSC-32. This info should make it much easier to write code using angles and the translation to SSC-32 commands much easier.

I believe I have adjusted my thinking to the SSC-32 (and I believe the more correct way) of doing things now. :smiley:

Thanks!

8-Dale

I also found out why I was not getting full travel out of my servos! I have been using an SSC-32 with v1.03 software. I booted into Windows, downloaded the 1.06 XE software, and updated my SSC-32. Now I have full travel on my servos with the SSC-32 as I would expect, just like I did when I was controlling the servos direct from the Basic Atom. :smiley::smiley:

The moral of this story is to always make sure your SSC-32 has the latest firmware. :slight_smile:

8-Dale

Doh° I was going to ask that, but tùought naw, it’s been too long fgr you to have the 750 to 2250 vursion (v1.03). :blush:

Well, this particular SSC-32 is one I got for free from a third party. I didn’t realize the v1.03 firmware was limited, but then remembered the new one I bought from you has v1.06 XE.

I have not even hooked up the new SSC-32 yet, since I figured I would do my learning on the free one and if I toasted it I would not be out any money. :slight_smile:

8-Dale