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}} |

