Wiki source code of RC Servo Mid Position Tutorial
                  Last modified by Eric Nantel on 2023/01/20 11:38
              
      Show last authors
| 1 | {{html wiki="false" clean="true"}} | 
| 2 | <body><table border="0" cellpadding="0" cellspacing="0" > | 
| 3 | <tbody><tr> | 
| 4 | <td valign="top" ><font size="2" face="verdana"><b>Servo Mid Position Tutorial.</b></font> | 
| 5 | <p><font size="2" face="verdana"><b><!--webbot bot="Timestamp" startspan s-type="EDITED" s-format="%m/%d/%Y" -->03/25/2008<!--webbot | 
| 6 | bot="Timestamp" i-checksum="12594" endspan -->.</b></font></p> | 
| 7 | <p><font size="2" face="verdana"><b>By James Frye.</b></font></p> | 
| 8 | <p><font size="2" face="verdana">Building Lynxmotion kits requires adjusting the servo to its mid position (center of rotation). In order to | 
| 9 | move the servo's output shaft to its mid position, the servo needs to receive 1.5mS, positive-going pulses every 20mS. This tutorial will cover | 
| 10 | creating the necessary pulses from off-the-shelf controllers.</font></p></td> | 
| 11 | <td align="center" valign="top" width="320"><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-system/ses-servos/ses-lynxmotion-rc-servo/rc-servo-mid-position-tutorial/WebHome/sm150.jpg" border="2" hspace="10" width="320" height="240"><br> | 
| 12 | <font size="2" face="verdana"><strong>Too cool</strong></font><font size="2" face="verdana"><strong>!</strong></font></td> | 
| 13 | </tr> | 
| 14 | <tr> | 
| 15 | <td colspan="2"> </td> | 
| 16 | </tr> | 
| 17 | <tr> | 
| 18 | <td valign="top" ><font size="2" face="verdana"><b>Connecting Power.<br> | 
| 19 | </b>The first step in getting your SSC-32 or Bot Board ready to control servos is to provide voltage. This is accomplished using either our | 
| 20 | BATC-01 battery cable or our WH-01 battery cable with switch. If your cable has tinned ends, cut off the tinned part and strip the plastic cover | 
| 21 | off about 1/4" from the new end. The reason for doing this is the screw terminals can't properly tighten down on a tinned wire. Remember, | 
| 22 | the red wire is (+) and the black wire is (-).</font> | 
| 23 | <p><font size="2" face="verdana">For now, make sure the VS=VL jumper is installed, but you may be instructed to remove it later. Attach a | 
| 24 | charged 6.0-7.2vdc battery to the connector and turn on the switch. The green LED should light on the board if all is well. If not, quickly | 
| 25 | remove the battery pack and double check your work!</font></p></td> | 
| 26 | <td align="center" valign="top" ><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-system/ses-servos/ses-lynxmotion-rc-servo/rc-servo-mid-position-tutorial/WebHome/smpos00.jpg" border="2" hspace="10" width="320" height="240"><br> | 
| 27 | <font size="2" face="verdana">With Battery.<br> | 
| 28 |  </font></td> | 
| 29 | </tr> | 
| 30 | <tr> | 
| 31 | <td colspan="2"> </td> | 
| 32 | </tr> | 
| 33 | <tr> | 
| 34 | <td valign="top" ><font size="2" face="verdana"><b>SSC-32.<br> | 
| 35 | </b>To allow custom servo positioning on powerup, the servo controller does not automatically generate pulses.</font> | 
| 36 | <p><font size="2" face="verdana">Apply 6-7.2vdc to the VS1 terminal and install the following jumpers: VS=VL, VS1=VS2, Both baud for 115.2k, TX | 
| 37 | and RX to enable DB9 port.</font> <font size="2" face="verdana">Connect a DB9 cable from the board to a free serial port.</font></p> | 
| 38 | <p><font size="2" face="verdana">You can <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/view/ses-software/lynxterm/" target="_blank">download</a> and run | 
| 39 | Lynx SSC-32 Terminal. Change the port to your Com port. Click on "All = 1500". Plug a servo into any port with the black wire closest | 
| 40 | to the outside of the board. The servo controller will generate these pulses until powered down. Another way is the software method: #0 P1500 | 
| 41 | <cr>. This will generate pulses on the channel following the "#" only. More information is available in the SSC-32 manual.</font></p> | 
| 42 | <p><font size="2" face="verdana">If you are using RIOS-01 or SEQ-01, both programs have this function built in. Consult the users manual for | 
| 43 | more information.</font></p></td> | 
| 44 | <td align="center" valign="top" ><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-system/ses-servos/ses-lynxmotion-rc-servo/rc-servo-mid-position-tutorial/WebHome/smpos06.jpg" border="2" hspace="10" width="320" height="240"><br> | 
| 45 | <font size="2" face="verdana">SSC-32.<br> | 
| 46 |  </font></td> | 
| 47 | </tr> | 
| 48 | <tr> | 
| 49 | <td colspan="2" > <br class="pb"> | 
| 50 | </td> | 
| 51 | </tr> | 
| 52 | <tr> | 
| 53 | <td valign="top" ><font size="2" face="verdana"><b>Bot Board / BASIC Atom.<br> | 
| 54 | </b>Apply 6-7.2vdc to the VS connector and install the VS=VL jumper. Also install the VS jumper for the first four I/O pins. Program the Atom | 
| 55 | with the following code to generate the pulses on I/O Pin 0. Plug the servo into I/O Pin 0 with the black wire closest to the outside of the | 
| 56 | board.<br> | 
| 57 | <blockquote> | 
| 58 | <div style="padding: .5em; color: black; line-height: 1.1em; border: 1px solid black;"> | 
| 59 | <font face="Courier New" size="2">low p0<br> | 
| 60 | start:<br> | 
| 61 |    pulsout p0,1500<br> | 
| 62 |    pause 20<br> | 
| 63 | goto start</font> | 
| 64 | </div> | 
| 65 | </blockquote> | 
| 66 | </font></td> | 
| 67 | <td align="center" valign="top" ><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-system/ses-servos/ses-lynxmotion-rc-servo/rc-servo-mid-position-tutorial/WebHome/smpos03.jpg" border="2" hspace="10" width="320" height="240"><br> | 
| 68 | <font size="2" face="verdana">BASIC Atom.<br> | 
| 69 |  </font></td> | 
| 70 | </tr> | 
| 71 | <tr> | 
| 72 | <td colspan="2" > </td> | 
| 73 | </tr> | 
| 74 | <tr> | 
| 75 | <td valign="top" ><font size="2" face="verdana"><b>Bot Board / BASIC Atom Pro.<br> | 
| 76 | </b>Apply 6-7.2vdc to the VS connector and install the VS=VL jumper. Also install the VS jumper for the first four I/O pins. Program the Atom | 
| 77 | with the following code to generate the pulses on I/O Pin 0. Plug the servo into I/O Pin 0 with the black wire closest to the outside of the | 
| 78 | board.<br> | 
| 79 | <blockquote> | 
| 80 | <b>IDE v8.0.1.3+</b> | 
| 81 | <div style="padding: .5em; color: black; line-height: 1.1em; border: 1px solid black;"> | 
| 82 | <font face="Courier New" size="2">enablehservo<br> | 
| 83 |    hservo [0\0\0]<br> | 
| 84 | start:<br> | 
| 85 | goto start</font> | 
| 86 | </div> | 
| 87 | </blockquote> | 
| 88 | </font></td> | 
| 89 | <td align="center" valign="top" ><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-system/ses-servos/ses-lynxmotion-rc-servo/rc-servo-mid-position-tutorial/WebHome/smpos04.jpg" border="2" hspace="10" width="320" height="240"><br> | 
| 90 | <font size="2" face="verdana">BASIC Atom Pro.<br> | 
| 91 |  </font></td> | 
| 92 | </tr> | 
| 93 | <tr> | 
| 94 | <td colspan="2" > </td> | 
| 95 | </tr> | 
| 96 | <tr> | 
| 97 | <td valign="top" ><font size="2" face="verdana"><b>Bot Board / BASIC Stamp 2 / BS2-E.<br> | 
| 98 | </b>Apply 6-7.2vdc to the VS connector and install the VS=VL jumper. Also install the VS jumper for the first four I/O pins. Program the BS2 | 
| 99 | with the following code to generate the pulses on I/O Pin 0. Plug the servo into I/O Pin 0 with the black wire closest to the outside of the | 
| 100 | board.<br> | 
| 101 | <blockquote> | 
| 102 | <div style="padding: .5em; color: black; line-height: 1.1em; border: 1px solid black;"> | 
| 103 | <font face="Courier New" size="2">start:<br> | 
| 104 |    pulsout 0,750<br> | 
| 105 |    pause 20<br> | 
| 106 | goto start</font> | 
| 107 | </div> | 
| 108 | </blockquote> | 
| 109 | </font></td> | 
| 110 | <td align="center" valign="top" ><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-system/ses-servos/ses-lynxmotion-rc-servo/rc-servo-mid-position-tutorial/WebHome/smpos05.jpg" border="2" hspace="10" width="320" height="240"><br> | 
| 111 | <font size="2" face="verdana">BASIC Stamp.<br> | 
| 112 |  </font></td> | 
| 113 | </tr> | 
| 114 | <tr> | 
| 115 | <td colspan="2"><br class="pb"> | 
| 116 | </td> | 
| 117 | </tr> | 
| 118 | <tr> | 
| 119 | <td valign="top" ><font size="2" face="verdana"><b>SSC-12.<br> | 
| 120 | </b>Apply 6-7.2vdc to the red and black wires. If powered correctly, the green LED will illuminate. The pulses are automatically generated. Plug | 
| 121 | a servo into any port with the black wire closest to the outside of the board.</font></td> | 
| 122 | <td align="center" valign="top" ><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-system/ses-servos/ses-lynxmotion-rc-servo/rc-servo-mid-position-tutorial/WebHome/smpos02.jpg" border="2" hspace="10" width="320" height="240"><br> | 
| 123 | <font size="2" face="verdana">SSC-12.<br> | 
| 124 |  </font></td> | 
| 125 | </tr> | 
| 126 | <tr> | 
| 127 | <td colspan="2" > </td> | 
| 128 | </tr> | 
| 129 | <tr> | 
| 130 | <td valign="top" ><font size="2" face="verdana"><b>Mini SSC-II.<br> | 
| 131 | </b>Connect a 9vdc battery to the SSC power input and apply 4.8-7.2vdc to the SVO power input. If powered correctly, the green LED will | 
| 132 | illuminate. The pulses are automatically generated. Plug a servo into any port with the black wire closest to the outside of the board.</font></td> | 
| 133 | <td align="center" valign="top" ><img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-system/ses-servos/ses-lynxmotion-rc-servo/rc-servo-mid-position-tutorial/WebHome/smpos01.jpg" border="2" hspace="10" width="320" height="240"><br> | 
| 134 | <font size="2" face="verdana">Mini SSC-II. <br> | 
| 135 |  </font></td> | 
| 136 | </tr> | 
| 137 | </tbody></table> | 
| 138 | </body> | 
| 139 | {{/html}} | 

