Asked — Edited

Ssc-32U Servo Controller Script

Hey Everyone,

I can't seem to figure out why my servo Controller isn't working. I have put in the start up and opened up the control in ARC and it still doesnt seem to work. I have power to it from a port on EZB (D18 UART 2) and have it connected to a battery source. (I even tried it to UART 0)

I have tried Baud Rate 38400 and 115200 and it seems to work but when I try to move a servo it doesnt allow me to even adjust it. It keeps it at 90 degrees both ways and force quits ARC.

The codes I have are: UARTInit(0,2,115200)

UARTWrite(0,2,"#31"+$pos+$m_speed,13)

Any Help is appreciated

Thank you!


ARC Pro

Upgrade to ARC Pro

Unleash your robot's full potential with the cutting-edge features and intuitive programming offered by Synthiam ARC Pro.

#1  

What baud rate did you set the ssc-32 to? Have a look at the pdf file of the ssc-32 on how to set the baud rate...

#2  

Also do not power your ssc-32 through the ezb4... Power it directly from the battery or power supply... You only need two wires from the ezb4 to your SSC-32... Use the dedicated UART port 0 so you know you are connecting TX on the ezb4 to RX on the SSC-32... Then ground to ground...

  1. Set the ssc-32 at 38400 baud via the PDF manual...

  2. Add the ssc-32 control to your ARC project...

  3. Plug a servo into the SSC-32 port 0

  4. Add a horizontal or vertical servo control setting the port to V0... don't try to move it yet

  5. In an INIT script run this


UARTINIT(0,0,38400)

  1. Now try and move the servo
#3  

@Richard R

Thank you for the tip. I did all those steps and messed with the SSC 32 settings earlier so it is at the correct baud rate. And it does allow me to move the settings, but the servo doesn't move itself.. I did test it and each servo I tried does work plugged into EZB port, but not the servo Controller, everything else works though..

Here is the code I also have tried and still nothing (along with the servo not moving with me dragging the degrees manually)


$pos = "P800" 
 $m_speed = "S600"

UARTWrite(0,0,"0"+$pos+$m_speed,13)

PRO
USA
#4  

wiring details ?

#5  

@ptp

UART0 Tx on EZB to RX on SSC-32U UART0 GD on EZB to GD on SSC-32U

SSC-32U VL positive and negative plugged into 12v battery (Same as EZB, but seperated)

#6  

Can't use 12V for regular servos my friend... You need 6V - 7.4V for the SSC-32.

#8  

Better use a another servo... 12V may have killed the one you were using...

PRO
Synthiam
#9  

Original poster is using the scc32 control. There's no need for code. Why are you writing code? There's no mention of uartinit or anything for using the control. Follow the manual of the control. Push the question mark on the control to read the manual as mentioned everywhere in the software and website.

Do not use code to initialize anything.

The only time you ever need code is if you're using the servo() command.

Here's the direct link to the ssc32 manual if you push the question mark: https://synthiam.com/Tutorials/Help.aspx?id=216

Where in that manual page does it mention uartinit?

#10  

SSC-32U now has 6v power. Everything else still the same. The problem still seems to be the same (still tested the servo and works with the EZB). My script still fine?

PRO
Synthiam
#11  

It's a good idea to first understand how to move a servo and what a servo control is. Select the learn section, choose your product (I suspect ezb v4 in this case) and read the tutorials.

Again, reread my previous post! Do not inituart. Do not write code. I have no idea why anyone is telling you to write any unit code.

Add the control. Look at the control manual page. Follow the instructions. Stop writing init code. Read the manual for the control. There is no reason to write any init code.

Where did you find any reference to writing init code for the ssc32 control?

#12  

@DJ Sures

I have tried different ways and it still doesnt seem to work. I have researched and looked at different examples to get a better visual and still in the same spot.

I even tried servo command:


Servo(V0,65)
sleep(2000)
Servo(V0,180)

PRO
Synthiam
#13  

That's all you need. Those commands will work. If they do not work, check the configuration menu of that control. Check to see that the correct port is specified.

If that still doesn't work, check the configuration of your ssc33

If it still doesn't work, check the wiring.

Those are the ONLY three things you need to check.

Again:

  1. control configuration
  2. ssc configuration
  3. wiring

That's it.

#14  

SSC-32 Reference

https://synthiam.com/Community/Questions/7859&page=2

https://synthiam.com/Community/Questions/8449

https://synthiam.com/Community/Tutorials/155/6

https://synthiam.com/Community/Questions/10352&page=1

Some have Init. Others are servo coding more in depth to control speeds in one line.

#15  

@DJ Sures

Gotcha, Thank you very much.