Shop OBEX P1 Docs P2 Docs Learn Events
Servo Controller Protocol, is there a -de facto standard- or does everyone have — Parallax Forums

Servo Controller Protocol, is there a -de facto standard- or does everyone have

WBA ConsultingWBA Consulting Posts: 2,935
edited 2009-10-14 17:56 in General Discussion
In Cypress PSOC Appnote AN15054 for a 20 channel PWM Servo Controller, the author makes a statement that I believe is inaccurate in regards to protocols used for servo controllers, but I wanted some opinions from people who actually have more experience with servos (I just started playing with servos connected to a BS2 this weekend). The appnote states:

The Mini SSC II protocol of Scott Edwards Electronics Inc. has become the de facto standard for multi-channel serial servo controllers.

I did a quick search and the only one I found using the SSC II protocol is the one made by "Scott Edwards Electronics Inc" (SEETRON SSC). There is some software out there that uses this standard, but I believe it's so the software has a wider market.

Is this statement in the appnote purely opinion of the author?

On a side note, I think the 20 channel serial servo controller in the appnote would work great with any Parallax microcontroller and even RobotBASIC. My to-do list now has a line for trying this out on breadboard since I have a PSoC programmer some of those chips in a DIP-28 package.

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Andrew Williams
WBA Consulting
WBA-TH1M Sensirion SHT11 Module
Special Olympics Polar Bear Plunge, Mar 20, 2010

Comments

  • Chris SavageChris Savage Parallax Engineering Posts: 14,406
    edited 2009-10-13 20:20
    My question would be, are you referring to the signal from the servo controller to the servo or the communication between the host and the servo controller when you refer to this protocol? I ask because there are PC applications designed to control servos through controllers that are made to work with certain servo controllers. In order to work with these servo controllers the application needs to emulate its protocol. On the other hand the 1 mS – 2 mS pulse coming from the servo controller to the servo is a signal more than a protocol…

    So, assuming it is the serial communication with the controller then the protocol simply refers to the command set and structure of commands sent and at what baud rate and other serial settings. In that case it well be an opinion of the author, since there are many different servo controllers available. Take care.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Chris Savage

    Parallax Engineering
    50 72 6F 6A 65 63 74 20 53 69 74 65
    ·
  • W9GFOW9GFO Posts: 4,010
    edited 2009-10-14 07:28
    Ilya Mamontov said...
    Unfortunately, most microcontrollers are commonly limited from one to four hardware PWM channels. In addition, the 8-bit PWM module does not provide an effective output resolution more than 12 steps (this is why standard servos require 1 to 2 ms pulse width variation at a period of 20 ms, so the effective range of PWM is 2^8 x (2-1)/20=12 steps).
    What does the period have to do with output resolution? 8 bit = 12 steps???

    And he gives this as the reason why standard servos require 1 to 2 ms pulse widths at 50 hz?

    What am I missing here?

    Rich H

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    The Simple Servo Tester, a kit from Gadget Gangster.
  • Chris SavageChris Savage Parallax Engineering Posts: 14,406
    edited 2009-10-14 17:25
    At first glance it looks like he’s factoring in the 20 mS as part of the timing of the pulse, removing the difference from the effective resolution of the PWM, which I disagree with. If you have an 8-bit PWM channel you have 256 steps and the delay counter would be separate, so it would not interfere with the PWM resolution.

    The only way it would make sense (and not the way I would do it) is if you started the pulses at the same time and the 8-bit value contained the duration of the pulse, plus the remainder of the period, which isn’t necessary on servos.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Chris Savage

    Parallax Engineering
    50 72 6F 6A 65 63 74 20 53 69 74 65
    ·
  • WBA ConsultingWBA Consulting Posts: 2,935
    edited 2009-10-14 17:56
    Chris: yes, I was referring only to servo controllers, not the signal from the servo. I was a little confused by some of the things in the appnote and I wanted to make sure that that confusion was caused by a poorly written appnote as opposed to lack of knowledge on my part.

    Rich: Good catch. I have found a few other things in the appnote that seems a little off.


    I did load the program from the appnote into a CY8C27443 chip and it actually works well with the windows app in the zip file. I'll be trying it out with a BS2 this weekend. If it works, that will be a 20 channel servo controller for $6.50.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Andrew Williams
    WBA Consulting
    WBA-TH1M Sensirion SHT11 Module
    Special Olympics Polar Bear Plunge, Mar 20, 2010
Sign In or Register to comment.